Hallo zusammen,
ich hab eine regelungstechnische Frage. Ich hatte zwar Regelungstechnik
in der Vorlesung aber die Praxis ist dann doch nochmal was anderes, vor
allem wenn man es so lange nicht braucht :-)
Ich programmiere übrigens in LabView.
Mein Problem ist folgendes:
Ich möchte einen Aufbau (Metallisch, erhitzt durch einen Strom) auf eine
variable Temperatur regeln. Die Temperatur wird über einen Strom von
einem Ringkerntrafo eingestellt. Der Ringkerntrafo wird über 2 Schütze
(Links- und Rechtslauf, bei ca. 15-800 A bis auf ca. 10 A genau)
angesteuert.
Die Stromregelung ist ja nichts anderes als ein Zweipunktregler wenn ich
mich nicht irre. Ich kann ihn hoch- und runterfahren und mit Hilfe einer
großzügigen Hysterese auf einen Wert regeln. Das regeln auf einen
Stromwert bekomme ich problemlos hin.
Nun ist die Frage, wie komme ich an meinen Soll-Strom für meine
Soll-Temperatur mit anständigem Führungsverhalten mit recht guter
Ausregelzeit? Dafür hatte ich mir überlegt, einen PID-Regler davor zu
schalten, der mir meinen Soll-Strom ausgibt? Sprich am Anfang wird der
Strom sehr hoch sein und später natürlich recht klein um den
Temperatursprung von 20°C Raumtemperatur auf ca. 120°C zu bewältigen.
Kann ich hierbei den Soll-Strom begrenzen? Macht das Probleme? Der PID
Regler wird mir anfangs vermutlich einen Strom ausgeben, der über dem
maximal Zulässigem Strom für die Anlage liegt. Sprich wenn der Sollstrom
>500A ist, dann I_soll=500A. Geht sowas? Mir ist bewusst, dass die
Anlage dann länger zum Ausregeln braucht.
Ich habe dafür meine "Sprungantwort" aufgenommen, sofern dies möglich
ist, da der Ringkerntrago Stromlos geschaltet wird und dann mit 5-6 s
Verzögerung auf seinen Sollstrom kommt. Da meine Anlage sehr träge ist,
komme ich auf eine Zeit bis zur Ausregelung von ca. 30 min. Diese Kurve
habe ich genommen und mal beide gängigen Verfahren (Ziegler und CHR)
angewandt.
Ist meine Regelung halbwegs praktikabel oder totaler Murks?
Könnte jemand, der sich etwas besser mit der Regelungstechnik auskennt,
mal einen Senf dazugeben? Das wäre Super :)
Abgesehen davon, dass du mit dem Zweipunktregler dafür sorgst, dass der Stellmotor ständig läuft, sollte es prinzipiell gehen. Du wirst einen Dreipunktregler brauchen. Und die Zeitkonstanten müssen stimmen, damit das System nicht schwingt. Die Dimensionierung des PID bestimmt, wie dein Einschwing- und Regelverhalten ist. Wenn der PID-Regler mehr Sollwert ausgibt als der Trafo macht, ist das System halt am Anschlag, entweder von Natur aus oder du musst es künstlich begrenzen. Simulieren ist sinnvoll. Wenn du aber Nichtlinearitäten im System hast, wird es aufwändig. Sowohl sie zu bestimmen, als auch sie korrekt zu simulieren.
Uwe Beis schrieb: > Abgesehen davon, dass du mit dem Zweipunktregler dafür sorgst, dass der > Stellmotor ständig läuft kann man durch Hysterese verhindern. Ein Glück das in meiner Dipl.Arbeit Thyrotakte zum Einsatz kamen, so konnte ich den PID Teil rauswerfen und trotzdem arbeitete der 2-Punktregler in engen Grenzen. Duch fette Zeitkonstanten des Ofens 40kW schaltete der auch nicht so oft.
Joachim B. schrieb: > kann man durch Hysterese verhindern. Genau dann ist es ein 3-Punktregler. Hauptsache es gibt einen Aus-Zustand. https://de.wikipedia.org/wiki/Dreipunktregler Die Fotos deuten an, dass wir ungefähr gleichzeitig Diplom gemacht haben...
:
Bearbeitet durch User
Hallo, danke für eure Antworten. Also der Motor schwingt nicht, da man pro Lamelle des Ringkerntrafo ca. 5A ändert. Durch eine Hysterese von ca. 8A schwingt zum Glück nichts. Da durch den Strom ja eine Temperatur erreicht werden soll, geht's hier auch nicht um 1 A :-) Ich habe das System soweit am laufen. Das einzige wo ich mir unsicher bin, sind die Regelparameter. Die Verfahren, die man in der Uni kennengelernt hat, kann man nicht anwenden oder ich bin mittlerweile einfach nur zu dumm :D Bisher habe ich folgendes gemacht: Bei einer PT1 Strecke entspricht der Zeitwert, bei dem die Sprungantwort 63% erreicht hat, dem T_1. Zum K_p: Ich bin dabei recht unsicher wegen dem Strom/Temperatur-gewirr- aber alles andere ist unlogisch: Ich habe einen Sollstrom von 400A drauf gegeben, diese erreich ich nach 4-5s (wenn der Motor dort angekommen ist). Da nun Sollstrom=Iststrom ist, müsste das K_p=1 sein? Dass ich mit einem Strom von 400 A eine Temperatur von ca. 155°C erreicht, ist doch unwesentlich? Oder habe ich die falsche Sprungantwort aufgenommen? Denn meine Parameter, K_p=1 und T_1=(ungefähr)13 min, sorgen für einen sehr trägen Regler der nach ca. 30/40min ausregelt. Vielleicht liegt aber das Problem auch an LabView und der nicht gemachten Umrechnung. Ich bin ja mit K_p und T_1 von einer Regelung mit einem PI ausgegangen. Kann ich einen PID dafür nehmen und eifnach den D-Anteil 0 setzten? Oder muss ich da was hin und her rechnen? Ich kann mich leise an etwas erinnern, dass man irgendwo sowas machen musste...!? Hat jemand eine Idee? Ich habe mal meine Sprungantwort angehangen. Vielen Dank, Tobias
Tobias schrieb: > Metallisch, erhitzt durch einen Strom Tobias schrieb: > Durch eine Hysterese von ca. 8A schwingt zum Glück nichts. dein Bild (mir fehlt irgendwie die Beschriftung der X-Achse) und so ein Metall....??? sieht ja ähnlich träge aus wie "mein" Ofen, allerdings ist dein Stellmotor ne Ecke lahmer. Tobias schrieb: > Kann ich einen PID dafür nehmen und eifnach den > D-Anteil 0 setzten? den D Anteil? wenn dein Antrieb lahm ist und die Metallzeitkonstanten groß würde ich am D-Teil eher optimieren als zu 0 machen. Den I Teil kannst du im Prinzip vergessen, der diente doch nur Schwingneigung zu bedämpfen. Wobei es fraglich bleibt ohne Zeitwerte ob du mit D was reissen kannst.
Sorry, Auf der Abzisse ist die Zeit aufgetragen. Auf der Ordinate ist die Temperatur eines 150 mm^2 Aluleiters. Regeln soll der PID einen Strom, siehe mein Bockschaltbild im Startpost. Die Sprungantwort des Stromes ist für mich nichts-Aussagend. Der ist sofort da, 5-6 Sekunden braucht der Motor zum Vollausschlag und dann macht der seine 600/700 A. Und wenn der Strom sofort (bei meiner Aufzeichnung 400A) anliegt, dann bekomm ich eine so träge Kurve. Die Kurve verläuft natürlich steiler, wenn ich mehr Strom drauf gebe. Aber das Verhalten ist doch das eines PT1? Und einen PT1 regelt man doch mit einem PI?? Wichtig ist, dass die Regelung stationär genau ist. Erreiche ich das mit einem PD? Gruß Tobias
Tobias schrieb: > Sorry, > Auf der Abzisse ist die Zeit aufgetragen. ach was, echt? hätte ich kaum raten können, nur welche Maßeinheit verschweigst du immer noch, as (atto sekunden), kJahre? meinst nicht das das eine Rolle spielt? aber du bist bestimmt noch nicht so alt das du die Sprungantwort in kJahre kennst :-) Tobias schrieb: > Die Sprungantwort des Stromes wen interssiert die? dich interessiert die Sprungantwort der Temperatur dachte ich Tobias schrieb: > variable Temperatur regeln
:
Bearbeitet durch User
Joachim B. schrieb: > den D Anteil? wenn dein Antrieb lahm ist und die Metallzeitkonstanten > groß würde ich am D-Teil eher optimieren als zu 0 machen. > > Den I Teil kannst du im Prinzip vergessen, der diente doch nur > Schwingneigung zu bedämpfen. Unsinn Unsinn Unsinn D-Anteil zu 0 setzen ist schonmal ne gute Idee. Zusätzlich den Ausgang vom Regler und den Integrator vom I-Anteil begrenzen auf den maximal zulässigen Strom.
Claus M. schrieb: >> Den I Teil kannst du im Prinzip vergessen, der diente doch nur >> Schwingneigung zu bedämpfen. > > Unsinn Unsinn Unsinn geil, man möge mir verzeihen, habe seit 31 Jahren nix mehr damit zu tun. Statt deiner 3x Unsinn eine kurze Erklärung wäre nett gewesen, aber egal ich lese mich noch mal ein. http://www.physik.uni-augsburg.de/~sausemar/FP14/FP14.pdf Also der I-Anteil wird ihm beim stufigen Stelltrafo kaum helfen, eine Regelabweichung bleibt über die Stufen.
:
Bearbeitet durch User
Die Zeit ist in Sekunden. Aber die sollte nicht stören. Ob man in Sekunden oder Minuten oder Stunden rechnet. Das sollte egal sein. Die Größe beim Rechnen ergibt auch so die Größe beim Ergebnis... Ja, mich interessiert die Sprungantwort der Temperatur, nur dadurch, dass meine Reglerauslegung nicht wie gewünscht funktioniert, bin ich ganz schön verwirrt. Wenn ich meine Werte in Boris Winfact simuliere, dann regelt er gut und schnell aus wie gewünscht. Aber in der Realität, sieht das leider ganz anders aus. Da ich das Programm auf einem nicht Internetfähigem Rechner habe, und mir das hin und her mit dem USB Stick auf die nerven geht, hab ich mal eine Skizze angehangen. Der Vergleich zwischen realem Verlauf von Strom und Temperatur sowie dem theoretisch erwünschten bzw. mit Boris simulierten Verlauf in pink und hellgrün. Der Ausgang ist begrenzt auf meinen Maximal zulässigen Strom, funktioniert auch super. Und die Regelabweichung durch meinen Ringkerntrafo macht gar keine Probleme. 1. Schwingt er nicht und 2. wäre ein Schwingen bei einem so trägen Aufbau nicht spürbar. Weiterhin ist die Regelabweichung von maximal 5A bei einer Größenordnung von 500 A auch nicht spürbar. Theoretisch sollte ja der Strom sofort gegen seinen Maximalwert gehen, um am Anfang möglichst schnell aufzuheizen. Mit zunehmender Temperatur sollte er dann langsam Abflachen und gegen seinen Endwert streben, genau wie die Temperatur. So die Theorie und das Ergebnis in Boris (pink und hellgrün). Bei der realen Anlage ist es jedoch leider nicht so. Der Regler regelt sehr sehr langsam hoch, viel langsamer als er könnte. Er regelt nach ca. 2min auf seinen Maximalen Wert, schonmal 2 Minuten, die man einsparen könnte. (Das hat nichts! mit der Stromregelung und den Stufen zu tun! Ich lasse mir den Sollstrom anzeigen und dieser geht einfach sehr langsam hoch.. Wenn der Regler am Anfang direkt einen Sollstrom von 500 A vorgeben würde, dann wäre der Stelltrafo innerhalb von 5/6 Sekunden dort und würde den Strom liefern) Nachdem er dann auf seinem Maximum ist, geht der Strom, für mein Verständnis viel zu früh auf seinen Endwert. Ca. nach 10 min bleibt er auf einem Wert +-5 A, obwohl die Temperatur erst bei 80°C von gewünschten 120 °C ist. Mit dem Strom den er hat, erreicht er die 120 °C zwar, nur ist die Zeit sehr hoch. Würde er nicht nach 10 min, sondern langsamer (vllt 15/20min) lansam runter gehen, dann wäre die Regelung schneller. Wäre jemand so gut und würde meine Reglerparameter überprüfen? Anhand meiner Sprungantwort habe ich ja, wie bereits geschrieben, ein K_p von 1 und T_1 von 12/13 Minuten. Wenn ich nun an dem PID den D-Anteil auf 0 setze, hab ich ja einen PI-Regler? Und ein PI-Regler braucht nur K und T. Habe grade nochmal neu mit einem anderen Ansatz gerechnet, der aber auch falsch ist. Offener Regelkreis: 1=Regler*Strecke 1=Kpi*(Tn*s+1)/(Tn*s)*Kp/(T1*s+1) Tn=T1 -> Kürzen, es bleibt 1=kp*kpi/Tn*s kp=1 Tn=T1= ca. 13min 1=1*kpi/(13min*s) nach Laplace ist 1/s=1. Bleibt das Problem mit der Einheit.. K muss Einheitenlos sein. Irgendwas ist total Falsch. Jeder der ein wenig Ahnung von der Regelungstechnik hat, lacht mich wahrscheinlich aus. Symmetrisches Optimum, Ziegler, Zeit-Prozent und den ganzen Kram bekomm ich sogar noch hin aber irgendwie steckt hier der Wurm drin...
Einige Ansätze: a.) Das Zeitverhalten der Stromregelung (I-soll, I-ist) ist in Relation zum Gesamtsystem relativ uninteressant, da deutlich schneller. Wenn Du da etwas funktionierendes hast, wunderbar, lass es so. b.) Heizen tut nicht der Strom, sondern die Leistung. Und die ist quadratisch vom Strom abhängig: P = R * I² Ein PID-Regler ist aber für lineare Systeme gedacht, und nicht für quadratische. So lange Du Reglerparameter für einen Arbeitspunkt optimierst, kann man die Strecke in diesem Arbeitspunkt als linear betrachten. Du willst aber verschiedene Arbeitspunkte anfahren. Daher solltest Du die Strecke (halbwegs) linearisieren. D.h. der PID-Regler hat als Ausgang eine Soll-Leistung als Stellwert. Daraus errechnest Du den Soll-Strom: I = Wurzel(P) c.) Die Sprungantwort bei 100% Heizleistung ist alles nur kein PT1. Auch hier hast Du große Nichtlinearitäten. Mach mal ein Sprungantwort bei 50% Heizleistung (=71% Strom) und bei 25% Heizleistung (=50% Strom). Aus diesen Sprungantworten berechnest Du nach einem Verfahren Deiner Wahl die Initial-Reglerparameter. d.) Du musst Dir vorher im klaren sein, was Du willst: Schnelles anfahren der Solltemperatur oder präzises halten der Solltemperatur, oder beides. Wie immer im Leben: Je mehr man will, desto größer der Aufwand: Z.b. ein Parametersatz um möglichst schnell in die Nähe des Sollwertes zu kommen, und einem um möglichst genau zu halten. Mit einer Hysteresefunktion (Fenster) zwischen den beiden Sätzen umschalten. Auch wichtig: Wieviel Überschwinger kannst Du erlauben? Man kann so ein Regler beliebig "schlau" machen, aber ein einfacher PID-Regler hat seine Grenzen. Es muss grundsätzlich geklärt sein, was "möglichst gut" für die Regelungsaufgabe bedeutet. Die Rahmenbedingung müssen abgesteckt sein. Nur dann ist eine Optimierung überhaupt machbar. Wenn das nicht geklärt ist, ist eine Diskussion über eine 2-Minuten-Einsparung bei einer knappen Stunde müßig.
Hallo, wow, Danke für diese Antwort. a) Genau das war mein Plan :-) b) Ich werde es mal versuchen, mal gucken was passiert. Danke für den Hinweis, mit dem quadratischen Verhalten. Als nicht-regelungstechniker, habe ich da gar nicht dran gedacht. Für mich war nur klar, dass der Strom in Abhängigkeit der Temperatur geregelt werden muss. c) Wieso ist das kein PT1-Verhalten? Wenn ich mir die Kurve angucke, dann sieht sie genau so aus, wie die eines PT1 aus meiner Formelsammlung :-) Zufälligerweise habe ich schon mehrere Sprungantworten aufgenommen. Bei 500A komme ich auf 155°C, 400A 108°C, 250A 57°C, natürlich sehr wage Aussagen, da es auch von der Umgebungstemperatur abhängig ist. Aber dennoch astrein quadratisch! Danke nochmal für den Hinweis :-) Ich hatte schon vorher bei allen per 63% mein T1 (Annahme PT1) bestimmt. Alle liegen +-1/2 Minuten im ähnlichen Bereich. Und hierbei weiß ich immer noch nicht, wie ich mein K bestimme. Das einzige was ich durch googlen finde ist mit Ersatzparametern, wo ich leider in den Skripten der Profs keine nähere Erläuterung zu finde, ohne die kann ich mir solche irgendwie nicht bestimmen... Nur welches Verfahren nehme ich, wenn ich nicht einmal weiß, welche Strecke ich habe? Soll ich das ganze als PT2 approximieren und dann per Zeitkennwert oder Wendetangente bestimmen? Wenn ich das ganze approximiere, dann wird es doch auch wieder sehr ungenau? d) Ein Überschwinger von 2%, lieber 1% wäre verkraftbar. Da es hierbei darum geht, ein stabiles Temperaturgleichgewicht zu erstellen und zu halten. Da ich in LabView programmiere, hab ich, zumindest von verfügbaren VIs her, nur einen PID zur Verfügung. Meinst du jetzt, dass ich mir einen schnellen und einen langsamen Regler baue, und je nach Temperatur von den schnellen zum langsamen schalte? Möglichst gut ist natürlich wie so oft, schnell am Sollwert und ohne Schwingen :-) Klar ein wenig utopisch bei vielen Strecken. Aber wenn ich mir bei meinem Aufbau Temperatur und Sollstrom angucke, dann bin ich der Meinung, ich habe was falsch gemacht, weil er Strom 1) zu langsam hochregelt und 2) zu schnell wieder sinkt und dann auf seinem Wert verharrt. Schneller könnte er auf jeden fall sein. Da bin ich mir sicher. Danke nochmal für deine Hilfe aber ich muss sagen, außer der Hinweis mit Soll-Strom: I = Wurzel(P), hat mich alles noch mehr verwirrt und lässt mich zweifeln ob das was ich hier mache, richtig ist.. Gruß Tobias
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.