Hallo zusammen,
ich arbeite momentan an einem Projekt, leider fehlt es mir hierzu an
entsprechendem Know-How. Ich hoffe Ihr könnt mir hierbei ein wenig
weiter helfen.
Ziel des Projektes ist es, eine Gleichspannung zu einer Wechselspannung
von +/-17V umzurichten und dabei am Ausgang durch eine geeignete
Filterschaltung einen 50Hz Sinus zu bekommen. Der benötigte
Ausgangsstrom beträgt 450mA.
Aktueller Stand:
- Bestehende Full-H-Bridge realisiert über L293DD013TR
- SPWM erzeugt über Atmega8 - Zwei Kanäle, 1 x das normale Signal, 1 x
das komplementäre Signal über die ich die H-Brücke ansteuern möchte.
Oszilloskopiere ich das PWM-Signal über ein entsprechenden RC-Filter
bekomme ich auch den gewünschten Sinus mit 50Hz.
Das Gerät / die induktive Last scheint ebenfalls zu funktionieren, da es
die gewünschten Funktionen übernimmt. Das Problem ist, dass ich dort
leider nicht messen oder oszilloskopieren kann, da es ein vergossenes
Fertigprodukt ist. Dadurch komm ich zum eigentlichen Problem, dass ich
die gewünschte Sinuskurve mit einer Amplitude von 17V und einer Frequenz
von 50Hz schon vor den Eingängen des Gerätes benötige, um
sicherzustellen, dass diese korrekt funktionieren und ich diese auch
entsprechend dokumentieren kann.
Ich suche nun also nach entsprechenden LCL-Filterschaltungen mit denen
ich dies bewerkstelligen kann. Selbstverständlich bin ich mir über die
Grundkenntnisse eines Tiefpasses und der Filterordnung im Klaren, nur
leider fehlt mir der richtige Ansatz zur Dimensionierung des Filters.
Ich hoffe Ihr könnt mir Ansatzpunkte, Tipps und Tricks o.ä. liefern um
auf die Lösung zu kommen. Des Weiteren hoffe ich, dass ich mich klar
genug ausgedrückt habe, falls Informationen fehlen bitte ich euch mir
das mitzuteilen.
Vielen Dank vorab und freundliche Grüße.
tobb schrieb:> - Bestehende Full-H-Bridge realisiert über L293DD013TR
Motortreiber? Naja, wers schön findet... - nur schade, das die so
langsam sind, denn:
tobb schrieb:> falls Informationen fehlen bitte ich euch mir> das mitzuteilen.
Jo, einer der wichtigsten wäre ja doch, wie hoch nun deine PWM Frequenz
ist. Wenn du dein Filter so dimensionierst, das du diese sicher
abfilterst, bleiben ja nur noch die 50 Hz übrig.
Deswegen ist es zielführend, die PWM Frequenz so hoch wie möglich
anzusetzen, dann brauchst du nämlich nur ein recht kleines Filter.
> Das Gerät / die induktive Last scheint ebenfalls zu funktionieren, da es> die gewünschten Funktionen übernimmt.
Wenn das schon eine induktive Last ist, bist du vermutlich schon fertig,
denn die Induktivität der Last ist schon dein gewünschtes Filter.
Deswegen haben z.B. auch Frequenzumrichter praktisch nie ein
Ausgangsfilter, sondern überlassen das dem angeschlossenen Motor.
Hallo,
danke für die Rückmeldung.
Matthias S. schrieb:> Motortreiber? Naja, wers schön findet... - nur schade, das die so> langsam sind, denn:
Muss ich zustimmen, besagter Motor-Treiber kann ledglich bis zu 5kHz
schalten. Gestern hatte ich den selbigen Versuchsaufbau noch mit dem
L298 aufgebaut, dieser kann bis zu 40kHz schalten. Ich denke im finalen
Produkt werde ich hier auf eine diskrete H-Brücke ausweichen.
Matthias S. schrieb:> Jo, einer der wichtigsten wäre ja doch, wie hoch nun deine PWM Frequenz> ist. Wenn du dein Filter so dimensionierst, das du diese sicher> abfilterst, bleiben ja nur noch die 50 Hz übrig.
Ich wusste ich hab was wichtiges vergessen, sorry..
Die PWM-Frequenz beträgt momentan 16kHz. Und hier beginnt mein Problem,
ich denke es handelt sich hier einfach um ein Verständnisproblem.
Auf folgende Formel bezieh ich mich zur Dimensionierung des Filters:
fg=1/(2*pi*Wurzel(L*C))
Momentan gehe ich davon aus, dass meine Grenzfrequenz in diesem Fall
also 50Hz beträgt (Alle Frequenzen darunter werden ungedämpft
durchgelassen, alle Frequenzen darüber entsprechend gedämpft). Übrig
bleiben dann mein gewünschter 50Hz Sinus. Liege ich hier richtig, oder
bin ich total auf dem falschen Weg?
Des Weiteren würde mich interessieren, ob es so etwas wie einen
Richtwert zum Verhältnis von Kondensator zu Spule gibt?
Matthias S. schrieb:> Wenn das schon eine induktive Last ist, bist du vermutlich schon fertig,> denn die Induktivität der Last ist schon dein gewünschtes Filter.> Deswegen haben z.B. auch Frequenzumrichter praktisch nie ein> Ausgangsfilter, sondern überlassen das dem angeschlossenen Motor.
Das stimmt, auch hier kann ich zustimmen. Allerdings habe ich unter
diesen Umständen keinen Zugriff auf eventuelle Optimierungen oder
Dokumentationen wie Oszilloskop Aufnahmen des Sinus-Signals, da es sich
wie besagt um ein geschlossenes Produkt handelt. Es sind hier lediglich
zwei Adern herausgeführt.
tobb schrieb:> Auf folgende Formel bezieh ich mich zur Dimensionierung des Filters:>> fg=1/(2*pi*Wurzel(L*C))>> Momentan gehe ich davon aus, dass meine Grenzfrequenz in diesem Fall> also 50Hz beträgt (Alle Frequenzen darunter werden ungedämpft> durchgelassen, alle Frequenzen darüber entsprechend gedämpft). Übrig> bleiben dann mein gewünschter 50Hz Sinus. Liege ich hier richtig, oder> bin ich total auf dem falschen Weg?
Nachtrag: Mir fällt gerade selber auf, dass ich hier total falsch liegen
muss. In diesem Fall würde sich mein Filter unabhängig von PWM Frequenz
niemals ändern. Wo genau liegt mein Denkfehler?
@ tobb (Gast)
>Muss ich zustimmen, besagter Motor-Treiber kann ledglich bis zu 5kHz>schalten. Gestern hatte ich den selbigen Versuchsaufbau noch mit dem>L298 aufgebaut, dieser kann bis zu 40kHz schalten.
Der ist genauso langsam!
>Ich denke im finalen>Produkt werde ich hier auf eine diskrete H-Brücke ausweichen.
Unsinn, bei läppischen 500mA lohnt sich das keine Sekunde. Nimm einen
L6201.
>Die PWM-Frequenz beträgt momentan 16kHz. Und hier beginnt mein Problem,>ich denke es handelt sich hier einfach um ein Verständnisproblem.>fg=1/(2*pi*Wurzel(L*C))
Das ist die Formel für einen Schwingkreis ;-)
Man könnte das Ganze so ansetzen, daß man Z = RL einstetzt. Wenn also
bei 17V 0,450A fließen sollen, sind das ~38Ohm.
>Momentan gehe ich davon aus, dass meine Grenzfrequenz in diesem Fall>also 50Hz beträgt (Alle Frequenzen darunter werden ungedämpft>durchgelassen, alle Frequenzen darüber entsprechend gedämpft).
Kann man machen, ist aber praktisch viel zu niedrig. Dadurch weden die
Spulen und Kondensatoren viel zu groß.
>Des Weiteren würde mich interessieren, ob es so etwas wie einen>Richtwert zum Verhältnis von Kondensator zu Spule gibt?
Ja. Die Güte des Filters darf nciht zu hoch sein, denn dann gibt es
häßliche Resonanzen. Ich würde mal Q<10 anpeilen, ggf. deutlich
darunter.
http://sim.okawa-denshi.jp/en/RLClowkeisan.htm
Ich würde mal mit 440uH, 100uF und 1 Ohm ins Rennen gehen. Die 1 Ohm
sind die ohmschen Anteile der Spule, kein extra Widerstand!
Die 440uH sollte man auf 2x220uH aufteilen und an die beiden
H-Brückenausgänge direkt anschließen. Der Kondensator muss ein bipolarer
Typ sein, also ein Folienkondensator oder ein bipolerer Elko.
Normale Elkos oder Tanalkondensatoren gehen NICHT!
Falk B. schrieb:> Unsinn, bei läppischen 500mA lohnt sich das keine Sekunde. Nimm einen> L6201.
Mit über 7€ leider ziemlich teuer. Aber werde ich ausprobieren, danke.
Falk B. schrieb:> Das ist die Formel für einen Schwingkreis ;-)> Man könnte das Ganze so ansetzen, daß man Z = RL einstetzt. Wenn also> bei 17V 0,450A fließen sollen, sind das ~38Ohm.
Soviel zu meinen Filter-Kenntnissen, muss ich mich nochmal im Detail
damit beschäftigen.
Falk B. schrieb:>>Momentan gehe ich davon aus, dass meine Grenzfrequenz in diesem Fall>>also 50Hz beträgt (Alle Frequenzen darunter werden ungedämpft>>durchgelassen, alle Frequenzen darüber entsprechend gedämpft).>> Kann man machen, ist aber praktisch viel zu niedrig. Dadurch weden die> Spulen und Kondensatoren viel zu groß.
Was wäre hier die richtige / bessere Herangehensweise? Ich bin mir nicht
im Klaren darüber, welche Frequenz ich anpeilen muss um im Endeffekt die
50Hz zu bekommen, bzw. welche Gegebenheiten ich berücksichtigen muss.
Falk B. schrieb:> Ja. Die Güte des Filters darf nciht zu hoch sein, denn dann gibt es> häßliche Resonanzen. Ich würde mal Q<10 anpeilen, ggf. deutlich> darunter.>> http://sim.okawa-denshi.jp/en/RLClowkeisan.htm
Das ist sehr hilfreich, vielen Dank.
Falk B. schrieb:> Ich würde mal mit 440uH, 100uF und 1 Ohm ins Rennen gehen. Die 1 Ohm> sind die ohmschen Anteile der Spule, kein extra Widerstand!> Die 440uH sollte man auf 2x220uH aufteilen und an die beiden> H-Brückenausgänge direkt anschließen. Der Kondensator muss ein bipolarer> Typ sein, also ein Folienkondensator oder ein bipolerer Elko.> Normale Elkos oder Tanalkondensatoren gehen NICHT!
Super, das werde ich so in den Testaufbau übernehmen.
Folgende Spulen habe ich dafür ausgewählt:
http://www.mouser.de/ProductDetail/Bourns/SRR0906-221YL/?qs=G%252bmCF962%2fa50DDFCPmvjgg%3d%3d
Kannst du mir vielleicht noch erklären, wie du genau auf diese Werte
gekommen bist? Es ist mir wichtig, dass ich das ganze auch wirklich
verstehe und dementsprechend anwenden kann.
@ tobb (Gast)
>> Unsinn, bei läppischen 500mA lohnt sich das keine Sekunde. Nimm einen>> L6201.>Mit über 7€ leider ziemlich teuer. Aber werde ich ausprobieren, danke.
Ich meinte den L6202, der kostet bei Reichelt 3,85.
>Was wäre hier die richtige / bessere Herangehensweise? Ich bin mir nicht>im Klaren darüber, welche Frequenz ich anpeilen muss um im Endeffekt die>50Hz zu bekommen, bzw. welche Gegebenheiten ich berücksichtigen muss.
Die Frage ist, wie sauber das Ausgangssignal sein muss. Wieviel
Welligkeit von der PWM darf man noch am Ausgang sehen? 10%? 1%?
>Folgende Spulen habe ich dafür ausgewählt:>http://www.mouser.de/ProductDetail/Bourns/SRR0906-...
Naja, die sind ein wenig knapp dimensioniert. Ich würde mal 0,7-1A
Nennstrom bei ca. 0,5 Ohm anpeilen.
>Kannst du mir vielleicht noch erklären, wie du genau auf diese Werte>gekommen bist? Es ist mir wichtig, dass ich das ganze auch wirklich>verstehe und dementsprechend anwenden kann.
Pi mal Daumen so.
Ein LC-Filter hat 40dB/Dekade Dämpfung. D.h. oberhalb der Grenzfrequenz
wird ein Signal mit 10facher Frequenz um Faktor 100 gedämpft. Das ist
schon recht viel.
Also legt man die Grenzfrequenz auf ca. 1/10 der PWM-Frequenz oder
leicht darunter, dann hat man nur noch 1% des PWM-Rippels auf dem
Ausgangssignal.
Weiterhin darf die Güte nicht zu groß werden, schrieb ich ja bereits.
D.H die Spule muss eher klein, der Kondensator eher groß sein.
Dann legt man erstmal einen Wert fest, z.B. die Spule mit 100uH, rechnet
den Rest aus und simuliert bzw. berechnet mit dem Online-Tool, das da so
ungefähr rauskommt.
Das Tool kann ja auch C berechnen, wenn man Q, f und L vorgibt.
Hallo nochmals,
nach weiteren Testversuchen melde ich mich nun wieder zurück.
Vorab erstmal vielen Dank für die hilfreichen Tipps.
Ich habe das ganze nun in der Praxis umgesetzt, leider sind die
Ergebnisse nach wie vor nicht wie gewünscht bzw. erwartet. Das
entsprechende Signal am Ausgang ist alles andere als ein sauberer Sinus.
Des Weiteren werden meine PWM-Signale komplett zerstört, sobald ich den
LC-Filter an die Ausgänge der H-Brücke hänge.
Ich denke, irgendwo befinden sich nach wie vor schwerwiegende Fehler in
der Ausführung, die ich leider nicht ausfindig machen kann.
Im Anhang befindet sich entsprechender Schaltplan, sowie die Signale am
Ausgang des LC-Filters, sowie des PWM-Signals welche mein Oszilloskop
ausgibt.
Zum Schaltplan:
Die Spannungsquellen für die +5V Logik Versorgung, sowie die +17V Motor
Spannung stammen aus zwei voneinander unabhängigen stabil geregelten
Labor-Netzgeräten. Die induktive Last ist momentan nicht verbunden, ist
aber im finalen Produkt zwischen TP1 und TP2 vorgesehen. Die PWM-Signale
PWMA und PWMB sind komplementär zueinander.
Die angehängten Oszilloskop Signale entsprechen folgenden Testpunkten:
LC-Filter1 -> TP1 / LC-Filter2 -> TP2 / PWM_Signal -> TP3
Folgende Spulen wurden für den LC-Filter verwendet:
http://www.mouser.de/ProductDetail/Bourns/SRR0906-221YL/?qs=G%252bmCF962%2fa50DDFCPmvjgg%3d%3d
Folgende Kondensatoren wurden für den LC-Filter verwendet:
http://www.mouser.de/ProductDetail/Kemet/C1210C107M4PACTU/?qs=sGAEpiMZZMsh%252b1woXyUXjzhvdF1k%252bzPqwjssW%252bhYtxg%3d
Ich hoffe, jemand findet einen Fehler oder kann mir weitere
Hilfestellung geben, um hierfür eine Lösung zu finden.
Vielen Dank vorab.
@ tobb (Gast)
>Ergebnisse nach wie vor nicht wie gewünscht bzw. erwartet. Das>entsprechende Signal am Ausgang ist alles andere als ein sauberer Sinus.>Des Weiteren werden meine PWM-Signale komplett zerstört, sobald ich den>LC-Filter an die Ausgänge der H-Brücke hänge.
Dann hast du ein Masse- oder Messproblem.
>Im Anhang befindet sich entsprechender Schaltplan, sowie die Signale am>Ausgang des LC-Filters, sowie des PWM-Signals welche mein Oszilloskop>ausgibt.
Und wie sieht der reale Aufbau aus?
>Die Spannungsquellen für die +5V Logik Versorgung, sowie die +17V Motor>Spannung stammen aus zwei voneinander unabhängigen stabil geregelten>Labor-Netzgeräten.
Na hoffentlich hast du beide an die gemeinsame Masse angeschlossen.
> Die induktive Last ist momentan nicht verbunden, ist>aber im finalen Produkt zwischen TP1 und TP2 vorgesehen. Die PWM-Signale>PWMA und PWMB sind komplementär zueinander.
Das sollte man erstmal messen, indem man dort mit einem RC-Tiefpass
drangeht, der ca. 1kHz Bandbreite hat.
>Die angehängten Oszilloskop Signale entsprechen folgenden Testpunkten:>LC-Filter1 -> TP1 / LC-Filter2 -> TP2 / PWM_Signal -> TP3
Zuerst musst du deine PWM-Ansteuersignale sauber messen, sonst geht gar
nichts. Wie hast die die Messung gemacht? Mit einem ordentichen
Tastkopf? Masse ordnetlich angeschlossen? Zeig mal ein paar Bilder.
>Folgende Spulen wurden für den LC-Filter verwendet:>http://www.mouser.de/ProductDetail/Bourns/SRR0906-...
Die ist OK.
>Folgende Kondensatoren wurden für den LC-Filter verwendet:>http://www.mouser.de/ProductDetail/Kemet/C1210C107...
Der ist nicht OK! Erstens hat der nur 16V Nennspannung und 2. ist das
ein hochkapazitiver Keramikkondensator. Der hat bei Nennspannung nur
noch einen Bruchteil seiner Nennkapazität!
Nimm einen normalen Elko oder Folienkondensator. Ja, die sind deutlich
größer, aber das ist halt so.
>Ich hoffe, jemand findet einen Fehler
Du musst den Fehler finden, denn nur du hast die Schaltung vor dir.
Deine Testpunkte schweben im Raum, das ist schlecht. Die kann und sollte
man DIREKT an das Netz anschließen, wie jedes andere Bauteil auch.
An den 17V für den Brückentreiber fehlt ein brauchbarer Elko, so im
Bereich 100-1000uF. 100nF allein reichen nicht.
Noch was. Da gibt es ein kleines Mißverständnis. Der Kondensator von
100uF muss zwischen den beiden Augängen liegen, nicht je 2 Kondensatoren
gegen Masse! Darum muss der auch bipolar sein.
Wenn man allerdings 2 Kondensatoren gegen Masse nutzt, so wie du, dann
kann man einfache, polare Elkos nehmen, muss aber deren Kapazität
verdopplen, hier auf 220uF.
tobb schrieb:> Ich habe das ganze nun in der Praxis umgesetzt, leider sind die> Ergebnisse nach wie vor nicht wie gewünscht bzw. erwartet. Das> entsprechende Signal am Ausgang ist alles andere als ein sauberer Sinus.
Das ist schlecht.
> Des Weiteren werden meine PWM-Signale komplett zerstört, sobald ich den> LC-Filter an die Ausgänge der H-Brücke hänge.
Das ist gut, denn genau das ist doch der Sinn des Filters: die
PWM-Frequenz NICHT durchzulassen, also zu "zerstören", wenn man das so
nennen will.
Es sollte also im Idealfall ein Sinus ohne irgendwelche Artefakte der
PWM-Frequenz zu sehen sein. Die PWM-Steuerung sollte sich nur noch
indirekt in Form der damit steuerbaren Amplitude des Sinus bemerkbar
machen.
> Im Anhang befindet sich entsprechender Schaltplan, sowie die Signale am> Ausgang des LC-Filters
Vermutlich ohne Last gemessen und nicht zwischen TP1 und TP2, sondern
irgendwie gegen Masse. Im Übrigen ist der Filter auch unnötig aufwendig.
Du musst dich bei Wechselrichtern von deinem massebezogenen Denken
trennen, sonst kannst du weder verstehen, was da passiert noch sinnvoll
messen.
@ c-hater (Gast)
>> Des Weiteren werden meine PWM-Signale komplett zerstört, sobald ich den>> LC-Filter an die Ausgänge der H-Brücke hänge.>Das ist gut, denn genau das ist doch der Sinn des Filters: die>PWM-Frequenz NICHT durchzulassen, also zu "zerstören", wenn man das so>nennen will.
Ich glaube er meint die PWM-Signal aus dem Controller, nicht aus der der
H-Brücke!
Praktische Wechselrichter mit Sinus PWM im 10kHz Bereich und höher
verwenden meistens eine grosse Induktivität im LC Tiefpass und dafür
eine verhältnismässig kleine Kapazität.
Man kann mal ein paar Berechnungsbeispiele hiermit durchklingeln:
http://www.jobst-audio.de/tools-frequenzweiche/frequenzweiche
Ein hier vorhandener 300W Sinus WR benutzt bspw. eine Induktivität mit
etwa 10mH (ganz schöner Trumm) und dafür nur etwa 5µF bipolarer
Polyester-C (das ganze ähnelt wirklich einer Frequenzweiche am
Tieftöner). Kann ich bei Gelegenheit nochmal genauer angeben, wenn ich
die Kiste mal aufschraube.
Hallo zusammen,
mit eurer Hilfe bin ich nun einen riesen Schritt im Projekt voran
gekommen, danke euch!
Kurz zur aktuellen Sachlage:
Nachdem ich meine Schaltungsfehler innerhalb des LC-Filters korrigiert
hatte (siehe aktualisierten Schaltplan) habe ich mich nochmal intensiv
mit euren Beiträgen bezüglich der korrekten Messung der Signale
beschäftigt. Und siehe da, in der Tat hatte mich mein logisches
Verständnis hier im Stich gelassen.
Anfangs vom jeweiligen Testpunkt nach Masse gemessen, konnte ich nach
entpsrechender Messung von Testpunkt zu Testpunkt folgendes Ergebnis auf
meinem Oszilloskop betrachten (siehe Anhang).
Das geht natürlich schon viel weiter in die Richtung an Signal was ich
mir im Endeffekt vorstelle.
Nun noch ein paar Fragen zu meinen restlichen Problemstellen:
- Der ausgegebene Sinus ist für das Endgerät sicherlich
zufriedenstellend, allerdings hätte ich diesen gerne so sauber wie
möglich. Habt ihr mir eventuell ein paar Vorschläge, Tipps und Tricks,
wie ich diesen noch etwas "verfeinern" kann? Was auch interessant wäre,
wie es zu den Störungen im Sinus kommen kann, bzw. welche Gegebenheiten
hierfür zuständig sind.
- Meine Zielfrequenz ist 50Hz. Die aktuelle Frequenz beträgt ca. 100Hz.
Ich denke, hier werde ich entsprechend mit den Werten des LC-Filters
arbeiten müssen, um auf das gewünschte Ergebnis zu kommen. Hierfür
könnte ich dann, die von euch empfohlenen Online-Tools verwenden. Könnt
ihr das so bestätigen?
@tobb (Gast)
>mit euren Beiträgen bezüglich der korrekten Messung der Signale>beschäftigt. Und siehe da, in der Tat hatte mich mein logisches>Verständnis hier im Stich gelassen.>Anfangs vom jeweiligen Testpunkt nach Masse gemessen,
Auch das ist OK.
>konnte ich nach>entpsrechender Messung von Testpunkt zu Testpunkt folgendes Ergebnis auf>meinem Oszilloskop betrachten (siehe Anhang).
WIE hast du GENAU gemessen? Man kann nicht einfach die Masse vom
Tastkopf an deinen TP1 klemmen und TP2 messen, damit schließt man den
einen LC-Filterausgang kurz!
Man kann aber mit 2 Tastköpfen jeweils TP1 und TP2 gegen Masse messen
und im Oszi die Differenz anzeigen.
>- Der ausgegebene Sinus ist für das Endgerät sicherlich>zufriedenstellend, allerdings hätte ich diesen gerne so sauber wie>möglich.
Das ist unsinnig, denn den Aufwand willst du nicht bezahlen. Man kann
das Signal noch verbessern, aber nicht "so sauber wie möglich".
>wie ich diesen noch etwas "verfeinern" kann? Was auch interessant wäre,>wie es zu den Störungen im Sinus kommen kann, bzw. welche Gegebenheiten>hierfür zuständig sind.
Dazu muss man erstmal sauber messen. Und man braucht ein Bild des realen
Aufbaus. Sagte ich bereits.
Sternförmige Masseführung und Layout sind bei getakteten Leistungsstufen
das A&O!
Ein paar Ideen findest du im Artikel Treiber.
Und du sollst auch einen kleinen RC-Filter mit sagen wir 1kOhm + 1uF an
die PWM-Ausgangäe des AVRs anschließen. Dort kann man die gefilterte PWM
messen. Denn die Beulen im Signal könnten auch auf eine fehlerhafte
Ansteuerung zurückzuführen sein.
Schau dir auch das Ausgangssignal mit verschiedenen Lasten an, welche
man einfach mit ein paar Leistungswiderständen emulieren kann.
>- Meine Zielfrequenz ist 50Hz. Die aktuelle Frequenz beträgt ca. 100Hz.>Ich denke, hier werde ich entsprechend mit den Werten des LC-Filters>arbeiten müssen, um auf das gewünschte Ergebnis zu kommen.
Falsch. Dann hast du das Prinzip nicht verstanden. Die 50 Hz werden
durch deinen uC generiert, nicht den LC-Filter! Der LC-Filter entfernt
nur die hochfrequenzen Anteile der PWM.
Du musst schicht doppelt soviele PWM-Werte für deine 50Hz Schwingung
ausgeben. Du hast hier praktisch einen Klasse-D Verstärker, mit dem man
beliebige Kurvenformen erzeugen kann. Von 0-1kHz ist alles möglich.
Falk B. schrieb:> WIE hast du GENAU gemessen? Man kann nicht einfach die Masse vom> Tastkopf an deinen TP1 klemmen und TP2 messen, damit schließt man den> einen LC-Filterausgang kurz!> Man kann aber mit 2 Tastköpfen jeweils TP1 und TP2 gegen Masse messen> und im Oszi die Differenz anzeigen.
Ich werde das gleich nochmal im Detail überprüfen und das Ausgangssignal
anschließend nachreichen.
Falk B. schrieb:> Dazu muss man erstmal sauber messen. Und man braucht ein Bild des realen> Aufbaus. Sagte ich bereits.> Sternförmige Masseführung und Layout sind bei getakteten Leistungsstufen> das A&O!> Ein paar Ideen findest du im Artikel Treiber.
Leider habe ich aktuell keine andere Möglichkeit als die Schaltung für
Testzwecke fliegend zu verdrahten. Sobald ich die Schaltung final
aufgebaut habe, werde ich die Bilder hier veröffentlichen. In diesem
Zuge, werde ich mich nochmal durch den Treiber Artikel lesen, danke.
Falk B. schrieb:> Und du sollst auch einen kleinen RC-Filter mit sagen wir 1kOhm + 1uF (220nF) an> die PWM-Ausgangäe des AVRs anschließen. Dort kann man die gefilterte PWM> messen. Denn die Beulen im Signal könnten auch auf eine fehlerhafte> Ansteuerung zurückzuführen sein.> Schau dir auch das Ausgangssignal mit verschiedenen Lasten an, welche> man einfach mit ein paar Leistungswiderständen emulieren kann.
Auch diese Vorgehensweise werde ich gleich im Anschluss realisieren und
die Signale entsprechend anhängen.
Falk B. schrieb:> Falsch. Dann hast du das Prinzip nicht verstanden. Die 50 Hz werden> durch deinen uC generiert, nicht den LC-Filter! Der LC-Filter entfernt> nur die hochfrequenzen Anteile der PWM.> Du musst schicht doppelt soviele PWM-Werte für deine 50Hz Schwingung> ausgeben. Du hast hier praktisch einen Klasse-D Verstärker, mit dem man> beliebige Kurvenformen erzeugen kann. Von 0-1kHz ist alles möglich.
Danke für diesen Hinweis. Ich denke ich sollte mich nochmal im Detail
mit der Theorie auseinandersetzen.
Hallo,
um das Thema aktuell zu halten, hier der aktuelle Stand:
- PWM_AVR: Das PWM-Signal direkt nach dem Mikrocontroller
- PWM_RC-Filter: Das PWM-Signal nach dem RC-Filter mit R=1kOhm / C=200nF
- Sine_TP1: Sinuswelle gemessen an TP1
- Sine_TP2: Sinuswelle gemessen an TP2
- Sine_Both: Beide Sinuswellen gemessen an TP1 / TP2
Alle Messungen beziehen sich auf GND.
Als nächstes werde ich das Ausgangssignal mit verschiedener Last
überprüfen, dafür verwende ich wie vorgeschlagen diverse
Leistungswiderstände.
Anschließend werde ich mich nochmals im Detail mit der Theorie / dem
Prinzip auseinandersetzen, um mein PWM auf die gewünschten 50Hz
anzupassen.
Für entsprechende Anmerkungen oder Kritik bin ich jederzeit dankbar.
@tobb (Gast)
>um das Thema aktuell zu halten, hier der aktuelle Stand:
Na das sieht doch schon recht gut aus, nochmal besser als die vorherige
Messung, obwohl nichts an der Hardware geändert wurde, oder?
>- PWM_RC-Filter: Das PWM-Signal nach dem RC-Filter mit R=1kOhm / C=200nF
Die Sinüsse sehen noch etwas eckig aus, da stimmt wahrscheinlich deine
Sinustabelle oder die Software nicht. Poste vollständigen Quelltext als
Anhang.
>- Sine_TP1: Sinuswelle gemessen an TP1>- Sine_TP2: Sinuswelle gemessen an TP2
Beides voll OK!
>- Sine_Both: Beide Sinuswellen gemessen an TP1 / TP2
Auch hier sind die Sinüsse etwas plattgedrückt, was aber verständlich
ist, wenn die Ansteuerung ebenso aussieht. Möglicherweise werden die
Signale durch den Leistungstreiber noch etwas verschlechtert, weil der
bei sehr kleinen und sehr großen Tastverhältnissen die Pulse nicht
sauber umsetzt. Für diese Anwendung ist das aber voll OK.
Ein Verschönerung der Sinusform kann hier eine höhere Speisespannung des
Leistungstreibers und eine andere Sinustabelle schaffen. Den Treiber mit
der Standardspannung 24V speisen und die Sinustabelle so berechnen, daß
sie NICHT bis 0 und 255 reicht, sondern nur ca. bis 25 (10%) und 230
(90%), damit vermeidet man sehr schmale PWM-Pulse.
Falk B. schrieb:> Na das sieht doch schon recht gut aus, nochmal besser als die vorherige> Messung, obwohl nichts an der Hardware geändert wurde, oder?
Korrekt. Es hat sich bei den vorherigen Messungen lediglich um
Messfehler gehandelt.
Falk B. schrieb:> Die Sinüsse sehen noch etwas eckig aus, da stimmt wahrscheinlich deine> Sinustabelle oder die Software nicht. Poste vollständigen Quelltext als> Anhang.
Der Quelltext befindet sich im Anhang. Wäre super wenn man da mal drüber
schauen könnte.
Falk B. schrieb:> Ein Verschönerung der Sinusform kann hier eine höhere Speisespannung des> Leistungstreibers und eine andere Sinustabelle schaffen. Den Treiber mit> der Standardspannung 24V speisen und die Sinustabelle so berechnen, daß> sie NICHT bis 0 und 255 reicht, sondern nur ca. bis 25 (10%) und 230> (90%), damit vermeidet man sehr schmale PWM-Pulse.
Okay das ist interessant, haben die Leistungstreiber mit dieser Thematik
allgemein Probleme oder ist das explizit eine Problematik mit dem L298?
Ich werde deinen Vorschlag direkt ausprobieren, danke dir.
@ tobb (Gast)
>> Die Sinüsse sehen noch etwas eckig aus, da stimmt wahrscheinlich deine>> Sinustabelle oder die Software nicht. Poste vollständigen Quelltext als>> Anhang.>Der Quelltext befindet sich im Anhang. Wäre super wenn man da mal drüber>schauen könnte.
Du kannst Quelltext diekt als. .c Datei anhängen, da kann man den sogar
direkt mit buntem Syntax-Highlighting anschauen.
>Okay das ist interessant, haben die Leistungstreiber mit dieser Thematik>allgemein Probleme
Mehr oder weniger ja. Denn ein Leistungstreiber, der viele Ampere bei
vielleich 400V oder mehr schalten muss, ist nun mal nicht so schnell wie
ein winziges Logikgatter, das nur ein paar mA bei 5V schalten muss.
> oder ist das explizit eine Problematik mit dem L298?
Auch das, das Ding ist mehr als 30 Jahre alt. Laut Datenblatt ist es
zwar für PWM-Frequenzen von 25-40kHz geeignet, aber dort steht nix von
minimaler Pulsbreite. Schau dir einfach im Datenblatt die Schaltzeiten
an. Pulse unter 5us sind mit dem IC kaum zu machen, das sind 8% bei
16kHz.
Die Sinustabelle scheint OK zu sein, wenn gleich ich die Werte nicht
einzeln geprüft habe ;-) Nutze nur EINEN Interrupt, um deine PWMs zu
aktualisieren, das macht die Sache deutlich übersichtlicher und später
auch besser. Keine Bange, die sind intern gepuffert, das passt schon.
Die einfache Methode, bei jedem Interrupt einfach den nächsten
Tabelleneintrag auszugeben, ist vorerst OK. Aber damit ist man an eine
feste Frequenz gebunden. Für diese Anwendung ist das OK, aber 16 kHz /
256 = 62,5 Hz Wenn du also auf 50 Hz kommen willst, musst du eine
Tabelle etwas größer machen und den Überlauf des Index abfangen, etwa
so.
tobb schrieb:> 1 x das normale Signal, 1 x das komplementäre Signal
Ich hatte ja von Anfang an so meine Zweifel, ob das so stimmt.
tobb schrieb:> PWM_AVR.png
Wie man sieht, sind sie nicht vollkommen komplementär.
tobb schrieb:> Sine_Both.png
Und das führt zu dieser Phasenverschiebung.
Du musst die beiden PWMs gleichzeitig updaten. Am besten mit einer
festen Abhängigkeit von 180°.
Gruß
Jobst
Hallo mal wieder,
vielen Dank nochmals für eure Inputs. Ich habe den Source Code nun
entsprechend angepasst. Sprich: Beide Interrupts zu einem Interrupt
zusammen gefasst für die Aktualisierung beider Ausgänge. Auch die Sinus
Tabelle habe ich angepasst, auf 320 Felder erweitert und bekomme nun die
50Hz am Ausgang.
Das DDS-Prinzip werde ich mir für die finale Version nochmals im Detail
anschauen.
Des Weiteren habe ich wie Anfangs empfohlen den H-Bridge Chip L6202 in
die Schaltung übernommen und die Versorgungsspannung auf 34V erhöht ->
siehe Schaltplan.
Leider komme ich damit auch schon zum nächsten Problem und zwar
folgendes:
Ohne Last am Ausgang der H-Brücke funktioniert alles wie gewollt und ich
bekomme meine 17V Sinus-Wechselspannung. Hänge ich nun die induktive
Last an die Ausgänge, steigt mein Stromverbauch an die 400-500mA, was ja
erst mal kein Fehler ist. Nach kurzer Zeit aber, bricht der
Stromverbrauch ein, so als würde etwas diesen begrenzen. Kurzzeitig
steigt er wieder an, um anschließend wieder wie beschrieben
einzubrechen. Das ganze geht dann solange bis der Chip irgendwann den
Geist aufgibt.
Diesen Fall habe ich übrigens mit beiden H-Brücken, sowohl beim L298,
als auch beim L6202. Was noch zu erwähnen ist, die Problematik besteht
erst ab einer Versorgungsspannung von ca. 28V.
Folgende Schritte habe ich bereits durchgeführt:
- Ändern der LC-Filter Spulen auf 220µHenry / 1,68A
- Original Source Code wie Anfangs verwendet
Das änderte leider nichts an der Problematik. Bevor ich noch mehr IC's
zerstöre, wollte ich nun erstmal nach eurem Rat bitten.
Ich bin momentan ziemlich ratlos und hoffe Ihr könnt mir hier weiter
helfen.
Vielen Dank vorab.
@tobb (Gast)
>Tabelle habe ich angepasst, auf 320 Felder erweitert
Hast du auch die Amplitude auf 10-90% vermindert?
>die Schaltung übernommen und die Versorgungsspannung auf 34V erhöht ->
Warum? Ich sprach von 24V.
>Ohne Last am Ausgang der H-Brücke funktioniert alles wie gewollt und ich>bekomme meine 17V Sinus-Wechselspannung. Hänge ich nun die induktive>Last an die Ausgänge, steigt mein Stromverbauch an die 400-500mA, was ja>erst mal kein Fehler ist. Nach kurzer Zeit aber, bricht der>Stromverbrauch ein, so als würde etwas diesen begrenzen. Kurzzeitig>steigt er wieder an, um anschließend wieder wie beschrieben>einzubrechen. Das ganze geht dann solange bis der Chip irgendwann den>Geist aufgibt.
Klingt nach einer Übertremperaturabschaltung des ICs.
>erst ab einer Versorgungsspannung von ca. 28V.
Dann bleib dich bei 24V.
C10 und C13 sind etwa knapp, dort nimmt man besser 22nF.
Lass mal C14/R1 weg, die brauchst du nicht und die machen nur Stress.
0,5A mittlern Ausgangsstrom sollte auch der L6202 schaffen,
wahrscheinlich fehlt es aber an Kühlung an den GND-Pins. Die sollten
nämlich an große Kupferflächen angeschlossen werden.
https://www.mikrocontroller.net/articles/K%C3%BChlk%C3%B6rper#Die_Platine_als_K.C3.BChlk.C3.B6rper
Wenn das nicht reicht, muss man den L6203 nehmen, den kann man direkt an
einen großen Kühlkörper schrauben.
Miss mal die Ausganhssignale direkt am Treiberausgang. Und mach die Test
mit den Lastwiderständen.
Hallo Falk,
danke für die schnelle Rückmeldung.
Falk B. schrieb:>>Tabelle habe ich angepasst, auf 320 Felder erweitert>> Hast du auch die Amplitude auf 10-90% vermindert?
Zum aktuellen Stand noch nicht, werde ich aber noch übernehmen.
Falk B. schrieb:>>die Schaltung übernommen und die Versorgungsspannung auf 34V erhöht ->>> Warum? Ich sprach von 24V.
Korrigier mich bitte wenn ich total falsch liege, aber bei 24V erhalte
ich am Ausgang lediglich eine Wechselspannung von +12V/-12V. Daher bin
ich momentan auf die 34V hoch.
Falk B. schrieb:> Klingt nach einer Übertremperaturabschaltung des ICs.
Das klingt logisch, das Bauteil wird extrem heiß bei Betrieb der Last.
Falk B. schrieb:> 0,5A mittlern Ausgangsstrom sollte auch der L6202 schaffen,> wahrscheinlich fehlt es aber an Kühlung an den GND-Pins. Die sollten> nämlich an große Kupferflächen angeschlossen werden.
Die fehlen momentan definitiv, da ich aktuell keine andere Möglichkeit
habe als die Schaltung fliegend zu verdrahten. Ich werde das im finalen
Layout berücksichtigen und eventuell bis dahin mit dem L6203 und
angeschraubten Kühlkörper arbeiten.
Falk B. schrieb:> C10 und C13 sind etwa knapp, dort nimmt man besser 22nF.>> Lass mal C14/R1 weg, die brauchst du nicht und die machen nur Stress.Falk B. schrieb:> Miss mal die Ausganhssignale direkt am Treiberausgang. Und mach die Test> mit den Lastwiderständen.
Werde ich nun direkt übernehmen und anschließend nochmal überprüfen.
@ tobb (Gast)
>> Warum? Ich sprach von 24V.>Korrigier mich bitte wenn ich total falsch liege, aber bei 24V erhalte>ich am Ausgang lediglich eine Wechselspannung von +12V/-12V.
Nö, +/-24V, denn du hast eine H-Brücke. Wenn Ausgang 1 auf 24V ist und
Ausgang 2 auf 0V sind das +24V.
Umgekehrt -24V.
Abzüglich des Spannungsabfalls über dem Treiber, das sind beim L6202
aber weniger als 1V bei 0,5A.
>Das klingt logisch, das Bauteil wird extrem heiß bei Betrieb der Last.
Dann sollte man sich langsam steigern. Und messen wie die Signale
aussehen.
Hallo,
die Problematik ist tatsächlich auf die Übertemperaturabschaltung zurück
zu führen. Ich konnte auf dem Prototypen nun die GND-Kupferfläche
aufkratzen und habe die GND Pins dort direkt angelötet, das Problem ist
damit beseitigt.
Mit 24V Versorgungsspannung kam ich dann auf einen Effektivwert von ca.
17V. Also alles bestens. Mit den entsprechenden Ausgangssignalen bin ich
soweit auch zufrieden, die gemessenen Signale werde ich hier beim
finalen Produkt noch veröffentlichen.
Vielleicht könnt ihr mir bei folgender Problematik noch weiter helfen:
Die Versorgungsspannung soll im finalen Produkt über einen Step-Up
Converter erfolgen. Hierbei werden die 5V zu 24V hochgeregelt. Verwendet
habe ich dafür den NJR4132U2-B Step-Up Converter -> siehe Schaltplan.
Nach ersten Tests funktioniert das ganze im Leerlauf auch so wie
gewünscht. Allerdings bricht mir die Versorgungsspannung auf ca. 6V ein,
sobald ich die H-Brücke enable.
Könnt ihr euch vorstellen woran das liegen könnte? Habt ihr mir einen
Ratschlag?
Du solltest schon die Komponenten allein testen. Sprich, Die H-Brücke
abklemmen und einfache Lastwiderstände dran. Dann siehst du was Sache
ist. Ich tippe auf Überlast am Step Up ;-)
Falk B. schrieb:> Du solltest schon die Komponenten allein testen. Sprich, Die H-Brücke> abklemmen und einfache Lastwiderstände dran. Dann siehst du was Sache> ist. Ich tippe auf Überlast am Step Up ;-)
Die Komponenten an sich scheinen zu funktionieren, nur in Verbindung
miteinander nicht. Was könnte ich bei einer Überlast vornehmen um das
Problem zu beseitigen?
> Hierbei werden die 5V zu 24V hochgeregelt.
Lach mich tod. Das wird doch nie und nimmer gehen! Guck dir die
Energiebilanz an:
Pzu = eta * Pab mit vorerst eta = 1
5V*5A = 25V*1A plus noch Wirkungsgrad, hier wurde etwas gerundet
Klingelt da was?
Wirklich sinnvoll erscheint der Step Up nicht. Es ist deutlich besser,
direkt 24V einzuspeisen und die sehr geringe Leistung für den 5V Teil
mit einem kleinen Step Down abzuzweigen.
aSma>> schrieb:> Lach mich tod. Das wird doch nie und nimmer gehen! Guck dir die> Energiebilanz an:>> Pzu = eta * Pab mit vorerst eta = 1> 5V*5A = 25V*1A plus noch Wirkungsgrad, hier wurde etwas gerundet>> Klingelt da was?
Jap danke ;) bringt mich nur leider nicht weiter.
Falk B. schrieb:> Wirklich sinnvoll erscheint der Step Up nicht. Es ist deutlich besser,> direkt 24V einzuspeisen und die sehr geringe Leistung für den 5V Teil> mit einem kleinen Step Down abzuzweigen.
Das wäre definitiv sinnvoller, das stimmt.
Allerdings wollte ich die Möglichkeit bereit stellen, das ganze über
einen LiPo-Akku zu betrieben. Sprich: Akku-Spannung hochgewandelt zu 5V,
diese dann zu den benötigten 24V Versorgungsspannung der H-Brücke.
Aber das scheint wohl wirklich nichts zu werden.
Gibt es andere Möglichkeiten um die Spannung hochzuwandeln?
> Jap danke ;) bringt mich nur leider nicht weiter.
Dann erweitere mal deinen Horizont. Wobei ich gerade sehe, dass ich eta
auf die falsche Seite gesetzt habe. Nichtsdestotrotz 5A packt so ein
Regler nicht.
> Gibt es andere Möglichkeiten um die Spannung hochzuwandeln?
Das ist der falsche Weg.
Nimm einfach 2x12V Bleiakkus. Diese gibt es sehr günstig.
aSma>> schrieb:> Dann erweitere mal deinen Horizont. Wobei ich gerade sehe, dass ich eta> auf die falsche Seite gesetzt habe. Nichtsdestotrotz 5A packt so ein> Regler nicht.
Deshalb meine vielen Fragen, ich bin dankbar für jeden Hinweis. Könntest
du mir im Detail erklären, wie du auf die 5A kommst?
So wie ich das verstanden habe (siehe Anhang):
Nach dem Öffnen des Schalters will die Spule den in ihr eingeprägten
Strom weitertreiben. Da der Stromweg nach GND unterbrochen wurde, muss
der Strom einen anderen Weg finden. Die Spannung an dem mit der Diode D1
verbundenen Ende der Spule steigt schnell an. Sobald die Spannung VOUT
des Kondensators C2 überschritten wird beginnt der Strom über die Diode
D1 in den Kondensator C2 zu fließen.
Berechne ich den Boost-Converter dann über entsprechendes Online-Tool:
https://learn.adafruit.com/diy-boost-calc/the-calculator
Komme ich bei meinen Werten auf ca. 5.45A welche die Spule aushalten
können muss. Liege ich also richtig, dass der interne Power MOSFET
ebenso die 5A aushalten sollte?
aSma>> schrieb:> Nimm einfach 2x12V Bleiakkus. Diese gibt es sehr günstig.
Wäre auf jeden Fall eine Möglichkeit. Leider sind diese aber relativ
groß und ich hätte das ganze Produkt gerne sehr kompakt gehalten.
> Könntest du mir im Detail erklären, wie du auf die 5A kommst?
Ich habe irgendetwas angenommen. Du hast ja uns nicht Daten der
Induktiven Last veraten oder ich habe es überlesen. Ein Stichwort habe
ich dir auch schon gegeben. Ne, ich habe es dir sogar vorgerechnet.
> Komme ich bei meinen Werten auf ca. 5.45A welche die Spule aushalten> können muss. Liege ich also richtig, dass der interne Power MOSFET> ebenso die 5A aushalten sollte?
Welche 5V Batterie soll das sein, die das Aushält, jedenfalls länger wie
10sec? Man versucht solche hohen Ströme zu meiden, da die
Verlustleistung stark ansteigt.
Google mal nach Amperestunde.
Man könnte eine 12V 5AH Roller Batterie als Zwischending nehmen. Dann
braucht man aber 2 Spannungswandler.
Muss die Ausgangspannung des Treibers geregelt sein? Was hast du genau
vor?
aSma>> schrieb:> Ich habe irgendetwas angenommen. Du hast ja uns nicht Daten der> Induktiven Last veraten oder ich habe es überlesen.
Leider fehlen mir selbst die notwendigen Daten. Alle Daten die ich
bisher dazu sammeln konnte sind die Notwendigkeit an geregelter Spannung
mit einem Effektivwert von 17V, sowie einem Stromverbrauch von ca.
450mA.
Es handelt sich um ein firmeninternes Azubi-Projekt, welches eben seit
Jahren mit genau dieser induktiven Last umgesetzt wurde. Leider ist das
Teil vergossen und nicht zugänglich, außerdem fehlen dazu alle
notwendigen Dokumente. Ich versuche aktuell ähnliche Geräte zu finden
und diese gegebenenfalls einzusetzen.
aSma>> schrieb:> Welche 5V Batterie soll das sein, die das Aushält, jedenfalls länger wie> 10sec? Man versucht solche hohen Ströme zu meiden, da die> Verlustleistung stark ansteigt.
Die Thematik mit der Verlustleistung macht mir ebenso Sorgen.
Eventuell ein 3000 / 10000mAh LiPo-Akku mit entsprechender
Entladecharakteristik.
Beispielsweiße: http://shop.lipopower.de/10000-mAh-37V-Einzelzelle-10C
tobb schrieb:> Es handelt sich um ein firmeninternes Azubi-Projekt, welches eben seit> Jahren mit genau dieser induktiven Last umgesetzt wurde. Leider ist das> Teil vergossen und nicht zugänglich, außerdem fehlen dazu alle> notwendigen Dokumente. Ich versuche aktuell ähnliche Geräte zu finden> und diese gegebenenfalls einzusetzen.
Ein Multimeter hast du nicht zu Hand? Was für eine Armut :)
Suche nach einen passenden Akku für den Treiber 24-19V (was du halt
brauchst) und plus 5V step down für die Elektronik. Bei Nachlassen der
Kapazität sinkt die Spannung der Akkus. Jetzt weiß ich nicht, ob die
Ausgangspannung der Treiber geregelt werden müsste. Sonst könnte man
einen step-up-down Regler nehmen.
mfg
Hallo Tobb,
ich wollt dich fragen ob es eventuell möglich wäre das du mir dein
Programm für die SPWM zukommen lässt.(falls du es noch hast)
Ich mache momentan ein ähnliches Projekt aber bekomme es irgendwie nicht
auf die Reihe.
LG