Book Control Systems
Book Control Systems
S. T. Glad
Department of Electrical Engineering
Linkoping University
SE-581 83 Linkoping, Sweden
2
Contents
1 Introduction. 6
1.1 Some examples of nonlinear systems . . . . . . . . . . . . . . . . 6
1.2 Discussion of the examples . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4 Nonlinear observers 39
4.1 A straightforward observer . . . . . . . . . . . . . . . . . . . . . . 39
4.2 Observers based on dierentiation . . . . . . . . . . . . . . . . . 40
4.3 High gain observers . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.4 Observers based on state transformations . . . . . . . . . . . . . 45
3
4.5 Observers based on state and output transformations . . . . . . . 53
4.6 Observers for systems with input signals . . . . . . . . . . . . . . 56
4.7 Closing the loop . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.8 Exercises. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4
8.2 Analysis of systems using the describing function . . . . . . . . . 125
8.3 Some design ideas based on the describing function . . . . . . . . 128
8.3.1 Modied integrators . . . . . . . . . . . . . . . . . . . . . 128
8.3.2 Dither techniques . . . . . . . . . . . . . . . . . . . . . . . 129
8.3.3 Compensation of nonlinearities . . . . . . . . . . . . . . . 131
8.4 Accuracy of the describing function method . . . . . . . . . . . . 132
8.5 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
5
Chapter 1
Introduction.
Example 1.1 Consider a very simplied model for velocity control of an air-
craft. If the velocity is x1 and the mass normalized to 1, then
x 1 = x2 f (x1 ) (1.1)
where x2 is the engine thrust and f (x1 ) is the aerodynamic drag. A simplied
engine model is just a time constant from pilot command u to engine thrust:
x 2 = x2 + u (1.2)
Together (1.1) and (1.2) form a model of the aircraft velocity control.
Example 1.2 Consider the heat exchanger described in gure 1.1. A uid
which initially has the temperature T0 ows with the ow rate q through the
heat exchanger, which is surrounded by a medium with temperature Th . It is
assumed that very good mixing takes place so that one can assume the same
temperature T at every point in the heat exchanger. If the heat capacity of the
uid is c per unit volume and C for the whole heat exchanger, and if the heat
transfer coecient of the walls is , then a heat balance gives
d
(CT ) = qcT0 qcT + (Th T )
dt
Assume that the ow rate is controlled around a nominal ow q0 so that
q = q0 u
c/C = 1, /C = 1, Th = q0 = T0 = 1
6
Th
q - T - q
T0
+ 2d/d
+ (g/d) sin = 0
x 1 = x2
(1.4)
x 2 = (2x2 d g sin x1 )/d
Example 1.4 Consider a rigid body rotating freely in space. Let xi be the
angular velocity along the i:th principal axis. Let the external torque be a
vector whose components along the principal axes are u1 , u2 and u3 . The
equations are then
x 1 = a1 x2 x3 + u1
x 2 = a2 x1 x3 + u2 (1.5)
x 3 = a3 x1 x2 + u3
where
I2 I3 I3 I1 I1 I2
a1 = , a2 = , a3 =
I1 I2 I3
with the Ii being the moments of inertia. Here there are three state variables
(x1 , x2 and x3 ) and three input variables (u1 , u2 and u3 ).
7
Example 1.5 Consider the following electrical circuit
g
I
C
e
The resistive element is assumed to have a voltage drop g(I) which is a possibly
nonlinear function of the current. If the voltage across the capacitor is v, the
system is described by the equations
C v = I
(1.6)
e = v + g(I)
8
which is also of the form (1.10).
Note that the system (1.3) is a very special case of the system description (1.10),
since f is linear and g is ane. Such a system is called bilinear. The general
form is
m
x = Ax + uj Dj x + Bu (1.13)
j=1
. . . , x(r) , u, u,
gi (x, x, . . . , u() ) = 0, i = 1, . . . , N (1.14)
as standard descriptions. The theory for such systems is however in the early
stages of development. Therefore we will concentrate on system descriptions of
the form (1.8), (1.9) and (1.10).
1.3 Exercises.
1.1 Show that the description (1.8) is no more general than (1.9) for linear
systems, i. e. show that there exists a transformation
z = Tx + Si u(i)
x = Ax + B0 u + B1 u + + Br u(r)
z = F z + Gu
9
Chapter 2
Nonlinear dierential
equations.
Initially only the local properties close to the starting point of (2.3) are investi-
gated. Consider therefore t- and x-values satisfying
t0 t t0 + a, |x x0 | b (2.5)
10
Assume that for all t and x satisfying (2.5) it is true that
Remark 2.1 Obviously (2.6) and (2.8) can always be satised if a is chosen
small enough, i.e. if the time interval is small enough.
Theorem 2.1 A dierential equation (2.3) which satises the conditions (2.5)
- (2.8) has a unique solution on the interval t0 t t0 + a.
x0 (t) = x0
a) We show that
|xn (t) x0 | b; t0 t t0 + a
Obviously this is true for n = 0. Suppose it is known for all integers up to n.
Then t
b t
|xn+1 (t) x0 | |f (, xn ( ))|d d b
t0 a t0
The result follows from induction.
11
Using this estimate repeatedly we get
If m > n then
xn (t) x(t), t0 t t0 + a,
It follows that t
xn (t) x0 + f , x( ) d
t0
d) Show that x is a unique solution. Suppose there are two solutions x and z.
Then using the same reasoning as in (2.10),
Since < 1, this implies that ||x z|| = 0 and consequently that x = z.
Remark 2.2 If f is continuous but does not satisfy the Lipschitz condition
(2.7), then one can still prove existence but the solution is not necessarily unique,
as shown by the dierential equation
d
x = x, x(0) = 0
dt
which has the solutions
t2
x = 0, x=
4
12
Remark 2.3 Theorem 2.1 guarantees only local existence, since the time in-
terval might have to be chosen small as explained in Remark 2.1. If a is too
large there might not exist a solution over the whole time interval as shown by
the dierential equation.
d
x = x2 , x(0) = 1
dt
The solution is
1
x=
1t
which only exists for t < 1.
Theorem 2.2 Let f (t, x) be continuous and satisfy (2.7) in the set
M = {(t, x) : t0 t t1 , |x| A}
Let the starting point satisfy |x0 | A. Then either there is a solution dened
on the whole time interval t0 t t1 or else there is a solution on t0 t
te , (te < t2 ), with |x(te )| = A . In other words the solution leaves the set M
at t = te .
13
for a positive constant C, then
t
m(t) C exp g( )d , 0tT (2.13)
0
Proof. Dene t
h(t) = C + g( )m( ) d
0
Dierentiating gives
h(t) = m(t)g(t) h(t)g(t)
showing that
h(t)
g(t)
h(t)
Integrating both sides then gives the desired result.
Theorem 2.3 Let the dierential equation (2.11) and the point x0 be given.
Asume that the conditions (2.6)-(2.8) are satised. Then there is a neighborhood
V of x0 and an > 0 such that for every y V there is a unique solution of
(2.11) on [0, ]. Furthermore
Proof. The rst part of the lemma follows directly from the proof of the
existence theorem. To show (2.14) dene
Then
t t
(t) = |z y + (f (F (s, z)) f (F (s, y)))ds| |z y| + (s)ds
0 0
(t) et |z y|
We can now go one step further and ask ourselves if the solution can be dif-
ferentiated with respect to the initial condition. The following notation will be
used. For a vector valued function f (x), fx (x) will denote the matrix whose
i, j-element is
fi
xj
14
For the function F (t, y)
Ft (t, y), Fy (t, y)
will denote the derivatives with respect to t and y respectively, the st being an
n- vector and the second an n by n matrix. Since F (t, y) is the solution of the
dierential equation, we have
Ft (t, y) = f (F (t, y))
Assuming that F is continuously dierentiable with respect to y, we get
Ft,y (t, y) = fx (F (t, y))Fy (t, y)
Since obviously
Fy (0, y) = I
we see that the derivative Fy if it exists must be a solution of the linear dier-
ential equation
t (t, y) = fx (F (t, y))(t, y) (2.15)
(0, y) = I
called the variational equation. In fact we have
Proof. Dene
(t, h) = F (t, y + h) F (t, y)
We have
t
(t, h) (t, h)h = (f (F (s, y + h)) f (F (s, y))) ds
0
t t
fx (F (s, y))(s, y)h ds = fx (F (s, y))((s, h) (s, y)h) ds+
0 0
t
+ ( f (F (s, y + h)) f (F (s, y)) fx (F (s, y))(s, h) ) ds
0
Take an arbitrary > 0. Sincef is dierentiable there exists a > 0 such that,
for |h| < , the last integral is bounded by
t
|F (s, y + h) F (s, y)|ds C|h|
0
15
2.3 Series expansions
Consider again the dierential equation
x(t)
= f (x(t)), x(0) = x0 (2.16)
x
(t) = fx (x(t))x(t)
= fx (x(t))f (x(t))
t2 (1) tk tk+1
x(t) = x0 + tf (x0 ) + f (x0 ) + + f (k1) (x0 ) + f (k) (x()) (2.19)
2 k! (k + 1)!
16
We get
x2
f (0) (x) = f (x) =
sin x1
0 1 x2 sin x1
f (1) (x) = =
cos x1 0 sin x1 x2 cos x1
(2) cos x1 0 x2 x2 cos x1
f (x) = =
x2 sin x1 cos x1 sin x1 x22 sin x1 + cos x1 sin x1
This gives
a (1) 0 (2) a
f (x0 ) = , f (x0 ) = , f (x0 ) =
0 a 0
in a neighborhood of t = 0.
x = x2 , x(0) = x0
2.4 Exercises.
2.1 Show that the Riccati equation
d
P = AP + P AT + Q P C T R1 CP, P (0) = P0
dt
has a solution on the time interval [0, ] if is small enough.
17
2.2 Consider the scalar Riccati equation
p = 1 + p2 , p(0) = 0
2.3 Use Theorem 2.2 to show that the scalar Riccati equation
18
Chapter 3
In linear system theory it is well known that controller design is particularly easy
when the system is described by a controller canonical form. It is then natural
to ask if a similar canonical form can be achieved for a nonlinear system. We
will approach this question by rst looking at the input-output properties. This
will lead to the denition of the relative degree of a nonlinear system.
19
Let us introduce the operators
n
n
Lf = fi , Lgk = gik (3.4)
i=1
xi i=1
xi
Before proceeding further let us consider some of the properties of the Lie deriva-
tive. As shown by (3.4) it is a rst order derivative operator. Applying one Lie
derivative to another gives an operator involving second order derivatives:
gj 2
Lf Lg = fi gj == fi + fi gj
i
xi j xj i,j
xi xj i,j
xi xj
The expression within parenthesis is called the Lie bracket of f and g and is
denoted [f, g]:
gj fj
[f, g] = gx f fx g = fi gi
i
xi xi
We have thus shown the following formula
Lf Lg Lg Lf = L[f,g] (3.6)
The j times repeated Lie bracket of this form is denoted (adj f, g), for instance:
After this parenthesis about Lie derivatives we go back to (3.5). If Lgk hi is not
identically zero, then obviously the control uk will directly inuence y i , at lest
for some x. Suppose Lgk hi = 0 for all k and all x. Then we have y i = Lf hi and
we can continue dierentiating.
m
yi = L2f hi + uk Lgk Lf hi
k=1
20
(i )
output, or else there is a smallest integer i such that yi depends directly on
some uk . In the latter case we have
Lgk Ljf hi 0, k = 1, . . . , m, j = 0, . . . , i 2
(3.7)
Lgk Lfi 1 hi 0, some k, 1 k m
Suppose that we have done the above procedure for all output signals and
obtained numbers 1 , . . . , m , satisfying (3.7). We can then write the input-
output relationship as
( )
y1 1
.
. = d(x) + R(x)u (3.8)
.
( )
ym m
where d and R are given by
Lf1 h(x) Lg1 Lf1 1 h1 ... Lgm Lf1 1 h1
.. .. ..
d(x) = . , R(x) = . . (3.9)
Lg1 Lfm 1 hm . . . Lgm Lfm 1 hm
m
Lf h(x)
From the denition of the i it follows that each row of R has at least one
element which is not identically zero. If R is nonsingular calculations become
especially simple as we shall see below.
Denition 3.1 We say that the system (3.1,3.2) has vector relative degree
(1 , . . . , m ) at x0 if (3.7) is satised and R(x0 ) is nonsingular
The main point in all the calculations we have made lies in the following fact.
Suppose the system has a relative degree. Then we can use the state feedback
u = R(x)1 (
u d(x)) (3.10)
where we regard u
as a new input signal. The resulting dynamics is
( )
y1 1
.
. =u
. (3.11)
( )
ym m
This is a decoupled linear relation from the new input to the output. Using
linear design techniques it is now possible to get any dynamics from input to
output. Our calculations can be summarized in the following theorem:
Example 3.1 Consider the rigid body of Example 1.4 with external moments
along only two of the principal axes. We consider these moments to be input
21
signals.
x 1 = a1 x2 x3 (3.12)
x 2 = a2 x1 x3 + u1 (3.13)
x 3 = a3 x1 x2 + u2 (3.14)
Assume that the outputs are the rst and second angular velocities:
y1 = x1 , y2 = x2 (3.15)
Since
Lg1 = , Lg2 =
x2 x3
Lf = a1 x2 x3 + a2 x1 x3 + a3 x1 x2
x1 x2 x3
we have
Lg1 h1 = Lg1 x1 = 0, Lg2 h1 = Lg2 x1 = 0
and
so that 2 = 1 and
a1 x3 a1 x2
R(x) =
1 0
If a1 = 0, i.e. if the moments of inertia around the second and third axes are
not equal, then we see that the system has vector relative degree (2, 1) if x2 = 0.
If on the other hand a1 = 0, then all time derivatives of y1 are zero, so there is
no relative degree.
A major problem with the input-output linearization comes from the fact that
the linear input-output relationship (3.11) might not show all the dynamics of
the closed loop system. This is the case if the order of the system (3.11), i.e.
1 + + m is less than n, the number of state variables. There must then be
some dynamics which is unobservable from the output. If this hidden dynamics
is unstable it will not be possible to use the input-output linearization. To
investigate this question it is necessary to transform the system into a canonical
form with all state variables present.
22
variables. Therefore we dene new variables in the following way.
( 2) (2 2) ( 2) T
= (y1 , y 1 , . . . , y1 1 , y2 , y 2 , . . . , y2 , . . . , ym , y m , . . . , ym m )
( 1) ( 1)
= (y1 1 , . . . , ym m )T
= q(x)
(3.16)
or equivalently
( 2) (m 2)
= (h1 , Lf h1 , . . . , Lf 1 h1 , . . . , hm , Lf hm , . . . , Lf hm )T
( 1) ( 1)
= (Lf 1 h1 , . . . , Lf m hm )T (3.17)
= q(x)
where q is some function which is unspecied so far. If the relation between
these variables and x is invertible, then the new variables can be used as state
variables. We then get an interesting canonical form for the system.
23
Proposition 3.1 If the system (3.1), (3.2) has relative degree (1 , . . . , m ) at
x0 , then the matrix S(x0 )T (x0 ) has rank 1 + + m (= number of rows).
The 2 2 block matrix to the lower left is exactly R(x0 ) and is therefore non-
singular. The two elements to the upper right constitute the rst row of R(x0 ),
so they can not both be zero. Consequently S(x0 )T (x0 ) has full rank. This
case (m = 2, 1 = 2, 2 = 1) can easily be extended to the general one. By
repeated use of (3.6) and possibly permutation of the columns, the matrix can
be brought into block triangular form, where the blocks on the diagonal consist
of rows of R(x0 ). The matrix must then have full rank.
1. 1 + + m n
2. S(x0 ) has linearly independent rows
3. there are at least 1 + + m independent columns in T (x0 )
Proof. From Proposition 3.1 and the properties of the matrix rank, it follows
that
24
Proof.(of Theorem 3.2) The Jacobian (at x0 ) of the coordinate change (3.17)
is (after some reordering of the rows)
S(x0 )
qx (x0 )
We know from Proposition 3.2 that S(x0 ) has linearly independent rows. Since
we are free to choose q, we can choose it so that the rows of qx are linearly
independent of those of S. The Jacobian is then nonsingular and it follows,
from the implicit function theorem, that the variable change (3.17) is invertible
close to x0 .
Noninteracting control
If the functions 1 and 2 in the control law (3.21) are chosen so that the i:th
component is of the form
(i 1)
(1 (, ))i = ai (yi , y i , . . . , yi )
(i 1)
(2 (, )v)i = bi (yi , y i , . . . , yi ) vi
then the relation between v and y breaks down into m relations of the form
(i ) (i 1) (i 1)
yi = ai (yi , y i , . . . , yi ) + bi (yi , y i , . . . , yi ) vi
We have then achieved noninteracting control. The i:th reference signal aects
only the i:th output.
Let the functions 1 and 2 in the control law (3.21) be chosen in the following
way.
+N
1 (, ) = M
2 (, ) = R
25
v - = - y
=
?
- =
= M + N
= M
+N + Rv
(3.23)
y = H
which is linear from v to y.
= M + N
= 1 (, ) + 2 (, )v
(3.24)
= 2 ((, , ) + 3 (, , )k(, , , v)
y = H
Graphically the situation described by (3.24) is shown in gure 3.1. We see that
the dynamics acts as a sink. It does not aect the output put is (possibly)
aected by v, and . This is something that we recognize from linear system
theory part of the dynamics is unobservable.
Let us consider the situation where v = 0, so that the desired output is y 0.
It is then natural to choose 1 so that
1 (0, 0) = 0
Suppose the system is initialized with
(i 1)
yi (0) = 0, y i (0) = 0, . . . , yi (0) = 0, i = 1, . . . , m
We will then have
0, 0
26
= 2 (0, 0, ) + 3 (0, 0, )k(0, 0, , 0) (3.25)
Denition 3.2 The dynamics described by (3.25) is called the zero dynamics
of the system.
1 = x1 , 1 = a1 x1 + x2 , = x3
1 = 1
1 = a1 1 a2 1 + 3 + b2 u
= a3 1 + b3 u
The zero dynamics corresponds to the control that keeps 1 and 1 identically
zero, i. e. u = 3 /b2 . The zero dynamics is then
b3
3 = 3
b2
The eigenvalue of the zero dynamics (b3 /b2 ) is thus equal to the zero of the
transfer function.
27
Example 3.3 Consider the system
x 1 = x22 + u
x 2 = u (3.26)
y = x1
This system already has the canonical form. To keep y identically zero, one has
to use the control law
u = x22
This example clearly shows that control of non minimum phase systems can be
tricky. A control that keeps the output identically zero is unacceptable since it
makes certain internal states (and the control signal) grow without bound.
The problems with the zero dynamics dissappear if the relative degree satises
1 + + m = n
In this case the vector has dimension zero, so there is no zero dynamics. Our
earlier example 3.1 is such a case.
1 = x1 , 1 = a1 x2 x3 , 2 = x2
1 = 1
a 2
1 = a2 1 121 + 1
2 u1 + a1 a3 1 22 + a1 2 u2
2
2 = a2 1 1
a1 2 + u1
The feedback
a2 1 1
u1 = + v2
a1 2
1 1
u2 = v2 a1 a3 1 22 + v1
a1 2 2
gives the decoupled closed loop dynamics
y1 = v1 , y 2 = v2
Further linear feedback can then give arbitrary closed loop poles. There is no
hidden dynamics.
28
3.4 Controller canonical form.
The last section showed us that there are great advantages with systems where
the relative degree satises
1 + + m = n (3.27)
Is it then possible to choose an output so that the relative degree satises (3.27)?
To answer that question we will specialize to the case m = 1, i.e. the single-
input-single-output case.
From (3.7) it follows that we require a function h(x) satisfying
Lg Ljf h 0, j = 0, . . . , n 2
(3.29)
Lg Ln1
f h 0
L[f,g] h = Lf Lg h Lg Lf h = 0
Lg h = 0, L[f,g] h = 0
They are satised if we can nd a family of surfaces of the form h(x) = c such
that g and [f, g] are tangent to the surfaces at every point, see gure 3.2. It
turns out that this construction can only be carried out if the vectors satisfy
certain conditions. To discuss this we need the following denition.
p
[fi , fj ](x) = k (x)fk (x), i, j = 1, . . . , p
k=1
29
[f, g]
h(x) = c
x = f (x), x(0) = x0
x = g(x), x(0) = xa
x = f (x), x(0) = xb
x = g(x), x(0) = xc
f
xc xb
xd f
xa
x0
30
Proof. A Taylor expansion gives
h2
xa = x0 + hx(0)
+ (0) + O(h3 )
x
2
Since x = f and x
= fx x = fx f this can be written
h2
xa = x0 + hf (x0 ) + fx (x0 )f (x0 ) + O(h3 )
2
Analogous calculations give
h2
xb = xa + hg(xa ) + gx (xa )g(xa ) + O(h3 )
2
h2
xc = xb hf (xb ) + fx (xb )f (xb ) + O(h3 )
2
h2
xd = xc hg(xc ) + gx (xc )g(xc ) + O(h3 )
2
The right hand sides of these expressions can be evaluated at x0 . For instance
g(xa ) = g(x0 ) + gx (x0 )(xa x0 ) + O(h2 ) = g(x0 ) + hgx (x0 )f (x0 ) + O(h2 )
h2
xa = x0 + hf + fx f + O(h3 )
2
h2
xb = xa + hg + h2 gx f + gx g + O(h3 )
2
h2
xc = xb hf h2 fx (f + g) + fx f + O(h3 )
2
h2
xd = xc hg h gx (f + g f ) + gx g + O(h3 )
2
2
where the right hand side is evaluated at x0 . Substituting each equation into
the one below nally gives
This result has immediate consequences for the construction of Figure 3.2. Con-
sider the construction of Proposition 3.3 but with f and g replaced by g and
[f, g]. If g and [f, g] are both tangent to h(x) = c at every point, then all so-
lutions to x = g and x = [f, g] lie in h(x) = c. From Proposition 3.3 the Lie
bracket [g, [f, g]] must then be tangent to h(x) = c. It will then be a linear com-
bination of g and [f, g] (with x-dependent coecients). The geometric picture
of Figure 3.2 thus implies that g and [f, g] are involutive.
Theorem 3.3 The system (3.30) with the condition (3.31) has a solution in a
neighborhood of a point x0 if and only if
31
1. the vectors
(adk f, g)(x0 ), k = 0, . . . , n 1 (3.32)
are linearly independent
2. the vector elds
(adk f, g), k = 0, . . . , n 2 (3.33)
are involutive in a neighborhood of x0 .
Proof. (sketch) First we note that the necessity of condition 1 follows from the
third statement of Proposition 3.2.
For the other part of the theorem it is helpful to consider again the geometric
interpretation of gure 3.2. In the illustrated three-dimensional case g and [f, g]
have to be tangent to h(x) = c. For a general n the surface h(x) = c has to be
tangent to g, [f, g],...,(adn2 f, g) at all points.
Now consider what happens if a curve is generated which is tangent to g, then to
[f, g], then to g and nally to [f, g]. Since all these vector elds are tangent
to the surface h(x) = c, the curve will remain in the surface if it starts there.
On the other hand it follows from Proposition 3.3 that the resulting movement
will be in the direction [g, [f, g]]. Consequently [g, [f, g]] also has to be tangent
to h(x) = c. This argument can be extended to show that all brackets formed
among g, [f, g],...,(adn2 f, g) have to be tangent, showing that these vector
elds have to be involutive. We have thus sketched the necessity part of the
theorem.
That our conditions are also sucient follows from a celebrated theorem by
Frobenius, forming one of the cornerstones of dierential geometry.
After calculation of the function h we can introduce new state variables accord-
ing to (3.17). In this special case we get
zk = Lk1f h (x), k = 1, . . . , n (3.34)
32
g
[f, g]
h(x) = c
g
0
Take an arbitrary vector eld g(x) which is linearly independent of the vectors
in (3.33) . Let the solution of x = g(x) with initial value x0 be denoted 1 (t, x0 ).
Also let
2 (t, x0 ), . . . , n (t, x0 )
denote the solutions of
t1 = h(x)
x 1 = x2 + x2 u
x 2 = x2 + u
33
The vectors of (3.32) are then
x2 x2 1
g= [f, g] =
1 1
z1 = x1 x22 /2
z2 = x2 + x22
or equivalently
x1 = 1/4 + z1 + z2 /2 z2 + 1/4 2
x2 = 1/2 + z2 + 1/4
z1 = z2
z2 = 1/2 2z2 + z2 + 1/4 + 2 z2 + 1/4 u
Theorem 3.4 Suppose the system (3.28) with a scalar input satises the con-
ditions of Theorem 3.3. Then there exists a nonlinear transformation
z = T (x)
z = Az + Bv
34
Proof. First transform the system to controller canonical form (3.35) as de-
scribed in the previous section. Then apply the nonlinear feedback
1
u= ((x) + v)
(x)
(The resulting system has only pure integrators. This is sometimes called the
Bronowsky canonical form. Of course it is possible to get any pole placement
by adding suitable terms.)
Theorem 3.5 Assume that g(x0 ) has rank m. For the system (3.37) it is
possible to introduce an output y = h(x) so that the relative degree satises
1 + + m = n in a neighborhood of x0 if and only if
Example 3.6 Consider the control of a missile, gure 3.5. The components
of the velocity along the x-, y- and z-axes are u, v and w respectively. The
angular velocities are p, q and r. The forward velocity usually changes fairly
slowly and is therefore assumed to be constant. The force equations along the
y- and z-axes then give
Fy = m (v + ru pw gy ) (3.38)
Fz = m (w qu + pv gz ) (3.39)
where gy and gz are the gravitational components and Fy , Fz the aerodynamic
force components. The rigid body rotational equations are
Mx = Ixx p (3.40)
My = Iyy q (Izz Ixx )rp (3.41)
Mz = Izz r (Ixx Iyy )pq (3.42)
35
x
y
z
where Mx , My and Mz are the aerodynamic torques and Ixx , Iyy and Izz the
moments of inertia. Introducing the state variables
x 1 = x4 x3 x2 + Cz (3.44)
x 2 = x5 + x3 x1 + Cy (3.45)
x 3 = C (3.46)
x 4 = Iq x3 x5 + Cm (3.47)
x 5 = Iq x3 x4 + Cn (3.48)
where
Fy Fz
CY = , CZ =
mu mu
Mx My Mz I Ixx
C = , Cm = , Cn = , Iq =
Ixx Iyy Izz I
Introduce
T
C = CZ , CY , C , Cm .Cn
The elements of C depend on the state variables and control signals. We assume
that the missile is controlled by the three control signals
u 1 = e , u 2 = r , u 3 = a
C = F (x) + g(x)u
36
Here F and g depend mainly on x1 and x2 , while the dependence on the angular
velocities x3 , x4 , x5 is much weaker. A typical structure for g is
g11 (x) 0 0
0 g22 (x) 0
g(x) =
0 0 g
33 (x) (3.49)
g41 (x) 0 0
0 g52 (x) 0
with g11 much smaller than g41 and g22 much smaller than g52 . The model of
the missile has the form
x = f (x) + g(x)u
with f given by
x4 x3 x2 + F1 (x)
x5 + x3 x1 + F2 (x)
f (x) =
F3 (x)
(3.50)
Iq x3 x5 + F4 (x)
Iq x3 x4 + F5 (x)
The simplest situation is when g(x) is actually constant. Then the transforma-
tion
z1 = x1 1 x4 (3.51)
z2 = x2 2 x5 (3.52)
z3 = x3 (3.53)
z4 = f1 (x) 1 f4 (x) (3.54)
z5 = f2 (x) 2 f5 (x) (3.55)
z1 = z4 (3.56)
z2 = z5 (3.57)
z3 = f3 (x) + g33 u3 (3.58)
z4 = (f1 (x) 1 f4 (x))x (f (x) + gu) (3.59)
z5 = (f2 (x) 2 f5 (x))x (f (x) + gu) (3.60)
With z1 , z2 and z3 regarded as outputs, this system has relative degree (2, 2, 1)
and feedback linearization is possible. If g depends on x the situation is more
complicated. It is then necessary that g1 , g2 and g3 depend on x in such a way
that they are involutive.
3.7 Exercises.
3.1 Suppose the system of Exercise 3.5 has the output
y = 1 + x2
37
3.2 Consider the bilinear system
x 1 = x1 + u
x 2 = 2x2 + x1 u
y = x1 + x2
x 1 = x21 + x2
x 2 = x2 + u
into controller form. Compute a state feedback which gives linear dynamics
with poles in -1 and -2.
into controller form. Compute a state feedback giving linear dynamics with
poles in -2 and -3.
x 1 = sin x2
x 2 = sin x3
x 3 = u
to controller form. In what region of the state space is the transformation well
dened ?
38
Chapter 4
Nonlinear observers
The use of exact feedback linearization described in the previous chapter requires
state feedback. This is also true of many other techniques that we will consider
in the coming chapters. Since all state variables are seldom measured, there is
a need to reconstruct the state from some measured output y. A device which
does this is called an observer. We will assume that the system has the form
x = Ax + Bu, y = Cx
= A
x x + Bu + K (y C x
) (4.2)
=xx
The observer error x satises
= (A KC)
x x (4.3)
and for an observable pair A, C the observer gain K can be chosen to give
A KC arbitrary eigenvalues.
A natural generalization of this observer to the nonlinear case (4.1) is to use
= f (
x x)(y h(
x, u) + K( x)) (4.4)
There are many strategies for choosing the gain K. Let the system (4.1) have
an equilibrium at the origin:
39
with linearization
A = fx (0, 0), C = h(0) (4.6)
where the pair A, C is detectable. Then K can be chosen so that A K(0)C
has eigenvalues in the left half plane, guaranteeing an observer which converges
in a neighborhood of the origin.
A popular approach is the extended Kalman lter. Here the system (4.1) is
linearized around x
at each instance of time and K is chosen from a Kalman
lter design based on that linearization. The extended Kalman lter works
well in many applications, but there are few hard results on convergence and
performance.
If p = n, i.e. the number of outputs equals the number of states, then one can
construct a static observer by solving the nonlinear system of equations
h(x) = y (4.8)
x = (y), xo = (yo )
From the implicit function theorem it follows that (4.8) can be solved at least
locally if the Jacobian hx is nonsingular.
Now consider the case of (4.7) under the more realistic assumption that p < n.
One can then get a system of equations with as many equations as unknowns
by considering also derivatives
(i 1)
y i = Lf hi (x), yi = L2f hi (x), . . . , yi = Lf i 1 hi (x)
40
Suppose we can nd integers 1 ,...,p , 1 + 2 + + p = n such that the row
vectors
are linearly independent for some xo . Then by the implicit function theorem we
can solve the corresponding system of equations
y 1 = h1 , y 1 = Lf h1 , . . . y (1 1) = Lf 1 1 h1
....
.. (4.10)
1
y p = hp , y p = Lf hp , . . . y (p 1) = Lf p hp
in a neighborhood of that xo . Often there are many ways of choosing the num-
bers 1 ,..,p that satisfy the linear independence requirements. However, one
usually wants to dierentiate physical signals as few times as possible. There-
fore it is natural to make the choice so that the highest i becomes as small as
possible. If this leaves some freedom of choice the second highest i should be
as small as possible, and so on. If the choice is made in this way, the numbers
1 .,,p are called the observability indices of the system.
We assume that every index satises i 1, that is we assume that every output
signal is used (otherwise we could delete one signal and regard the system as
one with fewer outputs). By reordering the output variables we can always get
the indices in decreasing order:
1 2 p 1 (4.11)
The indices i give the lengths of the rows in the array (4.10). The same
information is given by instead listing the lengths of the columns. We dene
Since we assume that all outputs are used, we have 0 = p. If the i are ordered
in decreasing order we have
p = 0 1 1 1 > 0 (4.13)
y1 , y 1 , . . . y (1 1)
.. ..
. .
yp , y p , . . . y (p 1)
41
This can for instance be done using dierentiating lters of the form
s
1 + sT
where the lter time constant T has to be chosen as a compromise between
the desire to get an accurate derivative and the need to lter out high fre-
quency disturbances. Often the output is measured at discrete points of
time and then the problem of approximating the derivatives can be ap-
proached through numerical dierentiation, based on dierence schemes.
the situation becomes more complex, since the possibility of calculating x from
u and y will in general depend on the choice of input. Take for example the
system
x 1 = x2 u
x 2 = 0
y = x1
x1 = y, x2 = y/u
or in vector notation
h(x)
(Lf h)(x)
z= .. = (x) (4.16)
.
(Ln1
f h)(x)
Proposition 4.1 If the Jacobian x (xo ) is nonsigular then the variable change
(4.16) is invertible in a neighborhood of xo .
42
Proof. Follows directly from the implicit function theorem.
(n1)
Proposition 4.2 If u = 0 then z in (4.17) can be computed from y, y,..,y
.
z1 = y, . . . zn = y (n1)
z2 = y,
If (4.17) has a special structure then it is possible to compute z for any choice
of u (provided u is known).
Since each zj only depends on the variables with lower indices, the zj can be
calculated recursively, starting with z1 = y.
43
4.3 High gain observers
In the previous section z was computed using derivatives of y and u (or their
approximations). With the structure (4.18) there is also a possibility of using
the observer structure (4.4) to avoid explicit calculations of derivatives. If we
introduce the matrices
0 1 0 ... 0
0 0 1 0 0
..
.. .
. . 0 , B =
A= . . , C = 1 0 . . . 0 (4.19)
. 0
.. 1 1
0 0 0 ... 0
z = A
z + B( z )u + K(y C z)
z ) + g( (4.21)
z = (A KC)
z + B((z) (
z )) + (g(z) g(
z )) u (4.22)
z = (A KC)
z + B
We see that the observer can be regarded as a linear system with the contribution
from the nonlinearity as an external signal. The transfer function from to z
is given by
1
k1 + s
1
(sI A + KC)1 B = n .
s + k1 sn1 + + kn ..
sn1 + k1 sn2 + + kn1
(4.24)
Now suppose K is chosen in the following way
44
where 1 ,..,n are chosen such that
sn + 1 sn1 + + n = 0
has roots strictly in the left half plane. Using these relations in (4.24) gives the
following tranfer function from to z.
(sI A + KC)1 B =
n
n1
(1 + (s))
1
.. (4.25)
(s) + 1 (s)n1 + + n
n .
((s)n1 + 1 (s)n2 + + n1 )
Since all the transfer functions go to zero as tends to zero the inuence of
the nonlinear terms on the estimation error becomes negligible. Intuitively this
observer should therefore work well for small irrespective of the form of the
nonlinearity. To get precise results we need tools from stability theory that will
be presented in the following chapters. We will then return to the question of
stability of the high gain observer.
There are some obvious disadvantages of the high gain observer:
45
into the form
= f(),
y = h() (4.30)
f() = A + b(y), h() = C (4.31)
h1,x
..
.
h0 ,x
(Lf h1 )x
..
.
Q= (4.32)
(Lf h1 )
..
.
(L h1 )x
f
.
.
.
(Lf h1 )x
If the linear terms depending on 1 = y are included in b(y) the system (4.30)
then takes the form
1 = b1 (1 ) + 2
2 = b2 (1 ) + 3
.. (4.33)
.
n = bn (1 )
y = 1
46
In the multi-output case an observable pair A, C can be transformed into
E1 0
0 E2
..
A= . , C = C1 0 0 (4.34)
0 E1
0
where the block in position i, j has dimensions i1 j1 . Ei consists of the
rst i1 rows and the rst i columns of an identity matrix, C1 is an inverible
matrix. The blocks marked depend only on the rst 0 states, i.e. on y. If
they are included in b(y), then the linear part is described by
0 E1 0
0 0 E2
..
A= . , C = C1 0 0 (4.35)
0 E1
0 0
If C1 = I the canonical form is called (dual) Brunovsky form. We will see below
that this case gives (fairly) simple calculations. Unfortunately some systems
can only be transformed into (4.30) by choosing a C1 dierent from the identity
matrix.
Now consider the properties of the transformation x = X(). Dene the Jaco-
bian
J() = X () (4.36)
Since we also have x = f (x), we have the following relation between the right
hand sides of the equations
Now suppose we have a dierent pair of vector elds that are transformed in
the same way:
g(X()) = J() g () (4.39)
47
Proposition 4.4 Let the vector elds f , g be transformed as in (4.38), (4.39).
Then their Lie Brackets are related as
Here the Lie bracket in the left hand side is evaluated using dierentiation with
respect to x, while the bracket in the right hand side uses dierentiation with
respect to .
Proof. Exercise.
y = h(x),
y = h() = C
48
Evaluating the right hand side nally gives
hx C1 0 0 ... 0
(Lf h)x C1 E1 0 . . . 0
.. J = .. . (4.46)
. . . .
1
(Lf h)x ... C1 E1 E1
where the elements marked * depend on b. From (4.46) and (4.45) it is possible
to calculate the desired coordinate change if it exists. First we take a look at
the single variable case.
For p = 1 we can pick out the last column of equation (4.46) to get
hx 0
(Lf h)x ..
.. Jn = . (4.47)
. 0
(L1
f h)x 1
For the single output case the matrix to the left is just Q, which we assumed
to be nonsingular. This equation can therefore be solved to give Jn . The other
columns of J can then be calculated successively from (4.45) which for the single
output case becomes
Theorem 4.2 The problem of transforming (4.29) into (4.30) can be solved for
the scalar output case if and only if
Proof. Our calculations above have shown that the conditions 1. and 2. are
necessary. The suciency follows as a special case of the multivariable case
discussed below.
49
Example 4.1 Consider the system
x 1 = x2
x 2 = x1 x2
y = x1
giving
1 0 1 1 0
J= , J =
x1 1 x1 1
The rst part of the coordinate change is already given by y = x1 = 1 . The
second part has to satisfy
2
= x1
x1
2
=1
x2
1 = x1
x21
2 = + x2
2
The system description in the new coordinates becomes
2
1 = 1 + 2
2
2 = 0
y = 1
x 1 = x2
x 2 = x21 + x22
y = x1
50
Performing calculations similar to those of the previous example we get
1 0 1 1 0
J= , J =
2x2 1 2x2 1
The second -coordinate then has to satisfy
2
= 2x2
x1
2
=1
x2
Proof. We give only the necessary part of the proof. We have Yx (x)J(x) = I.
It follows that Yx Jk = ek , where ek the k:th column of the identity matrix.
From Proposition 4.4 we get Yx [Ji , Jk ] = [ei , ek ] = 0 implying [Ji , Jk ] = 0.
Since Jn1 = (ad1 f, Jn ), Jn2 = (ad2 f, Jn ) etc., the result follows.
For multivariable systems we rst consider the case where the transformation
can actually be made to dual Brunovsky canonical form so that C1 = I. Equa-
tion (4.46) then takes the form
hx I 0 0 ... 0
(Lf h)x E 1 0 . . . 0
.. J = .. .. (4.52)
. . .
(L1 h)x
f ... 1
E
51
where E i is a p i matrix whose rst i rows form a unit matrix. If we look
at the rows corresponding to Ljf h we have the equation
(Ljf ht j)x I
j Jj = (4.53)
(Lf hbj )x 0
where htj contains the rst j rows of h and hbj the remaining ones. From the
denition of the observability indices it follows that (Ljf hbj )x must be linearly
dependent on the elements above it in the matrix forming the left hand side of
(4.52) (otherwise it would be possible to lower one of the i ). However, from
(4.53) it follows that (Ljf hbj )x can not be linearly dependent on (Ljf htj )x . We
then have
(LJf hbj )x span{hx , . . . , (Lj1
f h)x } (4.54)
One can also show the reverse: when this criterion is satised and it is possible
to achieve the condensed Brunovsky form, then it is actually possible to achieve
C1 = I, that is the dual Brunovsky form. Assuming (4.54) to be true we can
proceed with the solution of (4.52). Introduce
0
hx ..
.. =
Qj = . ,
E j . (4.55)
j1
0
(Lf h)x
Ej1
Q J = E (4.56)
Q J = E, Jj Ej = [f, Jj+1 ], j = 1, . . . , 1 (4.57)
j j j
Lemma 4.1 (Rao and Mitra, 1971) The individually consistent matrix equa-
tions DY = E and Y F = H have a common solution if and only if EF = DH.
The general solution is then
Lemma 4.2 Assume rank Q = n. The set of equations (4.56), (4.57) are
solvable if (4.54) is satised and the solution is given by
J = Q
E, Jj = [f, Jj+1 ]EjT + Q j Ej EjT )
j E(I
+ (I Q
j Qj )Zj (I Ei Ei ) (4.59)
T
52
Proof. Some Lie derivative calculations show that the condition EF = DH
of Lemma 4.1 is satised by (4.57). The formula (4.59) for the solution then
follows from that lemma on noting that Ej = (EjT Ej )1 EjT = EjT .
For a system in the form (4.35) it is possible to get the dual Brunovsky form
by introducing a transformed output y = C11 y. Of course C1 is not known
before the transformation x = X() has been computed. It is however possible
to deduce C1 from the condition that the transformed output equation
y = C11 y = C11 h(x)
should satisfy (4.54). If for instance
(Ljf hbj )x = M (Ljf htj )x + span{hx , . . . , (Lj1
f h)x}
then
I 0
C11 = (4.60)
M I
removes the dependence on (Ljf htj )x . Working through j = 1, . . . , one can
try to satisfy (4.54) by forming C1 as a product of matrices of the form (4.60).
It turns out that this is possible precisely when
(Ljf hbj )x spanR (Ljf htj )x + span{hx , . . . , (Lj1
f h)x}, j = 0, . . . , 1 (4.61)
where span denotes linear combinations with coecients that are functions of
x and spanR denotes linear combinations with constant coecients. We have
then nally arrived at the general result.
Theorem 4.3 The problem of transforming (4.29) into (4.30) is solvable if and
only if
(a) There exist observability indices satisfying (4.11) with 1 + + p = n such
that Q has rank n.
(b) (4.61) is satised.
(c) The matrix J computed from Lemma 4.2 is integrable.
53
extended to include general transformations of the outputs of the form y = ( y ).
This gives us additional degrees of freedom and should make it possible to satisfy
the very restrictive integrability conditions of Theorem 4.3 more often. Com-
puting the conditions that should satsfy turns out to be very cumbersome.
To simplify matters somewhat we make an initial state space transformation of
the system. Assuming the matrix Q to be nonsingular, we can introduce the
new variables
(1 1)
z11 = y1 , z12 = y 1 , . . . , z1,1 = y1
.. (4.62)
.
zp1 = yp , zp2 = y p , . . . , zp,p = yp(p 1)
and get a locally invertible coordinate change. In these coordinates the state
variable description becomes
y1 = z11 , . . . , yp = zp1
z11 = z12 , . . . , zp1 = zp2
.. ..
. . (4.63)
z11 = f1 (z) zpp = fp (z)
where fi = Lf i hi .
This form is sometimes referred to as observable form or
observability form. Let be the Jacobian of and dene
yi
ij = (4.64)
yj
The fundamental result is then
Proof. We consider only the very special case p = 1, n = 2. The general case
involves similar but messier calculations. Comparing
z1 = z2
z2 = f (z1 , z2 )
y = z1
with
1 = b1 (1 ) + 2
2 = b2 (1 )
y = 1
54
shows that
z2 = y = y = (b1 (1 ) + 2 ) (4.67)
Dierentiating this expression with respect to time gives
d
f (z1 , z2 ) = 1 (1 ) + 2 ) + b1 (1 )(b1 (1 ) + 2 ) + b2 (1 )
y(b
dy
d 1 2
f (z1 , z2 ) = z2 + b1 (1 )1 z2 + b2 (1 )
dy
The key observation is now that, since there is a direct relationship between y
and y, 1 depends only on z1 and not on z2 . Dierentiating twice with respect
to z2 then gives
2 f (z1 , z2 ) d 1
=2
z22 dy
which is (4.66) for the case n = 2, p = 1.
Example 4.3 Consider a vehicle that is accelerated with a unit force and has
an aerodynamic drag proportional to the square of the velocity. If x is the
position and v is the velocity the system description is
x = v
v = 1 v2
y = x
d
=
d
showing that
y = e
We now have the task of transforming the system
x = v
v = 1 v2
y = ex
hx = ex (1 0)
(Lf h)x = ex (v 1)
55
we have
0
J2 = ex
1
Then
1
[f, J2 ] = ex
v
and [g, [f, g]] = 0 showing that (4.50) is satised. From (4.66) the coordinate
change is
1 x 1 0
J =e
v 1
We already knew from the relation between the outputs that
z1 = ex
which is the rst row of the above realtion. The second row gives
2
= vex
x
2
= ex
v
with the solution 2 = vex . The coordinate change is thus given by
1 = ex x = ln 1
2 = vex v = 2 /1
1 = 2
2 = 1
y = 1
x = f (x, u)
(4.68)
y = h(x)
Then we can pick a constant control signal u0 and compute the variable trans-
formations for the system
x = f (x, u0 )
(4.69)
y = h(x)
56
using the technique of the previous section (if possible). The resulting transfor-
mation can then be applied to the system (4.68) to give
= b(C) + A + (, u)
(4.70)
y = C
(, u) = (C, u) (4.71)
Example 4.4 Suppose that we add the control signal in Example 4.3 to get
x = v
v = 1 v 2 + u
y = x
xi1 = ex x = ln 1
2 = vex v = 2 /z1
1 = 2
2 = 1 + 1 u
= f (
x x, u) + K(y h(
x)) (4.75)
57
It would be nice if a good design of the state feedback system (4.74) and a
good design of the observer (4.75) would automatically give a good closed loop
design (4.76). For linear systems there are such results, often called separation
theorems, but for nonlinear systems it has turned out to be very dicult to
get such results that are practically useful. This means that it is necessary to
analyze (4.76) directly. One possibility is to use Lyapunov theory which will be
dealt with in the next chapters.
4.8 Exercises.
4.1 Consider the following variant of the aircraft speed dynamics (Example
1.1). Let v be the deviation from the speed of lowest drag and let T be the
thrust of the jet engine. If the control signal u is the desired thrust, then the
following equations hold under certain operating conditions.
T = T + u
v = v 2 + T
y = v
x 1 = x2
x 2 = x2 x3
x 3 = x2
y1 = x1
y2 = x3
4.3 A ship that moves with a constant speed in a straight line is observed with
a radar that measures distance only. Let px and py be the position of the ship
in rectangular coordinates, v its speed through water, and its heading angle.
If y is the radar measurement, the dynamical equations are
p x = v cos
p y = v sin
v = 0
= 0
y = p2x + p2y
58
4.4 The roll dynamics of a certain missile is described by
=
= sin 4 + d
d = d + u
where is the roll angle, the angular velocity, d the aileron angle and u the
control input. The sin-term is caused by aerodynamic vortices. The roll angle
is observed.
a. Construct an observer based on dierentiation. b. Construct an observer
with linear error dynamics (if possible).
x = f (x) + g(x)u
y = h(z)
= b(C) + A + ()u
y = C
59
Chapter 5
x = f (x) (5.1)
60
Proposition 5.1 If V is a Lyapunov function on G , then for t 0 and as long
as a trajectory remains in G, one has
Proof.
t t
d
V ((t, x)) V (x) = V ((, x))d = Vx ((, x))f ((, x))d 0
0 d 0
What one tries to do is to nd a Lyapunov function such that for some d > 0
the set Bd lies in G. If this is possible one knows immediately that solutions
starting in Bd never leave it.
Proposition 5.2 If V is a Lyapunov function on G and for some d > 0 the set
Bd lies in G, then for all x Bd one has (t, x) Bd , for all t > 0.
With good luck one might nd that Bd is bounded. Then the following stability
result follows.
Proposition 5.3 Let the conditions of Proposition 5.2 hold and assume that
Bd is bounded. Then all solutions of (5.1) starting in Bd exist for all t and are
bounded.
One way of ensuring that the sets Bd are bounded is to use a function V which
is radially unbounded i.e. satises
V (x) as |x|
If it is possible to use Proposition 5.3 to show that solutions are bounded, then
the next step is to nd out where they go as t goes to innity. This is formalized
by the concept of a limit set
Denition 5.2 Let the conditions of Proposition 5.2 hold and let x be a point
in Bd . A point y in Bd belongs to the limit set (x) if there is a sequence {ti }
such that ti and (ti , x) y. In other words, solutions starting at x come
arbitrarily close to the set (x).
61
Theorem 5.1 ( Lyapunov, LaSalle ) Let the assumptions of Proposition 5.3
be satised and dene
E = {x Bd : Vx (x)f (x) = 0}
Let M be the largest set in E with the property that solutions of (5.1) starting
in M remain in M for all t > 0. (Such a set is called an invariant set ). Then
for each x Bd there exists a c such that (x) M V 1 (c).
it follows that (t, y) (x0 ) for all t > 0. Then c = V ((t, y)) so that
d
0= V ((t, y)) = Vx ((t, y))f ((t, y))
dt
which shows that (x0 ) M .
The following example shows the kind of situation that can occur.
Corollary 5.1 Assume that the conditions of Theorem 5.1 are satised and
that M consists of a single point {xm }. Then all solutions starting in Bd con-
verge to xm , which is necessarily a singular point of (5.1).
Proof. Since (x0 ) {xm } ,it follows that all solutions converge to xm . Since
solutions starting in {xm } remain in {xm }, it follows that f (xm ) = 0.
62
Example 5.2 Consider the system
x 1 = x2
(5.5)
x 2 = x1 x32
and the function V = x21 + x22 . Dierentiation gives Vx f = 2x42 0 so V is
a Lyapunov function where E is the x1 -axis . Since a solution remaining in E
must satisfy x2 0, it follows that also x1 = 0, so M = {(0, 0)}. Since Bd
is bounded no matter how large d is, all solutions of the dierential equation
approach the origin.
63
Here V is a continuously dierentiable function, and the Wi are continuous
positive denite functions. Then x = 0 is uniformly asymptotically stable.
Proof. Let the set where the conditions of the theorem hold be . Dene
r = {x : |x| r} and take an r such that r . Take a such that
< min W1 (x)
|x|=r
V = {x r : V (t, x) }, i = {x r : Wi (, x) }, i = 1, 2
Note that V is time dependent. From the construction it follows that
2 V 1 r
Now assume x(to ) 2 . Then x(to ) V and consequently V (to , x(to )) .
Since V has a negative derivative, it is decreasing and consequently V (t, x(t))
holds for all t. It follows that x(t) 1 r for all t to . Since this holds
for arbitrarily (small enough) r > 0, uniform stability is clear. To show that
solutions actually converge to the origin, we use the fact that any continuous
positive denite function W (x) can be bounded from below and above as
where the i are strictly increasing functions with i (0) = 0. We now get
V 3 (|x|) 3 (1
2 (V ))
Corollary 5.2 Let the assumptions of Theorem 5.2 be satised for all x and
assume that W1 is radially unbounded. Then x = 0 is globally uniformly asymp-
totically stable.
64
which proves that solutions of (5.1) converge to xm . To get an idea of the prob-
lems involved, it is instructive to investigate how this might be done for linear
systems. To simplify the notation we assume that xm is the origin. Consider
the n-th order linear system
x = Ax (5.9)
where A has all its eigenvalues strictly in the left half plane and try to nd a pos-
itive denite Lyapunov function, which is a degree m homogeneous polynomial
in x. We can then write it in the form
V (x) = vi xk1i1 xk2i2 xknin (5.10)
where the sum is taken over all kij such that ki1 + ki2 + + kin = m. Now let
W (x) be a given positive denite homogeneous polynomial of degree m. Then
it is natural to try to solve
If (5.11) is solved, then the conditions of Corollary 5.1 are automatically satised
with xm = 0 and Bd can be made as large as desired.
Theorem 5.3 ( Lyapunov ) If A has all its eigenvalues strictly in the left half
plane, then (5.11) can always be solved with respect to V .
Remark 5.1 When V and W are quadratic they are usually written in the
form
V (x) = xT Sx, W (x) = xT Qx
and equation (5.11) takes the form
AT S + SA = Q
4v1 x41 + (4v1 5v2 )x31 x2 + 3(v2 2v3 )x21 x22 + (2v3 7v4 )x1 x32 + (v4 8v5 )x42
65
An identication of coecients gives
x = f (x)
Here the linear part, f (1) (x) can be written in the more familiar form
Theorem 5.4 If f and W are given real analytic functions and if A of (5.14) has
all its eigenvalues strictly in the left half plane, then it is possible to nd a real
analytic function V which solves (5.12). The coecients of a series expansion
for V can be computed from (5.13).
Proof. Since A has all its eigenvalues strictly in the left half plane, we can use
Theorem 5.3, which tells us that any equation in (5.13) can be solved ( if its
right hand side is known ). One can then solve the rst equation of (5.13) to get
V (2) . Substituting V (2) into the right hand side of the second equation, one can
solve for V (3) . If V (2) and V (3) are substituted into the third equation, V (4) can
be computed, and so on. The resulting series can be shown to be convergent in
some neighborhood of the origin, so that V is well dened there.
66
5.4 Lyapunov functions and frequency domain
criteria.
A very common structure for nonlinear systems is the one given in Figure 5.1.
The system can be separated into a linear block with transfer function G(s) and
u y
G(s)
Figure 5.1: Nonlinear system separated into a linear and a nonlinear part.
u = f (t, y) (5.15)
Lures work was inspired by applications where the nonlinearity was not pre-
cisely known, so he only assumed that it satised certain inequalities. We will
assume that the inequality is of the form
V (x) = xT P x (5.18)
Subtracting the negative quantity given by the left hand side of (5.17) we get
67
f ((t, y)
Ky
AT P + P A = LT L P (5.22)
P B = C T K 2LT (5.23)
Then we get
V xT P x ( 2f Lx)T ( 2f Lx) (5.24)
which is negative denite and we can use Theorem 5.2 to prove stability. The
solvability of (5.22),(5.23) is characterized by a classical result.
AT P + P A = LT L P
P B = C T LT W
W T W = D + DT
can be solved for L, W , P > 0, > 0 if and only if the transfer function
C(sI A)1 B + D
68
any pure imaginary pole is a simple pole with positive semidenite residue
matrix,
G(s) is called strictly positive real if G(s ) is positive real for some > 0.
It follows that an input-output stable SISO system is positive real when its
Nyquist curve lies in the closed right half plane.
We are now ready to state the basic stability result.
Theorem 5.5 Let the system (5.16) have all its poles strictly in the left half
plane and let the nonlinear feedback (5.15) satisfy the inequality (5.17). Then
the closed loop system is globally asymptotically stable if I + KG(s) is strictly
positive real.
The theorem can be reformulated using a standard trick called pole shifting, see
Figure 5.3. Adding and subtracting the linear block K1 does not alter the loop.
+
G(s)
-
K1
K1
+
f
f(t, y) = f (t, y) K1 y
69
Suppose the nonlinearity satises the condition
Corollary 5.3 Let the system (5.16) have a nonlinear feedback (5.15) satisfying
the inequality (5.25), with K2 K1 positive denite. Then the closed loop system
is globally uniformly asymptotically stable if
= G(I + K1 G)1
G
has all its poles strictly in the left half plane and
(I + K2 G(s)(I + K1 G(s))1
I + (K2 K1 )G(s) = I + (K2 K1 )G(s)(I + K1 G(s))1 =
= (I + K2 G(s))(I + K1 G(s))1
Corollary 5.4 The Circle Criterion. Let u and y of the linear system (5.16)
be scalars. Assume that G has no poles in the right half plane and let the
nonlinearity satisfy
Then a sucient condition for the closed loop system to be globally asymptot-
ically stable is that the Nyquist curve of G does not encircle or enter the circle
whose diameter lies on the real axis between 1/k1 and 1/k2 .
1 + k2 G
1 + k1 G
70
f (y) k2 y
k11 k12
k1 y
G(i)
Figure 5.4: The circle criterion. Bounds on the nonlinearity to the left and
bounds on the Nyquist curve to the right.
There is a variation on the results above that uses a slightly dierent Lyapunov
function for the time-invariant case, namely
y
V = xT P x + 2 f T ()K d (5.27)
0
If we factorize according to
2I + KCB + B T C T K = W T W (5.30)
71
then we can complete the squares to get
V xT (AT P + P A + LT L)x (W f Lx)T (W f Lx)
provided L satises
P B = C T K + AT C T K LT W (5.31)
If we nally can satisfy
AT P + P A = LT L P (5.32)
for some > 0, then we have
V xT P x (5.33)
The equations (5.32), (5.31), (5.30) are of the form occuring in the Kalman-
Yakubovich-Popov lemma and we get the following result.
Theorem 5.6 The multivariable Popov criterion. Let the system (5.16)
have all its poles strictly in the left half plane and let the nonlinear time invariant
feedback u = f (y) satisfy the inequality (5.29). Also assume that f T K is the
gradient of a scalar function and that (5.28) is satised. Then the closed loop
system is globally asymptotically stable if there is an 0 such that 1/ is
not an eigenvalue of A and
I + (1 + s)KG(s)
is strictly positive real.
Corollary 5.5 The classical Popov criterion. Let the conditions of The-
orem 5.6 be satised for a single-input-single-output system. Then a sucient
condition for global asymptotic stability is that
1
+ Re G(i) Im G(i) > 0, all (5.34)
K
Graphically this means that the so called Popov plot (ImG(i) versus ReG(i))
has to lie to the right of a line through 1/K with slope 1/ for some value of
, see Figure 5.5.
72
Proof. In the scalar case the positive deniteness condition is that
Re (1 + (1 + i)KG(i)) > 0
Taking the real part of the expression within parentheses gives the result.
Im G(i)
1/K
Re G(i)
slope 1/
Figure 5.5: The classical Popov criterion. If the Popov plot lies to the right of
the line, global asymptotic stability is guaranteed.
73
0 0
0.1 0.1
0.2 0.2
0.3 0.3
0.4 0.4
0.5 0.5
0.6 0.6
0.7 0.7
0.2 0 0.2 0.4 0.6 0.8 1 1.2 0.2 0 0.2 0.4 0.6 0.8 1 1.2
x = f (x) (5.37)
One might wonder if asymptotic stability of (5.37) also implies a nice input
output behavior for (5.35). For linear systems it is well known that such a
relationship exists. We will prove a similar result for the nonlinear case. To
do that we assume that we have found a positive denite Lyapunov function V
such that
V (0) = 0, Vx (x)f (x) c3 |x|2 , |Vx (x)| c4 |x| (5.38)
Then we can show the following
Theorem 5.7 Suppose the system (5.35) satises (5.36) and that a Lyapunov
function exists with the properties (5.38). Then there exists a positive constant
k and a function (x) with (0) = 0, such that for any T > 0 and any input u
T T
2
y (t)y(t)dt k
T
uT (t)u(t)dt + (x0 ) (5.39)
0 0
T
+V (x0 ) (c3 |x(t)|2 + c1 c4 |x(t)||u(t)| dt + V (x0 ) =
0
2
c3 T
2
T
c3 c1 c4 c21 c24 2
|x(t)| dt |x(t)| |u(t)| + |u(t)| dt + V (x0 )
2 0 0 2 c3 2c3
showing that
c3 T
c21 c24 T
|x(t)|2 dt |u(t)|2 dt + V (x0 )
2 0 2c3 0
74
Since
|y(t)| c2 |x(t)|
from (5.36), it follows that (5.39) is satised with
c1 c2 c4 2c22
k= , (x0 ) =
c3 c3 V (x0 )
Remark 5.2 The inequality ((5.39) can often be given an energy interpreta-
tion: the energy in the output is less than some multiple of the energy in the
input plus the stored energy.
x1
-
A mass m moving with velocity x2 , is pulled by an external force u. The mass
is connected to a nonlinear spring giving the force
F = k1 x1 + k2 x31
F = bx2
We consider the velocity x2 to be the output. The equations of motion are then
x 1 = x2
mx 2 = u k1 x1 k2 x31 bx2 (5.40)
y = x2
75
energy lost in damper:
T
b y 2 dt
0
Summing the various contributions we get
T
by 2 + uy dt + (x(0)) = (x(T )) (5.41)
0
where
k1 2 k2 4 m 2
(x) =
x + x1 + x2
2 1 4 2
Since is a nonnegative function, we can also write
T
by 2 + uy dt + (x(0)) 0 (5.42)
0
Note that the function , representing the energy stored in the system, is also
a Lyapunov function for the system with u = 0, since
= (x)x x = bx22 0
Motivated by this example one can consider general systems with an equilibrium
at the origin
w(u, y) = y T Qy + 2y T Su + uT Ru (5.44)
for all T 0 and all control signals u, where y is the output of (5.43) for the
initial condition x(0) = x0 .
w(u, y) = y T y + k 2 uT u
76
For an electric circuit where the u is the voltage and y the current (or vice
versa), the product uy is the supplied power. This has motivated the following
denition.
w(u, y) = uT y
w(u, y) = uT y uT u
where y is the solution of (5.43) with x(0) = x0 . The inmum is taken over
all inputs u and all times T 0. We now have the following generalization of
(5.42).
Proposition 5.4 Assume that (5.45) holds for a system (5.43). Then the stor-
age function V dened by (5.46) satises
and T
V (x0 ) + w(u(t), y(t)) dt V (xT ), T 0 (5.47)
0
where y is the output corresponding to u with the initial condition x0 and xT
is the state reached at t = T .
The inequality is then also true if the last integral is replaced by its inmum,
giving
T
V (x0 ) w(u, y)dt + V (xT )
0
77
Proof. Setting u = 0 in (5.47) gives
T
V (xT ) V (x0 ) + y T Qy dt
0
A problem is that the denition (5.46) does not give any guarantee that V is
a smooth function. Suppose however that V is a continuously dierentiable
function. Then we can dierentiate (5.47) to get
Vx f Vx gu + hT Qh + uT Ru (5.50)
Proof. Since (5.51) must be satised for any u, it is in particular true for
u = 12 R1 g T VxT , which gives (5.52).
Theorem 5.9 Consider a system of the form (5.49). Suppose the Hamilton-
Jacobi inequality (5.52) has a dierentiable, nonnegative solution for matrices
Q, R, R > 0. The the system is dissipative with supply rate
y T Qy + uT Ru
78
5.6 Exercises
5.1 Rotating machinery is often described by the equation
x 1 = x2 (5.53)
x 2 = d x2 f (x1 ) (5.54)
where x1 is the angle of rotation and x2 is the angular velocity. The constant
d > 0 represents some type of viscous friction or damping and f a restoring
moment, f (0) = 0. Show that
x1
1
V (x) = x22 + f (u) du
2 0
is a Lyapunov function and discuss under what conditions the state variables
converge to the origin.
5.2 Consider the system described in the previous exercise. For an electric
generator f has the form
f (x) = sin x
Compute the Lyapunov function and sketch the area of the phase plane where
solutions will converge to the origin.
x 1 = x1 + 2x21 x2 (5.55)
x 2 = x2 (5.56)
where each component satises a sector condition of the form shown in the left
part of Figure 5.4, i. e.
i yi2 yi fi (t, yi ) ki yi2
Rewrite these conditions in the form (5.25).
for all t and y, where the vertical bars denote the Euclidean norm. Rewrite this
condition in the form (5.25).
79
5.6 A DC motor with axis resonances has the transfer function
4
G(s) =
s(s + 1)(s2 + 0.1s + 4)
is controlled using
u1 = f1 (y1 ), u2 = f2 (y2 )
where
0 y1 f1 (y1 ) k1 y12 , 0 y2 f2 (y2 ) k2 y22
For what values of k1 and k2 can stability be guaranteed?
5.9 What is the Hamilton-Jacobi inequality for a linear system if one assumes
a quadratic function V ?
80
5.7 Appendix
Proof. The kalman-Yakubovich-Popov lemma. We will only give an
outline of the proof.
Positive realness implies solvability of the matrix equations. Suppose
that G(s) is strictly positive real. Then there is some > 0 such that G(s /2)
is positive real. Since A has all its poles strictly in the left half plane, it is
possible to choose so that A
= A + 2
I also has all its poles there.
Step 1. Factorize
where V is a transfer matrix with all its poles in the left half plane. For scalar
transfer functions it is fairly easy to see that this can be done, since the left hand
side is symmetric with respect to sign changes in s. Poles and zeros then are
symmetricly placed with respect to the imaginary axis and V (s), V (s) can be
formed by picking poles and zeros from the correct half plane. The multivariable
case is due to a classical result by Youla.
Step 2. Make a state space realization of the left hand side of (5.57) using the
realization of G. This gives
A
0 B
x = x+ u, y = C B T x + (D + DT )u (5.58)
0 AT
CT
by parallell connection.
Step 3. Make a state space realization of the right hand side of (5.57) using a
minimal realization of V , with matrices F , G, H, J. Since V T (s)V (s) can be
regarded as a series connection of this system and one with matrices F T , H T ,
GT , J T , we get
F 0 G
z = z + u, y = J T H GT z + J T Ju (5.59)
H H F
T T T
H J
Step 4. Make (5.59) into block diagonal form by using the transformation
I 0
z= z
K I
where K satises
KF + F T K + H T H = 0 (5.60)
This gives
F 0 G
z = z+ u, y = J T H + GT K GT z + J T Ju
0 F T H T J + KG
(5.61)
Step 5. Show that (5.58) and (5.61) are minimal realizations of the left and
right hand sides of (5.57). This is an exercise in the PBH test.
81
Step 6. Since (5.58) and (5.61) are both minimal realizations of the same
transfer function there is a transformation
T T12
z = 11 x
T21 T22
between them. Consider T12 . Transforming between (5.58) and (5.61) shows
that
F T12 + T12 AT
= 0
T
Multiplying with eF t from the left and eA t from the right shows that
d Ft T
e T12 eA t = 0
dt
which gives
T
T12 = eF t T12 eA t
Since the right hand side goes to zero, it follows that T12 = 0. In a similar
manner we can show that T21 = 0. The transformation is thus block diagonal.
Step 7. Writing out the tranformation between (5.58) and (5.61) gives
J T J = D + DT
1
F = T11 A
T11
G = T11 B
1
J T H + GT K = CT11
Step 8. Take
W =J
L = HT11
T
P = T11 KT11
Plugging these values into the equations of Step 7 and using (5.60) shows that
the matrix equations of the Kalman-Yakubovich-Popov lemma are satised.
Solvability of the matrix equations implies positive realness.
This is a straightforward but tedious calculation. Since it is not needed for the
circle and Popov theorems, we omit it.
82
.
83
Chapter 6
Since stability is such a central issue for control, it is natural that many controller
design methods use Lyapunov theory.
Vx g = 0 Vx f < 0 (6.3)
84
Open loop stable systems
Consider a system of the form (6.2) which is open loop stable but not necessarily
asymptotically stable. Suppose we know a function V such that
Vx f (x) 0, all x
If we have Vx g = 0 whenever Vx f = 0 for x = 0, then we have a control
Lyapunov function. We could choose (x) = 1 in (6.4) to achieve a smooth
control law which gives a negative denite V .
6.2 Backstepping
Backstepping is a method to extend a Lyapunov function and an associated
control law from part of the system to all the system by moving backwards
through the system. Typically one starts with a system
x = f (x) + g(x)z (6.5)
for which a control law z = k(x) and a Lyapunov function V are known, that is
V = Vx (f (x) + g(x)k(x)) = W (x) (6.6)
where W is some positive denite function. Now suppose this system is really
part of a larger system, so that z is not directly available but instead the system
description is
x = f (x) + g(x)z (6.7)
z = a(x, z) + b(x, z)u (6.8)
At this stage we assume for simplicity that z is a scalar. Rewriting the rst
equation gives
x = f (x) + g(x)k(x) + g(x)(z k(x))
z = a(x, z) + b(x, z)u
Let us try to extend the given Lyapunov function by writing
1
Ve (x, z) = V (x) + (z k(x))2 (6.9)
2
The time derivative then becomes (omitting arguments)
85
Example 6.1 Consider a version of the mechanical system described in Exam-
ple 6.5 where there is no damping and the spring force is x31 . The system is
then described by
x 1 = x2
x 2 = x31 + u
u = x1 x2
we get the same system as we used in Example 6.5. We thus know the Lyapunov
function
3 x4
V = x21 + x1 x2 + x22 + 1 ,
2 2
for that closed loop system. Now suppose that we apply the force through an
actuator that has a certain time constant so that we have
x 1 = x2
x 2 = x31 + z
z = z + u
4 400
3 350
2 300
1 250
0 200
1 150
2 100
3 50
4 0
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
86
The backstepping approach is easily extended to vector valued inputs. Suppose
z and u in (6.7), (6.8) are vectors of length m. Then it is natural to replace
(6.9) by
1
Ve (x, z) = V (x) + (z k(x))T (z k(x)) (6.13)
2
and we get
V e = W (z k)T (z k)
by taking
u = b1 (kx (f + gz) a (Vx g)T (z k)) (6.14)
x = f (x, z)
z = a(x, z) + b(x, z)u
provided the system x = f (x, u) has a stabilizing control law u = k(x) and a
Lyapunov function V (x) with
x 1 = arctan x2
x 2 = u
x 1 = arctan u
1 2
It can be stabilized with the control u = x1 , as shown by taking V = 2 x1 ,
giving
V = x1 arctan x1
The extended Lyapunov function then becomes
1 2 1
Ve = x + (x1 + x2 )2
2 1 2
with
V e = x1 arctan x2 + (x1 + x2 )(u + arctan x2 )
We get
V e = x1 arctan x1 (x1 + x2 )2
87
by taking
x1 (arctan x1 + arctan x2 )
u = arctan x2 (x1 + x2 )
x1 + x2
Of course the backstepping approach can be used repeatedly. In this way sys-
tems with the structure
x = f (x, z1 )
z1 = a1 (x, z1 ) + b1 (x, z1 )z2
z2 = a2 (x, z1 , z2 ) + b2 (x, z1 , z2 )z3
..
.
zn = an (x, z1 , . . . , zn ) + b1 (x, z1 , . . . , zn )u
6.3 Forwarding
There is also a method for extension of a Lyapunov function forwards, across a
nonlinear integrator. The system structure is assumed to be
is negative denite. We also assume that k is such that the asymptotic conver-
gence is actually exponential. We consider the system
Dene h(x) = a(x) + b(x)k(x) and let x = (t, xo ) be the solution of (6.19) with
initial condition xo . Then z is given by
t
z(t) = z(0) + h((s, x(0))) ds
0
Since (t, x(0)) converges to zero exponentially, the integral converges. We can
thus dene the variable
=z+ h((s, x)) ds (6.20)
0
88
Using x and as state variables, (6.18), (6.19) can be written
= 0 (6.21)
x = f (x) + g(x)k(x) (6.22)
= b(x)
u (6.24)
x = f (x) + g(x)k(x) + g(x)
u (6.25)
= (Vx g + b)
u
z = u
x = x + x3 + u
z = x3
x = x
= (1 x2 )
u
x = x + u
x2 2
Ve = +
2 2
89
Since
V e = x2 + (x + x2 )
u
we can take
x3
= (x + x2 ) = x (z
u )(1 x2 )
3
In Figure 6.2 the system is simulated. A comparison is made with the controller
which has only linear terms, i.e.
= u = x z
u
In this case the linear controller does not stabilize the system for the initial
condition z(0) = 3, and we see an example of nite escape time.
3 5
4.5
2
4
3.5
1
0 2.5
1
1.5
1
2
0.5
3 0
0 5 10 15 0 5 10 15
Figure 6.2: System with forwarding controller (solid) compared to a linear con-
troller (dashed). The initial state is x(0) = 0, z(0) = 3. To the left are the
states, to the right the Lyapunov function.
where
0 1 0 ... 0
0 0 1 0 0
..
.. ..
A=
. . 0
, B = . , C= 1 0 ... 0 (6.27)
. 0
.. 1 1
0 0 0 ... 0
90
and
g1 (x1 )
gx (x1 , x2 )
..
g(x) = . (6.28)
gn1 (x1 , . . . , xn1 )
gn (x)
Using the natural observer
= A
x x + B( x)u + K(y C x
x) + g( ) (6.29)
= (AKC)
x x+B((x)(
x ))+(g(x)g(
x))u = (AKC)
x+L(x, x
, u) (6.30)
where
x)) + (g(x) g(
L(x, x, u) = B((x) ( x)) u
T S x
Using the Lyapunov function V = x gives
V = x
T ((A KC)T S + S(A KC)) xT SL(x, x
x + 2 , u)
V = x
T (AT S + SA 2C T C) xT SL(x, x
x + 2 , u)
AT S + SA C T C = S (6.31)
V = )2 + 2
(C x
xT S x , u)
xT SL(x, x xT S x xT SL(x, x
+ 2 , u) (6.32)
Let |x| denote the ordinary Euclidian norm of x and use the notation |x|S =
|S 1/2 x| = (xT Sx)1/2 . Then (6.32) becomes
d
x|2S ) |
(| x|2S + 2|
x|S |L(x, x
, u)|S
dt
which can be simplied to
d
x|S ) |
(| x|S + |L(x, x, u)|S (6.33)
dt 2
To go further it is necessary to consider in detail the solution of (6.31). We
begin by looking at an example.
91
and equation (6.31) becomes
1 s11 s s12
= 11
s11 2s12 s12 s22
Conditions (6.36) (6.38) are required to hold for all values of x and x . This
means that we require the functions to satisfy a global Lipschitz condition. When
this holds together with the bound on u it follows immediately that
1 , u)| 1 |
|L1 (x1 , x x1 |
|L2 (x, x
, u)| 2 |
x|
for some constants 1 and 2 . It is now possible to estimate the size of the
term |L|S in (6.33):
x1 | c1 1/2 |
| x|S , x| c2 3/2 |
| x|S
that are satised for some constants c1 and c2 . It follows that (6.33) can be
rewritten as
d
x|S ) |
(| x|S + c3 |
x|S
dt 2
Since the right hand side is negative if is large enough it follows that the
observer error goes to zero for arbitrary initial conditions.
The calculations of the example are easily generalized to the general case which
gives the following theorem
92
Theorem 6.1 Consider the observer (6.29). Assume that there is a constant
uo so that the control signal satises u(t) uo for all t. Also assume that
and the functions gj (x1 , .., xj ) satisfy global Lipschitz conditions and that the
observer gain is K = S 1 C T with S given by (6.31). Then for each which is
suciently large there exists a constant C() such that
(t)| C()et/3 |x(0) x
|x(t) x (0)| (6.39)
i.e the observer error converges to zero with an arbitrarily fast exponential
convergence rate.
Proof. It is easy to see that the structure of (6.31) makes it possible to calculate
the elements of S recursively, starting with s11 = 1 . One can also show that
this matrix is always positive denite. It is also easy to see that the recursive
structure means that an element of S will have the form
soij
sij = i+j1
for some constant soij . This means that the estimate of the size of the term |L|S
that was done in Example 6.4 can be done in a completely analogous way for a
general system. One can therefore obtain the estimate
d
x|S ) |
(| x|S + c3 |
x|S
dt 2
from that example also in the general case. Choosing 6c3 gives the estimate
d
x|S ) |
(| x|S
dt 3
which directly gives (6.39).
This theorem gives a strong global convergence result for a general class of
observers. It is however worth noting that it depends on a number of conditions.
93
and we nd a control law u = k(x) and a Lyapunov function V such that
Then an observer is designed that gives a state estimate x and the controller
x) = k(x x
u = k( ) (6.42)
V e qe (
x) 0 (6.43)
For a specic design it is often possible to show that the term is suciently
small so that the overall expression becomes negative. It is however dicult to
give general conditions that guarantee that this will happen.
One might think that the high gain observer described by Theorem 6.1 would
guarantee stability also for the closed loop system, since according to (6.39),
after an arbitrarily short time the dierence between x and x becomes negligible.
The catch is that there might be very large transients during this short time,
due to the large gain in the observer. These large transients could, via the
control law destabilize the closed loop system beyond recovery. A high gain
observer therefore has to be combined with some scheme for handling these
initial transients. Provided this is done it is indeed possible to prove closed loop
stability for some classes of systems where nonlinear state feedback is combined
with high gain observers.
for which we know a Lyapunov function V (t, x) which guarantees stability for
the open loop system by satisfying the conditions of Theorem 5.2. In particular
there is a positive denite function W such that
94
w
u
x = f + gu
It follows that
V = W + |Vx g|(k + + k) W
if k is chosen as /(1 ). The chosen control is thus
(t, x)
u= sign (Vx g) (6.49)
1
and it achieves that the Lyapunov function decreases at least as fast in the pres-
ence of the unknown disturbance as for the open loop undisturbed system. In
particular we achieve stability for the closed loop system according to Theorem
5.2. The price we have to pay is that the control law is discontinuous (unless
Vx g = 0 implies = 0) and that there is no guarantee that it will decrease to
zero as the equilibrium is approached.
Example 6.5 Consider the mechanical system of gure 6.3. A unit mass with
position x1 and velocity x2 is connected to a nonlinear spring and a damper.
The control signal u is a force and there is also an external force disturbance w.
The spring force is assumed to be x1 x31 and the damper force is supposed
to be x2 . The system equations are then
x 1 = x2
x 2 = x1 x31 x2 + u + w
95
x2
w
u
x1
Figure 6.3: Mechanical system with nonlinear spring and force disturbance.
In Figure 6.4 the response of this controller is shown. The disturbance and
control signals are shown in Figure 6.5. Note that the control signal switches
very rapidly between its extreme values. In Figure 6.6 a low pass ltered version
of u is compared to the disturbance. Note that the average of u is close to w,
which accounts for the disturbance rejection.
5 3
4.5 2.5
4 2
3.5 1.5
3 1
2.5 0.5
2 0
1.5 0.5
1 1
0.5 1.5
0 2
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
Figure 6.4: Response of the mechanical system. To the left is V (t), to the right
x1 (t). Uncontrolled system without disturbance: dotted, uncontrolled system
with disturbance: dashed, controlled system with disturbance: solid.
96
1 1
0.8 0.8
0.6 0.6
0.4 0.4
0.2 0.2
0 0
0.2 0.2
0.4 0.4
0.6 0.6
0.8 0.8
1 1
0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10
Figure 6.5: Control of mechanical system. Disturbance signal w to the left and
control signal u to the right.
1.5
0.5
0.5
1.5
0 1 2 3 4 5 6 7 8 9 10
+ u1 y1 y
u S1
y2 u2
S2
97
Proposition 6.1 Consider the feedback system of Figure 6.7 where the systems
S1 and S2 are both passive. Then the closed-loop system with input u and
output y is also passive.
Proof. Since the systems S1 and S2 are passive the denition of passivity gives
T
uTi yi dt + i (xoi ) 0, i = 1, 2
0
for some funktions 1 and 2 , where xo1 , xo2 are the initial states of S1 and S2 .
Using that
u 1 = u y2 , u 2 = y1 = y
one gets
T T
uT y dt = (uT1 y1 + y2T u2 ) dt 1 (xo1 ) 2 (xo2 )
0 0
which shows that the system with input u and output y is passive with =
1 + 2 .
In passivity based control one tries to control systems that are already passive
in a way that preserves passivity. The proposition above shows that one way
of doing this is to use a controller which is in itself passive. Usually this is too
restrictive however. Looking at Example 5.5 we see that equation (5.41) can be
rewritten as
T T
uy dt + (x(0)) (x(T )) = by 2 dt
0 0
for some function , then the closed loop system with v as new input will be
passive. Its energy storage function will be + . The idea is now to choose
so that the new energy function has a minimum at the desired equilibrium
of the system. If the natural dissipation d is not sucient to drive the system
towards the equilibrium fast enough, then further terms are introduced into the
controller to increase the dissipation.
98
This approach has been used extensively for mechanical systems whose stored
energy has the form
1
= qT I(q)q + V (q) (6.52)
2
where q is a vector of generalized coordinates (usually linear displacements and
angles), I is an inertia matrix and V is the potential energy. Using the feedback
k(x) = Vq + K(q qr ) (6.53)
where K is a positive denite matrix and qr is the desired position, gives
T T
k T y dt = (Vq + K(q qr ))q dt =
0 0
T
d 1
(V + (q qr )T K(q qr )) dt = (x(T )) (x(0))
0 dt 2
1
where = V + 2 (q qr )T K(g qr ). The stored energy will be modied to
1 T 1
+= q I(q)q + (q qr )T K(q qr )
2 2
This function has a minimum at q = qr , q = 0, which is the equilibrium the
system will converge to if there is enough dissipation.
Example 6.6 Consider again Example 5.5, but let the damping be a nonlinear
function b(x2 ) of velocity.
x 1 = x2
mx 2 = u k1 x1 k2 x31 b(x2 ) (6.54)
y = x2
The stored energy is as before
k1 2 k2 4 m 2
(x) = x + x1 + x2
2 1 4 2
k1 2
Comparing with (6.52) we see that q = x1 , q = x2 , I(q) = m and V = 2 x1 +
k2 4
4 x1 . The control law (6.51), (6.53) then becomes
u = v + k1 x1 + k2 x31 K(x1 r)
where r is the reference value for the position. Note that this control law is
similar to exact linearization because the spring force is subtracted away. Note
also that it is dierent in not cancelling the damping term b(x2 ). The closed
loop system will be
x 1 = x2
mx 2 = v K(x1 r) b(x2 ) (6.55)
y = x2
and its stored energy function
m 2 K
V = x + (x1 r)2
2 2 2
99
For v = 0 and r = constant the closed-loop system has an equilibrium at x1 = r.
Using V as a Lyapunov function candidate gives
y
G(s)
between the degrees of denominator and numerator) be one, and assume that
all zeros are strictly in the left half plane. Then it is easy to see from a root
locus argument that G will always be stabilized if k is big enough. Also the
inuence of a constant w can be made arbitrarily small if k is large enough.
However, since G and w are unknown, we do not know how to pick k. A simple
idea is to use the adaptation rule
k = y 2 , k(0) 0
which lets k increase as long as there is a control error. This scheme can be
shown to work in an ideal noise free situation. In a realistic situation, however,
y does not decrease to zero due to disturbances and measurement noise, which
means that k will increase without bound. It is clear that some modication is
needed, such as
k = y 2 + f (k), k(0) 0 (6.56)
where k has to be determined. We assume that f (k) is chosen so that k always
remains positive. To get an idea how the choice should be made, we will try
100
to construct a Lyapunov function. Let n be the order of the linear system G.
Since the relative degree is one, there is a state space realization of the form
x = Ax + by (6.57)
y = cx dy + g(u + w) (6.58)
V = xT P x + y 2 + (k ko )2 (6.59)
where ko is a constant to be determined. The analysis will be made for the case
of a constant but unknown w. Dierentiating we get
We see that there is no hope of making V negative all the time due to the
term 2wy. However, we can do the following. Choose P as the solution of the
Lyapunov equation
AT P + P A = I
This is always possible since A has all its eigenvalues strictly in the left half
plane. Next choose ko such that
I P b cT
Q= T
b P + c 2(d + ko )
Proposition 6.2 For the Lyapunov function candidate (6.59) and an adapta-
tion rule satisfying (6.60) there are constants V0 > 0 and > 0 such that in the
set
{(x, y, k) : V (x, y, k) V0 } (6.61)
we have
V (xT x + y 2 + k 2 )
101
Taking = min(1 , ) we get
V (xT x + y 2 + k 2 )
if (xT x + y 2 + k 2 ) is large enough, which is the case if V (x) V0 with Vo large
enough.
The proposition shows that V will decrease in the set V V0 so that eventually
the set V (x, y, k) < V0 is reached. The adaptation will thus work in the sense
that all variables reach this bounded set. A closer look at the estimates is taken
in Exercise 6.10.
6.8 Exercises
6.1 Compute a backstepping controller for the system
x 1 = x21 + x2
x 2 = x2 + x3
x 3 = u
102
6.4 Compute a controller for
x 1 = sin x2
x 2 = u
with the largest possible stability region (guaranteed by a Lyapunov function).
6.6 Solve (6.31) for a third order system and compute the observer gain K.
Alos compute the eigenvalues of A KC.
6.9 Simulate the adaptive scheme of Section 6.7 with f (k) = k for dierent
systems G and dierent, not necessarily constant, disturbances w.
6.10 Consider the adaptive scheme of Section 6.7 with f (k) = k. Let
< 1/max (P ). Show that ko can be chosen such that
V 2V + 2ko2 + 2|w|
What conclusions can be drawn about the properties of the adaptive scheme?
103
.
104
Chapter 7
In linear system theory many design methods for controllers are based on solu-
tions to the linear quadratic control problem:
t1
T
min x Qx + uT Ru dt + x(t1 )T Q0 x(t1 ) (7.1)
0
d
x = f (t, x, u), uU (7.3)
dt
where x is an n-vector and u an m-vector. The control is assumed to be con-
strained in such a way that u(t) U for all t, where U is some set in Rm .
Let
(t, x0 , u(.))
be the solution of (7.3) with the initial condition x(0) = x0 when the control
function u(.) is applied. Consider the problem of controlling the system from a
given point until a certain condition is met:
x(t0 ) = x0 (7.4)
one would want to reach a certain state at a certain time. As another example,
105
M might be a line parallel to the time axis, in which case one wants to reach
a certain point at an unspecied time. Also we want to nd the best control
satisfying (7.5), so we consider minimizing
t1
J= L(t, x(t), u(t))dt + (t1 , x(t1 )) (7.6)
t0
where we have used the shorthand notation x(t) = (t, x0 , u(.)). The problem is
thus to transfer the state from the point x0 to the set M , using controls that lie
in U at each instant of time, in such a way that the criterion (7.6) is minimized.
Note that the nal time t1 is not specied, except for the conditions imposed
by M .
Since we would like the control expressed as a feedback law, we want to solve
the problem for all starting times and all starting points. Then J is a function
of these quantities as well as the control function:
J = J(t0 , x0 , u(.))
Suppose a minimizing u exists and dene
V (t, x) = min J(t, x, u(.)) (7.7)
u(.)
(where the minimization is carried out over those functions u that satisfy u(t)
U and give a trajectory satisfying (t1 , x(t1 )) M ). Thus V (t, x), the optimal
return, shows the cost of starting from x at time t when the control is chosen
optimally.
If we only consider trajectories that reach M once, then from the denition it
follows that
V (t, x) = (t, x), (t, x) M (7.8)
The basis for the analysis of the optimal control problem is the following simple
relation, sometimes denoted the principle of optimality.
106
where x (t) = (t, (t, x, u(.)), u (.)). Since V (t, x) J(t, x, u(.)) with equality
when u is optimal, the theorem follows.
d
V (t, x(t)) + L(t, x(t), u(t)) 0
dt
d
V (t, x(t)) = Vt (t, x(t)) + Vx (t, x(t))f (t, x(t), u(t))
dt
u = k(t, x) (7.12)
W (t, x) = V (t, x)
d
x = f (t, x, k(t, x))
dt
x(t0 ) = x0
107
and let u (t) = k(t, x (t)). Then
t1
J(t0 , x0 , u (.)) = L(t, x (t), u (t))dt + (t1 , x (t1 )) =
t0
t1
L(t, x (t), u (t))dt + W (t1 , x (t1 )) =
t0
t1
d
L(t, x (t), u (t)) + W (t, x (t)) dt + W (t0 , x(t0 )) =
t0 dt
t1
L(t, x (t), u (t)) + Wx (t, x (t))f (t, x (t), u (t)) + Wt (t, x (t)) dt+
t0
W (t0 , x(t0 )) = W (t0 , x(t0 ))
t1
[L(t, x(t), u(t)) + Wt (t, x(t)) + Wx (t, x(t))f (t, x(t), u(t))] dt+
t0
t1
W (t0 , x(t0 )) = L(t, x(t), u(t))dt + W (t1 , x(t1 )) =
t0
t1
L(t, x(t), u(t))dt + (t1 , x(t1 )) = J(t0 , x0 , u(.))
t0
This theorem shows that if we can solve (7.11) and if the resulting solution W
is smooth, then the optimal control problem dened by (7.6) and (7.3) is solved,
and the solution is in the feedback form (7.12). Unfortunately the function V
dened by (7.7) has a discontinuous gradient in many cases. The theory then
becomes much more complicated, since a generalized concept of derivatives is
needed to interpret the expression Vx f . Even when there is a smooth solution of
(7.11), it can seldom be expressed analytically. A simple example where (7.11)
can solved explicitly is the following.
x = u
u4
0 = min(Vt + + Vx u)
u 4
For x M , i.e. for t1 = 1 we have
V (1, x) = x4 /4
108
This gives the solution
x4
V (t, x) =
4(2 t)3
and the feedback law
x
u=
2t
Here we have assumed that there is no explicit time dependence in the integrand
L. It is then no restriction to assume that the initial time is 0. We also assume
that the system is time invariant and described by
d
x = f (x, u), uU (7.15)
dt
The optimal return must then also be time invariant: V (t, x) = V (x). The
Hamilton-Jacobi equation then reduces to
that drives the state to the origin as time goes to innity. Then this control
is optimal among all controls that drive the state to the origin, and W is the
corresponding optimal return function.
109
Proof. Consider a control u driving the corresponding x to the origin as t goes
to innity. Then
J(x0 , u(.)) = L(x(t), u(t))dt =
0
d
(L(x(t), u(t)) + Wx (x(t))f (x(t), u(t))) dt W (x(t)(t))dt =
0 0 dt
= (L(x(t), u(t)) + Wx (x(t))f (x(t), u(t))) dt + W (x0 ) W (x0 )
0
where the last inequality follows from (7.17). It follows that u = k(x) is mini-
mizing and that W is the optimal return.
x = u, |u| 1
0 = min (x2 + u2 + Vx u)
|u|1
Series expansion
If the functions L and f in (7.16) are real analytic (i.e. given by convergent series
expansions), then it is possible to compute the solution as a series expansion.
To show this we assume that the optimal control problem is given by
1 d
min l(x) + uT Ru dt, x = a(x) + b(x)u (7.19)
0 2 dt
110
where the functions a, b and l are real analytic. We thus assume that the control
appears linearly in the dynamics and quadratically in the criterion. This is not
necessary for the calculations that follow, but make them very much simpler.
The Hamilton-Jacobi equation takes the form
1
0 = l(x) + Vx (x)a(x) Vx (x)b(x)R1 b(x)T Vx (x)T (7.20)
2
and the optimal control is given by
Writing
1 T
l(x) = x Qx + lh (x)
2
a(x) = Ax + ah (x)
(7.22)
b(x) = B + bh (x)
1
V (x) = xT Sx + Vh (x)
2
where lh ,ah ,bh and Vh contain higher order terms (beginning with degrees 3,2,1
and 3 respectively), the Hamilton-Jacobi equation splits into two equations.
0 =Q + AT S + SA SBR1 B T S (7.23)
1
0 =Vhx (x)Ac x + lh (x) + Vx (x)ah (x) Vhx (x)BR1 B T Vhx (x)T (7.24)
2
1
Vx (x)wh (x)Vx (x) T
(7.25)
2
where
Ac = A BR1 B T S (7.26)
1 1
wh (x) = b(x)R b(x) BR
T
B T
(7.27)
(so that wh contains terms of degree 1 and higher). Equation (7.23) is the
ordinary Riccati equation of linear quadratic control. If we assume that
then the theory of linear quadratic control tells us that (7.23) has a unique
positive denite solution. Letting superscript (m) denote m:th order terms,
equation (7.25) can be written
(7.29)
The right hand side contains only (m 1):th, (m 2):th,.. order terms of
V . Equation (7.29) therefore denes a linear system of equations for the m:th
order coecients with a right hand side which is known if lower order terms have
been computed. Using the same arguments that was used in the calculation of
Lyapunov functions, it can be shown that this system of equations is nonsingular
111
as soon as Ac is a stable matrix. Since Ac represents the linearized closed
loop dynamics, this is guaranteed by linear quadratic control theory if (7.28)
holds. After solving (7.23), the 3rd, 4th, 5th,.. order coecients can then be
computed successively. It can be shown that the resulting series representation
of V converges and denes a real analytic function in some neighborhood of the
origin.
Consider again the innite horizon optimal control problem (7.14), (7.15). If
the optimal return V is known it is easy to see that (7.14) is equivalent to the
nite horizon optimal control problem
T
J= L(x(t), u(t))dt + V (x(T )) (7.30)
0
112
The MPC technique has been particularly successful for the constrained linear
quadratic problem
J= (xT Qx + uT Ru) dt
0
x = Ax + Bu, ubi ui uti , i = 1, . . . , m
Nx + Mu 0
The receding horizon problem then has a criterion of the form
T
J= (xT Qx + uT Ru) dt + x(T )T Qo x(T )
0
d z
- -
u x
-
k
113
Denition 7.1 The state feedback gain reduction problem is to nd a state
feedback (7.34) such that the gain from d to y of the closed loop system (7.35)
is less than some given value .
114
A global solution requires that
| arctan x| <
7.5 Exercises.
7.1 What is the optimal feedback for the system
x = u
7.2 What are the optimal feedback and the optimal return for the system
x = u
7.3 Compute the optimal feedback up to third order terms for the system and
criterion which are given by
x 1 = x2 , x 2 = u
2
J= x1 + x41 + u2 dt
0
Hint: Maple, Mathematica.
u = sat Lx
115
where sat is the function given by
1 z>1
sat z = z |z| 1
1 z < 1
116
Chapter 8
Harmonic analysis of
nonlinear systems
r -
+ m e- u- 1 y
()3 -
(s + 1)2
6
1
G(s) =
(s + 1)2
r(t) = 1, t0
in the reference signal. We see that there is a large steady state error due to
the low gain of the cubic nonlinearity at low amplitudes. If the reference signal
is instead
r(t) = 1 + 1.5 sin 10t, t 0 (8.1)
the response is the one shown in gure 8.2. We see that the steady state error
has decreased dramatically due to the presence of a high frequency component
in r. Can we explain this phenomenon?
117
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 5 10 15 20 25 30
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 5 10 15 20 25 30
118
One approach would be to assume that e is a sum of a constant and a sinusoid.
Using a complex representation we write
e(t) = e0 + e1 eit + e1 eit (8.2)
Since e(t) is real we have e1 = e1 . We then get
3
u(t) = e0 + e1 eit + e1 eit = u0 + u1 eit + u 1 eit + u2 ei2t + u
2 ei2t +
3 ei3t
+u3 ei3t + u
where
u0 = e30 + 6e0 |e1 |2 , u1 = 3e20 e1 + 3e1 |e1 |2 , u2 = 3e0 e21 , u3 = e31
The output is then given by
u1 eit + G(2i)u2 ei2t +
y(t) = G(0)u0 + G(i)u1 eit + G(i)
u2ei2t + G(3i)u3 ei3t + G(3i)
+G(2i) u3 ei3t
Since e = r y, the signal e will contain terms with frequencies 2 and 3. Our
assumption (8.2) is then false. However, if is large enough, then the absolute
values of G(2i) and G(3i) will be small. The assumption (8.2) will then be
approximately true. Writing the reference signal in the form
r(t) = r0 + r1 eit + r1 eit
we get
e0 = r0 G(0)u0 , e1 = r1 G(i)u1
It is convenient to introduce the gains
u0 u1
Y0 (e0 , e1 ) = = e20 + 6|e1 |2 , Y1 (e0 , e1 ) = = 3e20 + 3e21 (8.3)
e0 e1
We then get
r0 r1
e0 = , e1 = (8.4)
1 + Y0 (e0 , e1 )G(0) 1 + Y1 (e0 , e1 )G(i)
These formulas look supercially like the usual formulas for the gain from refer-
ence signal to error signal for a linear system. The big dierence lies in the fact
that Y0 and Y1 are amplitude dependent gains. Note that each gain depends on
both e0 and e1 . It is this fact which is the clue to the behavior of the system.
Substituting (8.3) into (8.4) gives the following system of equations.
e0 (1 + G(0)(e20 + 6|e1 |2 )) = r0
(8.5)
e1 (1 + 3G(i)(e20 + e21 )) = r1
Since |G(i)| = |G(10i)| 0.01 we get approximately
e1 r1
and substituting into the rst equation
r0 r0
e0 2
=
1 + 6G(0)|r1 | 1 + 6|r1 |2
Since we had r0 = 1 and r1 = 0.75 in (8.1), we get
e0 = 0.23
in good agreement with Figure (8.2).
119
8.1 Describing functions
Generalizing the methodology of Example 8.1 we consider the following situa-
tion.
c(t)- z(t)-
N
A nonlinear system N has an input c(t) and an output z(t). Assume that the
input is a sum of sinusoidal functions:
N
ij t
c(t) = cj e + cj eij t (8.6)
j=1
N
ij t
z(t) = zj e + zj eij t + w(t) (8.7)
j=1
where w(t) contains frequencies other than 1 , . . . , N we can dene the gain
for the frequency j :
zj
Yj (c1 , . . . , cN , 1 , . . . , N ) = (8.8)
cj
The function Yj is sometimes called the j:th describing function for N . Using
the gain Yj it is in principle possible to do block diagram calculations in the
same manner that one does for linear systems. We saw this in Example 8.1.
There are two main diculties with this approach.
120
In practice describing function calculations have been conned to the following
special cases. They cover many applications however.
Yj = G(ij )
2. The signal c(t) has zero mean and contains a single frequency, that is
C it C it
c(t) = C sin t = e e
2i 2i
If the nonlinearity is static, the single describing function Y depends only
on C. This is the classical approach and sometimes the term describing
function method is used for this special case only.
3. The input signal c(t) has nonzero mean and contains a single frequency
(apart from = 0), that is
C it C it
c(t) = B + C sin t = B + e e
2i 2i
This case is sometimes referred to as the BSDF (bias-plus-sinusoid de-
scribing function) case.
4. The signal c(t) has zero mean and contains two frequencies 1 and 2 ,
that is
c(t) = C1 sin 1 t + C2 sin(2 t + )
This is sometimes referred to as the SSDF case (sinusoid-plus-sinusoid
describing function)
The reason is that nonlinearities without this property usually produce a bias
at the output. If the nonlinearity is part of a feedback system, this bias is fed
back to the input, making the assumption of zero bias invalid. If the static
nonlinearity (8.9) is used with the input
C it C it
c(t) = C sin t = e e (8.11)
2i 2i
the output becomes a periodic function with a Fourier expansion
z(t) = zk eikt = zk eik
121
where = t. The Fourier coecient of the bias term is
z0 = f (C sin )d = 0
Since the cosine integral is zero because of the symmetry (8.10), the describing
function becomes
z1 1
Y (C) = C = f (C sin ) sin d
( 2i ) C
which is real valued. Since each quarter of the interval [, ] makes the same
contribution in the integral, we can also write
/2
4
Y (C) = f (C sin ) sin d (8.12)
C 0
This formula can be rewritten in many ways. Making the substitution C sin =
x, for instance gives
C
4 xf (x)
Y (C) = dx (8.13)
C 2 0 C 2 x2
Using a partial integration, this can then be written
C
4
Y (C) = f (x) C 2 x2 dx (8.14)
C 2 0
Example 8.2 The describing function for a relay with dead zone
6
H
D D -
is
4 C 4H 2
Y (C) = H (x D) C 2 x2 dx = C D2
C 2 0 C 2
A nice feature of the classical describing function method is that it is one of the
few methods that can handle nonlinearities that are not single valued. Consider
122
2 (x) 6
f'
- x
f%
1 (x)
123
6
H
D -
D
H
The function f0 equals the nonlinearity of Example 8.2 and the area enclosed
by the hysteresis loop is 4HD. The describing function is thus
4H 2 4HD
Y (C) = C D2 i
C 2 C 2
z(t) = f (B + C sin ) = z0 + z1 ei + z1 ei +
If we want to cover systems with hysteresis as in Figure 8.3 we can still dene
f1 (x) + f2 (x)
f0 (x) =
2
f2 (x) f1 (x)
(x) = = f2 (x) f0 (x) = f0 (x) f1 (x)
2
However, since we do not assume any symmetry of f1 and f2 , we will no longer
obtain the symmetries (8.17). Partitioning the integration intervals of (8.20)
and (8.21) in a suitable manner we get
/2
1
Y0 (B, C) = f0 (B + C sin ) d (8.22)
B /2
/2
/2
2
Y1 (B, C) = f0 (B + C sin ) sin d i (B + C sin ) cos d
C /2 /2
(8.23)
124
Making the same variable changes as in (8.12,8.13) we get the alternative for-
mulas C
1 f0 (B + x)
Y0 (B, C) = dx (8.24)
B C C 2 x2
C
C
2 xf0 (B + x)
Y1 (B, C) = dx i (B + x) dx (8.25)
C 2 C C 2 x2 C
or
2 C C
Y1 (B, C) = f0 (B + x) C 2 x2 dx i (B + x) dx (8.26)
C 2 C C
Example 8.4 Consider the relay with hysteresis of Example 8.3. Let the input
have a bias, that is
c(t) = B + C sin t
with C |B| > D (this ensures that the whole hysteresis loop is covered). We
get from (8.24)
C
BD
1 H H
Y0 (B, C) = dx + dx =
B C C 2 D2 B+D C 2 D2
H D+B DB
= arcsin arcsin
B C C
Since
f0 (x) = H((x + D) + (x D))
we get from (8.26)
,
2 , 2
2H D+B DB
Re Y1 (B, C) = 1 + 1
C C C
B+D
2 4HD
Im Y1 (B, C) = H dx =
C 2 BD C 2
Example 8.5 Consider the temperature control system of Figure 8.4. The
control signal is the heating power u which can either be switched on (with
power 2P ) or o (zero power) by a relay, depending on the dierence between
the setpoint temperature r and the actual temperature y. The heated object
125
r -e - 6 2P u - 20 y
+
D D- (s + 1)2
6
r - e - D 6 -P ?
+
u - 20 y
-
+
P D +
(s + 1)2
6
126
0
-0.2
-0.4
-0.6
C =5 C =1
-0.8
-1
-1.2 =3
-1.4
-1.6
-1.8
-2
-5 -4.5 -4 -3.5 -3 -2.5 -2 -1.5 -1 -0.5 0
127
D 6D-
?
c - - 1 z-
+
s
Most controllers contain integral action. The integrator gives high gain at low
frequencies at the cost of a negative phase shift. In applications there is a limit
to the signal level from the integrator which is needed or useful. If the output
of the integrator is run through a saturation, the negative phase shift remains.
Therefor a circuit like the one in Figure 8.7 is sometimes used. If the gain of
the linear part of the dead zone is high enough, the output of the integrator will
never rise much above D. If the input is
c(t) = C sin t
128
3
log(abs(Y))
0
-1
-2
-3
-3
-2
-1
0 0
0.5
1
1
2
1.5
3 2
log(w) C
Looking at Example 8.5, equation (8.28), we see that the control system actually
acts like a linear system in B for small values of the bias. This is despite the fact
that the relay is a highly nonlinear component. The reason is the presence of
the oscillation with amplitude C. Its eect is to produce an average of the relay
gain around the hysteresis loop, which turns out to be almost linear for the bias
component. In the temperature control system the oscillation was produced as
a by-product of the relay action in the control loop. However it is also possible
to achieve similar eects by introducing external signals. Consider the following
situation
129
0
-0.5
arg(Y)
-1
-1.5
-2
-3
-2
-1
0 0
0.5
1
1
2
1.5
3 2
log(w) C
c -?
+
- f -
+
The signal d is periodic with a frequency which is high compared to the frequency
content of c. If d is a sine:
d(t) = C sin t
to
z(t) = Y0 (c(t), C)c(t)
130
6
D -
D
2D
Y0 1
C
r -
+ m e- u- y
F (s) G(s) -
6
where F is the controller and G is the controlled physical system. Suppose that
the physical system actually contains a nonlinearity and is described by
- G1 (s) - N - G2 (s) -
131
e -
+ m - - u
F (s)
6
G2
N G1
132
+ m e-
0 - u- y
f () G(s) -
6
From the condition (8.37) on f it is easy to see that the describing function
satises
Yf (C) (8.38)
We dene the average gain, f0 , and the deviation from the average gain, r:
+
f0 = , r= (8.39)
2 2
Since our intuitive motivation for the describing function technique is based on
the assumption that the harmonics are attenuated by G, it is natural to try
to estimate the extent of the attenuation. This can be done by calculating the
gains
G(3i), G(5i), G(7i), . . .
for a given ) (remember that we only consider oscillations with odd harmonics).
Dene the quantities
- -
- 1 -
-
k () = - + f0 -- , k = 3, 5, 7, . . . (8.40)
G(ki)
() = inf(3 (), 5 (), . . .) (8.41)
r2
() = (8.42)
() r
133
Theorem 8.1 Consider a system with the structure given by Figure 8.10 whose
nonlinearity satises (8.36) and (8.37). If
- -
- 1 -
- -
- G(ki) + f0 - > r, k = 1, 3, 5, . . . (8.43)
then there is no periodic solution with fundamental frequency and only odd
harmonics.
If the distance from every point of Yf (C) to 1/G(i) is greater than (),
then there is no periodic solution with fundamental frequency and only odd
harmonics.
1/G(i)
f0 r Yf
3
5 1/G(i)
Figure 8.11: Two situations when no oscillation can take place for a certain .
one has to look at the uncertainty band around 1/G(i) dened by the circles
of radius (). It is the possible intersection of this band with the Yf -locus
that is important. The geometrical situation is shown in Figure 8.12. Let C1
and C2 be the amplitudes for which the uncertainty bounds intersect Yf (C).
Let 1 and 2 be the frequencies corresponding to uncertainty circles which are
tangent to Yf from above and below. Together they dene an uncertainty
rectangle in the amplitude-frequency space:
We also dene o and Co to be the frequency and amplitude for the nominal
intersection between 1/G and Y , i.e. the values that the describing function
method would give us. The basic result is then as follows.
134
2
C2
C1
(o , Co )
1/G(i)
Figure 8.12: Intersection of 1/G and its uncertainty band with the locus of Yf .
Theorem 8.2 Consider a system with the structure given by Figure 8.10 whose
nonlinearity satises (8.36) and (8.37). Let there be an uncertainty band which
intersects the locus of Yf (C) in such a way that the set of (8.45) is well
dened. Let there be a unique intersection of 1/G(i) and Yf (C) in at o ,
Co . Assume that
dYf dImG(i)
(Co ) = 0, (io ) = 0
dC d
Then there exists a periodic solution, having odd harmonics only, of the form
+ m e-
0 - u- 3 y
f -
s(s + 1)2
6
where f is a saturation:
e |e| 1
f (e) = 1 e>1
1 e < 1
The describing function is
*
2 1 1
(arcsin C + C 1 C 2 ) C > 1
Yf (C) =
1 C 1
135
0.6
0.4
0.2
0.2
0.4
0.6
0.8
1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0
Figure 8.13: 1/G(i) for = 0.7, 0.75, 0.8, . . . , 1.5 with error circles. The solid
line is Yf .
In Figure 8.13 the inverse Nyquist curve is plotted together with Yf and some
error circles. The nominal solution is o = 1 and Co = 1.8. We see that 1
0.95 and that 2 is slightly less than 1.05. The uncertainty bounds intersect
the real axis at 0.59 and 0.72 corresponding to C1 = 1.6 and C2 = 2.1. We
conclude that there exists a periodic solution whose fundamental component
has
8.5 Exercises
8.1 Compute the describing functions for bias plus sinusoid for a piecewise
linear system:
136
2
1.5
0.5
0.5
1.5
2
0 5 10 15 20 25 30 35 40 45 50
6
-
8.2 Compute the describing function for a sinusoid without bias when the
nonlinearity is a relay with dead zone and hysteresis:
6
H
D1 D2 -
D2 D1
H
8.3 Consider the temperature control system of Example 8.5. Suppose the
nonlinearity is a relay with dead zone and hysteresis as described in the previ-
ous exercise. In which way is the system behavior altered? What happens if
additional time constants are introduced in the linear system?
137
r -
+ m e- u- 1 y
f -
s(s + 1)
6
where f is a saturation:
6
-
+ m e-
0 - u- y
f 2 -
s(s2 +s+1)
6
c -?
+
- f -
+
Suppose the dither signal is a sawtooth signal and the nonlinearity an ideal relay
(that is without dead zone or hysteresis). Show that the eective nonlinearity is
a saturation. How do the parameters of the saturation depend on the parameters
of the sawtooth signal?
138
.
139
Chapter 9
To follow a reference signal and reject disturbances is typically the main task
of a control system. When nonlinearities are present this requires some extra
care.
Consider the simple system of Figure 9.1. If we assume the reference signal to
be constant, the control system is described by the following equations
x = x3 + Ke (9.1)
r = 0 (9.2)
e=rx (9.3)
We see that the description contains three parts, a model of the system with
controller (9.1), a model for the reference signal (9.2) and a description of the
error signal (9.3). We would like the error to be zero, at least in the steady
state. However we get
(r e)3 = Ke (9.4)
r -
+ m e- u- x-
K x = x3 + u
6
140
- ()3
r - e ?
+ m-
K - mu- x = x3 + u x-
6
141
with input u (m-vector) and state x (n-vector). We assume that the control
objective can be expressed by an error signal e (p-vector):
e = h(x, w) (9.13)
x = f (x, u, w)
w = g(w) (9.14)
e = h(x, w)
Compare this with (9.1), (9.2), (9.3). To simplify calculations, we assume all
the functions f , g and h to be innitely dierentiable. In addition we postulate
that
f (0, 0, 0) = 0, g(0) = 0, h(0, 0) = 0 (9.15)
that is, the origin is an equilibrium point of the system for u = 0.
We want a control conguration that achieves the following objectives, the
Global Tracking Problem.
However we will have to relax the requirement and be content with solutions
that are guaranteed to work locally. There are many possible controller cong-
urations, but we will look at the following two typical cases.
Pure state feedback
u = k(x, w) (9.17)
Note that the feedback is from all states, including w. This means that we
are actually using a controller that has feed-forward from the reference and
disturbance signals.
Pure error feedback
u = k(), = m(, e) (9.18)
Here we assume that the error is the input to a dynamic controller, which is the
classical control conguration.
What assumptions should we make about the exosystem? In linear control
theory one often assumes that the exosystem has all its eigenvalues on the
imaginary axis or in the right half plane. This is because modes of the exosystem
that decay to zero are trivial, since they do not contribute to the error as time
goes to innity. On the other hand it is natural to allow instability, since
one might be interested in tracking signals that are growing, like ramps. For
nonlinear systems however, unbounded signals are dicult to handle, so we will
assume that the exosystem is stable. To ensure that the exosystem is dicult
enough to require some kind of control action asymptotically, we will introduce
the following notion.
142
Denition 9.1 Consider a dynamic system
w = g(w), w(0) = w0 (9.19)
with solution w(t) = (t, w0 ). An initial value w0 is said to be Poisson stable
if, for every neighborhood U of w0 and every T > 0 there exist t1 > T and
t2 < T such that (t1 , w0 ) U and (t2 , w0 ) U .
Poisson stability of a state thus means that the solution comes back almost to
the same point, innitely many times. Summarizing, we make the following
assumption.
Assumption I. The origin is a stable equilibrium of the exosystem, and there
is a neighborhood of the origin, where every w is Poisson stable.
A system satisfying Assumption I is sometimes said to be neutrally stable. Let
us now try to solve the problem for the feedback case, by looking at the lin-
earizations at the origin. The local description of the system is
x = Ax + Bu + F w + 1 (x, u, w)
w = Gw + (w) (9.20)
e = Cx + Dw + 2 (x, w)
where 1 , 2 and are functions that vanish at the origin, together with their
rst order derivatives, and
A = fx (0, 0, 0), B = fu (0, 0, 0), F = fw (0, 0, 0), G = gw (0) (9.21)
C = hx (0, 0), D = hw (0, 0) (9.22)
If we assume a feedback
u = k(x, w) = Kx + Lw + 3 (x, w) (9.23)
then the dynamics of the closed loop system becomes
d x A + BK BL + F x
= + (x, w) (9.24)
dt w 0 G w
where is a function that vanishes at the origin together with its Jacobian.
Let us consider the eigenvalues of the linear part. If the linearized system is
stabilizable we can choose K so that A + BK has all its eigenvalues in the left
half plane. The stability of the exosystem implies that G can have no eigen-
values with positive real part. The Poisson stability means that there can be
no eigenvalues with negative real part. The matrix G thus has all its eigen-
values on the imaginary axis. Systems with the property that the linearization
has some eigenvalues on the imaginary axis have received considerable intention
and there exists a collection of results, known as center manifold theory. We
will consider it in the next section.
143
where x is an n-vector and f is a k times (k 2) continuously dierentiable
function. The linearization is then
y = Ay (9.26)
g(x) = 0 (9.27)
Theorem 9.1 For the system (9.25) there exist invariant manifolds Ws (the
stable manifold), Wu (the unstable manifold) and Wc (the center manifold)
that are tangent to Es , Eu and Ec respectively at the origin.
y = Gy + g(y, z)
(9.28)
z = Hz + h(y, z)
where G is a matrix having eigenvalues with strictly negative real parts, and H
is a matrix whose eigenvalues all lie on the imaginary axis. The functions g and
h are zero at the origin together with their Jacobians. The center manifold can
then locally be described by a function
y = (z) (9.29)
(z)
(Hz + h((z), z)) = G(z) + g((z), z) (9.31)
z
which is a partial dierential equation for from which we can in principle
calculate the center manifold.
144
1
0.8
0.6
0.4
0.2
y
-0.2
-0.4
-0.6
-0.8
-1
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
x
Figure 9.3: Phase portrait for (9.32). The stable and center manifolds are solid
while various trajectories are dash-dotted.
x = x + y 2
(9.32)
y = y 3 + x3
The subspaces Es and Ec are the x-axis and y-axis respectively. In Figure 9.3
the phase plane is shown. The stable manifold is shown as a solid curve and
is tangent to the x-axis as expected. All trajectories that do not start on the
stable manifold tend to approach the same curve asymptotically. This curve,
which is tangent to the y-axis is a center manifold. The equation for the center
manifold (9.31) becomes
The center manifold is thus locally a parabola, symmetric about the positive
x-axis. Substituting the expression for into the system equations gives
y = y 3 + y 6 + O(y 8 ) (9.36)
as the dynamics on the center manifold. Solutions that start on the manifold
close enough to the origin will thus converge slowly to the origin.
In the example solutions seem to approach the center manifold rapidly. This
behavior is typical.
145
Theorem 9.2 Suppose y = (z) is a center manifold of (9.28) at the origin.
There is a neighborhood U of the origin and positive numbers K and C such
that, if y(0), z(0) is in U then
x = f (x, u, w)
w = g(w) (9.39)
e = h(x, w)
Denition 9.3 We will look at a local version of the global tracking problem
presented in section 9.2. The local state feedback tracking problem consists of
nding a controller
u = k(x, w) (9.40)
such that
2. All solutions of
x = f (x, k(x, w), w)
w = g(w) (9.42)
e = h(x, w)
Now consider (9.24). We realize that there must exist a center manifold
x = (w) (9.44)
146
Since solutions starting on the center manifold remain there, we get
x = w w (9.45)
Theorem 9.3 If the local state feedback tracking problem is solvable, then the
pair A, B is stabilizable and there exist functions c(w) and (w) satisfying
Proof. Equation (9.47) was shown in (9.46). To show (9.48) consider a point
(w0 , (w0 ) on the center manifold. For any > 0 and any T > 0 we can, by
Assumption I, nd a t > T such that |w(t) w0 | < . Since is smooth, we
can actually nd a t > T such that
For any point on the center manifold the solution will thus come back arbitrarily
close to that point innitely many times. The only way of achieving the require-
ment e(t) 0 is then to have the error equal to zero on the center manifold,
that is
h((w), w) = 0 (9.50)
To get exponential stability we see from (9.24) that there has to be a K such
that A+BK has all its eigenvalues strictly in the left half plane. This is precisely
the denition of stabilizability for the pair A, B.
The conditions of the theorem are also sucient as shown by the construction
of the following theorem.
The linearization at the origin of f (x, k(x, 0), 0) is (A + B kx (0), showing the
exponential stability. The closed loop system will then be given by
(w)), w)
x = f (x, c(w) + k(x
(9.53)
w = g(w)
147
The right hand side has the linearization
A + B kx (0) x
(9.54)
0 G w
(w)), w) gives f ((w), c(w), w), so
Replacing x with (w) in f (x, c(w) + k(x
the center manifold equation for (9.53) is precisely the rst equation of (9.47).
Equation (9.48) shows that the error is zero on the center manifold. Since Theo-
rem 9.2 shows exponential convergence to the center manifold we conclude that
the error decays exponentially, so property 2 of Denition 9.3 is also satised.
Example 9.2 Consider the simple control system of Section 9.1. The system
dynamics without the controller is
x = x3 + u
r = 0
e=rx
The center manifold equations are
0 = (r)3 + c(r), 0 = r (r) (9.55)
giving
(r) = r, c(r) = r3 (9.56)
Modifying the P-controller according to (9.51) gives
u = r3 + K(r x) (9.57)
which is precisely the compensation shown in Figure 9.2.
Denition 9.4 The local error feedback tracking problem consists of nding a
controller
u = k()
(9.60)
= m(, e)
such that
148
1. The closed loop system
x = f (x, k(), 0)
(9.61)
= m(, h(x, 0))
is exponentially stable at the origin.
2. All solutions of
x = f (x, k(), w)
w = g(w)
(9.62)
= m(, h(x, w))
e = h(x, w)
starting suciently close to the origin, are such that
lim e(t) = 0 (9.63)
t
To formulate the conditions for solving the local error feedback tracking problem
it is useful to have the following concept.
d
Equation (9.68) in the denition is another way of saying that dt (x) = f( (x)),
for a solution to (9.64) i.e. that solutions to the x-system are carried into
solutions to the x-system. Equation (9.69) shows that this is done in such a
way that the output is the same. The denition thus says that any output that
can be produced by (9.64), (9.65) can also be produced by (9.66), (9.67) by
taking x(0) = (x(0)).
We can now state the basic result.
Theorem 9.5 Consider the local error feedback tracking problem with assump-
tion I satised. It is solvable if and only if there exist functions (w) and c(w)
with (0) = 0, c(0) = 0 such that
w (w) g(w) = f ((w), c(w), w)
(9.70)
h((w), w) = 0
149
and such that the system
w = g(w)
(9.71)
u = c(w)
= ()
(9.72)
u = ()
detectable.
such that for solutions of (9.62) the error goes to zero at least locally at the
origin. Dene M = m (0, 0), N = me (0, 0), K = k (0). Linearizing (9.62) at
the origin we get
x A BK F x
d
= N C M N D + (x, , w) (9.76)
dt
w 0 0 G w
where is a remainder term which is zero at the origin together with its Jaco-
bian. From the center manifold theorem it follows analogously to the proof of
Theorem 9.3 that there exist mappings x = (w), = (w) such that
Dening c(w) = k((w)) we get the rst equation of (9.70) from (9.77). The
second equation of (9.70) is shown using the same argument as in the proof of
Theorem 9.3. Dening () = m(, 0) and () = k() is is seen from (9.78)
that (9.71) is immersed into (9.72).
From (9.76) it follows that the matrix
A BK
NC M
has all its eigenvalues strictly in the left half plane. Since
A BK A 0 B
= + K 0
NC M NC M 0
150
it follows that
A 0 B
,
NC M 0
is stabilizable and since
A BK A BK 0
= + C 0
NC M 0 M N
it follows that
A BK
, C 0
0 M
is detectable.
Suciency. Since
A 0 B
,
NC M 0
is stabilizable it follows that
A BK B
,
NC M 0
then has all its eigenvalues strictly in the left half plane.
Now construct the following controller
= () + N e
+ Be
= A (9.80)
+ ()
u = C
151
The closed loop system is then described by
x A BK B C x
d
= N C M 0
+ higher order terms
dt BC
0 A
w 0 0 0 G w
The block matrix in the upper left hand corner is identical to the matrix J of
(9.79) which has all its eigenvalues strictly in the left half plane. The exponential
stability condition is thus satised. Let be the mapping from (9.71) to (9.72)
dened by the immersion. Then x = (w), = (w) denes the center manifold.
It follows from the second equation of (9.70) that the error is zero on the center
manifold. From Theorem 9.2 it follows that the error goes to zero as t goes to
innity.
Remark 9.1 The condition that (9.71) is immersed in (9.72) means that the
controller contains a model of the exosystem. This is clearly seen in the con-
troller construction (9.80). Sometimes this fact is referred to as the internal
model principle.
Remark 9.2 Our controller (9.80) is linear except for the terms and . This
is sucient to show that the tracking problem is solved locally. In practice
one would probably want to try a nonlinear controller to extend the region of
convergence.
Remark 9.3 It is easy to see that the pair (9.73) is stabilizable only when
A, B. Similarly detectability of (9.74) requires detectability of A, C. A necessary
condition for solving the local error feedback tracking problem is therefore that
the controlled system has a linearization which is stabilizable and detectable.
152
Example 9.4 Modify the previous example so that
x = x x3 + u (9.86)
r = 0 (9.87)
e=rx (9.88)
= 0, u = + 3
has already its eigenvalues in the left half plane, so we can take the controller
= e, u = + 3
9.6 Exercises
9.1 Calculate the center manifold of the system
x = x + y + y 2
(9.91)
y = x y
x = x2
(9.92)
y = y
Show that there are in fact innitely many center manifolds and compute them
all.
9.3 Consider Example 9.4 and take the linear part of the controller, i.e.
= e, u=
Compare the performance with the nonlinear controller, especially for large steps
in the reference signal. Discuss the result.
153
9.4 For a linear plant with linear exosystem the conditions for solving the
tracking problem are a set of linear matrix equations. What are they?
x 1 = u
x 2 = x1 + v 3
154
Chapter 10
L(q, q) V (q)
= T (q, q) (10.1)
Q = F (q)
+ d + Bu (10.4)
where F is some generalized force generated by the motion (often some type
of friction), d is an external disturbance and u is the control. The generalized
force F is assumed to satisfy
0,
qT F (q) F (0) = 0 (10.5)
155
For control purposes (10.2) therefore takes the form
d T
L LTq = F (q) + d + Bu (10.6)
dt q
If the vectors u and q have the same size and B is nonsingular the system is said
to be fully actuated, while the case of fewer components in u than q is called
under-actuated.
u
M
q2
q1
m
The system is described by the position of the cart (q1 ) and the angle of the
pendulum (q2 ). The kinetic energy is
1 M + m m cos q2 q1
T = q1 q2
2 m cos q2 m2 q2
Here we have assumed the pendulum to be a point mass m at the end of the
rod. The potential energy is given by
V = mg cos q2
If we assume that F has the form
b 0
F = 1 q
0 b2
then the generalized force is
b1 0 1
Q= q + u
0 b2 0
Note that this is an under-actuated system.
To show that the Lagrangian formalism can be used also for non-mechanical
systems we consider an electrical circuit.
R1 (x2 ) L1
x2
u C1
156
Let q = x1 be the charge on the capacitor. Then q = x2 is the current into the
capacitor which is also the common current all through the series circuit. Now
T becomes the energy of the inductor
L1 2
T = q
2
while V is the energy in the capacitor
1 2
V = q
2C1
The Lagrangian is then
L1 2 1 2
L= q q
2 2C1
The generalized forces will correspond to voltages, composed of external signals
and dissipation, i.e. voltage drops across resistors. In this case one gets
Q = u R1 (q)
x 1 = x2
1
x 2 = (u x1 /C1 R1 (x2 ))
L1
in accordance with circuit theory.
Equilibria
Vq (q) = 0 (10.7)
The equilibria are therefore the stationary points of the potential function.
Systems satisfying Lagranges equations have several nice properties that are
related to the following result.
157
the following relation holds
d
= qT F (q)
H(q, q) + qT Bu (10.9)
dt
where H(q, q)
= T (q, q)
+ V (q) can be interpreted as the total energy.
d d d d
H = (T + V ) = (2T T + V ) = (Lq q L) =
dt dt dt dt
d d
= Lq q + Lq q Lq q Lq q = Lq Lq q = qT (F (q)
+ Bu)
dt dt
Proof. Since V is assumed bounded from below, this is true also for H so that
H c for some constant c. From (10.9) then follows that
T
+ H(x(T )) c
y T udt + H(x(0)) = qT F (q)
0
so that T
y T udt + (x(0)) 0
0
with = H c.
For the potential V there is precisely one point qo such that Vq (qo ) = 0
2 qT q.
The dissipative force satises qT F (q)
158
Proof. From the rst two conditions follows that H is radially unbounded.
Using (10.9) gives
d
= qT F (q)
H(q, q) 0
dt
with equality only for q = 0. If q = 0 along a trajectory, then from (10.8) one
must have Vq (q) = 0 which implies that q = q0 . Theorem 5.1 is then applicable.
For a fully actuated system the matrix B is square and invertible. It is then no
restriction to assume that B is a unit matrix so that the system dynamics is
d T
LTq (q, q)
L (q, q) = F (q)
+u (10.10)
dt q
Suppose one wants to control a Lagrangian system around a constant set point
qr . This means that qr has to be an equilibrium point for the closed loop system.
If one wants to keep the Lagrangian structure this means (according to (10.7))
that the potential has to be changed so that qr becomes a stationary point. This
can be done by dening a new potential W with a minimum at qr and using
the control
u = VqT (q) WqT (q)
d T
L (q, q)
LTq (q, q)
= F (q)
dt q
d T
L (q, q)
LTq (q, q)
= (F (q)
+ Kd q)
dt q
159
10.2 Interconnected systems
Many engineering systems consist of interconneted simple systems. This fact is
reected by modeling concepts like bond graphs and is used in object oriented
modeling languages like Modelica. The Hamiltonian modeling techniques of
classical physics can be adapted to cover systems of this type and also give a
framework for design of controllers.
Storage elements
A basic idea is that energy is stored in simple elements that are linked together.
Each storage element is assumed to have the following properties.
These properties are consistent with those of a C-element in bond graph theory.
For an I-element the roles of eort and ow are reversed.
Now assume that there are n storage elements and that each element is described
by a stored variable xi , a ow fi , an energy storage function Hi (xi ) and en eort
ei = dHi /dxi . We introduce the vectors
x1 f1 e1
.. .. ..
x = . , f = . , e = .
xn fn en
For simplicity it is assumed that the total energy H is just the sum of the enrgies
stored in the individual components (i.e. there are no phenomena like mutual
incuctances between components).
f = Me (10.13)
for some matrix M . This is true in circuit theory (Kirchos laws) and for bond
graphs (p- and s-junctions). It is assumed that the interconnection itself does
not store, dissipate or generate energy. This means that the total power eT f
going into the interconnection has to be zero so that, for all e,
0 = eT f = eT M e = eT M T e eT (M + M T )e = 0 M = M T
160
i. e. the matrix M has to be skew-symmetric.
The interconnected systems we have described are described by
H H
x = f = M e = M Hx (x)T , Hx = ( ,..., ) (10.14)
x1 xn
with M skew-symmetric. Systems of this form are called Hamiltonian with
Hamilton function H. Since H = Hx x = Hx M HxT = 0 the total energy is
constant.
Now assume that some eorts and ows are not connected to storage elements
but are inputs and outputs. Partition the vectors and M as
ex fx Mxx Mxu
e= , f= , M=
eu fy Mux
T
0
where ex , fx are connected to storage elements, eu = u is the input and fy = y
is the output. The system description is then
The input uR and the output yR are then connected by some mathematical
relation uR = (x, yR ). Assuming this relation to have the form uR = R(x)y R
with R 0, the model is then
161
where R(x) = g(x)R(x)g T
(x) 0. A model of the form (10.18), where J is a
skew symmteric matrix and R a non-negative denite matrix, is called a port
controlled Hamiltonian system with dissipation. The structure of the system
immediately gives the following result.
x1
162
where the spring is nonlinear with spring force e1 = x1 + x31 and the damping is
linear with force bv. If the state variable x1 is the position, the spring energy is
x21 x4
H1 (x1 ) = + 1
2 4
Let the mass be m and dene x2 = mv. Then the kinetic energy is
x22 x2
H2 (x2 ) = , e 2 = Hx 2 = =v
2m m
The ow variables are
f1 = x 1 = v, f2 = x 2 = total force
f1 = e2
f2 = u e1 be2
There are basically two things you can do, using state feedback, if you want to
keep the Hamiltonian structure. The rst one is to change the energy function
H, the second one is to change the damping given by R. To change H one can
use a control u = k(x) + v satifying
T = g(x)k(x)
(J(x) R(x))H x (10.20)
The structures in equations (10.20) and (10.21) impose restrictions on what can
be achieved by state feedback while keeping the Hamiltonian structure. This is
seen in the following example.
163
Example 10.5 Consider again Example 10.4. Equation (10.20) becomes
x2 = 0
H
x1 = k(x)
H
showing that H has to depend only on x1 . It is also clear from the second
equation that the x1 -dependence of H can be chosen arbitrarily by choosing k
suitably. It is therefore possible to place a stable equilibrium (a minimum of H)
at any x1 -value. From (10.21) it is seen that R can be chosen to be of the form
0 0
0 b
164