Definition of Pole Placement • (Pole Assignment, Pole Allocation) Placing the poles or eigenvalues of the closed-loop system at specified locations. • Poles can be arbitrarily placed if and only if the system is controllable. • Pole placement is easier if the system is given in controllable form.

Pole Placement M. S. Fadali Professor EE University of Nevada, Reno

1

State Feedback

Closed-Loop Dynamics

• Use the state vector to compute the control action for specified system dynamics.

• Substitute for the control

x(k 1) Ax(k ) B Kx(k ) v( k )

x(k 1) Ax(k ) Bu( k )

A BK x(k ) Bv( k )

y( k ) Cx(k )

u( k ) Kx(k ) v( k ) v(k)

x(k+1)

u(k) +

B

2

+

T

• Closed-loop state matrix Acl A B K x(k)

y(k)

x(k 1) Acl x(k ) Bv( k )

C

y( k ) Cx(k )

A

K 3

4

Output Feedback

Pole Placement

• Output measurements y must then be used to obtain the control u u( k ) K y y( k ) v( k ) x(k 1) Ax(k ) B K y Cx(k ) v( k ) A BK y C x(k ) Bv( k )

v(k)

x(k+1)

u(k) +

B

+

Ay A BK y C

x(k) T

• Choose the gain matrix K or Ky to assign the system eigenvalues to an arbitrary set {i , i = 1, ... , n}. • Easier with state feedback but output feedback is more realistic.

= K y Cx(k ) v( k )

y(k) C

A

K 5

6

Procedure 9.1: Pole Placement by Equating Coefficients

Theorem 9.1 State Feedback If the pair (A, B) is controllable, then there exists a feedback gain matrix K that arbitrarily assigns the system poles to any set {i , i = 1, ... , n}. Furthermore, if the pair (A, B) is stabilizable, then the controllable modes can all be arbitrarily assigned.

7

1. Evaluate the desired characteristic polynomial from the specified eigenvalues using the expression ௗ ୀଵ 2. Evaluate the closed-loop characteristic polynomial using the expression 3. Equate the coefficients of the two polynomials to obtain equations to be solved for the entries of the matrix . 8

Solution

Example 9.1 • Assign the eigenvalues {0.3 j 0.2} to the pair

0 1 A , 3 4

• For the given eigenvalues the desired characteristic polynomial is dc ( ) 0.3 j 0.2 0.3 j 0.2 2 0.6 0.13

0 b 1

• The closed-loop state matrix 0 1 0 A bk T k1 3 4 1

0 k2 3 k1

1 4 k 2

• The closed-loop characteristic polynomial is 1 detI n A bk T det 3 k1 4 k 2 2 4 k 2 3 k1 9

10

Lemma

Equating Coefficients

1 detI n A bk T det 3 k1 4 k 2 2 4 k 2 3 k1

• Gives two equations (i) 4 k2 = 0.6 (ii) 3 + k1 = 0.13

For any controllable pair matrix an invertible

k2 = 3.4 k1 = 3.13

where

ିଵ

, there exists such that

ିଵ

is in controllable form.

i.e. kT = [3.13, 3.4] 11

12

Transformation

Transformation C

ିଵ

ିଵ

ିଵ

ିଵ

ିଵ ିଵ

ିଵ ିଵ

ିଵ

ିଵ

C ିଵ

C Cିଵ

CCିଵ

13

Theorem For any controllable single-input pair (A, b), and any set of real or complex conjugate values {i, i = 1, 2, …, n}, there exists a unique 1 by n vector kT such that the eigenvalues of the closed-loop matrix (A b kT) are placed at Remark

a1 a2 a a3 2 1 n 1 Tc C Cc = b Ab ... A b a 1 n1 0 1 0 0 0 1 0 0 0 t 2n b Tc1 Cc C 1 = 0 0 1 t n 2 ,n 0 1 t 2 n t n1,n 1 t 2 n t3n t nn

an1 1 1 0 0 0 0 0

Ab ... An1 b

1

14

Proof The set can be used to construct the desired characteristic polynomial p d ( z ) z id z n a nd1 z n 1 a1d z a0d n

i 1

By the Lemma, any controllable system with characteristic polynomial n

1- For controllable multiple-input systems, a r by n matrix K exists but is not unique. 2- For stabilizable systems, the controllable modes can be arbitrarily selected but the uncontrollable modes are invariant. 15

p ( z ) z i z n an1 z n1 a1 z a0 i 1

can be written in controllable form 0 1 n 1 I n 1 Ac a 0 a 1 a n 1

0 1 n 1 bc 1 16

Pole Placement

Feedback Gains

• For the desired pole placement, change the characteristic polynomial of the system to pd(z) using the feedback gain vector k Tc k c ,1

The desired characteristic polynomials is implemented if the following equalities hold

kc , 2 kc ,n

aid1 ai 1 kc ,i ,

01n 1 I n 1 01n 1 Ac b c k Tc k c ,1 k c , 2 k c ,n a0 a1 an 1 1 01n 1 I n 1 a0 k c ,1 a1 k c , 2 an 1 k c , n I 0 d 1n d1 n 1 d a0 a1 an 1

i 1,2,, n

kc ,i aid1 ai 1 k c ad a a a0

a d a0d

a1 an 1

T

a1d

and1

T

17

State Feedback For Any Form

Transformation Matrix T Obtain the transformation matrix T from the controllability matrices or from the adj[zI A]

• By the Lemma, there exists a similarity transformation to controllable canonical form. is unique. ܿ is unique and therefore

்

ିଵ

ିଵ

T CC c1 T 1 C c C 1

் ିଵ

் ்

18

் ିଵ 19

1 1 z z adj zI n Ab P0b P1b Pn1b T z n1 z n1 T P0b P1b b , Pn1 I n 20

MATLAB

Design Procedure

>> A = [0, 1; 3, 4]; >> B = [0; 1]; >>poles=[-0.3+j*0.3,-0.3-j*0.3]; % Desired poles >> K=place(A, B, poles) % Gain matrix place: ndigits= 16 K= 3.18 4.6 ndigits is a measure of the accuracy of pole placement.

1. Calculate the characteristic polynomial of the plant and obtain the vector . 2. Calculate the desired characteristic polynomial ௗ ଶ

ௗ ଵ

ௗ

and the vector

݀.

4. Calculate the transformation matrix using either (i) , or (ii) T 1 = Cc C 1 5. Calculate the feedback gain matrix ܶ

݀

ିଵ

21

MATLAB: Basic Principles

22

Example 9.2

• Generate the characteristic polynomial of a matrix: >> poly(A) • Obtain the coefficients of the characteristic polynomial from a set of desired eigenvalues given as the entries of a vector poles >> desired= poly(poles)

23

• Design a state feedback for the pair to obtain the eigenvalues {0.1, 0.4 j 0.4} 0.1 0 0.1 A 0 0.5 0.2 0.2 0 0.4

0.01 b 0 0.005

24

Solution

Solution (cont.)

• Characteristic polynomial of the state matrix 3 2 + 0.27 0.01 i.e. a2 = 1, a1 = 0.27, a0 = 0.01 • The transformation matrix Tc1

• The desired characteristic polynomial is 3 0.92 + 0.4 0.032 i.e. ad2 = 0.9, ad1 = 0.4, ad0 = 0.032 • Feedback gain vector

1

1 0 0 10 1.5 0.6 1 3 Tc 0 1 1 10 0 1 1.3 1 1 0.73 5 4 1.9 1.25 0.3846 0.1923 3 10 0.0577 0.625 0.1154 0.0173 0.3125 0.1654

k T a0d a0

a1d a1

a2d a2 Tc

1

1.25 0.3846 0.1923 0.032 0.01 0.4 0.27 0.9 110 0.0577 0.625 0.1154 0.0173 0.3125 0.1654 3

10 85 40 25

26

Pole Placement M. S. Fadali Professor EE University of Nevada, Reno

1

State Feedback

Closed-Loop Dynamics

• Use the state vector to compute the control action for specified system dynamics.

• Substitute for the control

x(k 1) Ax(k ) B Kx(k ) v( k )

x(k 1) Ax(k ) Bu( k )

A BK x(k ) Bv( k )

y( k ) Cx(k )

u( k ) Kx(k ) v( k ) v(k)

x(k+1)

u(k) +

B

2

+

T

• Closed-loop state matrix Acl A B K x(k)

y(k)

x(k 1) Acl x(k ) Bv( k )

C

y( k ) Cx(k )

A

K 3

4

Output Feedback

Pole Placement

• Output measurements y must then be used to obtain the control u u( k ) K y y( k ) v( k ) x(k 1) Ax(k ) B K y Cx(k ) v( k ) A BK y C x(k ) Bv( k )

v(k)

x(k+1)

u(k) +

B

+

Ay A BK y C

x(k) T

• Choose the gain matrix K or Ky to assign the system eigenvalues to an arbitrary set {i , i = 1, ... , n}. • Easier with state feedback but output feedback is more realistic.

= K y Cx(k ) v( k )

y(k) C

A

K 5

6

Procedure 9.1: Pole Placement by Equating Coefficients

Theorem 9.1 State Feedback If the pair (A, B) is controllable, then there exists a feedback gain matrix K that arbitrarily assigns the system poles to any set {i , i = 1, ... , n}. Furthermore, if the pair (A, B) is stabilizable, then the controllable modes can all be arbitrarily assigned.

7

1. Evaluate the desired characteristic polynomial from the specified eigenvalues using the expression ௗ ୀଵ 2. Evaluate the closed-loop characteristic polynomial using the expression 3. Equate the coefficients of the two polynomials to obtain equations to be solved for the entries of the matrix . 8

Solution

Example 9.1 • Assign the eigenvalues {0.3 j 0.2} to the pair

0 1 A , 3 4

• For the given eigenvalues the desired characteristic polynomial is dc ( ) 0.3 j 0.2 0.3 j 0.2 2 0.6 0.13

0 b 1

• The closed-loop state matrix 0 1 0 A bk T k1 3 4 1

0 k2 3 k1

1 4 k 2

• The closed-loop characteristic polynomial is 1 detI n A bk T det 3 k1 4 k 2 2 4 k 2 3 k1 9

10

Lemma

Equating Coefficients

1 detI n A bk T det 3 k1 4 k 2 2 4 k 2 3 k1

• Gives two equations (i) 4 k2 = 0.6 (ii) 3 + k1 = 0.13

For any controllable pair matrix an invertible

k2 = 3.4 k1 = 3.13

where

ିଵ

, there exists such that

ିଵ

is in controllable form.

i.e. kT = [3.13, 3.4] 11

12

Transformation

Transformation C

ିଵ

ିଵ

ିଵ

ିଵ

ିଵ ିଵ

ିଵ ିଵ

ିଵ

ିଵ

C ିଵ

C Cିଵ

CCିଵ

13

Theorem For any controllable single-input pair (A, b), and any set of real or complex conjugate values {i, i = 1, 2, …, n}, there exists a unique 1 by n vector kT such that the eigenvalues of the closed-loop matrix (A b kT) are placed at Remark

a1 a2 a a3 2 1 n 1 Tc C Cc = b Ab ... A b a 1 n1 0 1 0 0 0 1 0 0 0 t 2n b Tc1 Cc C 1 = 0 0 1 t n 2 ,n 0 1 t 2 n t n1,n 1 t 2 n t3n t nn

an1 1 1 0 0 0 0 0

Ab ... An1 b

1

14

Proof The set can be used to construct the desired characteristic polynomial p d ( z ) z id z n a nd1 z n 1 a1d z a0d n

i 1

By the Lemma, any controllable system with characteristic polynomial n

1- For controllable multiple-input systems, a r by n matrix K exists but is not unique. 2- For stabilizable systems, the controllable modes can be arbitrarily selected but the uncontrollable modes are invariant. 15

p ( z ) z i z n an1 z n1 a1 z a0 i 1

can be written in controllable form 0 1 n 1 I n 1 Ac a 0 a 1 a n 1

0 1 n 1 bc 1 16

Pole Placement

Feedback Gains

• For the desired pole placement, change the characteristic polynomial of the system to pd(z) using the feedback gain vector k Tc k c ,1

The desired characteristic polynomials is implemented if the following equalities hold

kc , 2 kc ,n

aid1 ai 1 kc ,i ,

01n 1 I n 1 01n 1 Ac b c k Tc k c ,1 k c , 2 k c ,n a0 a1 an 1 1 01n 1 I n 1 a0 k c ,1 a1 k c , 2 an 1 k c , n I 0 d 1n d1 n 1 d a0 a1 an 1

i 1,2,, n

kc ,i aid1 ai 1 k c ad a a a0

a d a0d

a1 an 1

T

a1d

and1

T

17

State Feedback For Any Form

Transformation Matrix T Obtain the transformation matrix T from the controllability matrices or from the adj[zI A]

• By the Lemma, there exists a similarity transformation to controllable canonical form. is unique. ܿ is unique and therefore

்

ିଵ

ିଵ

T CC c1 T 1 C c C 1

் ିଵ

் ்

18

் ିଵ 19

1 1 z z adj zI n Ab P0b P1b Pn1b T z n1 z n1 T P0b P1b b , Pn1 I n 20

MATLAB

Design Procedure

>> A = [0, 1; 3, 4]; >> B = [0; 1]; >>poles=[-0.3+j*0.3,-0.3-j*0.3]; % Desired poles >> K=place(A, B, poles) % Gain matrix place: ndigits= 16 K= 3.18 4.6 ndigits is a measure of the accuracy of pole placement.

1. Calculate the characteristic polynomial of the plant and obtain the vector . 2. Calculate the desired characteristic polynomial ௗ ଶ

ௗ ଵ

ௗ

and the vector

݀.

4. Calculate the transformation matrix using either (i) , or (ii) T 1 = Cc C 1 5. Calculate the feedback gain matrix ܶ

݀

ିଵ

21

MATLAB: Basic Principles

22

Example 9.2

• Generate the characteristic polynomial of a matrix: >> poly(A) • Obtain the coefficients of the characteristic polynomial from a set of desired eigenvalues given as the entries of a vector poles >> desired= poly(poles)

23

• Design a state feedback for the pair to obtain the eigenvalues {0.1, 0.4 j 0.4} 0.1 0 0.1 A 0 0.5 0.2 0.2 0 0.4

0.01 b 0 0.005

24

Solution

Solution (cont.)

• Characteristic polynomial of the state matrix 3 2 + 0.27 0.01 i.e. a2 = 1, a1 = 0.27, a0 = 0.01 • The transformation matrix Tc1

• The desired characteristic polynomial is 3 0.92 + 0.4 0.032 i.e. ad2 = 0.9, ad1 = 0.4, ad0 = 0.032 • Feedback gain vector

1

1 0 0 10 1.5 0.6 1 3 Tc 0 1 1 10 0 1 1.3 1 1 0.73 5 4 1.9 1.25 0.3846 0.1923 3 10 0.0577 0.625 0.1154 0.0173 0.3125 0.1654

k T a0d a0

a1d a1

a2d a2 Tc

1

1.25 0.3846 0.1923 0.032 0.01 0.4 0.27 0.9 110 0.0577 0.625 0.1154 0.0173 0.3125 0.1654 3

10 85 40 25

26