full state feedback for state space...

24
Full State Feedback for State Space Approach

Upload: vuongkhuong

Post on 07-Mar-2018

215 views

Category:

Documents


1 download

TRANSCRIPT

Full State Feedbackfor State Space Approach

State Space Equations

• Using Cramer’s rule it can be shown that the characteristic equation of the system is :

0]det[ AsI

• Roots (for s) of the resulting polynomial will be the poles of the system.

• These values for s in the above equation are the eigenvalues of [A].

Full-State Feedback

Full-State Feedback

BKAA

Kxu

CL

2

1

x

xx

State Space Characteristics

• Controllability

– Can a system be controlled, fully?

• Each state requires control.

• Observability

– Are all states observable ?

• Must be observed to be used as feedback

– Sensors may be needed to measure states

– Models may be constructed to estimate states that cannot be measured.

Controllability• You are sitting in your car on an infinite, flat plane and facing

north. The goal is to reach any point in the plane by driving a distance in a straight line, come to a full stop, turn, and driving another distance, again, in a straight line. If your car has no steering then you can only drive straight, which means you can only drive on a line (in this case the north-south line since you started facing north). The lack of steering case would be analogous to when the rank of is 1 (the two distances you drove are on the same line).

• Now, if your car did have steering then you could easily drive to any point in the plane and this would be the analogous case to when the rank of is 2.

Controllability of State Space

제 14강 13

• Controllability

A system is completely controllable if there exists an unconstrained control u(t) that can transfer any initial state x(t0) to any other desired location x(t) in a finite time t0 t T.

ux Ax B

rank[ ]c nP

2 1Controllability Matrix [ ]n

cP B AB A B A B

n n

n mControllable

0cP

n n

Example 1

제 14강 14

• Controllability

Example 1: Controllability of a system

0 1 2

0 1 0 0

0 0 1 0 u

1

y= 1 0 0 0 u

a a a

x x

x

2 1

2

2

2 2 1

0 0 1

[ ] 0 1

1 ( )

n

c a

a a a

P B AB A B A B 1cP

0 1 2

2

2

2

2 2 1

0 1 0 0

0 0 1 , 0

1

0 0

1 ,

( )

a a a

a

a a a

A B

AB A B

Det. Not 0

Rank is full,

Controllable

Ackermann’s Formula & Full State Feedback

Observability of State Space

제 14강 17

• Observability

A system is completely observable if and only if there exists a finite time T such that the initial state x(0) can be determined from the observation history y(t) given the control u(t).

u

y=

x Ax B

Cx

rank[ ]o nP

1Observability Matrix [ ]n T

oP C CA CA

Controllable

0oP

1 n

n 1

n n

Example 2

제 14강 18

Example 2: Observability of a system

0 1 2

0 1 0 0

0 0 1 0 u

1

y= 1 0 0 0 u

a a a

x x

x

1

1 0 0

[ ] 0 1 0

0 0 1

n T

oP C CA CA 1oP

0 1 2

2

0 1 0

0 0 1 ,

1 0 0

0 1 0 ,

0 0 1

a a a

A

C

CA

CA

Observable

• Observability

Example 3

Example 3: Controllability and Observability of a two-state system

2 0 1u

1 1 1

y= 1 1

x x

x

0c oP P

1 2 1 2, ,

1 2 1 2

1 11 1 , 1 1 ,

1 1

c

T

o

B AB P B AB

C CA P C CA

Not Controllable and Not Observable

• Observability

1 2

1 2 1 2 1

1 2

2 ( )

y x x

x x x x x u u

x x

Exercise 1

Is the following system completely state controllable and completely observable?

Matlab Commands• obsv

– obsv (A,C) returns the observability matrix [C; CA; C(A^2) ... C(A^n)]

– If rank is full then it is observable

– rank(obsv(A,C) )

• ctrb

– ctrb(A,B) returns the controllability matrix [B AB (A^2)B ...]

– If rank is full then it is controllable

– rank(ctrb(A,B) )

More Matlab• K = place(A,B,p)

– computes a feedback gain matrix K that achieves the desired closed-loop pole locations p, assuming all the inputs of the plant are control inputs. The length of p must match the row size of A.

• K= acker (A,B,p)

– uses Ackermann's formula to calculate a gain vector k such that the state feedback places the closed-loop poles at the locations p. Limited to single input systems.

Matlab Commands

A=[0 1 0; 0 0 1; -6 -11 -6]

B=[0 0 1]'

C=[20 9 1]

D=[0]

Mo=obsv(A,C)

rank(Mc)

Mc=ctrb(A,B)

rank(Mo)

Mo =

20 9 1

-6 9 3

-18 -39 -9

ans =

3

Mc =

0 0 1

0 1 -6

1 -6 25

ans =

3

Thus, the answer is YES!

A = 0 1 0

0 0 1

-6 -11 -6

B =

0

0

1

C = 20 9 1

D = 0