Robust Notes

Embed Size (px)

Citation preview

  • 8/2/2019 Robust Notes

    1/23

    Undergraduate Lecture Notes on

    Robust Control

    Joao P. Hespanha

    April 1, 2007

    Disclaimer: This is a draft and probably contains several typos.

    Comments and information about typos are welcome. Please contact the author at ([email protected]).

    c Copyright to Joao Hespanha. Please do not distribute this document without the authorsconsent.

  • 8/2/2019 Robust Notes

    2/23

  • 8/2/2019 Robust Notes

    3/23

    Contents

    1 Robust stability 31.1 Model uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    1.1.1 Additive uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

    1.1.2 Multiplicative uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . 51.2 Nyquist stability criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    1.2.1 The Nyquist Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2.2 The Nyquist criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    1.3 Small-Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4 MATLAB hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    2 Control design by loop-shaping 132.1 The loop-shaping design method . . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Open-loop vs. closed-loop specifications . . . . . . . . . . . . . . . . . . . . . 142.3 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    Attention! When a margin sidebar finishes with . . . , more information about the topiccan be found at the end of the lecture in the To probe further section.

    i

  • 8/2/2019 Robust Notes

    4/23

    ii Joao P. Hespanha

  • 8/2/2019 Robust Notes

    5/23

    Introduction to Robust Control

    For controller design purposes it is convenient to imagine that we know an accurate modelfor the process, e.g., its transfer function. In practice, this is hardly ever the case:

    1. When process models are derived from first principles, they always exhibit constants

    that can only be determined up to some error.E.g., the precise values of masses, moments of inertia, and friction coefficients in mod-els derived from Newtons laws; or resistances, capacitances, and gains, in electricalcircuits.

    2. When one identifies a model experimentally, noise and disturbances generally lead todifferent results as the identification experiment is repeated multiple times. Whichexperiment gave the true model? The short answer is none, all models obtained havesome error.

    3. Processes change due to wear and tear so even if a process was perfectly identifiedbefore starting operation, its model will soon exhibit some mismatch with respect tothe real process.

    The goal of this chapter is to learn how to take process model uncertainty into account,while designing a feedback controller.

    Pre-requisites

    1. Laplace transform, continuous-time transfer functions, frequency responses, and sta-bility.

    2. Classical continuous-time feedback control design using loop-shaping.

    3. Knowledge of MATLAB/Simulink.

    1

  • 8/2/2019 Robust Notes

    6/23

    2 Joao P. Hespanha

  • 8/2/2019 Robust Notes

    7/23

    Lecture #1

    Robust stability

    Contents

    1.1 Model uncertainty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Nyquist stability criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3 Small-Gain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.4 MATLAB hints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    1.1 Model uncertainty

    Suppose we want to control the spring-mass-damper system in Figure 1.1, which has the

    ym

    k

    u

    bMeasuring the mass vertical position ywith respect to the rest position of thespring, we obtain from Newtons law:

    my = by ky + u

    Figure 1.1. Spring-mass-damper system.

    following transfer function from the applied force u to the spring position y

    P(s) =1

    ms2 + bs + k. (1.1)

    Typically, the mass m, the friction coefficient b, and the spring constant k would be measuredexperimentally (or taken from some specifications sheet) leading to confidence intervals forthese parameters and not just a single value:

    m [m0 1, m0 + 1], b [b0 2, b0 + 2], k [k0 3, k0 + 3].

    3

  • 8/2/2019 Robust Notes

    8/23

  • 8/2/2019 Robust Notes

    9/23

    Robust Control 5

    +

    +

    yu

    a(s)

    P0(s)

    P(s)

    a(s) := P(s) P0(s)

    P(s) = P0(s) + a(s)

    Figure 1.3. Additive uncertainty

    function a() sufficiently large so that for every admissible process transfer function P(s)we have

    |a(j)| = |P(j) P0(j)| a(), .

    When one has available all the admissible P(s) (or a representative set of themsuch asin Figure 1.2), one can determine

    a() by simply plotting |P(j) P

    0(j)| vs. for all

    the P(s) and choosing for a() a function larger than all the plots. Since in general it isnot feasible to plot all |P(j) P0(j)|, one should provide some safety-cushion whenselecting a(). Figure 1.4 shows a() for the Bode plots in Figure 1.2.

    101

    100

    101

    100

    80

    60

    40

    20

    0

    20

    Magnitude (dB)

    Frequency

    (rad/sec)

    Figure1.4. Additive uncertainty bounds for the process Bode plots in Figure 1.2 with P0(s) :=1

    m0s2+b0s+k0

    , m0 = 1, b0 = 1.5, k0 = 2.5. The solid lines represent possible plots for |P(j)P0(j)|

    and the dashed one represents the uncertainty bound a().

    1.1.2 Multiplicative uncertainty

    The additive uncertainty in (1.2) measures the difference between P(s) and P0(s) in absoluteterms and may seem misleadingly large when both P(s) and P0(s) are largee.g., at lowfrequencies when the process has a pole at the origin. To overcome this difficulty one oftendefines instead

    m(s) :=P(s) P0(s)

    P0(s), (1.3)

    which measures how much P(s) deviates from P0(s), relative to the size of Po(s). We cannow express any admissible transfer function P(s) as in Figure 1.5, which motivates calling

  • 8/2/2019 Robust Notes

    10/23

    6 Joao P. Hespanha

    +

    +

    yu

    m(s)

    P0(s)

    P(s)m(s) :=

    P(s) P0(s)

    P0(s)

    P(s) = P0(s)`

    1 + m(s)

    Figure 1.5. Multiplicative uncertainty

    m(s) a multiplicative uncertainty block. To characterize a multiplicative uncertainty onedetermines a function m() sufficiently large so that for every admissible process transferfunction P(s) we have

    |m(j)| =|P(s) P0(s)|

    |P0(s)| m(), .

    One can determine m() by plotting|P(s)P0(s)|

    |P0(s)|vs. for all admissible P(s) (or a repre-

    sentative set of them) and choosing m() to be larger than all the plots. Figure 1.6 showsm() for the Bode plots in Figure 1.2.

    101

    100

    101

    100

    80

    60

    40

    20

    0

    20

    Magnitude (dB)

    Frequency

    (rad/sec)

    Figure 1.6. Multiplicative uncertainty bounds for the process Bode plots in Figure 1.2 withP0(s) :=

    1m0s

    2+b0s+k0, m0 = 1, b0 = 1.5, k0 = 2.5. The solid lines represent possible plots for

    |P(j)P0(j)||P0(j)|

    and the dashed one represents the uncertainty bound m().

    1.2 Nyquist stability criteria

    The first question we address is: Given a specific feedback controller C(s), how can weverify that it stabilizes every admissible process P(s). When the admissible processes aredescribed in terms of a multiplicative uncertainty block, this amounts to verifying that theclosed-loop system in Figure 1.7 is stable for every m(j) with norm smaller than m().This can be done using the Nyquist stability criterion, which we review next.

    The Nyquist criterion is used to investigate the stability of the negative feedback con-nection in Figure 1.8. We briefly summarize it here. The textbook [1, Section 6.3] providesidebar 1. Figure 1.8 can

    epresent the closed-loopystem in Figure 1.7 if wehoose G(s) :=1 + m(s)

    P(s)C(s).

    a more detailed description of it with several examples.

  • 8/2/2019 Robust Notes

    11/23

    Robust Control 7

    +

    +

    +

    yur

    m(s)

    P0(s)C(s)

    |m(j)| m(),

    Figure1.7. Unity feedback configuration with multiplicative uncertainty

    +

    yrG(s)

    Figure 1.8. Negative feedback

    1.2.1 The Nyquist Plot

    The first step consists of drawing the Nyquist plot, which is done by evaluating G(j) from Matlab hint 2.nyquist(sys) draws theNyquist plot of the systsys. . .

    = to = + and plotting it in the complex plane. This leads to a closed-curvethat is always symmetric with respect to the real axis. This curve should be annotated witharrows indicating the direction corresponding to increasing .

    Attention! Any poles of G(s) on the imaginary axis should be moved slightly to the leftof the axis to avoid divisions by zero. E.g.,

    G(s) =s + 1

    s(s 3) G(s)

    s + 1

    (s + )(s 3)

    G(s) =

    s

    s2 + 4 =

    s

    (s + 2j)(s 2j) G(s)

    s

    (s + + 2j)(s + 2j) =

    s

    (s + )2 + 4 ,

    for a small > 0. The criterion should then be applied to the perturbed transfer functionG(s). If we conclude that the closed-loop is stable for G(s) with very small , then theclosed-loop with G(s) will also be stable and vice-versa.

    1.2.2 The Nyquist criterion

    Count the number #ENC of clockwise encirclements by the Nyquist plot of the point 1.To do this, we draw a ray from 1 to in any direction and add one each time the Nyquistplot crosses the ray in the clockwise direction (with respect to the origin of the ray) andsubtract one each time it crosses the ray in the counter-clockwise direction. The final countgives #ENC.

    Nyquist Stability Criterion. The total number of unstable (i.e., in the right-hand-sideplane) closed-loop poles (#CUP) is given by

    #CUP = #ENC + #OUP,

  • 8/2/2019 Robust Notes

    12/23

    8 Joao P. Hespanha

    where #OUP denotes the number of unstable (open-loop) poles of G(s). To have a stableclosed-loop one thus needs

    #ENC = #OUP.

    Figure 1.9 shows the Nyquist plot of

    G0(s) = C(s)P0(s), (1.4)

    for the nominal process model

    P0(s) :=1

    m0s2 + b0s + k0, m0 = 1, b0 = 1.5, k0 = 2.5, (1.5)

    (used in Figures 1.4 and 1.6) and a PID controller

    C(s) :=10

    s+ 15 + 5s. (1.6)

    Since the open loop system has no unstable poles (#OUP = 0) and there are no encir-clements of1 (#ENC = 0), we conclude that the closed-loop system is stable. This meansthat the given PID controller C(s) stabilizes, at least, the nominal process P0(s). It remainsto check if it also stabilizes every admissible process model with multiplicative uncertainty.

    50 0 50 100 150 200 250 300 350 400200

    150

    100

    50

    0

    50

    100

    150

    200

    Nyquist Diagram

    Real Axis

    ImaginaryAxis

    20 15 10 5 0 5 10 15 20 25 3020

    15

    10

    5

    0

    5

    10

    15

    20

    Nyquist plot for 1st controller

    Real Axis

    ImaginaryAx

    is

    Figure 1.9. Nyquist plot for the (open-loop) transfer function in (1.4). The right figure shows azoomed view of the origin. To avoid a pole over the imaginary axis, in these plots we moved thepole of the controller from 0 to .01.

    1.3 Small-GainConsider the closed-loop system in Figure 1.7 and suppose that we are given a controllerC(s) that stabilizes the nominal process P0(s), i.e., the closed-loop is stable when m(s) = 0.Our goal is to find out if the closed-loop remains stable for every m(j) with norm smallerthan m().

  • 8/2/2019 Robust Notes

    13/23

    Robust Control 9

    Since C(s) stabilizes P0(s), we know that the Nyquist plot of the nominal (open-loop)transfer function

    G0(s) = C(s)P0(s),

    has the right number of encirclements (#ENC = #OUP, where #OUP is the number ofunstable poles ofG0(s). To check is the closed-loop is stable from some admissible processtransfer function

    P(s) = P0(s)

    1 + m(s)

    ,

    we need to draw the Nyquist plot of Sidebar 2. We areassuming that G(s) andG0(s) have the same nuof unstable poles #OUPtherefore stability is achfor the same number ofencirclements#ENC = #OUP. Inpractice this means thatuncertainty should notchange the stability of apole.

    G(s) = C(s)P(s) = C(s)P0(s)

    1 + m(s)

    = G0(s) + G0(s)m(s)

    and verify that we still get the same number of encirclements.

    G(j)G0(j)

    |G(j) G0(j)|

    |1 + G0(j)|

    1

    Figure1.10. Nyquist plot derivation of the small-gain conditions

    The Nyquist plots of G(s) and G0(s) differ by

    |G(j) G0(j)| = |G0(j )m(j)| |G0(j)| m(),

    A simple way to make sure that G(j) and G0(j) have the same number of encirclementsis to ask that the maximum difference between the two be smaller than the distance fromG0(j) to the point 1, i.e.,

    |1 + G0(j)| > |G0(j)| m() |G0(j)|

    |1 + G0(j )|