Download - Observers for Non-linear Systems
-
Observers for non-linear systemsManipulation Lab talk
Siddhartha Srinivasa
The Robotics Institute
Carnegie Mellon University
Observers for non-linear systems p.1/35
http://www.cs.cmu.edu/~siddh
-
Outline
General frameworkAn exampleNon-linear systemsSome differential geometryReview of linear observabilityObservability rank conditionLinear observersObserver design : Lie-algebraic methodConclusionsThings I did not doReferences
Observers for non-linear systems p.2/35
-
General frameworkSystem
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
-
An example
Choose state variables
() ( (* State space form
+,.-
(/)(
(/*0
1.2
+
,.-
( 34 $ %& () )5 6874 9 (*
)5 6;:4 (
Observers for non-linear systems p.6/35
-
Non-linear systems
( ? (A@ >
B C (
( ? (
DFE )> D # D (
( system state in a state-space manifold G H I?@ # D smooth vector fields on M?
drift vector field#) @ # @J J J # input vector fields>) @ > @J J J > scalar controlsC
output map
Observers for non-linear systems p.7/35
-
Review of linear observability
A SISO system
( K ( L >
B (
Kalman Rank Condition for observability
M NOPOPOPOQOPO
K
K
... K ISR )TPTPTPTQTPT
Observers for non-linear systems p.8/35
-
Linear observers
System
( = K ( L >B = (Observer
VU ( = K U ( L > B U B U B = U (
> B
+-
U B
The error dynamics is given by :
K W
Eigenvalues of (A-LC) arbitrarily placed by a proper choiceof L.
Observers for non-linear systems p.9/35
-
A first pass : output injection
Consider the nonlinear system
( ? ( ( X H I
B C ( B X H Create an observer with linear output injection
YU ( ? U ( B U B
U B C U ( where
X H I Z is the observer gain matrix we have controlover
Observers for non-linear systems p.10/35
-
A first pass : error dynamics
( U (
? ( [ ? U ( B U B \Error dynamics is nonlinear and stability is unclear. But ...
The stability of a linearized system about its fixedpoint implies the local stability of the correspondingnonlinear system about that fixed point
Why? I dont have a good answer, but here are some pic-
tures 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
Linearizing the error dynamics about the fixed point
? ( [ ? U ( C ( C U ( \
U ( (
? ( [ ? ( C ( C ( \
? ( ? ( ] ?
] (
C ( C ( ] C
] (
] ?
] ( ] C
] (
Observers for non-linear systems p.13/35
-
A first pass : conclusion
] ?
] ( ] C
] (
The linearization is a function of the true state ( which isnot a fixed quantity
unknown to us ... its what were trying to estimate!
Also, the linearization is valid only for a smallneighbourhood about the fixed point.
Observers for non-linear systems p.14/35
-
Some differential geometry
C_^ H I_` a H - a smooth function? ^ H I_` a H I - a vector fieldb'c @ c d - the standard dot product on H Ie C f C - the gradient of C with respect to (
The Lie derivative of
C
w.r.t.
?
is given by :
hg C b e C@ ? d f Cc ?
Also, e g C ig e C
Observers for non-linear systems p.15/35
-
Example
C ( B
? (( B
e C
jk jmljk jmn
o (
g C b e C@ ? d o ( ( B
e g C
p ( B
(
Observers for non-linear systems p.16/35
-
Observability rank condition
The observation space O is the linear space of thefunctions
C) @ C @J J J @ C and all repeated Lie derivatives
q_r q 9J J J qts Cvu
w @ o@J J J @ N @ o@J J Jx D X [ ?@ #) @ # @J J J @ # \
Intuitively, O comprises of the output functions and themagnitude of their derivatives along all possible systemtrajectories (in infinitesimal time).
Observers for non-linear systems p.17/35
-
Observability rank condition
The observability codistribution dO(x) is defined as
e y ( z M [ e{ ( | { X y\The system is locally observable at state (5 if
e ! [ e y (5 \
Observers for non-linear systems p.18/35
-
Must do example...
+,-
()(
(*0
12
+
,-
(
$ %& (/) (/*
( (*0
12 +
,-
012 >
B (/) C (
Observers for non-linear systems p.19/35
-
Taking Lie-derivatives
e C [ \
ig C e Cc ? (
e g C [ \
g g C e ig C c ? $ %& () (*
e g g C [h} ~ $ () \
y (
+
,-
e Ce g C
e g g C 0
12
+
,-
} ~ $ (/) 0
12
Observers for non-linear systems p.20/35
-
Observer design : transformation
( ? ( ( X H I
B C ( B X HWe wish to find a smooth one-to-one onto global nonlineartransformation ( which gives us
K # B
B W
Why do we care?
Isnt that asking for a bit too much?Observers for non-linear systems p.21/35
-
Why do we care?
Remember, we can measure B.Create an observer of the form
U K U # B B U B
U B W U
Error dynamics
U
K # B [ K U # B B U B \
K W 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-observationtechniquesWalcott BL, Corless MJ, Zak SHInternational 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
-
Back to the example
+,-
()(
(*0
12
+
,-
(
$ %& (/) (/*
( (*0
12 +
,-
012 >
B (/) C ( The observability matrix is given by
y (
+
,-
e Ce g C
e g g C 0
12
+
,-
} ~ $ () 0
12
Observers for non-linear systems p.24/35
-
The Algorithm
Compute
y R )
+,P,P,.-
} ~ $ 0
1P1P1.2The starting vector
jjmr is the last column of y R )
] ] )
+,P,P,-
0
1P1P12
Observers for non-linear systems p.25/35
-
The Algorithm
Build the Jacobian matrix of T
] ] M e
5 ?@]
] ) @ Me) ?@
] ] ) @ M
e ?@]
] )
M e) ?@ # [ ?@ #\
] ?
] ( # ] #
] ( ?
M e ?@ # [ ?@ M e R ) ?@ # \
M e5 ?@ # #
Observers for non-linear systems p.26/35
-
The Algorithm
Build the Jacobian matrix of T
] ]
+,Q,P,-
o0
1Q1P12
Solving for T
+
,P,P,.-
o0
1P1P1.2
Observers for non-linear systems p.27/35
-
The Algorithm
Apply the transformation
+
,P,Q,-
0
1P1Q12
+,P,Q,-
$ %'& *
$ %& * * *
01P1Q12
B *
Observers for non-linear systems p.28/35
-
The Algorithm
The observer
U
+
,P,P,.-
0
1P1P1.2U
+,P,P,.-
$ %'& B
$ %'& B BB
01P1P1.2
+,P,P,.-
N)N
N*0
1P1P1.2 B U B
U B U
Observers for non-linear systems p.29/35
-
The Algorithm
Error dynamics U
+
,P,P,- N)
N
N*0
1P1P12 K
Error in original coordinates
_ D 3 K R ) D 3
Observers for non-linear systems p.30/35
-
Why was this so easy?
The tricky bit is to go from
jjmr to T. For more complexsystems, you will have to integrate coupled partialdifferential 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
-
Conclusions
Given a nonlinear system, M N y ( tells us if thesystem is observable or not.
If the system is observable, the Lie-algebraic approachgives a smooth nonlinear transformation T that convertsthe state space equation into a form that we like.
Once this is done, we can use good old Luenbergeroutput 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, Thauobserver, 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-BinJia, CMU-RI-TR-97-50
3. Comparative study of nonlinear state-observationtechniques, Walcott BL, Corless MJ, Zak SH, Int. J.Control, 1987, Vol. 45, No. 6, 2109-2132
4. Canonical form observer design for non-lineartime-variable systems, D. Bestle and M. Zeitz., Int. J.Control, 38(2):419-431, 1983
5. Manifolds : Calculus on curved surfaces, Lyle Noakes,http://www.maths.uwa.edu.au/ rkeal-ley/mf3/manifolds/manifolds.htm
Observers for non-linear systems p.34/35
-
References
Observers for non-linear systems p.35/35
OutlineGeneral frameworkAn exampleAn exampleAn exampleNon-linear systemsReview of linear observabilityLinear observersA first pass : output injectionA first pass : error dynamicssmall {The many moods of Aleksandr Mikhailovich Lyapunov}A first pass : linearizing errorA first pass : conclusionSome differential geometryExampleObservability rank conditionObservability rank conditionMust do example...Taking Lie-derivativesObserver design : transformationWhy do we care?Can we really do this?Back to the exampleThe AlgorithmThe AlgorithmThe AlgorithmThe AlgorithmThe AlgorithmThe AlgorithmWhy was this so easy?ConclusionsThings I did not doReferencesReferences