Lecture 13 - Observers
Introduction
The white box view of dynamical systems
K. J. strm
State a number of variables that summarizes the past that
is useful for prediction
1. Introduction
2. The Observer Problem
3. Combining with State Feedback
The pole placement can be solved if all states are measured
4. Integral action
What to do if only outputs are known?
5. Response to Reference Signals
How to determine the state from the output?
6. Summary
Combine it with state feedback
Theme: Estimating the state and using the estimate for
feedback.
A new view on integral action
Computing the State from the Output
System
dx
= Ax
dt
y = Cx
Differentiate the output
y = Cx
dy
= CAx
dt
..
.
d n1 y
= CAn1 x
dtn1
dy
CA
dt
x
=
W
x
=
.
o
n1
n1
d y
CA
dtn1
Wo observability matrix
y
dy
dt
1
x = Wo
..
dn1 y
dtn1
An Other Attempt
The problem can be solved if the observability matrix has full
rank. Can we avoid differentiations?
dx
= Ax + Bu
dt
y = Cx
Simulate a model of the system
d x
= A x + Bu
dt
Introduce error x = x x
d x
= A( x x ) = A x
dt
Works if A stable, but it makes no use of u.
c K. J. strm August, 2001
&
Two Ways to Calculate the State
An Alternative Solution
By differentiating the output
T
n1
x = Wo1 y d y . . . d n1y
dt
dx
= Ax + Bu
dt
y = Cx
dt
Drive the model by both u and y
This method has the drawback that it only uses the output and
that it is differentiated many times which is highly sensitive to
noise.
By integrating the input
d x
= A x + Bu
dt
d x
= A x + Bu + K ( y C x )
dt
Introduce error x = x x
d x
= A( x x ) K ( y C x ) = ( A K C) x
dt
Notice that use of output y gives extra freedom.
This method has the drawback that it only uses the input and
that it only works if the matrix A is stable.
Determine matrix K so that the matrix A K C has all its eigenvalues in the left half plane, then x will go to zero!
Can we combine the methods?
Example - The Car
dx
= Ax + Bu =
dt
y = Cx = ( 1
Example - The Car ...
0
x+
u
1
A KC =
0)x
Observability matrix
Wo =
The matrix
k1
k2
has the characteristic polynomial
s + k1 1
= s2 + k1 s + k2
det (sI A + K C) = det
k2
has full rank. The system is observable and the observer is
d x
0 1
0
k1
( y x 1 )
= A x + Bu =
u+
x +
k2
0 0
1
dt
k1 1
We have A K C =
k2 0
Choosing
k1 = 2 o
k2 = 2o
gives the characteristic polynomial s2 + 2 o s + 2o .
c K. J. strm August, 2001
&
Interpretation of the Observer
Comparison with State Feedback
The observer is a dynamical system with two inputs u and y
and two outputs x1 and x2 .
d x
0 1
0
k1
( y x 1 )
=
u+
x +
k2
0
0
1
dt
State feedback design: Find matrix L so that the matrix A B L
has prescribed eigenvalues.
Input-output relations
A matrix and its transpose have the same eigenvalues. We
have
( A K C) T = AT C T K T
X 1 ( s) =
X 2 ( s) =
U ( s) +
2
s2 + 2 o s + o
s2
2 o s + 2o
Y ( s)
s2 + 2 o s + 2o
s + 2 o
2o s
U ( s) + 2
Y ( s)
2
+ 2 o s + o
s + 2 o s + 2o
Physical interpretation. Compare with x 2 =
Observer design: Find Matrix K so that the matrix A K C has
prescribed eigenvalues.
State feedback and observer design are the same problem.
The same software can be used. Use state feedback program
to obtain the observer gain by feeding it by AT and C T instead
of A and B . Transposing L give the observer gain.
dy
dt
Observable Canonical Form
a1
1
a2
dz
..
.
dt
an1 0
an
0
y = 1 0 0...
...
0
1
0
0
0 z
1
0
0 ... 0
a1
1
0 ... 0
a
1
.
.
.
0
a
2
1
1
,
Wo =
.
.
...
Observable Canonical Form
0
b1
0
b2
..
z
+
0
bn
1
W
o
a1
a2
=
..
an
a1
...
...
...
an1
...
0
1
a1
1
a2
dz
..
.
dt
an1 0
an
0
y = 1 0 0...
...
0
0
0 z
0
b1
0
b2
..
z
+
0
bn
a
b
k
1 0 ... 0
1
1
1
a
0
1
0
b
k
2
2
2
d z
.
.
.
( y z1 )
.
.
.
=
+
u
+
z
.
.
.
dt
1
bn1
kn1
an1 0 0
an
c K. J. strm August, 2001
&
bn
kn
Summary
Output Feedback
If the system
Consider a system which is observable and controllable
dx
= Ax
dt
y = Cx
dx
= Ax
dt
y = Cx
is observable its state can be determined by the observer
d x
= A x + Bu + K ( y Cx)
dt
Determine the state with an observer and use state feedback
from the observed state. The controller is
u = L x
d x
= A x + Bu + K ( y C x )
dt
Combine measurements with mathematical model indirect measurements -redundancy
Sensor fusion in AI terminology
Determination of filter gain K similar to state feedback
design. Relation to the Kalman filter
The Closed Loop System
The controller is a dynamical system whose dynamics is
represented by the observer
Block Diagram of Process and Observer
Process
dx
= Ax + Bu
dt
y = Cx
u = L x
d x
= A x + Bu + K ( y C x )
dt
Observer contains a copy of the process model
Introduce the state x = x x instead of x .
dx
= Ax + Bu = Ax B L x = Ax B L( x x ) = ( A B L) x + B L x
dt
d x
= ( A K C) x
dt
K
u
Characteristic equation
det (sI A + B L) det (sI A + K C) = 0
c K. J. strm August, 2001
&
Block Diagram of Closed Loop system
Observer
Observers and State Feedback - A Summary
Design of a controller for
Process
dx
= Ax + Bu,
dt
y = Cx
can be split into two problems
Design of a state feedback and an observer
A few things remains
The closed loop system has poles corresponding to the
eigenvalues of the state feedback Ac = A B L and the
observer Ao = A K C matrices
Integral action
How to introduce reference signals
The problems are similar. The observer is obtained by the
transformation A AT , B C T and L K T . The same
computer program can be used.
Interesting interpretation of controller
Integral Action by Explicit Disturbance Modeling
There are many ways to introduce integral action. Here we will
give a method based on explicit modeling of disturbances.
What is the meaning of the model
dx
= Ax + Bu
dt
Why do we introduce integral action?
Modeling Disturbances
Classical disturbance models:
dv
= 0, v(t) = a = constant
Step
dt
d2 v
Ramp 2 = 0, v(t) = a + bt
dt
d2 v
Sinusoid 2 + 2 v = 0, v(t) = a sin( t + b)
dt
Disturbances!
How to describe disturbances
c K. J. strm August, 2001
&
Constant Disturbance at Process Input
Example - The Car
Constant disturbance x3 = v, physical interpretation.
dx
= Ax + B (u + v)
dt
dv
=0
dt
0
dx
= 0 0 1 x + 1u
dt
0 0 0
0
y = Cx = ( 1 0 0 ) x
Feedback from estimated states
u = L x v
Observer
d
dt
x
v
=
x
0
= ( y C x )
+
u+
K
Kv
k1
k2
k3
A KC =
det (sI A + K C) =
1
s
k3
k3
To introduce the reference values we use the standard configuration with two degrees of freedom.
ur
0 !
k2
How to Introduce Reference Signals
has the characteristic polynomial
s + k1
System is observable (check this!). The observer
!
!
!
0 1 0
0
k1
d x
= 0 0 1 x + 1 u + k2 ( y x 1 )
dt
Example - The Car ...
The matrix
Model and
Feedforward
xm
Generator
u ff
u fb
Process
= s3 + k1 s2 + k2 s + k3
Observer
choose k1 = a + 2 o, k2 = 2a o + 2o , and k3 = a 2o to give
characteristic polynomial
A nice structure
(s + a)(s2 + 2 o s + 2o ) = s3 +(a + 2 o)s2 +(2a o + 2o )s + a 2o
Decoupling of estimation of disturbances K
Reduction of disturbances L
Response to reference signals
c K. J. strm August, 2001
&
Example - The Car
0
dx
= 0
dt
0
Example - The Car ...
0 1 x + 1u
1
0
y = Cx = ( 1
The complete controller
u = l1 ( xm1 x 1 ) + l2 ( xm2 x 2 ) x 3 + u m
2 m
u m = 2m r
xm2 xm1
2
m
0
1
0
dxm
=
x
+
r
m
dt
2m 2 m
2m
0 1 0
0
k1
d x
= 0 0 1 x + 1 u + k2 ( y x 1 )
dt
k3
0 0 0
0
0
0
0)x
Desired response in Laplace transforms
Ym = X m1 = M y R =
2m
R,
s2 + 2 m s + 2m
X m2 = s X m1
Hence
2m s2
R
+ 2 m s + 2m
2 m s + 2m
2
1 2
R = 2m R
sYm Ym
s + 2 m s + 2m
m
U m = P 1 M y R =
= 2m
s2
A Simulation
Summary
2 y och ym
An elegant approach to control system design
Interesting system structure with three components:
0
0
10
15
20 uff och ufb
10
Strong similarity between state feedback and observers
0
0
1
state feedback
observer
reference trajectory generator
10
15
10
15
v and ve
Sensor fusion and diagnosis y y
A new interpretation of integral action: disturbance estimator. Can be adapted to other signals.
0.5
0
0
c K. J. strm August, 2001
&