Forum: Mikrocontroller und Digitale Elektronik Strompeak im Lastpfad beim Ansteuern eines DC-Motors mit einer H-Brücke


von tobi (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen!

Wir bräuchten dringend eure Hilfe.

Es geht um einen Motorkontroller, welcher einen DC-Motor ansteuert. Um 
die Drehzahl des Motors einzustellen wird eine H-Brücke verwendet, 
welche mit PWM angesteuert wird (f=18kHz).

Das Problem ist nun, dass der Motorstrom beim umschalten der FETs einen 
grossen Peak aufweist. Genauer entsteht beim Einschalten (schliessen) 
des Highside FET im Lastpfad (über den Motor) ein Peak von 700mA bei 
einem Leerlaufstrom von sonst 30mA. Zwischen dem Einschalten der 
Highside FETs und dem Ausschalten der Lowside FETs (und umgekehrt) haben 
wir eine Totzeit von 500ns. Das Problem ist, dass wir diesen Peak 
wegkriegen müssen!

Im Moment wird der Motor nur in Vorwärtsrichtung betrieben, d.h. Q1A und 
Q2A sind getaktet, Q1B ist dauernd offen und Q2B dauernd geschlossen.

Ebenfalls haben wir festgestellt, dass die Gatespannung der Lowside FET 
beim Einschalten der Highside FET schwingt.

Wir haben euch noch das Schema und 2 Bilder des Problems gepostet. Im 
bild_01 ist der Motorenstrom (100mV=100mA, 200mV/div) aufgenommen. Im 
bild_02 sind die Gatespannung von Q1A (gelb) und Q2A (blau). In rot ist 
die Motorenpannung und in grün der Motorenstrom (100mV=100mA).

Treiber: IR2011
FET: IRF7313

Vielen Dank!

Gruss tobi

von Flip B. (frickelfreak)


Lesenswert?

Ihr müsst ja nicht dauernd Umpolen also könnt ihr beim Richtungswechsel 
mehr Totzeit einbauen.

von Ernestus P. (malzeit) Benutzerseite


Lesenswert?

Mir fällt nur auf euer Mosfet-Treiber ist für 200V ausgelegt verglichen 
mit euren 24V.

Die Motorspannung messt ihr irgendwie am falschen Punkt, die müsste ja 
um 24V springen oder wie habt ihr die gemessen?

Habt ihr auch mal den Strom mit seperatem Werkzeug gemessen, vielleicht 
produziert euer Sensor da misst.

von Hauspapa (Gast)


Lesenswert?

Hast Du mal überschlagen ob Dein Stompeak beim Umschalten nicht mit
reverse recovery charge und reverse recovery time zusammenhängt?

Die Beieinflussung der anderen Gateansteuerung könnte Ihr Ursache in der 
Millerkapazität haben (Gate to Drain Charge).

Deine 15uF Stützkapazität erscheint mir recht wenig, aber wenn es 
funtioniert... Ich hätte aber zumindest noch ein bischen Keramik für die 
hohen Frequenzen direkt an den Mosfet spendiert.

von tobi (Gast)


Lesenswert?

Hallo Philipp

Wir verstehen deine Antwort nicht ganz?

Da wir den Motor im Moment (auch auf den Bildern) nur in 
Vorwärtsrichtung laufen lassen, wird eigentlich nur die "halbe" H-Brücke 
gebraucht.
Wie schon geschrieben, werden die FET Q1A und Q2A getaktet, Q1B ist 
immer offen und Q2B immer geschlossen.
Wenn Q1A geschlossen und Q2A offen ist, hängt der Motor an 24VDC. Wenn 
Q1A offen und Q2A geschlossen ist, sind die Motorenklemmen über die FETs 
(s. schema_3) kurzgeschlossen und der Motor treibt den Strom.

Dieses Schalten ist nötig um die Drehzahl einzustellen. Die Drehrichtung 
ändern wir noch nicht.. Zuerst solls mal ohne Peaks vorwärts laufen..:)

gruss tobi

von Hauspapa (Gast)


Lesenswert?

Eine Frage noch: Hat Euer Motor evtl. Entstörkondensatoren? Die würden 
mit PWM auch gerne umgeladen werden.

von tobi (Gast)


Lesenswert?

Hallo Ernestus

Hast recht! mit der Motorspannung stimmt was nicht. Dies ist die 
24VDC-Speisung. sry.. Wenn es dir was nützt würd ich das richtige Bild 
hochladen.

Zum Messen: Wir haben den Strom schon via Shunt und via Stromzange 
gemessen. Beide Messmethoden führen zum gleichen Resultat. Wobei auch 
immer derselbe KO verwendet wurde. Somit dürfte das Gemessene schon der 
Wahrheit entsprechen. oder nicht?

gruss tobi

von Ernestus P. (malzeit) Benutzerseite


Lesenswert?

tobi schrieb:
> Hallo Ernestus
>
> Hast recht! mit der Motorspannung stimmt was nicht. Dies ist die
> 24VDC-Speisung. sry.. Wenn es dir was nützt würd ich das richtige Bild
> hochladen.

Da wackelt es aber ganz schön.

Ich denke die Tipps von Hauspappa waren ganzgut.

* trr der Body-Dioden liegt bei 48ns.

Find ich jetzt nicht gerade schnell, eventuell externe Schottkydioden 
verwenden.

* Ein Elkos ist gewöhnlich kein HF-Bauteil, auch wenn es ganz gute 
Low-ESR-Typen gibt.

Vielleicht zusätzlich mit Foko oder Kerko stützen

von Ernestus P. (malzeit) Benutzerseite


Lesenswert?

Gestern wars wohl etwas spät. Die von mir schon erwähnten Faktoren 
könnten zwar in eurer Schaltung auch noch ein Problem sein, sind aber 
kaum für das gezeigte Problem verantwortlich. (Strom zur Last hin)

Es muss sich um Entstörkondensatoren handeln oder ähnliche Kapazitäten 
in der Last handeln. Beim Abschalten von Q1A schwingt die Last von 
selbst in die Freilaufdiode von Q2A. Schaltet Q2A ab und Q1A ein, 
passiert das nicht sondern der Transistor muss die Kapazität der Last 
aufladen. Entsprechend wackelt der Strom zur Last hin deutlich.

Sollte euch das jetzt nicht helfen, wäre ein Oszillogramm des anderen 
Umschaltvorhgangs zum vergleichen hilfreich. Ansonsten könntet ihr noch 
eine geeignete ohmsche, induktive und induktiv-kapazitive Last für 
kontrollierte Bedingungen benutzen.

von tobi (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Ernestus und Hauspapa!

Also jetzt findet ihr den Motorenstrom beim Einschalten des Highside FET 
(bild03, U_gate=gelb, I_motor=grün) und beim Einschalten des Lowside FET 
(bild04, U_gate=blau, I_motor=grün).

Betreffend den Entstörkondensatoren: Unser Motor hat solche drin. Aber 
wir hatten bereits mal Versuche gemacht mit einem Widerstand und einem 
reinen RL-Glied als Last.
Bei einem Widerstand (R=6.5k) hatten wir keine Peaks. Bei einer reinen 
RL-Last (R=270, L=10m) sind die Peaks wieder vorhanden (vgl. bild05, 
bild06, I_last: 5V/div=20mA/div). Dies würde eigentlich gegen ein 
Problem mit der Entstörung sprechen??

In bild06 sieht man gut wie die Gatespannung des Lowside FET 
"mitschaltet". Wir denken da hat hauspapa recht. Dies müsste auf die 
gate-to-drain kapazität zurückzuführen sein. Doch wie bringt man dieses 
Mitschalten weg? Die Thresholdspannung des FET ist 1V und dies ist bei 
diesem Schwanken der Gatespannung schon ein bisschen eng!
Könnte es sein, dass dies eine Auswirkung im Motorenstrom hat?

Wir haben jetzt noch die Speisungen besser abgestützt:
15VDC: 220uF elko (auf GND-sternpunkt)
24VDC: 220uF elko (auf GND-sternpunkt)
       10uF kerko (von Drain highside FET zu Source lowside FET)
Vor dem Abstützten hatten sie eine max. Amplitude von 0.7A, jetzt haben 
sie noch 0.5A. Die Peaks sind ein wenig kleiner geworden, aber immer 
noch zu gross!


gruss tobi

von Ernestus P. (malzeit) Benutzerseite


Lesenswert?

Du solltest die GS-Spannung auch mal mit der kurzen Leitung messen also 
auch Tastkopfmasse direkt am Lowside-Mosfet bzw. Mathematikfunktion des 
Oszilloskops für den Highside-Mosfet.

Wenn es mit ohmscher Last kaum/nicht wackelt, aber bei rein induktiver 
Last dann denke hat der Treiber genügend Saft zum sicheren 
Durchschalten, denn die Transistor-Kapazitäten sind ja immer da. 
Deswegen tippe ich erstmal auf die Bodydioden, dass deren trr eure Masse 
verschmutzt und mit Schottkydioden Parallel umgangen werden sollten.

Irgendwie oszilliert bei Bild 6 mit der induktiven Last das ganze nicht 
so wild wie auf Bild 3 dem DC-Motor mit Entstörkondensatoren. Da sind 
wohl auch zwei Faktoren am Werk.

von tobi (Gast)


Lesenswert?

Salü!
Wir messen direkt an den FET Pins und unser KO hat differentielle 
Messsonden. Der Grund, dass auf bild3 mehr Schwingung drauf ist als auf 
bild6 liegt am Messen selbst. Sobald wir mehr als 3 KO-Sonden anhängen 
schwingts. Dies ist sehr unschön, aber wir haben den Grund noch nicht 
herausgefunden.

Danke für den Hinweis. Wir werden die Gatespannung mit R-Last nochmals 
genauer anschauen und die Schottkydioden einbauen. Wir hatten schonmal 
mit einer Schottkydiode experimentiert, jedoch ohne Erfolg. Wir hatten 
aber auch nicht eine besonders gute, sondern nahmen einfach eine die 
herumlag. Hättest du gerade ein richtig gute im Kopf??

gruss tobi

von Urlauber (Gast)


Lesenswert?

Ich hatte mit der "Gate Rückwirkung" auch schon mal Probleme.
Geholfen hatte dann ein 10n Kerko zwischen Gate und Source aller 
Mosfets.

Dieser muss vom Treiber zwar natürlich auch umgeladen werden,
was die Schaltgeschwindigkeit verringert,
dafür fängt der Kerko dann die vom Drain kommenden Umschaltspitzen auf.

von Ernestus P. (malzeit) Benutzerseite


Lesenswert?

Anfangs hielt ich den kleinen Rippel beim Lowside-Mosfet für einen 
Messfehler (im Gegensatz zum oszillierenden Motorstrom).

Bei einer U_TH von 1V ist das dann irgenwie schon problematisch, was 
aber keinen Einfluss auf den gezeigten Motorstrom haben sollte.

Noch eine Sache die Ihr dann messen könntet wäre die Spannung über R12, 
die ja den Gateladestrom repräsentiert.

Bei den Shottkydioden braucht es keine besondere, nur den Strom muss die 
abkönnen, ansonsten sind alle schnell genug.


Langsam bin ich überfragt. Eure Probleme kann ich aus der Ferne wohl 
nicht lösen.

von Daniel (Gast)


Lesenswert?

Hi Tobi.

>Im Moment wird der Motor nur in Vorwärtsrichtung betrieben, d.h. Q1A und
>Q2A sind getaktet, Q1B ist dauernd offen und Q2B dauernd geschlossen.

Es ist (etwas) falsch die Q1A und Q2A zu takten um den Motor zu 
betreiben.
Ihr habt wahrscheinlich die falschen Widerstände genommen die vom IR2011 
direkt zur Gate's der FET's gehen und dabei die Eingangskapazität der 
FET's nicht berücksichtigt. Dabei bleiben die FET's leitend trotz einer 
Wartezeit.

Eure Steuerung wird es nicht lange mitmachen, diese muss irgendwann 
zwangsläufig durchbrennen laut Leistungselektronik. Bei euch steht ein 
Ingenieurböro in der Schaltung drauf, also viertes Semester da wird die 
Sache gelernt.

Es ist ne einfache Vierquadrantensteller Schaltung, man macht es anders.

Damit ist eine Drehrichtung definiert:
Q1A leitend    Q1B sperrt
Q2A sperrt     Q2B leitend

Jetzt anders rum:
Q1A sperrt     Q1B leitend
Q2A leitend    Q2B sperrt

von tobi (Gast)


Lesenswert?

Du hast schon recht. Dann lässt du den Motor jedoch nur vollgas vorwärts 
oder vollgas rückwärts laufen!
Wir wollen ja die Drehzahl regeln. Deshalb muss im Vorwärtsbetrieb 
abwechslungsweise die 24VDC auf den Motor gegeben werden (Q1A leitet) 
oder der Motor kurzgeschlossen werden (Q2A leitet zur Entlastung der 
Bodydiode). Zusätzlich ist Q2B immer geschlossen und Q1B immer offen. An 
diesem Betrieb ist doch nichts faul?!
Die Schaltung macht dies auf jeden Fall schon lange mit. Das Problem 
sind "lediglich" die Peaks... Die kriegen wir einfach nicht weg!

Daniel schrieb:
> Ihr habt wahrscheinlich die falschen Widerstände genommen die vom IR2011
>
> direkt zur Gate's der FET's gehen und dabei die Eingangskapazität der
>
> FET's nicht berücksichtigt. Dabei bleiben die FET's leitend trotz einer
>
> Wartezeit.

Was meinst du damit?

Gruss tobi

von Andreas K. (derandi)


Lesenswert?

Bewirkt das Kurzschließen des Motors nicht ein Abbremsen?

von Daniel (Gast)


Lesenswert?

Für die Drehzahl brauchst du entweder Hall-Sensoren oder Drehgeber.
[http://www.mikrocontroller.net/articles/Motoransteuerung_mit_PWM]
Tobi kannst die Drehezahl mittels PWM einstellen, wenn du die Drehzahl 
des Motors gemessen hast. 
[http://www.mikrocontroller.net/articles/Motoransteuerung_mit_PWM]

>Bewirkt das Kurzschließen des Motors nicht ein Abbremsen?
Das Kurzschließen entweder der beiden oberen oder der beiden unteren 
FET's bewirkt das Abbremsen des Motors.

von Martin (Gast)


Lesenswert?

Hallo Miteinander!

Die Stromspitzen können von der Wicklungskapazität des Motors kommen, 
die im Schaltaugenblick umgeladen wird. Bei schnell schaltenden Mosfets 
können auch durch kleinen Kapazität <100pF schnell mal ein, zwei oder 
mehr Amper fließen.
Wenn die Verluste es zulassen, würde ich einfach mal die 
Schaltgeschwindigkeit der Mosfets drastisch reduzieren - Gatewiderstand 
100 Ohm oder mehr (Totzeit anpassen, sonst kommt es zu Kurzschlüssen).

Wenn man die Mosfets langsamer schalten lässt, hat man auch weniger 
Probleme mit Latch-Up.

BTW: 30V Mosfets an 24V Rail für einen Motor einzusetzen, finde ich 
mutig- habt Ihr Probleme mit Avalanche? Wie lange hält die Schaltung im 
Dauerbetrieb durch, bis es zu Ausfällen kommt?

Gruß Martin

von Ben P. (ben5en)


Lesenswert?

Guten Abend,

wurde das Problem damals gelöst? Ich habe ein ähnliches Problem, leider 
finde ich dazu nur wenige Informationen im Netz.

Mein Thread: Beitrag "H-Brücke DC Motor Strom oszilliert schwingt"

*Über das Alter dieses Threads bin ich mir durchaus bewusst und habe 
bereits ein neues Thema erstellt. Leider kann ich den damaligen 
Themenersteller (tobi) nicht direkt kontaktieren (als Gast angemeldet) 
und versuche mein Glück noch mal hier. Danke.

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.