Forum: Mikrocontroller und Digitale Elektronik BLDC Motoransteuerung 1.5kW


von Alexander M. (a_lexander)


Lesenswert?

Hallo Zusammen,

Ich bin aktuell dabei mir ein Konzept zu Überlegen für eine 
Motoransteuerung mit 58V, 1.5kW Nennleistung, BLDC. Ansteuerung über 
einen STM32.

1. Frage:
Bei einer Endstufe ist eigentlich Motorstrom ziemlich egal, weil diese 
ja über die extern. angebrachten MOSFETs und somit nicht direkt über die 
Endstufe laufen, stimmt das?
Ich kann hier somit eigentlich "alle" Endstufen nehmen, unabhängig vom 
Motorstrom?
Z. B. den hier:
https://www.ti.com/lit/ds/symlink/drv8302.pdf

2. Hat jemand Erfahrungen mit der STM32 Motorcontrol Workbench? Ich 
glaube mit diese Library kann lediglich 1 Motor angesteuert werden, 
(direkt über den STM). Gibt es hier Varianten, damit 3 Motoren 
gleichzeitig über einen Motor angesteuert werden (51V, 1.5kW). Ich hab 
hier nämlich nichts gefunden.

3. Hat hier jemand schon ähnliche Motorsteuerungen gebaut und kann mir 
hier seine Tipps geben? :)

Danke & Grüße

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Alexander M. schrieb:
> 1. Frage:
> Bei einer Endstufe ist eigentlich Motorstrom ziemlich egal, weil diese
> ja über die extern. angebrachten MOSFETs und somit nicht direkt über die
> Endstufe laufen, stimmt das?

Wie bitte? Die Endstufe ist das, was den Strom des Motor trägt und 
steuert. Mögl. meinst du mit 'Endstufe' in deinem Kontext die MOSFet 
Treiber.

Alexander M. schrieb:
> 3. Hat hier jemand schon ähnliche Motorsteuerungen gebaut und kann mir
> hier seine Tipps geben? :)

Ja. Ich habe mit 3 verschiedenen MCs (AVR8, XMega, STM32) BLDC 
Steuerungen für 4kW/48V Motoren gebaut. Allerdings habe ich da geklotzt 
statt gekleckert, da wir das für E-Mobile konstruiert haben. Treiber 
waren IR2110, Logik mit Sinusmodulation innerhalb des MC, Endstufen aus 
18 Stück IRFB3205/IRFB3207. Massive Konstruktion mit Kupferschienen und 
Kühlkörper.
Da pro Fahrzeug 2 BLDCs vorgesehen waren, haben wir die Motosteuerungen 
mit elektronischem Differential ausgestattet.

: Bearbeitet durch User
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Alexander M. schrieb:
> Hat hier jemand schon ähnliche Motorsteuerungen gebaut und kann mir hier
> seine Tipps geben?
1. die Endstufe liefert den Motorstrom. Das, was du verlinkt hast, ist 
der Treiber, also das Teil, das in der Endstufe die 
Leistungstransistoren ansteuert.

2. Fang mit einer Leistung deutlich unter 100W an. Denn wenn der Motor 
einen Nennstrom 25A braucht, dann sollte die Endstufe kurzfristig 5-10x 
mehr liefern können.

3. Nimm ein fertiges EVAL-Board für erste Untersuchungen.

4. Kaufe einige ähnliche Geräte, die am Markt erhältlich sind, zerlege 
und analysiere sie.

4. Unterschätze nicht die Komplexität der Analogtechnik.

> Gibt es hier Varianten, damit 3 Motoren gleichzeitig über einen Motor
> angesteuert werden (51V, 1.5kW). Ich hab hier nämlich nichts gefunden.
Wie meinst du "3 Motoren über 1 Motor"?
Oder willst du 3 Motoren über 1 µC steuern? Wenn so: warum? Sooooo teuer 
ist so ein µC ja nun nicht.

> 1.5kW Nennleistung
Dir ist grundsätzlich schon klar, dass in solchen Antrieben meist viele 
Ingenieurmannjahre stecken? Und zwar von Ingenieuren, die sich damit 
auskennen...

: Bearbeitet durch Moderator
von Martin S. (sirnails)


Lesenswert?

> 1. Frage:
> Bei einer Endstufe ist eigentlich Motorstrom ziemlich egal, weil diese
> ja über die extern. angebrachten MOSFETs und somit nicht direkt über die
> Endstufe laufen, stimmt das?

Nein, die Endstufe treibt den vollen Phasenstrom des Motors.

> Ich kann hier somit eigentlich "alle" Endstufen nehmen, unabhängig vom
> Motorstrom?
> Z. B. den hier:
> https://www.ti.com/lit/ds/symlink/drv8302.pdf

Nein (ohne den Link angesehen zu haben). Endstufe muss zum Motor passen 
und vor allem auch die Gate-Treiber zur Endstufe. Die Logik, die die 
Vollbrücke ansteuert, gibt's fertig. Selbst entwickeln lohnt nicht. Das 
können andere besser und billiger.

> 2. Hat jemand Erfahrungen mit der STM32 Motorcontrol Workbench? Ich
> glaube mit diese Library kann lediglich 1 Motor angesteuert werden,
> (direkt über den STM).

> Gibt es hier Varianten, damit 3 Motoren
> gleichzeitig über einen Motor angesteuert werden (51V, 1.5kW). Ich hab
> hier nämlich nichts gefunden.

Einen Mini-Motor wirst du vielleicht direkt ansteuern können, aber bei 
größeren Motoren brauchst Du Gate-Treiber, die richtig satten Strom für 
die Endstufen liefern können. Wir reden hier von zweistelligen Ampere um 
die Gates auszuräumen.

LTSpice ist hier Dein Freund, um überhaupt mal ein Gefühl dafür zu 
bekommen, wieviel Strom da eigentlich fließt.

> 3. Hat hier jemand schon ähnliche Motorsteuerungen gebaut und kann mir
> hier seine Tipps geben? :)
>
> Danke & Grüße

Die Firma, für die ich arbeite, hat drei Jahre für die Entwicklung der 
kompletten Motorsteuerung gebraucht. Irgendein Sonderfall taucht immer 
auf, der nicht vorhersehbar war, und dafür sorgt, dass die Steuerung in 
Flammen aufgeht.

Ein Fall, an dem sich verdammt lange die Zähne ausgebissen wurde: Wohin 
mit der Energie, die im System steckt, wenn der Motor auf einmal aus 
sein soll? Denn der dreht sich - je nach Massenträgheit - weiter und 
induziert mächtig viel Leistung zurück in die Endstufe.

von Alexander M. (a_lexander)


Lesenswert?

Matthias S. schrieb:
> Alexander M. schrieb:
>> 1. Frage:
>> Bei einer Endstufe ist eigentlich Motorstrom ziemlich egal, weil diese
>> ja über die extern. angebrachten MOSFETs und somit nicht direkt über die
>> Endstufe laufen, stimmt das?
>
> Wie bitte? Die Endstufe ist das, was den Strom des Motor trägt und
> steuert. Mögl. meinst du mit 'Endstufe' in deinem Kontext die MOSFet
> Treiber.

Richtig, angenommen einzelne MOSFETs und dazu wenn möglich einen 
"fertigen" IC, der über PWM etc. die Ansteuerung der MOSFETs macht.

> Alexander M. schrieb:
>> 3. Hat hier jemand schon ähnliche Motorsteuerungen gebaut und kann mir
>> hier seine Tipps geben? :)
>
> Ja. Ich habe mit 3 verschiedenen MCs (AVR8, XMega, STM32) BLDC
> Steuerungen für 4kW/48V Motoren gebaut. Allerdings habe ich da geklotzt
> statt gekleckert, da wir das für E-Mobile konstruiert haben. Treiber
> waren IR2110, Logik mit Sinusmodulation innerhalb des MC, Endstufen aus
> 18 Stück IRFB3205/IRFB3207. Massive Konstruktion mit Kupferschienen und
> Kühlkörper.
> Da pro Fahrzeug 2 BLDCs vorgesehen waren, haben wir die Motosteuerungen
> mit elektronischem Differential ausgestattet.

Danke für die Tipps!

von Alexander M. (a_lexander)


Lesenswert?

Lothar M. schrieb:
> Alexander M. schrieb:
>> Hat hier jemand schon ähnliche Motorsteuerungen gebaut und kann mir hier
>> seine Tipps geben?
> 1. die Endstufe liefert den Motorstrom. Das, was du verlinkt hast, ist
> der Treiber, also das Teil, das in der Endstufe die
> Leistungstransistoren ansteuert.

Danke.

> 2. Fang mit einer Leistung deutlich unter 100W an. Denn wenn der Motor
> einen Nennstrom 25A braucht, dann sollte die Endstufe kurzfristig 5-10x
> mehr liefern können.
>
> 3. Nimm ein fertiges EVAL-Board für erste Untersuchungen.
>
> 4. Kaufe einige ähnliche Geräte, die am Markt erhältlich sind, zerlege
> und analysiere sie.
>
> 4. Unterschätze nicht die Komplexität der Analogtechnik.

Danke! Werder wohl wirklich so anfangen müssen. Mir ist durchaus 
bewusst, dass das Ganze nicht ohne ist...

>> Gibt es hier Varianten, damit 3 Motoren gleichzeitig über einen Motor
>> angesteuert werden (51V, 1.5kW). Ich hab hier nämlich nichts gefunden.
> Wie meinst du "3 Motoren über 1 Motor"?
> Oder willst du 3 Motoren über 1 µC steuern? Wenn so: warum? Sooooo teuer
> ist so ein µC ja nun nicht.

Genau, die Idee wäre z. B. 3 Motoren mit 1 uC anzusteuern und im besten 
Fall alles "fix & fertig" zu haben. Aber hab mir natürlich schon 
gedacht, dass es leider nicht so einfach wird ;)

von Frank K. (fchk)


Lesenswert?

Alexander M. schrieb:

> Ich bin aktuell dabei mir ein Konzept zu Überlegen für eine
> Motoransteuerung mit 58V, 1.5kW Nennleistung, BLDC. Ansteuerung über
> einen STM32.

Schau mal hier:

https://github.com/vedderb/bldc
https://vesc-project.com/sites/default/files/Benjamin%20Posts/vesc_75_300.pdf

Das ist fertig, das kannst Du kaufen, das funktioniert. Da stecken 
mehrere Jahre Arbeit drin. Willst und kannst Du die überhaupt 
investieren?

Und nein, Du solltest die Idee, mehrere Motoren über einen Controller 
anzusteuern, ganz schnell vergessen.

fchk

: Bearbeitet durch User
von Alexander M. (a_lexander)


Lesenswert?

Frank K. schrieb:
> Alexander M. schrieb:
>
>> Ich bin aktuell dabei mir ein Konzept zu Überlegen für eine
>> Motoransteuerung mit 58V, 1.5kW Nennleistung, BLDC. Ansteuerung über
>> einen STM32.
>
> Schau mal hier:
>
> https://github.com/vedderb/bldc
> https://vesc-project.com/sites/default/files/Benjamin%20Posts/vesc_75_300.pdf
>
> Das ist fertig, das kannst Du kaufen, das funktioniert. Da stecken
> mehrere Jahre Arbeit drin. Willst und kannst Du die überhaupt
> investieren?
>
> Und nein, Du solltest die Idee, mehrere Motoren über einen Controller
> anzusteuern, ganz schnell vergessen.
>
> fchk

Vielen Dank. Werde mir das auf jeden Fall mal anschauen :)

Wie vorhin gesagt, lieber wäre mir eine "fertige" Lösung, um hier Zeit & 
Geld zu sparen ;)

von Frank K. (fchk)


Lesenswert?

Alexander M. schrieb:

> Vielen Dank. Werde mir das auf jeden Fall mal anschauen :)
>
> Wie vorhin gesagt, lieber wäre mir eine "fertige" Lösung, um hier Zeit &
> Geld zu sparen ;)

https://trampaboards.com/vesc-6-75--p-33322.html

Die 60V Versionen passen für Dich nicht, Du brauchst minimal 10, besser 
15V mehr an Spnnungsfestigkeit, damit der Controller nicht durch 
Spannungsspitzen stirbt. Mit Deinen 58V Nennspannung bist Du zu nahe an 
den 60V der anderen Versionen.

Und viel billiger wirst Du bei einem Selbstbau auch nicht wegkommen.

fchk

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Alexander M. schrieb:
> Genau, die Idee wäre z. B. 3 Motoren mit 1 uC anzusteuern
Was sparst du dabei? Das teure an so einem Controller ist der 
Leistungsteil, nicht der uC für 2,50...

Denn 1 leistungsfähiger uC, der 3 Motoren steuern kann, kostet letzlich 
3x so viel wie der billige, der nur 1 Motor ansteuern kann. Fiskalisch 
ist also nichts gewonnen.

Allerdings ist eben 1 Motor mit 1 dafür dedizierten uC viel leichter 
beherrschbar, als wenn sich 3 Ansteuerungen auf 1 uC tummeln und sich 
die Rechenleistung aufteilen müssen.

Oder andersrum: wenn du 1 einfache Motorsteuerung mit 1 uC für 1 Motor 
fertig hast, dann hast du automatisch auch 3 Motorsteuerungen mit je 1 
uC pro Motor fertig.

Wenn du aber 1 Motor auf deiner "3 Motoren pro uC" Steuerung am Laufen 
hast, dann hast du die gleiche Arbeit nochmal 2x vor dir. Und wehe, es 
gibt Wechselwirkungen, weil die Rechenleistung ungünstig verteilt 
wird...

von Halbbrücke (Gast)


Lesenswert?

Matthias S. schrieb:
> Ja. Ich habe mit 3 verschiedenen MCs (AVR8, XMega, STM32) BLDC
> Steuerungen für 4kW/48V Motoren gebaut. Allerdings habe ich da geklotzt
> statt gekleckert, da wir das für E-Mobile konstruiert haben. Treiber
> waren IR2110, Logik mit Sinusmodulation innerhalb des MC, Endstufen aus
> 18 Stück IRFB3205/IRFB3207. Massive Konstruktion mit Kupferschienen und
> Kühlkörper.
> Da pro Fahrzeug 2 BLDCs vorgesehen waren, haben wir die Motosteuerungen
> mit elektronischem Differential ausgestattet.

Rein aus Interesse: hast du Fotos davon?
Das sind grob 80 A, das hätte ich glaub noch rein mit PCBs gemacht, 
schon allein um die Kommutierungsinduktivität klein zu halten. Was für 
eine Schaltfrequenz? Welchen der aufgezählten FETs hast denn nun 
genommen? Die max. 55 V des IRFB3205 wären für 48 V ja verdammt knapp.

von Maxe (Gast)


Lesenswert?

Lothar M. schrieb:
> Oder andersrum: wenn du 1 einfache Motorsteuerung mit 1 uC für 1 Motor
> fertig hast, dann hast du automatisch auch 3 Motorsteuerungen mit je 1
> uC pro Motor fertig.
>
> Wenn du aber 1 Motor auf deiner "3 Motoren pro uC" Steuerung am Laufen
> hast, dann hast du die gleiche Arbeit nochmal 2x vor dir. Und wehe, es
> gibt Wechselwirkungen, weil die Rechenleistung ungünstig verteilt
> wird...

Als Hobbyist stell ich mir die Synchronisation bei mehreren uC'n (je 
nach Anforderung) deutlich schwieriger vor, wie mehrere Motoren in einem 
Controller zu verarzten. Und Firmware = Software ist ja auch 
wiederverwendbar. Ist also nicht so, dass sich der Aufwand verdreifacht.

Je nach Ansteuerung braucht es aber die passende Peripherie, die dann 
gern mal nur fuer einen Motor vorhanden ist. Zumindest gibt es einen 
STM32 mit zwei Motor-Control-Einheiten.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Ich habe so eine Vollbrücke mal mit 4x4 IRFB3077 aufgebaut, als die 
Dinger noch preiswert waren (inzwischen werden die in Gold aufgewogen). 
Die können bis 75V. Wenn man mehr möchte, der IRFB4110 ist auch ein sehr 
gut geeigneter FET und kann bis 100V.

Der Aufbau war noch auf Lochraster, aber 6mm² Kupfer unten aufgelötet. 
Der Vorteil so großer Endstufen ist, daß es im Fehlerfall kaum Schaden 
gibt. Ich hab mir mit dem Aufbau mit dem HIP4081 so ein richtiges Ei 
gelegt, dieser IC ist die untauglichste IC-Krücke des Jahrhunderts, weil 
er trotz Einhaltung der design rules Fehlsteuerungen der Vollbrücke 
produziert, die er eigentlich  verhindern sollte. Daraufhin verdampfte 
eine Verbindungsleitung zwischen zwei 12V Bleiakkus, die FETs haben das 
ungekühlt schadlos ausgehalten. Die Schaltung auf zwei IR2110 
Arbeitstiere umgestrickt funktionierte dann auf Anhieb problemlos - also 
niemals den Fehler machen und HIP4081 verwenden, egal wie toll das 
Datenblatt klingt!

von Bernd K. (bkohl)


Lesenswert?

Klingt fast wie mein Projekt. Da ging es um den Generator-Start eines 
120ccm-Motors - und zwar sensorlos. Alles mit 48V-Technik. Programmiert 
auf einem ATmega644 im wesentlichen in der ISR. Falls Du an Programm, 
Board oder Schaltplan interessiert bist, melde Dich einfach.  VG, Bernd

von Alexander M. (a_lexander)


Lesenswert?

Frank K. schrieb:
> Alexander M. schrieb:
>
>> Vielen Dank. Werde mir das auf jeden Fall mal anschauen :)
>>
>> Wie vorhin gesagt, lieber wäre mir eine "fertige" Lösung, um hier Zeit &
>> Geld zu sparen ;)
>
> https://trampaboards.com/vesc-6-75--p-33322.html
>
> Die 60V Versionen passen für Dich nicht, Du brauchst minimal 10, besser
> 15V mehr an Spnnungsfestigkeit, damit der Controller nicht durch
> Spannungsspitzen stirbt. Mit Deinen 58V Nennspannung bist Du zu nahe an
> den 60V der anderen Versionen.
>
> Und viel billiger wirst Du bei einem Selbstbau auch nicht wegkommen.
>
> fchk

Interessant, danke. Werde ich mir auf jeden Fall anschauen.
Besser wäre natürlich sowas "open source" zu bekommen :) Vielleicht gibt 
es da in Github etc. ein paar Ideen ;)

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Maxe schrieb:
> Als Hobbyist stell ich mir die Synchronisation bei mehreren uC'n (je
> nach Anforderung) deutlich schwieriger vor, wie mehrere Motoren in einem
> Controller zu verarzten.
In der alltäglichen industriellen Praxis ist das aber so: da sind 
einfach an 1 NC-Steuerung z.B. 15 Positionierungsachsen einer 
Produktionsanlage angeschlossen. Die NC-Steuerung sendet einfach die 
Positions- bzw. Fahrkommandos an jede Achse und die führt sie dann aus. 
Das bedeutet: 1 Rechner für die Positionierung, 1 Antriebsbus und 15 
gleiche Antriebe.

Und jetzt kannst du nämlich ganz einfach die 15 durch 5 oder durch 20 
ersetzen. Das Ergebnis: am grundlegenden Konzept ändert sich nichts, nur 
die Anzahl der Teilnehmer am Antriebsbus variiert.

Maxe schrieb:
> Und Firmware = Software ist ja auch wiederverwendbar.
Allerdings eben nur, wenn die nötige Hardware genauso 
"wiederverwendbar", also in gleicher Weise 3x vorhanden ist.

> Ist also nicht so, dass sich der Aufwand verdreifacht.
Es ist noch schlimmer, denn wenn die Motorsteuerung eine bestimmte 
Hardware eines Controllers benötigt, die nur 2x vorhanden ist, was ist 
dann mit der 3. Achse? Was, wenn sich dann die Interrupts von 3 Achsen 
in die Quere kommen? Dann kann es ganz schnell passieren, dass sich der 
Aufwand nicht nur verdreifacht, sondern die Aufgabe mit 3 Achsen 
parallel gar nicht gelöst werden kann.

Und beim Hardwaredesign ist es viel einfacher, 1 Motorsteuerung mit 1 µC 
und 1 Endstufe zu entwickeln und 3 Platinen davon zu bestellen, wenn der 
Prototyp dann läuft, als 1 Steuerung mit 1 µC und 3 Leistungsteilen, von 
denen dann eines herumzickt, weil das Layout wegen der Größe der 
Leiterplatte so abgefahren umständlich gemacht werden musste.

von Ben B. (Firma: Funkenflug Industries) (stromkraft)


Lesenswert?

Deswegen verwenden große Wechselrichter bzw. Stromrichter gerne 
Lichtleitertechnik zur Ansteuerung der Endstufen. Halte ich nicht viel 
von bzw. nur bei HGÜ-Anlagen wo man sowas gut zur Isolation der 
Steuersignale der vielen in Reihe geschalteten Halbleiter verwenden 
kann, aber scheint sich bewährt zu haben.

von Frank K. (fchk)


Lesenswert?

Alexander M. schrieb:

>>> Wie vorhin gesagt, lieber wäre mir eine "fertige" Lösung, um hier Zeit &
>>> Geld zu sparen ;)
>>
>> https://trampaboards.com/vesc-6-75--p-33322.html
>>

> Interessant, danke. Werde ich mir auf jeden Fall anschauen.
> Besser wäre natürlich sowas "open source" zu bekommen :) Vielleicht gibt
> es da in Github etc. ein paar Ideen ;)

Das IST open-source. Da läuft die Firmware aus dem github-Link aus 
meinem ersten Posting drauf.

https://github.com/vedderb/bldc

Und die Hardware dafür ist auch dokumentiert, jedenfalls im 
Wesentlichen.

https://vesc-project.com/node/311

Und wie gesagt: so viel billiger wirst Du mit einem Selbstbau nicht 
werden. Vor allem nicht, wenn Du Kühlkörper (ja, die wirst Du brauchen) 
usw mechanisch bearbeiten musst.

Außerdem ist es nur fair, die Entwickler dann auch zu unterstützen.

fchk

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Halbbrücke schrieb:
> Rein aus Interesse: hast du Fotos davon?

Nein, ist schon etwas her und da hatte ich nur selten ne Knipse bei. Es 
war modular, jede Phasenendstufe hatte eine Platine und darauf wurde die 
MC Platine gesteckt.

Halbbrücke schrieb:
> Welchen der aufgezählten FETs hast denn nun
> genommen?
Müsste der IRFB3207 gewesen sein.

von Alexander M. (a_lexander)


Lesenswert?

Danke euch!

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.