Modern Control Design: Pole-Placement and Observer-Based State Feedback, Summaries of Design

Modern control design, specifically pole-placement and observer-based state feedback. It covers the design of a state feedback control to place closed-loop poles, the use of state estimators for systems with unavailable states, and the design of a full-state observer. The document also includes examples and MATLAB code.

Typology: Summaries

2021/2022

Uploaded on 09/27/2022

gustavott
gustavott 🇬🇧

3.9

(14)

253 documents

1 / 14

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
CHAPTER
8
MODERN
CONTROL
DESIGN
The classical design techniques of Chapters 6 and 7 are based on the root-locus and
frequency response that utilize only the plant output for feedback with a dynamic
controller. In this final chapter on design, we employ modern control designs that
require the use of all state variables to form a linear static controller. Modern control
design is especially useful in multivariable systems; however, in this chapter the ideas
of state-space design are illustrated using single-input, single-output systems.
One approach in modern control systems accomplished by the use of state feed-
back is known as pole-placement design. The pole-placement design allows all roots
of the system characteristic equation to be placed in desired locations. This results in
a regulator with constant gain vector
K
.
The state-variable feedback concept requires that all states be accessible in a
physical system, but for most systems this requirement is not met; i.e., some of the
states are inaccessible. For systems in which all states are not available for feedback,
a state estimator (observer) may be designed to implement the pole-placement design.
The other approach to the design of regulator systems is the optimal control
problem where a specified mathematical performance criterion is minimized.
170
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Partial preview of the text

Download Modern Control Design: Pole-Placement and Observer-Based State Feedback and more Summaries Design in PDF only on Docsity!

CHAPTER

MODERN

CONTROL

DESIGN

The classical design techniques of Chapters 6 and 7 are based on the root-locus and

frequency response that utilize only the plant output for feedback with a dynamic

controller. In this final chapter on design, we employ modern control designs that

require the use of all state variables to form a linear static controller. Modern control

design is especially useful in multivariable systems; however, in this chapter the ideas

of state-space design are illustrated using single-input, single-output systems.

One approach in modern control systems accomplished by the use of state feed-

back is known as pole-placement design. The pole-placement design allows all roots

of the system characteristic equation to be placed in desired locations. This results in

a regulator with constant gain vector K.

The state-variable feedback concept requires that all states be accessible in a

physical system, but for most systems this requirement is not met; i.e., some of the

states are inaccessible. For systems in which all states are not available for feedback,

a state estimator (observer) may be designed to implement the pole-placement design.

The other approach to the design of regulator systems is the optimal control

problem where a specified mathematical performance criterion is minimized.

8.1. Pole-Placement Design 171

8.1 Pole-Placement Design

The control is achieved by feeding back the state variables through a regulator with

constant gains. Consider the control system presented in the state-variable form

x _(t) = Ax(t) + Bu(t) (8.1)

y (t) = Cx(t)

Consider the block diagram of the system shown in Figure 8.1 with the following state

feedback control

u(t) = Kx(t) (8.2)

where K is a 1  n vector of constant feedback gains. The control system input r (t)

is assumed to be zero. The purpose of this system is to return all state variables to

values of zero when the states have been perturbed.

....................................................................................................................... ..... .

.........

......

.



 

................................................................................................................................................................................................................................................................................................................................................ ..... .

.........

......

.

Plant

................................................................................... ..... .

.........

......

.

. .. ... .. ... .. ... .. ... .. ... .. ... .. ... ..............................................................................................................................................................................................

......

..

........... .....

k

n

....................................................... ..

...

....

....

...

....

....

...

....

....

...

....

...

....

....

...

....

...

....

....

...

....

... ..... ...... ....

.. ... ... ... ... ..

. .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... ..........................................................................................................................................................

......

..

........... .....

k

................................................................................................................................................ ..

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...

...... ... .... ......

... ... .. ... .. ...

. .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... ......................................................................................................................

......

..

........... .....

k

........................................................................................................................................................................................................................................................................................................................................................................ ...

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

.. .. ... ... .. ... ..

. .. ... ... .. ... ..

r (t) = 0 u(t) y (t)

x

n

(t)

   x

(t) x

(t)

FIGURE 8.

Control system design via pole placement.

Substituting (8.2) into (8.1), the closed-loop system state-variable representation

is

x _(t) = (A BK )x(t) = A

f

x(t) (8.3)

The closed-loop system characteristic equation is

jsI A + BKj = 0 (8.4)

Assume the system is represented in the phase variable canonical form as follows

2 6 6 6 6 6 6 4

x _

x _

x _

n 1

x _

n

3 7 7 7 7 7 7 5

2 6 6 6 6 6 6 4

a

a

a

: : : a

n 1

3 7 7 7 7 7 7 5 2 6 6 6 6 6 6 4

x

x

x

n 1

x

n

3 7 7 7 7 7 7 5

2 6 6 6 6 6 6 4

3 7 7 7 7 7 7 5

u(t)

8.1. Pole-Placement Design 173

y =





x

design a state feedback control to place the closed-loop pole at 3  j 4 and 8.

Obtain the initial condition response, given x

(0) = 1 , x

(0) = 1 and x

(0) = 1.

The following commands

A=[-1 0 0; -1 -2 0; 1 0 0];

B=[1; 0; 0];

C=[1 1 0 ]; D=0;

j=sqrt(-1);

P=[-3+j4 -3-j4 -8]; % desired closed-loop poles

[K,Af]=placepol(A,B,C,P); % returns gain K and closed-loop

% system matrix

% initial condition response

t=0:.02:2;

r=zeros(1,length(t)); % generates a row of zero input

x0=[1 1 -1]; % initial state

[y,x]=lsim(Af, B, C, D, r, t, x0); % initial state response

subplot(2,2,1), plot(t, x(:,1)),title('x_1(t)'), grid

subplot(2,2,2), plot(t, x(:,2)),title('x_2(t)'), grid

subplot(2,2,3), plot(t, x(:,3)),title('x_3(t)'), grid

subplot(2,2,4), plot(t, y),title('y(t)'), grid

subplot(111)

result in

Feedback gain vector K

Uncompensated Plant

Transfer function:

s^2 + s

s^3 + 3 s^2 + 2 s

Compensated system closed-loop

Transfer function:

s^2 + s

s^3 + 14 s^2 + 73 s + 200

Compensated system matrix A - B*K

The results are given in Figure 8.2.

174 8. Modern Control Design

x

(t)

x

(t)

x

(t)

y(t)

FIGURE 8.

Initial condition response for Example 8.1.

Example 8.

A single-input single-output plant has the transfer function

G(s) =

s(s + 1)(s + 4)

Obtain a state model for the plant and design a state feedback that will place the

closed-loop pole at 2  j 2 and 5. Also, obtain the closed-loop transfer function

for the controlled system.

The following commands

num=4; den=[1 5 4 0];

[A, B, C, D]=tf2ss(num, den) % converts transfer function

% to state model

j=sqrt(-1);

P=[-2+j2 -2-j2 -5]; % desired closed-loop poles

[K,Af]=placepol(A,B,C,P); % returns gain K & closed-loop

% system matrix

result in

A =

176 8. Modern Control Design

....................................................................................................... ........ ...

............

....



 

.......................................................................................................................................................................................................................................................................................... ........ ...

............

....

Plant

....................................................................................................... ........ ...

............

.... . .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ......

..

...

...

..

...

...

..

...

...

..

...

. .. ... .. ... .. ... .. ... .. .. ... ... .. ... .. .. ... ... .. ... .. .. ... ... .. ... .. .. ... .. ... ... .. .. ... .. ... ... ................................................................................................................................................................

..... ....... ...... ...

Observer

. ... .. .. ... ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... .. ... ..............................................................

..... ........ ...... ..

Controller

....................................................................

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

...

..

.. .. ... .. ... ... ..

. .. ... .. ... ... ..

r (t) = 0 u(t) y (t)

Estimated

State x_

FIGURE 8.

State feedback design with an observer.

or estimator may be necessary. The observer is an estimator algorithm based on the

mathematical model of the system. The observer creates an estimate x^ (t) of the states

from the measurements of the output y (t). The estimated states, rather than the actual

states, are then fed to the controller. One scheme is shown in Figure 8.3.

Consider a system represented by the state and output equations

x _(t) = Ax(t) + Bu(t) (8.12)

y (t) = Cx(t) (8.13)

Assume that the state x(t) is to be approximated by the state ^x(t) of the dynamic

model

_

^x(t) = A ^x(t) + Bu(t) + G(y (t) y^ (t)) (8.14)

y ^ (t) = C ^x(t) (8.15)

Subtracting (8.14) from (8.12), and (8.15) from (8.13), we have

( x_(t)

_

^x(t)) = A(x(t) ^x (t)) G(y (t) y^ (t)) (8.16)

(y (t) y^ (t)) = C(x(t) ^x(t)) (8.17)

where x(t) ^x(t) is the error between the actual state vector and the estimated vec-

tor, and y (t) y^ (t) is the error between the actual output and the estimated output.

Substituting the output equation into the state equation, we obtain the equation for the

error between the estimated state vector and the actual state vector.

e _(t) = (A GC)e(t) = A

e

e(t) (8.18)

where

e(t) = x(t) ^x(t) (8.19)

If G is chosen such that eigenvalues of matrix A GC all have negative real parts,

then the steady-state value of the estimated state vector error e(t) for any initial con-

dition will tend to zero. That is, ^x(t) will converge to x(t). The design of the observer

is similar to the design of the controller. However, the eigenvalues of A GC must

8.3. Observer Design 177

be selected to the left of the eigenvalues of A. This ensures that the observer dynamic

is faster than the controller dynamic for providing a rapid updated estimate of the state

vector.

The estimator characteristic equation is given by

jsI A + GCj = 0 (8.20)

For a specified speed of response, the desired characteristic equation for the

estimator is

e

(s) = s

n

n 1

s

n 1

  •    +

s +

Thus, the estimator gain G is obtained by equating coefficients of (8.20) and

(8.21). This is identical to the pole-placement technique, and G is found by the appli-

cation of Ackermann’s formula

G =

e

(A)

2

6

6

6

4

C

C A

C A

n 1

3

7

7

7

5

2

6

6

6

4

3

7

7

7

5

and the notation

e

(A) is given by

e

(A) = A

n

n 1

A

n 1

  •    +

A +

I (8.23)

The function [G, A

e

] = observer(A, B, C, p

e

) is developed for the estimator. p

e

is

the desired estimator eigenvalues. This function returns the gain vector G and the

closed-loop system matrix A

f

The necessary condition for the design of an observer is that all the states can

be observed from the measurements of the output. This characteristic is known as

observability.

Example 8.

For the plant



x_

x _





 

x

x







u

y =





x

design a full-state observer such that the observer is critically damped with eigenval-

ues at 8 and 8.

The following commands

A=[ 0 1; 16 0];

B=[0; 1];

C=[1 0]; D=0;

Pe=[-8 -8]; % desired observer eigenvalues

[K,Ae]= observer(A,B,C,Pe); % returns gain K and closed-loop

result in

8.5. Combined Controller-Observer Design 179

Example 8.

For the system of Example 8.3, design a controller-observer system such that the

desired closed-loop poles for the system are at 1  j 2. Choose the eigenvalues of

the observer gain matrix to be p

e

= p

e

= 8.

The following commands

A=[ 0 1; 16 0];

B=[0; 1];

C=[1 0]; D=0;

j=sqrt(-1);

P=[-1+j2 -1-j2]; % desired regulator roots

Pe=[-8 -8]; % desired observer roots

[K,G,Af]= placeobs(A,B,C,P,Pe); % returns gain K,G & closed-loop

% system matrix

result in

Feedback gain vector K

Estimator gain vector G:

Open-loop Plant

Transfer function:

s^2 - 16

Controller-estimator

Transfer function:

496 s + 2192

s^2 + 18 s + 117

Controlled system closed-loop

Transfer function:

496 s + 2192

s^4 + 18 s^3 + 101 s^2 + 208 s + 320

Combined controller observer system matrix

From the above results the controller-observer transfer function is

G

ce

496 s + 2192

s

+ 18 s + 117

The closed-loop transfer function for the controlled plant is

T (s) =

C (s)

R (s)

496 s + 2192

s

+ 18 s

+ 101 s

+ 208 s + 320

180 8. Modern Control Design

8.6 Optimal Regulator Design

The object of the optimal regulator design is to determine the optimal control law

u

(x; t) which can transfer the system from its initial state to the final state (with zero

system input) such that a given performance index is minimized. The performance

index is selected to give the best trade-off between performance and cost of control.

The performance index that is widely used in optimal control design is known as the

quadratic performance index and is based on minimum-error and minimum-energy

criteria.

Consider the plant described by

x _(t) = Ax(t) + Bu(t) (8.27)

The problem is to find the vector K (t) of the control law

u(t) = K(t)x(t) (8.28)

which minimizes the value of a quadratic performance index J of the form

J =

Z

t

f

t

(x

Qx + u

Ru)dt (8.29)

subject to the dynamic plant equation in (8.27). In (8.29) Q is a positive semidefinite

matrix and R is a real symmetric matrix. Q is positive semidefinite if all its principal

minors are nonnegative. The choice of the elements of Q and R allows the relative

weighting of individual state variables and individual control inputs.

To obtain a formal solution, we can use the method of Lagrange multipliers.

The constraint problem is solved by augmenting (8.27) into (8.29) using an n-vector

of Lagrange multipliers , . The problem reduces to the minimization of the following

unconstrained function

L(x; ; u; t) = [x

Qx + u

Ru] + 

[Ax + Bu x_] (8.30)

The optimal values (denoted by the subscript ) are found by equating the partial

derivatives to zero.

@ L

= AX

+ Bu

x_

= 0 ) x_

= AX

+ B u

@ L

@ u

= 2 Ru

B = 0 ) u

=

R

B (8.32)

@ L

@ x

= 2 x

Q+

_

A = 0 )

_

 = 2 Qx

A

Assume that there exists a symmetric, time varying positive definite matrix p (t) satis-

fying

 = 2 p(t)x

Substituting (8.34) into (8.32) gives the optimal closed-loop control law

u

(t) = R

B

p(t)x

182 8. Modern Control Design

Vector K(t) of the control law u(t)=−k(t)x(t)

Initial state response x

, x

, x

FIGURE 8.

Optimal feedback gain vector K (t) and initial condition response x (t).

function [A,B,Q,R,t0,tf,x0]=system(A,B,Q,R,t0,tf,x0)

A=[0 1 0; 0 0 1;0 -4 -5]; B=[0;0; 1];

Q=[4 0 0; 0 3 0;0 0 2]; R=.5;

t0=0; tf=15;

x0=[2 0 -2];

The above function is saved in an M-file named system.m. Then, the following com-

mands

[tt,p,k,t,x]=riccati

subplot(2,1,1), plot(tt,k),

title('Vector K(t) of the control law u(t)=-k(t)x(t)'),

grid,

subplot(2,1,2), plot(t,x),

title('Initial state response x_1, x_2, x_3'), grid

subplot(111)

result in the control law and the response is given in Figure 8.4.

Example 8.

For Example 8.5 use the MATLAB Control System Toolbox lqr2 to obtain the solution

to the algebraic Riccati equation.

The following commands

8.6. Optimal Regulator Design 183

A=[0 1 0; 0 0 1;0 -4 -5]; B=[0;0; 1];

Q=[4 0 0; 0 3 0;0 0 2];R=.5;

[K, p]=lqr2(A,B,Q,R)

result in

K =

p =