Steady state doesn't appear in step response plot
14 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
George Tsintsadze
el 28 de Oct. de 2018
Respondida: Aquatris
el 29 de Oct. de 2018
I Have the following specific transfer function:
bad_sys = tf([0 0 93 278], [1 20 12 0]);
And I want to plot the step response of its close loop (with negative feedback, no gain), and display the settling time. So I call:
step(bad_sys/(1+bad_sys));
But the plot I get don't dave the dashed line which represents the steady state value, and thus will not display the settling time when I choose this option (not defined):
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192859/image.png)
This steady state line, and the option to display settling time works great for the following transfer function:
good_sys = tf([0 0 1 1], [1 2 2 2]);
step(good_sys/(1+good_sys));
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192860/image.png)
I suggested that the problem is in bad_sys. So I called:
sisotool
And defined G in the architecture as bad_sys:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192861/image.png)
Now I let the magical sisotool to plot the step response (with the gain C=1). This should yield the same problem, but here I got the line I wanted and the option to display settling time:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/192862/image.png)
So my question is, why the steady state line of bad_sys is not displayed (and I cant display settling time) via the step function?
0 comentarios
Respuesta aceptada
Aquatris
el 29 de Oct. de 2018
The bad_sys works if you call the step function with;
step(minreal(bad_sys/(1+bad_sys)))
I am not sure about the exact reason but one possibility is, when you closed the loop without calling minreal() function, you basically do not allow pole-zero cancellation. Since bad_sys has a pole at zero, this causes problems (internally Matlab probably does not know what to do). good_sys on the other hand do not have a pole at zero so Matlab is happy to work with it.
0 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Classical Control Design en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!