Sie sind auf Seite 1von 36

Course Overview

L1-L6 Analysis Methods (Linearization, Lyapunov,


Circle criterion, Describing functions)
L7,L9 Special nonlinearities
L10-L11 Optimal control
L8,L12,L13 Synthesis of nonlinear controllers
L14 Course summary
Anders Rantzer Lecture 12, High-gain control design methods
Lecture 12 High-gain control design methods
History: The Feedback Amplier
Linearization and inversion by high gain feedback
Sliding mode control: example
Sliding mode control: in general
Anders Rantzer Lecture 12, High-gain control design methods
Lecture 12 High-gain control design methods
Todays Goal You should be able to analyze and design
high-gain control system
sliding mode controller
Material
Lecture notes
Khalil: Sec 14.1.1 (pp.552563)
Slotine and Li: Section 7.1, 8.5
Chapter 10 in Adaptive Control by strm & Wittenmark
Anders Rantzer Lecture 12, High-gain control design methods
History of the Feedback Amplier
New YorkSan Francisco communication link 1914.
High signal amplication with low distortion was needed.
f () f ()

r y
f ()
k
Feedback ampliers was the solution!
Black, Bode, and Nyquist at Bell Labs 19201950.
Anders Rantzer Lecture 12, High-gain control design methods
Linearization Through High Gain

r y
f ()
k
e

1
e

2
e
f (e)

1
e f (e)
2
e gives

1
1
1
k
r y

2
1
2
k
r
so if
1
k,
2
k 1 then
y ~
1
k
r
regardless of the nonlinearity. (Easier to design k < 1 with high
accuracy.)
Anders Rantzer Lecture 12, High-gain control design methods
The Sensitivity Function S = (1 GC)
1
The closed-loop system is
G
cl
=
G
1 GC

r y
G
C
Small perturbations dG in G gives
dG
cl
=
dG
1 GC

GCdG
(1 GC)
2
=
dG
(1 GC)
2
so that
dG
cl
G
cl
=
1
1 GC
. .
S
dG
G
S is the closed-loop sensitivity to open-loop perturbations.
Anders Rantzer Lecture 12, High-gain control design methods
Distortion Reduction via Feedback Ampliers
The feedback reduces distortion in each link.
Several links give distortion-free high gain.

f () f ()
k k
Anders Rantzer Lecture 12, High-gain control design methods
ExampleDistortion Reduction
Let G = 1000 with
distortion dG]G = 0.1.

r
y
G
k
Choose k = 0.1 so that S = (1 Gk)
1
~ 0.01. Then
dG
cl
G
cl
= S
dG
G
~ 0.001
One hundred feedback ampliers give total amplication
G
tot
= (G
cl
)
100
~ 10
100
and total distortion
dG
tot
G
tot
= (1 10
3
)
100
1 ~ 0.1
Anders Rantzer Lecture 12, High-gain control design methods
Transcontinental Communication Revolution
The feedback amplier was patented by Black 1937.
Year Channels Loss (dB) No amps
1914 1 60 36
1923 14 150400 620
1938 16 1000 40
1941 480 30000 600
Anders Rantzer Lecture 12, High-gain control design methods
Sensitivity and the Circle Criterion
R
1
GC(i)

r y
GC
f ()
[S(i)[ = 1]R corresponds in the Nyquist diagram to a circle
with center in 1 and radius R.
Circle criterion gives stability if
1
1 R

f (y)
y

1
1 R
[S(i)[ small implies low sensitivity to nonlinearities.
Anders Rantzer Lecture 12, High-gain control design methods
Small Sensitivity Allows Large Uncertainty
If [S(i)[ is small, we can choose R large (close to one).
This corresponds to a large sector for f ().
Hence, [S(i)[ small implies low sensitivity to nonlinearities.
k
1
=
1
1 R
k
2
=
1
1 R
y
k
1
y
k
2
y
f (y)
Anders Rantzer Lecture 12, High-gain control design methods
High Gain Linearization of Static Nonlinearity
Same idea often applicable
r e u y

k
f ()
0 0.2 0.4 0.6 0.8 1
0
0.2
0.4
0.6
0.8
1
y(r)
f (u)
Linearization of f (u) = u
2
through feedback.
The case k = 100 is shown in the plot: y(r) ~ r.
Warning: High gain can give a noise sensitive system.
Anders Rantzer Lecture 12, High-gain control design methods
Inverting Nonlinearities
Compensation of static nonlinearity through inversion:
C(s) f
1
() f () G(s)

Controller
Should be combined with feedback as in the gure!
What if (a) f (x) = x
3
? (b) f (x) = x
2
?
Anders Rantzer Lecture 12, High-gain control design methods
How to Obtain f
1
from f

v
u
k
s
f ()
u
f (u)
u = k
_
v f (u)
_
If k 0 large and df ]du 0, then u 0 and
0 = k
_
v f (u)
_
that is u = f
1
(v)
Note that the function f above does not have a well-dened
inverse! What inverse can you get with the scheme above?
Anders Rantzer Lecture 12, High-gain control design methods
OnOff Control
Onoff control is the simplest control strategy.
Common in temperature control, level control etc.
r e u y

G(s)
The relay feedback corresponds to extreme high-gain control.
Anders Rantzer Lecture 12, High-gain control design methods
A Control Design Idea, and a Problem
Assume V(x) = x
T
Px, P 0, represents the energy of
x = Ax Bu, u |1, 1|
Idea: Choose u such that V decays as fast as possible

V = x
T
(A
T
P AP)x 2B
T
Px u
u = sgn(B
T
Px)
The following situation might then occur (system is not
Lipschitz)
B
T
Px = 0
x
x
Anders Rantzer Lecture 12, High-gain control design methods
Sliding Modes
x =
_
f

(x), (x) 0
f

(x), (x) < 0


(x) 0
(x) < 0
f

The switching set/ sliding set is where (x) = 0 and f

and
f

point towards (x) = 0.


The switching set/ sliding set is given by x such that
(x) = 0
0
0x
f

= () f

< 0
0
0x
f

= () f

0
Note: If f

and f

point in the same direction on both sides of the


set (x) = 0 then the solution curves will just pass through and this
region will not belong to the sliding set.
Anders Rantzer Lecture 12, High-gain control design methods
Sliding Mode
If f

and f

both points towards (x) = 0, what will happen


then?
The sliding dynamics are x = f

(1 ) f

, where is
obtained from
d
dt
=
0
0x
x = 0 on |(x) = 0.
(x) 0
(x) < 0
f

More precisely, nd such that the components of f

and f

perpendicular to the switching surface cancel: f

(1 ) f

= 0
The resulting dynamics is then the sum of the corresponding
components along the surface.
Anders Rantzer Lecture 12, High-gain control design methods
4 minute exercise
x =
_

_
0 1
1 1
_

_
x
_

_
1
1
_

_
u = Ax Bu
u = sgn(x) = sgn x
2
= sgn(Cx)
which means that
x =
_
Ax B, x
2
0
Ax B, x
2
< 0
Determine the switching set and the sliding dynamics.
Approximate gure:
x
2
0
x
2
< 0
x
2
= 0
1 1
Anders Rantzer Lecture 12, High-gain control design methods
4 minute exercise Solution
x
1
= x
2
u = x
2
sgn(x
2
)
x
2
= x
1
x
2
u = x
1
x
2
sgn(x
2
)
f

=
_
x
2
1
x
1
x
2
1
_
f

=
_
x
2
1
x
1
x
2
1
_
(x) = x
2
= 0 = x
2
= 0
0
0x
f

=
_
0 1

= x
1
x
2
1 < 0 = x
1
< 1
0
0x
f

=
_
0 1

= x
1
x
2
1 0 = x
1
1
We will thus have a sliding set for |1 < x
1
< 1, x
2
= 0
Anders Rantzer Lecture 12, High-gain control design methods
The normal projections of ( f

, f

) to (x) = x
2
= 0 are
f

=
_
0
x
1
x
2
1
_
f

=
_
0
x
1
x
2
1
_
Find |0, 1| such that f

(1 ) f

= 0 on |x
2
= 0
(x
1
x
2
1) (1 )(x
1
x
2
1) = 0
=
=
x
1
1
2
as x
2
= 0
Note: |0, 1| = x
1
|1, 1|
Anders Rantzer Lecture 12, High-gain control design methods
The sliding dynamics are the given by
x = f

(1 ) f

_
x
1
x
2
_
=
_
x
2
1
x
1
x
2
1
_
(1 )
_
x
2
1
x
1
x
2
1
_
=
_
2 x
2
1
0
_
=
_
x
1
0
_
where we inserted x
2
= 0 and =
x
1
1
2
We see that on the sliding set |1 < x < 1, x
2
= 0 we have
x
1
= x
1
x
2
= 0
For any initial condition starting on the sliding set, there will be
exponential convergence to x
1
= x
2
= 0.
Anders Rantzer Lecture 12, High-gain control design methods
For small x
2
we have
_

_
x
2
(t) ~ x
1
1,
dx
2
dx
1
=
dx
2
]dt
dx
1
]dt
~ 1 x
1
x
2
0
x
2
(t) ~ x
1
1,
dx
2
dx
1
=
dx
2
]dt
dx
1
]dt
~ 1 x
1
x
2
< 0
This implies the following behavior
x
2
0
x
2
< 0
x
2
= 0
x
1
= 1 x
1
= 1
Anders Rantzer Lecture 12, High-gain control design methods
Sliding Mode Dynamics
The dynamics along the sliding set in (x) = 0 can also be
obtained by nding u = u
eq
|1, 1| such that (x) = 0.
u
eq
is called the equivalent control.
Anders Rantzer Lecture 12, High-gain control design methods
Example (contd)
Finding u = u
eq
such that (x) = x
2
= 0 gives
0 = x
2
= x
1
x
2
..
=0
u
eq
= x
1
u
eq
Insert u
eq
= x
1
in the equation for x
1
:
x
1
= x
2
..
=0
u
eq
= x
1
gives the dynamics on the sliding set (where x
2
= 0)
Remember: u
eq
|1, 1| so can only satisfy u
eq
= x
1
on the
interval x
1
|1, 1|!
Anders Rantzer Lecture 12, High-gain control design methods
Equivalent Control
Assume
x = f (x) p(x)u
u = sgn(x)
has a sliding set on (x) = 0. Then, for x(t) staying on the
sliding set we should have
0 = (x) =
0
0x

dx
dt
=
0
0x
_
f (x) p(x)u
_
The equivalent control is thus given by solving
u
eq
=
_
0
0x
p(x)
_
1
0
0x
f (x)
for all those x such that (x) = 0 and
0
0x
p(x) ,= 0.
Anders Rantzer Lecture 12, High-gain control design methods
Equivalent Control for Linear System
x = Ax Bu
u = sgn(x) = sgn(Cx)
Assume CB 0. The sliding set lies in (x) = Cx = 0.
0 = (x) =
d
dx
_
f (x) p(x)u
_
= C
_
Ax Bu
eq
_
gives CBu
eq
= CAx.
Example (contd) For the previous system
u
eq
= CAx]CB = (x
1
x
2
)]1 = x
1
,
because (x) = x
2
= 0. Same result as above.
Anders Rantzer Lecture 12, High-gain control design methods
More on the Sliding Dynamics
If CB 0 then the dynamics along a sliding set in Cx = 0 is
x = Ax Bu
eq
=
_
I
BC
CB
_
Ax,
One can show that the eigenvalues of (I BC]CB)A equals
the zeros of G(s) = C(sI A)
1
B. (exercise for PhD students)
Anders Rantzer Lecture 12, High-gain control design methods
Design of Sliding Mode Controller
Idea: Design a control law that forces the state to (x) = 0.
Choose (x) such that the sliding mode tends to the origin.
Assume system has form
d
dt
_

_
x
1
x
2
.
.
.
x
n
_

_
=
_

_
f
1
(x) p
1
(x)u
x
1
.
.
.
x
n1
_

_
= f (x) p(x)u
Choose control law
u =
p
T
f (x)
p
T
p(x)


p
T
p(x)
sgn(x),
where 0 is a design parameter, (x) = p
T
x, and
p
T
=
_
_
p
1
. . . p
n
_
_
represents a stable polynomial.
Anders Rantzer Lecture 12, High-gain control design methods
Sliding Mode Control gives Closed-Loop Stability
Consider V (x) =
2
(x)]2 with (x) = p
T
x. Then,

V =(x) (x) = x
T
p
_
p
T
f (x) p
T
p(x)u
_
With the chosen control law, we get

V = (x) sgn(x) 0
so (x) 0 in nite time.
0 =(x) = p
1
x
1
p
n1
x
n1
p
n
x
n
= p
1
x
(n1)
n
p
n1
x
(1)
n
p
n
x
(0)
n
where x
(k)
denote time derivative. P stable gives that x(t) 0.
Note: V is itself not a true Lyapunov function. It only guarantees
convergence to the line |(x) = 0 = |p
T
x = 0.
Anders Rantzer Lecture 12, High-gain control design methods
Time to Switch
Consider an initial point x such that
0
=(x) 0. Then
(x) (x) = (x) sgn(x)
so
(x) =
Hence, the time to the rst switch is
t
s
=

0

<
Note that t
s
0 as .
Anders Rantzer Lecture 12, High-gain control design methods
ExampleSliding Mode Controller
Design state-feedback controller for
x =
_

_
1 0
1 0
_

_
x
_

_
1
0
_

_
u
y =
_
_
0 1
_
_
x
Choose p
1
s p
2
= s 1 so that (x) = x
1
x
2
. The controller
is given by
u =
p
T
Ax
p
T
B


p
T
B
sgn(x)
= 2x
1
sgn(x
1
x
2
)
Anders Rantzer Lecture 12, High-gain control design methods
Phase Portrait
Simulation with = 0.5. Note the sliding set is in
(x) = x
1
x
2
.

x
1
x
2
Anders Rantzer Lecture 12, High-gain control design methods
Time Plots
Initial condition
x(0) =
_
_
1.5 0
_
_
T
.
Simulation agrees well
with time to switch
t
s
=

0

= 3
and sliding dynamics
y = y
x
1
x
2
u
Anders Rantzer Lecture 12, High-gain control design methods
The Sliding Mode Controller is Robust
Assume that only a model x =

f (x) p(x)u of the true system
x = f (x) p(x)u is known. Still, however,

V =(x)
_
p
T
( f p
T


f p
T
)p
p
T
p

p
T
p
p
T
p
sgn(x)
_
< 0
if sgn(p
T
p) = sgn(p
T
p) and 0 is sufciently large.
Closed-loop system is quite robust against model errors!
(High gain control with stable open loop zeros)
Anders Rantzer Lecture 12, High-gain control design methods
Implementation
A relay with hysteresis or a smooth (e.g. linear) region is often
used in practice.
Choice of hysteresis or smoothing parameter can be critical for
performance
More complicated structures with several relays possible.
Harder to design and analyze.
Next Lectures
L13: Other synthesis methods
L14: Course summary
Anders Rantzer Lecture 12, High-gain control design methods