mikrocontroller.net

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


Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Christoph Budelmann (Firma: Budelmann Elektronik GmbH) (christophbudelmann) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Jürgen H. (nobody)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Solche Regler gibts auch schon fertig von Yge!

Allerdings sind die schon recht teuer!

http://www.cnc-modellsport.de/product_info.php?cPa...

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Christoph Budelmann (Firma: Budelmann Elektronik GmbH) (christophbudelmann) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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?!

Autor: Stephan (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Christoph Budelmann (Firma: Budelmann Elektronik GmbH) (christophbudelmann) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.