Regelung vom PT2-Glied mit PID-Regler auf Arduino

Gast #5550977
Lesenswert?

Hallo allerseits!
Ich habe einen PID-Regler auf Arduino Due programmiert um PT1- und 
PT2-Glieder mit vorgegebenen Uebertragungtsfunktionen zu regeln 
(Programmcode im Anhang - etwas lang aber nur die Funktionen void 
regler() und void steuern() sind fuer meine Frage relevant). Nun der 
Regler funktioniert bestens bei PT1-Gliedern. Bei schwingenden 
PT2-Glieder mit positiven Sprungantwort auch.
Das Problem liegt bei der Regelung von PT2-Gliedern mit negativen 
Sprungantwort. Eigentlich ist das PT2-Glied einfach ein mit 
invertierendem OPV gebaute Tiefpass-Filter 2. Ordnung. Mit positiven 
Koeffizienten Kp, Ki und Kd funktioniert es nicht. Der Ist-Wert wird nur 
noch kleiner (IstW.=-3 V; SollW. = 1 V). Allerdings klappt es wunderbar 
mit negativen Kp, Ki und Kd.
Meine Frage: Ist das normal? Bei mir macht dieses Verhalten schon Sinn, 
aber ich habe noch nie von negativen PID-Regler Koeffizienten gehoert. 
Oder habe ich irgendeinen Fehler in der void regler() Funktion?
Danke im Voraus!
p.s. Das Bild im Anhang ist die ungeregelte Sprungantwort vom PT2-Glied.
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren