ADAPTIVE NONLINEAR CONTROL IN ACTIVE SUSPENSIONS
1
Jung-Shan Lin and Ioannis Kanellakopoulos
UCLA Electrical Engineering
Los Angeles, CA 90095-1594
Abstract. We study the sensitivity of a recently developed nonlinear control scheme
with respect to variations in the parameters of the active suspension. Based on com-
parative simulation results, we conclude that the parameters of the hydraulic actuator
dynamics are the ones to which closed-loop system performance is most sensitive. In
fact, it is enough to estimate only one parameter in order to guarantee good per-
formance, while variations in the remaining parameters can be dealt with through
judicious choice of the controller parameters. We use tuning functions for our adap-
tive backstepping scheme, and provide guidelines for the choice of the �xed controller
parameters.
Keywords. Active vehicle suspension, adaptive control, nonlinear control, robust
performance, sensitivity analysis.
Preprints of the 13th IFAC World Congress, San Francisco, CA, July 1996, vol. F, pp. 341{346 (Invited Paper).
1. INTRODUCTION
Active suspension designs aspire to improve the inher-
ent tradeo� between passenger comfort and road han-
dling. However, they introduce the additional consid-
erations of suspension travel and power consumption,
which must be factored into the overall design goals.
In our recent papers (Lin and Kanellakopoulos, 1995,
1996) we exploited the
exibility of backstepping (Krsti�c
et al., 1995) to improve the tradeo� between ride qual-
ity and suspension travel. Our resulting nonlinear con-
troller does not only handle the inherent nonlinear na-
ture of the hydraulic dynamics, but also introduces addi-
tional nonlinearities to make the suspension sti�er near
its travel limits. This intentional infusion of nonlinear-
ity represents a departure from previous designs which
attempt to produce linear closed-loop systems (Thomp-
son, 1984; Hrovat, 1990; Alleyne et al., 1993).
In this paper we are concerned with the sensitivity of the
aforementioned nonlinear scheme with respect to varia-
tions in the parameters of the active suspension plant.
1
This work was supported in part by NSF under Grants ECS-
9309402 and ECS-9502945.
Adaptation is one common way of enhancing robustness
to parameter variations, and there are several method-
ologies for incorporating adaptation into backstepping
designs (Krsti�c et al., 1995). However, as our model
(presented in Section 2) involves at least ten parame-
ters, making our controller adaptive with respect to all
of them would result in a highly complex and computa-
tionally demanding algorithm. Hence, we would like to
adapt as few parameters as possible while maintaining
a high level of system performance. To this end, we per-
formed a series of comparative simulations whose results
are summarized in Section 3. These simulations showed
that our controller is quite robust to reasonable varia-
tions in all but one of the plant parameters. Hence, this
is the parameter for which we adapt in Section 4. Fur-
thermore, our results yield guidelines on how to choose
the non-adaptive controller parameters to enhance the
closed-loop system robustness with respect to variations
in the remaining plant parameters.
2. ACTIVE SUSPENSION
Quarter-car models are very often used for suspension
analysis and design, because they are simple yet capture
Q
-
hydraulic
actuator
�
�
�
�
�
�
�
�
K
a
C
a
d
6
x
s
6
x
w
6
r
�
�
�
�
�
�
�
�
M
b
car body
wheel
M
us
K
t
�
�
�
�
�
�
�
Fig. 1. Quarter-car model for active suspension design
with parallel connection of hydraulic actuator with
passive spring/damper.
many important characteristics of the full model. Fig-
ure 1 shows a quarter-car model of an active suspension
system, in which the single wheel and axle are connected
to the quarter portion of the car body through a pas-
sive spring-damper combination and an active element{
hydraulic actuator in parallel. The motion equations of
the system are
M
b
x
s
+K
a
(x
s
� x
w
) + C
a
( _x
s
� _x
w
)� u
a
= 0
M
us
x
w
+K
a
(x
w
� x
s
) + C
a
( _x
w
� _x
s
)
+K
t
(x
w
� r) + u
a
= 0 ;
(1)
where M
b
and M
us
are the masses of car body and
wheel, x
s
and x
w
are the displacements of car body and
wheel, K
a
and K
t
are the spring coe�cients, C
a
is the
damper coe�cient, r is the road disturbance and u
a
is
the control force from the hydraulic actuator. Many ex-
isting results ignore the hydraulic dynamics of the ac-
tive element, and use u
a
as the control input (Hrovat,
1990; Thompson, 1984). Following Alleyne et al. (1993),
we include the actuator dynamics in our design. There-
fore, we discuss some basic concepts of the dynamics of
hydraulic actuators (Merritt, 1967).
The hydraulic actuator we use here is a four-way valve-
piston system. The force u
a
from the actuator is
u
a
= AP
L
; (2)
where A is the area of piston and P
L
is the pressure
drop across the piston. Following Merritt (1967), the
derivative of the pressure drop P
L
and the hydraulic
load
ow Q are given by:
V
t
4�
e
_
P
L
= Q� C
tp
P
L
�A( _x
s
� _x
w
) (3)
Q= sgn[P
s
� sgn(x
v
)P
L
]C
d
wx
v
r
1
�
jP
s
� sgn(x
v
)P
L
j ;
(4)
where V
t
= total actuator volume, �
e
= e�ective bulk
modulus of system, C
tp
= total leakage coe�cient of
piston, C
d
= discharge coe�cient, w = spool valve area
gradient, x
v
= displacement of spool valve, � = hy-
draulic
uid density, and P
s
= supply pressure. In ad-
dition, the spool valve displacement is controlled by the
input to servovalve u, and their relationship is approx-
imated by a linear �lter with time constant � and unit
steady-state gain:
_x
v
=
1
�
(�x
v
+ u) : (5)
Choosing the state variables x
1
= x
s
, x
2
= _x
s
, x
3
= x
w
,
x
4
= _x
w
, x
5
= P
L
and x
6
= x
v
, we rewrite (1){(5) as
_x
1
= x
2
_x
2
=�
1
M
b
[K
a
(x
1
� x
3
) + C
a
(x
2
� x
4
)�Ax
5
]
_x
3
= x
4
_x
4
=
1
M
us
[K
a
(x
1
� x
3
) + C
a
(x
2
� x
4
)�Ax
5
(6)
�K
t
(x
3
� r)]
_x
5
=��x
5
� �A(x
2
� x
4
) +
x
6
w
3
_x
6
=
1
�
(�x
6
+ u) ;
where � =
4�
e
V
t
, � = �C
tp
,
= �C
d
w
q
1
�
and
w
3
= sgn[P
s
� sgn(x
6
)x
5
]
p
jP
s
� sgn(x
6
)x
5
j : (7)
The nonlinear control design of (Lin and Kanellakopou-
los, 1995, 1996) aims to improve the ride quality without
letting the suspension travel reach its limits. To this end,
the regulated output is chosen as
z
1
= x
1
� �x
3
; (8)
where x
1
is the car body displacement and �x
3
is the
output of the nonlinear �lter
_
�x
3
= �(�+ �
1
'(�))(�x
3
� x
3
) : (9)
In (9), � is a positive constant, �
1
is a nonnegative con-
stant, � = x
1
� x
3
is the suspension travel, and the
nonlinear function '(�) is de�ned as follows:
'(�) =
8
>
>
>
>
<
>
>
>
>
:
�
� �m
1
m
2
�
4
; � > m
1
0 ; j�j � m
1
�
� +m
1
m
2
�
4
; � < �m
1
;
(10)
where m
1
� 0 and m
2
> 0. The nonlinear �lter (9)
is the key ingredient of our design, since for �
1
> 0
342
Parameter Percent of error In
uence
M
b
+20% s.b.
�20% s.w.
M
us
+20% s:b:
�
�20% s.w.
K
a
+20% s.w.
�20% s.b.
C
a
+20% s:b:
�
�20% s.w.
K
t
+20% s.w.
�20% s:b:
�
� +20% s:b:
�
�20% s:w:
�
A +10% m.w.
�10% m.w.
� +10% m.w.
�10% m.w.
� +20% n.c.
�20% n.c.
+10% m.w.
�10% m.w.
� means the conclusion is not uniform
over the whole simulation interval
Table 1. Sensitivity of closed-loop system
performance to errors in the estimated sys-
tem parameters.
its bandwidth increases rapidly when the magnitude of
the suspension travel � exceeds the threshold m
1
. As
a result, for high-frequency road inputs, the regulated
output (8) approximates the car body displacement for
j�j < m
1
, but approaches the suspension travel � when
j�j > m
1
.
3. PARAMETER ANALYSIS
The resulting nonlinear controller improves the tradeo�
between ride quality and suspension travel in the active
suspension design. However, this improvement is guar-
anteed only under the assumption of perfect parameter
knowledge. To study the sensitivity of our closed-loop
system performance to variations in the plant parame-
ters, we conducted a series of simulations using the fol-
lowing standard values (Alleyne et al., 1993):
M
b
= 290 kg � = 1=30 sec
M
us
= 59 kg A = 3:35� 10
�4
m
2
K
a
= 16812 N=m � = 4:515� 10
13
N=m
5
C
a
= 1000 N=(m=sec) � = 1 sec
�1
K
t
= 190000 N=m
= 1:545� 10
9
N=(m
5=2
kg
1=2
) :
(11)
Table 1 summarizes the e�ect of errors in the values of
various parameters used by the controller, which we call
estimates even though they are constant, with respect
to the true values of the system parameters. The ab-
breviations s.b., s.w., m.w. and n.c. stand for slightly
better, slightly worse, much worse and no visible change
compared to the original system response respectively.
While we cannot present all the relevant simulation re-
0 1 2 3−9
−4
0
4
8
12
time (sec)
body acceleration
0 1 2 30
0.005
0.01
0.015
0.02
0.025
time (sec)
body travel
0 1 2 3−0.085
−0.05
0
0.05
0.085
time (sec)
suspension travel
0 1 2 3−0.03
0
0.03
0.06
0.09
time (sec)
wheel travel
0 1 2 3−10
−5
0
5x 10
6
time (sec)
load pressure
0 1 2 3−0.01
−0.005
0
0.005
0.01
time (sec)
valve opening
Fig. 2. E�ect of errors in the estimates of M
b
and K
a
.
m
s
2
m
N
m
2
m
m
m
sults here, Figure 2 shows the e�ect of combined errors
in the car body mass M
b
and the spring constant K
a
.
The solid line stands for zero errors, while the dashed
line represents errors of +20% in M
b
and �20% in K
a
,
and the dotted line errors of �20% in M
b
and +20% in
K
a
. These changes were selected because they produce
compounding, rather than opposing, e�ects on system
performance. Nevertheless, we see that all three curves
almost overlap, which implies that the closed-loop sys-
tem is quite robust with respect to these parameters.
Table 1 also indicates that the closed-loop system ro-
bustness can be further enhanced if we overestimate the
parametersM
b
,M
us
, C
a
or � , and underestimate the pa-
rameters K
a
or K
t
. Indeed, this is veri�ed by the results
of Figure 3, which compares the system response when
the estimates of these six parameters are all changed in
the \s.b." direction (dashed line) and in the \s.w." di-
rection (dotted line) with the case when the estimates
are equal to the true values (solid line). We see that the
dashed line is almost uniformly better than the solid
line, while the dotted line is uniformly worse.
From Table 1, it seems that A, � and
are the three
most in
uential parameters: The closed-loop system per-
formance is much worse whenever their estimates are
343
0.5 0.6 0.7 0.8−20
−10
0
10
15
time (sec)
body acceleration
0.5 0.6 0.7 0.8−0.005
0
0.01
0.02
0.026
body travel
time (sec)
0.5 0.6 0.7 0.8−0.085
−0.05
0
0.05
0.085
time (sec)
suspension travel
0.5 0.6 0.7 0.8−0.04
0
0.03
0.06
0.09
time (sec)
wheel travel
0.5 0.6 0.7 0.8−2
−1
0
1x 10
7
time (sec)
load pressure
0.5 0.6 0.7 0.8−0.01
−0.005
0
0.005
0.01
time (sec)
valve opening
Fig. 3. Robustness enhancement with respect to changes
in M
b
, M
us
, K
a
, C
a
, K
t
, and � .
m
s
2
m
N
m
2
m
m
m
incorrect. It would therefore seem necessary to generate
on-line estimates of these three parameters for adap-
tive nonlinear control. However, further investigation re-
vealed the following interesting facts about these three
parameters:
� If the estimates of A, � and
are incorrect (within
�10% of the correct values) but in such a way that
the estimated value of the term
�A
is very close to
its true value, then the closed-loop system perfor-
mance is almost identical to the original one.
This implies that it is not necessary to estimate all three
parameters in our adaptive control design. Producing
an on-line estimate of only the coe�cient �A should be
enough to achieve good performance, since errors in
can be compensated for by accordingly adjusting the es-
timate of �A, even if that means moving it away from its
true value. After all, our objective here is not to estimate
the plant parameters, but to achieve good performance
with minimal increase in controller complexity.
4. ADAPTIVE BACKSTEPPING DESIGN
If we consider � = �A as the only unknown parame-
ter in the system (6), we can design an adaptive con-
troller which uses an estimate
^
�. The design procedure
uses adaptive backstepping with tuning functions and
is outlined next. The �rst two steps of the procedure
are identical to those of Lin and Kanellakopoulos (1995,
1996) since the unknown parameter does not appear in
the �rst two equations. Only the third and fourth steps
are di�erent:
Step 1: Starting with the regulated output z
1
from (8),
we use x
2
as the virtual control in the _z
1
-equation, and
introduce the error variable z
2
= x
2
� �
1
, where �
1
is
the �rst stabilizing function.
Step 2: Let �x
5
= �x
5
, with � a positive constant which
rescales x
5
(this rescaling is very useful for reducing the
numerical integration errors in our simulations). We use
�x
5
as the virtual control in the _z
2
-equation, de�ne z
3
=
�x
5
� �
2
, and choose the second stabilizing function �
2
.
Step 3: Our choice of virtual control in the _z
3
-equation
is x
6
w
3
, with w
3
de�ned in (7). We then introduce the
error variable z
4
= x
6
w
3
� �
3
and choose the third sta-
bilizing function �
3
. Since the unknown parameter � =
�A appears for the �rst time in this step, we de�ne the
estimate error as
~
� = ��
^
� with
^
� our estimate of �, and
choose the �rst tuning function �
3
for the update law.
Step 4: Since the actual control u appears in this step,
we can �nally determine the control law u and the up-
date law
_
^
�. The resulting update law is
�
_
^
� = ��
4
= �(�
3
+ �
4
z
4
) ; (12)
where � is the adaptation gain (� > 0), �
3
= �
3
z
3
,
�
4
= �
3
+ �
4
z
4
and
�
3
=�(x
2
� x
4
) (13)
�
4
=�
�
1
2�jw
3
j
jx
6
j+
1
�
(��c
3
+ � +m
t
M
b
�
�
4
)
�
�
3
(14)
m
t
=
1
M
b
+
1
M
us
�c
3
= c
3
+ c
2
+ c
1
+ b
3
h
2
3
�
�
4
=
C
a
M
b
� (�+ �
1
'(�)) � �
1
d'
d�
� ;
and the resulting control law is
u =
�
w
3
�
4
; (15)
where �
4
is the last stabilizing function. With these
choices, the closed-loop error system (in the z-coordinates)
becomes:
344
_z
1
=�c
1
z
1
� (�+ �
1
'(�))z
1
+ z
2
_z
2
=�c
2
z
2
� z
1
+
A
�M
b
z
3
_z
3
=�c
3
z
3
�
A
�M
b
z
2
+ �
z
4
+ d
3
r (16)
+n
3
h
3
r � b
3
h
2
3
z
3
+ �
~
��
3
_z
4
=�c
4
z
4
� �
z
3
+ d
4
r + n
4
h
4
r � b
4
h
2
4
z
4
+ �
~
��
4
;
where c
1
, c
2
, c
3
, c
4
, b
3
and b
4
are positive design con-
stants, n
3
= n
4
=
�M
b
K
t
AM
us
and
d
3
= n
3
(
C
a
M
b
� �) (17)
h
3
=��
1
'(�)� �
1
d'
d�
� (18)
d
4
= (c
3
+ c
2
+ c
1
)
d
3
�
+
K
t
AM
us
(K
a
�m
t
C
2
a
+ �m
t
C
a
M
b
) (19)
h
4
=
�c
3
�
h
3
+
b
3
�
h
2
3
(
C
a
M
b
� �)
�
1
�
�
�
A
M
b
^
� + 2�
1
d
2
'
d�
2
(x
2
� x
4
)�
�c
1
�
1
d'
d�
z
1
+ 4�
1
d'
d�
(x
2
� x
4
)
�m
t
C
a
�
1
'(�) �m
t
C
a
�
1
d'
d�
�
�
: (20)
Now let us consider the partial Lyapunov function
V =
1
2
(z
2
1
+ z
2
2
+ z
2
3
+ z
2
4
) +
1
2�
(�
~
�)
2
: (21)
From (12) and (16), the derivative of (21) is computed
as
_
V = z
1
_z
1
+ z
2
_z
2
+ z
3
_z
3
+ z
4
_z
4
�
1
�
(�
~
�)(�
_
^
�)
=�(c
1
+ �+ �
1
'(�))z
2
1
� c
2
z
2
2
� c
3
z
2
3
� c
4
z
2
4
+d
3
z
3
r + n
3
h
3
z
3
r � b
3
h
2
3
z
2
3
+d
4
z
4
r + n
4
h
4
z
4
r � b
4
h
2
4
z
2
4
: (22)
Since the road disturbance r is unknown, we can not
cancel the cross terms in (22) by using the control u and
the update law
_
^
�. Furthermore, since the
_
V -equation
does not contain a negative de�nite term in the pa-
rameter error
~
�, we cannot conclude boundedness of
the error signals. The fact that adaptive systems can
become unbounded in the presence of disturbances if
no appropriate robustness modi�cations are used, is a
well-known fact in adaptive control theory. Fortunately,
there is a host of modi�cations that we can employ,
most notably smooth projection and smooth switching
�-modi�cations (Ioannou and Sun, 1996), to guarantee
boundedness of
~
�. Then, the boundedness of the other
error signals follows from (22) if we rewrite it, using
completion of squares, as:
_
V =�(c
1
+ �+ �
1
'(�))z
2
1
� c
2
z
2
2
�
1
2
c
3
z
2
3
�
1
2
c
4
z
2
4
�
c
3
2
�
z
3
�
d
3
c
3
r
�
2
�
c
4
2
�
z
4
�
d
4
c
4
r
�
2
�b
3
�
h
3
z
3
�
n
3
2b
3
r
�
2
� b
4
�
h
4
z
4
�
n
4
2b
4
r
�
2
+
d
2
3
2c
3
r
2
+
d
2
4
2c
4
r
2
+
n
2
3
4b
3
r
2
+
n
2
4
4b
4
r
2
��(c
1
+ �+ �
1
'(�))z
2
1
� c
2
z
2
2
�
1
2
c
3
z
2
3
�
1
2
c
4
z
2
4
+
�
d
2
3
2c
3
+
d
2
4
2c
4
+
n
2
3
4b
3
+
n
2
4
4b
4
�
r
2
: (23)
5. SIMULATION RESULTS
We use the parameter values from (11) and the supply
pressure P
s
= 10342500 Pa (1500 psi) in our simula-
tions. Since the value of the supply pressure P
s
is so
large, we use � = 10
�7
to rescale the state x
5
for im-
proved numerical accuracy. We also assume the follow-
ing limits:
� Suspension travel limits: � 8 cm.
� Spool valve displacement limits: � 1 cm.
Furthermore, since w
3
in (7) appears in the denomina-
tors of (12) (note the de�nition of �
4
in (14)) and (15),
we employ the following modi�cation to avoid division
by zero:
� Set w
3
= 1 if 0 � w
3
� 1 and set w
3
= �1 if
�1 � w
3
< 0 in the denominators of (12) and (15).
We choose the road disturbance r as a single bump rep-
resented in the following form
r =
�
a(1� cos 8�t) ; 0:5 � t � 0:75
0 ; otherwise ;
(24)
where a is selected to be 0:04 m, i.e., the height of the
bump is equal to 8 cm. In addition, we choose the adap-
tation gain � = 40 and the design constants:
c
1
= c
2
= c
3
= c
4
= 200 ; b
3
= b
4
= 0:01
� = 1:5 ; m
1
= 0:055 ; m
2
= 0:005 :
(25)
Figures 4 and 5 show the closed-loop response of our
adaptive system (only � = �A is estimated) in the cases
where only � is underestimated by 10% (Fig. 4) and
only
is overestimated by 10%(Fig. 5). The adaptive
(dashed line) and nonadaptive (dotted line) controllers
345
0.5 0.6 0.7 0.8−50
−25
0
25
50
time (sec)
body acceleration
0.5 0.6 0.7 0.8−0.005
0
0.01
0.02
0.025
body travel
time (sec)
0.5 0.6 0.7 0.8−0.085
−0.05
0
0.05
0.085
time (sec)
suspension travel
0.5 0.6 0.7 0.8−0.03
0
0.03
0.06
0.09
time (sec)
wheel travel
0.5 0.6 0.7 0.8−3.5
−2
0
2
3.5x 10
7
time (sec)
load pressure
0 1 2 31350
1400
1450
1500
1550
time (sec)
parameter estimate
Fig. 4. Comparison of adaptive (dash) and nonadaptive
(dot) controllers when only � is unknown.
�
^
�
m
s
2
m
N
m
2
m
m
N
m
3
are compared to the case where all the parameters are
known (solid line). In both cases, the initial estimate ��
(incorrect by 10% in Fig. 4, correct in Fig. 5) is used
to produce the initial value of the estimated parame-
ter
^
�(0) = ��A. The results show that