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

15 ビュー (過去 30 日間)
Isyraf Izuddin
Isyraf Izuddin 2022 年 5 月 29 日
回答済み: Kunal 2023 年 2 月 19 日
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 Center および File ExchangeMATLAB についてさらに検索

製品


リリース

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by