Forum: Digitale Signalverarbeitung / DSP / Machine Learning Regelung vom PT2-Glied mit PID-Regler auf Arduino


von Schmitt_Trigger (Gast)


Angehängte Dateien:

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.

von Andi (chefdesigner)


Lesenswert?

Negative Koeffizienten bewirken Dasselbe, wie Positive. Nur ist die 
effektive Regelrichtung invertiert. Hängt vom System ab. Deine Parameter 
brauchen mehr Dämpfung und mehr D-Anteil.

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
Noch kein Account? Hier anmelden.