0% found this document useful (0 votes)
28 views19 pages

Exercise 3 Solutions

Uploaded by

Angelo Stankov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views19 pages

Exercise 3 Solutions

Uploaded by

Angelo Stankov
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

sc42000

Exercise Session 3
Ton van den Boom ([email protected])

Delft Center for Systems and Control, TU Delft

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04


1. State vs Output Feedback

Consider the model

   
−1 0 3 0 0
 4 0 0 2    2 
ẋ =  x+  u,
 0 2 0 0   0 
0 0 −3 0 −1
 
1
y= 0 0 0 x.
2

1. Design a state-feedback controller so that the closed-loop dynamics have eigenvalues in


−1, −1, −2 ± 4i.

2. Exploiting the separation principle close the overall loop by designing an observer-based
feedback that places the poles in −4, −6, −3 ± 2i. Does this observer make sense in
combination with the state-feedback of question 1.1 ?

3. Redesign the observer-based feedback of question 1.2 and place its poles in −1, −1, −2±
4i. Discuss the new observer in closed loop with the state-feedback of question 1.1 .

Solution:
The model is controllable. The controllability Kalman rank matrix indeed is:
 
0 0 12 −24

 2 −2 0 24  .
 0 4 −4 0 
−1 0 −12 12

This can be as well inferred by the structure of the matrices (A, B).
Consider the feedback u = −Kx, where
 
K= k1 k2 k3 k4 .

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 1


The characteristic polynomial of
 
−1 0 3 0
 4 − 2k −2k2 −2k3 2 − 2k4 
A − BK =  1 ,
 0 2 0 0 
k1 k2 k3 − 3 k4

can be computed as:

det(sI − (A + BK)) =
4 3 2
s + (2k2 − k4 + 1) s + (4k3 − k4 ) s +

+ (12k1 − 2k2 − 12k4 − 12) s − 12k1 − 4k3 + 12k4 + 12

Let the desired eigenvalues be −1, −1, −2 ± 4j , which corresponds to the


following characteristic polynomial:

(s + 1)(s + 1)(s + 2 + 4j)(s + 2 − 4j) =


4 3 2
s + 6s + 29s + 44s + 20

By directly equating the coefficients of the two characteristic polynomials, we


obtain:

k1 = −48, k2 = −22, k3 = −5, k4 = −49.

The feedback input can thus be synthesized as


 
u= 48 22 5 49 x.

Now if the state is not available for feedback, we must design an estimator. Notice
that the model is observable. The observability Kalman rank matrix is:
 
0 1 0 0
 2 
 2 0 0 1 .
 −2
 
0 3 0 
2 6 −6 0

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 2


Let us choose to place the eigenvalues of the observer at −4, −6, −3 ± 2j . This
corresponds to the following characteristic polynomial:

(s + 4)(s + 6)(s + 3 + j2)(s + 3 − j2) =


4 3 2
s + 16s + 97s + 274s + 312

The characteristic polynomial of


 
l
 −1 − 1 3 0 

 2 

 l2 
 4 − 0 2 

A − LC =  2 
,
 l 
 0 2− 3 0 0 
 

 2 

l
− 4
 
0 −3 0
2

where
 T
L= l1 l2 l3 l4 ,

can be computed as:

det(sI − (A − LC)) =
   
4 l2 3 l 2
s + +1 s + 2l1 + 2 + l4 s + (3l3 + l4 − 12) s − 3l3 + 12
2 2

This yields:

l1 = −252, l2 = 30, l3 = −100, l4 = 586.

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 3


Hence, an estimator takes the following shape:
 
−1 0 3 0
 100 44 10 100 
x̂˙ =   x̂
 0 2 0 0 
−48 −22 −8 −49
   
0 252
 2   −30 
+ 0  u +  100
   y.

−1 586

Since the model is both controllable and observable, we may now apply the state
feedback from the estimated state as
 
u= 48 22 5 49 x̂.

This completes the design.


Notice that we have placed the eigenvalues of the closed loop observer so that
the dynamics of the estimated error x̃ = x − x̂ are faster than the dynamics
of the observer-based closed-loop system. The first dynamics in fact depend on
the eigenvalues −4, −6, −3 ± 2i, whereas the second dynamics depend on the
eigenvalues −1, −1, −2 ± 4i. Thus, the observer will converge faster than the
overall system.
2

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 4


2. Stabilization by state-feedback: its dependence on the underlying
controllability and its fragility

Consider the model ẋ = Ax + Bu, where


   
−β − 0
A= , B= ,
0 −α 1
and where α, β ≥ 0.
1. Is this system reachable?
 
2. Derive for a general state feedback K = k1 k2 the eigenvalues of the obtained
closed-loop system for  6= 0.
3. Reason on the effect of a small value for , with particular focus on the case  ↓ 0;

Solution:

1. The objective of this exercise is to argue that eigenvalue assignment is a


procedure that lacks robustness, depending on the model parameters. (In
class, we will look at LQR as an alternative to this procedure.)
The controllability Kalman matrix is
 
0 −
[B|AB] = ,
1 −α
which has full rank if  6= 0.
Let us devise a state feedback of the following form: u = −Kx =
−[k1 k2 ]x.
The closed-loop dynamics hinge on the state-space matrix
 
−β −
A − BK = ,
−k1 −α − k2
with associated characteristic polynomial

det(sI − (A − BK)) =
2
s + (α + β + k2 ) s + αβ + βk2 − k1 

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 5


with the following roots:
 
1
q
λ1,2 = −α − β − k2 ± (α − β + k2 ) 2 + 4k1 
2
The eigenvalues of the closed-loop dynamics can be positioned anywhere in
C by proper choice of the parameters k1 , k2 .
2. Selecting  = 0, we obtain:

det(sI − (A + BK)) = (s + β)(s + k2 + α);

λ1 = −β, λ2 = −k2 − α.

Notice that in this case we are able to position one of the eigenvalues of the
closed-loop dynamics exclusively on the real line. This is due to the loss of
controllability associated to the case  = 0.
2

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 6


e 117 Controllability/observability 9: pole-zero cancellation 118

eedback.
u(s)Loss of Observability
3. z(s) and/or Controllability
y(s)
e ! s+3 ! s+1 !
s+1 s+2
oncepts
Recall a topic developed in Lecture 4. Consider system in series:
Simulation diagram (time domain):
rollable
! !! ! ! ! !! ! !
u(t) $ ξ1 z(t) $ ξ2 y(t)
! 2 ! −1 !
vable # # # #
Controllability/observability
−1 " 9: zero-pole cancellation
−2 " 121 Controll

! 1 ! 1 Diagram uni
d as v(s) x(s) w(s)
! s+1 ! s+3 ! "
s+2 s+1 A B
Show that it is controllable, though not observable. Show that this corresponds to C D
zero/pole cancellation in the Transfer Function. Now consider system in series:
Simulation diagram (time domain) *
n 119 Controllability/observability 9: pole-zero cancellation 120 B A

! −1 ! ! ! ! ! ! !! !
v(t) ! ξ2 x(t) ! ξ1 w(t)
! 2 ! ! "
Eigenvectors of#λ1 = −1, λ2 =#−2: # # C
% & −2 " % & −1 "
1 0 CA
m1 = m2 =
−1! 1 !
1 1 Observable,
% & % &
C C
Show that itCA m1 = 0 though not controllable.
is observable, m2 #= 0Show that this corresponds to
CA
/
zero/pole cancellation in01the Transfer
2 Function. / 01 2
unobservable observable
Unobservable eigenvalue λ2 = −1 is9:cancelled
Controllability/observability zero-poleby forming transfer 123
cancellation
Solution:
function
Eigenvectors of λ1 = −1, λ2 3= s−2:
+3
4
Result
−1
For both −" A)# B let
C(sIinstances, + Dus=write out the simple
" two # dimensional state-space
s + 2
1 two models, which are both2 observable and controllable, Let R be
representations of the
m1 = m2 =
interconnect them and 0 show the lack of either property.
−1 to form of
Let us then introduce the transfer functions of the system components (rather
* + * + Let N be
than ofmthe
1 ∈
/ 2-d compositions),
range B AB and show the
m 2
cancellations.
∈ range B AB
, -. / , -. / to form of
uncontrollable controllable
In general,

Uncontrollable
– Ac.Yr. 2016, 1e Sem. Q1 eigenvalue
– Exercise −1 is cancelled
λ =Session by forming transfer
3 – SC42000/EE4C04 7 Definition
function (A, B, C)
0 1
−1 s+3 is observab
C(sI − A) B + D =
s+2
Introducing state variable [ξ1 ξ2 ]T , input u and output y , we have:
   
−1 0 2
A= ,B = ,
−1 −2 −1
 
C= 1 1 , D = [1].

The Kalman controllability matrix is:


 
2 −2
,
−1 0

which is full rank. Thus, the composition is controllable. However the observability
one is:
 
1 1
,
−2 −2

which is not full rank. Thus, the composition is not observable.


Given a state-space representation, a transfer function can be obtained as C(sI −
A)−1 B + D . The first module has the following transfer functions:
s+3
Gf (s) = ,
s+1
whereas the second
s+1
Gs (s) = .
s+2
You can see that the pole of the first TF cancels with the zero of the second TF.
Similarly, for the second model, introducing state variable [ξ1 ξ2 ]T , input
v and output w, we have:
   
−1 2 2
A= ,B = ,
0 −2 −1
 
C= 1 1 , D = [1].

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 8


The Kalman controllability matrix is:
 
2 −4
,
−1 2

which is not full rank. Thus, the composition is not controllable. The observability
one is:
 
1 1
,
−1 0

which is full rank. Thus, the composition is observable.


Now, the first module has the following transfer functions:
s+1
Gf (s) = ,
s+2
whereas the second
s+3
Gs (s) = .
s+1
You can see that the zero of the first TF cancels with the pole of the second TF.
2

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 9


4. Observer Design for DC Servo
Problem 2: Observer design.

u z1

Observer
a1 a2 z2
u s x2 s x1

The Figure above Figure


shows a2:block diagram
Simple model representation
of a DC Servo of a simple model of a DC servo
system.
system. The variable x1 is a voltage signal that corresponds to the output y , whereas x2 is
Figure 2the
shows a block
angular diagram representation of a simple model of a DC servo system: x1 is a voltage signal
velocity.
proportional to the output angular velocity x2 (ie. a tacho signal is not available).
1. Design an observer, with observer gain matrix L = [l1 l2 ]T , for the variables x1 , x2 ,
(a) Design aand
full such
orderthat
observer, with observerpolynomial
the characteristic gain matrix T given by
associated with the error dynamics is given
! "
by: T1
T = , (3)
T2
2 2
∆(s) = s + 2ζωs + ω .
for x1 and x2 so that the characteristic polynomial associated with the error dynamics is given by:
2
e (s) =us and
2. The observer is a system with∆inputs + 2ζxe1ω, eand ωe2 outputs ẑ1 and ẑ2 . Thus, there
s + with (4)
are four possible transfer functions between inputs and outputs these may be included
(“Design” means write the equations for the observer, with expressions for gains T1 and T2 .)
as elements in a 2 × 2 matrix. Evaluate the following matrix of transfer functions M (s)
(b) Now, thebetween
observerthe
is ainputs
system
to with inputs u u
the observer and
andx1x, and outputs zˆ1 andẑzˆ2 .and
Thus,
ẑ2 there are four possible
1 , and its outputs 1
transfer functions between inputs and outputs – these may be included as elements in a 2× 2 matrix. Evaluate
the following matrix of transfer functions M (s) between the inputs
Z1 (s) to the observer u and x1 , and its outputs
Z1 (s)
 
zˆ1 and zˆ2 :  U (s) X1 (s) " 
M (s)!=ẑ1(s)/u(s)
Z (s) ẑ 1 (s)/x (s)  ,
Z21(s)
M (s) = 2 (5)
ẑ2 (s)/u(s)
U (s) ẑ2 (s)/x (s)
X 1(s)
1
as a function of gains T1 and T2 , as well as system parameters a1 and a2 .
as a function of gains l1 and l2 , as well as of the system parameters a1 , a2 .
(c) Now determine M (s) as T2 → ∞. Discuss the meaning of the result.
3. Determine M (s) as l2 → ∞. Discuss the meaning of the result.
Problem 3: Observer design.  
2
4. Consider disturbance v is acting on the state with Rv = 2 and F = and noise
velocity 2
input
w is acting on the output with Rw = 2. Furthermore, consider the variable a2 = 4.
u x1 observed variable
1 2 s T
Compute the Kalman minimizes E{(x(t) − x̂(t)) x2(x(t) − x̂(t))}.
s gain L that 2+s

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 10


observer z1
observer
output

Figure 3: Velocity Observation System.


Solution:
We have:
a
X1 (s) = 2 X2 (s) ⇒ ẋ1 (t) = a2 x2 (t)
s
a
X2 (s) = 1 U (s) ⇒ ẋ2 (t) = a1 u(t)
s
y(t) = x1 (t)

The state-space model follows:


      
d x1 0 a2 x1 0
= + u
dt x2 0 0 x2 a1
 
  x1
y= 1 0 + [0]u.
x2
 
l1
Let us introduce an observer matrix L = . The closed-loop matrix for
l2
the estimator is
 
−l1 a2
A − LC = .
−l2 0

Let us compute the characteristic polynomial:

det(sI − (A − LC)) = s(s + l1 ) + a2 l2 ,

which is then equated to the desired characteristic polynomial, thus obtaining:

ω2
l1 = 2ζω, l2 = .
a2

Let us now look closer at the observer, with variable ẑ = [ẑ1 ẑ2 ]T : ẑ˙ =
Aẑ+Bu+L(y− ŷ) = Aẑ+Bu+L(y−C ẑ) = (A−LC)ẑ+[B L][u y]T ,

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 11


where y = x1 . We obtain:
       
d ẑ1 −l1 a2 ẑ1 0 l1 u
= +
dt ẑ2 −l2 0 ẑ2 a1 l2 y
  
1 0 ẑ1
yz = .
0 1 ẑ2

The transfer function can be directly found as follows:


−1
M (s) = Cz (sI − Az ) Bz + Dz
  −1  
1 0 s + l1 −a2 0 l1
=
0 1 l2 s a1 l2
 
1 a1 a2 sl1 + a2 l2
= .
s2 + l1 s + a2 l2 a1 (s + l1 ) sl2

If l2 → ∞, we have:
 
0 1
lim M (s) = .
l2 →∞ 0 s/a2

Since l2 = ω 2 /a2 , whenever l2 → ∞, then ω 2 → ∞. The speed of the


estimator thus increases in speed and its error converges to zero infinitely fast at
ẋ (t)
the limit. In the long run, we expect ẑ1 (t) → x1 (t), ẑ2 (t) → x2 (t) = 1 a2 ,
and that the effect of the input on the estimate is null.
Linear Quadratic Estimator:
   
0 4   1
A= , C= 1 0 , Rw = 2 , Rv = 2 , F =
0 0 1

This leads the Riccati equation


T T −1 T
AP + P A − P C Rv CP + F Rv F = 0

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 12


with  
p1 p2
P =
p2 p3
Substitution leads to three equations
2
p2 = 4

−4p3 + 0.5 p1 p2 = 2
2
−8p2 + 0.5 p1 = 2

which gives
p1 = 6 , p2 = 2 , p3 = 1
and so
    
−1
T 6 2 1 3
L = P C Rw = 0.5 =
2 1 0 1

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 13


5. Linear Quadratic Control

Consider the state system:


ẋ1 = 5 x1 − 6 x2 + u

ẋ2 = 4 x1 − 5 x2
An LQR controller has been designed for
 
6 10
Qx = , Qu = 0.25 .
10 20
Compute the resulting state feedback K (without using a calculator).
(Hint: the matrix P in the related Riccati-equation has a diagonal form.)

Solution:
Desired characteristic polynomial:
   
5 −6 1
A= , ,B =
4 −5 0

With P A + AT P − P BQ−1 T
u B P + Qx = 0 and
 
p1 0
P =
0 p2
we obtain
" #
10 p1 − 4 p2
1+6 10 p2 − 6p1 + 10
=0
10 p2 − 6p1 + 10 −10 p2 + 20

This results in p1 = 3 and p2 = 2. With


   
p1 0 3 0
P = =
0 p2 0 2
we obtain
 
−1 T   3 0  
K = Qu B P = 4 1 0 = 12 0
0 2

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 14


– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 15
6. Robust control

Consider a (true) system

1
Ptrue (s) =
(s + 2)(0.1 s + 1)2

and a nominal model


1
P (s) =
s+2
The system is in closed loop with a proportional controller C(s) = 50.
(In the configuration of Figure 11.1 in the book.)

1. Does this controller stabilize the nominal model?


2. Does this controller stabilize the true system?
3. If we model this system with an additive uncertainty model, what is ∆(s) ?
4. If we model this system with an multiplicative uncertainty model, what is δ(s) ?
5. Show that the controller does not satisfy the robustness condition for the additive
uncertainty.
6. Show that the controller does not satisfy the robustness condition for the multiplicative
uncertainty.

Solution:

1. Does this controller stabilize the nominal model?


1 50 −1 s+2
S(s) = = (1 + ) =
1 + PC (s + 2) s + 52

Pole in s=-52, so stabilizing.

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 16


2. Does this controller stabilize the true system?

1
S(s) =
1 + PC
50 −1
= (1 + )
(s + 2)(0.1 s + 1)2

(s + 2)(0.1 s + 1)2
=
0.01 s3 + 0.22s2 + 1.4s + 52

Pole in s1 = −24.81, s2,3 = 1.40 ± i 14.41, so not stabilizing.


3. If we model this system with an additive uncertainty model, what is ∆ ?

∆(s) = Ptrue (s) − P (s)


1 1
= −
(s + 2)(0.1 s + 1)2 s+2

1 − (0.1 s + 1)2
=
(s + 2)(0.1 s + 1)2

0.01 s2 + 0.2 s
=
(s + 2)(0.1 s + 1)2

4. If we model this system with an multiplicative uncertainty model, what is δ ?

Ptrue (s) − P (s)


δ(s) =
P (s)

0.01 s2 + 0.2 s  1 −1
= )
(s + 2)(0.1 s + 1)2 s+2

0.01 s2 + 0.2 s
=
(0.1 s + 1)2

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 17


5. Show that the controller does not satisfy the robustness condition for the
additive uncertainty. Robustness condition:

|C(i ω) S(i ω) ∆(i ω)| < 1 ∀ω

Compute

50(s + 2) 0.01 s2 + 0.2 s


C(i ω) S(i ω) ∆(i ω) =
s + 52 (s + 2)(0.1 s + 1)2

0.5 s2 + 10 s
=
(s + 52)(0.1 s + 1)2

For ω = 10 we find

0.5 (iω)2 + 10 (iω)


= |1.0164 + 0.2853i| = 1.0557
((iω) + 52)(0.1 (iω) + 1)2

Condition is not satisfied.


6. Show that the controller does not satisfy the robustness condition for the
multiplicative uncertainty. Robustness condition:

|T (i ω) δ(i ω)| < 1 ∀ω

Compute
0.5 s2 + 10 s
T (i ω) δ(i ω) =
(s + 52)(0.1 s + 1)2
For ω = 10 we find

0.5 (iω)2 + 10 (iω)


= |1.0164 + 0.2853i| = 1.0557
((iω) + 52)(0.1 (iω) + 1)2

Condition is not satisfied.

– Ac.Yr. 2016, 1e Sem. Q1 – Exercise Session 3 – SC42000/EE4C04 18

You might also like