You are on page 1of 43

Lecture 6 — Describing function analysis

Today’s 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.280–290) in Khalil
(Chapter 8 in Adaptive Control by Åström & Wittenmark)
Lecture notes

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


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


Example: saturated sinusoidals

4
2

3
1.5

2 1

1 0.5
input signal

output signal
0 0

−1 −0.5

−2 −1

−3 −1.5

−4 −2
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
time [s] time [s]

Sine Wave Saturation Scope

sat( A sin ω t)
The “effective gain” ( the ratio ) varies with the
A sin ω t
input signal amplitude A.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Motivating Example

2
y
r e u y u
G (s) 1

− 0

−1

−2

0 5 10 15 20

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

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


Motivating Example

2
y
r e u y u
G (s) 1

− 0

−1

−2

0 5 10 15 20

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

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


Recall the Nyquist Theorem

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

The closed-loop system is unstable if the point −1/ k is


encircled by G (iω )
The closed-loop system is stable if the point −1/ k is not
encircled by G (iω )

G (iω )
0 e u y
k G (s) −1/ k

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Motivating Example (cont’d)
Heuristic reasoning:
For what frequency and what amplitude is
"the loop gain" f ⋅ G = −1?
Introduce N ( A) as an amplitude dependent approximation of
the nonlinearity f (⋅).

G (iω )
0 e u y
f (⋅) G (s)

−1/ N ( A)
A

1
y = G (iω )u ( − G (iω ) N ( A) y [ G (iω ) = −
N ( A)

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Motivating Example (cont’d)

0
−1/ N ( A)
−2

−4
G (iω )
−6

−8

−10
−8 −6 −4 −2 0

Introduce N(A) as an amplitude dependent gain-approximation


of 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
Motivating Example (cont’d)

0
−1/ N ( A)
−2

−4
G (iω )
−6

−8

−10
−8 −6 −4 −2 0

Introduce N(A) as an amplitude dependent gain-approximation


of 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
Motivating Example (cont’d)

0
−1/ N ( A)
−2

−4
G (iω )
−6

−8

−10
−8 −6 −4 −2 0

Introduce N(A) as an amplitude dependent gain-approximation


of 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
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


Fourier Series
Every periodic function u(t) = u(t + T ) has a Fourier series
expansion

a0 X
u(t) = + (an cos nω t + bn sin nω t)
2
n=1
∞ q
X
a0
= + a2n + b2n sin[nω t + arctan(an /bn )]
2
n=1

where ω = 2π /T and
Z T Z T
2 2
an = u(t) cos nω t dt bn = u(t) sin nω t dt
T 0 T 0

Note: Sometimes we make the change of variable t → φ /ω

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


The Fourier Coefficients are Optimal

The finite expansion


k
a0 X
b k (t) =
u + (an cos nω t + bn sin nω t)
2
n=1

solves Z T  2
2
min b k(t) dt
u(t) − u
b T
u 0

if {an , bn } are the Fourier coefficients.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


The Key Idea

0 e u y
N.L. G (s)

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


∞ q
a0 X
u(t) = + a2n + b2n sin[nω t + arctan(an /bn )]
2
n=1

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


q
y(t) ( p G (iω )p a21 + b21 sin[ω t + arctan(a1 /b1 ) + arg G (iω )]

Find periodic solution by matching coefficients in y = − e.


FRTN05 — Lecture 6 Automatic Control LTH, Lund University
Definition of Describing Function

The describing function is

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

e(t) u(t) e(t) b1 (t)


u
N.L. N ( A, ω )

If G is low pass and a0 = 0, then

b1 (t) = p N ( A, ω )p A sin[ω t + arg N ( A, ω )]


u

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
the signal coming out from the nonlinearity which will survive
through the low-pass filtering linear system”.

e(t) = A sin ω t = Im ( Aeiω t )

e(t) u(t) ∞
N.L. a0 X
u(t) = + (an cos nω t + bn sin nω t)
2
n=1

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


N ( A, ω )
= Im ( N ( A, ω ) Aeiω t )

where the describing function is defined as


b1 (ω ) + ia1 (ω )
N ( A, ω ) = =[ U (iω ) ( N ( A, ω ) E(iω )
A

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Existence of Limit Cycles

G (iω )
0 e u y
f (⋅) G (s)

−1/ N ( A)
A

1
y = G (iω )u ( − G (iω ) N ( A) y [ G (iω ) = −
N ( A)

The intersections of G (iω ) and −1/ N ( A) give ω and A for


possible limit cycles.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Describing Function for a Relay
u 1

u
H 0.5
e
e 0

−0.5
−H
−1
0 1 2 3 4 5 6
φ
Z 2π
1
a1 = u(φ ) cos φ dφ = 0
π 0
Z 2π Z π
1 2 4H
b1 = u(φ ) sin φ dφ = H sin φ dφ =
π 0 π 0 π
4H
The describing function for a relay is thus N ( A) = .
πA

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Describing Function for Odd Static Nonlinearities

Assume f (⋅) and ˆ(⋅) are odd static nonlinearities (i.e.,


f (− e) = − f ( e)) with describing functions N f and Nˆ . Then,

• Im N f ( A, ω ) = 0, coeff. (a1 " 0)


• N f ( A, ω ) = N f ( A)
• Nα f ( A) = α N f ( A)
• N f +ˆ ( A) = N f ( A) + Nˆ ( A)

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Limit Cycle in Relay Feedback System

0.1 −1/ N ( A)
r e u y 0

G (s) −0.1
− −0.2

−0.3 G (iω )
−0.4

−0.5

−1 −0.8 −0.6 −0.4 −0.2 0

3
G (s) = with feedback u = −sgn y
(s + 1)3

−3/8 = −1/ N ( A) = −π A/4 [ A = 12/8π ( 0.48


G (iω ) = −3/8 [ ω ( 1.7, T = 2π /ω = 3.7

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Limit Cycle in Relay Feedback System (cont’d)

The prediction via the describing function agrees very well with
the true oscillations:

1
u
y
0.5

−0.5

−1
0 2 4 6 8 10

G filters out almost all higher-order harmonics.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Describing Function for a Saturation
u
1

H
0.8 e

0.6

0.4
u

−D D e 0.2

−0.2

−0.4

−0.6

−H −0.8

φ
−1
0 1 2 3 4 5 6 7

Let e(t) = A sin ω t = A sin φ . First set H = D . If A ≤ D then


N ( A) = 1, if A > D then for φ ∈ (0, π )

A sin φ , φ ∈ (0, φ 0 ) ∪ (π − φ 0 , π )
u(φ ) =
D, φ ∈ (φ 0 , π − φ 0 )

where φ 0 = arcsin D / A.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Describing Function for a Saturation (cont’d)

Z 2π
1
a1 = u(φ ) cos φ dφ = 0
π 0
Z 2π Z π /2
1 4
b1 = u(φ ) sin φ dφ = u(φ ) sin φ dφ
π 0 π 0
Z φ0 Z π /2
4A 4D
= sin2 φ dφ + sin φ dφ
π 0 π φ0
 
A
= 2φ 0 + sin 2φ 0
π

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Describing Function for a Saturation (cont’d)
If H = D
 
1
N ( A) = 2φ 0 + sin 2φ 0 , A≥D
π

For H ,= D the rule Nα f ( A) = α N f ( A) gives


 
H
N ( A) = 2φ 0 + sin 2φ 0 , A≥ D

1.1

0.9
N ( A) for H = D = 1
0.8

0.7

0.6
NOTE: dependance of A shows
0.5 up in φ 0 = arcsin D / A
0.4

0.3

0.2

0.1
0 2 4 6 8 10

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


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;
As N ( A) is positive and real valued, find ω s.t.
arg G (iω ) = −π =[ − π2 − 2 arctan ω1 = −π =[ ω = 1.0
which gives a period time of 6.28 seconds.
p G (1.0i)p ⋅ N ( A) = 2 ⋅ N ( A) = 1 =[ N ( A) = 0.5.
To find the amnplitude A, either  
1
Alt. 1 Solve (numerically) N ( A) = 1⋅π
2φ 0 + sin 2φ 0 = 0.5,
where φ 0 = arcsin(1/ A)

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


1.1

0.9
N ( A) for H = D = 1
0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1
0 2 4 6 8 10

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


The Nyquist Theorem

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

The closed-loop system is unstable if the point −1/ k is


encircled by G (iω )
The closed-loop system is stable if the point −1/ k is not
encircled by G (iω )

G (iω )
0 e u y
k G (s) −1/ k

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


How to Predict Stability of Limit Cycles

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

A increases if the point −1/ N f ( A0 ) is encircled by G (iω )


A decreases otherwise

G (iω )
0 e u y
f G (s)
− −1/ N ( A)

A stable limit cycle is predicted

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


How to Predict Stability of Limit Cycles

G (Ω)

−1/ N ( A)

An unstable limit cycle is predicted

An intersection with amplitude A0 is unstable if A < A0 gives


decreasing amplitude and A > A0 gives increasing.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Stable Periodic Solution in Relay System

0.2

0.15 G (iω )
r e u y 0.1

G (s) 0.05
− 0

−0.05 −1/ N ( A)
−0.1

−0.15

−0.2
−5 −4 −3 −2 −1 0

(s + 10)2
G (s) = with feedback u = −sgn y
(s + 1)3
gives one stable and one unstable limit cycle. The left most
intersection corresponds to the stable one.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Periodic Solution in Relay System
The relay gain N ( A) is higher for small A:

Big amplitudes Small amplitudes


Small relay gain High relay gain
No encirclement One encirclement No encirclement
Shrinking amplitudes Growing amplitudes Shrinking amplitudes
Growing relay gain Shrinking relay gain Growing relay gain

Stable Unstable
periodic periodic
orbit orbit

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Automatic Tuning of PID Controller
Period and amplitude of relay feedback limit cycle can be used
for autotuning.

PID

A u y
Σ Process
T
Relay

− 1

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Describing Function for a dead-zone relay

u 1

D 0.8 e
0.6

0.4

e 0.2 u
0

−0.2

D −0.4

−0.6

−0.8

−1
0 1 2 3 4 5 6

Let e(t) = A sin ω t = A sin φ . Then for φ ∈ (0, π )



0, φ ∈ (0, φ 0 )
u(φ ) =
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 relay–cont’d.

Z 2π
1
a1 = u(φ ) cos φ dφ = 0
π 0
Z 2π Z π /2
1 4
b1 = u(φ ) sin φ dφ = D sin φ dφ
π 0 π φ0
q
4D 4D
= cos φ 0 = 1 − D 2 / A2
π π

(
0, A< D
N ( A) = 4 p
1 − D 2 / A2 , A ≥ D
πA

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Plot of Describing Function for dead-zone relay

0.7

0.6

0.5 N ( A) for D = 1

0.4

0.3

0.2

0.1

0
0 2 4 6 8 10

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


FRTN05 — Lecture 6 Automatic Control LTH, Lund University
Pitfalls

Describing function analysis can give erroneous results.

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


exist.
A limit cycle may exist, even if DF analysis does not predict
it.
The predicted amplitude and frequency are only
approximations and can be far from the true values.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Example
The control of output power x(t) from a mobile telephone is critical for
good performance. One does not want to use too large power since
other 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
ẋ(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) y(t − L)
x(t) s β e−sL

u(t)
y(t − L)
FRTN05 — Lecture 6 Automatic Control LTH, Lund University
The system can be written as a negative feedback loop with

e−sLα β
G (s) =
s
and a relay with amplitude 1. The describing function of a relay
satisfies −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ω ) = −π /2 − ω L

which gives ω = π /(2L).This gives

πA αβ 2Lα β
= p G (iω )p = =
4 ω π
and hence A = 8Lα β /π 2 . The period is given by
T = 2π /ω = 4L. (More exact analysis gives the true values
A = α β L and T = 4L, so the prediction is quite good.)

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Accuracy of Describing Function Analysis

Control loop with friction F = sgn y:

F
Friction

_
yref u y
C G
_

Corresponds to

G s(s − b)
= 3 with feedback u = −sgn y
1 + GC s + 2s2 + 2s + 1

The oscillation depends on the zero at s = b.

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Accuracy of Describing Function Analysis

1.2
b = 1/3
1

0.8

0.6
b = 4/3 DF predicts period times and
0.4 ampl. (T, A)b=4/3 = (11.4, 1.00)
0.2

0
and (T, A)b=1/3 =(17.3,0.23)
−0.2

−0.4
−1 −0.5 0 0.5

1
y b = 4/3 Simulation:
0

−1
0 5 10 15 20 25 30 (T, A)b=4/3 = (12, 1.1)
0.4
y b = 1/3
0.2
0
(T, A)b=1/3 = (22, 0.28)
−0.2
−0.4
0 5 10 15 20 25 30

Accurate results only if y is sinusoidal!

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Analysis of Oscillations—A summary

There exist both time-domain and frequency-domain methods


to analyze oscillations.
Time-domain:

Poincaré maps and Lyapunov functions


Rigorous results but hard to use for large problems

Frequency-domain:

Describing function analysis


Approximate results
Powerful graphical methods

FRTN05 — Lecture 6 Automatic Control LTH, Lund University


Today’s Goal

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

Saturation and antiwindup compensation

Lyapunov analysis of phase locked loops

Friction compensation

FRTN05 — Lecture 6 Automatic Control LTH, Lund University

You might also like