Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Control&of&linear&systems&
Theory&
1&
Table&of&contents&
• Mathema'cal*models*
– State&space&representa=on&
– Transfer&func=ons&
– Block&diagrams&
– Frequency&responses&
– Time&delay&
• Closed*loop*control*:*general*principles*
– Basic&scheme&
– Output&unit&feedback&
– Output&unit&feedback&+&precompensator&
– Output&unit&feedback&+&state&feedback&
2&
SPEC&1&:&stability&
Stability&criteria&for&a&polynomial&
&
&Stability&of&a&transfer&func=on&
&Stability&of&a&closed&loop&system&
SPEC&2&:&steady&state&accuracy&
&Sta=c&steady&state&
&Harmonic&steady&state&
&Generalisa=on&
3&
SPEC&3&:&transient®ime&performance&
&Transi=on&between&two&set&points&
&Reference&models&
&Control&input&satura=on&
SPEC&4&:&disturbance&rejec=on&
&Constant&disturbance&
&Asympto=c&rejec=on&of&periodic&disturbances&
&Time&domain&analysis&
&Frequency&domain&analysis& 4&
SPEC&5&:&robustness&
&Stability&margins&
&Sensi=vity&
&Performance&gauges&
&Parameter&sensi=vity&
Controller&structures&
&Lead/lag&compensa=on&
&PID&controller&
5&
References&
•&“Modern&Control&Systems”,&R.C.&Dorf&&&R.H.&
&&&&Bishop,&Pren=ce&Hall,&2005.&
•&“Feedback&Systems&:&an&introduc=on&for&&&&
&&&&scien=sts&and&engineers”,&R.M.&Murray&&&&
&&&&K.J.&Astrom,&
&&&&&&&h]p://www.cds.caltech.edu/~murray/amwiki/index.php?=tle=Main_Page&
•&“Automa=que&:&commande&des&systèmes&
&&&&linéaires”,&P.&de&Larminat,&Hermès,&1996.&&
6&
Mathema=cal&models&
7&
State&space&representa=on&
⇢
ẋ = Ax + Bu + Dv
y = Cx
x = (x1 , x2 , ..., xn )T state vector
n = system order
u = control input
v = disturbance input
y = output
1 adj(sI A)
•&Nota=on&:& (s) = (sI A) =
det(sI A)
10&
Solu=on&of&the&state&space&representa=on&
1 1
x(s) = (sI A) x0 + (sI A) (Bu(s) + Dv(s))
| {z } | {z }
# #
z Z }| {
z }| { t
x(t) = eAt x0 + eAt e A⌧
(Bu(⌧ ) + Dv(⌧ ))d⌧
0
Matrix&exponen=al&
2 k
t t
eAt , I + At + A2 + · · · + Ak + · · ·
2! k!
11&
Transfer&func=ons&
n1 (s) n2 (s)
•& G(s) = , H(s) = , n1 , n2 , d1 , d2 : polynomials in s
d1 (s) d2 (s)
•& deg(ni (s)) < deg(di (s)) n, i = 1, 2
13&
Vocabulary&and¬a=ons&(con%nued)*
•&roots&of&ni(s)&:&«&zeroes&»&of&the&transfer&func=on&
•&roots&of&di(s)&:&«&poles&»&of&the&transfer&func=on&
•&zeroes&of&the&system&=&set&of&the&zeroes&of&G(s)&and&H(s)
•&poles&of&the&system&&=&set&of&the&poles&of&G(s)&and&H(s)&&
& & & & & & &=&&roots&of&the&caracteris=c&polynomial&
Q
i (s zi )
•& G(s) = K Q (MATLAB function : zpk)
j (s pj )
14&
Time&response&
•&Impulse&response&&=&inverse&Laplace&transform&of&the&
& & & & & & &transfer&func=on&
G(s) ! g(t) = CeAt B
H(s) ! h(t) = CeAt D
•&Time&response&(x0&=&0)&(convolu=on)&
Z t
y(t) = [g(t ⌧ )u(⌧ ) + h(t ⌧ )v(⌧ )]d⌧
0
•&MATLAB&func=ons&:&impulse,&step&
15&
Block&diagrams&
•&General&form& (disturbance)&
v
H(s)
v&
&&&&&&u +& y
G(s)
+&
v&
(control& (output)&
&&input)&
Be&careful&:&the&transfer&func=ons&G(s)&and&H(s)&are¬&
Independent!& 16&
•&Algebra&of&the&block&diagrams&
G1(s)* +&
G(s) = G1(s) + G2(s)
+&
G2(s)*
Forward&path&
+&
G1(s)* G1 (s)
q& G(s) =
1 + G1 (s)G2 (s)
G2(s)*
Feedback&path&
•&MATLAB&func=ons&:&series,¶llel,&feedback&& 17&
Mason’s*rule**
The&transfer&func=on&G(s)&of&a&system&is&given&by&the&&
transfer&func=on&of&the&forward&path&between&u&and&y
divided&by&1&plus&the&sum&of&the&transfer&func=ons&in&the&
loop.&
(Simplified&form&for&the&case&of&a&forward&path&with&&
several&non&disjoint&loops.&&
For&the&general&form,&look&at&the&references)&
18&
Frequency&response&
u y
G(s)&
✓ ◆
p I(!)
• |G(j!)| = [R(!)]2 + [I(!)]2 , (!) = arctan
R(!)
19&
Nyquist*diagram*
Polar&representa=on&of&G(jω)&in&the&complex&plane&
MATLAB&func=on&:&nyquist& 20&
Bode*diagram&
MATLAB&func=on&:&bode&&
21&
Pure&delay&
•&MATLAB&func=on&:&pade
22&
Closed&loop&control&
General&principles&
23&
Basic&scheme&of&the&closed&loop&control&
disturbance&
v
control&input&
u System&to&be& output&
controlled& y
state&
x
reference&
signal& Control&
&&&&&&&&&&&&&r law&
model&of&the&system&to&be&controlled?&
Ques=ons&
control&law?& 24&
Why*closed*loop*control?*
•&to&stabilize&an&unstable&system&
•&to&assign&the&system&output&to&a&reference&signal&
•&to&reduce&the&effect&of&the&disturbances&on&the&system&
&&&&dynamics&
•&to&reduce&the&sensi=vity&of&the&system&performance&
&&&&with&respect&to&the&varia=ons&of&its&dynamical&&
&&&&characteris=cs&
25&
Difficul'es*
•&Need&for&accurate&sensors,&sensi=vity&to&the&
&&&&measurement&errors&
•&Feedback&may&induce&instability!&
26&
Output&unit&feedback&
v
system&&
to&be& H(s)
controlled&
y* = r +& u +& y
C(s) G(s)
reference& q& +&
signal&
Transfer*func'ons*
C(s)G(s) H(s)
(r ! y) Tr (s) = (v ! y) Tv (s) =
1 + C(s)G(s) 1 + C(s)G(s)
C(s) H(s)C(s)
(r ! u) Ur (s) = (v ! u) Uv (s) =
1 + C(s)G(s) 1 + C(s)G(s)
27&
Vocabulary*and*nota'ons*
C(s) =&control&law,&control&algorithm,®ulator,&
& &compensator,&controller,…&
28&
Output&unit&feedback&+&precompensator&
v
H(s)
r +& u +& y
Cp(s) C(s) G(s)
q& +&
Transfer*func'ons*
Cp (s)C(s)G(s) H(s)
(r ! y) Tr (s) = (v ! y) Tv (s) =
1 + C(s)G(s) 1 + C(s)G(s)
Cp (s)C(s) H(s)C(s)
(r ! u) Ur (s) = (v ! u) Uv (s) =
1 + C(s)G(s) 1 + C(s)G(s)
29&
Output&unit&feedback&+&state&feedback&
v
r +& u0 +& u y
C(s) A, B, C, D
q& q& x
K
30&
Equivalent*scheme*
v
Heq(s,K)
r +& u0 +& y
C(s) Geq(s,K)
q& +&
31&
YoulaFKucera*parametriza'on*
v
H(s)
G(s)
•&The&four&transfer&func=ons&are&linearly¶metrized&by&Q&:&
v
H(s)
r +& u +& y
Q(s) G(s)
q& +&
+&
Ĝ(s) q& 33&
SPEC&1&:&Stability&
34&
Defini'ons*and*vocabulary*
•&Stable&root&of&a&polynomial&:&strictly&nega=ve&real&part&
•&Stable&zeroes&and&poles&of&a&transfer&func=on&:&idem&
•&A&polynomial&is&stable&if&all&its&roots&are&stable&
•&A&linear&system&&&&&&
ẋ = &Ax& + &Bu&&&is&stable&if&its&characteris=c&
&&&polynomial&det(sI – A)&is&stable&
•&A&transfer&func=on&G(s) = n(s)/d(s) is&stable&if&its&
&&&denominator&is&stable&(=&all&the&poles&are&stable)&
•&A&transfer&func=on&G(s) = n(s)/d(s) is&minimum&phase&if&
&&&its&numerator&is&stable&(=&all&the&zeroes&are&stable)&
35&
Stability&criterion&for&a&polynomial&
s n + a1 s n 1
+ a2 s n 2
+ · · · + an 1 s + an
•&Necessary&condi=on&(Hurwitz)&:& ai > 0
&&&(This&condi=on&is&also&sufficient&if&n&=&1&or&2)&
•&(n&x&n)&Hurwitz&matrix&& 0 1
a1 a3 a5 ··· 0
B 1 a2 a4 0 C
B C
B 0 a1 a3 0 C
(the&nonqexistent& BB 0 1 a2 0
C
C
B C
coefficients&an+j B 0 0 a1 0 C
B C
are&replaced&by&0)& B .. C
@ . A
an 36&
•&RouthqHurwitz&criterion&
&&&Stable&polynomial&iff&all&the&principal&minors&of&the&
&&&Hurwitz&matrix&are&strictly&posi=ve&
a1 a3 a5
a1 a3
1 = a1 > 0, 2 = > 0, 3 = 1 a2 a4 > 0, · · · n >0
1 a2
0 a1 a3
•&LiénardqChipart&criterion&:&it&is&enough&to&test&one&minor&&
&&&out&of&two&
8
< 1 > 0, 3 > 0, 5 >0
&Hurwitz&condi=on&+&&or&&
:
2 > 0, 4 > 0, 6 >0
37&
•&Routh&table&
1= 01 a2 = 02 a4 = 03 · · ·
a1 = 11 a3 = 12 a5 = 13 · · ·
21 22 23 · · ·
.. .. ..
. . .
(n 1),1 0 0···
n,1
i 2,1 i 1,j+1
ij = i 2,j+1
i 1,1
Stable&polynomial&iff&all&the&entries&of&the&first&column&are&
strictly&posi=ve&
38&
Stability&of&a&transfer&func=on&
v n(s) y
H(s) =
d(s)
•&stable&denominator&=&all&the&poles&are&stable&
•&v(t)&bounded&signal& &y(t)&bounded&signal&
Z +1
•& & & |h(t)|dt
& & < & 1& & &impulse&response&absolutely&
&0 & & & & & & &integrable&
39&
Stability&of&a&closed&loop&system&
40&
YoulaFKucera*parametriza'on* v
H(s)
G(s)
•&G(s)&stable&and&proper&
Stable&& Q(s)
closed&loop& ⟺& C(s) =
1 G(s)Q(s)
, Q(s) stable&and&
proper&
(parametriza=on&for&all&the&stabilizing&controllers)& 41&
C(s)Geq (s)
Nyquist*stability*criterion* Tr (s) =
1 + C(s)Geq (s)
(Simplified&version&for&systems&for&which&C(s)Geq(s) does&
not&have&zeroes&with&strictly&posi=ve&real&part)&
The&transfer&func=on&Tr(s)&is&stable&iff&the&Nyquist&curve&of&
C(jω)Geq(jω) does¬&encircle&the&(q1,0)&point&(i.e.&leaves&&
the&(q1,&0)&point&at&its&lew&while&it&is&covered&in&the&direc=on&
&&&&&&&&&&&&&)&
!
0 !1
(For&the&complete&form&of&the&Nyquist&criterion,&see&the&
reference&monographs)&
42&
Fundamental*property*of*the*stabiliza'on*by*state*feedback*
•&the&eigenvalues&of&(A - BK)&can&be&arbitrarily&assigned&via&
&&&an&appropriate&choice&of&K&&
•&in&par=cular,&K&may&be&chosen&such&that&(A - BK)&is&&a&
&&&stable&matrix&
43&
SPEC&2&:&Steady&state&
accuracy&&
44&
Sta=c&steadyqstate®ime&
r̄
•& t 0 set point r(t) = r̄ r(s) =
s
•&no&disturbance&:& v(t) = 0
45&
•&Control&error&:&& e(t) = r̄ y(t)
= (1 Tr (0))r̄
•&Zero&sta=c&error&:&
es = 0 () 1 Tr (0) = 0
b m s m + b m 1 s m 1 + · · · + b1 s + b 0
() Tr (s) =
s n + an 1 s n 1 + · · · + a1 s + a0
b0 = a0 6= 0
46&
Integral*ac'on*********zero*sta'c*error**************
=)
v(t)=0
H(s)
r̄ +& 1 u +& y
C0 (s) G(s)
q& s +&
1
•&Compensator&:& C(s) = C0 (s) =) Tr (0) = 1
s
Closed*loop*equa'ons*
ẋ = (A BK)x + B + Dv K&and&k0&can&be&chosen&so&as&
˙ = k0 (r y) to&arbitrarily&fix&the&poles&of&
the&closed&loop&system&
48&
Harmonic&steadyqstate®ime&
a!0
•&Sinusoidal&setpoint&& r(t) = a sin !0 t r(s) = 2
s + !02
•&No&disturbance& v(t) = 0
49&
Harmonic*error*
50&
Zero*harmonic*error*
v(t)=0
H(s)
1
C(s) = 2 2 C0 (s) =) eh = 0 if r(t) = a sin !0 t
(s + !0 )
51&
Generaliza=on&
•&No&disturbance& v(t) = 0
p
X
• r(t) = ↵0 + ↵1 t + · · · + ↵q tq + k sin(!k t + k)
| {z } k=1
polynomial | {z }
periodic signal
p
Y
1 1
• C(s) = 2 C0 (s) =) lim e(t) = 0
sq+1 2
(s + !k ) t!1
k=1
52&
SPEC&3&:&Transient&&
regime&behaviour&
53&
Transi=on&between&two&set&points&
Tr(s)&stable&
Tr(0) =&1&
tr&:&response&=me&(5%&se]ling&=me)&
|y(t) y2⇤ | 0.05(y2⇤ y1⇤ ), 8t tr
D&:&overshoot&percentage&&
y(t)max y2⇤
D= ⇤ ⇤ ⇥ 100
y2 y 1
54&
!n2 1
Tr (s) = 2 2
=
s + 2⇣!n s + !n 1 + 2⇣Tn s + Tn2 s2
0<⇣1 1<⇣
3 3
p
tr ⇣!n 2
✓ ◆ !n (⇣ ⇣ 1)
p ⇣⇡
D 100 exp 0
1 ⇣2
p
0<⇣1 two complex conjugate poles ⇣!n ± j!n 1 ⇣2
p
1<⇣ two real poles !n (⇣ ± ⇣2 1)
55&
!n2 1
Tr (s) = 2 2
=
s + 2⇣!n s + !n 1 + 2⇣Tn s + Tn2 s2
⇣ D
0.25 44,4%
0.4 25,4%
0.5 16,3%
0.6 9,5%
0.7 4,6%
0.8 1,5%
1 0%
Step&response& 56&
Reference&model&for&Tr(s)
•&Tr(s) without&zero&
•&Zero&sta=c&error&(Tr(0) =&1)&
1 1
Tref (s) = 2 2
⇥Y
1 + 2⇣Tn s + Tn s (1 + sTj )
j
Y
↵j
!n2 j
= ⇥ Y
s2 + 2⇣!n s + !n2 (s + ↵j )
j
overshoot&D negligible&poles&
response&=me&tr ↵j ⇡ 10!n
57&
The&transfer&func=ons&of&Graham&&&Lathrop&
Z 1
ITAE criterion : M in t|y ⇤ y(t)|dt (step response)
O
p b1 b2 b3 b4 p b1 b2 b3 b4
2 1.4 2 3.20
3 2.15 1.75 3 3.25 1.75
4 2.70 3.40 2.10 4 5.14 4.39 2.41
5 3.40 5.50 5.00 2.80 5 5.24 6.30 6.50 2.19
58&
Transfer&func=ons&with&a&stable&zero&
⇣ D (%)
T↵ = 0 T↵ = Tn
0.5 16.3 30 The&effect&of&the&presence&
0.6 9.5 20 of&the&zero&of&Tr(s)&(Tα&>&0)&
0.7 4.6 11
0.9 0.1 2 is&to&increase&the&overshoot&
59&
Transfer&func=ons&with&an&unstable&zero&
Nonqminimum&phase&system&
Example&:&Tα&=&Tn&=&1,&ζ&=&0.7&
Step&response&
60&
Control&by&output&unit&feedback&and&state&feedback&
r +& k uc u +& y
SAT G(s)
q& s +&
=) risk&of&windqup&of&the&integral&ac=on&
62&
An'Fwindup*mechanism*
v
+& H(s)
q&
r +& e +& k +& y
uc SAT G(s)
q& +& s u +&
duc
= ke + k↵(u uc )
dt
63&
An=qwindup&mechanism&:&illustra=on&
20 5
10
0
0
y
y
!5
!10
!20 !10
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
2 2
1 1
u
u
0 0
!1 !1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
1 0.04
0.5
0.02
integrale
integrale
0
0
!0.5
!1 !0.02
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
t t
without&an=qwindup& with&an=qwindup&
64&
Internal*model*method*
v
H(s)
r +& u +& y
Q(s) SAT G(s)
q& +&
+&
SAT
model& Ĝ(s) q&
65&
SPEC&4&:&disturbance&
rejec=on&
66&
Constant&disturbance&
•t 0 v(t) = v̄ constant
• r(t) = 0
sta=c&gain&
67&
Exact&asympto=c&compensa=on&of&a&&
constant&disturbance&:&integral&ac=on&
v(t)
integral& H(s)
ac=on&
r(t) +& 1 u(t) +& y(t)
C0 (s) G(s)
q& s +&
68&
Exact&asympto=c&compensa=on&of&a&&
sinusoidal&disturbance&
a
• v(t) = a sin !0 t, v(s) = 2
s + !02
Z +1
sup(emax ) sup(emean )
• = |hv (t)|dt = sup|Tv (j!)|
vmax vmean !
|0 {z }
khv (t)k1 = kTv (j!)k1
70&
Disturbance&step&response&
!n2 s
Tv (s) = 2 Step&response&&&&&e(t) = r̄ y(t)
s + 2⇣!n s + !n2
•0<⇣<1
!n ⇣ ⇣p ⌘ ⌘
⇣!n t
e(t) = p e sin !n 1 ⇣2 t
1 ⇣2
ab
•⇣>1 e(t) = e at e bt
b ⇣a p ⌘
a = !n ⇣ ⇣2 1
⇣ p ⌘
b = !n ⇣ + ⇣ 2 1
71&
Frequency&domain&analysis&&
of&the&disturbance&rejec=on&
•&Rela=ve&sensi=vity&to&the&disturbance&&
Tv (j!)
Sv (j!) =
H(j!)
72&
•&Output&unit&feedback&
1
Sv (s) =
1 + C(s)G(s)
•&Bode’s*integral*formula*
&&&If&the&rela=ve°ree&of&
C(s)G(s) 2
Z 1 X
ln|Sv (j!)|d! = ⇡ Re(pk )
0 k
unstable&poles&
of&C(s)G(s)
73&
SPEC&5&:&robustness&
74&
Stability&margins&
•&Safety&margin&with&respect&to&the&risk&of&instability&&
&&&of&closed&loop&systems&
•&Measure&of&the&admissible&devia=on&between&the&model&
&&&of&the&system&to&be&controlled&and&the&true&system&
75&
Stability*margin*with*the*RouthFHurwitz*criterion*
The&closed&loop&system&has&a&stability&margin&σR&>&0&if&
the&real&parts&of&the&poles&of&the&system&are&smaller&or&
equal&to&–σR&
This&condi=on&can&be&easily&tested&by&replacing&s&by&
s&–&σR&in&the&characteris=c&polynomial&and&by&using&the&
RouthqHurwitz&criterion&for&the&modified&polynomial&
76&
Stability*margin*with*the*Nyquist*criterion*
•&(absolute)&stability&margin&
M = inf |1 + C(j!)Geq (j!)|
!
•&gain&crossover&frequency&
!c :| C(j!c )Geq (j!c ) |= 1
•&phase&margin&
M = arg[C(j!c )Geq (j!c )] + 180
77&
!n2
C(s)Geq (s) =
s(s + 2⇣!n )
!c !b
⇣ M M
!n !n
0.25 0.93 28 1.5 0.20
0.4 0.85 43 1.35 0.36
0.5 0.74 52 1.25 0.46
0.6 0.71 59 1.15 0.55
0.7 0.65 65 1.00 0.62
0.8 0.59 69 0.85 0.67
1 0.49 76 0.75 0.75
78&
Sensi=vity&of&Tr(s)&with&respect&to&G(s)
dTr (s) G(s)
Sr (s) =
dG(s) Tr (s)
•&Output&unit&feedback&:&&
1 Tv (s)
Sr (s) = = = Sv (s)
1 + C(s)G(s) H(s)
79&
Performance&gauges&
(absolute&stability&margin)&
High&frequency&gauge&–&Robustness&:&
•&Neglected&dynamics&
•&Measurement&noise&a]enua=on&
Low&frequency&gauge&–&Performance&:&
•&Reference&trajectory&tracking&
•&Load&disturbance&a]enua=on&
81&
Parameter&sensi=vity&:&root&locus&
•&Characteris=c&polynomial&:&f(s) = f1(s) + αf2(s) α&>&0&
•&Auxiliary&transfer&func=on&:&
m
Y
(s zi )
f2 (s)
F (s) = = k i=1
n , mn
f1 (s) Y
(s pj )
j=1
•&Graphical&analysis&of&the&sensi=vity&of&the&poles&of&the&
&&&system&(=&the&roots&of&f(s))&with&respect&to&the&varia=ons&
&&&of&the¶meter&α
82&
Root*locus*(con'nued)*
•&The&poles&pj&de&F(s)&belong&to&the&locus.&They&correspond&
&&&to&α&=&0.&They&are&denoted&by&a&cross&X.&
•&The&zeroes&zi&de&F(s)&belong&to&the&locus.&They&correspond&
&&&to&α&=&+∞.&They&are&denoted&by&a&circle&O.&
•&The&poles&and&zeroes&of&F(s)&are&linked&by&«&branches&»&
&&&that&correspond&to&the&values&of&the&roots&of&f(s)&for&α
&&&going&from&0&to&+∞.&They&are&as&many&branches&as&poles&
&&&of&F(s).&
•&MATLAB&func=on&:&rlocus&
83&
Controller&structures&
84&
1 + sTd
Lead&compensator&
1 + s↵Td
0<↵<1
1 + s↵Td
Lag&compensator&
↵(1 + sTd )
85&
1 + sTd
Analysis&of&the&lead&compensator&
1 + s↵Td
Consider the frequency !c⇤ such that
1 1
2 log !c⇤ = log + log
Td ↵Td
1
i.e. !c⇤ = p
Td ↵
At&this&frequency&corresponds&the&maximum&phase&
1 ↵
'c = arctg p
2 ↵
87&