Professional Documents
Culture Documents
Design and Synthesis of Active and Passive Vehicle Suspensions
Design and Synthesis of Active and Passive Vehicle Suspensions
Fu-Cheng Wang
Queens’ College
Control Group
Department of Engineering
University of Cambridge
September 2001
To my parents
for
their love
Abstract
This dissertation discusses the active suspension control of vehicle models. It contains two main
parts. In the first part of the thesis, we discuss the necessity of employing active suspension through
the analysis of the mechanical networks. We apply classical network theory to show that an active
suspension is necessary in half- and full-car vehicle models in certain situations. Typically, these
situations involved specifying a soft response from road disturbances as when a soft passive suspension
is implemented, and a stiff response from load disturbances as when a stiff passive suspension is
implemented.
In the second part of the thesis, we derive a parametrisation of the set of all stabilising controllers
for a given plant which leaves some pre-specified closed-loop transfer function fixed. To facilitate the
parametrisation at the required level of generality we define left and right normalrank factorisations
of a rational matrix. We also show that under some certain conditions, the achievable performance of
the remaining transmission paths can approximate the original performance set. The results are then
studied in the context of quarter-, half- and full-car vehicle models, to derive appropriate controller
structures. In the half-car case, we discuss the simplicity assumptions which are required to allow
a decomposition of the half-car into two quarter-cars. In the full-car case, we exploit a symmetry
assumption to decompose it into the bounce/pitch and roll/warp half-car models. The warp mode
is handled in a special way to reduce the twisting forces on the chassis. For complex models, the
numerical calculation of the controller structures is also discussed and applied to the double-wishbone
models.
We also present the trailing-arm model as an example of the main ideas of this thesis. We discuss
the traditional anti-squat and anti-dive design for the trailing-arm model. Through the use of network
analysis, it is found that an active suspension should be adopted to satisfy the performance criteria.
Then the disturbance response decoupling method is applied to design an active suspension for this
model.
Throughout this dissertation, the multi-body simulation package AutoSim is used for simulation
of vehicle models in combination with the theoretical work. As a result, the analysis and synthesis
methods developed in this dissertation could be directly applied to complex models.
Keywords: active suspension, network, LFT, controller parametrisation, disturbance response
decoupling, achievable performance, H∞ loop-shaping, trailing arm, anti-squat, anti-dive, AutoSim.
i
Acknowledgements
I would like to take this opportunity to express my gratitude to my supervisor Dr. Malcolm C. Smith for
his constant guidance and encouragement during the past three years. He always appreciates whatever
little progress I have achieved, and continuously gives me much inspiration by sharing his precious
knowledge and experience. I shall always remember the fun we have had together.
I would also like to thank Prof. Keith Glover for giving me the chance of doing research in this
group. He is always here for me whenever I need his help. I am also grateful to Dr. Jan Maciejowski
and Dr. Glenn Vinnicombe for their advice and help on my work.
It is a great pleasure to work with the colleagues, past and present, in the Control Group. My
special thanks to Dr. Gavin Walker, for helping me to become familiar with AutoSim and vehicle
dynamics. Particular thanks to Dr. George Papageorgiou and Dr. Alexander Lanzon for offering their
help and advice when I got stuck in my work. Many thanks to John Steele for improving the computer
facility and function in the Group. My sincere thanks to all the members in this Group for creating
such a relaxed and supportive working environment.
I am grateful to Master Sulgok. Not only did he teach me martial art, but also gave me warmth and
accompanied me when I was depressed. I am particularly indebted to Mrs Kit Pharaoh for providing
her warm hospitality toward me and devoting her valuable time to reading through my dissertation
and helping me with my English. I would further thank Mr. Chen and his family, Mrs Hsiao and Dr.
Laura Gellman for their hospitality and friendship. They are my family in England. Without them,
my study in England would not be so comfortable and pleasant.
I would like to extend my gratitude to my teachers in Taiwan, especially Prof. Jia-Yush Yen and
Prof. Min-Shin Chen in National Taiwan University, for leading me to the hall of knowledge. Their
support, emotionally and financially, helps me concentrate on my research work in Cambridge.
This work has been financially supported by the Overseas Research Student Award (ORS), Cam-
bridge Overseas Trust and Queens’ College. The overrun funding was granted by CUED. To all these
organisations I am grateful.
Finally, but most importantly of all, my parents, Jin-Shi and Bon-Tsi should receive my greatest
appreciation for their enormous love. They always respect what I want to do and give me their full
support. The support from my brother Ping-Ta, my sister Mei-Hsia, and my brother-in-law Chung-
Huang is also highly appreciated.
iii
iv ACKNOWLEDGEMENTS
As required by University Statute, I hereby declare that this dissertation is not substantially the
same as any that I have submitted for a degree or diploma or other qualification at any other university.
This dissertation is the result of my own work and includes nothing which is the outcome of work
done in collaboration.
Fu-Cheng Wang
Cambridge
September 2001
Contents
Abstract i
Acknowledgements iii
1 Introduction 1
1.1 Passive Suspensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Active Suspensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Controller Parametrisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.4 Outline of the Dissertation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.5 Software Used in This Dissertation . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
v
vi CONTENTS
10 Concluding Remarks 99
10.1 Main Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
10.2 Direction for Future Research . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Bibliography 127
List of Figures
ix
x LIST OF FIGURES
9.1 The passivity analyses for (a): acceleration (or inboard braking); (b): outboard braking. 96
9.2 (a) applied torques (b) velocity; (c) and (d) the pitch motion of the active (dashed) and
passive (solid) systems without and with tyre springs. . . . . . . . . . . . . . . . . . 97
5.1 The Ũ2 structures and the transformed plants of the quarter-car model with various
measurements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
5.2 The Ũ2 structures and the transformed plants of the general quarter-car model with
various measurements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
xi
Notation and Acronyms
Notations
RH∞ Set of stable and norm-bounded real-rational functions.
RHm×n
∞ Set of matrices with m rows and n columns, and all elements in RH∞ .
R m
Set of real column vectors with m entries.
C Set of complex numbers.
Q Youla parameter.
N, M Right coprime factorisation matrices.
Ñ , M̃ Left coprime factorisation matrices.
k · k∞ H∞ -norm.
σ̄ (A) Largest singular value of matrix A.
0
(·) Transpose operator.
∗
(·) Complex conjugate transpose operator.
ŵ, ẑ Laplace transform of functions w(t), z(t).
ms Sprung mass.
m u , m 1, m 2, m 3, m 4, m f , mr Unsprung masses.
k s , k 1 , k 2 , k 3 , k 4 , k f , kr Suspension spring stiffnesses.
cs , c1 , c2 , c3 , c4 , c f , cr Suspension damper damping ratios.
kt , kt1 , kt2 , kt3 , kt4 , kt f , ktr Tyre spring stiffnesses.
u Controlled input.
y Measured output.
w Exogenous input.
z Regulated output.
D Strut deflection.
P Generalised plant.
K Controller.
T Transfer function.
G Immitance matrix.
Y Admittance matrix.
xiii
xiv NOTATION AND ACRONYMS
Z Impedance matrix.
F Force.
A, B Sets of proper, stable transfer matrices.
Subscripts
b, ρ Bounce and rotation components in half-car model.
b f , br Front and rear bounce components in full-car model.
ρ f , ρr Front and rear roll components in full-car model.
bp Bounce/pitch component in full-car model.
roll Roll component in full-car model.
war p Warp component in full-car model.
Acronyms
SISO Single Input Single Output.
LFT Linear Fractional Transformation.
lnf Left Normalrank Factorisation.
rnf Right Normalrank Factorisation.
Chapter 1
Introduction
Suspension systems have been widely applied to vehicles, from the horse-drawn carriage with flexible
leaf springs fixed in the four corners, to the modern automobile with complex control algorithms.
Generally speaking, a good suspension should provide a comfortable ride and good handling within
a reasonable range of deflection. Moreover, these criteria subjectively depend on the purpose of the
vehicle. For example, a sports car driver will accept a relatively hard ride as a compromise for high
speed handling and safe fast cornering. But the same ride would be intolerable for the passengers of
a big saloon car.
From a system design point of view, there are two main categories of disturbances on a vehicle,
namely road and load disturbances. Road disturbances have the characteristics of large magnitude in
low frequency (such as hills) and small magnitude in high frequency (such as road roughness). Load
disturbances include the variation of loads induced by accelerating, braking and cornering. Therefore,
a good suspension design is concerned with disturbance rejection from these disturbances to the
outputs (e.g. vehicle height etc) in which we are interested. Roughly speaking a conventional passive
suspension needs to be “soft” to insulate against road disturbances and “hard” to insulate against load
disturbances. Therefore, suspension design is an art of compromise between these two goals.
There are two main categories of suspension systems, namely passive and active suspension sys-
tems. A passive suspension, which means there is no energy source in the system, provides a simpler
and cheaper way of suspension design at the expense of performance limitations of the type described
above. On the other hand, active suspensions incorporate extra energy sources to refine the compro-
mise, though the freedom to shape disturbance response transfer functions is still not arbitrary due to
factors such as invariant points [31].
Passive suspensions contain elements, such as springs and dampers, which can only store or dissipate
energy. Different types of springs and dampers might be used in design, but most suspensions in this
1
2 Introduction
class can be considered as a spring in parallel with a damper placed at each corner of the vehicle, and
normally such a spring-damper unit is called a “strut” [37].
In addition to the struts, some other elements or special geometrical arrangements are also used
to increase the performance of passive systems. For example, additional roll springs (anti-roll bars)
could be used to increase the stiffness to roll motion. Trailing arms could be implemented between the
sprung mass and the wheel hubs to reduce the dive and squat motion of the vehicle body during braking
and acceleration. The Moulton Hydro-lastic system inter-connected the front and rear suspensions
by hydraulic pipes to change the dynamic responses to pitch [3, 37]. In [19] a self-energizing hydro-
pneumatic levelling system was presented which used the relative wheel-to-body movement to “pump”
the car body up to achieve a desired ride height, so that soft springs can be employed to give a better
ride.
The performance limitation of passive suspensions was illustrated in [32, Example 3], using an
example of the linear quarter-car model. It was concluded that active suspensions have significantly
greater freedom to optimise among the variety of performance specifications. This dissertation will
continue this idea by analysing situations for half-car, full-car, trailing-arm, double-wishbone models
where desired performance behaviour can only be achieved using active means.
The use of active suspension on road vehicles has been considered for many years [35, 24, 15, 41, 27]. A
large number of different arrangements from semi-active to fully active schemes has been investigated
[7, 28, 42, 40]. There has also been interest in characterising the degrees of freedom and constraints
involved in active suspension design. Constraints on the achievable response have been investigated
from “invariant points”, transfer-function and energy/passivity point of view in [16, 13, 14, 31, 32].
In [31], a complete set of constraints was derived on the road and load disturbance response transfer-
functions and results on the choice of sensors needed to achieve these degrees of freedom independently
were obtained for the quarter-car model. The generalisation of these results to half- and full-car models
was then presented in [9]. In [32] it was shown that the road and load disturbance responses cannot
be adjusted independently for any passive suspension applied to a quarter-car model.
The need to design the road and load disturbance responses independently has been considered
elsewhere in the active suspension literature. For example, in [24] a hardware and sensing arrangement
was devised so that the feedback part of the scheme would not affect the response to road disturbances,
which were designed to be suitably soft by means of passive elements in the scheme. In [39, 40]
the actuator was placed in series with a spring and damper, which were chosen to give a suitably soft
response to road irregularities in the absence of a feedback signal. A controller structure using a filtered
combination of the sensor measurements was then selected so that the road disturbance responses were
unaffected by the feedback. In this dissertation we develop a continuation of this idea by finding in
1.3 Controller Parametrisation 3
general the required controller structure to achieve this property for any set of measurements.
In active suspension design for full-car models it has been found advantageous to decompose
the motion into bounce, pitch and roll components for the vehicle body, and additionally warp for the
wheels in contact with the road [20, 17, 12, 32]. This dissertation will also exploit such transformations.
In the full-car case we will exploit symmetry to decompose into the bounce/pitch and roll/warp half-
cars. In the half-car case we will use our results to determine the feedback structure to allow road
and load disturbances to be shaped independently and discuss the simplicity assumptions which are
required to allow a further decomposition of the half-car into two quarter-cars.
The idea of parametrising all stabilising controllers in a linear feedback system is a standard one
[44, 45]. The extension of this idea to two-degree-of-freedom schemes (which allows the response
to reference commands and the return ratio of the feedback path to be optimised independently) is
also standard [43, 36]. The generalisation to additional degrees-of-freedom to include some exoge-
nous disturbances has also been considered [23]. The parametrisation of all stabilising controllers
which leave some pre-specified closed-loop transfer function fixed, as considered in this dissertation,
represents a continuation of these ideas and techniques.
Our approach makes use of algebraic properties of the ring of stable, proper rational functions
[36]. To facilitate the parametrisation at the required level of generality we will introduce the idea of
left and right normalrank factorisations of a rational matrix (Definition 4.1).
Chapter 2: This chapter introduces the analogy of mechanical/electrical systems, and presents the
vehicle models as corresponding networks. The passivity of the network can then be checked
by the positive realness of its transformation matrices. An analysis procedure combined with
AutoSim is employed to show the necessity of implementing active suspensions in order to
achieve certain performance requirements. This procedure is especially useful for complex
models, such as the full-car model, where it is not so easy to derive the transfer functions
symbolically.
Chapter 3: This chapter considers a half-car trailing-arm model, and discusses the traditional solution
to reduce vehicle pitching motions during acceleration and braking. We derive the generalised
trailing-arm geometry for perfect anti-squat/anti-dive design. By checking the positive realness
of the transformation matrices, we know that active suspensions should be used to satisfy the
performance requirements.
4 Introduction
Chapter 4: This chapter develops the general theorem for disturbance response decoupling, which
improves the closed-loop responses while keeping some pre-specified transmission paths un-
changed. A simplified theorem for the vehicle models used in this dissertation is also given,
which enables us to perform the active controller design using existing controller synthesis
methods, e.g. H∞ loop shaping. For refined design, it is also shown that we can make further
improvement on the closed-loop transmission paths stage by stage. The achievable performance
after disturbance response decoupling is discussed from the scalar case to the matrix form. The
conditions under which the achievable performance remains effectively the same as before the
disturbance response decoupling design are also derived.
Chapter 5: This chapter applies the disturbance response decoupling theorem to the linear quarter-
car model employing a “Sharp” actuator with various measurements. The results are compared
with the controller structure in [40], and illustrate our systematic approach for vehicle active
suspension design. The achievable load responses are shown not to be reduced in a significant
way after the design.
Chapter 6: This chapter extends the application of disturbance response decoupling to the linear
half-car model, and discusses the “simplicity” conditions which decompose the half-car into
two quarter-car models. The procedure of successive design, which improves the closed-loop
responses stage by stage, is also exemplified in this chapter.
Chapter 7: This chapter discusses the application of disturbance response decoupling to the linear
full-car model. It shows that the full-car model can be separated into two half-car models
under a symmetry assumption. The bounce/pitch half-car is treated according to the theory in
Chap. 6. The roll/warp half-car decomposes further into two quarter-car models, where the roll
mode is treated as a quarter-car and the warp mode is handled in a special way to reduce the
twisting forces on the chassis. The final controller is simulated with a nonlinear vehicle model
by AutoSim.
Chapter 8: This chapter presents the procedure for the numerical calculation of the controller structure
when it is difficult or not feasible to derive symbolically. This procedure is then applied to to
the half-car and full-car double-wishbone models.
Chapter 9: This chapter applies the disturbance response decoupling to the half-car trailing-arm
model introduced in Chap. 3. An active controller is numerically derived and implemented in
C code which is then called by a nonlinear AutoSim model. The results show that we can apply
active suspension control to the model with reasonable trailing-arm geometry to significantly
reduce vehicle pitching motions.
Chapter 10 This chapter summarises the main contributions of this dissertation and outlines potential
directions for further research.
1.5 Software Used in This Dissertation 5
Maple: Much of the work in this dissertation involves explicit computation of complicated matricial
expressions. To avoid any possible error, all the symbolic equations in this dissertation are either
derived or checked by the “algebraic manipulation package” Maple V [6].
AutoSim: The vehicle models are built by the “muti-body simulation code” AutoSim, which can give
linearised models for analysis in matlab or perform the nonlinear simulation. It writes the
simulation code in C or FORTRAN languages. To implement the active controller, we write the
active controller in C code as a sub-routine of the AutoSim models [25, 26].
Matlab: It is used for numerical calculation and simulation of the linearised models.
Chapter 2
In this chapter, we consider the necessity of using an active suspension system to achieve certain
performance requirements using network theorems, especially the concept of passivity. The multi-
body simulation code AutoSim is then employed to carry out the analysis for complex models.
Section 2.1 defines a network, and discusses the equivalence of the passivity of a network and the
positive realness of its transfer matrices. Section 2.2 discusses the necessity of using active suspension
for a quarter-car model which is required to be “soft” to road disturbance and “hard” to load disturbance.
An AutoSim linearised model is introduced to set up the standard analysis procedure, which will then
be used in Section 2.3 and Section 2.4 for the analysis of the half- and full-car models.
It is well-known that mechanical and electrical systems are analogous. After transferring a mechanical
dynamic system to an equivalent electrical circuit, some of the well-developed network theorems can
be directly applied to our analyses. In this section, we shall first introduce the analogies between
mechanical and electrical systems, and then discuss some network theorems.
Between mechanical and electrical systems, there are two well-known analogies, namely force-current
and force-voltage analogies [11, 29]. These analogies are listed in Table 2.1 and Table 2.2. From the
tables, it is clear that the instantaneous power should be the same, no matter what analogy we choose.
In [29], the force-current analogy is used to deal with mechanical systems since forces are more easily
thought of as “through variables”, like currents going through electrical elements.
7
8 Necessity of Active Suspension – A Network Approach
Mechanical Electrical
Force F Current i
Displacement x
Velocity v Voltage V
Mass m Capacitance C
1
Spring rate k Inductance L
1
Damping rate c Resistance R
Power F ·v Power V ·i
Mechanical Electrical
Force F Voltage V
Displacement x Charge q
Velocity v Current i
Mass m Inductance L
1
Spring rate k Capacitance C
Damping rate c Resistance R
Power F ·v Power V ·i
i1 i4
V1 V4
i2 ..
.
V2 n-port network ..
.
i3 in
V3 Vn
A network can be represented as Fig. 2.1, where i 0 s (V 0 s) are called through (cross) variables.
Such a network is called a n-port network [4].
Definition 2.1 A n-port network has n pairs of port variables {Vi , i i }, i=1,2,. . .,n and can be depicted
as in Fig. 2.1.
Circuits containing only three basic elements – resistance, capacitance and inductance, are some-
times termed passive circuits. On the other hand, active circuits contain also devices such as transistors
2.1 Network Theorems 9
which, unlike passive elements, are capable of energy amplification [30]. The basic defining property
of passive elements is that they can only dissipate or store energy [21]. Expressed in mathematical
terms this is as follows [22]:
Definition 2.2 A multi-port network is defined to be passive if for all admissible V , i which are square
integrable on (−∞, t], Z t
E(t) = V (τ )∗ i(τ )dτ ≥ 0.
−∞
That is, a passive network is one for which the absorbed energy never goes negative. If N is not passive,
it is called active.
The quantity on the left-hand side of (2.1) is the total energy delivered to the network up to time t.
For a linear network, a matrix Z (s) (resp. Y (s)) for which V̂ = Z (s)î (resp. î = Y (s) V̂ ) is termed the
impedance (resp. admittance) matrix. It is also possible to define a mixed immittance matrix relating a
vector containing both forces and velocities to a vector containing the complementary variables. Then
the total energy delivered to the network is
Z ∞ Z ∞
∗
E = V (t) i(t)dt (= i(t)∗ V (t)dt)
−∞ −∞
Z ∞
1
= V̂ ( j ω)∗î( j ω)dw (Parseval theorem)
2π −∞
Z ∞
1
= î( j ω)∗ Z ( j ω)∗î ( j ω)dw
2π −∞
Z ∞
1
= î( j ω)∗(Z ( j ω) + Z ( j ω)∗)î( j ω)dw. (2.2)
4π 0
Thus a necessary condition for passivity is that Z ( j ω) + Z ( j ω)∗ ≥ 0. If the system is SISO, the
condition is equivalent to Re(Z ( j ω)) ≥ 0. This says that the Nyquist diagram of Z cannot enter the
left half plane.
In order to give a precise necessary and sufficient condition for passivity, positive realness is
now defined.
(ii). Z ( j ω) + Z ( j ω)∗ ≥ 0 for all ω at which Z ( j ω) is finite, and any poles of Z(s) on the
imaginary axis or at infinity are simple and have a non-negative definite, Hermitian residue.
With the definition of positive-realness, we shall complete this section by stating an important theorem
[22], [37]:
Theorem 2.1 Consider a network with impedance Z(s). The network is passive if and only if Z(s) is
positive real. ♥
It should also be noticed that Theorem 2.1 also holds with Z (s) replaced by Y (s) or a mixed immittance
G(s).
In this section, we shall apply Theorem 2.1 to a linear quarter-car model, as shown in Fig. 2.2, following
a numerical example given in [32, Example 3]. The purpose of this section is to prepare the way for
this type of reasoning to be generalised to more complex models. Such a procedure can then be applied
to complex systems where the symbolic transfer functions are not available or difficult to derive.
Fs
ms zs
u Fr Fs
żr G ż s
mu zu Fr Fs
kt
Fr zr
m s z̈ s = Fs − u,
m u z̈ u = u + Fr ,
where
Fr = kt (zr − z u ),
2.2 The Quarter-Car Model 11
and u represents any possible suspension force. For a passive suspension u = cs (ż s − ż u )+ks (z s − z u ),
the transfer matrix of the mixed immittance can be expressed as:
" # " #" #
s ẑ s G 11 G 12 F̂s
= ,
F̂r G 21 G 22 s ẑr
where,
m u s 3 + cs s 2 + (ks + kt )s
G 11 = ,
P4 (s)
kt (cs s + ks )
G 12 = ,
P4 (s)
kt (cs s + ks )
G 21 = − ,
P4 (s)
kt s(m s m u s 2 + (m s + m u )cs s + (m s + m u )ks )
G 22 = ,
P4 (s)
in which P4 (s) = m s m u s 4 + (m s + m u )cs s 3 + (m s kt + (m s + m u )ks )s 2 + kt cs s + kt ks .
Suppose this system is required to be soft to road disturbance zr as when a soft passive suspension
u = css (ż s − ż u ) + kss (z s − z u ) is implemented, and hard to load disturbance Fs as when a hard passive
suspension u = csh (ż s − ż u ) + ksh (z s − z u ) is implemented, that is,
" # " #" #
s ẑ s G h11 G s12 F̂s
= , (2.3)
F̂r G h21 G s22 s ẑr
where s and h represent soft and hard suspension settings respectively. Following [32] we will use The-
orem 2.1 to show a numerical example that an active suspension is necessary to satisfy the performance
requirements. We select the following parameters for the quarter-car model as in [32]: m s = 250 kg,
m u = 35 kg, kt = 150 kN/m, and take ksh = 120 kN/m, csh = 40 kNs/m, kss = 12 kN/m, css = 4
kNs/m. In order to get a suitable scaling, we calculate the positive realness of another transformation
matrix Y :
" # " #
F̂s s ẑ s
= Y .
F̂r s ẑr
The eigenvalues of (Y + Y ∗ )( j ω) are shown in Fig. 2.3. The negative value at the frequency around
10 rad/sec indicates that this system cannot be achieved by a passive suspension, i.e. extra energy
should be introduced by an active suspension to satisfy the performance requirements.
The eigenvalue plot of Fig. 2.3 is identical with the one obtained in [32]. However, the plot was
obtained here by the use of AutoSim to generate the linearised models, followed by the use of a matlab
program to compute the eigenvalues. This method, which will be applied in subsequent sections to
more complex models is summarised as follows:
12 Necessity of Active Suspension – A Network Approach
4
x 10
5
Eigenvalues (Ns/m)
2
−1
−2 −2 −1 0 1 2 3
10 10 10 10 10 10
Frequency (rad/sec)
(ii) Decide required performance for each transmission path and form a mixed transformation matrix
like (2.3).
(iii) Check the positive realness of this mixed transformation matrix. For better scaling, it is some-
times necessary to change the transformation matrix, which is valid since the positive realness
of G, Y and Z are equivalent.
(iv) If the transformation matrix is not positive real, it means that the performance requirements can
only be achieved by an active control.1 .
The AutoSim program to generate the linearised quarter-car model is given in Appendix A.1, while
the remaining part of the procedure is given by the matlab program in Appendix A.2.
In this section, we shall follow the procedure described in the previous section to the half-car model,
as shown in Fig. 2.4. The linearised dynamic equations can be expressed as follows:
m s z̈ s = Fs − u 1 − u 2 ,
Iψ z̈ ψ = Fψ − u 1l1 + u 2 l2 ,
m 1 z̈ u 1 = u 1 + Fr1 ,
m 2 z̈ u 2 = u 2 + Fr2 ,
1 If the transformation matrix is positive real, some additional conditions are necessary for realisation by passive control
Fs
z ψ , Fψ m s , Iψ zs
l1 l2
u1 u2 Fs Fr1
zu1 zu2 żr1
m1 m2 ż s
Fψ G Fr2
k t1 z r1 k t2 z r2 ż ψ żr2
We suppose the performance requirements are that the system should be soft to road disturbances
zr1 , zr2 as when passive elements c1s , c2s , k1s , k2s are used, and hard to load disturbances Fs , Fψ as when
passive elements c1h , c2h , k1h , k2h are used, where s and h
represent soft and hard suspension settings.
Therefore the transformation matrix can be expressed as:
s ẑ s Gh Gh Gs Gs F̂s
11 12 13 14
s ẑ Gh Gh Gs Gs F̂
ψ 21 22 23 24 ψ
= h h s .
F̂r G G G Gs s ẑr
1 31 32 33 34 1
F̂r2 G h41 G h42 G s43 G s44 s ẑr2
The expressions for G i j , i, j = 1 . . . 4 can be obtained easily by Maple, but they are too complicated to
list. Instead, the procedure described in Section 2.2.2 will be employed. The following parameters are
used for the half-car model: m s = 1600 kg, Iψ = 1000 kg m2 , m 1 = m 2 = 100 kg, kt1 = kt2 = 500
kN/m, l1 = 1.15 m, l2 = 1.35 m. As the suspension settings, we choose c1h = c2h = 10 kNs/m,
k1h = k2h = 40 kN/m, c1s = c2s = 1 kNs/m, k1s = k2s = 4 kN/m. In order to get a suitable numerical
scaling, we check the positive realness of another transformation matrix Y , where [ F̂s , F̂ψ , F̂r1 , F̂r2 ]0 =
Y [s ẑ s , s ẑ ψ , s ẑr1 , s ẑr2 ]0 . As shown in Fig. 2.5, there are two negative eigenvalues of (Y +Y ∗ )( j ω) in the
region around 3 rad/sec. Therefore, we know that a passive suspension cannot satisfy the performance
requirements, so that an active suspension should be implemented.
14 Necessity of Active Suspension – A Network Approach
4
x 10
10
Eigenvalues (Ns/m)
−5 −2 −1 0 1 2 3
10 10 10 10 10 10
Frequency (rad/sec)
In this section, we consider a full-car model, as shown in Fig. 2.6. The linearised dynamics of the
full-car can be expressed as:
m s z̈ s = Fs − u 1 − u 2 − u 3 − u 4 ,
Iθ z̈ θ = Tθ + u 1l f + u 2l f − u 3lr − u 4 lr ,
Iφ z̈ φ = Tφ − u 1 t f + u 2 t f − u 3 tr + u 4 tr ,
m f z̈ u 1 = u 1 + Fr1 ,
m f z̈ u 2 = u 2 + Fr2 ,
m r z̈ u 3 = u 3 + Fr3 ,
m r z̈ u 4 = u 4 + Fr4 ,
where the passive suspension forces u 1 ,…,u 4 and the tyre forces Fr1 ,…,Fr4 are given by:
ui = ci Ḋi + ki Di ,
Fri = kti (zri − z u i ),
D1 = z s − l f z θ + t f z φ − z u 1 ,
D2 = z s − l f z θ − t f z φ − z u 2 ,
D3 = z s + lr z θ + tr z φ − z u 3 ,
D4 = z s + lr z θ − tr z φ − z u 4 .
2.5 Summary and Comments 15
tr tr
u3 u4
zu3 zu4
mr mr
lr
z s , Fs
k t3 k t4 z r4
z r3 z θ , Tθ
m s , Iφ , Iθ
Fr1 Fs
z φ , Tφ lf żr1 ż s
tf tf Fr2
żr2 Tθ
Fr3 G ż θ
u1 u2
zu1 zu2 żr3
mf mf
Fr4 Tφ
k t1 z r1 k t2 z r2 żr4 ż φ
Suppose the performance requirements for the suspension design are that the system should be
soft to road disturbances zr1 , …, zr4 as when passive elements cis , kis , are used, and hard to to load
disturbances Fs , Tθ , Tφ as when passive elements cih , kih , are used, where s and h
represent soft and
hard suspension settings, and i = 1, . . . , 4. Therefore the transformation matrix can be expressed as:
h i0 h i0
s ẑ s , s ẑ φ , s ẑ θ , F̂r1 , F̂r2 , F̂r3 , F̂r4 = Gh , Gs F̂s , F̂φ , F̂θ , s ẑr1 , s ẑr2 , s ẑr3 , s ẑr4 .
The following parameters will be used for the full-car model: m s = 1600 kg, Iθ = 1000 kg m2 , Iφ =
450 kg m2 , t f = tr = 0.75 m, l f = 1.15 m, lr = 1.35 m, ki = 250 kN/m, m i = 50 kg.
The performance requirements are stated as cih = 5 kNs/m, kih = 20 kN/m, cis = 0.5 kNs/m,
kis = 2 kN/m. In order to obtain a suitable scaling, we check the positive realness of another
transformation matrix Y :
h i0 0
F̂s , F̂φ , F̂θ , F̂r1 , F̂r2 , F̂r3 , F̂r4 = Y s ẑ s , s ẑ φ , s ẑ θ , s ẑr1 , s ẑr2 , s ẑr3 , s ẑr4 .
The result in Fig. 2.7 shows that three eigenvalues of (Y + Y ∗ )( j ω) are negative at ω ≈ 3 rad/sec,
which means that the performance requirements cannot be achieved passively.
In this chapter, we described the mechanical/electrical analogy and discussed vehicle suspension
models as their corresponding networks. Then we showed how to check the passivity of a network
by checking the positive realness of its transformation matrices. For complex models, we used a
computational procedure combining the use of AutoSim and matlab to simplify the analysis. It was
16 Necessity of Active Suspension – A Network Approach
4
x 10
7
Eigenvalues (Ns/m)
3
−1
−2
−3 −2 −1 0 1 2 3
10 10 10 10 10 10
Frequency (rad/sec)
also shown that sometimes we need to check the positive realness of different transformation matrices
in order to get a suitable numerical scaling. This idea will be shown again in Chap. 3 for the analysis
and design of a trailing-arm model.
Chapter 3
In this chapter, we shall discuss the half-car trailing-arm model and its geometrical arrangement to
reduce vehicle pitching motions. Using trailing arms is a conventional solution to overcoming the squat
or dive problems for a vehicle during the accelerating or braking motion. Section 3.1 introduces the
half-car trailing-arm model, and shows the effect on pitching motions under acceleration and braking
scenarios of using trailing arms. Section 3.2 derives simple geometric conditions for anti-squat and
anti-dive designs, based on a certain acceleration or braking ratio. Section 3.3 illustrates the classical
graphical relation of the trailing-arm geometry. Section 3.4 compares a recent approach to anti-squat
and anti-dive properties. Section 3.5 presents the trailing-arm model as a mechanical network, and
discusses the necessity of using active suspensions.
Fig. 3.1 illustrates a general half-car trailing-arm model with passive suspensions. The front wheel hub
is connected to the sprung mass by a trailing-arm AC1 , and the rear connected by BC2 . To simulate
acceleration and braking, torques T1 and T2 are applied to the two wheels, and corresponding forces F1
and F2 are induced at the tyre contact patch to maintain a no-slip rolling contact. For the acceleration
scenario, the reaction torques are applied to the sprung mass in the pitch motion. For the braking
scenario, the reaction torques are applied to either the sprung mass (inboard braking) or the trailing
arms (outboard braking). The following example shows the effect of the trailing arms.
Example 3.1 Consider a half-car trailing-arm model, as shown in Fig. 3.1, with the following coef-
ficients: m s = 1600 kg, Is = 1000 kg m2 , m 1 = m 2 = 100 kg, I1 = I2 = 1 kg m2 , k1 = k2 = 40
kN/m, c1 = c2 = 10 kNs/m, and model the front (rear) tyre as a spring with constant kt1 = 500 kN/m
(kt2 = 500 kN/m). The trailing arms are regarded as massless and without inertia. To model a rolling
17
18 Analysis and Design for the Trailing-Arm Model
y
Fs
x
Q Ts , φ3
E D forward direction
zs
m s , Is
k2 c2 k1 c1
T2 , φ2 H B A G
T1 , φ1
y3
φ5 φ4
C2 C1
m 2 , I2 m 1 , I1
r2 :pin joint r1
N2 N1
F2 F1
z r2 z r1
y2 y1
wheel with tyre the following method was employed: the unsprung masses were taken to be discs of
mass 100 kg and inertia 1 kg m2 with a no-slip rolling contact on a virtual road; the instantaneous
vertical position of the virtual road was determined by the point being connected to the true road’s
vertical position at each wheel station by a spring of the same stiffness as the tyre spring. (This is
not dissimilar to the method used to produce a tyre spring effect on the ThrustSSC supersonic car
[1] which used aluminium forged wheels without tyres running on a water-laid desert surface with
a natural ‘yield’!) Suppose the geometric arrangement for the nominal (undisturbed) configuration
has the following coordinates: Q = (0, 0), A = (0.15, 0.5), B = (0.15, −0.5), C1 = (0.35, 1.3),
C2 = (0.35, −1.3), D = (0.1, 1.3), E = (0.1, −1.3), G = (0.35, 1.3), H = (0.35, −1.3) in the unit
of meters, the radius of the front and rear wheels are r1 = r2 = 0.15 m. Let the vehicle be accelerated
and braked without the load disturbances (Fs = 0, Ts = 0) and road disturbances (zr1 = zr2 = 0).
Suppose the vehicle is driven by the rear wheel, and accelerated with a ramp input T2 = 0 ∼ −2000
Nm in t = 0 ∼ 1 sec and a step T2 = −2000 Nm in t = 1 ∼ 2 sec and then braked from t = 3 sec
with “inboard braking” T1 = T2 = 1000 Nm until it stops, as shown in Fig. 3.2(a). We can also change
the geometric arrangement of the trailing arms as A = (0.15, 0.8) m, B = (0.15, −0.8) m, and obtain
different responses. The pitch motions of the vehicle are shown in Fig. 3.2(c). Compare the responses
with those of a simple half-car model (without trailing-arm, and the wheels move perpendicular to the
sprung mass), we find that using trailing arms can significantly reduce the squat and dive of the car
body. 2
The above example shows not only the reduction of pitch motion by using trailing arms, but also
the significant influence of the trailing-arm geometry on the responses. For example, in the first setting
(A = (0.15, 0.5), B = (0.15, −0.5)), both the squat and dive motions are reduced. In the second
3.2 Anti-Squat and Anti-Dive Geometry 19
1000 12 0.05
0.04
torques (Nm)
500 10 0.03
0.02
ẏ3 (m/sec)
0 8
φ3 (rad)
0.01
−500 6 0
−0.01
−1000 4
−0.02
−0.03
−1500 2
−0.04
−2000 0 −0.05
0 1 2 3 4 5 6 0 1 2 3 4 5 6 0 1 2 3 4 5 6
Figure 3.2: Squat and dive motions: (a) T1 (solid), T2 (dashed); (b) velocity; (c) without trailing-arm
(solid), with trailing-arm A = (0.15, 0.5) m, B = (0.15, −0.5) m (dashed), and A = (0.15, 0.8) m,
B = (0.15, −0.8) m (dash-dotted).
arrangement (A = (0.15, 0.8), B = (0.15, −0.8)) the dive motion has been further reduced, but the
squat motion was also adjusted too much, i.e. the car dives during accelerating. Before bringing the
issue of passive versus active suspension into consideration, it will be useful to consider the problem
of dive and squat in the classical approach, but with a slight generalisation to allow non-zero masses
and inertias of the wheels.
In this section, we shall derive conditions for perfect anti-dive and anti-squat. To simplify the analysis,
the tyres will be temporarily considered as incompressible (kt1 = kt2 = ∞). For the accelerating
scenario (anti-squat design), the reaction torques are applied to the sprung mass. As for the braking
scenario (anti-dive design), the reaction torques could be on the sprung mass (inboard braking), or on
the trailing arms (outboard braking). The basic idea (following [5] and [8]) is to derive conditions
for the geometrical arrangement to remain invariant (i.e. no pitching motion of the sprung mass or
trailing arms) under an acceleration which occurs with a pre-assigned constant ratio of forces at the
tyre contact patches. Our approach is a slight generalisation in that we allow non-zero values for the
mass and inertia of the wheels.
Consider the half-car trailing-arm model of Fig. 3.1. The purpose of perfect anti-squat geometry is to
choose the position of the trailing-arm attachment points (i.e. points A and B) so that the sprung mass
remains at constant height without pitching motion during acceleration. By neglecting the loads Fs and
20 Analysis and Design for the Trailing-Arm Model
Ts , a simplified version of this model is shown in Fig. 3.3. Because the geometric configuration of the
vehicle remains the same during acceleration, we can assume y1 = y2 = y3 = y and the suspension
forces to be zero. Furthermore, another constraint y = −r1 φ1 = −r2 φ2 is added to the design if we
assume there is no slip between the tyres and ground. P1 (P2 ) represents the contact point of the front
(rear) tyre and the ground. The accelerating torques T1 , T2 are transferred from the engine, and the
reaction torques are applied to the sprung mass in the pitch motion. We introduce D’Alembert forces
and torques m 1 ÿ, m 2 ÿ, m s ÿ, I1 φ̈1 and I2 φ̈2 and write down the corresponding equilibrium conditions.
x
T2 Q T1
m s ÿ forward direction
T2 T1
B A
I2 φ̈2 I1 φ̈1
h
m 2 ÿ x1,0 m 1 ÿ
x2,0
N2 N1
F2 F1
P2 P1
y2,0 y1,0
In [5] and [8], anti-squat and anti-dive conditions were derived in a simple way, by neglecting the
mass and inertia of the tyres, to obtain a simple geometrical condition. Following the same idea, a
more general condition can be derived as follows:
1. Suppose the accelerating force ratio (F1 /F2 ) is p/(1 − p), then the acceleration ÿ is given by:
F1 + F2
ÿ = , (3.1)
m1 + m2 + ms
so that F1 , F2 can be expressed as:
3. Applying Newton’s second law in the vertical direction for the whole system gives:
which is equivalent to
where Mx , M y are given by (3.2), (3.4) respectively. Here we have used the following equation
for the rotational motion of the front wheel:
which gives
where Mx , M y are given by (3.2), (3.4) respectively. Here we have used the following equation
for the rotational motion of the rear wheel:
T2 + F2 r2 − I2 φ̈2 = 0. (3.9)
The above derivation shows that the trailing-arm vehicle model satisfies an anti-squat property for
tractive forces in the ratio p : (1 − p) only if (3.6) and (3.8) hold. Conversely, we can also show
that conditions (3.6) and (3.8) are sufficient for the anti-squat property. The proof of this direction is
straightforward through the analysis of each element of the model, as illustrated in Appendix B.1 .
From (3.6) and (3.8) we can calculate the position of the trailing arms to eliminate the squat motion
of the vehicle during acceleration. It is noticed that there are four parameters (x1,0 , y1,0 , x2,0 , y2,0 ) with
only two constraints, which means that we have two degrees of freedom (one for each trailing arm) to
determine conditions for anti-squat. We can use this design freedom to assign reasonable position for
the trailing arms, or possibly even combine with anti-dive conditions, as discussed next.
22 Analysis and Design for the Trailing-Arm Model
The purpose of anti-dive design is to restrain the sprung mass from rotating during braking motion.
The analysis procedure will be similar to the anti-squat case. Actually, for inboard braking the anti-
dive conditions are exactly the same as in the anti-squat case. That is, if we have braking forces in the
ratio F1 /F2 = q/(1 − q) and consider the case of inboard brakes, then the equations (3.6) and (3.8)
with p replaced by q are the necessary and sufficient conditions for anti-dive. Therefore, we consider
only the anti-dive case with outboard braking.
x
Q
m s ÿ forward direction
T2 T1
B A
I2 φ̈2 I1 φ̈1
T1
T2 h
m 2 ÿ x1,0 m 1 ÿ
x2,0
N2 N1
F2 F1
P2 P1
y2,0 y1,0
Consider the half-car trailing-arm model of Fig. 3.4 for anti-dive design:
1. Suppose the braking force ratio (F1 /F2 ) is q/(1 − q), then the deceleration ÿ is the same as (3.1).
Thus, F1 , F2 can be expressed as:
where Mx is given by (3.2). It should be noticed that in the braking scenario ÿ is negative, and
so are F1 and F2 .
3. Applying Newton’s second law in the vertical direction for the whole system gives N2 as in (3.5).
which gives
I1
q Mx x1,0 − M y y1,0 − m 1 (x1,0 − r1 ) + = 0, (3.10)
r1
where Mx , M y are given by (3.2), (3.4) respectively.
which gives
I2
(1 − q)Mx x2,0 − M y y2,0 − m 2 (x2,0 − r2 ) + = 0, (3.11)
r2
where Mx , M y are given by (3.2), (3.4) respectively.
The above derivation shows that the outboard braking trailing-arm model with anti-dive property
should satisfy (3.10) and (3.11). The converse direction, i.e. the trailing-arm geometry obtained from
(3.10) and (3.11) ensures the anti-dive property for outboard braking system, is given in Appendix B.2.
In the following example we will apply (3.6, 3.8, 3.10, 3.11) to the trailing-arm model used in
Example 3.1 for the anti-squat and anti-dive design .
Example 3.2 Consider the half-car trailing-arm model used in Example 3.1 with incompressible tyres
(kt1 = kt2 = ∞). We now carry out the following procedure. We fix Q, C1 , C2 as in Example 3.1,
namely Q = (0, 0), C1 = (0.35, 1.3), C2 = (0.35, −1.3), and then calculate the position of A and B
in various cases. Suppose the vehicle is driven from both axes, with T1 /T2 = 2/1, and let us suppose
a braking force ratio of F1 /F2 = 4/6 (or q = 0.4) with outboard braking. First of all, we need to
convert the accelerating torque ratio T1 /T2 to the accelerating force ratio F1 /F2 = p/(1 − p) using
(3.7), (3.9) and the no-slip conditions, which gives p = 0.6749. The following designs can be carried
out:
(1) Anti-Squat Design: We have four degrees of freedom to decide the trailing-arm position (x1,0 ,
x2,0 , y1,0 and y2,0 ) and two equations, (3.6) and (3.8). Therefore, we can assign one value of
x1,0 or y1,0 for the front trailing arm, and one value of x2,0 or y2,0 for the rear trailing arm. If the
heights of joints A and B are fixed as x1,0 = x2,0 = 0.35 m, then (3.6) gives y1,0 = 0.6874 m and
(3.8) gives y2,0 = 0.2992 m, which is equal to A = (0.15, 0.6126) m and B = (0.15, −1.0008)
m.
(2) Anti-Dive Design: Similarly, we can also assign one of x1,0 or y1,0 and one of x2,0 or y2,0 . Assume
the heights of joints A and B are x1,0 = x2,0 = 0.35 m, then (3.10) gives y1,0 = 0.7358 m and
(3.11) gives y2,0 = 1.1243 m, which is equal to A = (0.15, 0.5642) m and B = (0.15, −0.1757)
m.
24 Analysis and Design for the Trailing-Arm Model
(3) Anti-Squat/Anti-Dive Design: For combined anti-squat/anti-dive design we have four equations
for the four variables. (3.6) and (3.10) will give a unique solution of x1,0 = 0.3817 m and
y1,0 = 0.7965 m, while (3.8) and (3.11) will give a unique solution of x2,0 = −0.1909 m and
y2,0 = −0.5099 m, which is equal to A = (0.1183, 0.5035) m and B = (0.6909, −1.8099) m.
2000 25 0.06
1500 0.05
torques (Nm)
20
1000
ẏ3 (m/sec) 0.04
φ3 (rad)
15
500
0.03
0
10
0.02
−500
5
−1000 0.01
−1500 0 0
0 2 4 6 8 0 2 4 6 8 0 2 4 6 8
sec sec sec
Figure 3.5: Anti-squat/anti-dive design: (a) T1 (solid), T2 (dashed); (b) velocity; (c) anti-squat design
(dashed), anti-dive design (dash dotted), combined design (solid).
For designs (1) and (2) we note that the point A is reasonably close to the value used in Example 3.1,
but the position of B is much further to the rear (respectively centre). Different situations could be
obtained by different choices of x2,0 . Actually, we could assign the degree of freedom by choosing
the trailing-arm lengths and just determining their angles of inclination.
For design (3), the point A is reasonably placed, but point B is below ground and behind the rear
wheel, which is absurd! This is likely to be a typical situation in practice, so that perfect anti-dive and
anti-squat are not achievable simultaneously by choice of suspension geometry.
Despite the above practical criticism, we can still use AutoSim to simulate the dynamics of the
vehicle and to demonstrate that theoretical dynamical behaviour is achieved. (AutoSim can cope with
parts of a vehicle running below ground!)
Let the vehicle begin with a forward velocity of 15 m/sec, and apply the accelerating torques
T1 = −1200 Nm and T2 = −600 Nm, and braking torques T1 = 1147 Nm and T2 = 1687 Nm,
as shown in Fig. 3.5(a). The forward velocity is given in Fig. 3.5(b). It is shown in Fig. 3.5(c) that
the effect of the above three designs. The results are exactly as expected: for the anti-squat design
the vehicle has no pitch motion during acceleration, for the anti-dive design the vehicle has no pitch
motion during braking, and for the combined anti-squat/anti-dive design, the vehicle has no pitch
motion during acceleration and braking. 2
In this section, the conventional anti-squat and anti-dive designs were discussed. Although these
two designs can be combined by using the four degrees of freedom (except using inboard brakes with
3.3 Classical Conditions for Anti-Squat and Anti-Dive 25
braking ratio q 6 = p, where the only solution is x1,0 = r1 , x2,0 = r2 and y1,0 = y2,0 = 0 which
is nonsensical), it was pointed out in the example that sometimes the trailing-arm geometry may be
unrealistic. Only in the case of inboard braking and where the accelerating and braking ratios are
the same, is it true that (3.6) and (3.8) are necessary and sufficient conditions for both anti-squat and
anti-dive design.
The reader is reminded that in the analyses the tyres are modelled as solid wheels, i.e. r1 and r2
remain constant. If we consider r1 , r2 as changing variables, then the designs would become more
complex. Furthermore, if we want to relax the “no-slip” constraint, then a tyre model needs to be
considered, which would make the analysis even more complicated.
O1
O2
A
B
r2 + h
r1 + h
C2 C1
(1 − p)L pL
(a)
B A
h
P2 P1
(1 − q)L qL
(b)
Figure 3.6: Simplified trailing-arm geometry: (a) anti-squat; (b) anti-dive with outboard braking.
It was shown in Section 3.2 that (3.6) and (3.8) are necessary and sufficient conditions for perfect
anti-squat (or anti-dive with inboard brakes), and (3.10) and (3.11) are necessary and sufficient con-
ditions for perfect anti-dive with outboard brakes. In this section, we shall show that those equations
reduce to the standard geometrical conditions if the masses and inertias of the wheels, m 1 , m 2 , I1 , I2 ,
26 Analysis and Design for the Trailing-Arm Model
A recent approach to anti-squat and anti-dive properties was presented in [26], in which the geometry
of suspension linkages is defined in terms of mathematical relationships which determine the allowed
motion of the hub carriers relative to the vehicle body. Specifically, relationships are specified between
the longitudinal and the vertical motions and between the pitch rotation and the vertical motion of the
hub carrier relative to the vehicle body. This is a different approach to the one adopted here in that
we still retain specific mechanical linkages to determine the allowed motion of the hub carriers. The
traditional anti-dive/anti-squat analyses were also criticised in [26] from the following points of view:
(1) “the behaviour treated is quasi-steady and not dynamics”, (2) “the equilibrium analyses simplify the
suspension geometry markedly and imply vertical constraints on the body motion (jacking inhibition),
which caused the solution of the equilibrium problem to mispresent the real behaviour substantially”,
(3) “only special cases are treated overtly”. The approach given in Section 3.2 gives a partial response
to these points as follows:
(1) The analysis of Section 3.2 does not need to assume a constant acceleration. However, the ratio
of tractive forces at the tyre contact patch needs to be constant for braking and accelerating.
(2) In deriving the classical anti-squat and anti-dive conditions, it is indeed the case that no vertical
motion of the sprung mass is assumed (as well as no pitching). However, it is shown in Ap-
pendix B.1 and B.2 that the classical conditions are also sufficient to ensure that these properties
hold dynamically. (In the simulation we allow pitching motion and vertical movement of the
sprung mass to occur, and find that the anti-squat (resp. antidive) geometry ensures the geometric
configuration of the vehicle remains undisturbed during accelerating (resp. braking) under the
ideal assumption of constant accelerating and braking ratios.)
(3) The third criticisim of Sharp is partially lifted in this work in that non-zero masses and inertias
are allowed for the wheels.
3.5 Passivity Analysis 27
We now return to the passivity analysis methodology of Chap. 2. In particular we look at the influence
of suspension geometry on the compromise between road disturbance responses and the effect of
loads. As discussed in Section 3.2 it will usually be impossible to choose the suspension geometry
so that the effect of inertial loads is sufficiently reduced for both dive and squat together, so that the
suspension struts will be needed to control such motions. Thus the compromise between reducing the
effect of load disturbances while maintaining a soft ride is still likely to be an issue. We now examine
this in a precise way using the same network analysis approach of Chap. 2.
We wish to choose the trailing-arm geometry to give reasonable practical values. We use the same
trailing-arm model and accelerating/braking ratios as Example 3.2, and calculate suitable positions of
points A and B. Setting the lengths of the front and rear trailing arms to be l4 and l5 respectively, we
can substitute x1,0 = l4 cos φ4 + r1 , y1,0 = l4 sin φ4 , x2,0 = l5 cos φ5 + r2 , y2,0 = l5 sin φ5 into (3.6),
(3.8) for anti-squat geometry, and into (3.10), (3.11) for anti-dive geometry. The trailing-arm lengths
are chosen as l4 = l5 = 0.4 m. First we consider the following two cases:
(1). For perfect anti-squat the angles are φ4 = 1.2877 and φ5 = 0.9815, which gives A = (0.2383, 0.9159)
m and B = (0.1277, −0.9675) m.
(2). For perfect anti-dive the angles are φ4 = 1.5109 and φ5 = 1.6720, which gives A = (0.3261, 0.9007)
m and B = (0.3904, −0.9020) m.
(3). Setting l4 = 0.6 m and l5 = 0.6 m, perfect anti-dive geometry results in φ4 = 1.5109 and
φ5 = 1.5270, which gives A = (0.2276, 0.7126) m and B = (0.3237, −0.7006) m. The effect
of the improvement is illustrated in Fig. 3.7(c).
(4). Further improvement can be achieved by increasing the lengths of trailing arms. For example,
if we set l4 = 0.8 m and l5 = 0.8 m, perfect anti-dive geometry results in φ4 = 1.2951 and
28 Analysis and Design for the Trailing-Arm Model
φ5 = 1.4569, which gives A = (0.1322, 0.5302) m and B = (0.2590, −0.5052) m. The effect
of the improvement is illustrated in Fig. 3.7(c).
2000 12 0.08
0.07
1500 10
torques (Nm)
0.06
1000 8
ẏ3 (m/sec)
0.05
φ3 (rad)
500 6 0.04
0 4 0.03
0.02
−500 2
0.01
−1000 0
0
−1500 −2 −0.01
0 2 4 6 8 0 2 4 6 8 0 1 2 3 4 5 6 7 8
Figure 3.7: Compromised anti-squat/anti-dive geometry: (a) T1 (solid), T2 (dashed); (b) velocity; (c)
design (1) (dashed), design (2) (dash-dotted), design (3) (solid) and design (4) (star).
As shown in Fig. 3.7(c), even with long trailing arms the maximum pitching angle reaches as
high as 0.022 rad. Consider a suspension strut with ±2.5 cm of deflection space, which allows the
maximum pitching angle of ±0.019 rad, the vehicle needs a harder suspension setting to avoid hitting
the bump stop. But it will also result in uncomfortable ride to road disturbances. These conflicting
performance requirements for passive suspension will now be discussed through network analysis.
We begin with the case where load disturbances Fs , Ts are included as well as the wheel torques
T1 , T2 and road disturbances zr1 , zr2 . We employ vehicle tyre springs kt1 = kt2 = 500 kN/m. To
model a rolling wheel the same method was employed as in Example 3.1. We assume that the normal
performance requirements are that it should insulate against road disturbances zr1 and zr2 as when soft
passive suspensions {cis , kis , i = 1, 2} are used. At the same time it should also insulate against load
disturbances Fs , Ts , and the accelerating/braking torques T1 , T2 as when hard passive suspensions
{cih , kih , i = 1, 2} are used. A corresponding network for the outboard braking model is shown as in
Fig. 3.8(a). The coefficients and coordinates in Example 3.2 are used except A = (0.1322, 0.5302)
m, B = (0.2590, −0.5052) m (which is the anti-dive geometry in design (4) as shown above), and
c1s = c2s = 1 kNs/m, k1s = k2s = 4 kN/m, c1h = c2h = 100 kNs/m, k1h = k2h = 400 kN/m. The
tranformation matrix G can be expressed as:
h i0 h i0
s ẑ s , s φ̂3 , s(φ̂1 − φ̂4 ), s(φ̂2 − φ̂5 ), − N̂1 , − N̂2 = [G h , G s ] F̂s , T̂s , T̂1 , T̂2 , s ẑr1 , s ẑr2 .
In order to get a suitable scale, we check the positive realness of Y instead of G, where Y is defined
as:
h i0 h i0
F̂s , T̂s , T̂1 , T̂2 , − N̂1 , − N̂2 = Y s ẑ s , s φ̂3 , s(φ̂1 − φ̂4 ), s(φ̂2 − φ̂5 ), s ẑr1 , s ẑr2 .
3.5 Passivity Analysis 29
The result of the passivity analysis is shown in Fig. 3.8(b), which means that active suspension is
necessary to satisfy the performance requirements.
5
x 10
6
T1 T2 5
Eigenvalues (Ns/m)
Fs Ts 2
φ̇3
ż s N 1
−N1 −N2 −1
żr1 żr2 −2
−3 −2 −1 0 1 2 3
10 10 10 10 10 10
Frequency (rad/sec)
Figure 3.8: The passivity analysis of the half-car trailing-arm model with outboard braking.
We now consider the case where Fs , Ts are set to be zero and we ask if it is possible to ensure that
the performance is stiff to braking torques and soft to road disturbances by passive suspensions. We
can check this by discussing the passivity of the network in 3.9(a). The result shown in Fig. 3.9(b)
suggests that active suspension is still necessary for the remaining performance requirements, where
Y is defined as follows:
h i0 h i0
T̂1 , T̂2 , − N̂1 , − N̂2 = Y s(φ̂1 − φ̂4 ), s(φ̂2 − φ̂5 ), s ẑr1 , s ẑr2 .
5
x 10
6
T1 T2
Eigenvalues (Ns/m)
−N1 N −N2 −1
0
żr1 żr2 −2
−3 −2 −1 0 1 2 3
10 10 10 10 10 10
Frequency (rad/sec)
Figure 3.9: The passivity analysis of the half-car trailing-arm model with outboard braking (2).
For the inboard braking and accelerating cases, similar results can also be obtained by replacing
the variables φ4 , φ5 with φ3 in Fig. 3.8(a) and Fig. 3.9(a). The AutoSim linearised trailing-arm model
is given in Appendix B.3.
30 Analysis and Design for the Trailing-Arm Model
In this chapter, we considered the half-car trailing-arm model, which is a conventional method to
reduce the squat and dive of the vehicle under accelerating and braking motions. Firstly, we discussed
the conventional anti-squat and anti-dive designs based on the trailing-arm geometry. Then through
the network analysis it was shown that a passive suspension cannot satisfy the general performance
specification. The active suspension design for this trailing-arm model will later be performed in
Chap. 9.
Chapter 4
In this chapter, we shall derive a parametrisation of the set of all stabilising controllers for a given plant
which leaves some pre-specified closed-loop transfer function fixed. This result is motivated by the
need to independently shape road and load disturbance transmission paths in the vehicle suspension
control problem. We will make use of algebraic properties of the ring of stable, proper rational
functions [36]. To facilitate the parametrisation at the required level of generality we will introduce
the idea of left and right normalrank factorisations of a rational matrix (Definition 4.1).
Section 4.1 defines two factorisations, namely left and right normalrank factorisations, which are
the basic tools for the theorems developed in this chapter. Section 4.2 sets up in generality the problem
of parametrising all stabilising controllers which leave some pre-specified closed-loop transfer function
fixed. Our basic results, which characterise the required structure of the Youla Q-parameter, are given
in Theorems 4.1–4.4. Section 4.3 discusses the design freedom and the achievable performance after
disturbance response decoupling design. Section 4.4 gives two illustrative examples of the theorems
developed in this chapter.
The results we will establish in this section make use of certain algebraic properties of the set RH∞ ,
namely its ring structure. The reader is referred to [36] for the necessary background on this topic.
Here we will be content to recall a few facts. The set RH∞ has the property of being a Euclidean
domain with degree function defined by the total number of zeros of the element in the closed right
half plane and at infinity (counting multiplicities). The invertible elements in RH∞ are called units,
and are the elements with degree equal to zero. A matrix U ∈ RHm×m
∞ is called unimodular if it has
an inverse whose elements belong to RH∞ , or equivalently, if its determinant is a unit in RH∞ . The
normalrank of a matrix Q ∈ RHm×n
∞ , denoted normalrank(Q(s)), is the maximum rank of Q(s) for
31
32 Controller Parametrisation for Disturbance Response Decoupling
any s ∈ C which is not a pole. Equivalently, the normalrank is equal to the rank for almost all s ∈ C.
We now introduce a type of matrix factorisation which will be useful in proving the subsequent results.
Definition 4.1 Let T be a matrix with elements in RH∞ . T is said to have a lnf (left normalrank
factorisation) if there exist matrices E and V = (V10 , V20 )0 over RH∞ with E of full column normalrank
and V unimodular such that T = E V1 . T is said to have a rnf (right normalrank factorisation) if there
exist matrices F and U = (U1 , U2 ) over RH∞ with F of full row normalrank and U unimodular such
that T = U1 F.
(proof): T can be decomposed in terms of its Smith form over RH∞ [36]:
T = U H V,
where U ∈ RHr×r
∞ , V ∈ RH∞ are unimodular, H ∈ RH∞ . Suppose that H has r1 non-zero
c×c r×c
r×(r−r1 )
where U1 ∈ RHr×r
∞ , U2 ∈ RH∞
1
, V1 ∈ RHr∞1 ×c , V2 ∈ RH∞
(c−r1 )×c
. We therefore obtain
T = (U1 H1 )V1 = E V1 ,
= U1 (H1 V1 ) = U1 F,
r1 ×c
where E ∈ RHr×r
∞ , F ∈ RH∞ are full column normalrank and full row normalrank respectively. ♥
1
It is noted that the rnf (or lnf) is not unique for a given matrix. However, there are certain relations
between the different factorisations, as shown in the following lemma.
(proof):
4.1 Normalrank Factorisations 33
(⇐) It is obvious that U1† F † = (U1 Z 1 )(Z 1−1 F) = U1 F = T , whilst [U1† , U2 Z 1 ] is unimodular
and F † has full row normalrank.
(⇒) Suppose U = (U1 , U2 ), and U † = (U1† , U2† ) are unimodular over RH∞ , and
" # " † #
e1
U e1
U
−1 † −1
U = , U = .
e2
U e2†
U
Then we can write:
" # " #
h i F h i F†
T = U1 , U2 = U1† , U2† ,
0 0
e1U1† ) and Y1 = (U
which gives F = X 1 F † and F † = Y1 F, where X 1 = (U e1†U1 ) are square
matrices with elements in RH∞ . X 1 is, therefore, a candidate for Z 1 . Now we need to show
that X 1 Y1 = I . It is clear that F = X 1 F † = X 1 Y1 F, which is equivalent to (I − X 1 Y1 ) = 0
since F is full row normalrank. Since X 1 and Y1 are square, they are inverses of each other and
hence are unimodular. Thus we can assign Z 1 = X 1 and Z 1−1 = Y1 to complete the proof. ♥
We consider the LFT (linear fractional transformation) model in Fig. 4.1, where the Laplace transfer
function of the generalised plant P is partitioned as:
" #
P11 P12
P = ,
P21 P22
w1 z1
w2 P z2
u y
Let P22 = N M −1 = M̃ −1 Ñ be the right and left coprime factorisations of P22 over RH∞ . Then
all stabilising controllers can be parametrised by:
3 × p3
for Q ∈ RHm
∞ where X, Y, X̃ , Ỹ are matrices with elements in RH∞ which satisfy the Bezout
identity: " #" #
X̃ −Ỹ M Y
= I.
− Ñ M̃ N X
In addition the factorisations will always be chosen so that Q = 0 corresponds to the desired stabilising
controller, i.e. K 0 = Y X −1 = ( X̃)−1 (Ỹ ). (This assumption will be relaxed in Theorem 4.4.)
We now consider the problem of parametrising all stabilising controllers which leave the transfer
function Tŵ1 →ẑ1 the same as when the controller K 0 = Y X −1 = ( X̃ )−1 (Ỹ ) is applied. From [10], the
closed loop transfer function in Fig. 4.1 can be expressed as:
T = T1 − T2 QT3 , (4.8)
ŵ1 ẑ 1
→
ŵ2 ẑ 2
where T1 , T2 , T3 have elements in RH∞ and are given by:
Thus the problem reduces to parametrising all stabilising controllers which leave Tŵ1 →ẑ1 = (T1 )1,1 .
3 × p3
These are characterised by all Q ∈ RHm
∞ such that (T2 QT3 )1,1 = T2,1 QT3,1 = 0, where T2,1 =
P12,1 M and T3,1 = M̃ P21,1 . We now introduce a lnf of T2,1 and a rnf of T3,1 as follows:
T2,1 := E V1 , (4.9)
T3,1 := U1 F, (4.10)
p1 ×r2
where E ∈ RH∞ , F ∈ RHr∞3 ×m 1 , U1 ∈ RH∞
p3 ×r3
, V1 ∈ RHr∞2 ×m 3 , r2 and r3 are the normalrank of
T2,1 and T3,1 respectively. Note that r2 and r3 are also the normalrank of P12,1 and P21,1 respectively.
Furthermore we have the inequalities r2 ≤ min( p1 , m 3 ), r3 ≤ min(m 1 , p3 ).
Theorem 4.1 Consider any stabilisable P in the configuration of Fig. 4.1. All stabilising controllers
such that the closed loop transfer function Tŵ1 →ẑ1 = (T1 )1,1 are given by K expressed in the form of
(4.6) and (4.7) with
!−1 !
V1 e2
Q 1U
Q = , (4.11)
V2 Q2
(proof): A stabilising controller in the form (4.7) leaves Tŵ1 →ẑ1 = (T1 )1,1 if and only if (T2 QT3 )1,1 =
E V1 QU1 F = 0. This is equivalent to V1 QU1 = 0 since E (resp. F) has full column (resp. row) nor-
malrank. We now show that it requires Q to take the form given in (4.11). Clearly
e2 .
V1 Q = (0, Q 1 )U −1 = Q 1 U
e2 term
Remark 4.1 In case r2 = m 3 , then the Q 2 block is missing in (4.11). In case r3 = p3 the Q 1 U
in (4.11) is replaced by a zero matrix of dimension r2 × p3 . If both r2 = m 3 and r3 = p3 , (4.11)
reduces to Q = 0. ♦
The control structure given in (4.11) is arrived at by completing the matrix U1 to a unimodular
e2 from the resulting matrix inverse. Since U1 and the completion are not
matrix and then extracting U
e2 . It will be useful to characterise this non-uniqueness by parametrising the
unique then neither is U
e2 : Q 1 ∈ RHr∞2 ×( p3 −r3 ) } directly. This is done in the following lemma.
set {Q 1U
e2† ∈ RHc×q
U ∞ are full row normalrank, then
(proof):
e2† = W U
(i) (⇐) Suppose U e2 where W ∈ RHc×c † e† e
∞ , then B = {Q 1 U2 } = {(Q 1 W )U2 }. Clearly Q 1 W
† †
(⇒) Suppose B ⊆ A, then for any Q †1 ∈ RHr×c ∞ there exist some Q 1 ∈ RH∞ such that
r×c
e2† = Q 1 U
Q †1 U e2 . Let us now choose the first row of Q †1 to be [0, · · · , 1, · · · , 0] (with the 1 in
4.2 Controller Parametrisation Results 37
the ith place), and all other rows to be zero, and define qi to be the first row of the corresponding
Q 1 . Then [0, · · · , 1, · · · , 0]U e2 , from which we conclude that U
e2† = qi U e2† = W U e2 where
e2† is a left multiple of U
W = [q10 , q20 , · · · , qc0 ]0 . Hence U e2 .
Throughout this dissertation the vehicle dynamics examples will satisfy some special assumptions
on the open-loop plant. This allows the controller parametrisation of Theorem 4.1 to take a simplified
form, and as a result a further useful structural simplification can then be made. It will be convenient to
summarise these simplifications in the theorem below, which will then be applied directly throughout
the dissertation. (The first two special assumptions on the open-loop plant arise because of some passive
elements in the suspension system which ensure that the road disturbance responses are satisfactory
without any feedback control. The third assumption is a rather technical one which says that the number
of outputs to be left invariant is no smaller than the number of actuators and that this transmission path
has full normalrank.)
e2 ∈ RH(∞p3 −r3 )× p3 such that all stabilising controllers which give Tŵ1 →ẑ1 = (T1 )1,1
(i) There exists U
can be parametrised as
e2 P22 )−1 Q 1 U
K = −(I − Q 1 U e2 , (4.14)
e2 ∈ RH(∞p3 −r3 )× p3 for which (4.14) parametrises all stabilising controllers such
(ii) A particular U
that Tŵ1 →ẑ1 = (T1 )1,1 can be calculated as follows: choose M = I , M̃ = I , N = Ñ = P22 ,
e2
X = I , X̃ = I , Y = 0, Ỹ = 0 and V1 = I , define U1 from the rnf (4.10), and calculate U2 , U
as in Theorem 4.1.
(v) Let Ue2 be defined in (ii) and consider any stabilising controller K for P22 for which Tŵ1 →ẑ1 =
e2 , where K 1 is a stabilising controller for U
(T1 )1,1 . Then we can write K = K 1 U e2 P22 .
38 Controller Parametrisation for Disturbance Response Decoupling
(proof):
(iii) Consider U e2 and U e2† such that all stabilising controllers can be parametrised as K = (I −
e2 P22 )−1 Q 1 U
Q 1U e2 , Q 1 ∈ RHr∞2 ×( p3 −r3 ) and K † = (I − Q †1 U
e2† P22 )−1 Q †1 U
e2† , Q †1 ∈ RHr∞2 ×( p3 −r3 )
e2 = Q †1 U
respectively. We can check that K = K † if and only if Q 1 U e2† . From Lemma 4.6, this
means there exits a unimodular matrix W such that Ue2† = W U e2 .
(iv) Since Ue2 , P22 have elements in RH∞ , it follows from [45, Corollary 5.5] that K 1 stabilises U
e2 P22
e2 P22 )−1 K 1 ∈ RH∞3 3 3 , which is equivalent to (I −K 1 U
if and only if (I −K 1 U m ×( p −r ) e2 P22 )−1 K 1 U
e2 ∈
RHm ∞
3 × p3 e2 is right invertible over RH∞ , which is the necessary and sufficient condition
since U
e2 stabilises P22 . To complete the proof, let Q 1 = −(I −K 1U
that K 1 U e2 P22 )−1 K 1 ∈ RH∞m 3 ×( p3 −r3 )
(v) Any stabilising controller K for which Tŵ1 →ẑ1 = (T1 )1,1 takes the form of (4.14). We can
e2 P22 )−1 Q 1 for some Q 1 ∈ RH∞
then define a controller K 1 = −(I − Q 1 U m 3 ×( p3 −r3 )
such that
K = K1Ue2 . It can also be shown directly that −(I − K 1 U
e2 P22 )−1 K 1 = Q 1 ∈ RH∞
m 3 ×( p3 −r3 )
,
e2 P22 .
which means that K 1 stabilises U ♥
P P
e2
U e2
U
− P†
Q1
+
e2 P22
U K1
(a) (b)
The controller structure given in (4.14), which is a special case of the general parametrisation given
in Theorem 4.1, may be represented in the block diagram form shown in Fig. 4.2(a). Theorem 4.2(iv,v)
e2 as the rightmost term in
shows that the essential feature in this controller structure is the presence of U
(4.14). This is illustrated in the block diagram Fig. 4.2(b) where K 1 may be any stabilising controller
e2 factor.
for the transformed plant P † . We now present a partial result to emphasise the role of U
4.2 Controller Parametrisation Results 39
Theorem 4.3 Let (1) P is (open-loop) stable, (2) K 0 = 0. Consider the controller structure of Fig.
4.3 with P given by (4.5). Then
(i) assuming closed-loop stability, the controller structure leaves Tŵ1 →ẑ1 the same as the open loop
e2† is a left annihilator of P21,1 .
if U
(ii) if P12,1 is full column normalrank and the controller structure leaves Tŵ1 →ẑ1 the same as the
e2† is a left
open loop for some controller K 1† for which Fig. 4.3 is closed-loop stable, then K 1† U
annihilator of P21,1 .
e2†
U
P†
K 1†
(proof):
e2† P21,1 = 0.
(ii) If P12,1 is full column normalrank and (4.15) holds for some controller K 1† , then K 1† U
e2† is a left annihilator of P21,1 .
That is K 1† U
0 0
e1† ∈ RHr∞3 × p3 is a completion of U
(iii) Suppose U e2† such that U
e† = (U e1† , U
e2† )0 is unimodular, and
e†−1 = U † = (U1† , U2† ). Since U
U e2† is a left annihilator of P21,1 , we can write
" # " #
e1†
U F†
e† P21,1 =
U P21,1 = ,
e2†
U 0
40 Controller Parametrisation for Disturbance Response Decoupling
p3 ×r3
where U1† ∈ RH∞ . Note that U1† F † is a rnf of P21,1 because F † has normalrank r3 , which
results from the fact that P21,1 has normalrank r3 and the multiplication of a unimodular matrix
to obtain F † does not change the normalrank.
Using Theorem 4.2 we can find a rnf of P21,1 = U1 F, a unimodular matrix (U1 , U2 ) and its
inverse (U e1 , U e2 )0 so that K in (4.14) parametrises all stabilising controllers for some Q 1 ∈
RHr∞2 ×( p3 −r3 ) . We now wish to show that {Q †1Ue2† } = {Q 1U e2 }. From Lemma 4.2 we know that
U1† = U1 Z 1 for some unimodular matrix Z 1 ∈ RHr∞1 ×r1 , and from Lemma 4.3 we know that U2† =
U1 α + U2 β for some α ∈ RH(∞p3 −r3 )×r3 and some unimodular matrix β ∈ RH∞
( p3 −r3 )×( p3 −r3 )
.
Hence
" #
e1†
U h i−1
= U1† , U2†
e2†
U
" #−1 " #
Z1 α h i−1 e1 − Z 1−1 αβ −1 U
Z 1−1U e2
= U1 , U2 = , (4.16)
0 β e2
β −1 U
e2† } = {Q 1 U
which results in {Q †1 U e2 } from Lemma 4.6, since U e2 and β −1 is unimodular.
e2† = β −1 U
The result now follows from Theorem 4.2(i). ♥
Theorem 4.1, 4.2 parametrise the set of all stabilising controllers which leaves the pre-specified
closed-loop transfer function the same as the open-loop, i.e. T1,1 = (T1 )1,1 . In the following theorem,
we extend this idea to find all stabilising controllers which have the same pre-specified closed-loop
responses as those with a special controller.
Theorem 4.4 Consider any stabilisable P in the configuration of Fig. 4.1. All stabilising controllers
which leave the closed loop transfer function (T )1,1 the same as that of the controller K = (Y −
S
M Q)(X S −1 can be expressed in the form of (4.6) and (4.7) with
− N Q)
!−1 !
V1 e2
Q 1U
S+
Q = Q , (4.17)
V2 Q2
(proof): From (4.8), the closed-loop transfer function (T )1,1 remains the same as that of the controller
S
K = (Y − M Q)(X − N Q)S −1 if and only if (T1 + T2 QT3 )1,1 = (T1 + T2 QT
S 3 )1,1 , which is equivalent
S 3 )1,1 = 0, which results in (4.17) by using Theorem 4.1.
to (T2 (Q − Q)T ♥
4.3 Design Freedom and Achievable Performance 41
Remark 4.2 If P22 is stable and m 3 = r2 , then the set of all stabilising controllers which leaves the
S
closed loop transfer function (T )1,1 the same as that of the controller K = (Y − M Q)(X S −1
− N Q)
is parametrised by:
S + Q 1U
Q = Q e2 . (4.18)
In the previous section, we introduced the parametrisation of all stabilising controllers which leaves
some pre-specified transmission paths unchanged. To fulfil this goal, we “shrink” the parametrisation
3 × p3
set of all stabilising controllers from Q ∈ RHm
∞ to (4.11). It is therefore interesting to ask whether
this procedure reduces any design freedom, or introduces performance limitation on other transmission
paths. First let us consider the design freedom in the following example:
Example 4.1 Consider the system in Fig. 4.4. Suppose our design goal is to find a controller which
fixes Td̂1 → ŷ and improves Td̂1 → ŷ1 . The question is: can we actually do this?
r =0 e y1
G
+
+
+u y +
K
+ +
d2 d1
Clearly this is not possible since the closed-loop transfer function of the system is:
" # " #" # " #" #
y1 (I − G K )−1 G K (I − G K )−1 G d1 T SG d1
= = ,
y (I − G K )−1 (I − G K )−1 G d2 S SG d2
where S is the system sensitivity function and T = I − S is the complementary sensitivity function.
Hence Td̂1 → ŷ + Td̂1 → ŷ1 = I , and there is no design freedom left.
To see this using the machinery of Section 4.2 we rewrite the system in the form of Fig. 4.1 with
w1 = d1 , w2 = d2 , z 1 = y1 , z 2 = y, and u, y the same as in Fig. 4.4. The generalised plant P then
takes the following form:
0 G G
P =
I G G
. (4.19)
I G G
42 Controller Parametrisation for Disturbance Response Decoupling
Let G = N M −1 = M̃ −1 Ñ be the right and left coprime factorisations of P22 = G, we find a lnf of
T2,1 as T2,1 = G M = E V1 and notice that a lnf of T2 is T2 = [G M, G M]0 = [E, E]0 V1 , which
shares the same V1 in (4.11). Therefore, the parametrisation of all stabilising controllers which leave
Td̂1 → yˆ1 fixed is the same as the parametrisation of all stabilising controllers which leave Td̂1 →[ yˆ1 , ŷ]0
unchanged. As a result, Td̂1 → ŷ cannot be improved once Td̂1 → ŷ1 is fixed. 2
We will now derive conditions under which the achievable performance of the system, when a
certain transmission path is kept fixed, is not reduced in a significant way for other transmission paths.
To do this, we will work directly with the Q-parameters in the Youla parametrisation. In particular,
we will study how restrictions on the form of Q-parameters in (4.11) affect this freedom. We begin
the discussion with a scalar transfer function.
Lemma 4.7 Given two sets of strictly proper transfer functions, A = {G 1 Q : Q ∈ RH∞ } and
B = {G 2 Q : Q ∈ RH∞ }, where G 1 is strictly proper in RH∞ and G 2 = G 1 × n1
m1
in which m 1 , n 1
are Hurwitz polynomials with deg(m 1 ) − deg(n 1 ) = 1, for any R1 ∈ A we can find a R2 ∈ B such
that kR1 − R2 k∞ < for any > 0.
(proof): Since G 2 has relative degree one greater than G 1 , for any R1 ∈ A we take the following
candidate for R2 :
1
R2 = R1 × ,
sτ + 1
for some τ > 0. Note that R2 ∈ B since by definition R1 = G 1 Q for some Q ∈ RH∞ and so
R2 = G 1 Q sτ1+1 = G 2 ( n1 (sτ
m1
+1)
Q) and ( n1 (sτ
m1
+1)
Q) ∈ RH∞ . Therefore, we have:
sτ
kR1 − R2 k∞ = kR1 k∞ . (4.20)
sτ + 1
We now wish to show that the right-hand side of (4.20) can be made arbitrarily small by taking τ
sufficiently small. Firstly, since R1 is strictly proper, given any > 0 we can find an ω0 () such
j ωτ
that |R1 ( j ω)| < for ω > ω0 , and hence supω>ω0 |R1 j ωτ +1
| ≤ |R1 ( j ω)| < independently of τ .
j ωτ
Secondly, for ω ∈ [0, ω0 ], max| j ωτ +1
| can be made as small as we like by choosing a sufficiently
j ωτ
small τ . Hence we can choose τ sufficiently small so that supω∈[0,ω0 ] |R1 j ωτ +1
| < for any > 0
j ωτ
on this interval. Combining these together, we can ensure that supω |R1 j ωτ +1
| < and is therefore,
k(R1 − R2 )( j ω)k∞ < by choosing τ sufficiently small. ♥
Remark 4.3 If G 1 is proper in RH∞ and deg(m 1 ) = deg(n 1 ), then for any R1 ∈ A we can find
a R2 = R1 which belongs to B in that R2 = G 1 Q = G 2 ( mn11 Q) and ( mn11 Q) ∈ RH∞ , such that
R1 − R2 = 0. ♦
For the scalar case, Lemma 4.7 gives a way of showing that the achievable closed-loop performance
will not be reduced up to an approximation error of in the H∞ norm, since the closed-loop transfer
4.3 Design Freedom and Achievable Performance 43
function is affine in Q. Now we will extend Lemma 4.7 to a matrix case in the following lemma. A
matrix is said to be proper if all its elements are proper, and strictly proper if all its elements are strictly
proper.
Lemma 4.8 Given two sets of proper, stable transfer matrices, A = {G 1 Q : Q is a matrix with
elements in RH∞ } and B = {G 2 Q : Q is a matrix with elements in RH∞ }, where G 2 J = G 1 for
some J :
(i) Suppose G 1 is strictly proper in RH∞ and J ( sτ1+1 )r is a matrix with elements in RH∞ for some
r > 0 and any τ > 0. Then for any R1 ∈ A we can find a R2 ∈ B such that kR1 − R2 k∞ <
for any > 0.
(ii) If G 1 and J are proper in RH∞ then for any R1 ∈ A we can find a R2 ∈ B such that
kR1 − R2 k∞ = 0. ♥
(proof):
1
R2 = R1 ( )r ,
sτ + 1
for some τ > 0. Note that R2 ∈ B since by definition R1 = G 1 Q for some Q which has
elements in RH∞ and so R2 = G 2 ( J ( sτ1+1 )r Q), where (J ( sτ1+1 )r Q) has elements in RH∞ .
Hence
1
kR1 − R2 k∞ = kR1 (1 − ( )r )k∞ . (4.21)
sτ + 1
The proof is similar to that of Lemma 4.7. Firstly, since R1 is strictly proper, given any > 0 we
can find an ω0 () such that σ̄ (R1 ( j ω)) < for ω > ω0 , and σ̄ω>ω0 (R1 ( j ω)(1 − ( j ωτ1+1 )r )) ≤
σ̄ω>ω0 (R1 ( j ω)) < . Secondly, for ω ∈ [0, ω0 ], (1 − ( j ωτ1+1 ))r can be made as small as
we like by choosing a sufficiently small τ . Hence we can choose τ sufficiently small so that
σ̄ω∈[0,ω0 ] (R1 (1 − ( j ωτ1+1 )r )) < for any > 0. Combining these together, we can ensure that
j ωτ r
σ̄ (R1 (1 − ( j ωτ +1
) )) < for all ω ≥ 0, and therefore, k(R1 − R2 )( j ω)k∞ < by choosing τ
sufficiently small.
Lemma 4.9 Given two sets of proper, stable transfer matrices, A = {QG 1 : Q is a matrix with
elements in RH∞ } and B = {QG 2 : Q is a matrix with elements in RH∞ }, where J G 2 = G 1 for
some J :
44 Controller Parametrisation for Disturbance Response Decoupling
(i) Suppose G 1 is strictly proper in RH∞ and J ( sτ1+1 )r is a matrix with elements in RH∞ for some
r > 0 and any τ > 0. Then for any R1 ∈ A we can find a R2 ∈ B such that kR1 − R2 k∞ <
for any > 0.
(ii) If G 1 and J are proper in RH∞ and then for any R1 ∈ A we can find a R2 ∈ B such that
kR1 − R2 k∞ = 0. ♥
Combining Lemma 4.8 and Lemma 4.9, the following theorem gives our basic result to test the
achievable performance after disturbance response decoupling design.
Theorem 4.5 Given two sets of proper, stable transfer matrices, A = {G 1 Q H1 : Q is a matrix with
elements in RH∞ } and B = {G 2 Q H2 : Q is a matrix with elements in RH∞ } , where G 2 J = G 1 for
some J and K H2 = H1 for some K :
(i) Suppose G 1 Q H1 is strictly proper in RH∞ for any Q which has elements in RH∞ , J Q K ( sτ1+1 )r
is a matrix with elements in RH∞ for some r > 0 and any τ > 0, then for any R1 ∈ A we can
find a R2 ∈ B such that kR1 − R2 k∞ < for any > 0.
(ii) If J Q K is a proper matrix for any Q which has elements in RH∞ , then for any R1 ∈ A we can
find a R2 ∈ B such that R1 − R2 = 0.
(proof):
1
R2 = R1 ( )r ,
sτ + 1
for some τ > 0. Note that R2 ∈ B since by definition R1 = G 1 Q H1 for some Q which has
elements RH∞ and so R2 = G 2 ( J Q K ( sτ1+1 )r )H2 , where (J Q K ( sτ1+1 )r )H2 has elements in
RH∞ . Hence
1
kR1 − R2 k∞ = kR1 (1 − ( )r )k∞ . (4.22)
sτ + 1
Then the proof is the same as that of Lemma 4.8.
(ii) If J Q K is a proper matrix for any Q which has elements in RH∞ , then for any R1 ∈ A we can
set R2 = R1 since R1 = G 1 Q H1 = G 2 ( J Q K )H2 ∈ B because J Q K has elements in RH∞ . ♥
In this section, we demonstrate the theorems developed in this chapter on two test examples by
discussing their controller structures and achievable performance. In the following chapters these
results will be applied to the active suspension problems.
4.4 Numerical Example 45
so that the parametrisation of all stabilising controllers which leaves (T )1,1 = (T1 )1,1 = s/(s + 1) is
given as (4.14) for Q 1 ∈ RH1×1
∞ .
The next thing we are going to show is that this controller parameterisation does not impose extra
performance limitations on the transmission path (T )2,1 , i.e. its achievable performance remains the
same after disturbance response decoupling. We can reduce the problem to a scalar case and check it
by Lemma 4.7, or directly check the matrix case by Theorem 4.5. In the scalar case approach, we find
the second term T2 QT3 in (4.8) takes the form with Q = [Q α , Q β ] given by:
h i
α +Q β (s+4) Q β (s+2)
T2 QT3 = Q(s+3)(s+4) , (s+3)(s+5) .
which is partitioned in the obvious way, we find a lnf of (T2 )1 = (P12 )1 as E = [1/(s + 3), 1/(s + 2)]0
and V1 = 1, and a a rnf of (T3 )1 = (P21 )1 as U1 = [1/(s + 4), 0, 1]0 and F = 1. Then we complete
U1 with U2 = [0, 1; 1, 0; 0, 0], and obtain U e2 as follows:
" #
0 1 0
e2 =
U ,
−1
1 0 s+4
so that the parametrisation of all stabilising controllers which leaves (T )1,1 = (T1 )1,1 = s/(s + 1) is
given as (4.14) for Q 1 ∈ RH1×2
∞ .
Suppose all stabilising controllers are parametrised by (4.6, 4.7) with Q = [Q α , Q β , Q γ ], so that
the second term T2 QT3 of (4.8) is given by:
" Q +Q (s+4) Q β (s+2)+Q γ (s+5) Qγ
#
α γ
(s+3)(s+4) (s+3)(s+5)
T2 QT3 = Q α +Q γ (s+4) Q β (s+2)+Q γ (s+5)
s+6
Q γ (s+3) . (4.23)
(s+2)(s+4) (s+2)(s+5) (s+2)(s+6)
It is noticed that the (2,1) term of (4.24) is also zero, which means (T )2,1 = (T1 )2,1 though in the design
we only try to keep (T )1,1 = (T1 )1,1 . That is, there is no design freedom left in this transmission path,
with the same reason as given in Example 4.1.
Now we shall discuss the achievable responses of this system after performing disturbance response
decoupling. We can compare (4.23) and (4.24) and reduce the problem to a scalar case. That is, by
setting G 1 = 1/(s + 6) and G 2 = 1/(s + 4)(s + 6), Lemma 4.7 shows that (T2 Q 1 U e2 T3 )1,2 can
approximate (T2 QT3 )1,2 to an error of in the H∞ norm. In the matrix case approach, we use
Theorem 4.5 by setting A = {T2 QT3,2 } and B = {T2 Q 1 U e2 T3,2 }, which gives G 1 = G 2 = T2 ,
H1 = T3,2 and H2 = Ue2 T3,2 so that J = I and
0 1
K = H1 H2−1 = 1 0 .
0 −(s + 4)
Therefore, from Theorem 4.5 the achievable performance is not reduced in a significant way after the
disturbance response decoupling. 2
This chapter has derived general theorems (Theorem 4.1–4.4) to parametrise all stabilising controllers
which leave some pre-specified closed-loop transfer function fixed. The motivation came from the
vehicle active suspension design problem with particular regard for the potentially conflicting perfor-
mance requirements from two disturbance sources: road irregularities and loads applied to the vehicle
4.5 Summary and Comments 47
body. The controller parametrisation developed in this chapter will allow a feedback controller to be
designed taking account of these disturbances independently. The conditions under which the achiev-
able performance of other transmission paths remains effectively the same were also derived. The
design for the vehicle active suspension control will be investigated in the following chapters.
Chapter 5
This chapter applies the theorems of Chap. 4 to the standard quarter-car model employing a “Sharp”
actuator with various choices of measured variables. The required controller structures to leave the
road disturbance responses the same as in the passive case are derived. Section 5.1 introduces the
quarter-car model with a “Sharp” actuator, and derives the desired controller structure in the two
measurement case. The controller structure turns out to be similar to one of R.A. Williams et al [40],
but with a slight generalisation. Section 5.2 discusses the same model with three measurements, and
derives the generalised controller structures. Section 5.3 lists the controller structures and the shaped
plants with various choices of measured variables. Section 5.4 shows that the achievable load responses
remain effectively unchanged after disturbance response decoupling design. Section 5.5 presents a
general quarter-car layout and gives the controller structures for disturbance response decoupling.
We begin with the quarter-car model of Fig. 5.1 where the sprung and unsprung masses are m s and
m u and the tyre is modelled as a linear spring with constant kt . The suspension consists of a passive
damper of constant cs in parallel with a series combination of an actuator A and a spring of constant ks
(sometimes referred to as a “Sharp” actuator [42]). Following [28] the actuator is modelled so that the
relative displacement across the actuator will be a low-pass filtered version of the actuator’s command
signal, i.e.
ẑ s − ẑ a = γ (s)û. (5.1)
ωn2
γ (s) = . (5.2)
s 2 + 2δωn s + ωn2
49
50 Disturbance Response Decoupling for The Quarter-Car Model
The external disturbances are taken to be a load Fs and a road displacement zr , and the measurements
are taken to be z̈ s and z s − z u . The dynamic equations of the model are given by:
m s z̈ s = Fs − u p , (5.3)
m u z̈ u = u p + Fr , (5.4)
where
u p = cs (ż s − ż u ) + ks (z a − z u ), (5.5)
Fr = kt (zr − z u ). (5.6)
zs
ms
za
cs A
ks
zu
mu
kt
zr
We wish to parametrise all controllers which leave the transmission path from the road disturbance
to z s and z u the same as in the open-loop, i.e. with u = 0. This assumes that ks and cs are chosen to
give satisfactory responses for this transmission path. In effect, this gives the choice of K 0 = 0. We
now write the system in the form of Fig. 4.1 with z 1 = [z s , z u ]0 , w1 = zr , w2 = Fs , y = [z̈ s , z s − z u ]0 ,
u equals the actuator command signal as in (5.1) and z 2 omitted. The corresponding dimensions are
m 1 = m 2 = m 3 = 1, p1 = 2, p2 = 0, p3 = 2. Equation (4.5) then takes the form:
ẑ s
" # ẑr
ẑ u P11 P12 F̂s ,
=
s 2 ẑ s P21 P22
û
ẑ s − ẑ u
5.1 The Quarter-Car with Two Measurements 51
where
d(s) = (m s m u )s 4 + cs (m s + m u )s 3 + (m s (ks + kt ) + m u ks )s 2 + cs kt s + ks kt . (5.9)
As expected, all roots of d(s) are in left-half plane, which can be confirmed by the Routh-Hurwitz
Criterion.
We now observe that P12,1 = P12 , which has normalrank equal to one, i.e. r2 = m 3 . Since P
is open-loop stable and K 0 = 0, the conditions of Theorem 4.2 are satisfied. We can then apply
e2 which defines the required control structure. Following the
Theorem 4.2(ii) to find the matrix U
definitions in Theorem 4.2(ii) we first find:
" #
kt s 2 cs s + ks
T3,1 = M̃ P21,1 = ,
d(s) −m s
which has normalrank equal to one, i.e. r3 = 1. Hence we can select:
kt s 2 p1 (s)
F = ,
d(s)
" #
1 cs s + ks
U1 = ,
p1 (s) −m s
where p1 (s) is any first order Hurwitz polynomial, to give a rnf of T3,1 . We can choose U2 to complete
a unimodular matrix U as follows:
" #
cs s+ks
p1 (s)
0
U = (U1 , U2 ) = −m s
,
p1 (s)
1
e10 , U
which gives U −1 = [U e20 ]0 and
h i
e2 =
U ms
1 . (5.10)
cs s+ks
Thus, all stabilising controllers which leave Tzr →[zs , zu ]0 the same as in the open-loop can then be
expressed as shown in Fig. 5.2 where
e2 P22 )−1 Q 1 ,
K 1 = −(I − Q 1U (5.11)
for Q 1 ∈ RH1×1 e
∞ or equivalently K 1 is any stabilising controller for U2 P22 (see Theorem 4.2).
52 Disturbance Response Decoupling for The Quarter-Car Model
z̈ s
ms ms
cs s+ks
u +
A K1
cs +
ks
mu zs − zu
kt
Figure 5.2: Controller structure for the quarter-car with two feedbacks.
Example 5.1 We now apply the above result to a specific case in which we make the suspension
stiff to load disturbances but soft to road disturbances. We select the following parameters for the
quarter-car model as in [32]: m s = 250 kg, m u = 35 kg, kt = 150 kN/m. We choose ωn = 100
rad/s and δ = 0.7071 as the parameters for the actuator dynamics. We also choose ks = 12 kN/m,
cs = 4 kNs/m as the spring-damper coefficients which we consider to give a suitable “soft” response
from the road disturbances in the passive implementation. It is now required to design the active
controller to achieve desirable responses from the load disturbances.
A simple approach is to take Q 1 to be constant in (5.11) and to minimise the steady-state response
from load disturbances to sprung mass position. A straightforward calculation shows that TF̂s →ẑs (0) =
(ks + kt − Q 1 kt )/(ks kt ) which can be made to equal zero when Q 1 = (ks + kt )/kt = 1.08. The step
responses for the passive and active suspensions are shown in Fig. 5.3, which clearly illustrates the
zero steady-state response to loads achieved by the active controller.
zr → zs Fs → zs
−4
x 10
1.5 1
0.8
1 0.6
0.4
0.5
0.2
0 0
0 2 4 0 1 2 3 4
z →z −5 F →z
r u x 10 s u
1.5 1
0.8
1
0.6
0.4
0.5
0.2
0 0
0 2 4 0 2 4
Figure 5.3: Passive suspension (Q 1 = 0, solid) and active suspension (Q 1 = 1.08, dashed).
5.1 The Quarter-Car with Two Measurements 53
As a second approach we can employ the H∞ loop shaping design procedure [18, 45] to the plant
e2 P22 . We select a weighting function as follows:
U
10(s + 80)
W1 = ,
(s + 8)
e2 P22 , has a gain crossover frequency at about 44 rad/s, somewhat
so that the open-loop loop shape, W1 U
below the actuator cut-off frequency of 100 rad/s. The use of a lag compensator in W1 allows the gain
to be increased relatively at low frequencies in order to achieve a smaller value of TF̂s →ẑs (0). This
choice of weighting function gives a stability margin of 0.3864. The final controller takes the form
K = K1U e2 (see Fig. 5.2) where
0.8
0.6
0.4
0.2
0
0 0.5 1 1.5 2
sec
Figure 5.4: Passive suspension (solid) and active suspension using H∞ loop shaping design (dashed).
At this point it is instructive to compare the control structure shown in Fig. 5.2 with a scheme
presented by Williams, Best and Crawford in [40]. The stated aim of their controller is to provide a
rapid closed-loop levelling system which does not respond to unwanted road disturbances, and this is
achieved “by filtering and summing the sprung mass acceleration and suspension displacement signals
to eliminate the effects of the road inputs”. A block diagram of the scheme in [40] is shown in Fig. 5.5
where T (s) is a phase lead compensator. Although the damper is placed in series with the actuator
this is not an essential difference. It may be observed that the ratio between the two filters F1 and F2
is equal to m s /(cs s + ks ) so the scheme operates in a similar way to that of Fig. 5.2. In fact it can be
shown that, if the denominators in F1 and F2 are both replaced by any first order Hurwitz polynomial,
and T (s) is any stabilising controller, then the scheme parametrises all controllers which leave the
road disturbance responses the same as in the open-loop. Thus the scheme lacks full generality only
54 Disturbance Response Decoupling for The Quarter-Car Model
by virtue of the fact that the filters F1 and F2 have an extra order of roll-off at high frequency, which
is a minor difference since it may be useful to provide some high-frequency roll-off in K 1 in practice.
z̈ s
ms
ms F1
ks cs m s s 2 +cs s+ks
−
A T (s)
−
cs s+ks F2
m s s 2 +cs s+ks
mu zs − zu
kt
Finally, it is useful to comment on the full set of performance requirements that are usually consid-
ered in suspension design. In addition to the sprung mass position as a function of road disturbances,
which can be analysed with regard to driver comfort, there are also issues such as tyre normal loads
(i.e. tyre deflection) and rattle space (i.e. strut deflection). It was shown in [13] that if the transfer
function from zr to z s is determined, then there is no additional freedom left in the road disturbance
transmission path, i.e. the transfer functions Tẑr →ẑr −ẑu and Tẑr →ẑs −ẑu can be deduced directly. A sim-
ilar fact was shown in [31] for the load disturbance transmission path. Thus, in the above approach
to active suspension design, it is assumed that for each disturbance transmission path that is being
dealt with, all the relevant factors (e.g. comfort, tyre loads, suspension deflection) are taken account
of together.
We continue to illustrate our basic theory by considering the quarter-car model with the additional
measurement z̈ u . We now write the system in the form of Fig. 4.1 with y = [z̈ s , z s − z u , z̈ u ]0 and all
other variables the same as in Section 5.1. The general plant of equation (4.5) then has P11 , P12 the
5.2 The Quarter-Car with Three Measurements 55
kt s 2 p2 (s)
F = ,
d(s)
cs s + ks
1
,
U1 = −m s
p2 (s)
m s s 2 + cs s + ks
where p2 (s) is any second order Hurwitz polynomial, to give a rnf of T3,1 . We can choose U2 =
e10 , U
[I2×2 , 02×1 ]0 to complete a unimodular matrix U to give U −1 = [U e20 ]0 with
" #
1 0 − m s sc2s+c
s+ks
e2 =
U s s+ks . (5.12)
ms
0 1 m s s 2 +cs s+ks
Thus, all stabilising controllers which leave Tẑr →[ẑs , ẑu ]0 the same as in the open-loop can then be
expressed as shown in Fig. 5.6 where
e2 P22 )−1 Q 1 ,
K 1 = −(1 − Q 1 U (5.13)
z̈ s e2
U
+
ms − cs s+ks
m s s 2 +cs s+ks
u
cs A K1
ks ms
+ m s s 2 +cs s+ks
zs − zu +
mu
z̈ u
kt
Figure 5.6: Controller structure for the quarter-car with three feedbacks.
We can see that W † fails to be unimodular as required by Theorem 4.2(iii). Moreover, it is straightfor-
e2† : Q †1 ∈ RH1×2
ward to show that the set {Q †1U e
∞ } is equal to the set {Q 1 U2 : Q 1 ∈ RH∞ , Q 1,1 (∞) =
1×2
0}, i.e. the full parametrisation but with the first element in Q 1 being strictly proper. Thus a con-
troller parametrisation with Ue2 replaced by U
e2† does not give all possible stabilising controllers which
leave the road disturbance responses the same as in the open-loop (see Lemma 4.6 and Theorem 4.2).
However, the restriction of the Q-parameter amounts only to an increased roll-off requirement of the
controller at high frequency.
Referring to Fig. 5.6, let us consider another possible controller structure:
" #
f1 1 0
Ue2 =
‡
,
1 0 f2
5.3 Quarter-Car Control Structures and Design 57
e2‡ = W ‡ U
where f 1 , f 2 ∈ RH∞ are strictly proper. The identity U e2 now implies that
" #
ms
1
W‡ = cs s+ks
,
1 0
and " #
ms
1 0
e2‡ =
U cs s+ks
.
−(cs s+ks )
1 0 m s s 2 +cs s+ks
e2 can be replaced by U
Since W ‡ is unimodular, then U e2‡ in Fig. 5.6 to give a parametrisation of all
stabilising controllers (Theorem 4.2(iii)).
For direct controller design using Theorem 4.2, it is instructive to compute U e2 P22 for the given choice
of measurements. Table 5.1 shows U e2 P22 for three different cases. It is interesting that U
e2 P22 takes a
particularly simple form, which is independent of the sprung and unsprung masses, in the case when
the feedback signals z̈ s and z s − z u are used, which means that the controller design would be rather
simple in this case.
measurements e2
U e2 P22
U
" #
z̈ s h i
ms ks γ (s)
1 cs s+ks
zs − zu cs s+ks
z̈ s " # " #
1 0 − m s sc2s+c
s+ks
s2
zs − zu s s+ks ks γ (s)
0 1 ms m s s 2 +cs s+ks
1
m s s 2 +cs s+ks
z̈ u
z̈ s " # " #
0 1 0 1
zs − za γ (s)
ms
0 1 −cs s
za − zu cs s+ks cs s+ks
e2 structures and the transformed plants of the quarter-car model with various mea-
Table 5.1: The U
surements.
In this section, we will discuss the achievable load responses after the disturbance response decoupling
design.
58 Disturbance Response Decoupling for The Quarter-Car Model
In the two feedback case, all stabilising controllers are parametrised by (4.6, 4.7) with Q = [Q α , Q β ],
so that the load responses are given by:
" # " #!
ẑ s 1 ks (m u s 2 + kt )
= P11,12 − L 1 (s) F̂s , (5.14)
ẑ u d(s) −ks m s s 2
where L 2 (s) = γ (s)Q 1 /(cs s + ks ). To compare the achievable performance, set Q 1 = ((m u s 2 + cs s +
ks + kt )s 2 Q α + (m u s 2 + kt )Q β )/d(s) and note that L 2 = L 1 /(cs s + ks ). Therefore, from Lemma 4.7,
L 2 (s) can approximate L 1 (s) to an error of in the H∞ norm. Hence the freedom in achievable load
responses after disturbance response decoupling is effectively unchanged.
In the three feedback case, all stabilising controllers are parametrised by (4.6, 4.7) with Q =
[Q γ , Q δ , Q ζ ], so that the load responses are given by:
" # " #!
ẑ s 1 ks (m u s 2 + kt )
= P11,12 − L 3 (s) F̂s , (5.16)
ẑ u d(s) −ks m s s 2
where L 3 (s) = γ (s)((m u s 2 +cs s +ks +kt )s 2 Q γ +(m u s 2 +kt )Q δ +(cs s +ks )s 2 Q ζ )/d(s). It is noticed
that any achievable performance by three measurements can also be achieved by two measurement
[z̈ s , z s − z u ]0 in that for any L 3 we can achieve a L 1 = L 3 by setting Q α = Q γ + Q ζ (cs s +
ks )/(m u s 2 + cs s + ks + kt ) and Q β = Q δ in L 1 (s). After disturbance response decoupling with the
controller structure U e2 given in (5.12), and with the parameter Q 1 = [Q 1,1 , Q 1,2 ], the load responses
are given by:
" # " #!
ẑ s 1 ks (m u s 2 + kt )
= P11,12 − L 4 (s) F̂s , (5.17)
ẑ u d(s) −ks m s s 2
where L 4 (s) = γ (s)(s 2 Q 1,1 + Q 1,2 )/(m s s 2 +cs s+ks ). Therefore, for any L 3 we can choose Q 1,1 , Q 1,2
as follows:
(m u s 2 + cs s + ks + kt )(m s s 2 + cs s + ks ) cs s + ks
Q 1,1 = (Q γ + Q ζ ),
d(s) m u s 2 + cs s + ks + kt
(m u s 2 + kt )(m s s 2 + cs s + ks )
Q 1,2 = Qδ,
d(s)
5.5 A General Quarter-Car Layout 59
so that L 4 = L 3 . Hence the achievable load responses are the same after disturbance response
decoupling design.
We can also check this same fact on achievable load performance by directly using the matrix
formulation in Theorem 4.5. The original achievable load responses are T1,2 − T2 QT3,2 with Q ∈
RH1×3
∞ , and after disturbance response decoupling design the achievable load responses are T1,2 −
e2 T3,2 with Q 1 ∈ RH1×2
T2 Q 1 U e
∞ . Therefore, we can set A = {T2 QT3,2 } and B = {T2 Q 1 U2 T3,2 } in
Theorem 4.5 and assign G 1 = G 2 = T2 , H1 = T3,2 and H2 = U e2 T3,2 , so that J = I and K is found
as follows:
m u s 2 + cs s + ks + kt 0
m s s 2 + cs s + ks
K = 0 m u s 2 + kt
,
d(s)
cs s + ks 0
Accordingly, the achievable load responses remain the same after disturbance response decoupling
design (Theorem 4.5(ii)).
Fs
zs
ms
za
cs1 k s1 A
cs2 k s2
zu
mu
kt
zr
At the end of this chapter, let us consider a general quarter-car layout in Fig. 5.7, where the
actuator A is modelled the same way as (5.1–5.2). We write the system in the form of Fig. 4.1
with z 1 = [z s , z u ]0 , w1 = zr , w2 = Fs , y = [z̈ s , z s − z u ]0 , u equals the actuator command
signal as in (5.1) and z 2 is omitted. From Theorem 4.2, it is easy to find the controller structure
e2 which leaves the road responses the same as in the passive case. Table 5.2 shows the controller
U
e2 and U
structure U e2 P22 of this general quarter-car model for the following cases: (1) two feedback
y = [z̈ s , z s −z u ]0 , (2) three feedbacks y = [z̈ s , z s −z u , z̈ u ]0 , (3) four feedbacks y = [z̈ s , z s −z u , z̈ u , u p ]0
where u p = (cs1 s + ks1 )(z s − z u ) + (cs2 s + ks2 )(z a − z u ) represents the suspension force. The Maple
code for the first case is given in Appendix C.
60 Disturbance Response Decoupling for The Quarter-Car Model
measurements e2
U e2 P22
U
" #
z̈ s h i
ms (cs2 +ks2 )γ (s)
(cs1 +cs2 )s+(ks1 +ks2 )
1 (cs1 +cs2 )s+(ks1 +ks2 )
zs − zu
z̈ s (c +c )s+(ks1 +ks2 )
" #
1 0 − m s s 2 +(c
s1 s2
(cs2 s+ks2 )γ (s) s2
zs − zu s +cs 1 2
)s+(ks1 +ks2 )
0 1 ms m s s 2 +(cs1 +cs2 )s+(ks1 +ks2 )
1
m s s 2 +(cs1 +cs2 )s+(ks1 +ks2 )
z̈ u
((cs1 +cs2 )s+(ks1 +ks2 ))m s
z̈ s
0 0 1 −m s s 2
z −z m s s 2 +(cs1 +cs2 )s+(ks1 +ks2 )
s a (cs1 +cs2 )s+(ks1 +ks2 ) (cs2 s+ks2 )γ (s)
1 0 − m s s 2 +(c 0 s2
z̈ u s1 +cs2 )s+(ks1 +ks2 ) m s s 2 +(cs1 +cs2 )s+(ks1 +ks2 )
0 1 ms
0 1
up m s s 2 +(cs1 +cs2 )s+(ks1 +ks2 )
e2 structures and the transformed plants of the general quarter-car model with various
Table 5.2: The U
measurements.
This chapter has applied the disturbance response decoupling techniques to the quarter-car active
suspension design problem. This allowed a feedback controller to be designed taking account of only
the load disturbance path objective, given that the controller structure ensured that the road disturbance
responses remained satisfactory. The approach was illustrated with various choices of measurements,
and the required control structures were derived in parametric form. Furthermore, it was verified that
the achievable load responses remain effectively the same after the disturbance response decoupling
design. It was also noted that the shaped plant sometimes takes a particular simple form, as shown in
Table 5.1, 5.2, so that the controller design would be rather simple. This would be an interesting area
for further investigation.
Chapter 6
In this chapter, we shall apply the disturbance response decoupling techniques to the simple half-car
model with acceleration and strut deflection measurements. Section 6.1 derives the control structure
required to keep the road disturbance responses the same as in the passive case. Section 6.2 shows
that the achievable load responses are not reduced in a significant way after disturbance response
decoupling design. Section 6.3 investigates the “simplicity” conditions which allow the design to be
carried out for two separate quarter-cars. Section 6.4 demonstrates the refined design to make further
improvement of the closed-loop responses.
In this section, we shall apply the controller parametrisation method to the half-car model shown
in Fig. 6.1. As in the quarter-car model, the actuators A1 and A2 are modelled so that the relative
displacement across each is equal to a low-pass filtered version of the actuator’s command signal, i.e.
ẑ s + l1 ẑ ψ − ẑ a1 = γ (s)û 1 , (6.1)
ẑ s − l2 ẑ ψ − ẑ a2 = γ (s)û 2 , (6.2)
where γ (s) is defined as in (5.2). The linearised dynamic equations can be expressed as follows:
m s z̈ s = Fs − u p1 − u p2 , (6.3)
Iψ z̈ ψ = Fψ − u p1 l1 + u p2 l2 , (6.4)
m 1 z̈ u 1 = u p1 + Fr1 , (6.5)
m 2 z̈ u 2 = u p2 + Fr2 , (6.6)
61
62 Disturbance Response Decoupling for The Half-Car Model
where the passive suspension forces u p1 , u p2 , and the tyre forces Fr1 , Fr2 are given by:
u p1 = c1 (ż s + l1 ż ψ − ż u 1 ) + k1 (z a1 − z u 1 ),
u p2 = c2 (ż s − l2 ż ψ − ż u 2 ) + k2 (z a2 − z u 2 ),
Fr1 = kt1 (zr1 − z u 1 ),
Fr2 = kt2 (zr2 − z u 2 ).
Fs
z ψ , Fψ m s , Iψ zs
l1 l2
z a1 z a2
A1 A2
c1 c2
k1 k2
zu1 zu2
m1 m2
k t1 z r1 k t2 z r2
We now write the system in the form of Fig. 4.1 with z 1 = [z s , z ψ , z u 1 , z u 2 ]0 , w1 = [zr1 , zr2 ]0 ,
w2 = [Fs , Fψ ]0 , y = [z̈ s , z̈ ψ , D1 , D2 ]0 where D1 = z s + l1 z ψ − z u1 , D2 = z s − l2 z ψ − z u2 are
strut deflections, u = [u 1 , u 2 ]0 as in (6.1), (6.2) and z 2 omitted. As before we wish to parametrise all
controllers which leave the transmission path from the road disturbances [zr1 , zr2 ]0 to [z s , z ψ , z u 1 , z u 2 ]0
the same as in the open-loop, i.e. with u 1 = u 2 = 0, which assumes that k1 , k2 , c1 and c2 are
chosen to give satisfactory responses for these transmission paths. We can check that the conditions of
Theorem 4.2 again hold, so that we can follow the procedure to obtain the required controller structure.
Following the definitions in Theorem 4.2(ii) we can choose a U1 = T3,1 × p3 (s)/s 2 = P21,1 ×
p3 (s)/s 2 ∈ RH4×2
∞ and F = s / p3 (s) × I2×2 ∈ RH∞ , where p3 (s) is any third order Hurwitz
2 2×2
0
polynomial, to give a rnf of T3,1 , and complete this U1 to a unimodular matrix with U2 = 02×2 , I2×2
to give
" Iψ
#
m s l2
1 0
e2 =
U (c1 s+k1 )(l1 +l2 ) (c1 s+k1 )(l1 +l2 )
. (6.7)
m s l1 −Iψ
(c2 s+k2 )(l1 +l2 ) (c2 s+k2 )(l1 +l2 )
0 1
6.1 The Half-Car Model 63
The Maple code for generating this controller structure is given in Appendix D. We observe that
e2 “constructs” two combinations of measurements, each of which is a suspension deflection plus a
U
low-pass filtered version of a sum of the two acceleration signals. A block diagram of this control
structure is shown in Fig. 6.2.
D1
+
+ z̈ s
1
c1 s+k1 " #
1 m s l2 Iψ
l1 +l2
m s l1 −Iψ
1 z̈ ψ
+ c2 s+k2
+
D2
For direct controller design using the transformed plant P † in Fig. 4.2(b), it is interesting to note
e2 P22 takes a particularly simple form in the half-car case when U
that U e2 is determined by (6.7), namely:
" #
k1
0
e2 P22 = γ (s)
U c1 s+k1
. (6.8)
k2
0 c2 s+k2
Example 6.1 We now apply the above result to a specific case in which we make the suspension stiff
to load disturbances but soft to road disturbances. We select the following parameters for the half-car
model: m s = 1600 kg, Iψ = 1000 kg m2 , m 1 = m 2 = 100 kg, k1 = k2 = 40 kN/m, c1 = c2 = 10
kNs/m, kt1 = kt2 = 500 kN/m, l1 = 1.15 m, l2 = 1.35 m. The H∞ loop shaping controller design
e2 is given by (6.7). Setting
will be applied to this half-car model. The essential controller structure U
a weighting function W1 as follows:
" #
s + 80 10 0
W1 = , (6.9)
s+8 0 10
where
e2 P22 is itself
It is interesting to note that K 1 in (6.10) is a scalar matrix due to the fact that W1 U
scalar (see (6.8)). This controller gives the d.c. gains TF̂s →ẑs (0) and TF̂ψ →ẑψ (0) as 1.32 × 10−6 and
8.39 × 10−7 respectively, compared with 1.36 × 10−5 and 8.64 × 10−6 using passive control. The step
responses using the controllers are shown in Fig. 6.3. 2
−5
x 10
Fs → z s −6
x 10
Fψ → z ψ
1.4 9
8
1.2
7
1
6
0.8 5
0.6 4
3
0.4
2
0.2
1
0 0
0 0.5 1 1.5 2 0 0.5 1 1.5 2
sec sec
Figure 6.3: Step responses of TF̂s →ẑs and TF̂ψ →ẑψ : passive (solid) and active control (dashed).
In this section, we will discuss the achievable load responses after disturbance response decoupling
design. All stabilising controllers are parametrised by (4.6, 4.7) and the load responses are T1,2 −
T2 QT3,2 with Q ∈ RH2×4∞ . After the disturbance response decoupling procedure, the load responses
e e2 is given by (6.7) and Q 1 ∈ RH2×2
become T1,2 − T2 Q 1 U2 T3,2 , where U ∞ . Therefore, we consider two
e2 T3,2 } in Theorem 4.5, which gives
sets of strictly proper matrices: A = {T2 QT3,2 } and B = {T2 Q 1U
G 1 = G 2 = T2 , H1 = T3,2 and H2 = U e2 T3,2 . We find J = I and K as follows:
o(s 9 ) o(s 9 )
1 9
o(s ) o(s )
9
K = H1 H2−1 = , (6.12)
p8 (s) o(s 7 ) o(s 7 )
o(s ) o(s )
7 7
where p8 (s) is an eighth order Hurwitz polynomial and o(s i ) indicates an i-th order polynomial.
Thus, from Theorem 4.5, the achievable load responses after disturbance response decoupling can
approximate the original load responses to an error of in the H∞ norm.
6.3 Decoupling by Simplicity 65
Under certain conditions, the half-car model can be structurally decoupled into two quarter-cars. For
example, in [32, 37], assumptions such as kl-simplicity were used, in a mechanical network setting, to
perform energy-preserving transformations of the external disturbance variables to achieve decoupling.
In our setting we will need to use a similar transformation on all of the system variables (but will not
necessarily be able to respect the energy-preserving property). For the half-car model shown in Fig. 6.1,
we define it as simple if the following equation holds:
m1 k1 c1 kt l2
= = = 1 = . (6.13)
m2 k2 c2 k t2 l1
and define
" # " #
(x)b x1
= Lh ,
(x)ρ x2
where x may represent any of the following variables: z u , zr , z a or u, and the subscripts b and ρ
Compared with (5.1), (5.3) and (5.4), we find that (6.15), (6.17) and (6.19) represent a bounce quarter-
car, and (6.16), (6.18) and (6.20) represent a rotation quarter-car, which are decoupled from each other.
The relevant correspondences between variables is summarised in Table 6.1. Furthermore, we can
show that, in order to arrive at a decoupled form for equations (6.17) and (6.18) (e.g. z ψ being absent
from (6.17) etc), then we need both (6.13) to hold and for L h to be defined by (6.14) up to scalar
multiplication of each row.
66 Disturbance Response Decoupling for The Half-Car Model
In this section, we shall apply Theorem 4.4, to the half-car model. The controller structure shown
in Fig. 6.2 allows us to improve load responses while keeping the road responses the same as in the
passive case. After the controller design, it is possible that we are satisfied with some of the load
responses (e.g. Fs responses) and want to improve others (e.g. Fψ responses). Therefore, we can carry
out the design procedure again using Theorem 4.4. Furthermore, the achievable perfomance will also
be verified.
Firstly, we wish to parametrise all controllers which leave the transmission path from the road distur-
bances w1 = [zr1 , zr2 , Fψ ]0 to z 1 = [z s , z ψ , z u 1 , z u 2 ]0 the same as in the open-loop. We can check
that the conditions of Theorem 4.2 hold, so that we can follow the procedure to obtain the required
controller structure.
Following the definitions in Theorem 4.2 we can find a lnf of T3,1 as T3,1 = U1,Fs FFs , where
s2 (m 1 s 2 +c1 s+k1 +kt1 )s 2
0
p3 (s) (l1 +l2 )(c1 s+k1 )kt1 p3 (s)
−(m 2 s 2 +c2 s+k2 +kt2 )s 2
FFs = 0 s2 ,
p3 (s) (l1 +l2 )(c2 s+k2 )kt2 p3 (s)
1
0 0 (l1 +l2 )(c1 s+k1 )
in which p3 (s) is any third order Hurwitz polynomial, and complete this U1,Fs to a unimodular matrix
with U2,Fs = [0, 0, 0, 1]0 to give
h i
e2,Fs
U = ms
, 0, c1 s+k1
, 1 , (6.21)
c2 s+k2 c2 s+k2
h i
e2,Fs P22 = γ (s)
U k1
, k2
.
c2 s+k2 c2 s+k2
6.4 Refined Design for The Half-Car Model 67
e2,Fs P22 is independent of the masses, inertias and tyre spring constants,
It is interesting to note that U
as the quarter-car models illustrated in Table 5.1.
The achievable performance after the disturbance response decoupling design is checked by The-
e2,Fs T3,2 }. We define G 1 = G 2 = T2 , H1 = T3,2
orem 4.5, setting A = {T2 QT3,2 } and B = {T2 Q 1 U
e2,Fs T3,2 so that J = I and
and H2 = U
1 h i0
K = o(s 9 ) o(s 8 ) o(s 7 ) o(s 7 ) ,
p8 (s)
where p8 (s) is an eighth order Hurwitz polynomial and o(s i ) indicates an i-th order polynomial. Thus,
from Theorem 4.5, the achievable Fs responses after disturbance response decoupling can approximate
the original load responses to an error of in the H∞ norm.
Now we wish to parametrise all controllers which leave the transmission path from w1 = [zr1 , zr2 , Fs ]0
to z 1 = [z s , z ψ , z u 1 , z u 2 ]0 the same as in the open-loop. Again we can find a lnf of T3,1 as T3,1 =
U1,Fψ FFψ with FFψ given by
s2 (m 1 s 2 +c1 s+k1 +kt1 )l2 s 2
0
p3 (s) (l1 +l2 )(c1 s+k1 )kt1 p3 (s)
(m 2 s 2 +c2 s+k2 +kt2 )l1 s 2
FFψ = 0 s2 ,
p3 (s) (l1 +l2 )(c2 s+k2 )kt2 p3 (s)
l2
0 0 (l1 +l2 )(c1 s+k1 )
in which p3 (s) is any third order Hurwitz polynomial, and complete this U1,Fψ to a unimodular matrix
with U2,Fψ = [0, 0, 0, 1]0 to give
h i
e2,Fψ
U = 0,
−Iψ
, −(c1 s+k1 )l1
, 1 , (6.22)
(c2 s+k2 )l2 (c2 s+k2 )l2
h i
e2,Fψ P22 = γ (s)
U −k1 l1
, k2
.
(c2 s+k2 )l2 c2 s+k2
e2,Fψ P22 is independent of the masses, inertias and tyre spring constants.
Again U
The achievable performance after the disturbance response decoupling design is checked by The-
e2,Fψ T3,2 }. We define G 1 = G 2 = T2 , H1 = T3,2
orem 4.5, setting A = {T2 QT3,2 } and B = {T2 Q 1 U
e2,Fψ T3,2 so that J = I and
and H2 = U
1 h i0
K = o(s 8 ) o(s 9 ) o(s 7 ) o(s 7 ) ,
p8 (s)
where p8 (s) is an eighth order Hurwitz polynomial and o(s i ) indicates an i-th order polynomial. Thus,
from Theorem 4.5, the achievable Fψ responses after disturbance response decoupling can approximate
the original load responses to an error of in the H∞ norm.
68 Disturbance Response Decoupling for The Half-Car Model
e2,Fs and U
such that U e2,Fψ are sub-matrices of Ue2† = W U
e2 , which is, from Lemma 4.6, an equivalent
e2 in (6.7) as follows:
controller structure of U
" #
e
U
Ue2† = W U e2 = 2,Fs
. (6.23)
Ue2,Fψ
e2,Fs y = 0 and U
Moreover, it is also noticed that U e2,Fψ y = 0, where y = [z̈ s , z̈ ψ , D1 , D2 ]0 , corre-
spond to (6.3) and (6.4) respectively with Fs and Fψ absent and u 1 = u 2 = 0 (without active control).
Therefore, (6.23) also provides a physical sense of the decoupling into “bounce” and “rotation” mo-
tions.
As a numerical example, we use the bounce/pitch half-car model in Example 6.1 for refined design.
The controller structure which keeps the road responses the same as in the passive case was given in
(6.7). In Example 6.1, a sixth order controller was given by (6.10).
As pointed out in Theorem 4.4, we can make further improvements in some transmission paths
once we have a stabilising controller. For instance, let us say that we are satisfied with the Fs responses
in Example 6.1, but would like to make the suspension stiffer to Fψ . To fulfil this design goal, we first
SU
find the Q-parameter of the closed-loop controller as Q e2 = −K 1 (I − P22 K 1 )−1 , where U e2 is given
by (6.7) and K 1 is given by (6.10). Now we find the parametrisation of all stabilising controllers which
leaves the responses from w1 = [zr1 , zr2 , Fs ]0 to z 1 = [z s , z ψ , z u 1 , z u 2 ]0 the same as this closed-loop
controller as:
SU
Q=Q e2 + Q 1 U
e2,Fψ , (6.24)
where Q 1 ∈ RH2×1 e
∞ and U2,Fψ is given by (6.22). For this second stage design, we apply again H∞
loop shaping using a weighting function:
0.2(s + 40)
W1 = ,
s + 20
e2,Fψ P22 . A second stage controller after model reduction is found as:
for the transformed plant U
" #
(s + 38.96)(s + 69.35 ± 74.05 j ) 0.0356
K2 = .
(s + 23.31)(s + 70.71 ± 76.02 j ) −0.0418
S1 U
The Q-parameter for this second stage controller is Q e2,Fψ = −K 2 (I − P22 K 2 )−1 . The closed-loop
step responses of the system with the first and final controllers are shown in Fig. 6.4.
6.5 Summary and Comments 69
−5
x 10
Fs → z s −6
x 10
Fψ → z ψ
1.4 9
8
1.2
7
1
6
0.8 5
0.6 4
3
0.4
2
0.2
1
0 0
0 0.5 1 1.5 2 0 0.5 1 1.5 2
sec sec
(a) Fs → z s (b) Fψ → z ψ
SU
Figure 6.4: Closed-loop step responses using controllers parametrised by Q e2 (dashed), and Q =
SU
Q e2 + Q e2,Fψ (dotted), compared with the passive responses (solid).
S1 U
S ∈ RH2×2
where Q ∞ , Q 1 ∈ RH∞ . Therefore, the closed-loop performance with a controller
2×1
S†U
parametrised by (6.25) can also be achieved by Q = Q S† = ( QW
e† where Q S −1 + 02×1 Q 1 ).
2
This chapter has considered the half-car active suspension design problem. By applying the distur-
bance response decoupling techniques, the load responses can be improved while the road disturbance
responses remained satisfactory. A parametric control structure was derived for a typical measurement
set: vertical and angular accelerations of the sprung mass and strut deflection measurements. It was
verified that the original load responses can be approximately achieved after the disturbance response
decoupling design. The conditions under which the model structure can be decomposed into two
quarter-cars were investigated. A refined design which allows further improvement of the closed-loop
responses was also discussed. As illustrated in this chapter, this refined procedure does not imply any
further limitation on the achievable performance.
Chapter 7
This chapter employs the disturbance response decoupling techniques for the full-car model. Sec-
tion 7.1 introduces a simple symmetric full-car model with a similar suspension strut arrangement
at each wheel-station to the quarter- and half-car cases in Chap. 5, 6. Section 7.2 shows how the
model may be separated into two half-car models under a mild symmetry assumption. Section 7.3
demonstrates a design for the full-car model with acceleration and strut deflection measurements. The
bounce/pitch half-car is treated in a similar way to Chap. 6. The roll and warp modes are each treated
as quarter-cars with the warp mode being handled in a special way. We will highlight the special form
of the warp quarter-car, which has no “sprung mass dynamics”. The controller design is simulated
with a nonlinear vehicle model using the multi-body simulation package AutoSim.
In this section we consider a simple symmetric full-car model as in Fig. 7.1, where the actuators
A1 ,…, A4 are again modelled so that the relative displacement of each is equal to a low-pass filtered
version of the actuator’s command signals, i.e.
ẑ s − l f ẑ θ + t f ẑ φ − ẑ a1 = γ (s)û 1 ,
ẑ s − l f ẑ θ − t f ẑ φ − ẑ a2 = γ (s)û 2 ,
ẑ s + lr ẑ θ + tr ẑ φ − ẑ a3 = γ (s)û 3 ,
ẑ s + lr ẑ θ − tr ẑ φ − ẑ a4 = γ (s)û 4 ,
71
72 Disturbance Response Decoupling for The Full-Car Model
tr tr
z a3 z a4
A3 A4
cr cr
kr lr kr
zu3 z s , Fs zu4
mr mr
z θ , Tθ
ktr ktr z r4
z r3 m s , Iφ , Iθ
z φ , Tφ lf
tf tf
z a1 z a2
A1 cf A2
cf
kf kf
zu1 zu2
mf mf
kt f z r1 kt f z r2
in which γ (s) is defined as in (5.2). The linearised dynamics of the full-car can be expressed as:
m s z̈ s = Fs − u p1 − u p2 − u p3 − u p4 , (7.1)
Iθ z̈ θ = Tθ + u p1 l f + u p2 l f − u p3 lr − u p4 lr , (7.2)
Iφ z̈ φ = Tφ − u p1 t f + u p2 t f − u p3 tr + u p4 tr , (7.3)
m f z̈ u 1 = u p1 + Fr1 , (7.4)
m f z̈ u 2 = u p2 + Fr2 , (7.5)
m r z̈ u 3 = u p3 + Fr3 , (7.6)
m r z̈ u 4 = u p4 + Fr4 , (7.7)
where the passive suspension forces u p1 ,…,u p4 and the tyre forces Fr1 ,…,Fr4 are given by:
u pi = c f Ḋi + k f (z ai − z u i ),
u pj = cr Ḋ j + kr (z a j − z u j ),
Fri = kt f (zri − z u i ), (7.8)
Fr j = ktr (zr j − z u j ), (7.9)
7.2 Symmetric Transformation 73
D1 = z s − l f z θ + t f z φ − z u 1 ,
D2 = z s − l f z θ − t f z φ − z u 2 ,
D3 = z s + lr z θ + tr z φ − z u 3 ,
D4 = z s + lr z θ − tr z φ − z u 4 .
Since the full-car model is symmetric, we can decouple it into two half-car models. First, we introduce
a transformation matrix L f,1 :
1 1 0 0
1 0 0 1 1
L f,1 = , (7.10)
2 1 −1 0 0
0 0 1 −1
such that
h i0 h i0
(x)b f (x)br (x)ρ f (x)ρr = L f,1 x1 x2 x3 x4 , (7.11)
where x may represent any of the following variables: z u , zr , z a , strut deflection D or actuator command
signal u, while the subscripts b f , br represent the front and rear bounce components, and ρ f , ρr represent
the front and rear roll components.
After applying the L f,1 transformation, (7.1), (7.2), and (7.4–7.7) can be rearranged as follows:
It can be observed that the above equations take the same form as (6.3–6.6) under the transforma-
tions listed in the first column of Table 7.1. To decouple into two quarter-cars requires a simplicity
assumption:
kf cf kt f mf lr
= = = = . (7.12)
kr cr ktr mr lf
74 Disturbance Response Decoupling for The Full-Car Model
We observe that one equation is missing in this half-car compared to (6.3–6.6). This is because
the chassis is modelled as being infinitely stiff under torsion, so that there is no dynamic equation
corresponding to warp dynamics of the car body. However the above three equations do take a similar
form to (6.4–6.6) under the transformations listed in the second column of Table 7.1.
kf cf kt f mf tr
= = = = , (7.13)
kr cr ktr mr tf
where x can be z u , zr or z a , strut deflection D or actuator command signal u, the roll/warp half-car
can be further decoupled into roll and warp quarter-cars under the mapping illustrated in Table 7.2.
Table 7.2: Decoupled roll and warp modes of the full-car by simplicity.
In this section, we shall synthesise an active controller for a specific full-car model. As in Section 7.2
the model is chosen to be left-right symmetric which allows a decoupling into the bounce/pitch and
roll/warp half-cars. Our design approach for the bounce/pitch half-car will make use of the theory
outlined in Section 6.1. The approach for the roll/warp half-car will make use of a further simplicity
assumption which allows it to be decoupled into the two corresponding quarter-cars, namely the
roll and warp quarter-cars. The roll quarter-car will be treated in the same way as the quarter-car
of Section 5.1. As pointed out in Section 7.2.2 the warp quarter-car is different from the standard
quarter-car in that the “sprung mass” is effectively infinite. Furthermore, in warp motion there is good
reason to use the active controller to make the road disturbance responses even softer than they would
76 Disturbance Response Decoupling for The Full-Car Model
wbp z bp
Pbp ybp
u bp
e2,bp
U
K bp
w wroll zroll z
Proll yroll
(u)roll e2,roll
U
K roll
wwar p z war p
Pwar p
(u)war p ywar p
K war p
be with the default passive parameter settings. Thus the warp mode will be handled in a different way
to the other three modes.
h i0
w = Fs , Tθ , Tφ , zr1 , zr2 , zr3 , zr4 , (7.16)
h i0
wbp = Fs , Tθ , (zr )b f , (zr )br ,
h i0
wroll = Tφ , (zr )roll ,
h i
wwar p = (zr )war p ,
h i0
z = zs , zθ , zφ , zu1 , zu2 , zu3 , zu4 , (7.17)
h i0
z bp = z s , z θ , (z u )b f , (z u )br ,
h i0
zroll = z φ , (z u )roll ,
h i
z war p = (z u )war p ,
7.3 A Design Example for the Full-Car Model 77
h i0
ybp = z̈ s , z̈ θ , (D)b f , (D)br ,
h i0
yroll = z̈ φ , (D)roll ,
h i
ywar p = (D)war p ,
h i0
u bp = (u)b f , (u)br ,
and the subscripts b f , br , roll and war p are defined as in (7.11) and (7.15).
The following parameters will be used for the full-car model: m s = 1600 kg, Iθ = 1000 kg m2 , Iφ =
450 kg m2 , t f = tr = 0.75 m, l f = 1.15 m, lr = 1.35 m, k f = kr = 20 kN/m, c f = cr =
5 kNs/m, m f = m r = 50 kg, kt f = ktr = 250 kN/m. As in the previous examples, the actuator
dynamics is represented as in (5.2) with ωn = 100 rad/sec and δ = 0.707.
Referring to Table 7.1, the bounce/pitch half-car corresponds to the half-car of Section 6.1 with the
following coefficients: m s = 1600 kg, Iψ = 1000 kg m2 , m 1 = m 2 = 100 kg, k1 = k2 = 40 kN/m,
c1 = c2 = 10 kNs/m, kt1 = kt2 = 500 kN/m, l1 = 1.15 m, l2 = 1.35 m, which is not simple and
cannot be decoupled into two quarter-cars. The H∞ loop shaping controller design for this half-car
model has been carried out in Example 6.1. We will use the results directly. The essential controller
e2,bp is given by (6.7) and Table 7.1 as:
structure U
m s lr Iθ
1 0
e2,bp =
U 2(c f s+k f )(lr +l f ) 2(c f s+k f )(lr +l f ) . (7.18)
ms l f −Iθ
2(cr s+kr )(lr +l f ) 2(cr s+kr )(lr +l f )
0 1
Referring to Table 7.2, the roll mode of the full-car corresponds to a quarter-car with the following
coefficients: m s = 450 kg, m u = 112.5 kg, ks = 45 kN/m, cs = 11.25 kNs/m, kt = 562.5 kN/m. The
e2 takes the following form after using Table 7.2, (5.10) and (7.13):
required structure of U
h i
e2,roll
U =
Iφ
1 . (7.20)
2(c f s+k f )t f (tr +t f )
K roll = Kc , (7.22)
where K c is given by (6.11). (This controller is the same as the diagonal terms in K bp since the
e2,roll P22 is the same as the diagonal elements in the scalar matrix Wbp U
weighted plant Wroll U e2,bp P22 ,
see (6.8) and Table 5.1.) This controller gives the steady state gain of TT̂φ →ẑφ as 2.33×10−6 , compared
to the passive suspension with d.c. gain TT̂φ →ẑφ (0) = 2.4 × 10−5 , a similar result to Fig. 5.4.
For the warp quarter-car, we will take a slightly different approach for the design of the active controller.
Since the sprung mass cannot be twisted, i.e. it has no warp motion, there is no corresponding role for
the active controller to make the “sprung mass” stiffer to the loads. On the other hand, even though
the passive road disturbance responses were designed to be relatively soft, there is no reason why
they should not be even softer in the warp mode. We will therefore abandon the goal of keeping the
response to the road warp input (zr )war p invariant under active control. We also note that there is
no acceleration measurement associated with warp and so there is only one feedback signal available
e2 block for
corresponding to the strut deflections: (D)war p = −(z u )war p . For this reason there is no U
the warp quarter-car loop in Fig. 7.2.
Referring to Table 7.2, the warp quarter-car reduces to the form illustrated in Fig. 7.3, with z s = 0
and the coefficients m u = 200 kg, ks = 80 kN/m, cs = 20 kNs/m and kt = 1000 kN/m. The dynamic
equation then takes the form, using (5.4–5.6):
(z s = 0)
A za
cs
ks
zu
mu
kt zr
Evidently there is one degree of freedom available in the suspension forces, and indeed we can check
that:
h i0 h i0
u p1 , u p2 , u p3 , u p4 = tr , −tr , −t f , t f κ (7.25)
for some constant κ, completely characterises that freedom. From the point of view of reducing the
amount of "twist" on the vehicle chassis which the suspension forces impose, it would be desirable
to achieve a value of κ = 0 in the steady state. The following result shows that the above mentioned
condition achieves this property.
Proposition 7.1 Suppose the (linearised) full-car model defined in Section 7.1 is in equilibrium with
Fs = Tθ = Tφ = 0 and zr1 , . . . , zr4 arbitrary. Then the following equation
(proof) Using (7.11) and (7.15), we notice that the warp variable (x)war p is a combination of variables
at the four wheel-stations:
x1
h i x
1 2
(x)war p = t , −tr , −t f , t f ,
2(tr + t f ) r x3
x4
where x can be z u or zr . Using (7.8) and (7.9) we see that (7.26) is equivalent to [tr /kt f , −tr /kt f ,
−t f /ktr , t f /ktr ]· [Fr1 , Fr2 , Fr3 , Fr4 ]0 = 0, which is equivalent to [tr /kt f , −tr /kt f , −t f /ktr , t f /ktr ]·
[u p1 , u p2 , u p3 , u p4 ]0 = 0 by (7.4–7.7), which in turn is equivalent to κ = 0 by (7.25). ♥
It can be observed that the proposition holds if equation (7.26) is replaced by any equation of the
form:
h i h i0
λ, −λ, −µ, µ · z r1 − z u 1 , z r2 − z u 2 , z r3 − z u 3 , z r4 − z u 4 =0
80 Disturbance Response Decoupling for The Full-Car Model
with λµ > 0, i.e. the particular ratios chosen in the definition of the warp variable are not critical to
the result.
Now let us return to the warp quarter-car represented in (7.23). If we choose a simple constant
controller and ignore temporarily the actuator dynamics, i.e. set γ (s) = 1, then the choice of K war p =
7.25 achieves a damping ratio of 1, a natural frequency equal to 50 rad/sec (which is lower than the
bandwidth of the actuator) and a steady-state gain of 2. As shown by Proposition 7.1 we would like
to achieve the condition (7.26) in the steady-state, which is equivalent to the d.c. gain Tẑr →ẑu (0) = 1.
Setting K war p (s) = −0.1036s + 1 achieves in (7.23) a damping ratio of 1, a natural frequency equal
to 70.71 rad/sec (which is lower than the bandwidth of the actuator) and a steady-state gain of 1. In
order that the controller is proper, we can choose:
−0.1036s + 1
K war p = . (7.27)
(300)−1 s + 1
The response does not change significantly with this modification or when the actuator dynamics are
included. The step response with the final controller, with improved warp behaviour compared to the
passive case, is shown in Fig. 7.5.
w z
P
u y
f5 f4 K f3 f2 f1
As a final step we can redraw Fig. 7.2 in the form of Fig. 7.4 where P is the full-car model
represented by (7.1–7.7). In Fig. 7.4 the measurements y and control signals u are defined as follows:
h i0
y = z̈ s , z̈ θ , z̈ φ , D1 , D2 , D3 , D4 ,
h i0
u = u1, u2, u3, u4 ,
where Di and u i represent the strut deflection and control command signal at each wheel station. The
7.3 A Design Example for the Full-Car Model 81
f 1 = diag(1, 1, 1, L f,1 ),
f 2 = diag(1, −1, 1, 1, 1, L f,2 ),
m s lr Iθ
2(c f s+k f )(lr +l f ) 2(c f s+k f )(lr +l f )
0 1 0 0 0
ms l f −Iθ
0 1 0 0
2(cr s+kr )(lr +l f ) 2(cr s+kr )(lr +l f )
0
f3 = ,
0 0 0 0 0 1 0
Iφ
0 0 2(c f s+k f )t f (tr +t f )
0 0 0 1
f 4 = diag(1, 1, L −1
f,2 ),
f 5 = L −1
f,1 ,
where L f,1 is defined in (7.10), L f,2 is defined in (7.14) and f 3 combines U e2,bp defined in (7.18) and
e2,roll defined in (7.20). Note that the third row in f3 reflects the fact that there is only one measurement
U
available for warp control. The controller K is defined as:
where K bp , K war p and K roll are given by (7.19), (7.27) and (7.22) respectively. Compared with the
passive suspension, the benefits of using active controllers is shown in Fig. 7.5. The responses to
“bounce”, “pitch” and “roll” road inputs are not shown since these are the same in the passive and
active cases.
−5
Fs → zs −5
Tθ → zθ
x 10 x 10
1.5 1
0.75
1
0.5
0.5
0.25
0 0
0 0.5 1 1.5 2 0 0.5 1 1.5 2
−5 Tφ → zφ (zr)warp → (zu)warp
x 10
2.5
1
2
0.75
1.5
0.5
1
0.5 0.25
0 0
0 0.5 1 1.5 2 0 0.5 1 1.5 2
Figure 7.5: Step responses of TF̂s →ẑs , TT̂θ →ẑθ , TT̂φ →ẑφ and T(ẑr )war p →(ẑu )war p using active (dashed) and
passive (solid) suspensions.
82 Disturbance Response Decoupling for The Full-Car Model
In this section we present some simulation results for the controller designed in Section 7.3.4 using the
multi-body simulation package AutoSim. A nonlinear dynamical model of the simple full-car shown in
Fig. 7.1 was constructed with the suspension struts constrained to move perpendicularly to the vehicle
body. To model a rolling wheel of inertia 1 kg m2 with tyre the magic formula [2] was employed to
calculate the accelerating and braking forces. The tyres are assumed to provide vertical spring forces
with spring constants kt1 = kt2 = kt3 = kt4 = 250 kN/m. The control law given in Section 7.3.4 was
implemented together with the actuator structure described in Section 7.1.
The model was first tested at zero velocity for various road disturbance inputs and gave similar
results, for small displacements, to a matlab simulation of the linearised model. As expected, the
bounce, pitch and roll responses were the same in the active and passive cases. Fig. 7.6 shows the
effect of applying a step input to the AutoSim model at the right front wheel in both the passive and
active cases. The difference in behaviour is due to the “warp” mode being treated differently in the
active case, as explained in Section 7.3.3.
1.4
1.2
0.8
cm
0.6
0.4
0.2
0
0 0.1 0.2 0.3 0.4 0.5
sec
Figure 7.6: Response of z u 1 to a step input of 1 cm at zr1 for AutoSim model using active (dashed) and
passive (solid) suspensions.
The AutoSim model was then tested under acceleration and braking. For acceleration, a torque was
applied at each front wheel with the opposing reaction torques acting on the vehicle body. A similar
approach was taken for braking but with the braking torques applied to the front and rear wheels in a
60:40 ratio. Fig. 7.7 shows the “squat” and “dive” of the model under acceleration and deceleration,
with the forward velocity given in Fig. 7.7(a) and the pitch angle z θ given in Fig. 7.7(c). The simulation
shows that the active suspension significantly improves the squat and dive performance. The AutoSim
model, the active control and the tyre model are given in Appendix E.
This chapter has considered the application of disturbance response decoupling to the full-car active
suspension design problem. For the full-car model, decomposition into two half-cars was exploited
7.4 Summary and Comments 83
20 1000
15
500
10
m/sec
Nm
0
5
−500
0
−5 −1000
0 5 10 15 0 5 10 15
sec sec
0.08 0.05
0.06 0.04
0.04
0.03
0.02
0.02
rad
m
0
0.01
−0.02
0
−0.04
−0.06 −0.01
−0.08 −0.02
0 5 10 15 0 5 10 15
sec sec
(c) z θ (d) z s
Figure 7.7: Anti-dive and anti-squat effect in AutoSim model using active suspension (dashed), com-
pared with passive suspension (solid).
under a mild symmetry assumption. This enabled the bounce/pitch half-car design to be carried out
with the half-car structure previously derived. For the roll/warp half-car a further decomposition into
two quarter-cars was assumed. This allowed the warp quarter-car to be treated in a distinct way, which
is necessary since the load disturbance path is absent here and it is also reasonable to change (i.e. soften)
the road disturbance response from the passive case. A controller was designed and demonstrated on
a nonlinear vehicle dynamics model and showed the effectiveness of the design for reduced squat and
dive under acceleration and braking, improved warp response and invariance of other road disturbance
responses.
Chapter 8
A key step in the disturbance response decoupling designs described in Chap. 4 is the computation of
e2 which determines the required controller structure. Throughout the application of vehicle
the matrix U
e2 symbolically using
active suspension design in Chap. 5–7, it has always been possible to calculate U
Maple. However, for more complicated vehicle models this may not be feasible. In such a case a direct
numerical approach may be possible. In this chapter, we shall demonstrate the numerical calculation of
e2 . Section 8.1 considers the linearised half-car double-wishbone model, and
the controller structure U
e2 . Section 8.2 considers
presents the procedure of numerically calculating the controller structure U
the linearised full-car double-wishbone model. Like the treatment for the linear full-car model, the
full-car model is decomposed into two half-car models and the roll/warp half-car is further decoupled
to two quarter-car models. Moreover, the road warp responses can be softened by the active controller.
In this section, we shall apply Theorem 4.2, 4.4 to a half-car double-wishbone model, as shown in
Fig. 8.1. The left (right) suspension strut consists of a passive damper of constant c1 (c2 ) in parallel
with a series combination of an actuator A and a spring of constant k1 (k2 ) (this is a “Sharp” actuator
as introduced in Section 5.1). The actuators are modelled in such a way that the relative displacement
across each is equal to a low-pass filtered version of the actuator’s command signal, as in (6.1–6.2).
The tyre forces are modelled as always normal to the ground. This model was built and linearised by
AutoSim. We will analyse the linearised model and find the controller structure which improves the
load responses and keeps the road responses the same as in the passive case.
The main purpose of this section is to show the numerical calculation of the desired controller
structure. This will enable us to apply the disturbance response decoupling theorems to some systems
where the exact symbolic equations are unavailable or difficult to derive. For example, this half-car
85
86 Numerical Calculation of the Controller Structure
Fs
R1 R2
B1 Iψ , m s B2
I1 zs I2
m1 C1 z ψ , Fψ C2 m 2
zu1 P1 P2 zu2
S1 Q S2
A1 A2
T1 D1 D2 T2
y
z r1 k t1 :pin joint k t2 z r2
:suspension strut x
double-wishbone model can be linearised about an “operating point” so that we can carry out the
design procedure.
We now write the system in the form of Fig. 4.1 with z 1 = [z s , z ψ , z u 1 , z u 2 ]0 , w1 = [zr1 , zr2 ]0 ,
w2 = [Fs , Fψ ], y = [z̈ s , z̈ ψ , D1 , D2 ]0 where D1 and D2 are the strut deflections and z 2 omitted. The
transfer function T in (4.8) is partitioned conformably with z 1 and (w1 , w2 ), and the sub-blocks are
labelled as (1, 1), (1, 2). The following parameters will be used for the model: m s = 625 kg, Iψ =
170 kg m2 , m 1 = m 2 = 50 kg, I1 = I2 = 0.1 kg m2 , c1 = c2 = 1 kNs/m, k1 = k2 = 4 kN/m, kt1 =
kt2 = 250 kN/m. Those parameters are chosen to give satisfactory (i.e. soft) road responses, so that we
can apply the disturbance response decoupling design for the load responses. The actuator dynamics
are modelled as in (5.2) with ωn = 100 rad/sec and δ = 0.707. The geometric layout of the model
is expressed as the following coordinates: Q = (0, 0), A1 = (0.25, −1), B1 = (−0.05, −0.94),
C1 = (0.15, −1.4), D1 = (0.25, −1.4), R1 = (−0.25, −1.04), S1 = (0.2, −1.4), P1 = (0.2, −1.5),
T1 = (0.35, −1.5), A2 = (0.25, 1), B2 = (−0.05, 0.94), C2 = (0.15, 1.4), D2 = (0.25, 1.4),
R2 = (−0.25, 1.04), S2 = (0.2, 1.4), P2 = (0.2, 1.5), P2 = (0.35, 1.5) in the unit of meters. The
AutoSim code for the linearised model is given in Appendix F.1.
The following procedure is a guideline to carry out the numerical calculation of the controller
structure for disturbance response decoupling:
e−1 N
(4) find a left coprime factorisation L = M e and set U
e2 = [− N
e, M]
e (e.g. see [45, Theorem 12.19]).
8.1 The Half-Car Double-Wishbone Model 87
e2 without
We note that steps (2)–(4) of the above procedure provide a method of finding a matrix U
the need to complete U1 to a unimodular matrix followed by inversion. We also observe that, in the
case that F is square, we may in principle set F = I (so that U1 = T3,1 is not necessarily part of a
unimodular matrix) and then directly calculate L as in (3). However, if it is desired to carry out the
calculation numerically in state space then it is desirable that M(∞) is non-singular. Accordingly, we
can simply seek an F so that this property holds without needing to ensure that T3,1 = U2 F is formally
a lnf. Finally we note the connection with Theorem 4.3 that Ue2 constructed in (4) is a left annihilator
of T3,1 and is a part of a unimodular matrix.
From Theorem 4.2, for a stabilising controller which keeps the road disturbances the same as the
e2 ,
passive suspension and improves the load disturbances responses, we find the controller structure U
after model reduction, as:
" #
2.54×10−1 4.56×10−2 8.7×10−3
−1
e2 =
U s+3.58 s+3.65 s+3.58
. (8.1)
2.54×10−1 −4.56×10−2 8.7×10−3
s+3.58 s+3.65 s+3.58
−1
we have a H∞ loop shaping controller K 1 , which gives the desirable responses, as shown in Fig. 8.2,
which reduce TF̂s →ẑs (0) from 9.70×10−5 to 1.8×10−6 and TF̂ψ →ẑψ (0) from 4.31×10−5 to 8.31×10−7 .
1.2
−4
x 10 Fs → z s 4.5
−5
x 10 Fψ → z ψ
4
1
3.5
0.8 3
2.5
0.6
2
0.4 1.5
1
0.2
0.5
0 0
0 1 2 3 4 5 0 1 2 3 4 5
sec sec
Figure 8.2: Step responses for linearised model of TF̂s →ẑs and TF̂ψ →ẑψ : passive (solid) and active
control (dashed).
As pointed out in Theorem 4.4, it is always possible to make further improvement for the closed-
loop transfer responses. For instance, we can improve the responses to Fs or Fψ of Fig. 8.2 without
e2,Fs and U
changing the other. To perform it, firstly we need to derive the controller structures U e2,Fψ ,
which keep the responses to [zr1 , zr2 , Fψ ] and [zr1 , zr2 , Fs ] fixed respectively, as follows (after model
88 Numerical Calculation of the Controller Structure
reduction):
h i
e2,Fs
U = 3.59×10−1
, 0, −0.7071, −0.7071 . (8.2)
s+3.58
h i
e2,Fψ
U = 0, −6.45×10−2
, 0.7071, −0.7071 , (8.3)
s+3.65
Now we apply H∞ loop shaping method for the designs. Suppose we want to improve the response
of T e2,Fs P22 ,
in Fig. 8.2 further, we choose a weighting function W1,Fs for the shaped plant U
F̂s →ẑ s
and find a suitable controller K 1,Fs . Or if we want to improve the response of TF̂ψ →ẑψ , we choose
a weighting function W1,Fψ for the shaped plant U e2,Fψ P22 , and find a suitable controller K 1,Fψ . The
following weighting functions:
8.3 × 10−2 (s + 40) 9.9 × 10−2 (s + 40)
W1,Fs = , W1,Fψ = ,
s + 20 s + 20
are used for this model. Now we derive the following parameters from the controllers:
S = −(I − K 1 P22 )−1 K 1 ,
Q
SFs
Q = −(I − K 1,Fs P22 )−1 K 1,Fs ,
SFψ
Q = −(I − K 1,Fψ P22 )−1 K 1,ψ .
Fig. 8.3 shows the closed-loop step responses with controller K = (I − Q P22 )−1 Q in the following
S the first stage design and (3) Q = Q
three cases: (1) Q = 0, i.e. passive system, (2) Q = Q, S+ QSFs +
SFψ , the refined design. The final controller reduces the d.c. gains of T
Q F̂s →ẑ s and TF̂ψ →ẑ ψ further down
to 6.12 × 10−7 and 9.88 × 10−8 respectively.
−4
x 10
Fs → z s −5
x 10
Fψ → z ψ
1.2 4.5
4
1
3.5
0.8 3
2.5
0.6
2
0.4 1.5
1
0.2
0.5
0 0
0 1 2 3 4 5 0 1 2 3 4 5
sec sec
Figure 8.3: Step responses for the linearised model of TF̂s →ẑs and TF̂ψ →ẑψ with controller K =
(I − Q P22 )−1 Q with: Q = 0 passive (solid), Q = QS (dashed) and Q = Q S+ Q SFs + QSFψ (dash-
dotted).
In this section, we will demonstrate again the numerical calculation of the controller structure (i.e.
e2 ) using the full-car double-wishbone model. A full-car double-wishbone model is given in Fig. 8.4,
U
where (1), (2), (3), (4) represent each correspondong wheel station, and the front and rear half-car have
the same geometric arrangement as the half-car double-wishbone model given in Section 8.1. The fol-
lowing parameters will be used for the model: m s = 625 kg, Iφ = 170 kg m2 , Iθ = 260 kg m2 , m 1 =
m 2 = 46 kg, m 3 = m 4 = 60 kg, I1 = I2 = I3 = I4 = 0.1 kg m2 , c1 = c2 = c3 = c4 =
500 Ns/m, k1 = k2 = k3 = k4 = 2 kN/m, kt1 = kt2 = kt3 = kt4 = 250 kN/m, l f = lr = 1.5m.
Those parameters are chosen to give satisfactory (i.e. soft) road responses, so that we can apply the
disturbance response decoupling design for the load responses.
(3) (4)
lr
z s ,Fs
z θ ,Tθ
m s ,Iθ ,Iφ
z φ ,Tφ lf y
z
x
(1) the front half-car (2)
where x may represent any of the following variables: z u , zr , z a , strut deflection D or actuator
command signal u, while the subscripts bf , br represent the front and rear bounce components, and
ρ f , ρr represent the front and rear roll components. These transformation matrices come from our
experience in dealing with the linear full-car model. For this double-wishbone model, it is difficult to
symbolically decouple the full-car model into the corresponding half-car and quarter-car models, due
90 Numerical Calculation of the Controller Structure
to the complexity of the dynamics. However, we will use these transformation matrices directly as a
starting point to simplify the controller design procedure.
The controller scheme is similar to Fig. 7.2. That is, the desirable controller will be derived from
different modes, and then integrated and applied to the full-car model directly, as the design procedure
in Section 7.3. Firstly, we apply Theorem 4.2 to find a controller which improves the load responses
while keeping the road responses the same as for the passive system. Since the warp model is different
from all the others, at this moment we will leave the road warp responses the same as in the passive
case. That is, we temporarily set the warp controller K war p = 0, such that
and design the controller for “bounce/pitch” and “roll” modes so that it will not change the road
responses.
A full-car double-wishbone model was built and linearised by AutoSim, as given in Appendix F.2,
which is used for the controller design. Now we apply the H∞ loop shaping design for Pbp and Proll .
Bounce/Pitch Control
For the bounce/pitch half-car, a controller structure which leaves the road responses unchanged is
found as follows (after model reduction):
" #
2.39×10−1 −6.85×10−2 8×10−3
−1
Ue2,bp = d1 (s)
−1
d1 (s) d1 (s)
, (8.4)
6.73×10−2 8×10−3
2.34×10
d2 (s) d2 (s) d2 (s)
−1
where d1 (s) = s + 3.2671, d2 (s) = s + 3.1728. Applying a weighting function Wbp as:
" #
Wc 0
Wbp = ,
0 Wc
in which
8(s + 80)
Wc = , (8.5)
s+2
the controller K bp after model reduction is found as:
" #
−29.70(s+16.47)(s+40.96±50.04 j )
(s+1.92)(s+56.46±92.79 j )
0
K bp = −29.71(s+15.98)(s+40.79±46.39 j )
. (8.6)
0 (s+1.92)(s+54.94±89.42 j )
Roll Control
For the roll quarter-car, a controller structure which leaves the road responses unchanged is found as
follows (after model reduction):
h i
e2,roll
U = 4.23×10−2
, −1 . (8.7)
s+3.31
8.2 The Full-Car Double-Wishbone Model 91
Applying a weighting function Wroll = Wc where Wc is given in (8.5), the controller K roll after model
reduction is found as:
Now we integrate the final controller layout as in Fig. 7.4, where f 3 is the overall controller structure:
2.39×10−1 −6.85×10−2 8×10−3
0 −1 0 0
d1 (s) −1 d1 (s) d1 (s)
2.34×10 6.73×10−2 8×10−3
−1 0 0
d2 (s) d2 (s)
0 d2 (s)
f3 = ,
0 0 0 0 0 1 0
4.23×10−2
0 0 s+3.31
0 0 0 −1
in which d1 (s) = s + 3.2671, d2 (s) = s + 3.1728, and the controller K is defined as:
where K bp and K roll are given in (8.6) and (8.8) respectively. At this moment, with the road warp
response remaining the same as in the passive case, i.e. K war p = 0, we obtain an active controller
which improves the load responses while keeping the road responses unchanged. Compared with a
passive suspension, TF̂s →ẑs (0) was stiffened from 9.70 × 10−5 to 2.09 × 10−6 while TT̂θ →ẑθ (0) was
stiffened from 4.31×10−5 to 9.28×10−7 and TT̂φ →ẑφ (0) was stiffened from 4.31×10−5 to 9.20×10−7 .
As mentioned in Proposition 7.1, there will be a “twist” on the vehicle chassis which the suspension
forces impose if T(ẑr )war p →(ẑu )war p (0) is not equal to 1. Because the sprung mass has no warp motion,
the twisting effect is always present in the passive system. Therefore, a special treatment for the warp
mode is necessary. Unlike the simple full-car model introduced in Section 7.1, it is not so easy to
derive the warp quarter-car symbolically for this double-wishbone model. Therefore, we will assume
that there are some similarities between the simple full-car and the linearised full-car double-wishbone
models, in order to treat the warp mode. Firstly, we notice that the d.c. gain of each wheel station is
as follows:
Tẑri →ẑu i (0) = 0.9974,
where i =1,…,4. Therefore, our goal is to set this gain to be one. Let us begin with the control
scheme of Fig. 7.2, from which we can check that in bounce/pitch and roll modes T(ẑr )b f →(ẑu )b f (0) =
T(ẑr )br →(ẑu )br (0) = T(ẑr )roll →(ẑu )roll (0) = 1. Therefore, the twist comes from the warp quarter-car Pwar p ,
92 Numerical Calculation of the Controller Structure
find a warp controller K war p such that Fu (Pwar p (0), K war p (0)) = 1,
where Fu is an upper LFT [45, Chap. 10]. For this warp quarter-car, we find K war p (0) = −1 gives
the desired result, i.e. the d.c. gain: T(ẑr )war p →(ẑu )war p (0) = 1. Hence we can change K war p in (8.9) to
be −1. As a consequence, the d.c. gain of each wheel station becomes:
where i =1,…,4. As for further improvements to the transient states of the road warp responses, we
can always use a higher order transfer function for warp control, but the constant term should be the
same: K war p (0) = −1.
Now we present some simulation results for the full-car double-wishbone model with the active
controller designed in this section. A nonlinear dynamic model of the model shown in Fig. 8.4 was
constructed using AutoSim with the active controller written in a C-code. The nonlinear simulation
results of the load responses are illustrated in Fig. 8.5.
−4
x 10
Fs → z s −5
x 10
Tθ → z θ −5
x 10
Tφ → z φ
1.2 4.5 4.5
4 4
1
3.5 3.5
0.8 3 3
2.5 2.5
0.6
2 2
1 1
0.2
0.5 0.5
0 0 0
0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3
sec sec sec
Figure 8.5: AutoSim nonlinear simulations: step responses of TF̂s →ẑs , TT̂θ →ẑθ and TT̂φ →ẑφ with passive
(solid) and active control (dashed).
8.3 Summary and Comments 93
In Chap. 3, we discussed the half-car trailing-arm model, and showed the necessity of employing active
suspension to satisfy the performance requirements. In this chapter, we shall apply Theorem 4.2 to
design an active controller for this model. The design is similar to that of the simple half-car in Chap. 6.
A soft passive suspension is chosen to give satisfactory road responses. Then the disturbance response
decoupling method is applied to improve load responses while keeping the road responses unchanged.
Section 9.1 employs the method developed in Chap. 8 to numerically calculate the controller structure.
Section 9.2 shows the passivity analysis of this trailing-arm model with active suspensions. Section 9.3
illustrates the nonlinear simulation results using AutoSim.
In this section, we shall apply Theorem 4.2 to design an active controller for the half-car trailing-arm
model. This trailing-arm model is like Fig. 3.1 with the suspension struts replaced by “Sharp” actuators
introduced in Section 5.1. We will use the coefficients in Example 3.2, with the perfect anti-squat
geometry (A = (0.15, 0.6126) m and B = (0.15, −1.0008) m), and compare the responses of the
active and passive systems.
As the numerical design examples in Chap. 8, we first set up a trailing-arm model in AutoSim,
and obtain a linearised model for controller design. For disturbance responses decoupling design,
a soft passive suspension with k1 = k2 = 40 kN/m, c1 = c2 = 10 kNs/m was chosen to give
satisfactory responses to road disturbances, and the active controller is designed to stiffen the responses
to load disturbances and braking torques without changing the road responses. We write the system
in the form of Fig. 4.1 with z 1 = [z s , φ3 , z u 1 , z u 2 ]0 w1 = [zr1 , zr2 ]0 , w2 = [Fs , Ts , T1 , T2 ]0 ,
y = [z̈ s , φ̈3 , D1 , D2 ]0 , where D1 and D2 are strut deflections, u = [u 1 , u 2 ]0 equals the actuator
command signal and z 2 omitted. The corresponding dimensions are m 1 = m 3 = 2, m 2 = 4, p1 = 4,
95
96 Active Suspension Design for the Trailing-Arm Model
e2
p2 = 0, p3 = 4. Following the computational procedure in Section 8.1, the controller structure U
after model reduction is found as:
" #
−0.0385(s+3.7307)
0.0788(s+3.8402)
−1 0
e2 = (s+3.9793)(s+3.7744)
U (s+3.9793)(s+3.7744)
. (9.1)
0.0766(s+4.0033)
(s+3.9793)(s+3.7744)
0.0356(s+3.9341)
(s+3.9793)(s+3.7744)
0 −1
In this section, we perform the passivity analysis of the half-car trailing-arm model with the active
suspension control derived in the previous section. Two linearised models, representing acceleration
(or inboard braking) and outboard braking scenarios, are obtained from AutoSim. The active suspension
e2 from (9.1) and (9.2) are then implemented to get the closed-loop responses.
control K 1 and U
5 5
x 10 x 10
2 2
1.5
1.5
1
1
0.5
Eigenvalues (Ns/m)
Eigenvalues (Ns/m)
0.5
0
−0.5 0
−1
−0.5
−1.5
−1
−2
−1.5
−2.5
−3 0 1 2 3 4 5
−2 0 1 2 3 4 5
10 10 10 10 10 10 10 10 10 10 10 10
Frequency (rad/sec) Frequency (rad/sec)
Figure 9.1: The passivity analyses for (a): acceleration (or inboard braking); (b): outboard braking.
The analysis results are shown in Fig. 9.1, where Y is defined as:
h i0 h i0
F̂s , T̂s , T̂1 , T̂2 , − N̂1 , − N̂2 = Y s ẑ s , s φ̂3 , s(φ̂1 − φ̂3 ), s(φ̂2 − φ̂3 ), s ẑr1 , s ẑr2
9.3 Simulation Results 97
for outboard braking in Fig. 9.1(b). It confirms that these systems cannot be implemented passively.
The nonlinear half-car trailing-arm model was built in AutoSim with the active controller written in a
C-code. The nonlinear AutoSim model is illustrated in Appendix G.1. The active suspension control
is given in Appendix G.2. The model was first tested at zero velocity with various load inputs. The
closed-loop responses of the active systems reduced the d.c. gain of TF̂s →ẑs from 1.35 × 10−5 to
1.12 × 10−6 , TT̂s →φ̂3 from 7.99 × 10−6 to 6.60 × 10−7 , TT̂1 →ẑs from −2.66 × 10−5 to −2.47 × 10−7 ,
TT̂2 →ẑs from 5.33 × 10−5 to 4.94 × 10−7 , TT̂1 →φ̂3 from −9.83 × 10−6 to −1.84 × 10−6 , TT̂2 →φ̂3 from
1.44 × 10−5 to −1.61 × 10−6 . As expected, the active controller significantly reduces the load and
torque responses without changing the road responses.
1000 20
torques (Nm)
800
ẏ3 (m/sec)
600
15
400
200
10
0
−200
5
−400
−600
−800 0
0 2 4 6 8 10 12 0 2 4 6 8 10 12
sec sec
0.035 0.04
0.03 0.035
0.03
0.025
φ3 (rad)
φ3 (rad)
0.025
0.02
0.02
0.015
0.015
0.01
0.01
0.005
0.005
0 0
−0.005 −0.005
0 2 4 6 8 10 12 0 2 4 6 8 10 12
sec sec
Figure 9.2: (a) applied torques (b) velocity; (c) and (d) the pitch motion of the active (dashed) and
passive (solid) systems without and with tyre springs.
98 Active Suspension Design for the Trailing-Arm Model
The active controller was implemented in AutoSim for accelerating and braking scenarios. Fig. 9.2(a)
and 9.2(b) show the applied torques and forward velocity respectively. To model a rolling wheel with
tyre, we can employ the same method as used in Example 3.1 for a no-slip assumption between the
tyre and road contact points. Alternatively, we can use the magic formula [2] to calculate the acceler-
ating and braking forces and assume that the tyres provide vertical spring forces with spring constants
kt1 = kt2 = 500 kN/m, as discussed in Section 7.3.5. Fig. 9.2(c), 9.2(d) show the pitching motions of
the vehicle body using these two tyre models.
In this chapter, we used the half-car trailing-arm model for the disturbance responses decoupling
controller design. Through network analysis, it was shown that the performance requirements can
not be achieved passively. The disturbance response decoupling controller design was performed
numerically using its linearised model. The controller was then successfully implemented on the
nonlinear model in AutoSim.
Chapter 10
Concluding Remarks
• A classical network theorem was employed to show that an active suspension is necessary in half-
and full-car vehicle models in certain situations. Typically, these situations involved specifying
a soft response from road disturbances as when a soft suspension is implemented, and a stiff
response from load disturbances as when a stiff suspension is implemented.
• In Chap. 4, a general theorem for disturbance response decoupling was developed, which
parametrises the set of all stabilising controllers that leaves some pre-specified transfer function
unchanged. For some special systems, like the vehicle models demonstrated throughout this
dissertation, a simplified theorem was given so that the existing controller synthesis methods
could be directly applied to the controller design. We also developed an extended theorem which
allows the closed-loop responses to be further improved. Moreover, we also obtained condi-
tions for the achievable performance of the remaining transmission paths to be left essentially
unchanged after disturbance response decoupling.
• In Chap. 5 we applied the theorems developed in Chap. 4 to the linear quarter-car model. The
controller structures for various measurements were derived. The achievable load responses
were verified and proved to be effectively the same as before the disturbance response decoupling
design. In Chap. 6 we discussed the linear half-car model, and simplicity conditions which
allow the design to be carried out for two separate quarter-cars. Furthermore, the achievable
load responses of the half-car model were also verified to be effectively the same as before the
disturbance response decoupling design. In Chap. 7 we also discussed the symmetry conditions
to decompose a full-car model into two half-car models, in order to simplify the controller
design. In addition, a special treatment for the warp mode was illustrated to reduce the twist of
the chassis.
99
100 Concluding Remarks
• In Chap. 8 we developed an algorithm for the numerical calculation of the controller structure.
Hence it is possible to apply the disturbance response decoupling controller design to complex
systems .
• In Chap. 3 we demonstrated the conventional solutions to the squat and dive problems of vehicles,
using trailing arms. We derived the generalised trailing arm geometry for perfect anti-squat and
anti-dive designs. In Chap. 9 an active suspension controller was derived numerically to decouple
the road and load responses, and implemented in AutoSim.
• Throughout this dissertation, AutoSim was used for simulation of vehicle models in combination
with the theoretical work. This approach should be very useful for the treatment of complicated
models in the future.
• In this dissertation, the left and right normalised factorisation (lnf and rnf) were defined to
perform the controller parametrisation. For the vehicle models, this factorisation is in a rather
simple form, and we did not encounter much difficulty in obtaining a suitable one. However,
an algorithm to find a lnf and rnf would be particularly beneficial in applying the theorems to
further applications.
• As shown in Table 5.1, 5.2, it is noted that the shaped plant sometimes takes a particular simple
form, so that the controller design would be rather simple. This would also be an interesting
area for further investigation.
• So far, the disturbance response decoupling techniques have been developed by Youla parametri-
sation, and were discussed from the transfer functions of the plant. It would be very useful to
find the similar direct techniques expressed in state space form.
• The disturbance response decoupling techniques developed in this dissertation focused on linear
systems. It is interesting to ask if we could develop similar decoupling methods for nonlinear
systems. This idea was initially explored in Chap. 4 by representing the essential controller
e2 as a left annihilator of the open-loop system (Theorem 4.3). It is an open area for
structure U
investigation.
Appendix A
Appendix to Chapter 2
;(add-standard-output)
(add-out "dot([nx],pos(smasscm,ptQ))" "Zs")
(add-out "fm(Fr)" "Fr")
(set-defaults mu 35 ms 250 Is 15
cs 4000 ks 12000 ;; soft settings
; cs 40000 ks 120000 ;; hard settings
kt 150000 zr 0 Qx 0 Ax 0.5 Bx 0.7)
(write-to-file write-matlab "w:\\PhD\\programs\\matlab_thesis\\qcar_lin_soft.m") ;; soft settings
;(write-to-file write-matlab "w:\\PhD\\programs\\matlab_thesis\\qcar_lin_hard.m") ;; hard settings
101
102 Appendix to Chapter 2
G11_v = vunpck(sel(G_v,1,1)).*j.*w’;
G12_v = vunpck(sel(G_v,1,2));
G21_v = vunpck(sel(G_v,2,1));
G22_v = vunpck(sel(G_v,2,2))./j./w’;
%% thasnform admitance matrix G to admittance matrix Y
%% [Fs, Fr]’ = Y[Zsdot, Zrdot]’
Y11_v = vpck(1./G11_v,w);
Y12_v = vpck(-G12_v./G11_v,w);
Y21_v = vpck(G21_v./G11_v,w);
Y22_v = vpck(vunpck(vdet(G_v))./G11_v,w);
Y_v = sbs(abv(Y11_v,Y21_v),abv(Y12_v,Y22_v));
G_v = vpck(sbs(abv(G11_v,G21_v),abv(G12_v,G22_v)),w);
re1 = real(vunpck(sel(sys_E,1,1)));
re2 = real(vunpck(sel(sys_E,2,1)));
tt = sort([re1,re2]’);
figure(3);
semilogx(w,tt(1,:),w,tt(2,:)); grid;
xlabel(’Frequency (rad/sec)’); ylabel(’Eigenvalues (Ns/m)’)
Appendix B
Appendix to Chapter 3
y
b a
z
x Is φ̈3
T2 Q T1
m s ÿ
Bx Ax
By B m s ẍ Ay
l5 By Ay l4
φ5 Bx Ax φ4
C1 y
C2 y
C 2x C 1x
C 2x C 1x
I2 φ̈2
m 2 ÿ2 + C2 y T2 m 1 ÿ1 + C1 y T1 I1 φ̈1
F2 F1
N2 N1
103
104 Appendix to Chapter 3
Now we derive the equations of motion for each element of the system:
m s ẍ + Ax + Bx = 0, (B.1)
m y ÿ + A y + B y + m s ÿ = 0, (B.2)
−Is φ̈3 − T1 − T2
+ Ax ((h − x1,0 ) sin φ3 + a cos φ3 ) − A y ((h − x1,0 ) cos φ3 − a sin φ3 )
+Bx ((h − x2,0 ) sin φ3 − b cos φ3 ) − B y ((h − x2,0 ) cos φ3 + b sin φ3 ) = 0; (B.3)
A x + C 1x = 0, (B.4)
A y + C1 y = 0, (B.5)
−C1x l4 sin φ4 + C1 y l4 cos φ4 = 0; (B.6)
B x + C 2x = 0, (B.7)
B y + C2 y = 0, (B.8)
C2x l5 sin φ5 + C2 y l5 cos φ5 = 0; (B.9)
C1x + N1 = 0, (B.10)
C1 y + m 1 ÿ1 − F1 = 0, (B.11)
T1 + F1r1 − I1 φ̈1 = 0; (B.12)
C2x + N2 = 0, (B.13)
C2 y + m 2 ÿ2 − F2 = 0, (B.14)
T2 + F2 r2 − I2 φ̈2 = 0. (B.15)
y1 = −r1 φ1 , (B.16)
y2 = −r2 φ2 . (B.17)
B.1 Appendix to Anti-Squat Geometry 105
From (B.4 – B.5, B.7 – B.8, B.10 – B.11, B.13 – B.14) we can determine the forces acting on the
trailing arms, and from (B.12, B.15, B.16 – B.17) we can determine the torques as:
C 1x = −Ax = −N1 ,
C 2x = −Bx = −N2 ,
C1 y = −A y = F1 − m 1 ÿ1 ,
= −B y = F2 − m 2 ÿ2 ,
C2 y
I1
T1 = −F1r1 − ÿ1 ,
r1
I2
T2 = −F2r2 − ÿ2 . (B.22)
r2
Therefore, we have nine equations (B.1–B.3, B.6, B.9, B.18–B.21) left for nine unknowns: φ3 , φ4 , φ5 ,
N1 , N2 , x, y, y1 and y2 . These equations determine completely the time evolution of the trailing-arm
model. It is well-known that these equations have a unique solution for given initial conditions. We
now check that this unique solution corresponds to perfect anti-squat if the two anti-squat conditions
(3.6), (3.8) hold:
where x1,0 = r1 + l4 cos φ4 (0), y1,0 = l4 sin φ4 (0), x2,0 = r2 + l5 cos φ5 (0), y2,0 = l5 sin φ5 (0).
Namely, we check that the following solution:
x(t) ≡ 0,
y(t) ≡ y1 (t) ≡ y2 (t),
φ3 (t) ≡ 0,
φ4 (t) ≡ φ4 (0),
φ5 (t) ≡ φ5 (0),
satisfies all the equations (B.1–B.3, B.6, B.9, B.18–B.21). We substitute F1 (t) = pF(t) and F1 (t) =
(1 − p)F(t) in to those equations. (B.2) gives F(t) = (m s + m 1 + m 2 ) ÿ. From (3.6) and (3.8), (B.6)
and (B.9) give N1 = −M y ÿ and N2 = M y ÿ respectively, which satisfies (B.1). Substituting N1 , N2
into ((B.3) + (3.6) +(3.8)) verifies (B.3). Finally, the verification of (B.18–B.21) is obvious by the
expression of x1,0 , y1,0 , x2,0 ,y2,0 given above.
106 Appendix to Chapter 3
The derivation of the anti-dive case for the outboard braking system is similar to the anti-squat case
given in the previous section. The dynamic equations are the same as (B.1–B.21) except (B.3), (B.6)
and (B.9) replaced by:
−Is φ̈3 + Ax ((h − x1,0 ) sin φ3 + a cos φ3 ) − A y ((h − x1,0 ) cos φ3 − a sin φ3 )
+Bx ((h − x2,0 ) sin φ3 − b cos φ3 ) − B y ((h − x2,0 ) cos φ3 + b sin φ3 ) = 0; (B.23)
−C1x l4 sin φ4 + C1 y l4 cos φ4 − T1 = 0; (B.24)
C2x l5 sin φ5 + C2 y l5 cos φ5 − T2 = 0, (B.25)
respectively. And the forces Ax , A y , Bx , B y , C1,x , C1,y , C2,x , C2,y and torques T1 , T2 are the same
as (B.22). The proof follows the same track as in the previous section. That is, the following solutions:
x(t) ≡ 0, y(t) ≡ y1 (t) ≡ y2 (t), φ3 (t) ≡ 0, φ4 (t) ≡ φ4 (0), φ5 (t) ≡ φ5 (0) satisfy all the dynamic
equations. Suppose the braking forces F1 (t) = q F(t) and F2 (t) = (1 − q)F(t). From (3.10) and
(3.11), (B.24) and (B.25) give N1 = −M y ÿ and N2 = M y ÿ respectively. Substituting N1 , N2 into
((B.23) + (3.10) +(3.11)) verifies (B.23).
Appendix to Chapter 5
exp1 := ms*sˆ2*zs-Fs+up:
exp2 := mu*sˆ2*zu-Fr-up:
exp1 := subs(up=(cs1*s+ks1)*(zs-zu)+(cs2*s+ks2)*(za-zu),exp1):
exp2 := subs(up=(cs1*s+ks1)*(zs-zu)+(cs2*s+ks2)*(za-zu),exp2):
exp1 := subs(Fr=kt*(zr-zu),exp1):
exp2 := subs(Fr=kt*(zr-zu),exp2):
exp1 := subs(za=zs - r*u,exp1):
exp2 := subs(za=zs - r*u,exp2):
exp1 := expand(exp1):
exp2 := expand(exp2):
L := matrix(2,2,0):
R := matrix(2,3,0):
L[1,1] := coeff(exp1,zs): L[1,2] := coeff(exp1,zu):
R[1,1] := coeff(exp1,zr): R[1,2] := coeff(exp1,Fs):
R[1,3] := coeff(exp1,u):
L[2,1] := coeff(exp2,zs): L[2,2] := coeff(exp2,zu):
R[2,1] := coeff(exp2,zr): R[2,2] := coeff(exp2,Fs):
R[2,3] := coeff(exp2,u):
G := multiply(inverse(L),-R):
d(s) := collect(det(L),s):
P := matrix(4,3,0):
P[1,1] := simplify(G[1,1]): P[1,2] := simplify(G[1,2]):
P[1,3] := simplify(G[1,3]):
P[2,1] := simplify(G[2,1]): P[2,2] := simplify(G[2,2]):
P[2,3] := simplify(G[2,3]):
P[3,1] := simplify(P[1,1]*sˆ2): P[3,2] := simplify(P[1,2]*sˆ2):
P[3,3] := simplify(P[1,3]*sˆ2):
P[4,1] := simplify(P[1,1]-P[2,1]): P[4,2] := simplify(P[1,2]-P[2,2]):
P[4,3] := simplify(P[1,3]-P[2,3]):
P11 := matrix(2,2,[P[1,1],P[1,2],P[2,1],P[2,2]]):
P12 := matrix(2,1,[P[1,3],P[2,3]]):
P21 := matrix(2,2,[P[3,1],P[3,2],P[4,1],P[4,2]]):
P22 := matrix(2,1,[P[3,3],P[4,3]]):
#### calculate U2 ####
T31 := submatrix(P21,1..2,1..1):
U1 := evalm(simplify(T31/sˆ2/kt/p1*d(s))):
U2 := matrix(2,1,[0,1]):
U := concat(U1,U2):
Ut := simplify(inverse(U)):
U2t := submatrix(Ut,2..2,1..2);
#### show U2P22 ###
U2P22:= simplify(multiply(U2t,P22));
108
Appendix D
Appendix to Chapter 6
with(linalg):
exp1 := ms*sˆ2*zs-Fs+up1+up2:
exp2 := Ip*sˆ2*zp-Fp+up1*l1-up2*l2:
exp3 := m1*sˆ2*zu1-up1-Fr1:
exp4 := m2*sˆ2*zu2-up2-Fr2:
exp1 := subs(up1=c1*s*(zs+l1*zp-zu1)+k1*(za1-zu1),exp1):
exp2 := subs(up1=c1*s*(zs+l1*zp-zu1)+k1*(za1-zu1),exp2):
exp3 := subs(up1=c1*s*(zs+l1*zp-zu1)+k1*(za1-zu1),exp3):
exp4 := subs(up1=c1*s*(zs+l1*zp-zu1)+k1*(za1-zu1),exp4):
exp1 := subs(up2=c2*s*(zs-l2*zp-zu2)+k2*(za2-zu2),exp1):
exp2 := subs(up2=c2*s*(zs-l2*zp-zu2)+k2*(za2-zu2),exp2):
exp3 := subs(up2=c2*s*(zs-l2*zp-zu2)+k2*(za2-zu2),exp3):
exp4 := subs(up2=c2*s*(zs-l2*zp-zu2)+k2*(za2-zu2),exp4):
exp1 := subs(Fr1=kt1*(zr1-zu1),Fr2=kt2*(zr2-zu2),exp1):
exp2 := subs(Fr1=kt1*(zr1-zu1),Fr2=kt2*(zr2-zu2),exp2):
exp3 := subs(Fr1=kt1*(zr1-zu1),Fr2=kt2*(zr2-zu2),exp3):
exp4 := subs(Fr1=kt1*(zr1-zu1),Fr2=kt2*(zr2-zu2),exp4):
exp1 := subs(za1=zs+l1*zp-r*u1,za2=zs-l2*zp-r*u2,exp1):
exp2 := subs(za1=zs+l1*zp-r*u1,za2=zs-l2*zp-r*u2,exp2):
exp3 := subs(za1=zs+l1*zp-r*u1,za2=zs-l2*zp-r*u2,exp3):
exp4 := subs(za1=zs+l1*zp-r*u1,za2=zs-l2*zp-r*u2,exp4):
L := matrix(4,4,0):
R := matrix(4,6,0):
L[1,1] := coeff(exp1,zs):
L[1,2] := coeff(exp1,zp):
L[1,3] := coeff(exp1,zu1):
L[1,4] := coeff(exp1,zu2):
R[1,1] := coeff(exp1,zr1):
R[1,2] := coeff(exp1,zr2):
R[1,3] := coeff(exp1,Fs):
R[1,4] := coeff(exp1,Fp):
R[1,5] := coeff(exp1,u1):
R[1,6] := coeff(exp1,u2):
L[2,1] := coeff(exp2,zs):
L[2,2] := coeff(exp2,zp):
L[2,3] := coeff(exp2,zu1):
L[2,4] := coeff(exp2,zu2):
R[2,1] := coeff(exp2,zr1):
R[2,2] := coeff(exp2,zr2):
R[2,3] := coeff(exp2,Fs):
R[2,4] := coeff(exp2,Fp):
R[2,5] := coeff(exp2,u1):
R[2,6] := coeff(exp2,u2):
L[3,1] := coeff(exp3,zs):
L[3,2] := coeff(exp3,zp):
L[3,3] := coeff(exp3,zu1):
109
110 Appendix to Chapter 6
L[3,4] := coeff(exp3,zu2):
R[3,1] := coeff(exp3,zr1):
R[3,2] := coeff(exp3,zr2):
R[3,3] := coeff(exp3,Fs):
R[3,4] := coeff(exp3,Fp):
R[3,5] := coeff(exp3,u1):
R[3,6] := coeff(exp3,u2):
L[4,1] := coeff(exp4,zs):
L[4,2] := coeff(exp4,zp):
L[4,3] := coeff(exp4,zu1):
L[4,4] := coeff(exp4,zu2):
R[4,1] := coeff(exp4,zr1):
R[4,2] := coeff(exp4,zr2):
R[4,3] := coeff(exp4,Fs):
R[4,4] := coeff(exp4,Fp):
R[4,5] := coeff(exp4,u1):
R[4,6] := coeff(exp4,u2):
G := simplify(multiply(inverse(L),-R)):
d(s) := collect(det(L),s):
P := matrix(8,6,0):
row1 := submatrix(G,1..1,1..6):
row2 := submatrix(G,2..2,1..6):
row3 := submatrix(G,3..3,1..6):
row4 := submatrix(G,4..4,1..6):
row5 := row1*sˆ2:
row6 := row2*sˆ2:
row7 := row1+l1*row2-row3:
row8 := row1-l2*row2-row4:
P := stackmatrix(row1,row2,row3,row4,row5,row6,row7,row8):
P11 := submatrix(P,1..4,1..4):
P12 := submatrix(P,1..4,5..6):
P21 := submatrix(P,5..8,1..4):
P22 := submatrix(P,5..8,5..6):
T31 := submatrix(P21,1..4,1..2):
F := matrix(2,2,[sˆ2/p3, 0, 0, sˆ2/p3]):
U1 := evalm(simplify(multiply(T31,inverse(F)))):
U2 := matrix(4,2,[0,0,0,0,1,0,0,1]):
U := concat(U1,U2):
Ut := simplify(inverse(U)):
U1t := submatrix(Ut,1..2,1..4):
U2t := submatrix(Ut,3..4,1..4);
U2tP22 := simplify(multiply(U2t,P22));
#### note:
#### (1). T31 has common factor of sˆ2, and degree 1
#### (2). T31 = U1 x F, where F = sˆ2/p3 * I_2
#### (3). U is unimodular by checking U1t in RH_\infty, (U2t in RH_\infty).
####
Appendix E
Appendix to Chapter 7
(add-point ptQ :coordinates ( 0 0 0)) (add-point ptA1 :coordinates (0.5 -tf Lf))
(add-point ptA2 :coordinates (0.5 tf Lf)) (add-point ptA3 :coordinates (0.5 -tr -Lr))
(add-point ptA4 :coordinates (0.5 tr -Lr)) (add-point ptB1 :coordinates (0.7 -tf Lf))
(add-point ptB2 :coordinates (0.7 tf Lf)) (add-point ptB3 :coordinates (0.7 -tr -Lr))
(add-point ptB4 :coordinates (0.7 tr -Lr))
111
112 Appendix to Chapter 7
(add-variables dyvars real z1R z1pR z1p2R Ub1R Ub1d1R Ub1d2R E1R E1d1R Db1pR U1pR
z2R z2pR z2p2R Ub2R Ub2d1R Ub2d2R E2R E2d1R Db2pR U2pR
z3R z3pR z3p2R Uw3R Uw3d1R Uw3d2R E3R E3d1R Dw3pR U3pR
z4R z4pR z4p2R Ur4R Ur4d1R Ur4d2R E4R E4d1R Dr4pR U4pR)
(add-equation init &z1R "0") (add-equation init &z1pR "0")
(add-equation init &z1p2R "0") (add-equation init &Ub1R "0")
(add-equation init &Ub1d1R "0") (add-equation init &Ub1d2R "0")
(add-equation init &E1R "0") (add-equation init &E1d1R "0")
(add-equation init &Db1pR "0") (add-equation init &U1pR "0")
(add-strut up1 :name "front right suspension strut" :point1 wheel1cm :point2 smass_A1
:magnitude "@sf1 -k1*(x-x0) -c1*v ")
; :magnitude "@sf1 -k1*(x-x0+E1R) -c1*v ")
(add-strut up2 :name "front right suspension strut" :point1 wheel2cm :point2 smass_A2
:magnitude "@sf2 -k2*(x-x0) -c2*v ")
; :magnitude "@sf2 -k2*(x-x0+E2R) -c2*v ")
(add-strut up3 :name "rear right suspension strut" :point1 wheel3cm :point2 smass_A3
:magnitude "@sf3 -k3*(x-x0) -c3*v ")
; :magnitude "@sf3 -k3*(x-x0+E3R) -c3*v ")
(add-strut up4 :name " rear left suspension strut" :point1 wheel4cm :point2 smass_A4
:magnitude "@sf4 -k4*(x-x0) -c4*v ")
; :magnitude "@sf4 -k4*(x-x0+E4R) -c4*v ")
;;
;; apply the torques to both tyres
;;
(install-table accetor "acceleration torque" :npts 1000
:xunits "T" :yunits "F*L" :values ((0 0) (1 1) (6 1) (6 0)) )
(install-table braking "braking torque" :npts 1000
:xunits "T" :yunits "F*L" :values ((0 0) (8 0) (9 -1) (10 -1) (11 -1)) )
(setsym z1dot "dot([nz],vel(umass10))") ;; absolute forward speed of the front right wheel
(setsym z2dot "dot([nz],vel(umass20))") ;; absolute forward speed of the front left wheel
(setsym z3dot "dot([nz],vel(umass30))") ;; absolute forward speed of the rear right wheel
(setsym z4dot "dot([nz],vel(umass40))") ;; absolute forward speed of the rear left wheel
(setsym t1dot "ru(wheel1)") ;; absolute forward rotational speed of the front right wheel
(setsym t2dot "ru(wheel2)") ;; absolute forward rotational speed of the front left wheel
(setsym t3dot "ru(wheel3)") ;; absolute forward rotational speed of the rear right wheel
(setsym t4dot "ru(wheel4)") ;; absolute forward rotational speed of the rear left wheel
(add-moment T1accel :name "applied torque on front right wheel" :direction [umass1y]
:magnitude "Taccel*accetor(t,1,1)" :body1 wheel1 :body2 smass)
(add-moment T2accel :name "applied torque on front left wheel" :direction [umass2y]
:magnitude "Taccel*accetor(t,1,1)" :body1 wheel2 :body2 smass)
(add-moment Tbr1 :name "applied torque on front right wheel" :direction [umass1y]
:magnitude "@T1" :body1 wheel1 :body2 smass)
(add-moment Tbr2 :name "applied torque on front left wheel" :direction [umass2y]
:magnitude "@T2" :body1 wheel2 :body2 smass)
(add-moment Tbr3 :name "applied torque on rear right wheel" :direction [umass3y]
:magnitude "@T3" :body1 wheel3 :body2 smass)
(add-moment Tbr4 :name "applied torque on rear left wheel" :direction [umass4y]
:magnitude "@T4" :body1 wheel4 :body2 smass)
(add-variables dyvars real tys1 tys2 tys3 tys4) ;;; braking and accelerating tyre forces
(add-equation init &tys1 "0") (add-equation init &tys2 "0")
(add-equation init &tys3 "0") (add-equation init &tys4 "0")
114 Appendix to Chapter 7
(add-subroutine update tyre("-fm(Fr1)" @kappa1 &tys1)) ;;; call subroutines to generate slip force
(add-subroutine update tyre("-fm(Fr2)" @kappa2 &tys2))
(add-subroutine update tyre("-fm(Fr3)" @kappa3 &tys3))
(add-subroutine update tyre("-fm(Fr4)" @kappa4 &tys4))
(finish)
---------------------------------------------------------------------------- */
void fcontr2(real_as zsddot, real_as ztddot, real_as zpddot,
real_as D1, real_as D2, real_as D3, real_as D4,
real_as *z1R, real_as *z1pR, real_as *z1p2R, real_as *Ub1R, real_as *Ub1d1R, real_as *Ub1d2R,
real_as *E1R, real_as *E1d1R, real_as *Db1pR, real_as *U1pR,
real_as *z2R, real_as *z2pR, real_as *z2p2R, real_as *Ub2R, real_as *Ub2d1R, real_as *Ub2d2R,
real_as *E2R, real_as *E2d1R, real_as *Db2pR, real_as *U2pR,
real_as *z3R, real_as *z3pR, real_as *z3p2R, real_as *Uw3R, real_as *Uw3d1R, real_as *Uw3d2R,
real_as *E3R, real_as *E3d1R, real_as *Dw3pR, real_as *U3pR,
real_as *z4R, real_as *z4pR, real_as *z4p2R, real_as *Ur4R, real_as *Ur4d1R, real_as *Ur4d2R,
real_as *E4R, real_as *E4d1R, real_as *Dr4pR, real_as *U4pR,
real_as h)
{
real_as b3_11, b2_11, b1_11, b0_11, a2_11, a1_11, a0_11, delta, wn;
real_as b3_22, b2_22, b1_22, b0_22, a2_22, a1_22, a0_22;
real_as b3_33, b2_33, b1_33, b0_33, a2_33, a1_33, a0_33;
real_as b3_44, b2_44, b1_44, b0_44, a2_44, a1_44, a0_44;
real_as tr, tf, lr, lf;
real_as z1[2], z1p, z1p2, Ub1[2], Ub1d1[2], Ub1d2[2], Ub1d3[1],E1[2], E1d1[2], E1d2[1];
real_as z2[2], z2p, z2p2, Ub2[2], Ub2d1[2], Ub2d2[2], Ub2d3[1],E2[2], E2d1[2], E2d2[1];
real_as z3[2], z3p, z3p2, Uw3[2], Uw3d1[2], Uw3d2[2], Uw3d3[1],E3[2], E3d1[2], E3d2[1];
real_as z4[2], z4p, z4p2, Ur4[2], Ur4d1[2], Ur4d2[2], Ur4d3[1],E4[2], E4d1[2], E4d2[1];
real_as Db1[2], Db2[2], Dr1[2], Dr2[2], Dw3[2], Dr4[2];
real_as Db1d1[1], Db2d1[1], Dr4d1[1];
real_as z1d1[1], z1d2[1], z1d3[1], z2d1[1], z2d2[1], z2d3[1];
real_as z3d1[1], z3d2[1], z3d3[1], z4d1[1], z4d2[1], z4d3[1];
real_as Ur1[2], Ur2[2], U1[2], U2[2], U3[2], U4[2];
/* initialise variables */
tr = 0.75;
tf = 0.75;
lf = 1.15;
lr = 1.35;
/* initialise states */
z1[0] = *z1R; z1p = *z1pR; z1p2 = *z1p2R;
Ub1[0] = *Ub1R; Ub1d1[0]= *Ub1d1R; Ub1d2[0]= *Ub1d2R;
E1[0] = *E1R; E1d1[0] = *E1d1R; Db1[0] = *Db1pR; U1[0] = *U1pR;
z3[1] = Dw3[1];
z3d1[0] = (z3[1] - z3[0])/h;
z3d2[0] = (z3[1] - 2*z3[0] + z3p)/(h*h);
z3d3[0] = (z3[1] - 3*z3[0] + 3*z3p -z3p2)/(h*h*h);
/* Uw3[1] = z3[0]; */
/* initialise variables */
a1 = -21.3; a2 = 1144; a3 = 49.6; a4 = 226;
a5 = 0.069; a6 = -0.006; a7 = 0.056; a8 = 0.486;
Appendix to Chapter 8
118
F.1 The Linearised Half-Car Double-Wishbone Model 119
;;; output the linearised model for analysis and controller design
(write-to-file write-matlab "w:\\PhD\\programs\\matlab_thesis\\wb_hcar_lin4.m")
120 Appendix to Chapter 8
(add-line-force Fr3 :name "right rear tyre force" :point1 umass3T :direction [nx]
:magnitude "kt3*( Zr3 - dot([nx],pos(umass3T,ptT3)))" )
(add-line-force Fr4 :name "left rear tyre force" :point1 umass4T :direction [nx]
:magnitude "kt4*( Zr4 - dot([nx],pos(umass4T,ptT4)))" )
;;; output the linearised model for analysis and controller design
(write-to-file write-matlab "w:\\PhD\\programs\\matlab_thesis\\Auto_fcar_lin3.m")
Appendix G
Appendix to Chapter 9
(add-point ptQ :coordinates (Qx Qy 0)) (add-point ptA :coordinates (Ax Ay 0))
(add-point ptB :coordinates (Bx By 0)) (add-point ptC1 :coordinates (C1x C1y 0))
(add-point ptC2 :coordinates (C2x C2y 0)) (add-point ptD :coordinates (Dx Dy 0))
(add-point ptE :coordinates (Ex Ey 0)) (add-point ptG :coordinates (Gx Gy 0))
(add-point ptH :coordinates (Hx Hy 0))
(add-point leadG :body fwheel :coordinates ptG) (add-point tailH :body rwheel :coordinates ptH)
(add-point leadend :body lead :coordinates ptC1) (add-point tailend :body tail :coordinates ptC2)
(add-variables dyvars real zsR phi3R w1R w1pR w1p2R w2R w2pR w2p2R
z1pR z1p2R z1R z1d1R z1d2R U1R U1d1R U1d2R E1R E1d1R
z2pR z2p2R z2R z2d1R z2d2R U2R U2d1R U2d2R E2R E2d1R)
123
124 Appendix to Chapter 9
;;
;; apply the torques to both tyres
;;
(install-table accetor "acceleration torque" :npts 1000
:xunits "T" :yunits "F*L" :values ((0 0) (1 1) (5 1) (5 0) (6 0)) )
(install-table braking "braking torque" :npts 1000
:xunits "T" :yunits "F*L" :values ((0 0) (6 0) (6 1) (14 1) (16 1)) )
(add-standard-output)
G.2 C-Code for the Active Controller 125
(finish)
/* ----------------------------------------------------------------------------
write a subroutine in C code; calculate active control in the sharp scheme
---------------------------------------------------------------------------- */
void tcontr2(real_as zsddot, real_as ztddot, real_as D1, real_as D2,
real_as *zsR, real_as *ztR, real_as *w1R, real_as *w1pR, real_as *w1p2R,
real_as *w2R, real_as *w2pR, real_as *w2p2R,
real_as *z1pR, real_as *z1p2R, real_as *z1R, real_as *z1d1R, real_as *z1d2R,
real_as *U1R, real_as *U1d1R, real_as *U1d2R, real_as *E1R, real_as *E1d1R,
real_as *z2pR, real_as *z2p2R, real_as *z2R, real_as *z2d1R, real_as *z2d2R,
real_as *U2R, real_as *U2d1R, real_as *U2d2R, real_as *E2R,
real_as *E2d1R, real_as h)
{
real_as b3_11, b2_11, b1_11, b0_11, b3_12, b2_12, b1_12, b0_12;
real_as a2_11, a1_11, a0_11, delta, wn;
real_as b3_21, b2_21, b1_21, b0_21, b3_22, b2_22, b1_22, b0_22;
real_as a2_22, a1_22, a0_22;
real_as zs[2], p3[2];
real_as y1d1, y2d1, w1d1[1], w1d2[1], w1d3[1], w2d1[1], w2d2[1], w2d3[1];
real_as w1[2], w1p, w1p2, w2[2], w2p, w2p2;
real_as z1p, z1p2, z1[2], z1d1[2], z1d2[2], z1d3[1];
real_as z2p, z2p2, z2[2], z2d1[2], z2d2[2], z2d3[1];
real_as U1[2], U1d1[2], U1d2[2], U1d3[1], E1[2], E1d1[2], E1d2[1];
real_as U2[2], U2d1[2], U2d2[2], U2d3[1], E2[2], E2d1[2], E2d2[1];
/* initialise variables */
b3_11 = -1.1576; b2_11 = -5.7234e3; b1_11 = -3.8177e5; b0_11 = -8.0420e6;
b3_12 = -5.3166; b2_12 = -423.6377; b1_12 = -1.5119e4; b0_12 = 8.8098e3;
a2_11 = 307.7456; a1_11 = 3.6067e4; a0_11 = 7.5547e4;
/* initialise states */
zs[0] = *zsR; zs[1] = zsddot; p3[0] = *ztR; p3[1] = ztddot;
w1[0] = *w1R; w1p = *w1pR; w1p2 = *w1p2R; w2[0] = *w2R;
w2p = *w2pR; w2p2 = *w2p2R; z1p = *z1pR; z1p2 = *z1p2R;
z1[0] = *z1R; z1d1[0] = *z1d1R; U1[0] = *U1R; U1d1[0] = *U1d1R;
U1d2[0] = *U1d2R; E1[0] = *E1R; E1d1[0] = *E1d1R; z2p = *z2pR;
126 Appendix to Chapter 9
[1] R. Ayres. Thrust ssc environmental testing. Environmental Engineering, 9(2):28–30, June, 1996.
[2] E. Bakker, L. Nyborg, and H.B. Pacejka. Tyre modelling for use in vehicle dynamics studies.
Society of Automotive Engineerings Transactions, 96(2):190–204, 1988.
[4] R.K. Brayton. Nonlinear reciprocal networks in mathematical aspects of electrical network
analysis. SIAM-AMS Proceedings, pages 1–15, 1971.
[6] W.C. Char et al. First Leaves: A Tutorial Introduction to Maple V. Springer-Verlag, 1992.
[7] D.A. Crolla and A.M.A. Aboul Nour. Theoretical comparisons of various active suspension
systems in terms of performance and power requirements. Proceedings of IMecE Conference on
Advanced Suspensions, C420/88:1–9, 24–25 October 1988.
[8] J.C. Dixon. Tyres, Suspension and Handling. Cambridge University Press, first edition, 1991.
[9] R.J. Dorling. Integrated Control of Road Vehicle Dynamics. PhD thesis, Cambridge University,
April 1996.
[10] B.A. Francis. A Course in H∞ Control Theory. Lecture Notes in Control and Information
Sciences, Springer-Verlag Berlin, Heidelberg, 1987.
[11] W. Harman and D. Lytle. Electrical and Mechanical Networks. McGraw-Hill, 1962.
[13] J.K. Hedrick and T. Butsuen. Invariant properties of automotive suspensions. Proc. Instn. Mech.
Engrs. part D: Journal of automobile engineering, 204:21–27, 1990.
[14] D. Hrovat. A class of active lqg optimal actuators. Automatica, 18:117–119, 1982.
127
128 BIBLIOGRAPHY
[15] D. Hrovat and M. Hubbard. Optimal vehicle suspensions minimizing rms rattlespace, sprung-
mass acceleration and jerk. Trans. of the ASME, 103:228–236, 1981.
[16] D. Karnopp. Theoretical limitations in active suspension. Vehicle system Dynamics, 15:41–54,
1986.
[17] K.M. Malek and J.K. Hedrick. Decoupled active suspension design for improved automotive
ride quality/handling performance. Supplement to Vehicle System Dynamics, 15:383–398, 1986.
[18] D.C. McFarlane and K. Glover. Robust Control Design Using Normalized Coprime Factor
Plant Descriptions. Lecture Notes in Control and Information Sciences, Springer-Verlag Berlin,
Heidelberg, 1987.
[19] T. Meller. Self-energising, hydropneumatic levelling systems. SAE papers 780052, 1978.
[20] P.E. Mercier. Vehicle suspensions - a theory and analysis that accord with experiment. The
Automobile Engineer, 32:405–410, 1942.
[21] N.M. Morris. Electrical Circuit Analysis and Design. MacMillan Press, first edition, 1993.
[23] K. Park and J.J. Bongiorno, Jr. Wiener-hopf design of servo-regulator-type multivariable control
systems including feedforward compensation. International Journal of Control, 52(5):1189–
1216, 1990.
[24] R. Pitcher, H. Hillel, and C.H. Curtis. Hydraulic suspensions with particular reference to public
service vehicles. In Public Service Vehicles Conference. Mechanical Engineering Publications,
1977.
[25] R.S. Sharp. The application of multi-body computer codes to road vehicle dynamics modelling
problems. Proc. Instn. Mech. Engrs., Part D: Journal of Automobile Engineering, 208(1):55–61,
1994.
[26] R.S. Sharp. Influences of suspension kinematics on pitching dynamics of cars in longitudinal
manoeuvring. Vehicle System Dynamics Supplement, 33:23–36, 1999.
[27] R.S. Sharp and S.A. Hassan. The relative performance capabilities of passive, active and semi-
active car suspension systems. Proc. Instn. Mech. Engrs., 200:219–228, 1986.
[28] R.S. Sharp and S.A. Hassan. On the performance capabilities of active automobile suspension
systems of limited bandwidth. Vehicle System Dynamics, 16:213–225, 1987.
[29] J.L. Shearer, A.T. Murphy, and H.H. Richardson. Introduction to system dynamics. Addison-
Wesley, 1967.
BIBLIOGRAPHY 129
[30] K.C.A. Smith and R.E. Alley. Electrical Circuits. Cambridge University Press, first edition,
1992.
[31] M.C. Smith. Achievable dynamic response for automotive active suspension. Vehicle System
Dynamics, 24:1–33, 1995.
[32] M.C. Smith and G.W. Walker. Performance limitations and constraints for active and passive
suspension: a mechanical multi-port approach. Vehicle System Dynamics, 33:137–168, 2000.
[33] M.C. Smith and F-C. Wang. Controller parametrisation for disturbance response decoupling:
Application to vehicle active suspension control. Proceedings of the 40th IEEE Conference on
Decision and Control, Orlando, Florida, 2001.
[34] M.C. Smith and F-C. Wang. Controller parametrisation for disturbance response decoupling:
Application to vehicle active suspension control. IEEE Transactions on Control Systems Tech-
nology, to be published, 2001.
[35] A.G. Thompson. Design of active suspensions. Proc. Instn. Mech. Engrs., 185:553–563, 1970–
1971.
[36] M. Vidyasagar. Control System Synthesis: A Factorisation Approach. The MIT Press, 1985.
[37] G.W. Walker. Constraints upon the Achievable Performance of Vehicle Suspension Systems. PhD
thesis, Cambridge University, December 1997.
[38] F-C. Wang and M.C. Smith. Active and passive suspension control for vehicle dive and squat.
Automotive Control Workshop, Lund, Sweden, May 18-19, 2001.
[39] R.A. Williams and A. Best. Control of a low frequency active suspension. IEE Control ’94,
Conference Publication, 1(389):338–343, 1994.
[40] R.A. Williams, A. Best, and I.L. Crawford. Refined low frequency active suspension. Int. Conf.
on Vehicle Ride and Handling, Proc. ImechE, C466/028:285–300, 1993.
[41] P.G. Wright and D.A. Williams. The application of active suspension to high performance road
vehicles. Proceedings of IMecE Conference on Microprocessors in fluid power engineering,
Mechanical Engineering Publications, London, C239/84:23–28, 1984.
[42] P.G. Wright and D.A. Williams. The case for an irreversible active suspension system. SAE
Transactions, J. of Passenger Cars, Sect. 6,, pages 83–90, 1989.
[43] D.C. Youla and J.J. Bongiorno, Jr. A feedback theory of two-degree-of-freedom optimal wiener-
hopf design. IEEE Transactions, Automat. Contr., AC-30:652–665, 1985.
130 BIBLIOGRAPHY
[44] D.C. Youla, H.A. Jabr, and J.J. Bongiorno, Jr. Modern wiener-hopf design of optimal controllers
– part ii: The multivariable case. IEEE Transactions, Automat. Contr., AC-21:319–338, 1976.
[45] K. Zhou, J.C. Doyle, and K. Glover. Robust and Optimal Control. Prentice-Hall, 1996.