Hallo Zusammen! Ich habe eine Frage über langsam Regelungssystem: Ich habe hier ein Kühlaggregate, um die Temperatur durch einen PID-Regler in Simulink zu regeln. d.h. der Simulink-PID-Regler regelt das Kühlaggregate und dadurch kontrolliert die Flüssigkeitstemperatur. Durch die Flüssigkeit wird die Temperatur eines Zylinders kontrolliert. Die Eingangsgröße des PID-Reglers ist die Differenz zwischen idealer Zylinkdertemperatur und gemessenen Zylindertemperatur. Gleichzeitig ist die Reaktionszeit des Kühlaggregates ziemlich langsam. Das bedeutet, Es gibt immer etwas große Überversorgung bzw. Überheizung oder Überkühlung durch die Regelung. Folgend sind mein Lösungsversuch. Die Parameters durch die <Auto-tune> Funktion in Simulink ist nicht geeignet für die Regelung. Ich habe auch durch Ziegler-Nicols-Methode die Parameter ausgerechnet, aber der Regelungsprozess ist noch nicht gut(Es gibt große Überschwingung). Nach der gemessenen Daten habe ich gefunden, dass die große und viele Überschwingung die Regelungszeit stark verlangsamt. Deshalb habe ich den Parameter Kp vergrößert(bis Grenzwert), um die Regelungszeit zu beschleunigen und verkleinert den Parameter Ki auf einen sehr kleinen Wert(Aber das verlangsamt die Regelungszeit), dann gibt es nur einmal Überschwingung und die Regelungszeit ist totally ein bisschen besser. Aber über den Parameter Kd was soll ich machen? Ober habet ihr relative Erfahrungen über die Parameter, um die Regelungszeit zu verbessern? Vielen Dank! Shang
:
Bearbeitet durch User
Ich rate mal: Der Regler regelt zu schnell für das langsame Stellglied (Kühlaggregat). Miss mal, wie lange es dauert, bis sich nach dem Einschalten des Aggregates eine konstante Temperatur eingestellt hat.
Beitrag #5747239 wurde vom Autor gelöscht.
Kolja L. schrieb: > Ich rate mal: > > Der Regler regelt zu schnell für das langsame Stellglied (Kühlaggregat). > Miss mal, wie lange es dauert, bis sich nach dem Einschalten des > Aggregates eine konstante Temperatur eingestellt hat. Dank erstmal! Ich glaube auch! deshalb habe ich den Parameter Ki von 0.0918 auf 0.0295 eingestellt. und Es gibt nur einmal Überschwingung in der Regelung. Aber gleichzeitig verlangsamt die Regelung. Die Regelungszeit dauert abhängig von der unterschiedlichen Zylinderserwärmung. Bei größter Erwärmung dauert etwa 300-400 Sekunden bis die Temperatur auf idealen Wert erreicht. Leider ist Stabilität und Geschwindigkeit immer ein Konflikt in PID-Regler...
:
Bearbeitet durch User
Shang L. schrieb: > Das bedeutet, Es gibt immer etwas große Überversorgung bzw. Überheizung > oder Überkühlung durch die Regelung. Dann ist deine Verstärkung zu groß, dein System ist nicht linear oder du hast keinen PID-Regler.
Shang L. schrieb: > Die Regelungszeit dauert abhängig von der unterschiedlichen > Zylinderserwärmung. Bei größter Erwärmung dauert etwa 300-400 Sekunden > bis die Temperatur auf idealen Wert erreicht. Das ist die Sprungantwort, bzw deren Zeit. Schneller kann das System nicht reagieren. Zumindest nicht, wenn die Regelabweichung so groß ist. Aber wahrscheinlich muss es das ja auch gar nicht. Wie sieht dein System in Ganzen aus und was sind die Störgrößen? Ich rate wieder: Du willst bestimmte Temperaturen anfahren und konstant halten. Deine Störgröße ist nur der Kälteverlust zur Umgebung. Dann brauchst du eigentlich keine Regelung, sondern eine Steuerung. P.S. An welcher Uni bist du?
Kolja L. schrieb: > Ich rate wieder: > Du willst bestimmte Temperaturen anfahren und konstant halten. > Deine Störgröße ist nur der Kälteverlust zur Umgebung. > Dann brauchst du eigentlich keine Regelung, sondern eine Steuerung. Bitte was?
Hallo, Hast du dich mit Anti-Windup beschäftigt[1]? Deine Problembeschreibung hört sich nach Windup an. Durch die Anti-Windup Maßnahme kann der I-Anteil größer sein ohne das Schwingen auftritt. Zum Starten in das Thema: [2] Falls das Stellglied sehr langsam ist, kannst du dich mit dem Prinzip des Smith Predictor [3] beschäftigen. Viel Erfolg Heinz [1] https://en.wikipedia.org/wiki/PID_controller#Integral_windup [2] https://stackoverflow.com/questions/18654853/simulink-pid-controller-difference-between-back-calculation-and-clamping-for [3] https://en.wikipedia.org/wiki/Smith_predictor
> Wie sieht dein System in Ganzen aus und was sind die Störgrößen? > P.S. An welcher Uni bist du? Hallo! Der Zylinder wird von einem Heizer mit unterschiedlicher Erwärmungsleistung aufgeheizt. Aber die Temperatur des Zylinders muss durch die Kühlung der Flüssigkeit immer konstant halten. Ich glaube, die Störgröße ist die gemessene Temperatur aus Sensor. Ich bin am KIT.
Heinz schrieb: > Hallo, > > Hast du dich mit Anti-Windup beschäftigt[1]? Deine Problembeschreibung > hört sich nach Windup an. Durch die Anti-Windup Maßnahme kann der > I-Anteil größer sein ohne das Schwingen auftritt. > Zum Starten in das Thema: [2] > Falls das Stellglied sehr langsam ist, kannst du dich mit dem Prinzip > des Smith Predictor [3] beschäftigen. > Viel Erfolg > Heinz Danke Schön! Ich habe Anti-Windup eingesetzt, aber ich habe nur mit back calculation durchgeführt, nächstmal versuche ich mit clamping. Jetzt habe ich den I-Parameter sehr klein eingestellt. Die gesamte Regelungszeit wird verkürzt, obwohl die Integration verlangsamt. Deshalb glaube ich, dass die Überschwingung den großen Einfluss habt. Aber über D-Parameter habe ich keine Ahnung zu tun..
Ähnliches Problem habe ich beim Heizungsmischer. Ich musste zeitliche Verzögerung zwischen Impuls für Stellmotor und die Temperatur berücksichtigen.Ich habe eine Warte zeit eingebaut.Mein Soft für den Mischer habe ich als Textdatei eingefügt. Ursprünglich habe ich den Soft in Assembler geschrieben und das ist neue (noch nicht getestete...) Version in „C“. Du muss den Abtastzyklus vom Regler mit richtigen Zeit einstellen.
Ein PID ist leider von vorneweg unpassend zur Heizungsregelung. Welche Beitraege muessen auf das Stellglied wirken ? - p = Fehler * P-Verstaerkung - i = integrierter Fehler * I-Verstaerkung - V = Vorwaertssteuerung = Heizbedarf abhaengig von der Temperatur-Umgebung. Wobei der Letzte, der wichtigste ist. Ohne den Letzten muss man warten bis der Integrator alles Uebernommen hat. Dann ist der P auf Null. Der letzte Anteil kann man aus einer interpolierten Tabelle oder aus einem gefitteten Polynom ziehen. Welche Stellglied Einstellung benoetigt man fuer 30 Grad, fuer 40 Grad, fuer 50 Grad.
Ich bin eher der Meinung, dass ein langsames System viel schneller geregelt werden muss. Je träger ein System reagiert, um so früher muss ich mit der Regelung beginnen. Als Beispiel: regel ich bei 3 Grad Abweichung, muss ich vielleicht schon bei einem Grad regeln.
F. F. schrieb: > Ich bin eher der Meinung, dass ein langsames System viel schneller > geregelt werden muss. Nein.
@TO durch was für ein Modell hast du die Strecke approximiert ? PT1 oder PT2 ... ich vermute hier fast ein PT2 Verhalten, da Kompressor -> Flüssigkeit -> Zylinder. Einen I Anteil brauchst du fast nicht in der Regelung..der nervt nur. Wie hast du die SamplingRate im Simulink konfiguriert ? Bei einem so langsamen Modell reicht wahrscheinlich 1s ... Ist das ganze eine Laboaraufgabe oder im Rahmen einer HiWi/StuMi Tätigkeit ? Wenn letzteres wäre StateSpaceControl oder FuzzyControl der bessere Ansatz.
F. F. schrieb: > Ich bin eher der Meinung, dass ein langsames System viel schneller > geregelt werden muss. > Je träger ein System reagiert, um so früher muss ich mit der Regelung > beginnen. > Als Beispiel: regel ich bei 3 Grad Abweichung, muss ich vielleicht schon > bei einem Grad regeln. Was redest du für ein Unfug? Wie willst du denn ein langsames System viel schneller regeln? Wenn du eine Totzeit drin hast, hast du nunmal eine Totzeit drin und die kannst du nicht einfach eliminieren. Du machst die Regelung auch nicht besser, wenn du einfach schneller regelst. Wenn du es nicht glaubst, dann besorg dir einen langen Duschschlauch und geh duschen. Ehe du gemerkt hast, dass du die Temperatur nachregeln musst, hast du dich schon verbrennt. Da hilft nur der Smith Predictor.
klassischer PID ist für Strecken mit grosser Tot- oder Verzugszeit eher ungeeignet. Für eine brauchbar schnelle Regelung einer solchen Strecke ist die Verwendung eines PPT1-Basisreglers mit parametervariantem I-Anteil für den arbeitspunktabhängigen Stellgrössenbedarf sehr gut brauchbar. Dazu wird der I-Anteil nach jeder Stellgrössenänderung auf den neuen Zielwert resettet, für den neuen Sollwert und dann die Verstärkung mindestens über Zeit (Verzugszeit der Strecke) hochgezogen. Sollte die Strecke noch nichtlinear sein, so lassen sich auch noch arbeitspunktabhängige Parameter hinzufügen. Diese Struktur erspart einem auch die Sollwertformung. Grüsse Homer
Hallo, 1. Wie schnell ist die Aufheizung und wie schnell ist die Abkühlung. (Temperatur pro Zeit)? Lösung:Tabelle 2. Den Sollwert über einen Tiefpass laufen lassen. Siehe Das macht man häufig bei Regler mit Betragsoptimum. 3. Den I-Anteil würde ich zuerst auf 0 setzen.
Danke schön! Ich werde damit versucht!
Erfahrung aus der Praxis: Die realen Kühl- und Heizsystem sind stark nicht-linear. Wenn man das einigermaßen linearisiert, klappt's viel besser.
TestX schrieb: > @TO > > durch was für ein Modell hast du die Strecke approximiert ? PT1 oder PT2 > ... ich vermute hier fast ein PT2 Verhalten, da Kompressor -> > Flüssigkeit -> Zylinder. Einen I Anteil brauchst du fast nicht in der > Regelung..der nervt nur. > Wie hast du die SamplingRate im Simulink konfiguriert ? Bei einem so > langsamen Modell reicht wahrscheinlich 1s ... > > Ist das ganze eine Laboaraufgabe oder im Rahmen einer HiWi/StuMi > Tätigkeit ? Wenn letzteres wäre StateSpaceControl oder FuzzyControl der > bessere Ansatz. Danke für die Hilfe! Jetzt ist der I-Parameter auf 0.0295. Falls er 0 ist, gibt es wirklich keine Überschwingung mehr, aber die Regelungszeit ist noch sehr langsam... Ich werde mit Sampling-Rate auf 1s versuchen. hoffe es ist besser. Das ist eine Laboraufgabe.
max123 schrieb: > Hallo, > 1. > Wie schnell ist die Aufheizung und wie schnell ist > die Abkühlung. (Temperatur pro Zeit)? > Lösung:Tabelle > 2. > Den Sollwert über einen Tiefpass laufen lassen. Siehe > Das macht man häufig bei Regler mit Betragsoptimum. > > 3. > Den I-Anteil würde ich zuerst auf 0 setzen. Danke erstmal! Das Kühlaggregate ist langsam, nach meiner Beobachtung ist die Aufheizung etwa 0.08 Celsuisgrad(bei großer Leistung) pro Sekunde. Falls I-Anteil 0 ist, ist die Regelung noch langsam..
Beitrag #5748189 wurde vom Autor gelöscht.
Experte schrieb: > Erfahrung aus der Praxis: Die realen Kühl- und Heizsystem sind stark > nicht-linear. Wenn man das einigermaßen linearisiert, klappt's viel > besser. Vielen dank! Aber haben Sie noch Vorschläge über die Linearisierung für das Kühlsystem?
Die Theorie ist bei mir schon länger her, aber der I Anteil sollte nichts mit der Regel Geschwindigkeit zu tun haben. I verringert den Drift über die Zeit.
TestX schrieb: > @TO > > durch was für ein Modell hast du die Strecke approximiert ? PT1 oder PT2 > ... ich vermute hier fast ein PT2 Verhalten, da Kompressor -> > Flüssigkeit -> Zylinder. Einen I Anteil brauchst du fast nicht in der > Regelung..der nervt nur. > Wie hast du die SamplingRate im Simulink konfiguriert ? Bei einem so > langsamen Modell reicht wahrscheinlich 1s ... > > Ist das ganze eine Laboaraufgabe oder im Rahmen einer HiWi/StuMi > Tätigkeit ? Wenn letzteres wäre StateSpaceControl oder FuzzyControl der > bessere Ansatz. By the way, Das Plant was ich simuliere, ist ein PT1 Glied.
Kolja L. schrieb: > Die Theorie ist bei mir schon länger her, aber der I Anteil sollte > nichts mit der Regel Geschwindigkeit zu tun haben. I verringert den > Drift über die Zeit. Ja richtig, aber nach meiner Beobachtung, nach der Verkleinerung des I-Parameters hat die Regelgeschwindigkeit wirklich verbessert. Weil die Überschwingung wird unterdrückt. Bei meinem Kühlaggregate hat die Überschwingung großen Einfluss auf Regelungsgeschwindigkeit. Weil Das Kühlaggregate langsam reflektiert und die Überschwingung führt zur größeren Überheizung oder Überkühlung.
So ein langsames System darf gar nicht überschwingen.
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.