Forum: Mikrocontroller und Digitale Elektronik Mikrocontroller zum Ansteuern eines BLDC-MOtors


von Stephan (Gast)


Lesenswert?

Hallo liebes Forum,

ich bräuchte mal Hilfe von jemandem der etwas Erfahrung hat im Ansteuern 
von BLDC Motoren...
Vorhanden sind BLDC-Motoren elektrich kommutiert mit analogen 
Hall-Sensoren.
Jetzt möchte der Hersteller aber ungleich viel mehr Geld für die nötigen 
Controller. Die Motoren sollen wenn möglich über LabView angesteuert 
werden können, nur eine LabView motioncontrol Karte kostet ca 1000€ und 
fällt auch raus.Da die Motoren leider keine digitalen Hallsensoren 
besitzen fallen auch sehr viele andere Controller raus...
So langsam bin ich am verzweifeln, leider habe ich wenig 
Programmiererfahrung um mir so meinen eigenen Controller zu basteln.

Bitte gebt mir doch mal einen Denkanstoß oder einen Tipp wie ich an die 
Sache noch heran gehen könnte.

Vielen Dank schonmal und Grüße,

Stephan

von Gast (Gast)


Lesenswert?

Wie groß sind die Motoren denn? Wenn sie im Bereich Modellbau
liegen, kannst du ja die Hallsensoren ignorieren und einen
Regler wie diesen verwenden:

http://www.mikrokopter.com/ucwiki/BrushlessCtrl

von Stephan (Gast)


Lesenswert?

Hi vielen Dank für die Antwort,
leider fehlt mir die Zeit und auch das Know-How alles selbst aufzubauen.
Ich hätte am liebsten einen fertigen Controller mit Peripherie, den ich 
nur noch über RS232 mit print Befehlen füttern muss damit sich der Motor 
schon bewegt???Gibt es sowas?Habe bei www.Roboternetz.de schon geschaut 
und da gibt es leider nur fertige Controller für bürstenbehaftete 
Motoren...Kennt irgendjemnad viell. noch einen andere Lösung?
Grüße und merci nochmal,
Stephan
P.S. Motoren sind für den Modellbau also max. 60W

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Hallo Stephan,

wieviel wäre dir die Elektronik denn wert? Ich könnte dir vielleicht mit 
einer Karte für zwei BLDC-Motoren helfen, auf der ein LPC2148 (ARM7TDMI) 
arbeitet. Der Mikrocontroller liest die analogen Hallsensoren aus, 
berechnet den Winkel und bestromt dann die drei Motorphasen. 
Versorgungsspannung ist beliebig (nur >=15V muss sein), die Ansteuerung 
geschieht über USB. Es kann sowohl der Strom als auch die Position 
(=Drehwinkel) geregelt werden. Eine galvanische Trennung zwischen USB 
und dem Rest wäre optional auch möglich.

von Jürgen H. (nobody)


Lesenswert?

Solche Regler gibts auch schon fertig von Yge!

Allerdings sind die schon recht teuer!

http://www.cnc-modellsport.de/product_info.php?cPath=43_74&products_id=1096

von Gast (Gast)


Lesenswert?

Ansonsten,

den oben verlinkten Kontroller kannst du im zugehörigen Shop für
knapp 40 Eur fertig kaufen. Er kann unter anderem über RS232
angesteuert werden, da muss aber dann noch ein MAX232 angeschlossen
werde.

von Stephan (Gast)


Lesenswert?

Hallo,

erstmal danke für eure Antworten...

@Christoph
vielen Dank für das Angebot, leider brauche ich eine Ansteuerung für 4 
Motoren.Aber das klingt grundsätzlich nicht schlecht bzw. genau nach dem 
was ich suche.Habe aber noch ne Frage hast du dir die Software auf dem 
chip selbst geschrieben, wenn ja unter welcher Sprache? asm, c++, 
bascom???Habe großen Respekt vor der Kommutierungsgeschichte, da das mit 
dem Phasenabgleich
glaube ich nicht ganz so einfach ist und ich wie gesagt nicht so die 
Programmiererfahrung habe ;-)

@Jürgen H.
kann leider nicht erkennen bei diesem chip ob er auch analoge 
Hallsignale verarbeiten kann und weiter ist mir bisher unbegreiflich wie 
ich mit so einem Board dann gezielt meine Motoren zum laufen bringen 
kann. Gibts da auch ne Firmware drauf die ich mit RS232 Befehlen füttern 
kann.

Bitte habt Verständnis für mein Unwissen, aber wurde ins kalte Wasser 
geschmissen und soll jetzt das beste daraus machen...

Vielen Dank nochmal und Grüße
Stephan

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Stephan wrote:
> @Christoph
> vielen Dank für das Angebot, leider brauche ich eine Ansteuerung für 4
> Motoren.

Das wird allerdings nicht ganz einfach werden, eine Karte für vier 
Motoren zu finden. Man bräuchte hierfür 12 unabhängige PWM-Signale, 
wofür idealerweise mindestens zwei Mikrocontroller gebraucht werden.

> Aber das klingt grundsätzlich nicht schlecht bzw. genau nach dem
> was ich suche.Habe aber noch ne Frage hast du dir die Software auf dem
> chip selbst geschrieben, wenn ja unter welcher Sprache? asm, c++,
> bascom???

Reines C.

> Habe großen Respekt vor der Kommutierungsgeschichte, da das mit
> dem Phasenabgleich
> glaube ich nicht ganz so einfach ist und ich wie gesagt nicht so die
> Programmiererfahrung habe ;-)

Die Theorie ist eigentlich recht einfach, hierzu gibt es auch viele 
nette Application Notes. Aber die Ausführung ist je nach Anforderung 
schon etwas schwieriger. Bei dem System von mir ging es darum, unter 
wechselnden Drehzahlen und mit unterschiedliedlichen Drehmomenten zu 
arbeiten, Anforderungen, die die meisten normalen BLDC-Systeme nicht 
haben. Aus diesem Grund arbeite ich mit analogen Hallsensoren, um 
jederzeit die Position bestimmen zu können und fast komplett ohne 
Drehmomentripple den Motor zu regeln. Mir ist kein System bekannt, dass 
das momentan schafft.

> @Jürgen H.
> kann leider nicht erkennen bei diesem chip ob er auch analoge
> Hallsignale verarbeiten kann und weiter ist mir bisher unbegreiflich wie
> ich mit so einem Board dann gezielt meine Motoren zum laufen bringen
> kann. Gibts da auch ne Firmware drauf die ich mit RS232 Befehlen füttern
> kann.

In 99% der Fälle sind diese Systeme sensorlos oder für digitale 
Hallsensoren ausgelegt.

> Bitte habt Verständnis für mein Unwissen, aber wurde ins kalte Wasser
> geschmissen und soll jetzt das beste daraus machen...

Für was für eine Anwendung brauchst du das denn? Wenn du "einfach" nur 
einen BLDC-Motor drehen lassen sollst, kaufe dir eine beliebige 
Motorregelungsplatine (viele haben eine serielle Schnittstelle) und lass 
die Hallsensoren weg. Wenn die Platine digitale Signale braucht, nimm 
drei Komparatoren pro Motor und erzeuge dir die digitalen Signale aus 
den analogen Signalen.

Wenn du ähnliche Anforderungen wie ich damals hast, wirst du aber um 
etwas Arbeit nicht herum kommen.

Ansonsten klingt das fast wie ein Uni-Projekt?!

von Stephan (Gast)


Lesenswert?

Hi Christoph,
ja es handelt sich um ein Uni-Projekt!
um genauer zu sein, ich soll einen  Roboterarm steuern, also 
positionieren
der einzelnen Komponenten und das ganze möglichst dynamisch (wechselnde 
Lasten, Drehzahlen etc.). Leider wurde der Großteil des Budgets in den 
Motoren verausgabt*grrr*. Mit ein bisschen Recherche hätte man da auf 
jeden Fall was besseres gefunden, zumindest Motoren mit dig. 
Hallsensoren.
Denke das Projekt wird sich also auf das Programmieren zweier Boards 
bzw. IC´s beschränken...
Vielen Dank für Deine, Eure Hilfe!!!Denke ich werde weiter auf jeden 
Fall noch Hilfe brauchen und viell. die ein oder andere Frage noch 
posten.

Also danke nochmal und bis denne....
Stephan

von Christoph B. (christophbudelmann) Benutzerseite


Lesenswert?

Stephan wrote:
> Hi Christoph,
> ja es handelt sich um ein Uni-Projekt!

War irgendwie klar... ;-)

> der einzelnen Komponenten und das ganze möglichst dynamisch (wechselnde
> Lasten, Drehzahlen etc.). Leider wurde der Großteil des Budgets in den
> Motoren verausgabt*grrr*. Mit ein bisschen Recherche hätte man da auf
> jeden Fall was besseres gefunden, zumindest Motoren mit dig.
> Hallsensoren.

Wie gesagt, mit drei Komparatoren bekommt man das relativ schnell hin, 
aus den analogen digitale Signale zu machen.

Etwas für die Lektüre: Atmel beispielsweise hat mehrere Sachen zum Thema 
Motor-Control, die sich auch für andere Controller eignen. Wenn du damit 
leben kannst, einen Controller pro Motor zu nehmen, sollte jeder 
Controller mit drei PWM-Ausgängen, drei Eingängen für die Hallsensoren, 
eventuell einem ADC für die Strommessung und einem UART für die 
Kommunikation voll ausreichen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.