State Feedback Control
Embed Size (px)
description
Transcript of State Feedback Control

Linear Control SystemsLecture # 12
State Feedback Control
p. 1/30

The system
x = Ax+Bu
y = Cx+Du
is asymptotically stable if and only if
Re[i] < 0
for all eigenvalues of A
This condition also guarantees that the system is BIBOstable
The transient response is determined by exponentialmodes of the form tk1eit
p. 2/30

The shape of the transient response is determined by thelocations of the eigenvalues, e.g.,
A small Re[i] produces slow convergence, while alarge Re[i] produces fast convergence
A real i produces a monotonic response, while acomplex i produces an oscillatory response
For a complex i, the exponential mode becomes moreoscillatory as the ratio Im[i]/Re[i] increases
If some eigenvalues of A do not have negative real parts orhave negative real parts but the transient response is notsatisfactory, we want to use feedback control to reassignthe eigenvalues
p. 3/30

Feedback control is classified into
State Feedback: all state variables are measured andcan be used in feedback
Output Feedback: Only some output variables aremeasured and can be used in feedback
We start by studying state feedback
p. 4/30

Consider the state feedback control
u = Fx+ v
F is an m n gain matrix and v(t) is an mdimensionalexternal input
Closedloop system
x = (A+BF )x+Bv
y = (C +DF )x+Dv
The stability and transient response of the closedloopsystem are determined by the eigenvalues of (A+BF )
p. 5/30

The eigenvalues of (A+BF ) are called the closedloopeigenvalues, while those of A are called the openloopeigenvalues
Can we choose F to arbitrarily assign the eigenvalues of(A+BF )?
Lemma: The uncontrollable eigenvalues of (A,B), if any,cannot be relocated by feedback
p. 6/30

Proof: Suppose (A,B) is not controllable. Then there is anonsingular n n matrix P such that
A = P1AP =
[
A11 A12
0 A22
]
, B = P1B =
[
B1
0
]
where A11 is q q, B1 is q m, the pair (A11, B1) iscontrollable, and the eigenvalues of A22 are theuncontrollable eigenvalues
Partition FP asFP =
[
F1 F2
]
where F1 is m q and F2 is m (n q)
p. 7/30

P1(A+BF )P = P1AP + P1BFP
=
[
A11 A12
0 A22
]
+
[
B1
0
]
[
F1 F2
]
=
[
A11 + B1F1 A12 + B1F2
0 A22
]
The closedloop eigenvalues are the eigenvalues of(A11 + B1F1) and the eigenvalues of A22
Remark: There is a real F that assigns the eigenvalues of(A+BF ) at desired locations only if the desired complexeigenvalues are chosen in conjugate pairs
p. 8/30

Theorem: Let (A,B) be a controllable pair and 1, . . . nbe an arbitrary set of complex numbers (subject only to theconstraint that complex numbers are in conjugate pairs).Then, there exists a real m n matrix F such that theeigenvalues of (A+BF ) are 1, . . . n
The proof is done by showing how to compute F
p. 9/30

Singleinput Systems
Since (A,B) is controllable, there is a nonsingular matrix Psuch that
Ac = P1AP, Bc = P
1B
Ac =
0 1 0...
... . . ....
0 0 1
0 1 n1
, Bc =
0...0
1
det(sI A) = sn + n1sn1 + + 1s+ 0
p. 10/30

Let F = FcP1, where
Fc =[
f0 f1 fn1
]
Ac +BcFc =
0 1 0...
... . . ....
0 0 1
(0 f0) (1 f1) (n1 fn1)
det[sI (Ac +BcFc)] =
sn + (n1 fn1)sn1 + + (1 f1)s+ (0 f0)
p. 11/30

If {1, . . . , n} are the desired eigenvalues, then thedesired characteristic polynomial is
d(s) = (s 1) (s n)
def= sn + dn1s
n1 + + d0
Choosefi = i di, for 0 i n 1
Hence, (Ac +BcFc) has the desired eigenvalues{1, . . . , n} and so does
(A+BF ) = P (Ac +BcFc)P1
because the eigenvalues are invariant under state(similarity) transformations
p. 12/30

Example:
A =
0 1 0
0 0 1
1 0 1
, B =
0
0
1
det(sI A) = s3 s2 1
By RouthHurwitz criterion, the system is not asymptoticallystable. Design K to assign the eigenvalues of (A+BK)at 1, 1 j. Desired characteristic equation:
d(s) = (s+ 1)(s2 + 2s+ 2) = s3 + 3s2 + 4s+ 2
F =[
3 4 4]
p. 13/30

Ackermans Formula: Let
d(s) = sn + dn1s
n1 + + d0
be the desired characteristic polynomial
d(Ac) = Anc + dn1A
n1c + + d0I = A
nc +
n1
i=0
diAic
By CayleyHamilton Theorem
Anc + n1An1c + + 0I = 0
Anc = n1An1c 0I =
n1
i=0
iAic
p. 14/30

d(Ac) =
n1
i=1
(di i)Ai1c
Let ei be the unit vector with one in the ith element
eT1 =[
1 0 0]
, eTn =[
0 0 1]
Cc = [Bc, AcBc, . . . , An1c Bc] =
0 0 1
0 0 1 ...
......
0 1
1
eT1 Cc = eTn e
T1 = e
TnC1c
p. 15/30

Ac =
0 1 0...
... . . ....
0 0 1
0 1 n1
eT1Ac = eT2 =
[
0 1 0 0]
eT1A2c = e
T2Ac = e
T3
eT1An1c = e
Tn
eT1d(Ac) = eT1
n1
i=0
(di i)Ai1c =
n1
i=0
(di i)eTi+1
p. 16/30

eT1d(Ac) =
n1
i=0
(di i)eTi+1 = Fc
Fc = eTnC1c d(Ac)
RecallCc = P
1C C1c = C1P
Ac = P1AP Aic = P
1AiP, for i 0
d(Ac) = P1d(A)P
F = FcP1
p. 17/30

F = FcP1
= eTnC1c d(Ac)P
1
= eTnC1PP1d(A)PP
1
= eTnC1d(A)
Ackermans Formula:
F = eTnC1d(A)
p. 18/30

Example:
A =
1 0 1
2 1 1
0 1 1
, B =
1
0
1
Openloop eigenvalues are 0.6348 j0.6916, 2.2695Desired closedloop eigenvalues are 1, 1, 1
C =
1 0 1
0 3 4
1 1 4
, rank C = 3
p. 19/30

d(s) = (s+ 1)3 = s3 + 3s2 + 3s+ 1
d(A) = A3 + 3A2 + 3A+ I =
6 2 5
10 2 3
4 1 2
eT3 =[
0 0 1]
F = eT3 C1d(A) =
[
0.8 1.4 1.2]
p. 20/30

Multiinput systems
Suppose B has full rank. Since (A,B) is controllable, thereis a nonsingular matrix P such that
P1AP = Ac = Ac + BcAm, P1B = Bc = BcBm
Bm is nonsingular. Let F = FcP1
A+BF = P (Ac +BcFc)P1
Ac +BcFc = Ac + BcAm + BcBmFc
Take Fc = B1m (Adm Am)
where Adm is an m n matrix to be chosen
p. 21/30

Ac +BcFc = Ac + BcAdm
Ac = Block diag
1. . .
1
0 0
ii
, i = 1, . . . ,m
Bc = Block diag
0...0
1
i1
, i = 1, . . . ,m
p. 22/30

Letd(s) = s
n + dn1sn1 + + d0
be the desired characteristic polynomial
Choose the m n matrix Adm as follows:
the first (m 1) rows are chosen be zeros except thatthe jth row has one at column number 1 +
ji=1 i
the last row is[
d0 d1 dn1
]
p. 23/30

Ac +BcFc =
0 1 0...
... . . ....
0 0 1
d0 d1 dn1
det[sI (A+BF )] = det[sI (Ac +BcFc)] = d(s)
Remark: For singleinput systems, there is a unique matrixF that assigns the eigenvalues of (A+BF ) at 1, . . . , nFor multiinput systems, F is not unique
p. 24/30

Example:
A =
1 0 1
2 2 2
1 0 3
, B =
1 0
0 2
1 1
Eigenvalues of A are 2, 0.7321, 2.7321Desired eigenvalues are 1, 1 j
d(s) = s3 + 3s2 + 4s+ 2
p. 25/30

Matlab Calculations:W = ctrb(A,B); rank(W), rank(B)ans = 3ans = 2rank(W(:,1:3))ans = 3
1 = 2, 2 = 1
Cbar = [W(:,1) W(:,3) W(:,2)]; M = inv(Cbar);Q = [M(2,:); M(2,:)*A; M(3,:)]; P = inv(Q); PI = Q;Ac = PI*A*P; Bc = PI*B;Am = [Ac(2,:);Ac(3,:)]; Bm = [Bc(2,:);Bc(3,:)];Adm = [0 0 1;2 4 3];Fc = inv(Bm)*(Adm  Am); F = Fc*PI;
p. 26/30

Ac =
0 1 0
1 3 0.5
6 0 1
, Bc =
0 0
1 0.5
0 1
Am =
[
1 3 0.5
6 0 1
]
, Bm =
[
1 0.5
0 1
]
F =
[
0 1.5 5
0.6667 3.3333 4.6667
]
p. 27/30

What if rank B = r < m?
There is a nonsingular matrix R such thatBR =
[
B1 0]
, where the n r matrix B1 has full rank
Find F1 to assign the eigenvalues of (A+B1F1). Take
F = R
[
F1
]
A+BF = A+BR
[
F1
]
= A+[
B1 0]
[
F1
]
= A+B1F1
p. 28/30

Eigenvalue Assignment Using Matlab:Matlab has two commands
K = acker(A,B, p) assigns the eigenvalues of(ABK) at the elements of the vector p. It is usedonly with singleinput systems
K = place(A,B, p) assigns the eigenvalues of(ABK) at the elements of the vector p. It works formultiinput systems, but does not allow multiple desiredeigenvalues
Using the place command in the last example gives
F =
[
0.1645 1.4989 4.7965
1.0000 1.3160 0.2639
]
p. 29/30

Stabilizability: The system
x = Ax+Bu
is stabilizable if there exists a matrix F such that theclosedloop system
x = (A+BF )x
is asymptotically stable
Theorem: (A,B) is stabilizable if and only if theuncontrollable eigenvalues of A, if any, have negative realparts
p. 30/30