Design Tradeoffs Sensitivity ... - Automatic...
Transcript of Design Tradeoffs Sensitivity ... - Automatic...
![Page 1: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/1.jpg)
Last week
Design Tradeoffs
Sensitivity Conservation Law
Linearization around trajectory
-Example: Stabilization of inverted pendulum
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 2: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/2.jpg)
Lecture 4
Use more linear algebra to understand state space realisations
State Space Realizations (pp 139-150)
G(s), denominator and numerator, poles and zeros
Change of coordinates, diagonal and controllable form
State-feedback
Observers
Feedback from estimated states
Integral action by disturbance model
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 3: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/3.jpg)
State-space realization
x = Ax + Bu
y = Cx + Du
sX(s) − x0 = AX(s) + BU(s)
Y (s) = CX(s) + DU(s)
[sI − A]X(s) = x0 + BU(s),
Y (s) =(C[sI − A]−1B + D
)︸ ︷︷ ︸
G(s)
U(s) +(C[sI − A]−1)
x0
y(t) = (g ∗ u)(t) + CeAtx0
Char. polynomial: det[sI − A] = sn + a1sn−1 + . . . + an
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 4: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/4.jpg)
Poles and Zeros
Pole λ, eigenvalue to A, eigenvector v
dx
dt= Ax + Bu, Av = vλ, eAtv = veλt
u = 0, x(0) = v ⇒ x(t) = eAtx(0) = veλt
Zero z: Exists x0, so that x(0) = x0 och u(t) = u0ezt
gives x(t) = x0ezt, and y(t) = y0ezt = 0.
zx0ezt = Ax0ezt + Bu0ezt⇔ [A − zI]x0 + Bu0 = 0
y(t) = Cx(t) + Du(t) = (Cx0 + Du0)ezt = 0
A − zI B
C D
︸ ︷︷ ︸M(z)
x0
u0
= 0
z is called a zero if the matrix M(z) looses rank.
Matlab: eig([A,B;C,D],diag([1,1,0])) (for n = 2)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 5: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/5.jpg)
Diagonalisation by coordinate change
If we have n linear independent eigenvectors then
Av1 . . . vn
=
v1λ1 . . . vnλn
=
v1 . . . vn
︸ ︷︷ ︸=:T −1
Λ
T AT −1 = Λ
T eAtT −1 = eΛt
If x = Ax, the coordinate change z = T x gives z = Λz.
G(s) = C(sI − A)−1B = CT −1︸ ︷︷ ︸
C
(sI − T AT −1︸ ︷︷ ︸
A
)−1 T B︸︷︷︸B
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 6: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/6.jpg)
Coordinate change to diagonal form
Using the coordinate change T we get the diagonal form (parallell
systems)
z =
λ1 0λ2
. . .
0 λn
z +
β1
β2...
βn
u
y =γ1 γ2 . . . γn
z
G(s) =β1γ1
s − λ1+ . . . +
βnγn
s − λn
Corresponds to partial fraction decomposition of G(s)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 7: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/7.jpg)
Controllable form
A system with this structure is said to be on controllable form
x =
−a1 −a2 . . . an−1 −an
1 0 0 00 1 0 0...
0 0 1 0
x +
100...
0
u
We see that
s + a1 a2 . . . an−1 an
X(s) = U(s)
sXk+1(s) = Xk(s) ⇒ Xn−k(s) = skXn(s), k = 1, . . . , n − 1
(sn + a1sn−1 + . . . + an−1s + an)Xn(s) = U(s)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 8: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/8.jpg)
Controllable form, cont’d
Since
y =b1 b2 . . . bn−1 bn
x
Y (s) = b1X1(s) + b2X2(s) + · · · + bnXn(s)
= (b1sn−1 + b2sn−2 + . . . + bn)Xn(s)
we get
Y (s) =b1sn−1 + b2sn−2 + . . . + bn
sn + a1sn−1 + . . . + an−1s + an
U(s)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 9: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/9.jpg)
State Feedback
{dx
dt= Ax + Bu
y = Cx
u = −Lx + lrr
{dx
dt= (A − BL)x + Blrr
y = Cx
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 10: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/10.jpg)
State Feedback on Controllable Form
dx
dt=
−a1 − l1 −a2 − l2 . . . −an−1 − ln−1 −an − ln1 0 0 00 1 0 0...
0 0 1 0
x +
lr00...
0
r
y =b1 b2 · · · bn
x
pi = ai + li
G(s) =b1sn−1 + b2sn−2 + . . . + bn
sn + p1sn−1 + . . . + pn
lr
Can change denominator (poles) with L. No change of numerators (zeros).
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 11: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/11.jpg)
Zero and state feedback
Zeros are never changed with state feedback
A − BL − zI BlrC 0
=
A − zI B
C 0
I 0−L lrI
Looses rank for the same z. Hence same zeros.
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 12: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/12.jpg)
Observers
dx
dt= Ax + Bu
y = Cx+n
dx
dt= Ax + Bu + K(y − Cx)
x = x − x
dx
dt= (A − KC)x−Kn
K: tradeoff between estimator convergence speed and noise gain
”Duality” between state feedback and observers
A ↔ AT
B ↔ CT
L ↔ KT
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 13: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/13.jpg)
Observer form
dz
dt=
−a1 1 0 . . . 0−a2 0 1 . . . 0
...
−an−1 0 0 . . . 1−an 0 0 . . . 0
z +
b1
b2...
bn−1
bn
u
y =1 0 0 . . . 0
z
Gives A − KC a nice structure.
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 14: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/14.jpg)
Feedback from estimated states
Process
✛
Observerare✲
✛
[lr −L]✛
✲
✛
✛
v
r
ux
y
z
Process:
{x(t) = Ax(t) + B[u(t) + v(t)]
y(t) = Cx(t) + n(t)
Observer:
{d
dtx(t) = Ax(t) + Bu(t) + K[y(t) − Cx(t)]
u(t) = −Lx(t) + lrr(t)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 15: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/15.jpg)
Closed loop system properties
Eliminate u and y:
d
dtx(t) = Ax(t) − BLx(t) + B(u(t) + v(t))
d
dtx(t) = Ax(t) − BLx(t) + K[Cx(t) − Cx(t)] + Kn(t)
Introduce x = x − x
d
dt
[x(t)x(t)
]=
[A − BL BL
0 A − KC
] [x(k)x(k)
]+
[B(u(t) + v(t))
−Kn(t)
]
Two kind of poles to the closed loop system:
Process poles: 0 = det(sI − A + BL)
Observer poles: 0 = det(sI − A + KC)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 16: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/16.jpg)
Example – Double integrator
dx
dt=
0 10 0
x +
01
u
y =1 0
x
Choose for example
det(sI − A + BL) = det
s −1l1 s + l2
= s2 + s + 1
i.e. l1 = 1, l2 = 1 and
det(sI − A + KC) = det
s + k1 −1k2 s
= s2 + 2s + 4
i.e. k1 = 2, k2 = 4.
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 17: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/17.jpg)
Example – Double integrator cont’d
Process P (s) = 1s2 with feedback
C(s) = L(sI − A + BL + KC)−1K
gives closed loop system transfer functions[
11+P C
C
1+P CP
1+P C
P C
1+P C
]
with Bode’s amplitude diagrams (Gang of Four)
10-4
10-2
100
102
From: In(1)
To:
Out
(1)
10-2
10-1
100
101
102
10-6
10-4
10-2
100
102
To:
Out
(2)
From: In(2)
10-2
10-1
100
101
102
Bode Diagram
Frequency (rad/s)
Mag
nitu
de (
abs)
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 18: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/18.jpg)
Integral action - alternative method
Instead of the method in AK (lec9) one can extend the system with a
disturbance model and let the Kalman filter estimate a stationary offset
Process
Observer✲
[lr −L −1]✛
✲
✛✛
1s
❄
0
d r
u[x
d
]y
u = lrr − Lx − d
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4
![Page 19: Design Tradeoffs Sensitivity ... - Automatic Controlarchive.control.lth.se/.../FRT130/2016/F4_2016.pdf · Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4. Lecture 4 Use](https://reader036.fdocuments.in/reader036/viewer/2022062605/5fd48b3a52e30e285b77bf2c/html5/thumbnails/19.jpg)
Integral action - design method
Introduce extended state space vector xe :=
[x
d
].
Design Kalman filter for the extended system
xe =
[A B
0 0
]xe +
[B
0
]u
y =[C 0
]xe
and use control signal
u = lrr − Lx − d
It can be shown that this gives integral action in the resulting controller.
Automatic Control LTH, 2014 FRT130 Control Theory, Lecture 4