08 Observer
08 Observer
(Deterministic Estimation)
- Luenberger Observer
- Reduced Order Observer
Introduction
Observer
- The poles of a controllable system can be assigned arbitrary by linear state
feedback. It means that whole state variables of the system should be known.
- However, in many practical situation we cannot measure all state variables
directly.
- Often, the state variables must be estimated from measurable outputs, and
the number of outputs is normally fewer than the number of state variables.
- In these notes, we discuss the state estimation problem from a deterministic
point of view; i.e., we do not have any uncertainty about model parameters
and system inputs.
2
Introduction
We consider a system described by
dx
= Ax + Bu , x(t0 ) = x0 ,
dt
y = cx
where x : n - dimensional state vector
u : m - dimensional state vector
y : r - dimensional state vector
3
Open-loop observer (Real Time Simulator)
Plant
x y
x = Ax + Bu c
Computer
u x̂ y
xˆ = Axˆ + Bu c
e = x − xˆ
x − xˆ = Ax + Bu − Axˆ − Bu
= A( x − xˆ ) e = Ae, e0 = x0 − xˆ0
If A is stable, e(0) will be decayed out.
e(t ) → 0 as t →
Note) i) If A is stable xˆ → x
ii) If ( A, B ) is not known, or ( A, B ) is incorrectly known
→ convergence will not be garuanteed
iii) Disturbance is introduced,
4
Closed-Loop Observer (Luenberger observer)
➢ Full order observer
An obvious mistake in the open loop observer is that it does not make use
of the system output, y, which includes a lot of information on the state
vector, x. so, let us consider an estimator which has the error between the
plant output and predicted output Cxˆ as an input.
xˆ = Axˆ + Bu + F ( y − yˆ ), xˆ (t0 ) = 0
(*)
yˆ = Cxˆ
where F is an n r matrix ( observer gain )
x − xˆ = Ax + Bu − Axˆ − Bu − F (Cx − Cxˆ )
= ( A − FC )( x − xˆ )
e = AF e, e(0) = e0
where AF A − FC
lim e → 0 if AF is stable.
t →
5
Closed-Loop Observer (Luenberger observer)
Since the system is observable, the rank of the observability matrix is n.
Noting that
M T = C T AT C T ( AT ) n −1 C T ,
" ( A, C ) is observable " is equivalent to "( AT , C T ) is controllable"
( This is known as the duality between controllability and observability ) .
+ x 1 x y
u B s C
+
A nxn
+
F -
+
+ x̂ 1 x̂
B s C ŷ
+
A
nxn
9
Separation Theorem
v u
11
Separation Theorem
We can find that n poles are due to the linear state feedback controller and
other n poles are due to the observer.
Thus one can conclude that poles assigned from controller and observer
design are completely separated.
12
➢ 아래 이후는 2014년2학기 수업에서 제외되었음
13
Separation Theorem
Note
u ( s ) = − Kxˆ
= − K ( Is − A + BK + FC ) F y
−1
D(s)
where Ac = A − BK − FC
= Ak − FC
= AF − BK K 와 F 를 결정하는게 어렵다.
dxˆ K → optimal control law
= Axˆ + B ( − Kxˆ + v ) + F ( y − Cxˆ )
dt F → Kalman Filter
sXˆ ( s ) = ( A − BK − FC ) Xˆ ( s ) + FY ( s ) + BV ( s ) 14
Disturbance Observer
Consider the system with disturbance
d1 d2
x = Ax + Bu + E d1
y = Cx + D d 2
E D
Let's define u u
x = Ax + Bu C
d
E = E 0 1
d2
+
d B + I y
D = 0 D 1 s
C
d2 +
15
Disturbance Observer
Then x = Ax + Bu + Ed
y = Cx + Dd
Let's assume that the disturbance, d, satisfies a known differential equation
Unknown exogenous input
d = A0 d + W (t )
(Random with zeromean)
only for mathematical convenience
A0 는 많은 경우에 known(A0 = 0, W = I )
x A E x B 0
d = 0 A d + 0 u (t ) + W (t )
0
x
y = C D
d
xe = Ae xe + Beu + We (t )
(*)
y = Ce xe
16
Disturbance Observer
Applying observer equation to (*) gives
F
xˆe = Ae xˆe + Beu + Fe ( y − Ce xˆe ), where Fe = − (**)
ˆ Fd disturbance observation gain
Saperating (**) into xˆ and d yields
xˆ = Axˆ + Bu + Edˆ + F ( y − Cxˆ − Ddˆ )
Residual !
dˆ = A0 dˆ + Fd ( y − Cxˆ + Ddˆ )
The error equation becomes Cx + Dd
18
Example (DC servo motor)
(t ) 0
(t ) → 1
충분히 시스템의 b.w 에 비해 느리게
s
외란이 띄엄띄엄 들어오는 경우
d (t )
+
r + v ke 1 1
km
− 1s + 1 + J s
−
B
kb
For simplisity 1 = 0, ke = km = k
J = km kev + d − Bv = km ke r − k m kekb + d − B
where v = r − kb emf voltage
input voltage
d=
k k k +B 1 k m ke
− m e b r 0
d = J + J + (t )
1
J
d
0 0 0
19
Example (DC servo motor)
k m k e kb + B k k
Let = 10, m e = 300
J J
−10 1 300 0
d = 0 0 d + 0 r + 1
Design observer [xˆ = Axˆ + Bu + F ( y − Cxˆ )]
d ˆ −10 1 ˆ 300 f1
ˆ= ˆ+ r + ( − ˆ )
dt d 0 0 d 0 f2
F = [ f1 f 2 ] can be found from pole assignment
I.e.
−10 1 f1
det( Is − ( A − FC )) = det( Is − − ( ) )
1 0
0 0 f2
s + 10 + f1 −1
= det = s ( s + 10 + f1 ) + f 2
0 s
f1 = −8, f 2 = 2
ˆ = −10ˆ + dˆ + 300r − 8 + 8ˆ
= −2ˆ + dˆ + 300r − 8
dˆ = 2ˆ − 2
20
Disturbance observer with disturbance-free residual
Let xˆ (t ) = x(t ) + vdˆ (t ) ─①
where x is observer with d (t ) = 0, i.e.
x(t ) = Ax + Bu + F ( x) ─②
where v and F will be determined
Eq① with * and☆ yields
xˆ = x + vdˆ
= Ax + Bu + F ( y − Cx ) + V ( A0 dˆ + Fd ( y − c ( x + vdˆ ) − Ddˆ ))
= Ax + Bu + ( F + vF )( y − Cx ) + [vA − vF (Cv + D )]dˆ
x 0 d
21
Disturbance observer with disturbance-free residual
Equation ( 3) and ( 4 ) gives
vA0 − ( F − F )(Cv + D ) = Av + E − F (Cv + D )
vA0 − ( A − FC )v = E − FD
vA0 − Av = C ( 5)
where A = A − FC and C = E − FD
v = −( A − FC ) −1 ( E − FD) ( 5)
22
Disturbance observer with disturbance-free residual
Finally, consider the equation for estimating the disturbance.
dˆ = A0 dˆ + Fd [ y − c( x + vdˆ ) − Ddˆ ]
= [ A − F (Cv + D)]dˆ + F ( y − cx)
0 d d
= Ad dˆ + Fd ( y − cx) (6)
where Ad = A0 − Fd (Cv + D)
23
Disturbance observer with disturbance-free residual
Disturbance observer with disturbance-free residual ((1),(2),(6))
Fd d̂ 1
s d̂
Ad
y + V
− F
+ x x +
u B
1
x̂
+ s +
A
C
24
Disturbance observer
Disturbance observer ( ) • 위 그림이 더 단순하다.
• 이 라인을 제거
D
+ d̂ 1
Fd d̂
+ s
A0
y + −
F E
−
u 1
B s
x̂
C 25
Disturbance observer
Note that the residual, y - Cx, does not involve any (unknown) exogenous
disturbance input.
Design Procedure
Step 1 : Design and observer for the process without disturbance
(i.e. find F )
Luenberger observer
Step 2 : Find the matrix v using (5) or (5) when A0 = 0.
Step 3 : Find Fd so that dynamics of the estimator of the disturbance has
the desired pole in (6).
26
Reduced-order observer
Suppose that there is one output for every state variable :
y = Cx
27
Reduced-order observer
The state vector is partitioned accordingly :
x1
x=
x2
with x1 = A11 x1 + A12 x2 + B1u
(20)
x 2 = A21 x1 + A22 x2 + B2u
In this case the observer (23) for those states that cannot be measured
directly becomes.
xˆ2 = A21C1−1 y + A22 xˆ2 + B2u (25)
29
Reduced-order observer
The dynamice behavior of the reduced-order observer is governed by
the eigenvalues of A22 which is a submatrix of the open-loop dynamic
matrix A. If the eigenvalues of A22 are suitable, then (25)
30
Reduced-order observer
Could be a satisfactory observer. Since there is no assurance that the eigen
value of A22 are suitable, however, we need a more general system for the
reconstruction of x̂2 .
So (30) becomes
e2 = Fe2 ( A21 − LC1 A11 − GC1 + FLC1 ) x1
+ ( A22 − LC1 A12 − F ) x2 + ( B2 − LC1 B1 − H )u (32)
In order for the error to be independent of x1 , x2 and u, the matrices
multiplying x1 , x2 and u must vanish ;
F = A22 − LC1 A12 (33)
H = B2 − LC1 B1 (34)
GC1 = A21 − LC1 A11 − GC1 + FLC1 (35)
Then, (32) becomes e2 = Fe2 and hence, for asymptotic stability,
the eigen-values of F must lie in the left half or the s-plane. Comparing (33)
with 4-(5) we see that selecting the matrix L in (33) to place the eigen-values
of F is the same type of problem as selecting the gain matrix K to place the
eiven-values of Â.
The submatrix A22 has the role of A in 4-(5) and product C1 A12 has the role of
C in 4-(5)
(*) in full order observer
Reduced-order observer
In order to place the pole of F , it is necessary that the rank of the
corresponding controllability test matrix
W1 = A12
'
C1' , A22
' '
A12 C1' , '
, ( A22 ) n − r −1 A12
'
C1'
be of rank n − r. Luenberger has shown that this requirement in satisfied, if the
full-static is controllable. Having selected the matrix L to place the reduced–
order observer poles, the matrix H is determined from (34) and the matrix G is
determined from (35).
G = ( A21 − LC1 A11 ) C1 + FL
−1 (36)
G L
+ +
u z 1 z x̂2
H + s
+
F
T −1 = P Q n
(39)
r n−r
and
C
P Q = PC + QM = I n (41)
M
Reduced-order observer
We define the vector W by
W1
W = = Tx x = T −1W (42)
W2 or
37
Reduced-order Observer
38
Eigenvalue Separation in State Feedback System with observer
➢ x = Ax + Bu
y = Cx
The linear state feedback control law was
u (t ) = − Kx(t ) + v(t ) (10)
If x is not directly measurable, a natural replacement for Eq.(10) is
u (t ) = − Kxˆ (t ) + v(t ) (11)
In this case, the plant and observer define the following 2n dimensional system
dx
plant → = Ax + B ( − Kxˆ + v )
dt
dxˆ
observer → = Axˆ + B ( − Kxˆ + v ) + FC ( x − xˆ )
dt
or
d x A − BK
x B
= + (12)
dt xˆ FC
A − BK − FC xˆ B
v
We can find that n poles are due to the linear state feedback controller and
other n poles are due to the observer. Thus one can conflude that poles assigned
from controller and observer design are completely separated.
40
Eigenvalue Separation in State Feedback System with observer
Note
u ( s ) = − Kx
= − K ( Is − A + BK + FC ) F y
−1
D(s)
xˆ = Axˆ + Bu + F ( y − Cxˆ ) ①
a)Variation on A and C ( B = 0)
x = ( A + A) x + Bu ②
② − ① : x − xˆ = e = Ax + Ax + Bu − Axˆ − Bu − F ( y − Cxˆ )
= Ax + Ax + Bu − Axˆ − Bu − F ((C + C ) x − Cxˆ )
= ( A − FC )( x − xˆ ) + ( A − F C ) x
→ e = ( A − FC )e + ( A − F C ) x ③
x AK BK x
③,④ =
e AC ˆ
A e
where AK = A − BK = A − BK
ˆ = A − FC
A
AC = A − F C
u x y
+ x = Ax + Bu C
-
K
x̂ xˆ = Axˆ + Bu + F ( y − Cxˆ )
43
Robustness: Effect Of Modeling Error
H1 ( s )
I x H1 ( s )
B + + AC
+ s
AK AC H 2 ( s)
K I
+ H2 H1
s +
+
Aˆ AC
H 2 ( s)
H (s)
e→0이면 Robust +
e≠0이면 Robust가 아니다. AC
44
Robust Stability (Absolute Stability)
0.1 K ( s ) 0.2라고 가정하자.
-1/K
+ G
- -10 -5
1/K(s)
forbidden K
zone
az If 1 absolute definition
G
G = max G ( jw)
wR
45
Robust Stability (Absolute Stability)
Example of stability
K: 기울기
1
K
+K
-K
46
Robust Stability (Absolute Stability)
A = A − A : A의 최댓값, 보통 알 수 있다고 가정
e.q.
A=0
C = C + C = (1 + )C , − 0.1 0.1 = 0.1
Then AC = − FC
47
Robust Stability (Absolute Stability)
D(s)
H (s) F H (s) C
- -
F C
B ( sI − AK ) −1 C
−
K ˆ ) −1
( sI − A F
D( s) = C ( sI − AK )−1 BK ( sI − Aˆ ) −1 F
1
Pole placement
Open loop transfer fn Observer for Robustness
48
Robust Stability (Absolute Stability)
b)Variation on B ( A = A, C = C , B = B + B )
Observer state feedback
x xˆ
xˆ = e
xˆ AK FC xˆ
→ =
e − BK AF
e
where AK = A − BK , AF = A − FC
( sI − AK ) −1 x K
F
e
C ( sI − AF ) −1 B
49
Robust Stability (Absolute Stability)
If B = (1 + ) B or B = B
F ( sI − AK ) −1 K
D(s)
+
-
C ( sI − AF ) −1 B
1
D( s) = K ( sI − AK ) FC ( sI − AF ) B
−1 −1
50