Umwandlung von PID-Reglerkomponenten mit Zustandsrückmeldung in Einzelübertragungsfunktion und diskrete Zustandsraumform

9

Ich habe jetzt seit ungefähr einer Woche mit diesem Problem gerungen, als Teil eines einjährigen Projekts. Wir entwerfen eine Steuerung für einen bestimmten Reaktor basierend auf einem Modell. Nachdem ich mir das eine Weile angesehen habe, kann ich es immer noch nicht zum Laufen bringen - also würde ich es wirklich begrüßen, wenn ich Hilfe bekommen könnte.

Eine der veröffentlichten Literaturübersichten, auf die wir uns stark gestützt haben, listet einen PID-Regler in jeder einzelnen Komponente anstelle einer kombinierten Gleichung auf:

{P(n)=K.p[G(n)- -teinrGet]]ich(n)=ich(n- -1)+K.pT.ich[G(n)- -teinrGet]]D.(n)=K.pT.D.dGdt(n)

Kombinieren Sie einfach die drei Komponenten in den PID-Reglerausgang:

P.ichD.(n)=P.(n)+ich(n)+D.(n)

Und von hier aus fügt der Autor zusätzlich zum PID-Signal eine zusätzliche Ebene der Zustandsrückmeldung hinzu, um den endgültigen Reglerausgang auf das System anzuwenden.

{Q(n)=K0R(n1)+K1Q(n1)K2Q(n2)R(n)=(1+γ)PID(n)γQ(n1)

Und R ist der endgültige "Controller-Ausgang". Hier ist die Prozessverstärkung, und sind die Integral- und Ableitungsverstärkungen, und sind "Verstärkungen", die auf die Zustandsrückkopplung (unveränderlich) abgestimmt sind, und ist eine Konstante von 0,5. ist der Systemzustand, ist ein geschätzter Zustand, der die Modelldynamik beeinflusst, und ist die tatsächliche Endausgabe, die an die Anlage gesendet wird.T I T D K 0 , K 1 K 2 & ggr; G ( n ) Q ( n ) R ( n )KpTITDK0,K1K2γG(n)Q(n)R.(n)

Ich habe versucht, das Ganze zuerst in eine einzelne Controller-Übertragungsfunktion umzuwandeln, aber mir wurde gesagt, dass das einfache Addieren nicht funktioniert.

Ich wurde auch beauftragt, eine diskrete Zustandsraumdarstellung dieses Controllers zu finden. Zu diesem ich versucht, in zu ändern , um dieses Problem zu beheben.G(n)-G(n-1)dGdt(n)G(n)- -G(n- -1)

Als nächstes habe ich versucht, eine neue Zustandsvariable für damit und in die erste Ordnung umgewandelt werden können.Q ( n - 1 ) Q ( n - 2 )Q.(n)Q.(n- -1)Q.(n- -2)

Ich habe dann versucht, die Werte in den PID-Regler zu ersetzen, um das als Zustandsvariable zu erhalten. Diese Bemühungen beruhten alle auf Empfehlungen meines Professors.G(n)

Ich stecke jedoch immer noch sehr fest, da ich blind seinen Anweisungen gefolgt bin, ohne eine Gesamtvision zu haben, um daran zu arbeiten. Ich dachte, es wäre eine einfache Sache der Tustin-Transformation - oh, wie sehr ich mich geirrt habe ...

Ich bin ziemlich frustriert, denn nach einer einwöchigen Anstrengung bin ich immer noch verblüfft über ein scheinbar einfaches Problem.

Darf ich Sie, wenn möglich, demütig um Ihre Hilfe bei diesen beiden spezifischen Fragen bitten?

  1. Konvertieren Sie diesen Controller in eine einzelne Controller-Übertragungsfunktion (wie in jeder Übertragungsfunktionsdarstellung üblich, dh ).G(s)=1s+1
  2. Diesen Controller in eine diskrete Zustandsraumdarstellung umwandeln und die Abtastrate als Variable belassen?
John Galt
quelle
MATLAB und Maple können diese Probleme lösen. Ich habe beide Programme. Ich habe Ihren Beitrag ausgedruckt und werde versuchen, sie zu bearbeiten. Ich habe einiges davon im College gemacht.
Wesley Wortman
Können Sie den Titel der Veröffentlichung angeben?
Hazem

Antworten:

1

Es ist keine vollständige Antwort, aber ich hoffe, dass es hilfreich sein könnte.

Sie können das erste System als umschreiben

{P.(n)=K.P.E.(n)ich(n)=ich(n- -1)+K.P.T.ichE.(n)ΔtD.(n)=K.P.T.D.E.(n)- -E.(n- -1)Δt

Wobei und Ihr Abtastintervall ist. Beachten Sie, dass und nicht als Gewinne definiert sind. und sind jeweils die Integralverstärkung und die Ableitungsverstärkung.E.(n)=G(n)- -teinrGet(n)ΔtT.D.T.ichK.ich=K.P.T.ichK.D.=K.P.T.ich

Jetzt können Sie das System als einzelne Funktion des Fehlers neu schreiben.

P.ichD.(n)=P.(n)+ich(n)+D.(n)

ich(n- -1)=P.ichD.(n- -1)- -P.(n- -1)- -D.(n- -1)=P.ichD.(n- -1)- -K.P.E.(n- -1)- -K.P.T.D.E.(n- -1)- -E.(n- -2)Δt

P.ichD.(n)=K.P.E.(n)+P.ichD.(n- -1)- -K.P.E.(n- -1)- -K.P.T.D.E.(n- -1)- -E.(n- -2)Δt+K.P.T.ichE.(n)Δt+K.P.T.D.E.(n)- -E.(n- -1)Δt=P.ichD.(n- -1)+K.P.((1+ΔtT.ich+T.D.Δt)E.(n)- -(1+2T.D.Δt)E.(n- -1)+T.D.ΔtE.(n- -2))

Die zweite ist etwas komplexer als eine einzelne Gleichung umzuschreiben, aber Sie können es auf ähnliche Weise tun. Das Ergebnis sollte sein

R.(n)=K.1R.(n- -1)- -(γK.0+K.2)R.(n- -2)+(1+γ)(P.ichD.(n)- -K.1P.ichD.(n- -1)+K.2P.ichD.(n- -2))

Jetzt müssen Sie nur noch die PID-Gleichung ersetzen, um die Gleichung des Reglers als Funktion des Fehlers zu erhalten.

gvgramazio
quelle