Control Principles For Engineered Sysrems 5SMC0
Control Principles For Engineered Sysrems 5SMC0
Feedback Control
Pole Placement
Disturbance rejection and Reference Tracking
Feedback Control
det(Acl,des ) = s 2 + 4s + 3, s = −1, , s = −3
◮ z2 is uncontrollable.
State Feedback Control
◮ Observations
◮ The pair (A, B) must be controllable.
◮ Controllable systems allow to assign system modes arbitrarily
in the complex plane.
◮ Example:
% & % &
1 1 1
ẋ(t) = x(t) + u(t)
0 −2 0
% &
1 − k1 1 − k2
ẋ(t) = x(t)
0 −2
◮ The pair (Ã11 , B̃1 ) is controllable, the modes of (Ã11 − B̃1 K̃1 )
can be arbitrarily assigned.
Take Home Message
ẋ = Ax(t) + Bu(t)
y = Cx(t)
+ . + .
−an−1 −an−2 ··· −a1 −a0 1
, 1 0 ··· 0 0 / , 0 /
, / , /
, 0 1 ··· 0 0 / , /
A=, /,B = , 0 /
, .. .. .. .. / , .. /
- . . ··· . . 0 - . 0
··· ··· ··· 1 0 0
' (
C = bn−1 bn−2 · · · b1 b0
State Space Representation of Transfer functions-Recap
◮ Given SISO transfer function of the form
◮ Choosing
α2 = 16 a2 = 2 k1 = α2 − a2 = 16 − 2 = 14
α1 = 39.55 a1 = 15 k2 = α1 − a1 = 39.55 − 15 = 24.55
α0 = 53.26 a0 = 18 k3 = α0 − a0 = 53.26 − 18 = 35.26
Pole Placement-Extension to Higher Order Systems
◮ In case the the system is not in control canonical form,
transform it to this form using
x →z x = Tz
ż = T −1 ATz + T −1 Bu(t)
u(t) = −K̂ z
u = −Kx
+ .
k11 k12 ··· k1n
, .. .. .. /
, . . ··· . /
,
u=, . /
.. .. /
- .. . ··· . 0
km1 km2 ··· kmn
◮ For fixed closed loop poles, the state feedback gain matrix is
not unique
Pole Placement-Extension to Higher Order Systems
◮ Some options
◮ Set some of the gains to zero.
◮ The state variable corresponding to that column is not needed
so there is no need to measure it.
◮ Select a particular structure for the gain matrix
◮ Relate the gains to proper physical quantities
# &
! " ! " x1
u1 k11 0 k13 0 $ x2 '
= $ '
u2 0 k22 0 k24 % x2 (
x4
Example-Quadruple Tank system
Recall
% −0.3477 0 0.4982 0
&
0 −0.2306 0 0.2877
ẋ = 0 0 −0.4982 0 x+
0 0 0 −0.2877
% 6.3662 0
&
0 9.5493
0 22.2817 u
25.4648 0
% &
1 0 0 0
y= x
0 1 0 0
Example-Quadruple Tank system
% &
∆F1
u= ,
∆F2
+ .
0.0821
, 0.1867 /
x0 = ,
- 0.040 0
/
0.12
% &
0.0001 0.0021 0.0016 0.0090
◮ K=
0.0007 0.0002 0.0079 −0.0004
Pole Placement-Disturbance rejection and reference
Tracking
◮ Consider the linear time invariant system
˙
where d(t) is is the disturbance modeled by d(t) = Ad d(t)
◮ Consider a reference r (t) with the dynamics r˙(t) = Ar r (t)
◮ Define tracking error e(t) = x(t) − r (t)
◮ The dynamics of tracking error then becomes
ė = ẋ − r˙ = Ax + Bu + Ed − Ar r
= Ax + Bu + Ed − Ar r + Ar − Ar
= A(x − r ) + (A − Ar )r + Bu + Ed
% &
' ( r
= Ae + Bu + Fv , F = A − A r E ,v =
d
Pole Placement-Disturbance Rejection and Reference
Tracking
◮ Consider a linear control law
y = Css ess
Recall
% −0.3477 0 0.4982 0
&
0 −0.2306 0 0.2877
ẋ = 0 0 −0.4982 0 x+
0 0 0 −0.2877
% 6.3662 0
&
0 9.5493
0 22.2817 u
25.4648 0
% &
1 0 0 0
y= x
0 1 0 0
Example-Quadruple Tank system
◮ Reference tracking
◮ Reference trajectory
r =[ 0.1 0 0 0 ]
◮ Asymptotically stable
error dynamics
eig (A − BKe ) < 0
% &
K = 0.0001
0.0007
0.0021
0.0002
0.0016
0.0079
0.0090
−0.0004
s 2 + 2ξωn s + ωn2
◮ Then place the rest of the poles in such a way that they are
much faster than the dominant second order behaviour
◮ Performance criteria for second order systems
◮ Stability, Settling time, percent overshoot, rise time
◮ Rule of Thumb for second order systems
1 + 1.1ξ + 1.4ξ 2
tr = rise time
ωn
3
ts = settling time
ξωn
√−ξπ
PO = 100 ∗ e 1−ξ2 percentage overshoot
Where To Place the Poles?
◮ For the single input case, there are 3 different methods to find
the state feedback gain which is unique
◮ Equating coefficients of the same power of s
◮ Bass-Gura formula
◮ Ackerman?s formula 1
◮ In Matlab, commands place, acker can be used
◮ Pole placement is simple but still heuristic
1
Read the following appendix
Appendix: Pole Placement-Higher Order Systems
◮ Goal: Find K such that
◮ For n = 3
Â0 = I
Â1 = A − BK
Â2 = (A − BK )2 = A2 − ABK − BK Â
Â3 = A3 − A2 BK − ABK Â − BK Â2
◮ We get
Φ(Â) = A3 + α2 A2 + α1 A + α0 I − α1 BK − α2 ABK + α2 BK Â
− A2 BK − ABK Â − BK Â2 = 0
Appendix: Pole Placement-Higher Order Systems
◮ Rearranging
◮ where