How to define dominant poles of high order system?
40 views (last 30 days)
Show older comments
Hi
I create a 5th order random system using rss() command. Then i get poles using pole() command. I took two conjugate imaginery poles as dominant poles. I produce a characteristic equation with that poles. wn and zeta calculated with that equation. I put zeta value into the overshoot formulation. But it's not true value.
When I apply step input the system, overshoot becomes %142 but with this method I took % 74.
What can be faulse?
clear all;
clc;
%system=tf(rss(5));
% 0.3521 s^4 + 2.036 s^3 + 21.5 s^2 + 16.34 s + 1.281
% ---------------------------------------------------------
% s^5 + 2.696 s^4 + 11.37 s^3 + 20.04 s^2 + 11.41 s + 1.695
s=tf('s');
system = (0.3521*s^4 + 2.036*s^3 + 21.5*s^2 + 16.34*s + 1.281) / (s^5 + 2.696*s^4 + 11.37*s^3 + 20.04*s^2 + 11.41*s + 1.695)
p=pole(system);
% p =
% -0.27477 + 2.9746i
% -0.27477 - 2.9746i
% -1.2615 + 0i
% -0.65514 + 0i
% -0.22984 + 0i
s1= -0.27477 + 2.9746i
s2= -0.27477 - 2.9746i
%so we get the dominant poles
%most closed poles to origin
char_eq=(s-s1)*(s-s2);
% s^2 + 0.5495 s + 8.924
w_n=(8.924)^(1/2);
zeta = 0.5495 / (2*w_n);
overshoot = 100*exp((-zeta*pi)/((1-zeta^2)^(1/2)))
0 Comments
Answers (0)
See Also
Categories
Find more on Pole and Zero Locations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!