Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control...

48
Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications Observer Observer-based control Integral Control Some important features Pole placement control: state space and polynomial approaches Lecture 2 O. Sename 1 1 Gipsa-lab, CNRS-INPG, FRANCE [email protected] www.gipsa-lab.fr/o.sename November 21, 2017

Transcript of Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control...

Page 1: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Pole placement control: state space and polynomialapproachesLecture 2

O. Sename1

1Gipsa-lab, CNRS-INPG, [email protected]

www.gipsa-lab.fr/∼o.sename

November 21, 2017

Page 2: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Outline

State feedback control

Pole placement control: a state space approach

Specifications

Observer

Observer-based control

Integral Control

Some important features

Page 3: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

About 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 rejectionI Model trackingI Input/Output decouplingI Other performance criteria : H2 optimal, H∞ robust...

Page 4: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

State feedback control

Page 5: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

State space representations

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)(1)

I x(t) ∈ Rn is the system state (vector of state variables),I u(t) ∈ Rm the control inputI y(t) ∈ Rp the measured outputI A, B, C and D are real matrices of appropriate dimensionsI x0 is the initial condition.

n is the order of the state space representation.

Page 6: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Why state feedback and not output feedback?

Example: G(s) = y(s)u(s) = 1

s2−s

1. Give the controllable canonical form considering x1 = y , x2 = y .2. Case of output feedback= Proportional control : u =−Kpy

I Compute the closed-loop transfer function and check that theclosed-loop poles are given by the roots of the characteristicpolynomial PBF (s) = s2−s+Kp .

I Can the closed-loop system be stabilized ?3. Case of state feedback : consider the control law

u =−x1−3x2 + yrefI Compute the state space representation of the closed-loop system.I What are the poles of the closed-loop systems?I Is it stable?I If yes why this second control solves the problem?

Page 7: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

State feedback

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

u(t) =−Fx(t) (2)

where F is a m×n real matrix.

When the system is SISO, it corresponds to :u(t) =−f1x1− f2x2− . . .− fnxn with F = [f1, f2, . . . , fn].When the system is MIMO we have

u1u2...

um

=

f11 . . . f1n...

...fm1 . . . fmn

x1x2...

xn

Page 8: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Definition of the state feedback control

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

u(t) =−Fx(t) (3)

where F is a m×n real matrix.When the system is SISO, it corresponds to :u(t) =−f1x1− f2x2− . . .− fnxn with F = [f1, f2, . . . , fn].When the system is MIMO we have

u1u2...

um

=

f11 . . . f1n...

...fm1 . . . fmn

x1x2...

xn

Page 9: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

State feedback (2): stabilization

Using state feedback controllers (6), we get in closed-loop (for simplicityD = 0) {

x(t) = (A−BF )x(t),y(t) = Cx(t) (4)

The stability (and dynamics) of the closed-loop system is then given bythe eigenvalues of A−BF .Then the solution y(t) = C exp(A−BF )t x0 converges asymptotically tozero!

F Discrete-time systemsUsing u(k) = Fd x(k) we get{

x(k + 1) = (Ad −Bd Fd )x(k),y(k) = Cd x(k)

(5)

RemarkFor both cases, the good choice of F (or Fd ) may allow to stabilize theclosed-loop system.But what happens if the closed-loop system must track a referencesignal r ?

Page 10: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

State feedback (3): reference tracking

Objective: y should track some reference signal r , i.e.

y(t)−−−→t→∞

r(t)

When the objective is to track some reference signal r , why not select:

u(t) = r(t)−Fx(t) (6)

or u(k) = r(k)−Fd x(k) for discrete-time systems (7)

Can we ensure that y tracks the reference signal r , i.e y(t)−→t→∞

r(t) ?

No since, the closed-loop transfer matrix is :

y(s)

r(s)= C(sIn−A + BF )−1B (8)

for which the static gain is C(−A + BF )−1B and may differ from 1 ! (seeexamples)

Page 11: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

State feedback (4): complete solution for reference trackingWhen the objective is to track some reference signal r , the statefeedback control can be selected as:

u(t) =−Fx(t)+Gr(t) (9)

G is a m×p real matrix. Then the closed-loop transfer matrix is :

GCL(s) = C(sIn−A + BF )−1BG (10)

G is chosen to ensure a unitary steady-state gain as:

G = [C(−A + BF )−1B]−1 (11)

F When D 6= 0

GCL(s) = [(C−DF )(sIn−A + BF )−1B + D]G

F Discrete-time systems (with Dd =)

u(k) = −Fd x(k) + Gd r(k) (12)

with Gd = [C(In−Ad + Bd Fd )−1Bd ]−1 (13)

Page 12: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Implementation in Simulink

Page 13: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Pole placement control: a statespace approach

Page 14: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Pole placement control

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

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

Page 15: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Pole placement control (2): case of the controllable canonicalform

Let assume that the system G(s) = c0+c1s+...+cn−1sn−1

a0+a1s+...+an−1sn−1+sn is given by

A =

0 1 0 . . . 00 0 1 0 . . ....

......

. . ....

0... 0 1

−a0 −a1 . . . . . . −an−1

, B =

0......01

and

C =[

c0 c1 . . . cn−1].

Let F = [ f1 f2 . . . fn ]Then

A−BF =

0 1 0 . . . 00 0 1 0 . . ....

......

. . ....

0... 0 1

−a0− f1 −a1− f2 . . . . . . −an−1− fn

(14)

Page 16: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Pole placement control (3)

From the specifications the desired closed-loop polynomial(s− γ1)(s− γ2)...(s− γn) can be developed as:

(s− γ1)(s− γ2)...(s− γn)sn + αn−1sn−1 + . . .+ α1s + α0

Threfore the chosen solution:

fi =−ai−1 + αi−1, i = 1, ..,n

ensures that the poles of A−BF are {γi}, i = 1,n.

Remark: the case of controllable canonical forms is very importantsince , when we consider a general state space representation, it is firstnecessary to use a change of basis to make the system undercanonical form, which will simplify a lot the computation of the statefeedback control gain F (see next slide).Matlab: use F=place(A,B,P) where P is the set of desiredclosed-loop poles (old version F=acker(A,B,P) )

Page 17: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Pole placement control (4)

Procedure for the general case:

1. Check controllability of (A, B)

2. Calculate C = [B,AB, . . . ,An−1B].

Note C−1 =

q1...

qn

. Define T =

qn

qnA...

qnAn−1

−1

3. Note A = T−1AT and B = T−1B (which are under the controllablecanonical form)

4. Choose the desired closed-loop poles and define the desiredclosed-loop characteristic polynomial:sn + αn−1sn−1 + . . .+ α1s + α0

5. Calculate the state feedback u =−F x with:

fi =−ai−1 + αi−1, i = 1, ..,n

6. Calculate (for the original system):

u =−Fx , with F = FT−1

Page 18: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Specifications:continuous-time case

Page 19: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Specifications: what should be the closed-loop poles?

The required closed-loop performances should be chosen in thefollowing zone

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

Page 20: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Specifications (2)

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

I Rise time : tr ' 1.8ωn

I Seetling time : ts ' 4.6ξ ωn

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

Page 21: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

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

ITAE =∫

0t |e(t)|dt

can be used to specify a dynamic response with relatively smallovershoot and relatively little oscillation (there exist other methods to doso). The optimum coefficients for the ITAE criteria are given below (seeDorf & Bishop 2005).

Order Characteristic polynomials dk (s)1 d1 = [s + ωn]

2 d2 = [s2 + 1.4ωns + ω2n ]

3 d3 = [s3 + 1.75ωns2 + 2.15ω2n s + ω3

n ]

4 d4 = [s4 + 2.1ωns3 + 3.4ω2n s2 + 2.7ω3

n s + ω4n ]

5 d5 = [s5 + 2.8ωns4 + 5ω2n s3 + 5.5ω3

n s2 + 3.4ω4n s + ω5

n ]

6 d6 = [s6 + 3.25ωns5 + 6.6ω2n s4 + 8.6ω3

n s3 + 7.45ω4n s2 + 3.95ω5

n s + ω6n ]

and the corresponding transfer function is of the form:

Hk (s) =ωk

ndk (s)

, ∀k = 1, ...,6

Page 22: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Specifications(4)

0 2 4 6 8 10 12 14 160

0.2

0.4

0.6

0.8

1

1.2

NORMALIZED TIME ωn t

H1H2H3H4H5H6

STEP RESPONSE OF TRANSFER FUNCTIONSWITH ITAE CHARACTERISTIC POLYNOMIALS

Page 23: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Observer

Page 24: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Introduction

A first insightTo implement a state feedback control, the measurement of all the statevariables is necessary. If this is not available, we will use a stateestimation through a so-called Observer.

Observation or EstimationThe estimation theory is based on the famous Kalman contribution tofiltering problems (1960), and accounts for noise induced problems.The observation theory has been developed for Linear Systems byLuenberger (1971), and doe snot consider the noise effects.

Other interest of observation/estimationIn 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 nonmeasured variables) and to propose a so-called virtual sensor.

Objective: Develop a dynamical system whose state x(t) satisfies:I (x(t)− x(t))−−−→

t→∞0

I (x(t)− x(t))→ 0 as fast as possible

Page 25: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Open loop observers: a first approach to estimation frominput data

Let consider {x(t) = Ax(t) + Bu(t), x(0) = x0

y(t) = Cx(t) + Du(t)(15)

Given that we know the plant matrices and the inputs, we can justperform a simulation that runs in parallel with the system{

˙x(t) = Ax(t) + Bu(t), given x(0)

y(t) = Cx(t) + Du(t)(16)

Therefore, if we would have x(0) = x(0), then x(t) = x(t),∀t ≥ 0.

BUTI x(0) is UNKNOWN so we cannot choose x(0) = x(0),I the estimation error (e = x − x) dynamics is determined by A, i.e

satisfies e(t) = Ae(t) (could be unstable AND cannot be modified)I the effects of disturbance and noise cannot be attenuated (leads to

estimation biais)

NEED FOR A FEEDBACK FROM MEASURED OUTPUTS TOCORRECT THE ESTIMATION !

Page 26: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Closed-loop Observer: estimation from input AND outputdata

Objective: since y is KNOWN (measured) and is function of the statevariables, use an on line comparison of the measured system output yand the estimated output y .Observer description:

˙x(t) = Ax(t) + Bu(t) + L(y(t)− y(t))︸ ︷︷ ︸Correction

x0 to be defined(17)

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

Page 27: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Analysis of the observer properties

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

e(t) = (A−LC)e(t) (18)

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

Proposition(17) is an observer for system (1) if and only if the pair (C,A) isobservable, i.e.

rank(O) = n

where O =

C

CA...

CAn−1

.

Page 28: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Observer design

The observer design is restricted to find L such that A−LC is stable(ensuring that (x(t)− x(t))−−−→

t→∞0), and has some desired eigenvalues

(ensuring that (x(t)− x(t))→ 0 as fast as possible). This is still a poleplacement problem.

SpecificationsSelect the observer poles according to the systems closed-loopdynamical behavior (see later).

Design method

I In order to use the acker or place Matlab functions, we will usethe duality property between observability and controllability, i.e. :(C,A) observable⇔ (AT ,CT ) controllable.

I Then there exists LT such that the eigenvalues of AT −CT LT canbe randomly chosen. As (A−LC)T = AT −CT LT then L existssuch that A−LC is stable.

I Matlab : use L=acker(A’,C’,Po)’ where Po is theset of desired observer poles.

Page 29: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Theoretical validation scheme using Simulink

Page 30: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

How to choose the observer poles ?

FirstThis is quite important to avoid that the observer makes the closed-loopsystem slower. So the observer should be faster than you intend tomake the regulator.

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

Rule of thumbUsually the observer poles are chosen around 5 to 10 times higher thanthe closed-loop system, so that the state estimation is good as early aspossible.

Page 31: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

About the robustness of the observer

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)(19)

where dx can represent input disturbance or modelling error, and dystands for output disturbance or measurement noise.Then the estimated error satisfies:

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

Therefore the presence of dx or dy may lead to non zero estimationerrors due to bias or variations. Then do not forget that you can:

I Provide an analysis of the observer performances/robustness dueto 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)

Page 32: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Practical implementation

RulesI use a state-space block in SimulinkI enter ’formal’ matrices ’A’=A-LC,’B’=[B L],’C’= eye(n), ’D’= zeros(n,m))

I Choose x(0) 6= x(0),

I alternative use of estim

Page 33: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Observer-based control

Page 34: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Observer-based control

When an observer is built, we will use as control law:

u(t) =−Fx(t) + Gr(t) (21)

The closed-loop system is then (considering here D = 0){x(t) = (A−BF )x(t) + BF (x(t)− x(t)),y(t) = Cx(t) (22)

Therefore the fact that x(0) 6= x(0) will have an impact on theclosed-loop system behavior.The stability analysis of the closed-loop system with an observer-basedstate feedback control needs to consider an extended state vector as:

xe(t) =[

x(t) e(t)]T

Page 35: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Observer-based control: stability analysis

Definingxe(t) =

[x(t) e(t)

]TThe closed-loop system with observer (17) and control (21) is:

xe(t) =

[A−BF BF

0 A−LC

]xe(t) +

[BG0

]r(t) (23)

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 theclosed-loop system with the dynamic measurement feedback is stable,given that the control and observer systems are stable and theeigenvalues of (23) can be obtained directly from them.This corresponds to the so-called separation principle.

Remark: check pzmap of the extended closed-loop system.

Page 36: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Closed-loop analysis

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

y = [C 0][

x(t) e(t)]T

which leads toyr

= C(sIn−A + BF )BG

However if some disturbance acts as for:{x(t) = Ax(t) + Bu(t) + Ed(t), x(0) = x0

y(t) = Cx(t)(24)

where d is the disturbance, then the extended system writes

xe(t) =

[A−BF BF

0 A−LC

]xe(t) +

[BG0

]r(t) +

[EE

]d(t) (25)

which is a problem for the performances of closed-loop system and ofthe estimation (see later the Integral control).

Page 37: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

The controller

The observer-based controller is nothing else than a 2-DOF DynamicOutput Feedback controller. Indeed it comes from{

˙x(t) = Ax(t) + Bu(t)−L(Cx(t)−y(t))u(t) = −Fx(t) + Gr(t)

(26)

which can be written as{˙x(t) = (A−BF −LC)x(t) + BGr(t) + Ly(t)u(t) = −Fx(t) + Gr(t)

(27)

We then can write:

U(s) = Kr (s)R(s)−Ky (s)Y (s)

with

Kr (s) = G−F (sIn−A + BF + LC)−1BG

Ky (s) = F (sIn−A + BF + LC)−1L

and the analysis can be done through the sensitivity functions.

Page 38: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Integral Control

Page 39: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Integral Control or how to ensure disturbance attenuationwith a state feedback control?

Preliminary remrak: a state feedback controller may not allow to rejectthe effects of disturbances (particularly of input disturbances).Let us consider the system:{

x(t) = Ax(t) + Bu(t)+Ed(t), x(0) = x0

y(t) = Cx(t)(28)

where d is the disturbance.The objective is to keep y following a reference signal r even in thepresence of d , i.e

I yr −−−→t→∞

1

I yd −−−→t→∞

0

Page 40: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Formulation of the Integral ControlIntroductionA very useful method consists in adding an integral term (as usual onthe tracking error) to ensure a unitary static closed-loop gain, thereforeto choose

u(t) =−Fx(t)−H∫ t

0(r(τ)−y(τ))dτ

But the question is: how to find H?

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

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

which leads to define the extended state vector[

xz

].

Then the new open-loop state space representation is given as:

[x(t)z(t)

]=

[A 0−C 0

][xz

]+

[01

]u(t) +

[B0

]r(t) +

[E0

]d(t)

y(t) =[

C 0][ x

z

]

Page 41: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Synthesis of the Integral ControlLet us define:

Ae =

[A 0−C 0

], Be =

[B0

], Ce =

[C 0

]The new state feedback control is now of the form

u(t) = −Fe

[xz

]= −Fx(t)−Hz(t) denoting Fe = [F H]

Then the synthesis of the control law u(t) requires:I the verification of the extended system controllabilityI the specification of the desired closed-loop performances, i.e. a

set Pe of n + 1 desired closed-loop poles has to be chosen,I the computation of the full state feedback Fe usingFe=acker(Ae,Be,Pe)

We then get the closed-loop system[x(t)z(t)

]=

[A−BF BH−C 0

][xz

]+

[01

]r(t) +

[E0

]d(t)

y(t) =[

C 0][ x

z

]

Page 42: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Integral control scheme

The complete structure has the following form:

Plant

H

F

r

y

+

-

-

-s

1

u

z

Fx

-

(Or in case of an

observer-based control)

x

When an observer is to be used, the control action simply becomes:

u(t) =−Fx(t)−Hz(t)

Page 43: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Integral control scheme

Compute the closed-loop system representation and check that:I the closed-loop system has a unitary gainI the effect of the disturbance d in steady-state is nul

Page 44: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Some important features

Page 45: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Some extension: reduced-order observers

In practice, since some output variables are measured it may be nonnecessary to get an estimation of all the state variables.For instance, if :

x(t) =

[x1(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 themeasurements.

Page 46: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Performance analysis

As seen in (27) the general form of a Dynamic Output Feedbackcontroller is 2-DOF state space representation as:

xK (t) = AK xK (t) + BK

[r(t)y(t)

]u(t) = CK xK (t) + DK

[r(t)y(t)

] (29)

with

AK = A−BF −LC, BK =

[BGL

], CK =−F , DK =

[G0

]This allows to compute the well known sensitivity functions since, fromK (s) = DK + CK (SIn−AK )−1BK , we can write:

U(s) = K (s)

[R(s)Y (s)

]:= Kr (s)R(s)−Ky (s)Y (s)

Page 47: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Performance analysis (SISO)The general control scheme is of the form

The closed-loop system satisfies the equations

y = 11+G(s)Ky (s)

(GKr r + dy −GKy n + Gdi )

u = 11+Ky (s)G(s) (Kr r −Ky dy −Ky n−Ky Gdi )

Defining the Sensitivity function:

S(s) =1

1 + G(s)Ky (s)

The performance sensitivity functions are then

yr = GKr

1+GKy= SGKr

ydi

= SG ydy

= S yn =−T

ur = Kr S u

di=−Ty

udy

=−Ky S un =−Ky S

Page 48: Pole placement control: state space and polynomial ...o.sename/docs/ASI...Pole placement control O.Sename State feedback control Pole placement control: a state space approach Specifications

Pole placementcontrol

O.Sename

State feedbackcontrol

Pole placementcontrol: a statespace approach

Specifications

Observer

Observer-basedcontrol

Integral Control

Some importantfeatures

Performance analysis (MIMO)

The closed-loop system satisfies the equations

(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 )

Defining

Output and Output complementary sensitivity functions:

Sy = (Ip + GKy )−1, Ty = (Ip + GKy )−1GKy , 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

yr = Sy GKr

ydi

= Sy G ydy

= Syyn =−Ty

ur = SuKr

udi

=−SuKy G udy

=−SuKyun =−SuKy