Experiment Name:: Modeling of A Control System Using Root Locus
Experiment Name:: Modeling of A Control System Using Root Locus
Objective:
Apply the knowledge of lag and lead compensators to design a controller to operate a
given system within specification in terms of error and transient response.
Apparatus:
MATLAB software
Answer to the Question
1
√( 2
)
ζ= pi
1+( )
ln ( overshoot ratio )
ζ = 0.5446
Codes:
clc;
clear all;
close all;
s = tf('s');
G=1/(s*(s+6)*(s+10)); %transfer function
figure;
rlocus(G); %root locus
sgrid(0.5446,0); %zeta=0.5446
[k,poles] = rlocfind(G)
G1=feedback(k*G,1); %actual system
t=0:.1:50;
figure;
step(t,G1);
stepinfo(G1)
selected_point =
-1.9744 + 2.9777i
k=
153.1376
poles =
-12.0833 + 0.0000i
-1.9583 + 2.9729i
-1.9583 - 2.9729i
ans =
RiseTime: 0.5169
TransientTime: 1.7278
SettlingTime: 1.7278
SettlingMin: 0.9117
SettlingMax: 1.1198
Overshoot: 11.9780
Undershoot: 0
Peak: 1.1198
PeakTime: 1.1523
Let us select Zlead = 6 so that we can cancel the (s+6) pole. The angle contribution of (-3.95±
5.95i) on the system is:
5.95 5.95
tan-1 + (180- tan-1 ) = 168.1°
10−3.95 3.95
Thus, the pole of lead compensator has to make the angle contribution of 180° - 168.1°=11.89°
5.95
New pole position, Plead = + 3.95 = 32.21
tan (11.89)
(s+6)
So, the lead compensator, GLead(s) =
( s+32.21)
Glead=(s+6)/(s+32.21);
rlocus(G*Glead);
sgrid(0.5446,0); %zeta=0.5446
[k,poles]=rlocfind(G*Glead)
G2=feedback(k*G*Glead,1); %Lead compensated system
figure;
step(t,G2);
stepinfo(G2)
Reduction in Settling time = (1.72)/(0.8408) = 2.05 or Approx. two-fold
Designing a Lag Compensator :
Code:
Glag=(s+0.003)/(s+0.1);
rlocus(G*Glead*Glag);
sgrid(.5446,0); %zeta=0.5446
[k,poles]=rlocfind(G*Glead*Glag)
G3=feedback(k*G*Glead*Glag,1); %Lag-lead compensated system
t1=0:.1:20;
figure;
step(t1,G3), hold on;
step(t1,G1) %actual system
stepinfo(G3)