Forum: Mikrocontroller und Digitale Elektronik BLDC mit einem Hardware PWM


von Marc (Gast)


Lesenswert?

Hallo, ich habe eine Verständnisfrage zum Artikel BLDC Controller:

https://www.mikrocontroller.net/articles/Brushless-Controller_f%C3%BCr_Modellbaumotoren#Hardware

Im Artikel wird eine Beispiel-Schaltung für eine Ansteuerung des 
Treibers IR2104 mit einem PWM Kanal gegeben. Dabei wird das PWM Signal 
auf IN_A gelegt und nicht auf SD_A. Laut Datenblatt wird IN_A benutzt um 
zwischen High und Low Side umzuschalten, während SD shut down ist, also 
beide Mosfets ausschaltet.

Wenn nun also PWM an IN_A liegt, dann wird doch im PWM-Takt zwischen 
high und low umgeschaltet, anstatt entweder high oder low zu schalten.

Müßte PWM nicht korrekterweise mit SD_A statt IN_A verbunden sein?

von Rainer U. (r-u)


Lesenswert?

Marc schrieb:
> ...Müßte PWM nicht korrekterweise mit SD_A statt IN_A verbunden sein?

Also für mich geht es so in Ordnung, zusammen mit dem Bild für die 6 
Phasen - Du kannst Dir die PWM ja auch als HIGH vorstellen (Spezialfall 
- Vollgas) - dann versteht es sich leichter.

von Marc (Gast)


Lesenswert?

Hallo Rainer, danke für die Antwort!

Mir ist aber immer noch nicht klar, warum das mit einem IR2104 
funktionieren kann. Für mich macht das weiterhin nur bei einem IR2101 
Sinn.

Wenn man bei dem IR2101 die PWM auf den Pin 2 legt, dann schaltet man 
den high side MOSFET an und aus. Auf der low side der gegenüberliegenden 
("ableitenden") Phase braucht man keine PWM, denn die bleibt einfach 
eingeschaltet um die Schaltverluste zu vermeiden. Da macht dann Deine 
Antwort für mich Sinn die PWM als HIGH anzusehen.

Aber bei einem IR2104 ist die Logik eine andere, hier schaltet Pin 2 
nicht den high side MOSFET sondern wählt zwischen high und low side, 
während Pin 3 (SD) an und ausschaltet.

Das angenehme am IR2104 ist halt, dass er shoot through protection hat, 
was es eben beim IR2101 nicht gibt. Ich würde daher den IR2104 
bevorzugen, aber nur wenn er in der Schaltung funktioniert wie 
vorgesehen.

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

Wenn ich dein Vorhaben richtig verstehe, dann möchtest du einen 3-Phasen 
permanent-erregten Synchronmotor betreiben, wobei die drei Phasen einen 
gemeinsamen (internen) Sternpunkt haben. Du hast also in Summe drei 
Anschlüsse für die "Spulen", die du ansteuern musst.
Jeden der drei Anschlüsse musst du gezielt mit der positiven (V+) oder 
der negativen (V-) Versorgungsspannung verbinden können. Dafür brauchst 
du, je Phase, zwei Leistungsschalter. Einen, um die Phase mit V+ und 
einen, um die Phase mit V- zu verbinden. Nennen wir sie Top- und 
Bottom-Schalter.
Sinnigerweise dürfen Top- und Bottom-Schalter nie gleichzeitig 
geschlossen sein, da du sonst einen Kurzschluss von V+ nach V- hättest.
Wenn du nun mit einer PWM eine dieser Phasen ansteuern möchtest machst 
du nichts anderes als umzuschalten welcher der beiden Schalter 
geschlossen ist. Sie sind nie beide geschlossen und einer ist immer 
geschlossen. Man kann auch sagen: "Die Schaltzeit von Schalter-Top ist 
identisch zu Eins Minus Schalter-Bottom Minus zweimal Totzeit".

In deinem Fall bräuchtest du also drei IR2104 und drei PWM-Ausgänge des 
MCUs. Du würdest nur z.B. die PWM für die Top-Schalter berechnen und 
ausgeben. Der IR2104 sorgt dann dafür, dass der Bottom-Schalter immer 
dann eingeschaltet wird, wenn Top (sicher) aus ist (Totzeit 
Berücksichtigung).

Hoffe dir damit geholfen zu haben...

Viele Grüße,
Alex

von Marc (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Alex, vielen Dank!! Es war mir nicht klar, dass man bei der Phase 
die an V+ liegt die low side invers zur high side schaltet. Dein Beitrag 
hat mich veranlasst mal in das Datenblatt eines fertigen BLDC Controller 
Chips zu gucken (statt nur App Notes von Microcontroller Herstellern).

Und siehe da, die Erleuchtung kam... ;) Das Stichwort ist Sync 
Rectification und die low side wird geschaltet um die Body Diode zu 
entlasten.

Ich habe mal zwei anschauliche Dateien angehängt, falls später jemand 
mit dem gleichen Problem vorbeikommt: einmal mit invers PWM auf der low 
side - zum schonen der low side body diode und einmal ohne.

Da auf der body diode 0,7V-1,2V abfallen, entsteht bei 10A ganz kräftig 
Verlustwärme.

Das schlechte Beispiel stammt aus einem Artikel über BLDC von 
embedded.com...

Vielen Dank nochmals und schönes Wochenende!
Marc

von Henry P. (henrylexx)


Lesenswert?

Ich bin zwar erst dabei mich einzuarbeiten, aber allgemein ist es nicht 
unbedingt notwendig die Low-Side mit der inversen PWM anzusteuern. (auch 
wenn es im Artikel gemacht wird)

Ich kann dieses Dokument

http://www.mdpi.com/1424-8220/10/7/6901/pdf
(Position and Speed Control of Brushless DC Motors Using Sensorless 
Techniques and Application Trends)

empfehlen, zwar werden oft auf Artikel  http://ieeexplore.ieee.org 
(kostenpflichtig) verwiesen, aber troztdem enthält es sehr detailierte 
Infos zur Ansteuerung.

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.