Ist die Differenzengleichung des PI-Reglers so richtig?
Hallo,
ich soll die Differenzengleichung für einen PI-Regler aufstellen.
Im Skript haben wir dies anhand eines DT1-Reglers behandelt und sollen dies nun anwenden.
Mein erstes Problem besteht darin, dass ich für den PI-Regler eine andere Form der Übertragungsfunktion wählen würde als der Professor.
Da mir die Variante ohne Klammer " einfacher" erscheint.
Ich hoffe das dies so richtig ist und würde mich freuen wenn ihr mir helfen könntet!
Anbei mein Versuch:
1 Antwort
Soweit ich das jetzt korrekt verstehe führt ihr als Diskretisierungsverfahren eine approximierte Diskretisierung durch (für dt hinreichend klein). Hierzu verwendet ihr die Tustin-Formel s = (2/dt)*(z - 1)/(z + 1) (s. Bsp. Regelungstechnik 2, Unbehauen, S.127).
Es folgt also mit:
Gr(s) = K*(1 + sT)/(sT) = K*(1/(sT) + 1)
durch Anwenden der Tustin-Formel auf Gr(s) somit die diskrete Z-Übertragungsfunktion
Gr(z) = K*(1 + T*(2/dt)*(z - 1)/(z + 1))/(T*(2/dt)*(z - 1)/(z + 1))
= K*(1/(T*(2/dt)*(z - 1)/(z + 1)) + 1)
(--> es spielt keine Rolle welche der beiden Formen du hier verwendest, da sie identisch sind ... dies gilt auch für alle anderen Übertragungsfunktionen ... ).
Mit Gr(z) = U(z)/E(z)
--> (T*(2/dt)*(z - 1)/(z + 1))*U(z) = K*(1 + T*(2/dt)*(z - 1)/(z + 1))*E(z)
--> T*(2/dt)*(z - 1)*U(z) = K*((z + 1) + T*(2/dt)*(z - 1))*E(z)
Und durch Rücktransformation in den diskreten Zeitbereich dann
--> T*(2/dt)*(u(k+1) - u(k)) = K*((e(k+1) + e(k)) + T*(2/dt)*(e(k+1) - e(k)))
Und das gilt es dann nur noch entsprechend zusammenzufassen ...
--> T*(2/dt)*(u(k+1) - u(k)) = K*((1 + T*(2/dt))*e(k+1) + (1 - T*(2/dt))*e(k))
Oder alternativ auch für k+1 = n
--> T*(2/dt)*(u(n) - u(n - 1)) = K*((1 + T*(2/dt))*e(n) + (1 - T*(2/dt))*e(n - 1))
Bzw durch weiteres zusammenfassen
--> u(n) - u(n - 1) = K*(e(n) - e(n-1)) + K*(dt/2)*T*(e(n) + e(n - 1))
--> u(n) = u(n - 1) + K*(e(n) - e(n-1)) + K*(dt/2)*T*(e(n) + e(n - 1))
Soweit ich das jetzt gesehen habe hast du kleinere Umformungsfehler gemacht. Aber ich habe jetzt nicht alles 100% durchgerechnet, solltest das aber trotzdem nochmal checken.
Am Ergebnis ändert das nichts, genau. Ist einfach eine andere Art und Weise die Differenzengleichung hinzschreiben. Bspw. beschreiben
(i) x(k+1) + x(k) = y(k+1)
und
(ii) x(k) + x(k -1) = y(k)
die selbe Differenzengleichung. So folgt in beiden Fällen durch z-Transformation:
(i) --> (z + 1)*X(z) = z*Y(z) ---> Y(z) = (1 + z^-1)*X(z)
(ii) --> (1 + z^-1)*X(z) = Y(z) --> z*Y(z) = (z + 1)*X(z)
Hallo Poseidon,
vielen Dank für deine Hilfe!
Eine Frage habe ich da noch.
Wir haben im Skript immer k-1 verwendet und du nutzt k+1.
Ich würde vermuten, dass es "egal" ist wie ich das nun aufschreibe oder? Das ändert am Ergebnis ja nichts oder?
Ich schaue dann nochmal über meine Rechnung wo genau die Umformungen falsch sidn.
LG