Pole placement control

0 downloads 0 Views 1MB Size Report
Jan 12, 2015 - Pole placement control. O.Sename. State feedback control. Pole placement control: a state space approach. Observer. Observer-based control.
Pole placement control O.Sename

Pole placement control: state space and polynomial approaches Lecture 2

State feedback control Pole placement control: a state space approach Observer Observer-based control

O. Sename1

Integral Control Some important features

1 Gipsa-lab,

CNRS-INPG, FRANCE [email protected] www.gipsa-lab.fr/∼o.sename

12th January 2015

Outline

Pole placement control O.Sename State feedback control

State feedback control

Pole placement control: a state space approach Observer

Pole placement control: a state space approach

Observer-based control Integral Control

Observer

Observer-based control

Integral Control

Some important features

Some important features

About Feedback control

Pole placement control O.Sename State feedback control

How to design a controller using a state space representation ? Tow cases are possible : I

Static controllers (output or state feedback)

I

Dynamic controllers (output feedback or observer-based)

What for ? I

Closed-loop stability (of state or output variables)

I

disturbance rejection

I

Model tracking

I

Input/Output decoupling

I

Other performance criteria : H2 optimal, H∞ robust...

Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control

State feedback control

Some important features

Pole placement control

State space representations

O.Sename State feedback control

Let consider continuous-time linear state space system given bt : ( ˙ x(t) = Ax(t) + Bu(t), x(0) = x0 y (t) = Cx(t) + Du(t) I

x(t) ∈ Rn is the system state (vector of state variables),

I

u(t) ∈ Rm the control input

I

y (t) ∈ Rp the measured output

I

A, B, C and D are real matrices of appropriate dimensions

I

x0 is the initial condition.

n is the order of the state space representation.

Pole placement control: a state space approach Observer

(1)

Observer-based control Integral Control Some important features

Why state feedback and not output feedback?

Pole placement control O.Sename State feedback control Pole placement control: a state space approach

Example: G(s) = s21−s Consider the controllable canonical form. Case of output feedback : u = −Ly ˙ Then x(t) = (A − BLC)x(t) For the example, the characteristic polynomial is PBF (s) = s2 − s − L. The closed-loop system cannot be stabilized. Case of state feedback : u = −Fx Let F = [f1 , f2 ]. Then PBF (s) = s2 + (−1 + f2 )s + f1 . So it is easy to choose F to get a stable closed-loop system. For instance f1 = 1, f2 = 3 gives PBF (s) = (s + 1)2

Observer Observer-based control Integral Control Some important features

Pole placement control

State feedback

O.Sename State feedback control Pole placement control: a state space approach

A state feedback controller for a continuous-time system is:

Observer

u(t) = −Fx(t)

(2)

where F is a m × n real matrix. When the system is SISO, it corresponds to : u(t) = −f1 x1 − f2 x2 − . . . − fn xn with F = [f1 , f2 , . . . , fn ]. When the system is MIMO we have       x1 u1 f . . . f 11 1n  u2   x     . ..   2   .  =  ..  .   .  ..   ..  fm1 . . . fmn um xn

Observer-based control Integral Control Some important features

State feedback (2)

Pole placement control O.Sename State feedback control Pole placement control: a state space approach

Using state feedback controllers (2), we get in closed-loop (for simplicity D = 0)  ˙ x(t) = (A − BF )x(t), (3) y (t) = Cx(t) and the stability (and dynamics) of the closed-loop system is then given by the eigenvalues of A − BF . For discrete-time system we get:  x(k + 1) = (A − BF )x(k ), (4) y (k ) = Cx(k )

Observer Observer-based control Integral Control Some important features

Pole placement control

State feedback (3)

O.Sename State feedback control

When the objective is to track some reference signal r , the state feedback control is of the form:

Pole placement control: a state space approach

u(t)

=

−Fx(t) + Gr (t)

(5)

or u(k )

=

−Fx(k ) + Gr (k )

(6)

Observer Observer-based control Integral Control

G is a m × p real matrix. Then the closed-loop transfer matrix is : GCL (s) = C(sIn − A + BF )−1 BG

Some important features

(7)

G is chosen to ensure a unitary steady-state gain as: G = [C(−A + BF )−1 B]−1

(8)

F For discrete-time system: G = [C(In − A + BF )−1 B]−1

(9)

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control

Pole placement control: a state space approach

Integral Control Some important features

Pole placement control

Pole placement control O.Sename State feedback control Pole placement control: a state space approach

Problem definition

Observer

Given a linear system (1), does there exist a state feedback control law (2) such that the closed-loop poles are in predefined locations (denoted γi , i = 1, ..., n ) in the complex plane ?

Observer-based control

Proposition Let a linear system given by A, B, and let γi , i = 1, ..., n , a set of complex elements (i.e. the desired poles of the closed-loop system). There exists a state feedback control u = −Fx such that the poles of the closed-loop system are γi , i = 1, ..., n if and only if the pair (A, B) is controllable.

Integral Control Some important features

Pole placement control

Pole placement control (2)

O.Sename

Firstcase: controllable canonical form   0 1 0 ... 0  0  0 1 0 ...     .. .. ..    .. .. , B =  . . . . . A=       ..  0   . 0 1 −a0 −a1 . . . . . . −an−1   c0 c1 ... cn−1 . C= Let F = [ f1 f2 . . . fn ] Then  0 1 0 ...  0 0 1 0  .. .. ..  .. . . . . A − BF =    . ..  0 0 −a0 − f1

−a1 − f2

...

...

State feedback control

0 .. . .. . 0 1



Pole placement control: a state space approach

    and   

Observer Observer-based control Integral Control Some important features

0 ... .. . 1 −an−1 − fn

       

(10)

Pole placement control (3)

Pole placement control O.Sename State feedback control

Consider the desired clos-ed-loop polynomial: (s − γ1 )(s − γ2 )...(s − γn ) = sn + αn−1 sn−1 + . . . + α1 s + α0 The solution:

Pole placement control: a state space approach Observer Observer-based control Integral Control

fi = −ai−1 + αi−1 , i = 1, .., n ensures that the poles of A − BF are {γi }, i = 1, n When we consider a general state space representation, it is first necessary to use a change of basis to make the system under canonical form. Use F=acker(A,B,P) where P is the set of desired closed-loop poles.

Some important features

Pole placement control

Pole placement control (4)

O.Sename

Procedure for the general case: State feedback control

1. Check controllability of (A, B) 2. Calculate C = [B, AB, . . . , An−1 B].    q1     Note C −1 =  ... . Define T =   qn

qn qn A .. . qn An−1

−1

Pole placement control: a state space approach Observer

   

¯ = T −1 AT and B ¯ = T −1 B (which are under the controllable 3. Note A canonical form) 4. Choose the desired closed-loop poles and define the desired closed-loop characteristic polynomial: sn + αn−1 sn−1 + . . . + α1 s + α0 5. Calculate the state feedback u = −F¯ x¯ with: ¯f = −a + α , i = 1, .., n i i−1 i−1 6. Calculate (for the original system): u = −Fx, with F = F¯ T −1

Observer-based control Integral Control Some important features

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control

Observer

Some important features

Introduction

Pole placement control O.Sename State feedback control

A first insight To implement a state feedback control, the measurement of all the state variables is necessary. If this is not available, we will use a state estimation through a so-called Observer.

Pole placement control: a state space approach Observer Observer-based control

Observation or Estimation

Integral Control

The estimation theory is based on the famous Kalman contribution to filtering problems (1960), and accounts for noise induced problems. The observation theory has been developed for Linear Systems by Luenberger (1971), and doe snot consider the noise effects.

Some important features

Other interest of observation/estimation In practice the use of sensors is often limited for several reasons: feasibility, cost, reliability, maintenance ... An observer is a key issue to estimate unknown variables (then non measured variables) and to propose a so-called virtual sensor. Objective: Develop a dynamical system whose state xˆ (t) = x(t), ∀t ≥ 0.

Pole placement control

Open loop observer

O.Sename

Let consider

(

˙ x(t) = Ax(t) + Bu(t), x(0) = x0 y (t) = Cx(t)

Given that we know the plant matrices and the inputs, we can just perform a simulation that runs in parallel with the system ( xˆ˙ (t) = Axˆ (t) + Bu(t), x(0) = x0

State feedback control

(11)

Pole placement control: a state space approach Observer Observer-based control Integral Control

(12)

yˆ (t) = C xˆ (t) Therefore, if xˆ (0) = x(0), then xˆ (t) = x(t), ∀t ≥ 0.

BUT I

x(0) is UNKNOWN.

I

the estimation error (xˆ − x) dynamics is determined by A (and cannot be modified)

I

the effects of disturbance and noise cannot be attenuated (leads to estimation biais)

Some important features

Pole placement control

Closed-loop Observer

O.Sename

Objective: since y is function of the state variables and KNOWN, use an on line comparison of the system output y and the estimated output yˆ .

State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

Observer form: xˆ˙ (t) xˆ0 to be defined

=

Axˆ (t) + Bu(t) − L(C xˆ (t) − y (t))

where xˆ (t) ∈ Rn is the estimated state of x(t) and L is the n × p constant observer gain matrix to be designed.

(13)

Pole placement control

Closed-loop Observer

O.Sename

Objective: since y is function of the state variables and KNOWN, use an on line comparison of the system output y and the estimated output yˆ .

State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

Observer form: xˆ˙ (t) xˆ0 to be defined

=

Axˆ (t) + Bu(t) − L(C xˆ (t) − y (t))

where xˆ (t) ∈ Rn is the estimated state of x(t) and L is the n × p constant observer gain matrix to be designed.

(13)

Pole placement control

Observer

O.Sename State feedback control

The estimated error, e(t) := x(t) − xˆ (t), satisfies: ˙ e(t)

=

(A − LC)e(t)

(14)

Pole placement control: a state space approach Observer

If L is designed such that A − LC is stable, then xˆ (t) converges asymptotically towards x(t).

Proposition

rank (O) = n

  where O =  

Integral Control Some important features

(13) is an observer for system (1) if and only if the pair (C,A) is observable, i.e.



Observer-based control

C CA .. . CAn−1

   . 

Observer design

Pole placement control O.Sename State feedback control Pole placement control: a state space approach

The observer design is restricted to find L such that A − LC is stable. This is still a pole placement problem. In order to use the acker Matlab function, we will use the duality property between observability and controllability, i.e. : (C, A) observable ⇔ (AT , C T ) controllable. Then there exists LT such that the eigenvalues of AT − C T LT can be randomly chosen. As (A − LC)T = AT − C T LT then L exists such that A − LC is stable. Matlab : use L=acker(A’,C’,Po)’ where Po is the set of desired observer poles.

Observer Observer-based control Integral Control Some important features

How to choose the observer poles ?

Pole placement control O.Sename State feedback control

First This is quite important to avoid that the observer makes the closed-loop system slower. So the observer should be faster than you intend to make the regulator.

Pole placement control: a state space approach Observer Observer-based control

Second

Integral Control

Increasing the observe gain is actually possible since there is no saturation problem. However the measured outputs are often noisy. Trade-off between high bandwidth observers (very efficient for estimation but noise sensitive) and low bandwidth ones (less than noise sensitive but slower)

Some important features

Rule of thumb Usually the observer poles are chosen around 5 to 10 times higher than the closed-loop system, so that the state estimation is good as early as possible.

Pole placement control

About the robustness of the observer

O.Sename

Let assume that the systems is indeed given by ( ˙ x(t) = Ax(t) + Bu(t) + Edx (t), x(0) = x0 y (t) = Cx(t) + Ddy (t)

State feedback control

(15)

Observer

where dx can represent input disturbance or modelling error, and dy stands for output disturbance or measurement noise. Then the estimated error satisfies: ˙ e(t)

=

(A − LC)e(t) + Edx − LDdy

Pole placement control: a state space approach

(16)

Therefore the presence of dx or dy may lead to non zero estimation errors due to biais or variations. Then do not forget that you can: I

Provide an analysis of the observer performances/robustness due to dx or dy (see later)

I

Design optimal observer when dx and dy represent noise effects (Kalman - lqe, see next course )

I

Design robust observer suing H∞ approach (see next year)

Observer-based control Integral Control Some important features

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control

Observer-based control

Some important features

Pole placement control

Observer-based control

O.Sename

When an observer is built, we will use as control law: u(t) = −F xˆ (t) + Gr (t)

State feedback control

(17)

We then need to study the stability of the complete closed-loop system, using the extended state: xe (t) =



x(t)

e(t)

T

The closed-loop system from r to y is then computed from:

which leads to



x(t)

e(t)

Observer Observer-based control Integral Control Some important features

The closed-loop system with observer (13) and control (17) is:     A − BF BF BG x˙ e (t) = xe (t) + r (t) 0 A − LC 0

y = [C 0]

Pole placement control: a state space approach

T

y = C(sIn − A + BF )BG r

(18)

Separation principle

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer

The characteristic polynomial of the extended system is: det(sIn − A + BF ) × det(sIn − A + LC) If the observer and the control are designed separately then the closed-loop system with the dynamic measurement feedback is stable, given that the control and observer systems are stable and the eigenvalues of (18) can be obtained directly from them. This corresponds to the so-called separation principle.

Observer-based control Integral Control Some important features

Pole placement control

The controller

O.Sename State feedback control

The observer-based controller is nothing else than a 2-DOF Dynamic Output Feedback controller. Indeed it comes from  xˆ˙ (t) = Axˆ (t) + Bu(t) − L(C xˆ (t) − y (t)) (19) u(t) = −F xˆ (t) + Gr (t)

Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

which can be written as     x˙ K (t)

=

   u(t)

=



 r (t)  y (t)  r (t) CK xK (t) + DK y (t)

AK xK (t) + BK

with xK = xˆ , AK = A − BF − LC, BK = [BG L], CK = −F and DK = [G 0]

(20)

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control

Integral Control

Integral Control Some important features

Integral Control

Pole placement control O.Sename State feedback control

A state feedback controller may not allow to reject the effects of disturbances (particularly of input disturbances). A very useful method consists in adding an integral term to ensure a unitary static closed-loop gain . Considered system: ( ˙ x(t) = Ax(t) + Bu(t) + Ed(t), x(0) = x0 (21) y (t) = Cx(t) where d is the disturbance. The objective is to keep y close to a reference signal r , even in the presence of d, i.e to keep r − y asymptotically stable.

Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

Pole placement control

Integral Control

O.Sename State feedback control

The method consists in extending the system by adding a new state variable:

Pole placement control: a state space approach Observer Observer-based control

˙ z(t) = r (t) − y (t)

Integral Control Some important features

and to use a new state feedback: u(t) = −Fx(t) − Hz(t) We get 

˙ x(t) ˙ z(t)



 =

A − BF −C

BH 0



x z



 +

0 1



 r (t) +

E 0

 d(t)

Pole placement control

Integral control scheme

O.Sename

The complete structure has the following form:

State feedback control Pole placement control: a state space approach

+ -

1 s

Observer

z

Observer-based control

H F

-

Integral Control

u

Plant

y

-

r

x (Or xˆ in case of an observer-based control)

When an observer is to be used, the control action simply becomes: u(t) = −F xˆ (t) − Hz(t)

Some important features

Integral control scheme

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control

Compute the closed-loop system representation and check that: I

the closed-loop system has a unitary gain

I

the effect of the disturbance d in steady-state is nul

Integral Control Some important features

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control

Some important features

Integral Control Some important features

Some extension: reduced-order observers

Pole placement control O.Sename State feedback control Pole placement control: a state space approach

In practice, since some output variables are measured it may be non necessary to get an estimation of all the state variables. For instance, if :   x1 (t) x(t) = x2 (t) and y (t) = x1 (t) is measured, then it possible to estimate only x2 (t), which is referred to as a reduced-order observer (order = n − p). N.B: the use of a full-order observer also induces a filter effect on the measurements.

Observer Observer-based control Integral Control Some important features

Specifications

Pole placement control O.Sename

The required closed-loop performances should be chosen in the following zone

State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

which ensures a damping greater than ξ = sin φ . −γ implies that the real part of the CL poles are sufficiently negatives.

Pole placement control

Specifications (2)

O.Sename State feedback control Pole placement control: a state space approach

Some useful rules for selection the desired pole/zero locations (for a second order system): I

Rise time : tr '

1.8 ωn

Observer Observer-based control Integral Control

4.6 ξ ωn

I

Seetling time : ts '

I

Overshoot Mp = exp(−πξ /sqrt(1 − ξ 2 )): ξ = 0.3 ⇔ Mp = 35%, ξ = 0.5 ⇔ Mp = 16%, ξ = 0.7 ⇔ Mp = 5%.

Some important features

Pole placement control

Specifications(3) Some rules do exist to shape the transient response. The ITAE (Integral of Time multiplying the Absolute value of the Error), defined as: ITAE =

Z ∞

t|e(t)|dt

0

O.Sename State feedback control Pole placement control: a state space approach Observer

can be used to specify a dynamic response with relatively small Observer-based control overshoot and relatively little oscillation (there exist other methods to do Integral Control so). The optimum coefficients for the ITAE criteria are given below (see Some important Dorf & Bishop 2005). features Order Characteristic polynomials dk (s) 1 d1 = [s + ωn ] 2 d2 = [s2 + 1.4ωn s + ωn2 ] 3 d3 = [s3 + 1.75ωn s2 + 2.15ωn2 s + ωn3 ] 4 d4 = [s4 + 2.1ωn s3 + 3.4ωn2 s2 + 2.7ωn3 s + ωn4 ] 5 d5 = [s5 + 2.8ωn s4 + 5ωn2 s3 + 5.5ωn3 s2 + 3.4ωn4 s + ωn5 ] 6 d6 = [s6 + 3.25ωn s5 + 6.6ωn2 s4 + 8.6ωn3 s3 + 7.45ωn4 s2 + 3.95ωn5 s + ωn6 ] and the corresponding transfer function is of the form: Hk (s) =

ωnk , ∀k = 1, ..., 6 dk (s)

Pole placement control

Specifications(4)

O.Sename State feedback control Pole placement control: a state space approach

1.2 H1 H2 H3 H4 H5 H6

1

Observer Observer-based control Integral Control

0.8

Some important features

STEP RESPONSE OF TRANSFER FUNCTIONS WITH ITAE CHARACTERISTIC POLYNOMIALS 0.6

0.4

0.2

0

0

2

4

6

8

NORMALIZED TIME ωn t

10

12

14

16

Performance analysis The general form of a Dynamic Output Feedback controller is 2-DOF state space representation as:    r (t)    x˙ K (t) = AK xK (t) + BK  y (t)  (22) r (t)    u(t) = CK xK (t) + DK y (t) This allows to compute the well known sensitivity functions since, from K (s) = DK + CK (SIn − AK )−1 BK , we can write: U(s) = Kr (s)R(s) − Ky (s)Y (s) The general control scheme is of the form

Figure: Complete control scheme

Pole placement control O.Sename State feedback control Pole placement control: a state space approach Observer Observer-based control Integral Control Some important features

Pole placement control

Performance analysis (SISO)

O.Sename State feedback control Pole placement control: a state space approach

The closed-loop system satisfies the equations y = u =

1 1+G(s)Ky (s) 1 1+Ky (s)G(s)

(GKr r + dy − GKy n + Gdi ) (Kr r − Ky dy − Ky n − Ky Gdi )

Observer Observer-based control Integral Control

Defining the Sensitivity and the complementary sensitivity functions: S(s) =

1 1 + G(s)Ky (s)

and the performance sensitivity functions are then y r

=

GKr 1+GKy = SGKr u r = Kr S

y di u di

= SG = −Ty

u dy

y dy

=S = −Ky S

y n u n

= −T = −Ky S

Some important features

Pole placement control

Performance analysis (MIMO)

O.Sename State feedback control

The closed-loop system satisfies the equations

Pole placement control: a state space approach

(Ip + G(s)Ky (s))y (s) = (GKr r + dy − GKr n + Gdi ) (Im + Ky (s)G(s))u(s) = (Kr r − Ky dy − Ky n − Ky Gdi )

Observer Observer-based control

Defining

Integral Control

Output and Output complementary sensitivity functions: Sy = (Ip + GKy )−1 ,

Ty = (Ip + GKy )−1 GKy ,

Sy +Ty = Ip

Input and Input complementary sensitivity functions: Su = (Im + Ky G)−1 ,

Tu = Ky G(Im + Ky G)−1 , Su +Tu = Im

and the performance sensitivity functions are then y r

= Sy GKr u r = Su Kr

u di

y di

= Sy G = −Su Ky G

u dy

y dy

= Sy = −Su Ky

u n

y n

= −Ty = −Su Ky

Some important features