Observers for non-linear systems
Manipulation Lab talk
Siddhartha Srinivasa
The Robotics Institute
Carnegie Mellon University
Observers for non-linear systems p.1/35
Outline
General framework
An example
Non-linear systems
Some differential geometry
Review of linear observability
Observability rank condition
Linear observers
Observer design : Lie-algebraic method
Conclusions
Things I did not do
References
Observers for non-linear systems p.2/35
General framework
System
Identify forces and torques
Equations of motion, constraint equations
Pick suitable state variables
Write the equations (implicit) in state-space form
(explicit)
Analyze the state-space equations for system behaviour
Observers for non-linear systems p.3/35
An example
Observers for non-linear systems p.4/35
An example
Inverted pendulum with DC motor control
DC motor armature controlled
motor inertia pendulum inertia
For the motor
$
& %
'
#
!
!
"
For the pendulum
Observers for non-linear systems p.5/35
/*(
)5
<
: 6
;
/*(
4
9
*(
)(
2
.
1
.
,
>
)5
7 6
8
$
& %
2
.
1
.
,
2
.
1
.
,
+
/)(
*(
)(
An example
Choose state variables
State space form
Observers for non-linear systems p.6/35
>
(
#
D
#
J
@J
>
@J
#
>
H
G
system state in a state-space manifold
smooth vector fields on M
drift vector field
input vector fields
scalar controls
output map
)
C
)>
)#
E D
F
>
@ (
A
Non-linear systems
Observers for non-linear systems p.7/35
Review of linear observability
>
(
A SISO system
T
P
T
Q
T
P
T
P
T
P
T
K
K
..
.
SRI
O
P
O
Q
O
P
O
P
O
P
O
M
Kalman Rank Condition for observability
Observers for non-linear systems p.8/35
Linear observers
B
>
K
(
>
B U
K
( U
+
-
B U
( U
U
( V
B U
Observer
=
=
System
B
>
=
=
The error dynamics is given by :
Eigenvalues of (A-LC) arbitrarily placed by a proper choice
of L.
Observers for non-linear systems p.9/35
A first pass : output injection
(
B
H
Consider the nonlinear system
B U
I
H
X
where
( U
B U
( U
U
( Y
Create an observer with linear output injection
is the observer gain matrix we have control
over
Observers for non-linear systems p.10/35
\
B U
( U
?
( U
A first pass : error dynamics
Error dynamics is nonlinear and stability is unclear. But ...
The stability of a linearized system about its fixed
point implies the local stability of the corresponding
nonlinear system about that fixed point
Why? I dont have a good answer, but here are some pictures of Lyapunov
Observers for non-linear systems p.11/35
The many moods of Aleksandr Mikhailovich Lyapunov
angry
happy
Observers for non-linear systems p.12/35
A first pass : linearizing error
\
( U
C
\
]
(
]
(
?
( U
( U
?
Linearizing the error dynamics about the fixed point
Observers for non-linear systems p.13/35
]
The linearization is a function of the true state
A first pass : conclusion
which is
not a fixed quantity
unknown to us ... its what were trying to estimate!
Also, the linearization is valid only for a small
neighbourhood about the fixed point.
Observers for non-linear systems p.14/35
Some differential geometry
H
?
C
@
g
h
@ c
c b
'
H
`_I
^ ?
^ C
_
H
`_I
- a smooth function
- a vector field
- the standard dot product on
- the gradient of with respect to
The Lie derivative of w.r.t. is given by :
C
g
i
C
g
Also,
Observers for non-linear systems p.15/35
g
C
(
n j
m
kj
l j
m
kj
B
Example
Observers for non-linear systems p.16/35
Observability rank condition
C
u C
v
s q
t
J
J
o
@J
o
@J
#
@
#
@J
)#
q
r
_
q
@J
) C
The observation space O is the linear space of the
and all repeated Lie derivatives
functions
Intuitively, O comprises of the output functions and the
magnitude of their derivatives along all possible system
trajectories (in infinitesimal time).
Observers for non-linear systems p.17/35
Observability rank condition
y\
|
zM
\
if
e
5
The system is locally observable at state
{e
The observability codistribution dO(x) is defined as
Observers for non-linear systems p.18/35
/)(
C
*(
*(
2
>
,
-
/*(
$
& %
/)(
(
+
)(
Must do example...
Observers for non-linear systems p.19/35
/)(
)(
C
} [
h
*(
$
& %
)(
g
i
C
[
g
i
Taking Lie-derivatives
Observers for non-linear systems p.20/35
(
Observer design : transformation
We wish to find a smooth one-to-one onto global nonlinear
transformation
B
W
K
which gives us
Why do we care?
Isnt that asking for a bit too much?
Observers for non-linear systems p.21/35
Why do we care?
B U
B
K
U
B U
W
U
Remember, we can measure .
Create an observer of the form
U
\
B U
B
[
K
U
W
B
K
Error dynamics
Error dynamics is exactly like the linear observer!
We can place poles wherever we wish.
Observers for non-linear systems p.22/35
Can we really do this?
Comparative study of nonlinear state-observation
techniques
Walcott BL, Corless MJ, Zak SH
International Journal of Control, 1987, Vol. 45, No. 6,
2109-2132
The derivation is long and complicated
I dont fully understand it.
But, I can implement their algorithm
Observers for non-linear systems p.23/35
)(
/)(
C
*(
*(
/*(
>
,
$
& %
/)(
(
+
)(
Back to the example
The observability matrix is given by
Observers for non-linear systems p.24/35
0
2
.
1
P
1
P
1
$
)
Ry
0
,
P
, ,
P
1
P
1
P
1
2
is the last column of
]
j
m
r
The starting vector
.
,
P
,
P
,
Ry
Compute
The Algorithm
Observers for non-linear systems p.25/35
e
?
5
?
\
e
R
)
e )
# \
]
]
]
]
e
?
e )
The Algorithm
Build the Jacobian matrix of T
Observers for non-linear systems p.26/35
The Algorithm
0
1
P
1
Q
1
o
]
,PQ
, ,
Build the Jacobian matrix of T
0
2
.
1
P
1
P
1
o
.
,
P
, ,
P
Solving for T
Observers for non-linear systems p.27/35
The Algorithm
1
Q
1
P
1
2
$
& %
,
Q
,
P
,
-
1QP
1
1
,
Q
,
P
,
0
$
&'%
0
Apply the transformation
Observers for non-linear systems p.28/35
B U
* N
B U
2
.
1
P
1
P
1
.
,
P
,
P
,
2
.
1
P
1
P
1
$
&'%
.
,
P
,
P
,
2
.
1
P
1
P
1
U
.
,
P
,
P
,
) N
$
&'%
The Algorithm
The observer
Observers for non-linear systems p.29/35
The Algorithm
U
0
K
* N
1PP
1
1
) N
N
,
P
,
P
,
Error dynamics
Error in original coordinates
D
3
_
R
Observers for non-linear systems p.30/35
Why was this so easy?
j
m
The tricky bit is to go from
to T. For more complex
systems, you will have to integrate coupled partial
differential equations.
Bestle and Zeitz(1983) provide a hack for that.
But Im not going to go into it.
Observers for non-linear systems p.31/35
y
N
M
Given a nonlinear system,
system is observable or not.
Conclusions
tells us if the
If the system is observable, the Lie-algebraic approach
gives a smooth nonlinear transformation T that converts
the state space equation into a form that we like.
Once this is done, we can use good old Luenberger
output injection to stabilize the error dynamics.
Observers for non-linear systems p.32/35
Things I did not do
The icky derivations.
Other kinds of observers : Extended linearization, Thau
observer, VSS technique, GHO observer.
Extended Kalman filters.
Observers for non-linear systems p.33/35
References
1. Nonlinear control systems, Alberto Isidori, Third Edition,
Springer
2. Geometric and dynamic sensing, PhD Thesis, Yan-Bin
Jia, CMU-RI-TR-97-50
3. Comparative study of nonlinear state-observation
techniques, Walcott BL, Corless MJ, Zak SH, Int. J.
Control, 1987, Vol. 45, No. 6, 2109-2132
4. Canonical form observer design for non-linear
time-variable systems, D. Bestle and M. Zeitz., Int. J.
Control, 38(2):419-431, 1983
5. Manifolds : Calculus on curved surfaces, Lyle Noakes,
[Link] rkealley/mf3/manifolds/[Link]
Observers for non-linear systems p.34/35
References
Observers for non-linear systems p.35/35