Hallo zusammen, Eine Frage an alle Regelungstechnikfreunde...! (Bei Regelungstechnikfeinde -> bitte wegklicken ;)) Ich versuche mal auf das kollektive Wissensportal hier zuzugreifen, in der Hoffnung vielleicht einen Tipp zu bekommen. es geht um den Reglerentwurf von Schaltnetzteilen. Wir entwickeln einen Leistungs-DCDC-Converter (Step-Down) für hohe Ausgangsströme. Der Wandler ist eigentlich in seiner ersten Version schon fertig, es geht jetzt nur noch um die Optimierung. Nun zur Problemstellung: Die Anforderungen bezüglich der Last sind sehr hoch. Der Wandler muss starke Lastsprünge ausregeln können, kleine Ströme sowie auch sehr sehr hohe Ströme liefern, und mit quasi jeder beliebigen Lastimpedanz "zurecht" kommen, d.h. ohmsch, kapazitiv und induktiv. "zurecht kommen" heißt, dass es nicht schwingen darf, und im Zweifelsfall bei Überlast eben Abschalten. Der Wandler wird im Current-Mode-Betrieb geregelt. Zur Spannungsregelung zunächst ein einfacher PI-Regler. Der Currentmode vereinfacht einem schonmal das Leben, weil dann meine Regelstrecke näherungsweise nur noch PT1-Verhalten hat. Doch das Problem ist, dass aus mechanischen Gründen wir unsere Ausgangskapazität vom Wandler sehr klein gewählt haben. Das macht mir sehr zu schaffen, weil dadurch bei starken Lastsprüngen keine Stützkapazität mehr da ist und der Regler quasi alles alleine machen muss. Weiterhin neigt die Regelschleife dadurch leicht zum Schwingen, wenn die Last sehr hoch ist und externe Induktivitäten dann mit der Ausgangskapazität einen Schwingkreis bilden. Folglich war ich gezwungen den P-Anteil vom Regler sehr klein zu wählen. Zusätzliche Totzeit- und PT1-glieder in der Regelstrecke "fressen" mir noch die Phase im oberen kHz-Bereich weg. Hab das alles schon als mathematisches Modell im Bodediagramm aufgestellt ... Ein Experiment, die Last über den I-Anteil zu regeln (d.h. schneller I-Regler), hat am Anafang gut funktioniert, aber nur solange ich keine große Kapazität angeschlossen hatte. Logisch, die Kapazität braucht auch ihre Zeit, bis sie geladen ist, andernfalls schwingt der Integrator wenn er zu schnell ist (hab ich dann auch über das Bode-Diagramm gesehen). und genau hier liegt die Zwickmühle... Der Wandler läuft zur Zeit sehr stabil, regelt im msec-Bereich aus, aber jeder fragt mich ob die Regelung noch schneller geht. gibt es hier einen Trick ? Wie machen es handelsübliche Schaltnetzteile ? Sind die z.b. nur auf eine maximal zulässige Kapazität ausgelegt ? Vielleicht weiß ja jemand von euch was... :) Habe bisher leider noch keine Application-note gefunden, wo genau dieses Problem behandelt wird. In meiner Literatur bekomm ich auch keine Infos darüber.
> Der Wandler muss starke Lastsprünge ausregeln können, > kleine Ströme sowie auch sehr sehr hohe Ströme liefern, Da ist natürlich ein Schaltregler sehr ungünstig. Er kann prinzipbedingt den Strom nur langsam ändern, weil ja die Spule die Stromänderung gerade verhindert. Nimmt man eine kleine Spule, ändert sich der Strom auch in jedem Impuls stark, also hat man starken Ripple. Macht man nun den Ausgangselko gross um den Stromripple wenigstens nicht in einen Spannungsripple umzuwandeln, dann sind Spannungsänderungen nur langsam durchzuführen. Und ist die Impulsdauer lang, ist nicht nur die geringst mögliche Reaktionszeit lang, sondern auch die Energie pro Impuls eher gross, es ist also schwer konstant niedrige Leistung zu übertragen. Ihr müsst erst mal ermitteln was euch wichtig ist. Wenn geringe leistung (1mA) auch in Form von kurzen Impulsen passiern darf (Dreieck von 0mA auf 10mA ansteigend, dann von 10mA auf 0mA fallend, dann 9 mal so lange Pause), dann ist es nicht so schlimm, aber schwer messbar. Meist fällt nämlich auch die Spannung in der Pause auf 0V. Hat man das was erlaubt wäre zusammengetragen (eierlegende Wollmilchsäue machen die Suche halt schwieriger, man kann sich auch selber ins Knie schiessen), dann wisst ihr, wie kurz ein Impuls sein darf, wie klein die Spule sein muß und wie klein der Elko sein kann. Da ihr schnelle Reaktion haben wollt, werdet ihr versuchen, Elko und Spule so klein wie möglich zu machen, allerdings steigt dadurch der Ripple. Hat man eine Auslegung, die der Schalt-MOSFET noch schafft, die von Spule und Elko getragen werden, dann kommt die Regelung. Neben der langsamen Art (man mittelt den einzustellenden Strom über mehrer Impulse) kann man per Sample&Hold genau den Mittelwert über einen Impuls bilden, den letzten Impuls, und den nächsten Impuls danach ausrechnen. Also: Lag der Mittelwert (Strom oder Spannung, was euch interessiert) im letzten Impuls über/unter dem Sollwert, muß der nächste Impuls kürzer/länger werden. War aber der letzte Impuls sowieso schon eine Korrektur damit die Spannung sinkt oder steigt und wäre nach dem nächsten Impuls keine Korrektur mehr notwendig, dann muß das eingerechnet werden. Kann man analog oder digital machen. Noch schneller mann man regeln, in dem man die abgezogene Energie aus dem Ausgangselko kontinuierlich misst, und das Ergebnis für den nächsten Impuls annimmt. Man bildet also ein Modell des Schaltreglers "wenn ich 1us einschalte übertrage ich (unter aktuellen Rahmenbedingungen wie Eingangsspannung und Ausgangsspannung) ? Joule" und sagt, "wenn während der Dauer des letzten (ladenden) Impulses die (entladende) Energiemenge soundso hoch war (x), dann pumpe ich DIEMAL (also im nächsten Impuls) genau x hinein. Dann schwankt zwar Spannung und Strom weil ich ja einen Impuls hinterherhinke, aber das versuche ich NICHT auszugleichen. Den Ripple, der sich innerhalb eines Impulses ergibt, den kann ein Schaltnetzteil sowieso nicht regeln. Ich bin mit der Methode immer so schnell, daß im nächsten Impuls alles korrigiert wird, was der letzte Impuls als Fehler hatte. Problem der Geschichte: Das geht nur für kleine Fehler, bei grossen braucht man mehrere Impulse um sie auszugleichen, der Regler muß also mit Sättigungseffekten klarkommen. Ganz allgemein hat man meist noch ein Problem wenn der Schaltregler vom kontinuierlichen i den diskontinuierlichen Betrieb geht und bei diskontinuierlichen auf Grund der niedrígen abgezogenen Leistung sogar Impulse ausgelassen werden müssen. Eine Mindestlast hilft, diesen Betriebsbereich zu umgehen.
Schau Dir vielleicht mal Class-D-Endstufen an. Das sind im Grunde nichts weiter als Schaltregler mit Synchrongleichrichtung, die +Vb nach -Vb und zurück mit 20kHz schaffen.
Bei Current Mode ist je nach d auch eine Slope Compensation erforderlich um SHOs zu unterdruecken. Auch die Nullstelle welche der ESR des Ausgangskondenstors bildet mitmodelieren byw beachten, eventuel hilft diese um die Phase zu heben. Wenn kerkos im Einsaty sind eher unwahrscheinlich. Was du brauchst ist zusaetzlicher Phasenboost, zb durch ein Lead Glied, also eine Zusaetzliche Nullstelle mit Polstelle. Gemeinsam mit dem PI Regler hat man dann zwei Nullstellen, wie bei einem PID auch, um die Phase bei hoeherer Frequenz zu heben und um dann mit der Verstaerkung raufzugehen um die Crossoverfrequenz zu erhoehen. Multiphasen Buckwandler bieten auch in Bezug auf Lastausregelung einen Vorteil. Erweitere deinen Regler um eine Nullstelle, Pol kommt sowieso hinzu... Was aber auch die schnellste Regelung nicht verhindern kann ist die limietierung der Stromsteilheit in der Drossel. Bei einem srunghaften Lastanstieg vergeht einfach zeit bis der Strom, auch bei noch so schnellem Regler, raufgerampt wird. In dieser Zeit wird der Ausgangskondensator leergesaugt mit entsprechendem Spannungseinbruch. Ein kleiner Induktivitaet erlaubt schnellere Stromanderungen, allerdings steigt dann klarerweise der Rippel, un man braucht vl wieder mehr C. Bei kleinem L geht der Wandler sehr bald ein den DICM, was wieder wie Strecke ändert. Um dann auch noch schnell zwischen Mode Transitionen zu schalten macht man den Regler adaptiv, in der Regel nur mehr Digital zu machen. Die erste Nullstelle wird wie gewohnt aus R2 und C1 gebildet, die zweite durch R1 und C3. Soetwas verwenden in der Regel Voltage Mode geregelte Wandler. Hysereseregler sind prinzipbedingt sehr schnell, und werden bei Hocjstrom Bucks oft verwendet. Stichwort: "Fast Hysteretic Control" MFG
Hallo... danke für eure Beiträge ! @Ben: jetzt weiß ich was ich mit unserem Wandler mache, wenn ich mal zuviel Zeit haben sollte. Am Reglereingang ein Audiosignal und am Leistungsausgang eine PA-Box ;) @MaWin: also bei uns ist beides klein, das C und das L auch. Spannungsrippel in Bezug zur Nennspannung nur etwa 3%. Da L klein, kann Strom sehr schnell ansteigen. Regelungstechnisch gut, für den Überlastschutz aber wiederum unschön, weil die Reaktionszeiten dann sehr schnell ausfallen müssen. Dazu hab ich mir aber schon was ausgedacht :) Deine Methode zur Regelung klingt beim Durchlesen zunächst verständlich. Die genaue Umsetzung ist mir aber (noch) nicht geläufig. Du meinst nicht zufällig die Hsyterese-Regelung ? (sorry, wenn ich jetzt total daneben lag ;)) @Fralla: Ja, das mit dem D-Anteil hab ich mir auch schon überlegt, hatte es in der Vergangenheit mal simuliert, werde es nochmal versuchen. Was mich immer beschäftigt ist dieses Plateau im Bodediagramm bei der Openloop. Wenn ich den I-Anteil gezwungenermaßen eher langsam einstelle, so wandert mir der Pol weg und es ensteht dann diese Stufe im Frequenzgang, siehe Handskizze im Anhang (Phasengang hab ich der Einfachheit weggelassen, kann man sich dazudenken). Ich überleg mir ständig, wie ichs schaffe diese Stufe oberhalb der 0dB-Linie zu bringen, aber ohne dass der Wandler dann schwingt und immernoch genug Phasenreserve hat. Vor allem wenn man dann so eine Resonanz noch drin hat. Was meint ihr ? Vielleicht wird jetzt mein Problem noch etwas verständlicher...
Ergänzung: Leerlauf bzw. ganz kleine Last sichern wir mit einem Burst-Betrieb ab. Paar pulse ein und paar Pulse aus, im Mittel die Sollspannung. Hysterese-Regelung bzw Zweipunktregelung finde ich bei uns nicht so gut, weil wir einen Leistungstrafo verwenden, und der sättigt ziemlich schnell bei zu langer Aussteuerung... Die regelungstechnischen Betrachtungen von mir beziehen sich nur auf den CCM-Modus. DCM wäre nochmal extra. Das als Anmerkung.
> Du meinst nicht zufällig die Hsyterese-Regelung
Nein.
Die führt zu belibigen frequenzen und ggf. immens hohem Strom in der
Spule.
Ich gehe bei Schaltreglern von fester Taktfrequenz aber variabler
Impulsbreite aus und hab nur 3 verschiedene Reglermethoden skizziert,
die mit immer mehr Aufwand zu immer schnellerer Regelung führen, weil
sich die letzte auf genau eine Impulsbreite beschränkt. Wenn du nur 3%
Ripple hast, kannst du natürlich nicht schneller als 33 Taktimpulse
regeln. Mehr als 20% Ripple musst du schon zulassen wenn es shcnell
gehen soll.
>Wenn du nur 3% Ripple hast, kannst du natürlich nicht schneller als 33 >Taktimpulse regeln. Mehr als 20% Ripple musst du schon zulassen Ich denke nicht, dass er nur 3% in der Drossel hat. >Spannungsrippel in Bezug zur Nennspannung nur etwa 3%. > aber ohne dass der Wandler dann schwingt und immernoch genug >Phasenreserve hat. Diess peaken bei Induktiver lasst zeiht die Phase natürlich sehr schnell runter. Bei soetwas hilft eben eine weitere Nullstelle (oder in PID Berachtungsweise ein D-Anteil). Aber auch achten dass die Polstellen (welche ja immer Zwingen dazukommen) nicht unnötig weit weg(hoch) sind (sonst fängt man Noise von wo auch immer ein). (Deshalb hab ich in dem OP-Ampo regler auch C2 und R3 eingezeichtnet). Aber auch Hysterese Regler in betracht ziehen, es gibt auch Methoden um den Strom zu kontrollieren und die f nicht ausufern zu lassen. Das könnte interessant sein: http://floridapec.engr.ucf.edu/publications/conferences/pesc/WeiguPESC%5B1%5D.pdf Synchroniation eines Hysetresegeregelten Buck mittels PLL ist im Anhang, zwar etwas andere Leistung, aber das Prinzip ist immer Anwendbar. Hystereseregelung ist nicht gleich hystereseregelung, da gibt es mehr Ausführungsformen als in der standard Dutycycleregelung. Ich habe mal einen DC/DC Wandler für Telekom/Funk Busse gebaut, eine klassische synchrone Multiphasenbuck Topologie. Da waren Anforderungen extreme Anforderungen (zig Ampere Pulslasten bis weit über 30kHz) dabei. Statt der klasischen Dutycycleregelung mit überlagerter Current Share Reglung kamm eine PLL synchronisierte Hystereseregelung zum Einsatz, wobei das Current Sharen dann alles andere als Trivial ist (deshalb das Sync). Aber in deinem Fall würde ich erst ernsthaft über einen D-Anteil nachdenken... MFG
MaWin schrieb: > Mehr als 20% Ripple musst du schon zulassen wenn es shcnell > gehen soll. Beim Stromrippel haben wir etwa 20%, da würde es gehen. Beim Spannungsrippel sind 20% für unsere Anwendung nicht zulässig. Außerdem kann wie gesagt die Ausgangskapazität quasi fast unendlich sein. Man soll in der Lage sein jeden x-beliebigen Verbaucher anzuschließen. Soll heißen, dass plötzlich mal ein 100mF-Elko dranhängen kann. Da würde ich von meinen 20% Spannungsrippel dann nicht mehr viel sehen. Aber gut mal was anderes gehört zu haben. ich werde es bei Gelegenheit versuchen zu verinnerlichen ;) Verschickt mich gerade etwas... Muss erst drüber nachdenken, was deine Methode bedeuten würde.... d.h. Umsetzung, Implementierung, Stabilitätsverhalten, Vor- und Nachteile.
Fralla schrieb: > Aber in deinem Fall würde ich erst ernsthaft über einen D-Anteil > nachdenken... Schon dabei, aber für heute mach ich Schluss :) Auch dir Danke für deinen Anhang bzw Link. interessant.
Man das Ganze verschnellern, indem man den Wandler als Polyphasen Endstufe auslegt, zB mit 4 Phasen, dann kann man 4 mal schneller regeln.
Hallo nochmal, habe zwischenzeitlich gemessen und neue berechnungen gemacht. wollte erstmal überprüfen inwieweit mein mathematisches modell mit dem praktischen verhalten übereinstimmt. verblüffend gut. wenn ich z.b. den P-Anteil immer schneller einstelle, so schwingt der wandler auch genau bei der konfiguration, bei der die phasenreserve im modell ziemlich genau 0° hat :) siehe bild... wenn ich einen D-Anteil noch dazu mache, reicht es zwar für die Konfiguration aus dem Bild immernoch nicht, aber ich habe schon deutlich mehr Freiheitsgrad. Jetzt habe ich noch versucht, den I-Anteil (Integrator) bei hohen kapazitiven Lasten zum Schwingen zu bringen, aber ich kriegs nicht mehr hin. Wenn ich den I-Anteil verhältnismäßig schnell einstelle und gleichzeitig sehr große kapazitive Lasten habe mit geringem ESR, so war meine Überlegung, dass der Regler schwingen sollte, weil er versucht die große Kapazität (für den Regelkreis großes Tau) zu schnell zu laden und dann hinterher wieder dagegen regeln muss. Im Phasengang geht die Phase dabei bis auf fast -180°, aber eben nur fast, weil mit zwei Verzögerungsglieder (I-Glied + großes PT1) schafft man nur maximal -179,999°. vielleicht liegt da der Haken ? (siehe zweites Bild) Aber wir hatten einen Fall, wo der Wandler bei großem C definitiv geschwungen hat mit langsamer Frequenz, so um die 300Hz. Dann dachte ich, haja cool, muss ich den I-Anteil langsamer machen weil das Ausgangs-C zu groß ist. und siehe da, Schwingung war weg. Aber irgendwie scheint da noch was von der Theorie her nicht zu passen... Vielleicht antwortet ja hier noch jemand was ;) Danke schonmal!
Hallo stephan, könntest Du evtl. einen kurzen Schaltplanauszug zeigen? Bzw. kurz erklären, wie Du den Frequenzgang gemessen hast? Würde mich sehr interessieren. Vielen Dank! Viele Grüße, Michael
Ich denke bei der Reglerdimmensionierung weniger in Kp, Ki, Kd sonder eher in Pol und Nullstellen. (klar, kann man aber einfachst umrechnen). Ganz kann ich dein Problem nicht erfassen, aber vl hilft das (wenn du es nicht schon weist): Der Kondensator macht eine Nullstelle wn=1/(ESR*C), welche hilft die Phase anzuheben. Liegt diese Nullstelle vor der Crossoverfequenz so kann es sein, dass man ohne D-Anteil auskommt. Bei kleinem ESR liegt diese Nullstelle sehr hich, sodass sie nicht mehr Hilft. Hier muss mit einem D-Anteil nachgeholfen werden, wobei zu beachten ist, dass keine "conditional-stability" auftritt. Was bedeuted, dass der Amplitudengang die 0db unterschreitet dann wieder nach oben geht um die 0db linie dann bei der gewünschten Phasenreserve zu schneiden. Das kann Voltage Mode Buck leicht vorkommen, bei Current Mode weniger. Um die jetzt Konkret zu helfen brächte man mehr Informationen über den Wandler, Controller, Berechnung, Messung. Die Bilder, Mathcad? Ich nehm so ein Teil zum Messen: http://www.venable.biz/pr-3235.php, dammit kann man auch ohne Probleme mit einem DSP/FPGA Regler Open Loop messen. Und ganz einfach die Messungen in Matlab exportieren und dann fitting Funktionen anweden zur Streckencharakterisierung, das ganze mehrdimmensional (zb von Temp, Uin, Last abhängig). Erleichtert das Design adaptiver und nichtlinearer Regler ungemein. Der Meister Ridley bietet auch so ein Teil an: http://www.ridleyengineering.com/analyzer.htm MFG
Hallo, ihr habt es schon richtig erraten...es ist ein Mathcad Bodediagramm. Um die Frage von Michael K. gleich mit zu beantworten: nein, ich habe den Frequenzgang nicht direkt gemessen, sondern ich habe die reglerparameter so lange geändert, bis der Wandler geschwungen hat, und dann lediglich geschaut, ob das mit der Berechnung in Mathcad zusammenpasst, um quasi eine Abschätzung machen zu können, ob die Berechnung einigermasen zu stimmen scheint oder ob ich weit daneben liege... Ich habe das Regelungsmodell komplett zufuß in Mathcad gemacht, also jeden Funktionsblock als komplexe Übertragungsfunktion dargestellt und hinterher miteinander verrechnet. Bin selber noch recht neu in dem Thema, daher hab ich durch diese aufwendige Herangehensweise auch bereits einiges gelernt. In Zukunft werde ich sowas besser in z.b. matlab simulink machen, weil es ggf. einfacher von Hand geht. Schaltplanauszug kann ich leider nicht machen, da es sich hier um ein kommerzielles Projekt handelt und ich auch nicht weiß, wer hier alles mitliest. Das generelle Verhalten der Regelung von Wandlern ist aber meistens sehr ähnlich denke ich. Zumindest die Probleme, auf die ich hinaus will, sind eher genereller Natur. Ich versuch mal paar Eckdaten zu geben: Es ist ein Universal Buck Wandler für hohe Ausgangsströme (100A Nennstrom) mit Vollbrücke und Leistungstrafo. Schaltfrequenz im Bereich von 100kHz. Sekundärseitig mit aktiver Gleichrichtung. Die Glättungsdrossel beträgt um die 1uH, sehr klein. Glättungskondensator wie gesagt auch sehr klein, im Bereich von 150uF. Verbraucher sind insofern nicht spezifiziert, daher kann es vorkommen, dass der Ausgang rein ohmsch, kapazitiv, oder auch induktiv belastet wird. Es kann mal sein, dass plötzlich ein Riesen-100mF Elko dranhängt, im nächsten Fall gar keine Kapazität. Das ganze bei unterschiedlichen Strömen zwischen 1A und über 100A, auch wechselnd mit Lastsprünge. Die Regelung ist rein analog. d.h. Ausgangsspannungsregelung mit unterlagerter Stromregelung (Currentmode). Die Regelstrecke besteht aber noch aus einem weiteren PT2-Glied, aufgrund einer Isolationsstrecke, die dazwischen üebrwunden werden muss (Filterung etc.). Dadurch habe ich das Problem, dass die Phase im oberen kHz Bereich verhältnismäßig steil abfällt. Der Wandler ist eigentlich vom Konzept her schon fertig, fehlt noch die Feinheiten. Meine Frage von eben zuletzt war so, dass ich wissen wollte, ob ich aufgrund der unterschiedlichen Ausgangskapazitäten ich meinen Integrator vom Regler entsprechend auch lansgam einstellen muss, wenn ich von einem großen C als Worstcase ausgehe. Für den Fall dass dann kein C angeschlossen ist, entsteht aber diese Stufe im Freqeunzgang (siehe Mathcad Bild von vorher). Diese Stufe kann aber je nach Arbeitspunkt dazu führen, dass die 0dB-Linie zweimal durchtreten wird, so ähnlich wie Du (Fralla) es schon beschrieben hast. Bei den Parametern denke ich auch eher an Pol und Nullstellen in Form von Zeitkonstanten. 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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.