Hallo Leute, schnell zur Sache: Ichhabe soweit ein PID Temperaturregelung mit PWM realisiert. Der PID regler ist soweit parametreiert dass er zwischen 0 und 100 % Taktung ein Relais ansteuert. Der PID muss ja wissen dass er nicht unter 0 und nicht über 100 fahren darf. Aus diesem grund habe ich Limits gesetzt und begrenzt. Aber: Der Begrenzer tut ja nur z.b. den Ausgang auf 100 zu halten wenn der Ausgabewert über 100 Steigt. Aber der Ausgang steigt ja noch weiter, bis quasi Tsoll erreicht wurde und dann erst nimmt er ab. Es ist schon klar, dass je näher der Regler an Tsoll kommt, desto langsammer wird der Anstieg sein. Aber ein überschwinger wird es sowiso geben und genau da tritt dass Problem ja auf. d.H wenn der Ausgang am Regler 150 erreicht hat (der Begrenzer hält ihm auf 100 klar!) und dann erst ist Tsoll überschritten dann müssen wir erst warten biss er zurück auf 100 rudelt und erst dann fängt er an mit 99.98.97... zu takten. in der Zeit aber steigt die Temperatur permanent weiter, weil das Relais dieses nicht mitbekommt. ich hoffe mein Problem geschiltert zu haben. Danke im Voraus gruß Heizer
naja wie wärs mit abschalten des Relais bei 100 ? Aber wie wärs mit mehr Informationen Schaltplan zumindest.....
Das Relais bei 100% muss natuerlich bedeuten, das der Sollwert irgendwann erreicht werden wird, sonst hat eine Regelung keinen Sinn. Wir reden hier von einem Interierenden Regler, der Ueberschiessen kann... ja da gibt es Strategien.
Heizer schrieb: > Anstieg sein. Aber ein überschwinger wird es sowiso geben und genau da > tritt dass Problem ja auf. d.H wenn der Ausgang am Regler 150 erreicht > hat (der Begrenzer hält ihm auf 100 klar!) und dann erst ist Tsoll > überschritten dann musst du eben dafür sorgen, dass dieses nicht so krass passiert. Sprich: entweder ist dein Ki zu gross, so dass sich der I-Anteil im PID Regler in ungeahnte Höhen aufschwingt oder du brauchst überhaupt eine Begrenzung des I-Anteils (genauer der akkumulierten Fehlersumme) im PID Regler. Letzteres nennt man Anti Windup.
Heizer schrieb: > Der PID muss ja wissen dass er nicht unter 0 und nicht über 100 fahren > darf Mit PWM hat das garnichts zu tun, das Problem hat jeder Temperaturregler, da es nun mal keine Heizung mit unendlicher Leistung gibt. Also ist z.B. das Ventil am Heizkörper voll offen, wenn die Temperatur entsprechend niedrig ist - na und, wo ist das Problem? Wird die Solltemperatur erreicht, so wird zugeregelt. Wenn das zu spät passiert und die Temperatur überschwingt, kann man das u.a. mit dem D-Anteil verhindern, überhaupt muss man halt die Parameter passend einstellen, das ist ja nichts neues. Ein Heizkörper kann auch nicht weniger als 0 heizen, na und, dann muss der Thermostat halt warten, bis die Temperatur von selbst weit genug gefallen ist, auch das ist nicht neues (geht das partout nicht, braucht man eine Kühlung dazu). Es kommt hier lediglich sozusagen ein 4. Parameter dazu, nämlich die Abbildung des Reglerausgangs auf das Stellglied, also bei welchem Wert wird 0 geheizt und bei welchem mit voller Leistung, das hat natürlich Einfluss auf die Regelcharakteristik. Zum einen muss der Stellbereich voll ausgenutzt werden, so dass 0 und voll auch erreicht werden, zum anderen wirkt sich eine Erhöhung der Steilheit im Prinzip so aus wie eine Erhöhung der P-,I-,D-Parameter. Georg
Danke für die Hilfestellungen. Anti-Wind-up hat mein Problem gelöst.!
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.