Second order approximation of a third order system
54 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a transfer function with a zero at 259.6 and poles at 0, -1.6, and -33.8. How do I make a second order approximation of this system to implement a step input and analyze the overshoot and settling time?
1 commentaire
Mathieu NOE
le 29 Nov 2023
hello
your TF contains a pole at 0 so it contains an integrator - any how a step input will create an output signal like a ramp - no way you can measure overshoot and setling time (like underdamped second order systems)
what kind of second order approximation are you trying to do , and why ? removing the p = 0 term is no more an approximation it's a different system ! and removing other pole(s) will not change the integrator effect either.
all your poles are real so there will be no oscillations, overshoot. For that you need complex conjugated poles.
zz = 259.6;
pp = [ 0 -1.6 -33.8];
[NUM,DEN] = zp2tf(zz,pp,1);
figure,bode(NUM,DEN)
figure,step(NUM,DEN)
figure,impulse(NUM,DEN)
Réponses (1)
Sam Chak
le 29 Nov 2023
Modifié(e) : Sam Chak
le 29 Nov 2023
For versions before R2023b release, use the balred() command. Now you can use the newer reducespec() command instead.
Update: The OP has clarified that the value 259.6 in the numerator is actually the 'gain' (k), not a 'zero'.
%% Original 3rd-order LTI model
z = [];
p = [0, -1.6, -33.8];
k = 259.6;
sys = tf(zpk(z, p, k))
%% Reduced 2nd-order LTI model
R1 = reducespec(sys, "balanced");
R2 = reducespec(sys, "ncf"); % requires Robust Control Toolbox™
rsys = tf(getrom(R2, Order=2))
bode(sys, rsys, 'r--'), grid on
legend("Original", "Order 2")
3 commentaires
Sam Chak
le 29 Nov 2023
Take a look at the updated Answer. If you find the solution helpful, please consider clicking 'Accept' ✔ on the answer and voting 👍 for it. Thanks a bunch!
Mathieu NOE
le 30 Nov 2023
as expected , the second order approximation does not retain the integrator part of the original TF
for closed loop design, that can have some serious impact !
Voir également
Catégories
En savoir plus sur Dynamic System Models dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!