State Observers State Observers State Observer ...

144 downloads 424 Views 226KB Size Report
Easy design for observable form. 11. Observer Form. • Observer gain vector in terms of coefficients vectors. Example: Observer Form. • Desired poles -9 ± j 9.
State Observers • In practice, the state variables are not all available for measurement (impossible or expensive). • Need estimate of the state vector for state feedback estimate of the state vector

State Observers M, Sami Fadali Professor of Electrical Engineering University of Nevada

1

2

Estimation Error (Open-Loop)

State Observer/Estimator

estimation error

• Observer A dynamic system whose input includes the control and the output y and whose output is an estimate of the state vector • Open-loop Observer

• Error Dynamics: – Unbounded error for unstable state matrix A. – Does not correct for modeling imperfections.

Fails due to modeling errors and disturbances. Unstable for unstable plant. 3

4

Full-Order Observer

Block Diagram of Observer u(t)

• Estimates all the state variables.

, L = observer gain • Choose the matrix to assign eigenvalues. • For perfect estimation, the equation reduces to the open-loop observer.

x  Ax  Bu

y(t)

x(t) C

xˆ  Aobs xˆ  Bu  Ly

xˆ ( t )

5

Theorem (Proved Earlier)

Procedure I

• The system is observable if and only if the dual system is controllable. • If is controllable then its eigenvalues can be arbitrarily assigned (stable) using state feedback.

same eigenvalues!

6

7

1. Check the observability (detectability) of the system. 2. Solve the pole assignment problem for the dual system to obtain (can use MATLAB commands acker or place). For a detectable system, the unobservable modes must be included in the set of eigenvalues to be assigned. 3. Transpose to obtain the observer gain matrix .

8

Example: Observer Design

Observable Form

Desired poles 9 j9 >> l=place(a',c',[-9+j*9,-9-j*9]) ' % Can use "acker" l= 9.0000 78.0000

• Observable forms are always observable. • Obtain observer form from controller form and interchanging by transposing and (similarly using phase variable form). • Easy design for observable form.

9

Observer Form

10

Example: Observer Form

• Desired poles 9  j 9 • Observer Design • Observer gain vector in terms of coefficients vectors. 11

12

Calculation of the Transformation Matrix (i) Using the controllability matrix with the dual

Observer: Bass-Gura Formula replaced by

• Controller gain formula (to be used for observer)

and design a controller CC

C C

C C

(later: equivalently use observability matrix of original pair)

• For observer design use the transformation

• Transpose the “controller” gain to get the observer gain 13

14

Transformation Matrix

Example

• A system can be transformed to observable form if and only if it is observable:

>> A=[1 2 0;3 4 1;1 2 0]; C=[0 1 1]; >> pa=poly(A); >> Ac=[-pa(2:4);eye(2),zeros(2,1)]; Bc=[1;0;0]; >> pd=poly([-10,-2+j*2,-2-j*2]); >> pp=pd-pa; >> lprime= pp(2:4)*ctrb(Ac,Bc)/ctrb(A',C') >> place(A',C',[-10,-2+j*2,-2-j*2]) % same answer ans = 100.3333 -54.6667 73.6667

• Observability matrix O

O O O

• Transpose to get the transformation of Procedure 1. 15

16

Direct Computation • Observable system: can transform to observable form with

Recall

• True for any observable system O O Observer form is obtained from controller form using i.e. same answer as slide 17!

O O • Transpose to get the result of Procedure 1. 17

Example: Observer Design

18

Solution

Design an observer for observer poles at • Obtain the desired characteristic polynomial. Note: observable pair >> A=[1 2 0;3 4 1;1 2 0]; C=[0 1 1]; >> rank(obsv(A,C)) % rank([C;C*A;C*A^2]) ans = 3 1 2 0 A  3 4 1 1 2 0

1 B   1  0 

• Obtain the characteristic polynomial.

C  0 1 1 D  0

• Subtract to calculate the observer gain for observer form. 19

19

52

80 20

Ackermann’s Formula

Solution • Write down the state and output matrices for observer form

Design using the dual system. 1. Design a controller to place the eigenvalues at using dual system C=

• Calculate the observer gain

and the feedback gain matrix using

O O

C

21

Observer Gain C

Transpose C

Example: Solution with Acker 1 2 0 A  3 4 1 1 2 0

using

C

C

22

O

1 B   1  0 

C  0 1 1 D  0

• Design an observer for observer poles at • Desired characteristic polynomial.

O column of O 23

24

Solution with Acker

O

Conclusion • • • •

O

Full-order observer. Reduced-order observer (not covered). Kalman filter (not covered). Two options: 1. Dual system (MATLAB, place, acker). 2. Direct design.

O 25

26