Forum: Mikrocontroller und Digitale Elektronik H-Brücke DC Motor Strom oszilliert schwingt


von Ben P. (ben5en)


Angehängte Dateien:

Lesenswert?

Guten Abend,

ich messe einen mir nur schwer zu erklärenden Stromverlauf eines DC 
Motors, betrieben an einer H-Brücke. Der Motorstrom wurde an zwei völlig 
unterschiedlichen H-Brücken mittels LEM-Strommesszange im Brückenzweig 
gemessen, an beiden selbiger Verlauf (siehe Foto, Anhang). Der 
Stromverlauf einer reinen R-, oder RL-Last ist an beiden Brücken wie 
erwartet dreiecksförmig.

Der Motorstrom (siehe Foto, Anhang) oszilliert mit einer Frequenz von 
111kHz. Abhilfe schafft der Einsatz einer kräftigen Spule (Testweise mit 
790uH) in Reihe zum Motor und verhilft dem Motorstrom so zum gewünschten 
"Dreiecksverlauf". Hier fallen jedoch ebenso Strompeaks beim Einschalten 
des Highside Fets auf, wie in 
Beitrag "Strompeak im Lastpfad beim Ansteuern eines DC-Motors mit einer H-Brücke" beschrieben.

Testweise wurden mehrere, völlig verschiedenen Motoren an der Brücke 
betrieben. Dabei schwingt bei einigen Motoren der Strom wie oben 
beschrieben, bei einigen verläuft der Motorstrom erwartungsgemäß 
dreiecksförmig.

Interessant ist, dass die Schwingung selbst bei blockierten Motor 
auftritt!
Das Anbringen und oder Entfernen von Entstörkondensatoren verschaffte 
keine Besserung. Insbesondere versuche ich eine allgemeine Lösung zu 
finden, sodass Motoren aus einer bestimmten Leistungsklasse (max. 250W) 
an der Brücke betrieben werden können.

Hat von euch jemand Ideen oder Erfahrungen, was diese Schwingung 
verursacht?

Angaben Motor_Foto:

L_anker: 223uH
R_anker: 0.17Ohm

Vielen Dank.

von Kanack (Gast)


Lesenswert?

Servus,
welchen Treiber hast du?
Welche PWM Frequenz?
Kann die Spannungsquelle genug Sagt liefern? Gut gepuffert? Welche 
Spannng?

Ben P. schrieb:
> L_anker: 223uH
> R_anker: 0.17Ohm

Rechne mal den max. Rippelstrom aus: ul = L di/dt => di = ul/(2*f*L)

223uH ist nicht viel und wird normalerweise nur bei 1khz angegeben.

Ben P. schrieb:
> Abhilfe schafft der Einsatz einer kräftigen Spule (Testweise mit
> 790uH) in Reihe zum Motor und verhilft dem Motorstrom so zum gewünschten
> "Dreiecksverlauf". Hier fallen jedoch ebenso Strompeaks beim Einschalten
> des Highside Fets auf, wie in
> Beitrag "Strompeak im Lastpfad beim Ansteuern eines DC-Motors mit einer
> H-Brücke" beschrieben.

Spannungsquelle richtig Puffern. Externe Schottky Dioden nehmen, dann 
wenn nötig einen Snubber auslegen. Wichtig ist natürlich vorher richtig 
zu messen.

von Ben P. (ben5en)


Lesenswert?

Genutzt werden bei meiner Platine (hierzu auch das oben angehängte Bild) 
2 IR2104 Halbbrückentreiber mit IRF540er Mosfets. Die 
Zwischenkreisanbindung wurde versucht möglichst niederinduktiv 
anzubinden. Unmittelbar an den Schaltern sitzt flächig ein 4700uF Elko 
und ein 1u Folienkondensator; U_ZK steht!

f_periode: 16kHz
duty_cycle: 50%
U_e: 12V
Als Spannungsquelle steht ein Labornetzteil zur Verfügung mit max. 
36V/15A.
Die Induktivität wurde mit einem Induktivitätsmessgerät aufgenommen.

Danke für die erste Reaktion auf meine Frage!

von Ben P. (ben5en)


Lesenswert?

Hallo,

Testweise wurden nun über alle Schalter Schottky Dioden verbaut: keine 
Verbesserung der Stromform.

von Manfred K. (mkch)


Lesenswert?

Hallo,
ich würde vermuten, dass die H-Brücke nicht richtig schaltet. Es sieht 
so aus, dass sie kurz die eine Seite einschaltet, wieder ausgeht und 
nach etwa 30us die andere Seite und ebenfalls wieder ausgeht. Die 
Schwingereien sind evt. Freilaufströme, die mit dem Rest schwingen.
Gruß Manfred

von Volker K. (powerfreak)


Lesenswert?

Hallo Ben,

wie hoch ist denn der Motorstrom, den Umrechnungsfaktor für die im Oszi 
dargestellte Spannung ist nicht angegeben.
Wie ist der ESR des Elkos bei 16kHz?

Bitte nimm mal die Spannung und den Strom am Zwischenkreiskondensator 
auf, einmal so, daß die PWM Frequenz zu sehen ist, und wenn da 
Schaltspikes zu sehen sind, die dann entsprechend hochaufgelöst.
Möglicherweise kommt der Elko nicht mit dem Strom zurecht.

von laurentius (Gast)


Lesenswert?

Labornetzteil zu schwach.

von Ben P. (ben5en)


Angehängte Dateien:

Lesenswert?

Bild01 im Anhang:
gelb - Zwischenkreisspannung
cyan - PWM1 für IR2104
grün - Motorstrom (gemessen mit LEM PR30(100mV/A))

Bild02 im Anhang:
@Volker K. -> Bild aufgezoomt
gelb - Zwischenkreisspannung
cyan - PWM1 für IR2104
grün - Motorstrom (gemessen mit LEM PR30 (100mV/A))

Nicht aufgeführt ist PWM2, welche low ist. SD ist für beide 
Treiberstufen high. Damit ist bei einer Halbbrücke der untere MOSFET 
ständig ein, während die gegenüberliegende Brücke alternierend zwischen 
high- und lowside FET schaltet.

@Volker K.:
Der Elko ist folgender: 
https://www.reichelt.de/Elkos-axial/AX-4-700-40/3/index.html?ACTION=3&LA=2&ARTICLE=4525&GROUPID=3142&artnr=AX+4.700%2F40&SEARCH=%252A

Angegeben ist der ESR(100Hz) mit 0.072 Ohm; Z(10kHz) 0.035Ohm

Der Motorstrom des leerlaufenden Motors beträg bei 50% Tastgrad 
(gesteuert) ca. 2,3A.

@Manfred Koch:
Ich gehe davon aus, dass die Brücke richtig schaltet. Wie bereits 
erwähnt ist der Stromverlauf an einer reinen RL-Last erwartungsgemäß. 
Morgen kann ich ein Bild mit allen 4 Schalterspannungen nachreichen. Im 
Vorfeld wurde dies bereits gemessen (leider kein Bild dazu aufgenommen), 
hierbei konnte ich kein Fehlverhalten finden.

@laurentius:
Alle jetzt gezeigten Aufnahmen wurden mit einem leistungsstärkeren 
Labornetzteil durchgeführt. Das Netzteil schließe ich somit aus.

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


Lesenswert?

Ben P. schrieb:
> Nicht aufgeführt ist PWM2, welche low ist. SD ist für beide
> Treiberstufen high. Damit ist bei einer Halbbrücke der untere MOSFET
> ständig ein, während die gegenüberliegende Brücke alternierend zwischen
> high- und lowside FET schaltet.

Damit schliesst du den Motor bei jedem Low an der aktiven Halbbrücke 
kurz. Ist es das was du willst? Die IR2104 sind recht schlecht für so 
eine H-Brücke geeignet, es sei denn, du beziehst /SD in die Steuerung 
mit ein und benutzt jeden Chip dafür, die diagonal gegenüberliegenden 
MOSFet anzusteuern, während der andere über /SD inaktiv geschaltet wird. 
Trotzdem bleibt das Ladungspumpenproblem...

von Ben P. (ben5en)


Lesenswert?

Matthias S. schrieb:
> Damit schliesst du den Motor bei jedem Low an der aktiven Halbbrücke
> kurz.

Ja, das ist doch eine übliche Verfahrensweise beim 4-Quadrantensteller 
siehe 
https://de.wikipedia.org/wiki/Datei:Vierquadrantensteller-tiefsetzsteller-rechtslauf.svg 
und mir als slow decay bekannt.

: Bearbeitet durch User
von Kanack (Gast)


Lesenswert?

Probiere mal fast decay aus. Sonst two phase chopping bei 50%, müsste 
der Motor stillstehen und etwas blockieren...

Sonst wäre ein Schaltplan und Versuchsaufbau nicht schlecht.

Eventuell andere Mosfets mal ausprobieren.

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


Lesenswert?

Ben P. schrieb:
> Ja, das ist doch eine übliche Verfahrensweise beim 4-Quadrantensteller

Das will ich ja wissen - wünscht sich der TE einen 4-Quadrantensteller?

von Ben P. (ben5en)


Angehängte Dateien:

Lesenswert?

Guten Abend,

im Anhang ist ein Schaltplanauschnitt.
Wie man sieht, wurden die FETs bereits getauscht. Im Schaltplan sind 
noch IRF1404er vermerkt. Aktuell betreibe ich wegen der geringen 
Treiberleistung die Brücke mit IRF540er FETs. Ebenso sind noch ein mal 
10u an VCC der Treiber gekommen.

Kanack schrieb:
> Sonst two phase chopping

Was ist mit "two phase chopping" gemeint? Ich werde mich heute Abend 
noch etwas mit den Ansteuerverfahren befassen und diese versuchen morgen 
umzusetzten.

: Bearbeitet durch User
von Ben P. (ben5en)


Lesenswert?

Matthias S. schrieb:
> Das will ich ja wissen - wünscht sich der TE einen 4-Quadrantensteller?

Ja.

von Klaus (Gast)


Lesenswert?

Ben P. schrieb:
> Ja, das ist doch eine übliche Verfahrensweise beim 4-Quadrantensteller

Ist auch so in Ordnung. Der Strom erzeugt das Drehmoment, das den Motor 
antreibt und der sollte immer fließen. Er darf nur seine Polarität nicht 
umkehren, dann bremst der Motor. Das passt auch, wenn man den Motor 
nicht umpolt. Man spart sich dann auch teure, schnelle Freilaufdioden. 
Sie haben ja, wie oben gesagt, auch nichts gebracht.

Ich hab ähnliches beobachtet, könnte wirklich am Netzteil liegen. Ich 
würd mal die PWM-Frequenz runter setzen. Das hat bei mir eine massive 
Verbesserung gebracht. Da kann man dann auch schön beobachten, wann der 
Strom die Richtung umkehrt und die PWM-Frequenz wieder etwas höher 
machen. Prüf dabei auch gleich die Temperatur der Brücke. Bei mir konnte 
ich bei niedriger PWM-Frequenz nichts fühlen, bei hoher hab ich mir fast 
die Finger verbrannt.

Ben P. schrieb:
> Abhilfe schafft der Einsatz einer kräftigen Spule (Testweise mit
> 790uH) in Reihe zum Motor und verhilft dem Motorstrom so zum gewünschten
> "Dreiecksverlauf".

Ich würde auch mal die Spule zwischen Netzteil und Brücke hängen, die 
bildet dann mit den Cs über der Brücke ein LC-Glied (Cs ohne L oder R 
sind eigentlich wirkungslos) und isoliert das Netzteil etwas von dem 
geschalteten Brückenstrom. Das könnt was bringen, wenns am Netzteil 
liegt.

MfG Klaus

von Ben P. (ben5en)


Lesenswert?

Guten Abend.

Die PWM hatte ich ebenso versuchsweise reduziert. Die Schwingung 
verläuft gedämpft und nähert sich einem Endwert, bis dann eben der neue 
Impuls kommt. Bei f_periode von 16kHz (aktueller Zustand) aber kommt der 
nächste Impuls in einem so kurzen Abstand, dass bis zu diesem Zeitpunkt 
die Schwingung noch nicht abgeklungen ist.

Hänge ich die Spule vor die Brücke, steigt die Belastung für den 
Zwischenkreiskondensator deutlich. Im Moment des Schaltens wird mein 
Motor dann fast vollständig aus dem C_ZK versorgt, bis das Netzteil 
(über die zusätzliche Spule) dann liefern kann... In meinen Augen macht 
das wenig Sinn.

Morgen folgt ein guter Schwung an Messungen, Bilder stelle ich dann hier 
rein.

Danke für die rege Beteiligung!

von Klaus (Gast)


Lesenswert?

Ben P. schrieb:
> Die PWM hatte ich ebenso versuchsweise reduziert.

Ich bin bis 400Hz runtergegangen und bei ca. 1kHz gelandet. Da war dann 
nur noch ein Überschwinger zu sehen. Und das hat nichts mit der längeren 
Zeit der PWM-Periode zu tun, auch die Anzahl der Schwingungen hat sich 
auf den einen Überschwinger reduziert. Der war bei 400Hz auch weg, der 
Strom kehrte sich aber um, die Frequenz also zu niedrig.

Ben P. schrieb:
> Hänge ich die Spule vor die Brücke, steigt die Belastung für den
> Zwischenkreiskondensator deutlich. Im Moment des Schaltens wird mein
> Motor dann fast vollständig aus dem C_ZK versorgt, bis das Netzteil
> (über die zusätzliche Spule) dann liefern kann... In meinen Augen macht
> das wenig Sinn.

Das macht schon Sinn, deine PWM arbeitet nicht mehr gegen die Regelung 
im Netzteil. Die muß sonst auch mit deiner PWM-Frequenz arbeiten. Die 
ersten Messungen hab ich mit einem analogen Netzteil gemacht, da waren 
die Oszillationen nicht zu sehen. Die Stromkurven sahen aus, wie aus dem 
Laden. Für wirkliche Tests war das Netzteil aber zu schwach. Mit einem 
Schaltnetzteil bei höheren Spannungen und Strömen hab ich sie dann 
beobachtet.

Ich brauch noch ein paar Tage, bis ich das Ganze auch unter Last mal 
gegen einen Akku messen kann.

MfG Klaus

von Jörg E. (jackfritt)


Lesenswert?

Ich hatte ähnliche Probleme, dicken Akku dran und siehe da es lief.
Deine Ladungspumpe mit 10u und über Vcc nur 100n könnte noch Probleme 
machen.
Ich würde auf beiden Seiten gleiche Kapazitäten vorsehen. Aber 
vielleicht können die Profis da noch mehr zu sagen. Gibs auch eine 
Appnote von IR dazu. Weiss nur leider nich grad welche.

von Ben P. (ben5en)


Lesenswert?

Jörg E. schrieb:
> über Vcc nur 100n könnte noch Probleme
> machen.

Entgegen des Schaltplans sind an beide Treiberstufen 10uF zusätzlich 
spendiert worden - weiter oben hatte ich darauf verwiesen.

Danke für die vielen Rückmeldungen. Ich halte euch auf dem Laufenden.

: Bearbeitet durch User
von Kanack (Gast)


Lesenswert?

Servus,
guck dir mal die professionellen Motortreiber mal an. Da ist es nicht 
unüblich, dass ein paar Leistungsdrosseln am Ausgang einer Brücke dran 
hängen. Bei der Kommutation können halt Spikes entstehen. Bei einen 
Glockenankermotor weniger als bei einen Permanentmagneten...

von Ben P. (ben5en)


Lesenswert?

Kanack schrieb:
> professionellen Motortreiber

Hast du dazu ein konkretes Beispiel?

von Possetitjel (Gast)


Lesenswert?

Ben P. schrieb:

> Die Schwingung verläuft gedämpft und nähert sich
> einem Endwert, bis dann eben der neue Impuls kommt.

Hmm.

Ich vertrete die Minderheitenmeinung, dass ein Messfehler
vorliegt. Allerdings kenne ich die Stromzange nicht, so
dass ich keinen konkreten Rat geben kann.

Ich wuerde den Strom mal versuchsweise anders erfassen,
z.B. mit einem improvisierten Stromwandler (Ringkern) oder
einem Shunt. Streng darauf achten, keine parasitaeren
Schwingkreise zu bauen! Induktivitaetsarme Widerstaende
nehmen (keine Drahtwiderstaende); Koaxkabel korrekt
abschlieszen; am Sensor ggf. kleinen Laengswiderstand
zur Daempfung einfuegen.
Korrekter Absolutwert ist erstmal scheissegal; es geht darum,
erstmal den wahren Zeitverlauf zu sehen. Proportionalitaet
genuegt.

von Ben P. (ben5en)


Lesenswert?

Possetitjel schrieb:
> Ich vertrete die Minderheitenmeinung, dass ein Messfehler
> vorliegt.

Bei reiner RL-Last und selbigen Messaufbau zeigt das Oszi den zu 
erwartenden Dreiecksverlauf.

Ich werde heute Nachmittag neue Bilder hochladen können.

von Ben P. (ben5en)


Lesenswert?

Guten Abend,

eigentlich war angedacht jetzt eine Scharr Messabbildungen hochzuladen, 
doch bin ich zu einem anderen Entschluss gekommen:

Um einen eigenen Hardwarefehler auszuschließen habe ich heute eine 
weitere, andere und neue H-Brücke am besagten Motor getestet. Im 
Ergebniss zeigte sich selbige Stromform - nun also an drei völlig 
unterschiedlichen Vollbrücken.

Weiterhin habe ich unternommen:

- Versuchsdurchführung mit Versorgung aus einer kräftigen Akkubank
- Umstellen des Ansteuerverfahrens (von slow- auf fast decay) auf 
eigener Platine
- wiederholte Messung mit professioneller Strommesszange
- ebenso eine Messung über einen Messshunt

--> Alles mit dem selben Ergebnis.

Irgendwo bildet das Konstrukt einen Schwingkreis (ich möchte hier noch 
mal betonen, dass selbst bei blockierten Motor die oszilierende 
Stromform auftaucht - im Vergleich dazu bei reiner R-L-Last nicht) und 
diesen kann ich am einfachsten mit einer (oder zwei) am Ausgang der 
H-Brücke nachgeschalteten Spulen unterdrücken.

Aus Zeitgründen werde ich die Sache nicht mehr weiter verfolgen, da 
ohnehin schon ein immenser Zeitaufwand für dieses Schwingverhalten 
aufgebracht wurde und das Nachschalten der Spulen eine echte Lösung für 
mich darstellt. Alternativ könnte man ähnlich wie bei einem TTS direkt 
eine Spule und einen Ausgangskondensator auslegen, dann sollte die 
Spannung für den DC Motor stehen. Dies ist in meinem Fall aber nicht 
zwingend nötig.

Eventuell stößt jemand mal auf ein ähnliches Problem und findet hier 
etwas Rat.

Danke an alle.

: Bearbeitet durch User
von F. F. (foldi)


Lesenswert?

Ben P. schrieb:
> Irgendwo bildet das Konstrukt einen Schwingkreis (ich möchte hier noch
> mal betonen, dass selbst bei blockierten Motor die oszilierende
> Stromform auftaucht - im Vergleich dazu bei reiner R-L-Last nicht) und
> diesen kann ich am einfachsten mit einer (oder zwei) am Ausgang der
> H-Brücke nachgeschalteten Spulen unterdrücken.

Habe gerade den Thread nur überflogen, aber wenn du mehrere H-Brücken 
getestet hast, alle mit demselben Ergebnis. Hast das aber nicht mit 
reiner R-L Last, dann würde ich sagen, es liegt an diesem Motor.

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.