Download as pdf or txt
Download as pdf or txt
You are on page 1of 7

National Chiao-Tung University Department of Electrical Engineering

Handout of <Dynamic System Analysis and Simulation>


By Prof. Yon-Ping Chen

98
19. Linear Luenberger Observer Design
The technology of state-feedback control has been introduced and applied to an
LTI system in state-space description, which is expressed as
( ) ( ) ( ) t t t Bu Ax x + = & , x(t
0
)=x
0
(1)
( ) ( ) t t Cx y = (2)
where u(t)=[u
1
(t) u
2
(t) u
m
(t)]
T m
is the input, y(t) =[y
1
(t) y
2
(t) y
p
(t)]
T p
is
the output and x(t)=[x
1
(t) x
2
(t) x
n
(t)]
T n
is the system state with initial condition
x(t
0
)=x
0
at the initial time t=t
0
. Under the condition that
[ ] n rank
n
=

B A B A AB B
1 2
L (3)
the LTI system can be controlled by the following state feedback
( ) ( ) t t Kx u = (4)
to drive the system state x(t) from x(t
0
)=x
0
to the origin 0. The matrix K can be
obtained by the pole-placement method. First assign n poles {p
1
,p
2
,,p
n
} for the
system and solve K from the following equation:
( ) ( )( ) ( )
n
p p p = L
2 1
BK A I (5)
By means of the instruction K=place(A,B,p) in Matlab, the matrix K satisfying (5) can
be directly attained.
However, in some cases, only the output y(t) in (2) is measurable, not the system
state x(t), which means it is not available to use the state feedback u(t) in (4). To deal
with such problem, the so-called linear Luenberger observer is often employed to
estimate the system state x(t).
Without the loss of generality, the output matrix C satisfies ( ) p rank = C , i.e., it
is a full rank matrix. According to the original system (1) and (2), the linear
Luenberger observer is constructed as below:
National Chiao-Tung University Department of Electrical Engineering
Handout of <Dynamic System Analysis and Simulation>
By Prof. Yon-Ping Chen

99
( ) ( ) ( ) ( ) ( ) ( ) t t t t t y y L Bu x A x + + =
&
, ( ) 0 x = 0 (6)
( ) ( ) t t x C y = (7)
where ( ) t x is the estimated state, ( ) t y is the estimated output, and the matrix L is
purposely introduced as a key design element. Define the estimation error as
( ) ( ) ( ) t t t x x x
~
= (8)
then from (1) and (6) we have
( ) ( ) ( ) ( ) ( ) t t t t x
~
LC A x
~
C L x
~
A x
~
= =
&
, ( )
0
0 x x
~
= (9)
Clearly, if the eigenvalues of LC A are all located in the left-half complex plane,
then the estimation error will approach zero as t, i.e.,
( ) ( ) ( ) 0 x x x
~
=
t t
t t t (10)
or
( ) ( )


t t
t t x x (11)
In other words, the estimated state is gradually approximated to the actual state x(t) as
time increases and thus, the state feedback in (4) can be replaced by the following
control
( ) ( ) t t x K u = (12)
which will drive the system state x(t) from x
0
to 0. The whole system block diagram is
shown in Figure-1.
Now, lets focus on the design of the matrix L. It is known that the eigenvalues
of LC A can be obtained by solving the following polynomial:
( ) 0 = LC A I (13)
Since the determinant of a matrix H is the same as the determinant of its transpose,
i.e.,
T
H H = , the polynomial (13) can be rewritten as
National Chiao-Tung University Department of Electrical Engineering
Handout of <Dynamic System Analysis and Simulation>
By Prof. Yon-Ping Chen

100
( ) ( ) 0 = =
T T
L C A I LC A I
T
(14)
Based on the pole-placement concept given in (5), we can assign n poles {p
1
,p
2
,,p
n
}
first and solve L from the following equation:
( ) ( )( ) ( )
n
T T T
p p p = L
2 1
L C A I (15)
by using the instruction L=(place(A,C,p)) in Matlab. One thing has to emphasize
that the existence of K in (5) requires that the system must satisfies the condition (3).
Similarly, the existence of L in (15) requires that the system must satisfies the
following condition
[ ] n rank
T
n
T T T T T T
=

C A C A C A C
1 2
L (16)
Due to the fact that ( ) ( )
T
rank rank H H = , (16) can be rearranged as
n rank
n
=
(
(
(
(
(
(

1
2
CA
CA
CA
C
M
(17)
which is the condition for a system to be observable.


+
A
B
C
x

+
A
B
C
x
^
L +
y
y
^
K
u
Figure-1
National Chiao-Tung University Department of Electrical Engineering
Handout of <Dynamic System Analysis and Simulation>
By Prof. Yon-Ping Chen

101
Lets consider the following example which has been introduced in the
state-feedback control:

( )
( )
( )
( )
( )
( )
( )
( )
( )
( )
3 2 1
3 2 1 3 2 1 4 4 4 3 4 4 4 2 1 3 2 1
&
&
&
&
&
|

\
|
|

\
|
|

\
|
(

(
(
(
(

+
(
(
(
(

(
(
(
(

=
(
(
(
(

t
t u
t u
t
t x
t x
t x
t x
t
t x
t x
t x
t x
u
B
x
A
x
2
1
4
3
2
1
4
3
2
1
1
0
0
0

0
1
0
0
0 1 1 0
1 1 0 1
1 0 1 0
0 1 0 1
(18)
with initial condition [ ]
T
1 2 4 5 0 = |

\
|
x . It is easy to check that
[ ] 4
1 2
=

B A B A AB B
n
rank L (19)
which ensures the system can be controlled by state feedback u(t)=kx(t). Based on
the pole-placement method, we assign four eigenvalues for the matrix ABK
[ ] 4 2 2 2 1 + = j j p (20)
and solve K by the instruction K=place(A,B,p) in MATLAB which results in

(

=
3 1 6 0
1 7 0 11
K (21)
Hence, the control input is

( ) ( ) ( ) ( )
( ) ( ) ( ) ( ) t x t x t x t u
t x t x t x t u
4 3 2 2
4 3 1 1
3 6
7 11
+ =
=
(22)
However, if the system state x(t) is not obtainable and only the following output is
measurable:
( ) [ ]
( )
( )
( )
( )
3 2 1
43 42 1
|

\
|
(
(
(
(

=
t
t x
t x
t x
t x
t y
x
C
4
3
2
1
1 0 0 1 (23)
then we have to estimate the system state by the Luenberger observer as depicted in
Figure-1. To use the Luenberger observer, first we have to check the observability of
the system by the condition given in (17), which results in
National Chiao-Tung University Department of Electrical Engineering
Handout of <Dynamic System Analysis and Simulation>
By Prof. Yon-Ping Chen

102
4
3
2
=
(
(
(
(

CA
CA
CA
C
rank (24)
Clearly, the system is observable and thus we can estimate the system state by the use
of Luenberger observer in (6) and (7).

To determine the matrix L, lets choose four poles for the matrix ALC, which are
[ ] 8 5 5 5 5 4 + = j j q (25)
1
s
x4^
1
s
x4
1
s
x3^
1
s
x3
1
s
x2^
1
s
x2
1
s
x1^
1
s
x1
Scope1
Scope
-347.2
Gai n8
3
Gai n7
6
Gai n6
7
Gain5
11
Gain4
82
Gai n3
20.8
Gai n2
370.2
Gai n1

Figure-2
National Chiao-Tung University Department of Electrical Engineering
Handout of <Dynamic System Analysis and Simulation>
By Prof. Yon-Ping Chen

103
Further adopting the instruction L=(place(A,C,q)) in Matlab, we have

(
(
(
(

=
2 347
82
8 20
2 370
.
.
.
L (26)
By the use of SIMULINK, the block diagram of the whole system is shown in
Figure-2. The numerical result of the four state variables can be obtaine from the
Scope block and shown as below:

The numerical result of the four estimation error can be obtaine from the Scope1
block and shown as below:
National Chiao-Tung University Department of Electrical Engineering
Handout of <Dynamic System Analysis and Simulation>
By Prof. Yon-Ping Chen

104

Clearly, the system is stabilized since all the state variables are driven to approach the
origin under state-feedback control based on Luenberger observer.

P.1 Consider the following system:

( )
( )
( )
( )
( )
( )
( )
( )
{
|

\
|
|

\
|
|

\
|

(
(
(
(

+
(
(
(
(

(
(
(
(

=
(
(
(
(

t u
t
t x
t x
t x
t x
t
t x
t x
t x
t x
b
x
A
x
1
1
1
0
0 1 1 0
1 1 0 0
2 0 0 1
0 1 0 0
4
3
2
1
4
3
2
1
3 2 1 4 4 3 4 4 2 1 3 2 1
&
&
&
&
&

( ) [ ]
( )
( )
( )
( )
3 2 1
43 42 1
|

\
|
(
(
(
(

=
t
t x
t x
t x
t x
t y
x
C
4
3
2
1
0 1 0 1
with initial condition [ ]
T
1 2 0 1 0
0
= = |

\
|
x x . If the system state x(t) is not
measurable, please design thee state-feedback control based on the Luenberger
observer.

You might also like