You are on page 1of 30

Linear Control Systems

Lecture # 12
State Feedback Control

p. 1/3

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 BIBO
stable
The transient response is determined by exponential
modes of the form tk1 ei t

p. 2/3

The shape of the transient response is determined by the


locations of the eigenvalues, e.g.,
A small |Re [i ]| produces slow convergence, while a
large |Re [i ]| produces fast convergence
A real i produces a monotonic response, while a
complex i produces an oscillatory response
For a complex i , the exponential mode becomes more
oscillatory as the ratio |Im [i ]/Re [i ]| increases
If some eigenvalues of A do not have negative real parts or
have negative real parts but the transient response is not
satisfactory, we want to use feedback control to reassign
the eigenvalues

p. 3/3

Feedback control is classified into


State Feedback: all state variables are measured and
can be used in feedback
Output Feedback: Only some output variables are
measured and can be used in feedback
We start by studying state feedback

p. 4/3

Consider the state feedback control


u = Fx + v
F is an m n gain matrix and v(t) is an m-dimensional
external input

Closed-loop system
x = (A + BF )x + Bv
y = (C + DF )x + Dv

The stability and transient response of the closed-loop


system are determined by the eigenvalues of (A + BF )

p. 5/3

The eigenvalues of (A + BF ) are called the closed-loop


eigenvalues, while those of A are called the open-loop
eigenvalues
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/3

Proof: Suppose (A, B) is not controllable. Then there is a


nonsingular n n matrix P such that
#
#
"
"
12
11 A
1
A
B
1
1
=P B=
= P AP =
,
B
A
22
0 A
0
11 is q q , B
1 is q m, the pair (A
11 , B
1 ) is
where A
22 are the
controllable, and the eigenvalues of A
uncontrollable eigenvalues

Partition F P as
FP =

F1 F2

where F1 is m q and F2 is m (n q)

p. 7/3

P 1 (A + BF )P = P 1 AP + P 1 BF P
#
# "
"
i
1 h
11 A
12
B
A
1 F2
+
=
F
22
0 A
0
"
#
11 + B
1 F1 A
1 F2
12 + B
A
=
22
0
A

The closed-loop eigenvalues are the eigenvalues of


22
11 + B
1 F1 ) and the eigenvalues of A
(A
Remark: There is a real F that assigns the eigenvalues of
(A + BF ) at desired locations only if the desired complex
eigenvalues are chosen in conjugate pairs

p. 8/3

Theorem: Let (A, B) be a controllable pair and 1 , . . . n


be an arbitrary set of complex numbers (subject only to the
constraint that complex numbers are in conjugate pairs).
Then, there exists a real m n matrix F such that the
eigenvalues of (A + BF ) are 1 , . . . n
The proof is done by showing how to compute F

p. 9/3

Single-input Systems
Since (A, B) is controllable, there is a nonsingular matrix P
such that
Ac = P 1 AP, Bc = P 1 B


0
1

0
0

.
.
.
.
.
..
..
..

..
..
, Bc =
Ac =

0
0
0 1 n1
1
det(sI A) = sn + n1 sn1 + + 1 s + 0

p. 10/3

Let F = Fc P 1 , where
i
h
Fc = f0 f1 fn1
Ac + B c F c =

0
1

..
..

.
.

0
0

(0 f0 ) (1 f1 )

...

0
..
.

1
(n1 fn1 )

det[sI (Ac + Bc Fc )] =
sn + (n1 fn1 )sn1 + + (1 f1 )s + (0 f0 )

p. 11/3

If {1 , . . . , n } are the desired eigenvalues, then the


desired characteristic polynomial is
d (s) = (s 1 ) (s n )
def

= sn + dn1 sn1 + + d0

Choose
fi = i d i ,

for 0 i n 1

Hence, (Ac + Bc Fc ) has the desired eigenvalues


{1 , . . . , n } and so does
(A + BF ) = P (Ac + Bc Fc )P 1

because the eigenvalues are invariant under state


(similarity) transformations

p. 12/3

Example:

0 1 0

A = 0 0 1 ,
1 0 1

0

B= 0
1

det(sI A) = s3 s2 1

By Routh-Hurwitz criterion, the system is not asymptotically


stable. 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
h
i
F = 3 4 4

p. 13/3

Ackermans Formula: Let


d (s) = sn + dn1 sn1 + + d0

be the desired characteristic polynomial


n1
n
d (Ac ) = An
+
d
A
+

+
d
I
=
A
n1
0
c
c
c +

n1
X

di Aic

i=0

By Cayley-Hamilton Theorem
n1
An
+

A
+ + 0 I = 0
n1 c
c

n1
=

A
0 I =
An
n1 c
c

n1
X

i Aic

i=0

p. 14/3

d (Ac ) =

n1
X

(di i )Ai1
c

i=1

Let ei be the unit vector with one in the ith element


h
i
h
i
eT1 = 1 0 0 , eTn = 0 0 1

n1
Cc = [Bc , Ac Bc , . . . , Ac Bc ] =

0 0
0 0
1
.. ..
. .
0 1

1

eT1 Cc = eTn eT1 = eTn Cc1

..
.

p. 15/3

Ac =

0
..
.

1
..
.

0
0
0 1

eT1 Ac = eT2 =

0
..
...
.

1
n1

0 1 0 0

eT1 A2c = eT2 Ac = eT3

eT1 Acn1 = eTn


eT1 d (Ac ) = eT1

n1
X
i=0

(di i )Aci1 =

n1
X

(di i )eTi+1

i=0

p. 16/3

eT1 d (Ac ) =

n1
X

(di i )eTi+1 = Fc

i=0

Fc = eTn Cc1 d (Ac )

Recall
Cc = P 1 C Cc1 = C 1 P
Ac = P 1 AP

Aic = P 1 Ai P, for i 0

d (Ac ) = P 1 d (A)P
F = Fc P 1

p. 17/3

F = Fc P 1
= eTn Cc1 d (Ac )P 1
= eTn C 1 P P 1 d (A)P P 1
= eTn C 1 d (A)

Ackermans Formula:
F = eTn C 1 d (A)

p. 18/3

Example:

1
0 1

A = 2 1
1 ,
0
1 1

1

B= 0
1

Open-loop eigenvalues are 0.6348 j0.6916, 2.2695


Desired closed-loop eigenvalues are 1, 1, 1

1
0
1

C= 0
3 4 , rank C = 3
1 1
4

p. 19/3

d (s) = (s + 1)3 = s3 + 3s2 + 3s + 1

6 2 5

3
2
d (A) = A + 3A + 3A + I = 10 2 3
4
1 2
h
i
eT3 = 0 0 1
h
i
F = eT3 C 1 d (A) = 0.8 1.4 1.2

p. 20/3

Multi-input systems
Suppose B has full rank. Since (A, B) is controllable, there
is a nonsingular matrix P such that
c + B
c Am , P 1 B = Bc = B
c Bm
P 1 AP = Ac = A
Bm is nonsingular. Let F = Fc P 1
A + BF = P (Ac + Bc Fc )P 1
c + B
c Am + B
c Bm F c
Ac + B c F c = A
Take

1
F c = Bm
(Adm Am )

where Adm is an m n matrix to be chosen

p. 21/3

c + B
c Adm
Ac + B c F c = A

...

c = Block diag
A
, i = 1, . . . , m

0 0

i i

..
c = Block diag
B
, i = 1, . . . , m

1
i

p. 22/3

Let
d (s) = sn + dn1 sn1 + + d0

be the desired characteristic polynomial


Choose the m n matrix Adm as follows:
the first (m 1) rows are chosen be zeros except that
Pj
the j th row has one at column number 1 + i=1 i
the last row is

d0 d1 dn1

p. 23/3

Ac + B c F c =

0
..
.

1
..
.

0
0
d0 d1

0
..
...
.

1
dn1

det[sI (A + BF )] = det[sI (Ac + Bc Fc )] = d (s)

Remark: For single-input systems, there is a unique matrix


F that assigns the eigenvalues of (A + BF ) at 1 , . . . , n
For multi-input systems, F is not unique

p. 24/3

Example:

1 0
1

A = 2 2 2 ,
1 0
3

1 0

B= 0 2
1 1

Eigenvalues of A are 2, 0.7321, 2.7321


Desired eigenvalues are 1, 1 j

d (s) = s3 + 3s2 + 4s + 2

p. 25/3

Matlab Calculations:
W = ctrb(A,B); rank(W), rank(B)
ans = 3
ans = 2
rank(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/3

"

0 1
0

Ac = 1 3 0.5 ,
6 0
1
Am

0
0

Bc = 1 0.5
0
1
"

1 3 0.5
1 0.5
=
, Bm =
6 0
1
0
1
"
#
0
1.5
5
F =
0.6667 3.3333 4.6667

p. 27/3

What if rank B = r < m?


There ish a nonsingular
matrix R such that
i

BR =

B1 0 , where the n r matrix B1 has full rank

Find F1"to assign


the eigenvalues of (A + B1 F1 ). Take
#
F1
F =R

A + BF = A + BR
= A+

"

F1

B1 0

#
"

F1

= A + B1 F1

p. 28/3

Eigenvalue Assignment Using Matlab:


Matlab has two commands
K = acker(A, B, p) assigns the eigenvalues of
(A BK) at the elements of the vector p. It is used
only with single-input systems
K = place(A, B, p) assigns the eigenvalues of
(A BK) at the elements of the vector p. It works for
multi-input systems, but does not allow multiple desired
eigenvalues

Using the place command in the last example gives


#
"
0.1645 1.4989 4.7965
F =
1.0000 1.3160 0.2639

p. 29/3

Stabilizability: The system


x = Ax + Bu

is stabilizable if there exists a matrix F such that the


closed-loop system
x = (A + BF )x

is asymptotically stable
Theorem: (A, B) is stabilizable if and only if the
uncontrollable eigenvalues of A, if any, have negative real
parts

p. 30/3

You might also like