How to tune this Transfer Function using Zieger nichols or Cohen coon

20 次查看(过去 30 天)
because from the this
s=tf('s');
sys=(5809000*s + 28060)/(s^3 + 571300*s + 1266);
step(sys)
i only get this
and the other one
num = [5809000 28060];
den = [1 571300 1266];
Gp = tf(num, den);
p = pole(Gp);
step(Gp, 50)
i get this
how do i tune using the zieger nichols or cohen coon from this?

采纳的回答

Sam Chak
Sam Chak 2022-5-29
There is a typo in the denominator:
s^3
I think that Ziegler-Nichols and Cohen-Coon methods are more suitable if the mathematical model of the plant is unavailable. Nevertheless, you can try some automated tuning algorithm available in FileExchange:
I prefer human tuning (mathematically, or course) because the human operator can make the system to behave as desired. In this case, a compensator is used to make the system converge around 5 sec without signicant overshoot and undershoot.
s = tf('s');
Gp = (5809000*s + 28060)/(s^2 + 571300*s + 1266) % plant
Gc = 0.09835/(s^4 + 2.205*s^3 + 3.511*s^2 + 2.817*s + 0.0135) % compensator
Gsys = feedback(Gc*Gp, 1);
Gsys = minreal(Gsys)
step(Gsys, 15)

更多回答(2 个)

MRR
MRR 2022-5-30
You can try to obtain a FOPTD model (First Order Plus Time Delay). Then you can use several tuning rules, including Ziegler-Nichols, and Cohen-Coon. I link here one of our works related with the implementation of tuning rules by means of interactive tools developed in Matlab.
Hope it helps.

Kunal
Kunal 2023-2-19
s = tf('s'); Gp = (5809000*s + 28060)/(s^2 + 571300*s + 1266) % plant Gc = 0.09835/(s^4 + 2.205*s^3 + 3.511*s^2 + 2.817*s + 0.0135) % compensator Gsys = feedback(Gc*Gp, 1); Gsys = minreal(Gsys) step(Gsys, 15)

类别

Help CenterFile Exchange 中查找有关 Classical Control Design 的更多信息

产品


版本

R2022a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by