Linear System Control
Controllability and Observability
Unggul Wasiwitono
Mechanical Engineering Department
Faculty of Industrial Technology and Systems Engineering
Controllability Observability
Introduction
In the effort to design controllers for dynamic systems one is often confronted with the
question whether or not it is possible to give a closed loop system an appropriate set of
properties.
Can a controller be designed which will stabilize an unstable system?
Can one be sure that the system state can be forced to achieve any desired value in state
space?
Can one be sure that no state in the system can achieve undesired values?
Is it possible to determine all states in the system from the knowledge available in the
measured system output?
U. Wasiwitono [Linear System Control] - Controllability and Observability
2 / 24
Controllability Observability
Controllability
U. Wasiwitono [Linear System Control] - Controllability and Observability
3 / 24
Controllability Observability
Controllability
Consider the n-dimensional p-input state equation
ẋ = Ax + Bu (1)
Definition 1
The state equation (1) or the pair (A, B) is said to be controllable if for any initial state
x(0) = x0 and any final state x1 , there exists an input that transfers x0 to x1 in a finite time.
Otherwise (1) or (A,B) is said to be uncontrollable.
U. Wasiwitono [Linear System Control] - Controllability and Observability
4 / 24
Controllability Observability
Controllability
The following statements are equivalent.
1 The n-dimensional pair (A, B) is controllable.
2 The n × n matrix
Z t T
Z t T
Wc (t) = eAτ BB T eA τ
dτ = eA(t−τ ) BB T eA (t−τ )
dτ (2)
0 0
is nonsingular for any t > 0
3 The n × np controllability matrix
A2 B An−1 B
C= B AB ··· (3)
has rank n (full row rank)
U. Wasiwitono [Linear System Control] - Controllability and Observability
5 / 24
Controllability Observability
Controllability
The following statements are equivalent.
4 The n × (n + p) matrix A − λI B has full row rank at every eigenvalue, λ, of A
(Popov-Belevitch-Hautus Rank Test for Controllability)
5 If, in addition, all eigenvalues of A have negative real parts, then the unique solution of
AWc + Wc AT = −BB T (4)
is positive definite. The solution is called the controllability Gramian and can be expressed as
Z ∞
T
Wc = eAτ BB T eA τ dτ (5)
0
U. Wasiwitono [Linear System Control] - Controllability and Observability
6 / 24
Controllability Observability
Controllability Example
Given the following single-input two–dimensional linear state equation,
ẋ1 1 5 x1 −2
= + u
ẋ2 8 4 x2 2
−2 8
B= , AB =
2 −8
The controllability matrix C is found
−2 8
C=
2 −8
Clearly, |C| = 0, so the state equation is not controllable.
U. Wasiwitono [Linear System Control] - Controllability and Observability
7 / 24
Controllability Observability
Controllability Example
To see why this is true, consider a different state definition, with coordinate transformation
x = Tz
x1 1 0 z1
=
x2 1 1 z2
Applying this coordinate transformation yields the transformed state equation
ż1 −4 5 z1 −2
= + u
ż2 0 9 z2 0
We see that ż2 does not depend on the input u, so this state variable is not controllable.
U. Wasiwitono [Linear System Control] - Controllability and Observability
8 / 24
Controllability Observability
Coordinate Transformation and Controllability
The linear time-invariant state equation (1) together with the state coordinate
transformation x = T z yields the transformed state equation
ż = Âz + B̂u z (t0 ) = z0 (6)
in which
 = T −1 AT B̂ = T −1 B z0 = T −1 x0
if a state x is controllable to the origin for the original state equation (1), then the state
z = T −1 x is controllable to the origin for the transformed state equation (6) over the
same time interval using the same control signal
controllability is invariant with respect to state coordinate transformations.
U. Wasiwitono [Linear System Control] - Controllability and Observability
9 / 24
Controllability Observability
Controller Canonical Form
state coordinate transformations permit the construction of special state-space
realizations that facilitate a particular type of analysis.
Consider
b (s) bn−1 sn−1 + · · · + b1 s + b0
H (s) = = n
a (s) s + an−1 sn−1 + · · · + a1 s + a0
the controller canonical form (CCF) realization
ẋCCF = ACCF xCCF + BCCF u
y = CCCF xCCF
U. Wasiwitono [Linear System Control] - Controllability and Observability
10 / 24
Controllability Observability
Controller Canonical Form
in which
0 1 0 ··· 0 0 0
0 0 1 ··· 0 0 0
.. .. .. .. .. ..
..
ACCF =
. . . . . .
BCCF =
.
0 0 0 ··· 1 0
0
0 0 0 ··· 0 1 0
−a0 −a1 −a2 · · · −an−2 −an−1 1
CCCF = b0 b1 b2 ··· bn−2 bn−1
The controller canonical form defines a controllable state equation
U. Wasiwitono [Linear System Control] - Controllability and Observability
11 / 24
Controllability Observability
MATLAB for Controllability
U. Wasiwitono [Linear System Control] - Controllability and Observability
12 / 24
Controllability Observability
Co = ctrb(A,B) returns the controllability matrix C
rank(Co) Calculate the rank of matrix C
Wc = gram(sys,’c’) calculates the controllability Gramian of the state-space
(ss) model sys.
[U,S,V] = svd(Co) performs a singular value decomposition of matrix C, such
that C = U SV T
U. Wasiwitono [Linear System Control] - Controllability and Observability
13 / 24
Controllability Observability
Observability
U. Wasiwitono [Linear System Control] - Controllability and Observability
13 / 24
Controllability Observability
Observability
Consider the n-dimensional p-input q-output state equation
ẋ = Ax + Bu
(7)
y = Cx + Du
Definition 2
The state equation (7) is said to be observable if for any unknown initial state x(0), there
exists a finite t1 > 0 such that the knowledge of the input u and the output y over [0, t1 ]
suffices to determine uniquely the initial state x(0). Otherwise, the equation is said to be
unobservable.
U. Wasiwitono [Linear System Control] - Controllability and Observability
14 / 24
Controllability Observability
Observability
The following statements are equivalent.
1 The n-dimensional pair (A, C) is observable.
2 The n × n matrix Z t T
Wo (t) = eA τ
C T CeAτ dτ (8)
0
is nonsingular for any t > 0
3 The nq × n observability matrix
C
CA
O= .. (9)
.
CAn−1
has rank n (full column rank).
U. Wasiwitono [Linear System Control] - Controllability and Observability
15 / 24
Controllability Observability
Observability
The following statements are equivalent.
4 The n × n matrix
A − λI
(10)
C
has full column rank at every eigenvalue, λ, of A
5 TIf, in addition, all eigenvalues of A have negative real parts, then the unique solution of
AT Wo + Wo A = −C T C (11)
is positive definite. The solution is called the observability Gramian and can be expressed as
Z ∞
T
Wo = eA τ C T CeAτ dτ (12)
0
U. Wasiwitono [Linear System Control] - Controllability and Observability
16 / 24
Controllability Observability
Observability Examples
Consider the two–dimensional single-output state equation
ẋ1 1 5 x1 −2
= + u
ẋ2 8 4 x2 2
x1
y= 2 2 + [0] u
x2
C= 2 2
CA = 18 18
so
2 2
O=
18 18
Clearly |O| = 0 so the state equation is not observable.
U. Wasiwitono [Linear System Control] - Controllability and Observability
17 / 24
Controllability Observability
Observability Example
To see why this state equation is not observable, we again use the state coordinate
transformation given by:
x = Tz
x1 1 0 z1
=
x2 1 1 z2
Applying this coordinate transformation yields the transformed state equation
ż1 −4 5 z1 −2
= + u
ż2 0 9 z2 0
z1
y= 0 2 + [0] u
z2
Here both the state variable z2 (t) and the output y(t) are decoupled from z1 (t).
U. Wasiwitono [Linear System Control] - Controllability and Observability
18 / 24
Controllability Observability
Coordinate Transformation and Observability
Consider the transformed state equation
ż = Âz + B̂u
z (t0 ) = z0 (13)
y = Ĉz + D̂u
in which
 = T −1 AT ; B̂ = T −1 B; Ĉ = CT ; D̂ = D; z0 = T −1 x0
From Definition 2 that if is x0 is an unobservable state for the state equation (7) so that
CeA(t−t0 ) x0 ≡ 0 for all t ≥ t0 , then z0 = T −1 x0 satisfies
ĈeÂ(t−t0 ) z0 = (CT ) T −1 eA(t−t0 ) T T −1 x0
= CeA(t−t0 ) x0 ≡ 0 for all t ≥ t0
The transformed state equation (13) is observable if and only if the original state
equation (7) is observable.
U. Wasiwitono [Linear System Control] - Controllability and Observability
19 / 24
Controllability Observability
Observer Canonical Form
Consider
b (s) bn−1 sn−1 + · · · + b1 s + b0
H (s) = = n
a (s) s + an−1 sn−1 + · · · + a1 s + a0
the observer canonical form (OCF) realization
ẋOCF = AOCF xOCF + BOCF u
y = COCF xOCF
U. Wasiwitono [Linear System Control] - Controllability and Observability
20 / 24
Controllability Observability
Observer Canonical Form
in which
0 0 ··· 0 0 −a0 b0
1 0 ··· 0 0 −a1
b1
0 1 ··· 0 0 −a2 b2
AOCF = ATCCF = .. .. .. .. ..
T
BOCF = CCCF = ..
..
. . . . . .
.
0 0 · · · 1 0 −an−2 bn−2
0 0 · · · 0 1 −an−1 bn−1
T
COCF = BCCF = 0 0 ··· 0 0 1
The observer canonical form defines an observable state equation
U. Wasiwitono [Linear System Control] - Controllability and Observability
21 / 24
Controllability Observability
Observability
Matlab function
Ob = obsv(A,C) returns the observability matrix O
Wo = gram(sys,’o’) calculates the observability Gramian of the state-space
(ss) model sys.
[U,S,V] = svd(Ob) performs a singular value decomposition of matrix O,
such that O = U SV T
U. Wasiwitono [Linear System Control] - Controllability and Observability
22 / 24
Question ?
Controllability Observability
U. Wasiwitono [Linear System Control] - Controllability and Observability
24 / 24