• Die Forumsregeln und Nutzungsbedingungen findet ihr in der Navbar unter Impressum !
    Bitte unbedingt beachten!
    Wie überall im Leben gibt es Spielregeln, so auch hier!
    Die Datenschutzerklärung zum DSGVO findet ihr ebenfalls in der Navbar unter Datenschutzerklärung !
    Hinweis nach DSGVO :
    Es ist hier keinerlei Angabe erforderlich. Alle Angaben in diesem Bereich sind öffentlich sichtbar und werden freiwillig gemacht. Mit einem Eintrag in diesem Bereich erkenne ich dieses an, und bestätige die Datenschutzerklärung zur DSGVO für das Forum gelesen zu haben.

    Danke

Brushless-Getriebemotoren mit 5 Anschlüssen

45grisu

Member
Registriert
15.10.2006
Beiträge
191
Hallo

Ich habe bei ebay Brushless-Getriebemotoren in den gängigsten Baugrößen (25 mm Durchmesser, 37 mm Durchmesser) gefunden.

Diese haben allerdings 5 Anschlüsse.

Weiß jemand, wie man diese ansteuern kann?

Gibt es da für den Modellbau geeignete Fahrtregler?

Auf google und bei ebay habe ich nichts dazu gefunden.
 
Hallo Klaus,

so aus dem Stand und ohne einen solchen Motor gesehen zu haben würde ich darauf tippen, daß das Motoren mit Sensor sind. Die üblichen BL-Motoren sind sensorlos, die Drehzahl wird vom Steller über das Magnetfeld erfasst. In diesem Fall dürften das aber Motoren mit Sensor sein, für die man einen entsprechenden Regler benötigt. Ob die auch mit einem gängigen Drehzahlsteller betrieben werden können, müßte dir jemand anders beantworten.

Gruß,
Franz
 
Bei einem Motor habe ich jetzt folgende Verdrahtungsmethode gefunden:

- Rot → an Pluspol anschließen
- Schwarz → an Minuspol anschließen
- Gelb → FG-Signalleitung
- Weiß → CW / CCW Steuerleitung
- Blau → PWM-Geschwindigkeitssteuerleitung, schließen Sie an 0 ~ 5V Impulsbreite-Geschwindigkeitsregler an

Kann jemand damit was anfangen?
 
Hallo Klaus,

das macht so den Anschein, als ob der Motor seinen eigenen Regler mitbringt. Plus und Minus ist klar, PWM gibt die Drehzahl vor und cw/ccw die Drehrichtung (clockwise/counterclockwise). Nur was FG bedeutet, erschließt sich mir noch nicht so ganz.

Nachtrag: vielleicht könntest Du zu dem Motor mal einen Link posten, damit man sich ein besseres Bild machen und evtl. etwas aus der restlichen Artikelbeschreibung herauslesen kann.

Gruß,
Franz
 
Genau, da sind die Motoren.

Gibt es bei ebay aus China für einen Bruchteil der dort aufgerufenen Preise.
 
Im Nachbarforum habe ich ja schon auf den ähnlichen Thread geantwortet, jetzt möchte ich auch hier Feedback geben, ich habe so einen BL Getriebemotor im Einsatz und mir selbst einen Regler programmiert, der den PWM Impuls vom Empfänger umwandelt und richtig auf die beiden Steuerleitungen ausgibt (Richtung und Geschwindigkeit).

Mit einem einfachen Arduino Nano kann ich den BL Motor mit den digitalen Steuereingänge über einen Empfänger, bzw. zum Test einen Servotester ansteuern. Hier ist ein kleines Video.

Was braucht man:
- Arduino Nano (geht auch ein Klon aus China, ca. 3,6€)
- ein Servo Kabel zum Anschluss an den Empfänger (vom Empfänger wird nur der Impuls benötigt, die Spannungsversorgung kommt von den 12V)
- einen 2k2 Ohm Widerstand, der die PWM Leitung lowaktiv legt (damit wird sichergestellt das der Motor nicht kurz anläuft wenn man die Batterie ansteckt. der Arduino braucht ein paar Sekunden zum Booten
- in meinem Fall noch zwei 10k Pullupwiderstände, da ich noch zwei Taster als Endabschalter drinnen haben, der Motor schaltet somit ab wenn er die Endposition erreicht hat.

die Funktion bzw. der Aufbau sieht so aus:

- der Motor ist mit rot und schwarz direkt an den 12V angeschlossen (somit spart man sich für den Nebenantrieb auch einen CTI Thor oder ähnlichen Regler also 18€...)
-die blauen und weiße Leitung geht zum Arduino
- der Arduino ließt das Servosignal ein, und wandelt es in zwei Signale um: Eins für die Drehrichtung (weiße Leitung zum Motor) und eins für die Geschwindigkeit (die blaue PWM Leitung). Die Drehrichtung ist nur ein digitales High oder Low, die Geschwindigkeit ist ein PWM Signal mit 0-100% Impulsbreite.

Ein erster Test im Kippaufbau war auch mit der Endabschaltung erfolgreich, die ganze Schaltung ist am Schluss nur so groß wie der Nano, man braucht ja nur die 3 Widerstände, die man auf dem Nano verlöten kann.

Ich denke auch ungeübte können die Schaltung nachbauen bzw. den Arduino Programmieren.

Zum Motor selbst: der läuft sehr leise, hat Kraft ohne Ende und zieht deutlich weniger Strom als ein Bürstenmotor...

Um diese Inhalte anzuzeigen, benötigen wir die Zustimmung zum Setzen von Drittanbieter-Cookies.
Für weitere Informationen siehe die Seite Verwendung von Cookies.

Die Scheibe am Motor ist nur zum Messen der Drehzahl... hat nichts mit der Schaltung zu tun...

hier ist der Schaltplan:

bl steuerung_01.jpg

und das Programm für den Arduino Nano sieht so aus: (btw. die Nano Klone haben noch den alten Bootloader, also in der Arduino IDE "old Bootloader wählen:

Code:
const int PWM = 10; //Eingangspin zum Einlsen vom Empfängersignal
const int unten = 3; // Digitalin Endabschalter unten, lowactice = abgeschalten, Pull-up R auf +5V
const int oben = 4; // Digitalin Endabschalter oben, lowactive = abgeschalten, Pull-up R auf +5V
const int directionout = 8; // Ausgangssignal digital für Drehrichtung, LOW = rückwärts HIGH = vorwärts
const int speedout = 9; // speedput PWM für BL Motor Bereich 0-255
int speedin = 0; // Variable zum Mappen vom PWM Signal mit dem PWM output,
int pwm_value = 01; //Variable zum Zwischenspeichern vom PWM Impuls

// die Motorrichtung + Link zu den richtigen Endabschalter muss überprüft werden CW Low + Endabschalter unten ist motorabhängig!
void setup() {
pinMode(PWM, INPUT);
pinMode(unten, INPUT);
pinMode(oben, INPUT);
pinMode(directionout, OUTPUT);
Serial.begin(115200);
}
void loop()
{

pwm_value = pulseIn(PWM, HIGH);

if ((pwm_value <1000) || (pwm_value > 2000))
{
analogWrite(speedout, 0);
}

else if ((pwm_value < 1440) && (digitalRead(unten)== HIGH )) // abwärts, Endabschalternabfrage, directionout = LOW, speedout 0-255 entspricht dem pwm_value von 1490 - 1000
{
digitalWrite(directionout, LOW);
speedin = map(pwm_value, 1440, 1000, 0, 255);
analogWrite(speedout, speedin);
}

else if ((pwm_value > 1560) && (digitalRead(oben)== HIGH )) // aufwärts, Endabschalternabfrage, directionout = HIGH, sppedout 0-255 entspricht pwm_value 1510 - 2000
{
digitalWrite(directionout, HIGH);
speedin = map(pwm_value, 1560, 2000, 0, 255);
analogWrite(speedout, speedin);
}

else
{
analogWrite(speedout, 0); //neutral wenn 1490 <= PWM <= 1510 oder ein schalter angegangen ist, directionout egal, speedout = 0 damit wird sichergestellt das der Motor
}

delay(1);
}

Ich möchte nochmal betonen, das ich keine Gewähr für das Programm übernehme! Ich habe aber versucht ein paar Sicherheitsmerkmale einzubauen:

1. wenn kein Servoimpuls anliegt, das zwischen 1000 und 2000ms ist, geht der Motor aus (falls der Empfänger einen grösseren Bereich hat bitte den Servoweg begrenzen)

2. der Pull-down Widerstand sorgt dafür das der Motor nicht anläuft wenn der Arduino ausfällt, da dann die PWM Leitung auf GND gezogen wird, hat der Impuls 0%.

Die Endschalter können weggelassen werden, aber die Widerstände müssen angeschlossen werden oder das Programm angepasst und die Bedingungen bei den If Abfragen geändert werden....

hier habe ich den Einbau gerade beschrieben, bin mal auf die Tests am Parcour gespannt...

Ich freue mich über Feedback

Gruß
Wolfgang
 

Servonaut
Zurück
Oben Unten