9/9/2011 Classical Control 1
MM5 Stability Analysis
Readings: • Section 4.4 (stability, p.212-223);• Section 4.3 (steady-state tracking & system type, p.200-210)• Section 3.5 (effects of zeros & add. Poles, p.131-138)• Extra reading materials (p.40-60)
What have we talked in MM4?
• Poles vs time reponses• Feedback charactersitics•Matlab: pzmap(), sgrid
9/9/2011 Classical Control 2
MM4 : Poles vs Performance
9/9/2011 Classical Control 3
Pole locations Time response
MM4: First-order System
9/9/2011 Classical Control
4
t
t
e)ss
L(y(t)
e)s
L(y(t)
ssG
1
1
1)1(
1 :response Step
11 :response Impulse
, :constant time,1:pole
0 assume,1
1)(
Time constant – why?
63%
Time response is determined by the time constantSystem pole is the negative of inverse time constant
9/9/2011 Classical Control 5
MM4: Second-Order System
0 if , :polescomplex
10 if ,1 :polescomplex
1 if , :poles )(identical real
1 if,1 :poles )(different real
1:poles
0,0 assume,2
)(
2,1
22,1
2,1
22,1
22,1
22
2
n
nn
n
nn
nn
n
nn
n
jp
jp
ξp
p
p
ssG
21,
3.0%,355.0%,16
7.0%,5
6.46.4
8.1
ndd
p
p
ns
nr
t
M
t
t
9/9/2011 Classical Control 6
MM4: Summary of Pole vs Performance
9/9/2011 Classical Control 7
MM4: Plot of Pole Locations
s1=tf(1,[1 2 1]); s2=tf(1,[1 1.6 1]);s3=tf(1,[1 1.0 1]);s4=tf(1,[1 0 1]);pzmap(s1,s2,s3,s4)sgrid
9/9/2011 Classical Control 8
Goals for this lecture (MM5)
Stability analysis Definition of BIBO Pole locations Routh criteron
Steady-state errors Final Theorem DC-Gain Stead-state errors
Effects of zeros and additional poles
9/9/2011 Classical Control 9
MM4: Summary of Pole vs Performance
0 if , :polescomplex
10 if ,1 :polescomplex
1 if , :poles )(identical real
1 if,1 :poles )(different real
1:poles
0,0 assume,2
)(
2,1
22,1
2,1
22,1
22,1
22
2
n
nn
n
nn
nn
n
nn
n
jp
jp
ξp
p
p
ssG
, :constant time,1:pole
0 assume,1
1)(
s
sG
How about if these are not satisfied?
9/9/2011 Classical Control 10
System Stability Definitions BIBO stability Internal stability ...
Determination methods:
Impulse response function/sequence Roots of characteristic equation (poles) Routh’s stability criterion Gain and phase margins Nyquist stability criterion
BIBO Stability A system is said to have bounded input-bounded output
(BIBO) stability if every bounded input results in a bounded output (regardless of what goes on inside the system)
The continuous (LTI) system with impuse response h(t) is BIBO stable if and only if h(t) is absolutely integrallable
All system poles locate in the left half s-plane
9/9/2011 Classical Control 11
)())((
|)(|
sHthL
dh
9/9/2011 Classical Control 12
Characteristic equation
All poles (roots of the chracteristic equation) of the continuous system are strictly in the LHP of the s-plane - asymptotic internal stability
(Matlab: roots(den))
BIBO Stability – Characteristic Equation
02 :eauqtion sticcharacteri,2
)(
0 :eauqtion sticcharacteri,)(
2222
2
0
0
0
nn
nn
n ss
sG
sasa
sbsG
n
i
iin
i
ii
m
i
ii
BIBO Stability – Execise (I)
Are these systems BIBO stable?
Intuitive explanation Theoretical analysis
9/9/2011 Classical Control 13
1
2
3
4
9/9/2011 Classical Control 14
Motivation: Testing stability without calculating poles Criterion: For a stable system, there is no changes in sign and
no zeros in the first column of the Routh array.
BIBO Stability – Routh Criterion (I)
9/9/2011 Classical Control 15
BIBO Stability – Routh Criterion (II)
9/9/2011 Classical Control 16
BIBO Stability – Examples
See page 46-49 on the extra readings
BIBO Stability – Execise (II) How about the stability of your project systems?
9/9/2011 Classical Control 17
9/9/2011 Classical Control 18
BIBO Stability – Objectives of Control
Performance: • time domain specifications• Frequency specifications• Dynamic transient responses • Steady-state responses• Continuous control systems• Digital control systems
Control design Objectives:• Closed-loop stability• Good command response• Disturbance attenuation• Robustness
Control design Objectives:• Closed-loop stability• Good command response• Disturbance attenuation• Robustness
BIBO Stability – Stabilizing Control
9/9/2011 Classical Control 19
See page 49-50 on the extra readings
9/9/2011 Classical Control 20
Goals for this lecture (MM5) Stability analysis Definition of BIBO Pole locations Routh criteron
Steady-state errors Final Theorem DC-Gain Stead-state errors
Effects of zeros and additional poles
MM4: Example : First-order System
An design problem: control sys1 so as to have the same performance as sys2
9/9/2011 Classical Control 21
Design tasks: • ”Speed-up” the response• Eliminate the steady-state error
S1=tf(0.95,[10 1]);S2=tf(1,[1 1]); Step(s1,s2)
Steady-State Error Objective:
to know whether or not the response of a system can approach to the reference signal as time increases
Assumption: The considered system is stable
Analysis method: Transfer function + final-value Theorem
9/9/2011 Classical Control 22
Steady-State Error – Final-Value Theorem
9/9/2011 Classical Control 23
S1=tf(0.95,[10 1]);S2=tf(1,[1 1]); Step(s1,s2) )0(1))(1(lim
1)(),())(1(lim
))()()((lim))()((lim)(
0
0
00
GsGs
sRsRsGs
sRsGsRssYsRse
s
s
ss
DC-Gain
Steady-State Error – System Types
9/9/2011 Classical Control 24
Position-error constant Velocity constant Acceleration constant System types (type 0, type I, type II)
)(lim
)(lim
)(lim
2
0
0
0
sGsK
ssGK
sGK
osa
osv
osp
Revisit of example: First-order System (II)
9/9/2011 Classical Control 25
9/0.9510/9
What’s the tpye of original system? Derive the transfer function of the closed-loop system What’s the time constant and DC-gain of the CL system? What’s the feedforward gain so that there is no steady-state
error?
9/9/2011 Classical Control 26
Goals for this lecture (MM5) Stability analysis Definition of BIBO Pole locations Routh criteron
Steady-state errors Final Theorem DC-Gain Stead-state errors
Effects of zeros and additional poles
System Zeros C
hapt
er 6
The dynamic behavior of a transfer function model can be characterized by the numerical value of its poles and zeros
{zi} are the “zeros” and {pi} are the “poles”
in order to have a physically realizable system
9/9/2011 27Classical Control
1 2
1 2(6-7)m m
n n
b s z s z s zG s
a s p s p s p
n m
1:poles
0,0 assume,2
)(
22,1
22
2
nn
n
nn
n
p
ssG
, :constant time,1:pole
0 assume,1
1)(
s
sG
How about the effects of zero(s) to system performance?
Effect of Zero in the Left Half s-PlaneC
hapt
er 6
9/9/2011 28Classical Control
s0=tf(1,[1 1 1]); s1=tf([1 1],[1 1 1]); s2=tf([0.25 1],[1 1 1]); s3=tf([0.1 1],[1 1 1]);s4=tf([0.05 1],[1 1 1]);s5=tf([4 1],[1 1 1]);step(s0,s1,s2,s3,s4,s5), grid
An additional zero in the left half-plane will increase the overshootIf the zero is within a factor of 4 of the real part of the complex poles
Effect of Zero in the Right Half s-PlaneC
hapt
er 6
9/9/2011 29Classical Control
s0=tf(1,[1 1 1]); s1=tf([-1 1],[1 1 1]); s2=tf([-0.25 1],[1 1 1]); s3=tf([-0.1 1],[1 1 1]);s4=tf([-0.05 1],[1 1 1]);s5=tf([-4 1],[1 1 1]);step(s0,s1,s2,s3,s4,s5), grid
An additional zero in the right half-plane will depress the overshootand may cause the step response to start out in the wrong direction
Nonminimum-phase
Cha
pter
6
9/9/2011 30Classical Control
Effect of Zeros (I)
)+(1)+(1
)+K(1=G(s)21
3
sss
9/9/2011 Classical Control 31
s0=tf(1,[4 5 1]); s1=tf([16 1],[4 5 1]); s2=tf([8 1],[4 5 1]); s3=tf([4 1],[4 5 1]);s4=tf([2 1],[4 5 1]);s5=tf([1 1],[4 5 1]);s6=tf([0.5 1],[4 5 1]);s7=tf([-1 1],[4 5 1]);s8=tf([-4 1],[4 5 1]);step(s0,s1,s2,s3,s4,s5,s6,s7,s8); grid; figure; pzmap(s0,s1,s2,s3,s4,s5,s6,s7,s8)
Effect of Zeros (II)
Execise Five Determine system’s stability on slide p.13 Determine your project system’s stability, see
slide p.17 Steady-state error analysis, see slide p.25
9/9/2011 Classical Control 32