Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… ·...

41
lionwhite Robust Control 2018 Richard Pates and Bo Bernhardsson Department of Automatic Control LTH, Lund University Richard Pates and Bo Bernhardsson Robust Control 2018

Transcript of Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… ·...

Page 1: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust Control 2018

Richard Pates and Bo Bernhardsson

Department of Automatic Control LTH,Lund University

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 2: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Plan of attack:

Today’s topic: Synthesise controllers to meet H∞ basedrobust stability and performance claims.

General approach.H∞ loopshapingThe ν-gap metric.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 3: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

The basic idea

1 Formulate design specifications.2 Put into standard form.3 Compute and check solution.4 Iterate

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 4: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Formulate design specifications

Write performance and robustness specifications as anH∞-norm requirement. e.g.

Robustness to multiplicative uncertainty.Good disturbance rejection over control bandwidth.Step response tracking....

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 5: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Put into standard form

Stack up requirements and write as a big LFT:

P11(s) P12(s)P21(s) P22(s)

K(s)

z w

u

y

w, z specification inputs and outputs.Pull out controller.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 6: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Compute and check solution

[C,CL,GAM,INFO] = hinfsyn(P,NMEAS,NCON)

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 7: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for

Consider again the problem of tracking a step input when

P (s) = 1s + 1 .

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 8: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for: Step 1

We showed before that we would like:

1s

S(s) ≈ 0

=⇒ minimise ‖ 1s+εS(s)‖∞!

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 9: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for: Step 2

We showed before that

W (s)S(s) = Fl

([W (s) W (s)P (s)−I P (s)

], C(s)

)

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 10: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for: Step 3

Try ε = .01 and apply hinfsyn.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 11: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for: Step 3

Try ε = .01 and apply hinfsyn.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 12: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for: Step 3

Try ε = .01 and apply hinfsyn.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 13: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for

Was this a pathological example?

Exercise

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 14: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

You get what you asked for

What happens if we try to maximise robustness to multiplicativeuncertainty?

Exercise

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 15: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Need sensible specifications

Classical control:

σ(S(jω)) ≤ 2 (gain and phase margins).σ(S(jω)) ≤ ε, ∀ω < ωb (performance).σ(P (jω)C(jω)) ≤ ω2

c /ω2, ∀ω > ωb (robustness).

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 16: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Need sensible specifications

Bounds on closed loop transfer functions

σ(S(jω)) small over desired control bandwidth, and nevertoo large.σ(T (jω)) small at high frequencies (robustness).Check all the closed loop transfer functions, stepresponses... H∞ norm is just a number!

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 17: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Matlab

[C,CL,GAM,INFO]=mixsyn(P,W1,W2,W3) or

mixsyn H-infinity mixed-sensitivity synthesis method forrobust control design. Controller C stabilizes plant Pand minimizes the H-infinity cost function

|| W1*S |||| W2*C*S |||| W3*T ||Hinf

whereS := inv(I+P*C) % sensitivityT := I-S = P*C/(I+P*C) % complementary sensitivityW1, W2 and W3 are stable LTI ’weights’

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 18: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Why penalise CS?

Exercise

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 19: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Glad-Ljung Ex. 10.1: Step 1

Motor controlP (s) = 20

s(s + 1) .

Design controller with integral action and specified controlbandwidth.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 20: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Glad-Ljung Ex. 10.1: Step 2

Minimize H∞ norm of

W1(I + PC)−1

W2C(I + PC)−1

W3PC(I + PC)−1

, withW1 = k

s2W2 = 1W3 = 1

Increasing k gives higher bandwidth at the cost of largercontroller gain

Shape of W1 will enforce integral action. Try k = 1, 5, 30.

Needed to change to P (s) = 20(s + ε)(s + 1) and W1 = k

(s + ε)2

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 21: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Glad-Ljung Ex. 10.1: Step 3

Frequency [Hz]10 -2 100 102

10 -6

10 -4

10 -2

100

1021/(1+PC)

Frequency [Hz]10 -2 100 102

10 -5

10 -4

10 -3

10 -2

10 -1

100

101P/(1+PC)

Frequency [Hz]10 -2 100 102

10 -4

10 -3

10 -2

10 -1

100

101C/(1+PC)

Frequency [Hz]10 -2 100 102

10 -5

10 -4

10 -3

10 -2

10 -1

100

101PC/(1+PC)

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 22: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Further iteration

Does the controller really need high gain beyond 102 rad/s?We didn’t enforce rolloff in T .Check step responses...

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 23: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Loopshaping

Classical control:σ(S(jω)) ≤ 2.σ(S(jω)) ≤ ε, ∀ω < ωb.σ(P (jω)C(jω)) ≤ ω2

c /ω2, ∀ω > ωb.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 24: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Loopshaping

Formulate as specifications on L(s) = P (s)C(s):

Bode Magnitude Diagram

Frequency (rad/sec)

Ma

gn

itud

e (

dB

)

100

101

−70

−60

−50

−40

−30

−20

−10

0

10

20

w0 w1

Disturbance rejection

Robustness

PC

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 25: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping

1 Formulate design specifications.2 Design suitable loopshape (ignoring slope at crossover).3 Weight plant to approximate desired loopshape.4 Compute an optimal controller for weighted gang of four

stability margin5 Iterate

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 26: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping: Step 1

Motor control again...

P (s) = 20s(s + 1) .

Design controller with integral action and specified controlbandwidth.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 27: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping: Step 2

Desired loopshape:

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 28: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping: Step 3

Can choose

W = ωc(s + 1)20s(s/T + 1) =⇒ WP = ωc

s2(s/T + 1) .

Can also use Matlab function loopsyn.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 29: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping: Step 4

Define P̄ = WP , and solve

bopt(P̄ ) = minC̄

bP̄ ,C̄

Optimal controller is then C = C̄W .

Use Matlab function C=ncfsyn(P,W).

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 30: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping: Step 5

Check GoF

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 31: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

H∞-Loopshaping: Justification

If bopt ≈ 0.3, then will approximately match desired loopshape,and have good stability margins.

Can be made rigorous: ExerciseRichard Pates and Bo Bernhardsson Robust Control 2018

Page 32: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

Open and closed loop can be very different:

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 33: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

Open and closed loop can be very different:

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 34: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

Consider

δ′(P1, P2) = sin supC

| arcsin bP1,C − arcsin bP2,C |.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 35: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

Consider

δ′(P1, P2) = sin supC

| arcsin bP1,C − arcsin bP2,C |.

Maximum possible difference between closed loop performanceof two systems.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 36: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

Introduce the ν-gap metric:

δν(P1, P2) =

‖(I+P2P ∗

2 )− 12 (P1−P2)(I+P ∗

1 P1)− 12 ‖L∞

if det(I + P ∗2 P1) 6= 0 on jR and

wno det(I+P ∗2 P1) + η(P1) = η(P2),

1 otherwise

where η (η) is the number of closed (open) RHP poles and wnois winding number.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 37: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Geometric Interpretation

IntuitionRichard Pates and Bo Bernhardsson Robust Control 2018

Page 38: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

It turns out that:

δ′(P1, P2) = min{δν(P1, P2), max{bopt(P1), bopt(P2)}}

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 39: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

It turns out that:

δ′(P1, P2) = min{δν(P1, P2), max{bopt(P1), bopt(P2)}}

ν-gap measures distance between systems from theperspective of closed loop performance.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 40: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

ν-gap also gives the following robust performance condition:Let

P∆ = {P : δν(P, P1) ≤ β}.

Suppose that bP1,C = arcsin γ + arcsin β. Then

minP ∈P∆

bP,C = γ.

Richard Pates and Bo Bernhardsson Robust Control 2018

Page 41: Robust Control 2018archive.control.lth.se/media/Education/DoctorateProgram/2018/Robu… · lionwhite Plan of attack: Today’s topic: Synthesise controllers to meet H ∞ based robust

lionwhite

Robust performance and the ν-gap metric

The philosophy:

bP,C is a good measure of performance.ν-gap balls give the largest uncertainty balls w.r.t.degradation of bP,C .Cover actual model uncertainty with smallest possibleν-gap ball.

Exercise

Richard Pates and Bo Bernhardsson Robust Control 2018