How to find out z, p, and k of SISO transfer function of a plant

4 visualizaciones (últimos 30 días)
Dear All, I need to apply zpk command upon my plant just like an attached photo. My plant is given as:
num=[4.16];
den=[1 0.82 0.69];
G=tf(num,den)
what are the z, p, and k for my plant just like in given mathworks example https://www.mathworks.com/help/control/examples/designing-pid-for-disturbance-rejection-with-pid-tuner.html

Respuesta aceptada

Birdman
Birdman el 26 de Oct. de 2017
In your example, the transfer function is defined from the zeros, poles and gain. In this case, zpk will return the same since the system is a second order system. Use the following lines instead:
z=roots(Gs.Numerator{1});
p=roots(Gs.Denominator{1});
k=Gs.Numerator{1};
  2 comentarios
Barkat
Barkat el 26 de Oct. de 2017
Editada: Walter Roberson el 26 de Oct. de 2017
Thank you for your reply. I was following a tutorial in mathworks. Its link is https://www.mathworks.com/help/control/examples/designing-pid-for-disturbance-rejection-with-pid-tuner.html
While following this tutorial and running the following command
% Closed-loop system with PI controller for reference tracking
sys1 = feedback(G*C,1);
% Closed-loop system with ISA-PID controller
sys2 = connect(ISAPID,G,{'r','u'},'y');
% Compare responses
step(sys1,'r-',sys2(1),'b.');
legend('show','location','southeast')
title('Reference Tracking')
But the following error occurred
Function 'subsindex' is not defined for values of class 'zpk'.
Function 'subsindex' is not defined for values of class 'ss'.
Can you please go to this link and investigate the error. let me know how to remove this error?
Walter Roberson
Walter Roberson el 26 de Oct. de 2017
Which MATLAB version are you using?

Iniciar sesión para comentar.

Más respuestas (0)

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by