Phase – lead, phase lag control

advertisement
Time and Frequency-Domain Analysis and Design of Phase-Lead and
Phase-Lag controllers (Compensators)
In the previous lectures we looked at PID controllers. PID controllers are the simplest
form of controllers that make use of the derivative and integration operations in control
systems compensation.
Root locations and root locus are typically used in the design of controllers, it would
make a perfect sense to describe a compensator in terms of the pole and zero locations.
A simple passive realizable controller is of the form:
Gc ( s) 
sz
s p
This controller is easily realized by passive elements (resistors and a capacitor)
The controller if of the high-pass filter type (phase –lead) if p > z and is of the lowpass filter type (phase –lag) if p<z Think about this – make sure it makes sense !
Phase-Lead Controller
The network realization of a phase-lead controller is shown below
The compensator’s transfer function is:
Eout ( s )
R2
 Gc ( s ) 
Ein ( s )
R1  R2
1  R1Cs
R R
1  1 2 Cs
R1  R2
Let
a
R1  R2
R2
a 1
And
T
R1R2
C
R`  R2
Then, the transfer function of the compensator becomes:
Gc ( s) 
Gc ( s ) 
1 1  aTs
a 1  Ts
s 1
aT
s 1
T
a 1
a 1
(1)
(2)
Note:
The transfer function of the phase – lead controller network has a real zero at
s  1
aT
s-plane is:
and a real pole at
s  1
T
and the representation in the
S-Plane
pole
zero
0
1
T
1
aT
The zero is always to the right of the pole. This is why the phase –lead
controller can improve the relative and absolute stability of a closed loop
control system.
Phase – Lead:
Stabilize the system
Increase the PM – thus reduce the overshoot
Increase the gain crossover frequency – reduce the rise time.
Note: we will work with equation (1) – ignore the 1/a term – it is simply
gain and that is taken care of when calculating K for the system to be
compensated.
- For the compensator in (1):
o The gain at high frequencies is approximately = 20log(a)
o The gain at low frequencies is = 0dB
o The upper cut-off frequency = 1/aT
o The lower cut-off frequency = 1/T
o The maximum phase shift of the phase lead is:
a  1

a

1


 max  sin 1
The corresponding frequency is:
max 
1
T a
The gain at this frequency is:
1
Gain  adB  10 log a
2
The above realities are used in the design.
o The Bode plot of a typical Phase –lead controller is:
Let the phase lead controller be:
Gc ( s) 
1  5s
1 s
Bode Diagram
15
Magnitude (dB)
(discuss the result)
10
5
Phase (deg)
0
60
30
0
-2
10
10
-1
0
10
Frequency (rad/sec)
10
1
10
2
Let us calculate some of the values discussed above:
5  1
o
  42
11
 max  sin 1
max 
1
 0.45 rad / sec
1 5
Design Steps:
1 – Choose the gain, K, to satisfy the steady state error requirement
2- Draw the Bode diagram of KG(s)
3- Determine the new crossover frequency (wg) – the frequency at
which the system has the desired phase margin.
4- Construct a table of phase, a, and Gain (for the compensator).
In some cases, you may find out that one lead compensator may
not be enough.
5- calculate T from the chose a and the new crossover frequency.
6- implement the compensator design and test the final result.
7- if o.k – done, otherwise, repeat the process.
Example:
For the sun seeker control system . The seeker is typically mounted on
space vehicles. The purpose of the controller is that the seeker tracks the
sum with high accuracy.
The input is the reference angle of the solar ray  r and the output is the
angle of the vehicle’s axis o
After some block diagram manipulations, the simplified block diagram is
shown below:
The design specifications are:
- the steady state value of e(t) due to a unit ramp input for  r (t) should be
less than or equal to 0.01 rad /(rad/sec.) of the final steady state output
velocity. [ The steady state error due to a unit ramp input should be less
than or equal to 1% ess  0.01 due to a unit ramp input]
- The peak overshoot should be less than 10%
Solution:
o
G

r 1  G
E= R – Y =
E
RR
G
R
1
1

 2
1  G 1  G s 1  2500 K
s ( s  25)
s ( s  25)
s 2 s ( s  25)  2500 K 
Applying the final value theorem:
lim ess (t )  lim sE ( s) 
t 
s 0
25
0.01

2500 K
K
Therefore, for a steady state error to be less than or equal to 1%, K
must be greater thank or equal to 1.
For the worst case, when K =1,
The characteristic polynomial is:
s 2  25s  2500  0
Which yields the following information:
n  2500,

  50 rad / sec.
25
 0.25
100
Thus the predicted % overshoot is:

Max overshoot =
e
1 2
 100
Let us simulate using Matlab – to verify:
= 44.43 %
Step Response
1.5
System: Gcl
Peak amplitude: 1.44
Overshoot (%): 44.4
At time (sec): 0.0642
Amplitude
1
System: Gcl
Rise Time (sec): 0.0254
0.5
0
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.3
0.35
0.4
0.45
Time (sec)
Step Response
1.5
Amplitude
1
0.5
0
0
0.05
0.1
0.15
0.2
0.25
Time (sec)
Let us plot the %overshoot vs. zeta.
clear all;clc
Z=[];
OS=[];
for z=0:.01:0.9999
os=100*exp((-z*pi)/(sqrt(1-z^2)));
Z=[Z z];
OS=[OS os];
end
plot(Z,OS)
grid
xlabel('zeta')
ylabel('% overshoot')
title('')
100
90
80
% overshoot
70
60
50
40
30
20
10
0
P.M =
0
0.1
0.2
0.3
0.4
0.5
zeta
0.6
1 

2



1

 
tan 1 2 
1
 

4
2
2
  4  1  2  




0.7
0.8
0.9
1
Let us plot this relationship of Phase margin vs. damping ratio:
clear all
Z=[];
PM=[];
for z=0:.01:1
pm=atand(2*z*(1/((4*z^4+1)^0.5-2*z^2))^0.5);
Z=[Z z];
PM=[PM pm];
end
plot(Z,PM)
grid
xlabel('zeta')
ylabel('PM - degrees')
title('Phase lead design')
Phase lead design
80
70
PM - degrees
60
50
40
30
20
10
0
0
0.1
0.2
0.3
0.4
0.5
zeta
0.6
0.7
Now. Let us plot the phase margin vs. % overshoot
clear all;clc
Z=[];
OS=[];
PM=[];
for z=0:.01:0.9999
os=100*exp((-z*pi)/(sqrt(1-z^2)));
pm=atand(2*z*(1/((4*z^4+1)^0.5-2*z^2))^0.5);
Z=[Z z];
0.8
0.9
1
OS=[OS os];
PM=[PM pm];
end
plot(OS,PM)
grid
xlabel('%overshoot')
ylabel('% Phase Margin')
title('')
80
70
% Phase Margin
60
50
40
30
20
10
0
0
10
20
30
40
60
50
%overshoot
70
80
90
100
From the plot, a 10% overshoot corresponds to a phase margin of 58o
Let us draw the Bode diagram of the uncompensated system.
clear all;close;clc
K=1;
num=K*[2500];
den=[1 25 0];
G=tf(num,den);
bode(G)
Bode Diagram
60
Magnitude (dB)
40
20
0
-20
-40
Phase (deg)
-60
-90
System: Gcom
Phase Margin (deg): 28
Delay Margin (sec): 0.0104
At frequency (rad/sec): 47
Closed Loop Stable? Yes
-120
-150
System: Gcom
Frequency (rad/sec): 48.7
Phase (deg): -153
-180
0
10
10
1
10
2
10
3
Frequency (rad/sec)
As can be seen, the phase margin for the open loop system is 28 degrees at
the wp = 47 rad/sec.. (Check the plot of % OS vs. phase margin – it agrees
with our predictions. )
We want the phase margin to be at 60 degrees (according to %os vs. PM).
(Add a phase lead) Thus the phase lead controller should add :
60-28 = 32 degrees of phase in the vicinity of the gain –crossover frequency.
But, when adding the phase lead controller, the magnitude response will be
affected in such a way that the gain crossover frequency will shift higher.
Thus, when designing the phase lead, allow for some marginal error to
account for the inevitable phase drop off.
a  1

a

1


 max  sin 1
a
1  sin 32
 3.25
1  sin 32
Since 20log(a) = 10.25dB (the phase lead will cause a 10.25 shift in the
magnitude) Thus the new gain crossover frequency will shift.
The problem is now, we want the amount of phase shift correction to occur
at the new gain crossover frequency.
Choose the geometric mean to locate the new crossover frequency.
At the attenuation of -10.25/2 = -5.125dB, the corresponding frequency is:
Bode Diagram
60
40
Magnitude (dB)
20
System: Gcom
Frequency (rad/sec): 65
Magnitude (dB): -5.17
0
-20
-40
-60
-90
Phase (deg)
-120
-150
-180
0
1
10
2
10
10
Frequency (rad/sec)
65 rad/sec.
Now, we can calculate T
T=
1
wm a
 0.0085
Substituting, we get:
Gc ( s) 
1 1  aTs
a 1  Ts
3
10
The open loop transfer function of the compensated system is:
G( s) 
1 2500(1  aTs )
a s( s  25)(1  Ts )
=
1
2500(1  0.0277 s)
3.25 s( s  25)(1  0.0085s)
The Frequency response of the compensated system is:
Bode Diagram
40
Magnitude (dB)
20
0
-20
-40
-60
-80
Phase (deg)
-100
-90
-120
-150
-180
0
10
System: Gcom
Phase Margin (deg): 67.3
Delay Margin (sec): 0.0457
At frequency (rad/sec): 25.7
Closed Loop Stable? Yes
10
1
2
10
Frequency (rad/sec)
Plots of uncompensated and compensated are:
10
3
10
4
Bode Diagram
Magnitude (dB)
50
0
-50
Phase (deg)
-100
-90
-120
-150
-180
0
10
System: Gcom
Phase Margin (deg): 67.3
Delay Margin (sec): 0.0457
At frequency (rad/sec): 25.7
Closed Loop Stable? Yes
10
1
System: Gunc
Phase Margin (deg): 28
Delay Margin (sec): 0.0104
At frequency (rad/sec): 47
Closed Loop Stable? Yes
2
10
Frequency (rad/sec)
a=3.25;
T=0.0085;
K=1;
den1=[1 0];
den2=[1 25];
den3=[T 1];
num1=[K*2500];
num2=(1/a)*[T*a 1];
NUM=conv(num1,num2);
DEN=conv(den1,conv(den2,den3));
Gcom=tf(NUM,DEN)
bode(Gcom)
% GCL=feedback(Gcom,1);
% step(GCL)
hold
DENunc=conv(den1,den2);
Gunc=tf(num1,DENunc)
bode(Gunc)
Let us look at the transient response:
10
3
10
4
Step Response
1.5
System: GCLunc
Peak amplitude: 1.44
Overshoot (%): 44.4
At time (sec): 0.0642
System: GCL
Peak amplitude: 1.05
Overshoot (%): 4.81
At time (sec): 0.122
System: 1GCLunc
Rise Time (sec): 0.0254
Amplitude
System: GCL
Rise Time (sec): 0.0561
0.5
0
0
0.05
0.1
0.15
0.2
0.25
Time (sec)
clear all;clf;close;
a=3.25;
T=0.0085;
K=1;
den1=[1 0];
den2=[1 25];
den3=[T 1];
num1=[K*2500];
num2=(1/a)*[T*a 1];
NUM=conv(num1,num2);
DEN=conv(den1,conv(den2,den3));
Gcom=tf(NUM,DEN)
% bode(Gcom)
GCL=feedback(Gcom,1);
step(GCL)
hold
DENunc=conv(den1,den2);
Gunc=tf(num1,DENunc)
% bode(Gunc)
GCLunc=feedback(Gunc,1);
step(GCLunc)
0.3
0.35
0.4
0.45
Download