# Sample Solution Example Set 6: Controllability & Observability

## Transcription

Sample Solution Example Set 6: Controllability & Observability
```Signal and System Theory II, FS 2014
Prof. J. Lygeros
Automatic Control Laboratory
ETH Zurich, ETL I28
8092 Zurich
Sample Solution Example Set 6: Controllability & Observability
Handed out:
Exercise 1
Thursday, 17 April 2014
Minimum Energy Control
(a) The system is controllable if the controllability matrix P has full rank. P = [B AB], so
" 1
#
1
2
2
− (R1 +R
− (R1 +R
2
2
1
C
C
2 )C
2 )C
P =
.
2R1 R22
2R1 R22
R2
R1 + R2
− RL2 − (R1 +R
2
L
(R1 +R2 )L2
2 )L
Note that
det
1
C
R2
L
1
C
− RL2
=−
2R2
6= 0.
LC
Therefore rank(P ) = 2, which implies that P is full rank and hence the system is controllable.
(b) We observe only one of the two states, and since there is no coupling between the states in the
dynamics
the
system is not observable. Alternatively one could check the observability matrix
C
Q=
.
CA
1
0
Q=
.
2
− (R1 +R2 )C 0
We obtain that rank(Q) = 1, and hence the system is unobservable.
(c) The system is controllable, and hence the minimum energy input for t ∈ [0, 1] is given by
u(t) = B T eA
where Wc =
R1
0
T
eAτ BB T eA
1
τ
T
(1−t)
Wc (1)−1 x(1),
dτ is the controllability gramian. Evaluating we get
−τ
1 1 1
e−τ
0
1 1
e
Wc (1) =
−τ
0
e
1
−1
1
−1
0
4
0
Z 1 −2τ
1
1
e
0
1 0
= (1 − e−2 )
.
=
−2τ
0
e
0 1
2 0
4
Z
1
0
e−τ
dτ
Then,
2
t−1
e
1 − e−2
4
t−1
e
=
1 − e−2
u(t) =
Exercise 2
1
1
1
−1
1
.
0
1
0
0
1
1
1
Controllability and controller design
(a) The state equations for Figure 2 are
x(t)
˙
=
y(t)
(b) The controllability matrix is P =
1
1
−3
1
=
−1
α
=
B
AB
x(t) +
1
0
u(t)
(1)
x(t).
1
0
(2)
−1
α
. Hence, det(P ) = α and the system is
controllable unless α = 0.
(c) The control law u(t) = K(α)x(t) drives the state to zero for any initial condition if and only if the
closed loop system is asymptotically stable. The closed loop system is
x(t)
˙
= Ax(t) + BK(α)x(t) = [A + BK(α)] x(t).
For α 6= 0
The system is controllable therefore it is always possible to find a matrix K such that A + BK is
asymptotically stable.
−1 1
1 k1 − 1 k2 + 1
k1 k2 =
A + BK =
+
.
α 1
0
α
1
Its characteristic polynomial is
det(sI − (A + BK)) = s2 − k1 s + k1 − 1 − α(k2 + 1).
We have an asymptotically stable matrix if, for example, we choose to allocate both the eigenvalues
in −1. The characteristic polynomial is in this case (s + 1)2 = s2 + 2s + 1. By comparison we obtain
−k1 = 2
⇒
k1 = −2
k1 − 1 − α(k2 + 1) = 1
.
Therefore K(α) = −2 − 1 + α4
⇒
4
k2 = − 1 +
α
For α = 0
A + BK =
−1
0
1
1
+
1
0
k1
k2
=
k1 − 1
0
k2 + 1
1
.
Irrespective of the choice of K, one eigenvalue is 1. Therefore for α = 0 the system is not stabilizable
and it is not possible to find K such that the closed loop system is asymptotically stable.
2
Exercise 3
(1)
Reachable states, Unobservable states & Duality
The output of a continuous-time linear time-invariant system is given by
y(t) = CeAt x0 + C
Z
t
eA(t−τ ) Bu(τ )dτ + Du(t).
0
We want to find the set of states x0 whose influence on the output is zero, i.e. for which the term
CeAt x0 is zero for all t ≥ 0. If we define f (t) = CeAt x0 , t ≥ 0, then by the Taylor series expansion
of f (t), we have that
f (t) = f (0) + f 0 (0)t + f 00 (0)
t2
+ · · · = 0 ∀t ≥ 0
2!
in other words
f (0)
f 0 (0)
= Cx0
= CAx0
..
.
=0
=0
f n−1 (0)
f n (0)
= CAn−1 x0
= CAn x0
..
.
=0
=0
(3)
From the Cayley-Hamilton theorem, we know that An+k is a linear function of I, A, . . . An−1 , for
all k = 0, 1, . . .. Therefore, if Cx0 = CAx0 = . . . = CAn−1 x0 = 0, because of linearity, we also
have CAn+k x0 = 0 for all k = 0, 1, . . . . That means, that the above infinite system of equations is
equivalent to the following reduced system
f (0)
f 0 (0)
f n−1 (0)
= Cx0
= CAx0
..
.
=0
=0
= CAn−1 x0
= 0,
(4)
which, in turn, is equivalent to Qx0 = 0. Hence, the set of states x0 satisfying (4) is the nullspace
of the observability matrix


C
 CA 


Q=
.
..


.
CAn−1
(2)
We denote by R0 the set of states that can be reached from the origin. In order to prove that
R0 = range(P ) (where P is the controllability matrix), we show R0 ⊆ range(P ) and R0 ⊇ range(P ).
Proof of R0 ⊆ range(P ):
3
Let x ∈ R0 . Then, by definition, for some time t > 0 there exists an input u(·) : [0, t] → Rm such
that
t
Z
eA(t−s) Bu(s)ds
x=
0
2 2
n n
We already know that eAt = I + At + A 2t + · · · An!t + · · · and we can also write (by the CayleyHamilton Theorem) Ak for k ≥ n as a linear combination of I, A, A2 , · · · , An−1 . Hence higher order
terms can be grouped together leading to:
eAt = k0 (t)I + k1 (t)A + . . . + kn−1 (t)An−1
for some appropriately defined functions ki (t). This fact enables us to rewrite the above expression
for x as
x=
n−1
X
Ai B
Z
t
ki (t − s)u(s)ds,
0
i=0
from which we can deduce that x ∈ range(P ), where P = [B AB A2 B · · · An−1 B] is the controllability matrix of the system. One can see this by rewriting the above equation in matrix form:
x = P z, where P is the controllability matrix and
Z t
Z t
Z t
z := [
k0 (t − s)u(s)ds
k1 (t − s)u(s)ds · · ·
kn−1 (t − s)u(s)ds]T .
0
0
0
Proof of R0 ⊇ range(P ):
In order to prove the reverse inclusion, we show first that
range(P ) = range(Wc (t)), ∀t > 0
(5)
where Wc (t) is the controllability gramian at time t:
Z t
T
Wc (t) =
eAs BB T eA s ds.
0
Note that, by its definition, Wc (t) is a symmetric matrix. Also, as seen in the lecture notes slide
4.19,
null(Wc (t)) = null(P T ).
But, as we know from linear algebra, (range(X))⊥ = null(X T ), for any real matrix X. (In words,
this says that the set of vectors that are orthogonal to all vectors in the range of X is equal to the
nullspace of X T ). This fact enables us to write
null(Wc (t)) = null(P T ) = (range(P ))⊥ ⇐⇒
range(P ) = (null(Wc (t)))⊥ = range(Wc (t)).
The last equality holds because Wc (t) is symmetric, which implies that its range space is the
orthogonal complement of its nullspace. Now let us assume that x ∈ range(P ) and fix t > 0. Since
range(P ) = range(Wc (t)), ∀t > 0, it holds that x = Wc (t)z, for some z, i.e.
Z t
T
x = Wc (t)z =
eA(t−s) BB T eA (t−s) zds.
0
4
Setting u(s) = B T eA(t−s) z, for 0 ≤ s ≤ t, we see that
Z
x=
t
eA(t−s) Bu(s)ds,
0
which implies that x ∈ R0 .
Having proven both inclusions, we conclude that R0 = range(P ).
(3)
System (1) is controllable if and only if
rank( B
AB
Consider now the observability condition

BT

−B T AT

rank 
..

.
for system (2). System (2) is observable if and only if



BT

 B T AT  


(7)
 =n⇔
 = n ⇔ rank 
..



.
...
An−1 B ) = n.
B T (AT )n−1
(−1)n−1 B T (AT )n−1
⇔ rank( B
AB
...
An−1 B
T
(6)
) = n ⇔ rank( B
AB
...
An−1 B ) = n.
(8)
Hence (2) is observable if and only if (1) is controllable.
Exercise 4
Satellite observability and observer design
(a) State space model of the satellite and sensor system:

 

0
0 1 0
x(t)
˙
= 0 0 0 x(t) +  J1  u(t)
0 0 0
0
1 0 0
y(t) =
x(t) + 0u(t).
0 1 1
(9)
(10)
Observability test: n = 3 so

1

 0

C
0
Q =  CA  = 
0

CA2
0
0
0
1
1
0
0
0

0
1

0
,
0

0
0
Q has 3 linearly independent rows (or columns) so rank(Q) = 3 and the system is observable.
5
(11)
¨
˙
(b) We have J θ(t)
= u(t), y1 (t) = θ(t) + bθ and y2 (t) = θ(t).
Let the state vector be x(t) =
T
˙
[θ(t), θ(t), bθ ] , then, since bθ is constant, the state-space form of the model is


 
0
0 1 0
x(t)
˙
= 0 0 0 x(t) +  J1  u(t)
0 0 0
0
1 0 1
y(t) =
x(t) + 0u(t).
0 1 0
(12)
(13)
Observability test: n = 3 so

1

 0

C
0
Q =  CA  = 
0

CA2
0
0
0
1
1
0
0
0

1
0

0
.
0

0
0
(14)
This has only 2 linearly independent rows (or columns) so rank(Q) = 2 < 3 = n, and hence the
system is not observable.
˙
(c) In this case take the state vector to be x(t) = [θ(t), θ(t),
d]T . We use only the star tracker output:
y(t) = θ(t). So the state space equations are:


 
0 1 0
0
x(t)
˙
= 0 0 J1  x(t) +  J1  u(t)
0 0 0
0
y(t) = 1 0 0 x(t) + 0u(t).
(15)
(16)
Observability test: n = 3 so
 
1
C
Q =  CA  = 0
CA2
0

0
1
0

0
0 .
(17)
1
J
Clearly rank(Q) = 3 = n in this case, so this system is observable. It is therefore possible to
construct a stable observer, such that x
ˆ3 → d as t → ∞.
(d) Design observer:
x
˜˙ (t)
= A˜
x(t) + Bu(t) + L(y(t) − C x
˜(t))
e(t)
˙
(A − LC)e(t).
=
6
(18)
(19)
There are 3 states and 1 output measurement, so the observer gain matrix must have 3 rows and 1
column. So let L = [l1 , l2 , l3 ]T . Then
  



0 1 0
−l1 1 0
l1 (20)
A − LC = 0 0 J1  − l2  1 0 0 = −l2 0 J1 
l3
0 0 0
−l3 0 0
and hence the observer’s eigenvalues are given by the roots of the characteristical polynomial
det[sI − (A − LC)] or

s + l1
det  l2
l3
−1
s
0

0
− J1  =
s
=
s[(s + l1 )s + l2 ] +
s3 + l1 s2 + l2 s +
1
(0 + l3 )
J
l3
J
(21)
(22)
The state estimation errors are to decay with time constant 1 sec, to this end is sufficient to place
all 3 eigenvalues at -1 sec−1 . (Another possibility would be to make the real parts -1, but choose a
conjugate pair of imaginary parts for two of the eigenvalues). That means we want the characteristic
polynomial to be
(s + 1)3 = s3 + 3s2 + 3s + 1.
Comparing coefficients, we see that we need l1 = 3, l2 = 3, l3 = J.
7
```