Unable to display allowable region for poles using sgrid() function.

5 views (last 30 days)
I'm trying to plot the allowable region for poles in s-plane with the constraints (i)2% settling time less than 5 seconds (ii)peak displacement of less than 5 radians. I derived damping ratio (ζ) to be greater than 0.6906 and natural frequency (wn) to be greater than 1.129rad/sec. The code I wrote so far is below and there are no errors, yet im unable to display the allowable region for poles. Where did i go wrong? The system output is of form Y/R=G/(1+kCG)
M = 0.5;
m = 0.2; b = 0.1; I = 0.006; g = 9.8; l = 0.3;
q = (M+m)*(I+m*l^2)-(m*l)^2
s = tf('s');
G = (m*l*s/q)/(s^3 + (b*(I + m*l^2))*s^2/q - ((M + m)*m*g*l)*s/q - b*m*g*l/q)
C = (s+3)*(s+4)/s
sys=(G*C)
axis('equal')
rlocus(sys);
grid
[k,poles]=rlocfind(sys)
z = 0.6906;
wn = 1.129;
sgrid(z,wn)
  1 Comment
Jon Boerner
Jon Boerner on 22 Oct 2014
I am a little confused as to what exactly you are looking for. sgrid will just plot the radius and angles associated with the damping and frequency you supply. Are you looking to shade the plot in the allowable area? For example:

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!