Describing Function Slides

Embed Size (px)

Citation preview

  • 7/29/2019 Describing Function Slides

    1/43

    Lecture 6 Describing function analysis

    Todays Goal: To be able to

    Derive describing functions for static nonlinearities

    Predict stability and existence of periodic solutions through

    describing function analysis

    Material:

    Slotine and Li: Chapter 5

    Chapter 14 in Glad & Ljung

    Chapter 7.2 (pp.280290) in Khalil

    (Chapter 8 in Adaptive Controlby strm & Wittenmark)

    Lecture notes

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    2/43

    Course Outline

    Lecture 1-3 Modelling and basic phenomena(linearization, phase plane, limit cycles)

    Lecture 2-6 Analysis methods(Lyapunov, circle criterion, describing functions)

    Lecture 7-8 Common nonlinearities(Saturation, friction, backlash, quantization)

    Lecture 9-13 Design methods(Lyapunov methods, Backstepping, Optimal control)

    Lecture 14 Summary

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    3/43

    Example: saturated sinusoidals

    0 1 2 3 4 5 6 7 8 9 1 04

    3

    2

    1

    0

    1

    2

    3

    4

    time [s]

    inputsignal

    0 1 2 3 4 5 6 7 8 9 1 02

    1.5

    1

    0.5

    0

    0.5

    1

    1.5

    2

    time [s]

    outputsignal

    Sine Wave ScopeSaturation

    The effective gain ( the ratiosat(A sint)

    A sint) varies with the

    input signal amplitude A.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    4/43

    Motivating Example

    r e u y

    G(s)

    0 5 10 15 20

    2

    1

    0

    1

    2y

    u

    G(s) =4

    s(s + 1)2and u = sat (e) gives stable oscillation for r = 0.

    How can the oscillation be predicted?

    Q: What is the amplitude/topvalue of u and y? What is the frequency?

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    5/43

    Motivating Example

    r e u y

    G(s)

    0 5 10 15 20

    2

    1

    0

    1

    2y

    u

    G(s) =4

    s(s + 1)2and u = sat (e) gives stable oscillation for r = 0.

    How can the oscillation be predicted?

    Q: What is the amplitude/topvalue of u and y? What is the frequency?

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    6/43

    Recall the Nyquist Theorem

    Assume G(s) stable, and k is positive gain.

    The closed-loop system is unstable if the point 1/k isencircled by G(i)

    The closed-loop system is stable if the point 1/k is not

    encircled by G(i)

    0 e u y

    k G(s) 1/k

    G(i)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    7/43

    Motivating Example (contd)

    Heuristic reasoning:

    For what frequency and what amplitude is"the loop gain" f G = 1?

    Introduce N(A) as an amplitude dependent approximation ofthe nonlinearity f().

    0 e u y

    f() G(s)

    1/N(A)

    A

    G(i)

    y = G(i)u G(i)N(A)y G(i) = 1

    N(A)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    8/43

    Motivating Example (contd)

    8 6 4 2 010

    8

    6

    4

    2

    0

    G(i)

    1/N(A)

    Introduce N(A) as an amplitude dependent gain-approximationof the nonlinearity f

    (

    ).

    Heuristic reasoning: For what frequency and what amplitude is"the loop gain" N(A) G(iw) = 1?

    The intersection of the 1/N(A) and the Nyquist curve G(i)

    predicts amplitude and frequency.FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    9/43

    Motivating Example (contd)

    8 6 4 2 010

    8

    6

    4

    2

    0

    G(i)

    1/N(A)

    Introduce N(A) as an amplitude dependent gain-approximationof the nonlinearity f

    (

    ).

    Heuristic reasoning: For what frequency and what amplitude is"the loop gain" N(A) G(iw) = 1?

    The intersection of the 1/N(A) and the Nyquist curve G(i)

    predicts amplitude and frequency.FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    10/43

    Motivating Example (contd)

    8 6 4 2 010

    8

    6

    4

    2

    0

    G(i)

    1/N(A)

    Introduce N(A) as an amplitude dependent gain-approximationof the nonlinearity f

    (

    ).

    Heuristic reasoning: For what frequency and what amplitude is"the loop gain" N(A) G(iw) = 1?

    The intersection of the 1/N(A) and the Nyquist curve G(i)

    predicts amplitude and frequency.FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    11/43

    How do we derive the describing function N(A)?

    Does the intersection predict a stable oscillation?

    Are the estimated amplitude and frequency accurate?

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    12/43

    Fourier Series

    Every periodic function u(t) = u(t + T) has a Fourier seriesexpansion

    u(t) =a0

    2+

    n=1

    (an cos nt + bn sin nt)

    =a0

    2 +

    n=1

    a2n + b2n sin[nt + arctan(an/bn)]where = 2/T and

    an =2

    T T0 u(t) cos nt dt bn = 2T T

    0u(t) sin nt dt

    .

    Note: Sometimes we make the change of variable t /

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    13/43

    The Fourier Coefficients are Optimal

    The finite expansion

    uk(t) =

    a0

    2+

    k

    n=1(an cos nt + bn sin nt)

    solves

    minu

    2

    T

    T0

    u(t)

    uk(t)

    2dt

    if{

    an, b

    n}are the Fourier coefficients.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    14/43

    The Key Idea

    0 e u y

    N.L. G(s)

    Assume e(t) = A sint and u(t) periodic. Then

    u(t) =a0

    2+

    n=1

    a2n + b

    2n sin[nt + arctan(an/bn)]

    If G(in) G(i) for n = 2,3,. . . and a0 = 0, then

    y(t) G(i)

    a21 + b21 sin[t + arctan(a1/b1) + argG(i)]

    Find periodic solution by matching coefficients in y = e.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    15/43

    Definition of Describing Function

    The describing function is

    N(A,) =b1() + ia1()

    A

    e(t) u(t)

    N.L.

    e(t)

    u1(t)N(A,)If G is low pass and a0 = 0, then

    u1(t) = N(A,)A sin[t + argN(A,)]can be used instead of u(t) to analyze the system.Amplitude dependent gain and phase shift!

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Idea: Use the describing function to approximate the part of

  • 7/29/2019 Describing Function Slides

    16/43

    Idea: Use the describing function to approximate the part ofthe signal coming out from the nonlinearity which will survivethrough the low-pass filtering linear system.

    e(t) = A sint = Im (Aeit)

    e(t) u(t)N.L. u(t) =

    a0

    2+

    n=1(an cos nt + bn sin nt)

    e(t) u1(t)N(A,)

    u1(t) = a1 cos(t) + b1 sin(t)

    = Im (N(A,)Aeit)

    where the describing function is defined as

    N(A,) =b1() + ia1()

    A= U(i) N(A,)E(i)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

  • 7/29/2019 Describing Function Slides

    17/43

    Existence of Limit Cycles

    0 e u y

    f() G(s)

    1/N(A)

    A

    G(i)

    y = G(i)u G(i)N(A)y G(i) = 1

    N(A)

    The intersections of G(i) and 1/N(A) give and A forpossible limit cycles.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    D ibi F i f R l

  • 7/29/2019 Describing Function Slides

    18/43

    Describing Function for a Relay

    H

    H

    u

    e

    0 1 2 3 4 5 61

    0.5

    0

    0.5

    1

    eu

    a1 =1

    20

    u() cosd= 0

    b1 =1

    20 u() sind= 2

    0Hsind=

    4H

    The describing function for a relay is thus N(A) =4H

    A.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    D ibi F ti f Odd St ti N li iti

  • 7/29/2019 Describing Function Slides

    19/43

    Describing Function for Odd Static Nonlinearities

    Assume f() and () are odd static nonlinearities (i.e.,f(e) = f(e)) with describing functions Nf and N. Then,

    Im Nf(A,) = 0, coeff. (a1 0) Nf(A,) = Nf(A)

    N f(A) = Nf(A)

    Nf+(A) = Nf(A) + N(A)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Li it C l i R l F db k S t

  • 7/29/2019 Describing Function Slides

    20/43

    Limit Cycle in Relay Feedback System

    r e u y

    G(s)

    1 0.8 0.6 0.4 0.2 0

    0.5

    0.4

    0.3

    0.2

    0.1

    0

    0.1

    G(i)

    1/N(A)

    G(s) =3

    (s + 1)3with feedback u = sgny

    3/8 = 1/N(A) = A/4 A = 12/8 0.48G(i) = 3/8 1.7, T= 2/= 3.7

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Li it C l i R l F db k S t ( td)

  • 7/29/2019 Describing Function Slides

    21/43

    Limit Cycle in Relay Feedback System (contd)

    The prediction via the describing function agrees very well with

    the true oscillations:

    0 2 4 6 8 10

    1

    0.5

    0

    0.5

    1u

    y

    G filters out almost all higher-order harmonics.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Describing Function for a Saturation

  • 7/29/2019 Describing Function Slides

    22/43

    Describing Function for a Saturation

    H

    H

    DD

    u

    e

    0 1 2 3 4 5 6 71

    0.8

    0.6

    0.4

    0.2

    0

    0.2

    0.4

    0.6

    0.8

    1

    u

    e

    Let e(t) = A sint = A sin. First set H= D. If A D thenN(A) = 1, if A > D then for (0,)

    u() = A sin, (0,0) ( 0,)D, (0, 0)

    where 0 = arcsin D/A.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Describing Function for a Saturation (contd)

  • 7/29/2019 Describing Function Slides

    23/43

    Describing Function for a Saturation (cont d)

    a1 =1

    20

    u() cosd= 0

    b1 =

    1

    2

    0 u() sind=

    4

    /2

    0 u() sind

    =4A

    00

    sin2 d+4D

    /20

    sind

    =

    A

    20 + sin 20

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Describing Function for a Saturation (contd)

  • 7/29/2019 Describing Function Slides

    24/43

    Describing Function for a Saturation (cont d)

    If H= D

    N(A) =

    1

    20 + sin20, A DFor H= D the rule N f(A) = Nf(A) gives

    N(A) =H

    D20 + sin20, A D

    0 2 4 6 8 100.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    1.1

    N(A) for H= D = 1

    NOTE: dependance of A showsup in 0 = arcsin D/A

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    3 minute exercise:

  • 7/29/2019 Describing Function Slides

    25/43

    3 minute exercise:

    What oscillation amplitude and frequency do the describing

    function analysis predict for the Motivating Example?

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Solution: Find and A such that G(i) N(A) = 1;

  • 7/29/2019 Describing Function Slides

    26/43

    As N(A) is positive and real valued, find s.t.argG(i) = =

    2 2arctan

    1= = = 1.0

    which gives a period time of 6.28 seconds.

    G(1.0i) N(A) = 2 N(A) = 1 = N(A) = 0.5.To find the amnplitude A, either

    Alt. 1 Solve (numerically) N(A) = 11

    20 + sin20

    = 0.5,

    where 0 = arcsin(1/A)

    Alt. 2 From the diagram of N(A) one can find A 2.47

    0 2 4 6 8 100.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    0.8

    0.9

    1

    1.1

    N(A) for H= D = 1

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    The Nyquist Theorem

  • 7/29/2019 Describing Function Slides

    27/43

    The Nyquist Theorem

    Assume G(s) stable, and k is positive gain.

    The closed-loop system is unstable if the point 1/k isencircled by G(i)

    The closed-loop system is stable if the point 1/k is notencircled by G(i)

    0 e u y

    k G(s) 1/k

    G(i)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    How to Predict Stability of Limit Cycles

  • 7/29/2019 Describing Function Slides

    28/43

    How to Predict Stability of Limit Cycles

    Assume G(s) stable. For a given A = A0:

    A increases if the point 1/Nf(A0) is encircled by G(i)

    A decreases otherwise

    0 e u y

    f G(s)

    1/N(A)

    G(i)

    A stable limit cycle is predicted

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    How to Predict Stability of Limit Cycles

  • 7/29/2019 Describing Function Slides

    29/43

    How to Predict Stability of Limit Cycles

    1/N(A)

    G()

    An unstable limit cycle is predicted

    An intersection with amplitude A0 is unstable if A < A0 givesdecreasing amplitude and A > A0 gives increasing.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Stable Periodic Solution in Relay System

  • 7/29/2019 Describing Function Slides

    30/43

    Stable Periodic Solution in Relay System

    r e u y

    G(s)

    5 4 3 2 1 00.2

    0.15

    0.1

    0.05

    0

    0.05

    0.1

    0.15

    0.2

    G(i)

    1/N(A)

    G(s) =(s + 10)2

    (s + 1)3with feedback u = sgny

    gives one stable and one unstable limit cycle. The left mostintersection corresponds to the stable one.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Periodic Solution in Relay System

  • 7/29/2019 Describing Function Slides

    31/43

    Periodic Solution in Relay System

    The relay gain N(A) is higher for small A:

    orbit

    Growing amplitudes

    Shrinking relay gain

    Stable

    periodic

    orbit

    Unstable

    periodic

    Growing relay gain

    One encirclement

    Shrinking amplitudes

    Growing relay gain

    Small amplitudes

    High relay gain

    No encirclement

    Shrinking amplitudes

    Big amplitudes

    Small relay gain

    No encirclement

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Automatic Tuning of PID Controller

  • 7/29/2019 Describing Function Slides

    32/43

    Automatic Tuning of PID Controller

    Period and amplitude of relay feedback limit cycle can be usedfor autotuning.

    ProcessPID

    Relay

    A

    T

    u y

    1

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Describing Function for a dead-zone relay

  • 7/29/2019 Describing Function Slides

    33/43

    b g y

    D

    D

    u

    e

    0 1 2 3 4 5 6

    1

    0.8

    0.6

    0.4

    0.2

    0

    0.2

    0.4

    0.6

    0.8

    1

    e

    u

    Let e(t) = A sint = A sin. Then for (0,)

    u() = 0, (0,0)D, (0, 0)where 0 = arcsin D/A (if A D)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Describing Function for a dead-zone relaycontd.

  • 7/29/2019 Describing Function Slides

    34/43

    g y

    a1 =1

    20

    u() cosd= 0

    b1 =1

    2

    0

    u() sind=4

    /2

    0

    D sind

    =4D

    cos0 =

    4D

    1 D2/A2

    N(A) = 0, A < D4A

    1 D2/A2, A D

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Plot of Describing Function for dead-zone relay

  • 7/29/2019 Describing Function Slides

    35/43

    g y

    0 2 4 6 8 100

    0.1

    0.2

    0.3

    0.4

    0.5

    0.6

    0.7

    N(A) for D = 1

    Notice that N(A) 1.3/A for large amplitudes

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Pitfalls

  • 7/29/2019 Describing Function Slides

    36/43

    Describing function analysis can give erroneous results.

    DF analysis may predict a limit cycle, even if it does notexist.

    A limit cycle may exist, even if DF analysis does not predictit.

    The predicted amplitude and frequency are onlyapproximations and can be far from the true values.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Example

  • 7/29/2019 Describing Function Slides

    37/43

    p

    The control of output power x(t) from a mobile telephone is critical forgood performance. One does not want to use too large power sinceother channels are affected and the battery length is decreased.

    Information about received power is sent back to the transmitter and

    is used for power control. A very simple scheme is given by

    x(t) = u(t)

    u(t) = sign y(t L), ,> 0

    y(t) = x(t).

    Use describing function analysis to predict possible limit cycle

    amplitude and period of y. (The signals have been transformed so

    x = 0 corresponds to nominal output power)y(t) = x(t)

    x(t)

    y(t L)

    s e

    sL

    u(t)

    x(t) y(t) y(t L)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    The system can be written as a negative feedback loop with

  • 7/29/2019 Describing Function Slides

    38/43

    G(s) =esL

    s

    and a relay with amplitude 1. The describing function of a relaysatisfies 1/N(A) = A/4 hence we are interesting in G(i)on the negative real axis. A stable intersection is given by

    = arg G(i) = /2Lwhich gives = /(2L).This gives

    A

    4= G(i) =

    =

    2L

    and hence A = 8L/2. The period is given byT= 2/= 4L. (More exact analysis gives the true valuesA = L and T= 4L, so the prediction is quite good.)

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Accuracy of Describing Function Analysis

  • 7/29/2019 Describing Function Slides

    39/43

    Control loop with friction F= sgny:

    _

    _

    GC

    Friction

    yref u

    F

    y

    Corresponds to

    G1+ G C

    = s(s b)s3 + 2s2 + 2s + 1

    with feedback u = sgny

    The oscillation depends on the zero at s = b.

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Accuracy of Describing Function Analysis

  • 7/29/2019 Describing Function Slides

    40/43

    1 0.5 0 0.50.4

    0.2

    0

    0.2

    0.4

    0.6

    0.8

    1

    1.2

    b = 4/3

    b = 1/3

    DF predicts period times andampl. (T,A)b=4/3 = (11.4,1.00)and (T,A)b=1/3 =(17.3,0.23)

    0 5 10 15 20 25 30

    1

    0

    1

    0 5 10 15 20 25 300.4

    0.2

    0

    0.2

    0.4

    y

    y

    b = 4/3

    b = 1/3

    Simulation:

    (T,A)b=4/3 = (12, 1.1)

    (T,A)b=1/3 = (22, 0.28)

    Accurate results only if y is sinusoidal!

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Analysis of OscillationsA summary

  • 7/29/2019 Describing Function Slides

    41/43

    There exist both time-domain and frequency-domain methodsto analyze oscillations.

    Time-domain:

    Poincar maps and Lyapunov functions

    Rigorous results but hard to use for large problems

    Frequency-domain:

    Describing function analysis

    Approximate resultsPowerful graphical methods

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Todays Goal

  • 7/29/2019 Describing Function Slides

    42/43

    To be able to

    Derive describing functions for static nonlinearities

    Predict stability and existence of periodic solutions through

    describing function analysis

    FRTN05 Lecture 6 Automatic Control LTH, Lund University

    Next Lecture

  • 7/29/2019 Describing Function Slides

    43/43

    Saturation and antiwindup compensation

    Lyapunov analysis of phase locked loopsFriction compensation

    FRTN05 Lecture 6 Automatic Control LTH, Lund University