A Modified Implicit Euler Algorithm for Solving Vehicle

Multibody System Dynamics (2006) 15: 1–24
DOI: 10.1007/s11044-006-2359-z
C
Springer 2006
A Modified Implicit Euler Algorithm for Solving
Vehicle Dynamic Equations
GEORG RILL
FH Regensburg, University of Applied Sciences, Galgenbergstr. 30, 93053 Regensburg, Germany;
E-mail: [email protected]
(Received: 27 May 2005; accepted in revised form: 6 June 2005)
Abstract. Vehicle modelling is usually done by Multibody Systems. Very often the overall model
consists of several subsystems, like the vehicle framework, the drive train and the steering system. Due
to the tire forces and torques and due to small but essential compliances in the axle/wheel suspension
systems the resulting differential equations are stiff. To improve the model quality dynamic models for
some components like damper, and rubber elements are used. Again these models contain stiff parts.
If the implicit Euler Algorithm is adopted to the specific problems in vehicle dynamics a very
effective numerical solution can be achieved. Applied to vehicle dynamic equations the algorithm
produces good and stable results even for integration step sizes in the magnitude of milliseconds. As
it gets along with a minimum number of operations a very good run time performance is guaranteed.
Hence, even with very sophisticated vehicle models real time applications are possible. Due to its
robustness the presented algorithm is very well suited for co-simulations. The modifications in the
implicit Euler Algorithm also make it possible to use a simple model for describing the dry friction
in the damper and in the brake disks.
A quarter car vehicle model with a longitudinal and a vertical compliancy in the wheel suspension
and a dynamic damper model including dry friction is used to explain the algorithm and to show its
benefits.
Keywords: multibody systems, vehicle dynamics, stiff differential equations, dry friction, implicit
integration algorithm, real-time simulation
1. Modelling Aspects
1.1.
OVERALL VEHICLE MODEL
Vehicle modelling is normally based on Multibody Systems [3]. Usually the overall
vehicle model is separated into different subsystems [7]. Figure 1 shows the components of a passenger car model which can be used to investigate the handling and
ride properties.
The vehicle framework consisting of the vehicle chassis and the wheel/axle
suspension system is the kernel of the model. It directly interacts with most of
the other subsystems. The equations of motion for the vehicle framework can be
derived from Jourdain’s principle [11].
An enhanced vehicle model with an elastically suspended engine, four passengers and complex axle models comes up to n D ≈ 80 degrees of freedom. Due to the
tire forces and torques and due to small but essential compliances in the axle/wheel
2
G. RILL
Figure 1. Overall vehicle model.
suspension systems the resulting differential equations are stiff. To improve the
model quality dynamic models for some components like damper, and rubber elements are used. Again these subsystems contain stiff parts.
1.2.
ENHANCED QUARTER CAR MODEL
To demonstrate the basic structure and the specific properties of vehicle dynamic
equations a much simpler but still typical quarter car model is used. Figure 2 shows
Figure 2. Quarter car model.
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
3
an enhanced quarter car model which consists of the chassis, the knuckle and the
wheel. The model describes a modern passenger car rear axle suspension where the
compliances in bushing B are taken into account.
The momentary position of the model bodies are described by n D = 6 generalized coordinates which are arranged in the 6 × 1-vector
y = [u C , wC ; u B , w B , β K ; βW ]T ,
vehicle: yV
axle: y A
(1)
wheel:yW
where u C , wC are the horizontal and vertical chassis motions, u B , w B are the
displacements in bushing B, the angle β K describes the rotation of the knuckle
relative to the chassis and βW is the absolute wheel rotation. The sub-vectors yV ,
y A and yW take the structure of the vehicle model into account.
The road irregularities are described by ξ = ξ (x Q ), where x Q denotes the xcoordinate of a vector from the inertia frame to the tire contact point Q.
2. Vehicle Dynamic Equations
2.1.
BASIC EQUATIONS
Figure 3 shows the elements of the enhanced quarter car model. Masses and moments of inertia are given by m C , m K , m W and K , The forces in the bushing,
the spring and the damper are denoted by FB , FS and FD . Aerodynamic forces
are neglected within this quarter car model. The weight forces of the chassis, the
knuckle and the wheel are expressed by G C , G K and G W . The braking torque TB
acts between wheel and knuckle whereas the drive torque TD acts between chassis
and wheel. According to the standard tire interface (STI) [5], the tire forces FT and
torques TT generated in the contact area are transferred from the contact point Q
Figure 3. Elements of an enhanced quarter car model.
4
G. RILL
to the wheel center R. Finally FKCW describes the constraint force between wheel
and knuckle.
Linear and angular momentum applied to each body yield
m C r̈0C,0 = −FB,0 − FS,0 − FD,0 + G C,0 ;
m K r̈0K ,0 = FB,0 + FS,0 + FD,0 + G K ,0 +
(2)
FKCW,0
,
K ω̇0K ,0 = r K B,0 × FB,0 + r K S,0 × FS,0 + r K D,0 × FD,0
−TB,0 + r K R,0 × FKCW,0 ;
m W r̈0R,0 = FT,0 + G K ,0 −
FKCW,0
(3)
,
W ω̇0W,0 = TD,0 + TT,0 + TB,0
(4)
where all vectors are expressed in the fixed frame 0 indicated by the comma separated subscript 0.
2.2.
KINEMATICS
The momentary position of the chassis center C with respect to the fixed frame 0
is given by
⎡
⎤
uC
⎢
⎥
I
r0C,0 = r0C,0
+ ⎣ 0 ⎦,
(5)
wC
I
where r0C,0
denotes the initial position of the chassis center.
The momentary position of the knuckle center K with respect to a fixed frame
0 is described by
⎡
⎤
⎡
⎤
uB
xBK
⎢
⎥
⎢
⎥
r0K ,0 = r0C,0 + rCI K ,0 + ⎣ 0 ⎦ + A0K ⎣ 0 ⎦,
(6)
wB
zBK
r B K ,0
where the initial position of the knuckle center K relative to the chassis center
C is given by the vector rCI K ,0 and the coordinates x B K , z B K are constants fixing
the position of K relative to the bushing center B at rotation angle β K = 0. The
orientation of the knuckle is given by the rotation matrix
⎡
⎤
cosβ K 0 sinβ K
⎢
⎥
1
0 ⎦.
A0K = ⎣ 0
(7)
− sinβ K 0 cosβ K
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
5
For a perfectly balanced wheel the wheel center R coincides with the center of
gravity. Hence, similar to Equation (6) we get
⎡
r0R,0
⎤
uB
⎢
⎥
= r0C,0 + rCI B,0 + ⎣ 0 ⎦ + A0K
wB
⎡
⎤
xBR
⎢
⎥
⎣ 0 ⎦,
zBR
(8)
r B R,0
where x B R , z B R are constants describing the position of R relative to the bushing
center B at rotation angle β K = 0.
Finally, the angular velocities of the knuckle and the wheel are given by
⎡
ω0K ,0
2.3.
⎤
0
⎢ ⎥
= ⎣β̇ K ⎦,
0
⎡
ω0W,0
⎤
0
⎢ ⎥
= ⎣β̇W ⎦.
0
(9)
JOURDAIN ’S PRINCIPLE
Using the principle of Jourdain the constraint forces can be eliminated and the
equations of motion can be written as a set of two first order differential equations
K (y) ẏ = z,
(10)
M(y)ż = q(y, z),
(11)
where K is called kinematic matrix, y is the vector of generalized coordinates, z is
the vector of generalized speeds and M denotes the mass matrix.
Within three-dimensional vehicle models suitable generalized speeds can be
defined by using the components of the vectors of the absolute velocity and the
absolute angular velocity expressed in a moving reference frame, c.f. [10]. Due to
the simplicity of this quarter car model only trivial generalized speeds
ẏ = z
(12)
are possible.
Corresponding to the model structure the 6 × 6 mass matrix
⎡
MV V
⎢
M =⎢
⎣ MV A
MV W
MVT A
MVT W
⎤
MAA
⎥
T ⎥,
M AW
⎦
M AW
MW W
(13)
6
G. RILL
consists of submatrices for the overall vehicle MV V , the axle M A A , the wheel MW W ,
and the coupling matrices MV A , MV W , M AW . The elements of the submatrices are
given by
0
mV
MV V =
,
(14)
0 mV
⎡
⎡
⎤
⎤
mA
mA
0
0
rz m A
⎢
⎢
⎥
⎥
m A ⎦, M A A = ⎣ 0
mA
−r x m A ⎦,
MV A = ⎣ 0
(15)
r z m A −r x m A
r z m A −r x m A
A
MV W = [0 0],
M AW = [0
0
0],
MW W = [W ],
(16)
where the following abbreviations were used
m A = m K + mW ,
m V = mC + m K + m W ,
r x m A = r B K x,0 m K + r B Rx,0 m W , r z m A = r B K z,0 m K + r B Rz,0 m W ,
A = K + r B2 K z +r B2 K x m K + r B2 Rz +r B2 Rx m W
(17)
and r B K x , r B K z and r B K x,0 , r B Rx,0 are the x and z-coordinates of the vectors r B K ,0
and r B R,0 which are defined in Equation (6) and Equation (8).
Within this quarter car model all elements of the submatrices MV W and M AW
are equal to zero. In general the mass coupling between the wheel rotation and the
vehicle model can be neglected, cf. [9]. Hence, the vehicle framework and the drive
train can be described by separate subsystems.
2.4.
GENERALIZED FORCES
The generalized force vector can be separated into two parts
q = qi + qa .
(18)
where qi contains the weight and inertia forces and qa collects the applied forces
and torques. The generalized weight and inertia force vector is given by
FC I x + FK I x + FW I x
qi V =
,
FC I z + FK I z + FW I z
⎤
⎡
FK I x + FW I x
⎥
⎢
FK I z + FW I z
qi A = ⎣
⎦,
r B K z FK I x −r B K x FK I z + r B Rz FW I x −r B Rx FW I z
qi W = [0],
(19)
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
7
where
FC I x = 0,
FC I z = −m C g;
FK I x = m K r B K x β̇ K2 ,
FK I z = m K r B K z β̇ K2 −g ;
FW I x = m W r B Rx β̇ K2 ,
(20)
FW I z = m W r B Rz β̇ K2 −g
and g denotes the constant of gravity.
The contribution of each applied force Fi or torque T j to the generalized force
vector qa can be calculated via the virtual power. For n F applied forces and n T
applied torques we get
qa =
nF ∂vi T
i=1
∂z
+
Fi
nT ∂ω j T
j=1
∂z
Tj ,
(21)
where vi is the velocity in direction of the applied force and ω j is the angular
velocity around the acting direction of the applied torque. Finally, z denotes the
vector of generalized speeds which is defined by Equation (12).
3. Applied Forces and Torques
3.1.
BUSH FORCES
In modern axle suspension systems the bush compliances have become design
parameters, cf. [4]. As the compliancy of a bushing is limited the forces in bushing
B are modelled by nonlinear spring damper elements
FBx = FBx (u B , u̇ B )
and
FBz = FBz (w B , ẇ B )
(22)
where u B , u̇ B and w B , ẇ B are the bush displacements and their derivatives in
longitudinal and vertical direction.
The contribution of the bush forces to the vector of generalized forces and
torques is given by
qa FB = 0
0
1
0
∂ u̇ B /∂z
0
T
0 FBx + 0
0
0
1
∂ ẇ B /∂z
0
T
0 FBz . (23)
As u̇ B /∂z and ẇ B /∂z are generalized speeds the partial derivatives ∂ u̇ B and ∂ ẇ B
are quite simple.
8
3.2.
G. RILL
SPRING FORCE
The spring is attached to the knuckle at point S and to the chassis at point P,
Figure 3. Neglecting dissipative terms the spring force can be modelled by a pure
function of the spring displacement u S
FS = FS (u S ) ,
(24)
where the spring displacement is defined by the difference of the actual length and
the length of the spring in design position
u S = − 0 .
The actual spring length follows from
T rC P,0 − rC S,0
rC P,0 − rC S,0 ,
=
where the actual position of the attachment points S and P is given by
⎡
⎡
⎤
⎤
xC P
xC B + u B + cos β K x B S + sin β K z B S
⎢
⎢
⎥
⎥
0
rC P,0 = ⎣ 0 ⎦ ; rC S,0 = ⎣
⎦.
zC P
z C B + w B − sin β K x B S + cos β K z B S
(25)
(26)
(27)
Here xC P , z C P , xC B , z C B and x B S , z B S are constants describing the design position
of the attachment points S and P and the bushing center B.
According to Equation (21) the contribution of the spring force FS to the generalized force vector qa can be calculated via
∂ u̇ S T
FS
qa =
FS .
(28)
∂z
As 0 and rC P,0 are both constant, the time derivative of the spring displacement
u S results in
∂rC S,0
T
2 (rC P,0 − rC S,0 ) −
ẏ
∂rC S,0
∂y
˙
ẏ,
(29)
= − e ST P,0
u̇ S = = ∂y
2 (rC P,0 − rC S,0 )T (rC P,0 − rC S,0 )
where ẏ is the time derivative of the vector of generalized coordinates defined in
Equation (1) and
rC P,0 − rC S,0
e S P,0 = (rC P,0 − rC S,0 )T (rC P,0 − rC S,0 )
(30)
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
9
denotes a unit vector into the direction of the spring. From Equation (27) one gets
⎡
⎤
0 0 1 0 − sin β K x B S +cos β K z B S 0
⎥
∂rC S,0 ⎢
⎥.
=⎢
(31)
0
0
0
0
0
0
⎣
⎦
∂y
0 0 0 1 − cos β K x B S −sin β K z B S 0
In this modelling approach trivial generalized speeds ẏ = z were used. Hence,
the time derivative of the spring displacement Equation (29) delivers by simple
inspection
∂ u̇ S
∂rC S,0
∂ u̇ S
=
= − e ST P,0
.
∂z
∂ ẏ
∂y
3.3.
(32)
DAMPER TOP - MOUNT COMBINATION
The damper top-mount combination represents a dynamic force element which is
attached at point D to the knuckle and at point E to the chassis, Figure 3.
A simple damper top-mount model which also takes the dry friction in the
damper into account is shown in Figure 4. Damper and top-mount are both described
by force characteristics, FD = FD (ṡ) and FS = FS (u − s), where u and s are the
overall element and the pure damper displacement. If the dry friction is modelled
by |FF | ≤ FFmx with FFmx as the maximum friction force then, the force balance
FS = FD + FF delivers a differential equation for the damper displacement s which
is defined in sections
FD (ṡ) = FS (u − s) + FFmx ,
ṡ = 0,
FS < −FFmx ,
|FS | ≤ FFmx ,
FD (ṡ) = FS (u − s) −
FFmx ,
(33)
FS >
+FFmx
.
Here the damper displacement s acts as an internal state variable. Depending
on the model complexity of the damper and the top mount additional internal state
variables may be added. In general the overall force can be expressed as
FD = FD (y, z, s D ) ,
Figure 4. Damper top-mount combination including dry friction.
(34)
10
G. RILL
where y, z are the vectors of generalized coordinates and speeds and s D is a vector
of damper internal state variables.
Similar to Equation (28) and Equation (32) the contribution of the overall damper
force to the generalized force vector qa is given by
qa
FD
∂rC D,0
= −
∂y
T
e D E,0 FD ,
(35)
where the partial derivative of the vector rC D,0 from the chassis center C to point D
and the unit vector e D E,0 into the direction of the damper top-mount combination
correspond with Equation (31) and Equation (30).
3.4.
TIRE FORCES AND TORQUES
Tire forces and torques have a dominant influence on vehicle dynamics. The tire
model TMeasy used here is based on a semi-empirical model approach which
provides an useful compromise between user-friendliness, model-complexity and
efficiency in computation time on the one hand, and precision in representation on
the other hand [2].
In a steady state approach the tire forces FT and torques TT are calculated from
the position of the rim center r0R,0 , its velocity v0R,0 , the orientation of the knuckle
A0K , the angular velocity of the knuckle ω0K ,0 , the angular velocity β̇W = W of
the wheel and the road profile ζ
FT = FT (r0R,0 , v0R,0 , A0K , ω0K ,0 , W , ζ ) ,
TT = TT (r0R,0 , v0R,0 , A0K , ω0K ,0 , W , ζ ) .
(36)
In general the tire forces and torques can be expressed as functions of the generalized
coordinates y and generalized speeds z, the road profile ζ and in the case of dynamic
tire models of internal tire state variables sT
FT = FT (y, z, ζ, sT )
and
TT = TT (y, z, ζ, sT ) .
(37)
According to Equation (21) the contribution of FT and TT follows from
qa
FT TT
=
∂ ṙ0R,0
∂z
T
FT,0 +
∂ω0W,0
∂z
T
T
TT,0
,
where the partial derivatives are given by
⎡
1 0 1 0 − sin β K x B R +cos β K z B R
∂ ṙ0R,0 ⎢
= ⎣0 0 0 0
0
∂z
0 1 0 1 − cos β K x B R −sin β K z B R
(38)
⎤
0
⎥
0⎦ ,
0
(39)
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
⎡
∂ω0W,0
∂z
0
= ⎣0
0
0
0
0
0
0
0
0
0
0
0
0
0
⎤
0
1⎦
0
11
(40)
and the constants x B R , z B R describe the design position of the rim center R.
3.5.
DRIVING TORQUE
In complex vehicle models the drive torque at each wheel is generated by a separate
engine model. Here, the drive torque is modelled by a simple time dependent
function
TD = TD (t).
(41)
The contribution to the generalized force vector is given by
qa TD = 0
0
0
0
0
1 T TD .
(42)
∂ β˙W /∂z
3.6.
BRAKING TORQUE
The brake torque is modelled by an enhanced dry friction model
TB = TB (ω) = TBst − d N ω
with |TB | ≤ TBmx ,
(43)
where TBst is the static part, d N > 0 is a constant, TBmx denotes the maximum braking
torque and
ω = β̇W − β̇ K
(44)
describes the relative angular velocity between wheel and knuckle. The enhanced
brake torque model avoids the jump at ω = 0, Figure 5, but via the static part it still
provides a locking torque, TB (ω = 0) = TBst .
The contribution to the generalized force vector is given by
qa TB = 0
0
0
0 −1
∂ω/∂z
1 T TB .
(45)
12
3.7.
G. RILL
STRUCTURE OF THE GENERALIZED FORCES AND TORQUES
For the quarter car model the contribution of the applied forces and torques to the
vector of generalized forces and torques is given by the 6 × 1-vector
qa = qa FB + qa FS + qa FD + qa FT TT + qa TD + qa TB .
(46)
According to the model structure it can be split into different parts
qa = qaVT
qa TA
T
qaW
T
,
(47)
where the 2 × 1-vector qaV and the 3 × 1-vector qa A describe the generalized
applied forces and torques for the vehicle framework and qaW is the resulting
generalized torque applied to the wheel.
4. Numerical Solution
4.1.
STRUCTURE OF THE DYNAMIC EQUATIONS
Vehicle models have a typical model structure which in principle can be shown by
the quarter car model. At first there is the vehicle framework described by two sets
of first order differential equations
K (y) ẏ = z,
(48)
M(y) ż = q(y, z, w, s),
(49)
where now
y=
yV
yA
and
z
z= V
zA
(50)
denote the generalized coordinates and the generalized speeds for the vehicle framework only. Hence, the kinematic matrix K , the mass matrix M and the vector of
generalized forces and torques q also consist of the parts related to the vehicle
framework only. In general, the kinematic matrix and the mass matrix are functions
of the generalized coordinates, K = K (y), M = M(y). Here, the kinematic matrix
is equal to the matrix of identity K = E. The vector of generalized forces and
torques q depend on the state y, z of the vehicle framework and on additional states
w, s describing the dynamics of subsystems like the drive train and external force
elements.
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
13
Within the quarter car model the drive train model consists just of the wheel
rotation
W
β̇W
=
(51)
˙W
qW /W
ẇ
r
where W = β̇W is the absolute wheel angular velocity, W is the inertia of wheel
and rim and qW = qi W + qaW are the generalized torques for the wheel rotation
which are defined in Equation (19) and Equation (47).
In Equation (33) the dynamics of the damper top-mount model is described by
a first order differential equation for the damper displacement s. It can be written
as
ṡ = g (y, z, s) .
(52)
To keep the vehicle model modular the differential equations for the different
model parts are not combined in one system of first order differential equations.
4.2.
MODEL DATA AND STIFFNESS PROPERTIES
According to [12] a set of N linear differential equations ẋ = A x + h(t) is called
stiff, if the eigenvalues of A have negative real parts real(λi ) < 0, i = 1, 2, . . . , N
and if
max (|λi |)
1
min (|λi |)
(53)
holds. The left side of the equation in Equation (53) is called stiff ratio. In vehicle
dynamics the differential equations are nonlinear due to the kinematics and due to
nonlinear characteristics of forces and torques.
The bush forces in longitudinal and vertical direction are modelled by nonlinear
spring characteristics, Figure 6, and linear damping elements, where the constants
d Bx = 500.000 N /(m/s) and d Bz = 1200.000 N /(m/s) are used to describe the
damping properties. The nonlinear characteristics of the top-mount and the damper
are plotted in Figure 7. The combination of a coil spring and stops results in a
nonlinear overall spring characteristics, Figure 8a. As usual, the longitudinal tire
force Fx is plotted versus the longitudinal slip sx . Figure 8b also shows the influence
of the vertical load Fz . All the remaining data of the quarter car model are given in
Table I.
The stiff ratio of nonlinear systems can only be determined by linearizing the
equations of motions with respect to a certain operating point. Driving on a flat road
with a speed v = 30 m/s the quarter car model has a stiff ratio of approximately 200
14
G. RILL
Figure 5. Coulomb dry friction model and enhanced brake torque model.
Figure 6. Spring characteristics of bushing B.
Figure 7. Top-mount and damper characteristics.
which indicates a mildly stiff system. But running on rough road and or performing
hard braking maneuvers the bush forces, the longitudinal tire force and the braking
torque show an extreme nonlinear behavior which demand stiff differential equation
solvers.
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
15
Table I. Quarter car model data.
Height of chassis mass center
X -pos. of knuckle center rel. to chassis
Z -pos. of knuckle center rel. to chassis
X -pos. of wheel center rel. to chassis
Z -pos. of wheel center rel. to chassis
Chassis mass (quarter vehicle)
Knuckle mass
Wheel mass
Knuckle moment of inertia
0.600 m
0.050 m
−0.275 m
0.000 m
−0.300 m
300.000 kg
30.000 kg
15.000 kg
2.500 kgm2
Wheel moment of inertia
X -pos. knuckle bush rel. to chassis
Z -pos. knuckle bush rel. to chassis
X -pos. spring at knuckle rel. to chassis
Z -pos. spring at knuckle rel. to chassis
X -pos. spring at chassis
Z -pos. spring at chassis
Spring preload
X -pos. damper at knuckle rel. to chassis
Z -pos. damper at knuckle rel. to chassis
X -pos. damper at chassis
Z -pos. damper at chassis
Damper friction
1.200 kgm2
0.400 m
−0.310 m
0.075 m
−0.250 m
0.100 m
−0.050 m
3637.000 N
0.025 m
−0.280 m
0.050 m
−0.020 m
50.000 N
Figure 8. Spring and tire characteristics.
4.3.
STANDARD IMPLICIT EULER FORMULAS
The implicit Euler formula for a system of first order differential equations
ẋ = f (x)
(54)
16
G. RILL
is given by
x k+1 = x k + h f (x k+1 ),
(55)
where h is the integration step size, and x k , x k+1 denote the state vector at time t
and t + h. Applying the implicit Euler formalism to each system of the quarter car
model results in
K (y k+1 ) y k+1 = K (y k+1 ) y k + h z k+1 ,
M(y k+1 ) z k+1 = M(y k+1 ) z k + h q(y k+1 , z k+1 , k+1 , s k+1 )
k+1
βW
W k+1
W
k+1
s
=
k
βW
+ h
=
W kW
k
k+1
W
(56)
,
,
+ h qW y k+1 , z k+1 , k+1
W
= s + h g(y k+1 , z k+1 , s k+1 ) .
(57)
(58)
k+1
k+1
, k+1
would
Solving this set of nonlinear equations for y k+1 , z k+1 , βW
W and s
provide an asymptotically stable solution but would cost a large number of operations performing one single integration step. As the Euler approach delivers only
solutions with an accuracy in the magnitude of the step size, comparatively small
step sizes are needed in order to achieve acceptable results. To make it simple:
the implicit Euler approach spends most of its effort to achieve a poor but stable
solution for large step sizes.
In vehicle dynamics the integration step size is bounded anyway, h ≤ h max . In
real time applications for example the maximum integration step size is determined
by the communication step size. Usually one millisecond is used, h max = 1 ms. On
rough roads the step size is limited by the sample rate of the road irregularities. If
for instance the vehicle is driving with a speed of v = 30 m/s and we want to sample
the road at least with the length of a passenger car tire contact area, x ≈ 0.12 m
then, the maximum step size is given by h max = x/v = 4 ms. Hence, integration
algorithms which are developed to run with large step sizes are usually not practical
in vehicle dynamic applications.
4.4.
A MODIFIED IMPLICIT EULER APPROACH
4.4.1. Integrate and Calculate
The dynamics of the wheel rotation k → k+1 and the dynamics of external
state variables s k → s k+1 usually is much faster than the dynamics of the vehicle
k+1
frame work y k → y k+1 and z k → z k+1 . Then, the generalized torque qW
and the
function g k+1 can be approximated by a truncated Taylor expansion
∂qW k+1
qW y k+1 , z k+1 , k+1
≈ qW y k , z k , kW +
W − kW + ... ,
W
∂W
∂g k+1
g(y k+1 , z k+1 , s k+1 ) ≈ g(y k , z k , s k ) +
(s
− s k ) + ... ,
(59)
∂s
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
17
where small and all higher order terms were neglected. Using this approximation
the implicit Euler formulas Equation (57) and Equation (58) can be written as
k+1
W
=
kW
∂qW −1 k k k + h W −h
qW y , z , W ,
∂W
k+1
k
= βW
+ h k+1
βW
W ,
∂g −1 k k k
k+1
k
=s +h E −h
g(y , z , s ),
s
∂s
(60)
(61)
where E denotes a matrix of identity of the same size as the Jacobian ∂g/∂s.
If the equations Equation (60) and Equation (61) are solved first, then the new
states of the wheel rotation k+1 and the external variables s k+1 are known and
can be used to calculate the vector of generalized forces and torques for the vehicle
framework.
4.4.2. Displacement Prediction
Similar to Equation (59) the implicit state of the vector of generalized forces and
torques for the vehicle framework can be approximated by
q(y k+1 , z k+1 , k+1 , s k+1 ) ≈ q(y k +h K(y k )−1 z k , z k , k+1 , s k+1 )
∂q k+1
y
− y k − h K(y k )−1 z k
+
∂y
∂q k+1
− z k ) + ... ,
(z
+
∂z
(62)
−1 k
where again all higher order terms were neglected and y Ek+1 = y k +h K y k
z
is the explicit Euler solution of the kinematic differential equation Equation (48)
and acts here as a first approximation to the yet unknown implicit position yok+1 .
If force elements have strong nonlinearities this displacement prediction improves
the stability because the derivatives are taken at the estimated implicit position y Ek+1
instead of the momentary position y k .
As the bodies in the vehicle framework do not change their position very rapidly
the implicit states of the kinematic and the mass matrix can be approximated by
their explicit values
K (y k+1 ) ≈ K (y k )
M(y k+1 ) ≈ M(y k ) .
(63)
If trivial generalized speeds ẏ = z are defined then, the kinematic matrix is equal
to the matrix of identity and does not depend on generalized coordinates at all. This
is the case within this quarter car model.
18
G. RILL
By using the first equation in Equation (56) the second term on the right side of
the equation Equation (62) can be simplified to
∂q k+1
∂q
− y k − h K(y k )−1 z k = h
y
K(y k )−1 (z k+1 − z k )
∂y
∂y
(64)
and Equation (56) results in
z k+1 = z k + h M I−1 q(y k +h K(y k )−1z k , z k , k+1 , s k+1 )
y
k+1
k −1 k+1
= y + h K (y )
k
z
(65)
,
where the ‘implicit’ mass matrix is given by
M I = M(yk ) − h
∂q
∂q
− h2
K(y k )−1
∂z
∂y
(66)
The modified implicit Euler formulas Equations (60) (61), and (65) are based
on first approximations to the implicit state of the right hand side of the differential
equations. Hence, the derivatives needed in these formulas can be calculated with
a similar or an equal approximation level.
4.5.
DERIVATIVES
4.5.1. Approximation Level
According to Equation (18) the vector of generalized forces and torques consists of
a part qi containing weight and inertia forces and the part qa collecting the applied
forces and torques.
During normal vehicle motions the weight and inertia forces qi do not change
rapidly. Then, the partial derivatives in Equation (66) can be approximated by
∂q
∂qa
∂
≈
=
(qa FB + qa FS + qa FD + qa FT TT + qa TD + qa TB ), (67)
∂z
∂z
∂z
∂qa
∂
∂q
≈
=
(qa FB + qa FS + qa FD + qa FT TT + qa TD + qa TB ). (68)
∂y
∂y
∂y
4.5.2. Standard Force Elements
The contribution of force elements to the vector of generalized forces and torques is
calculated via the virtual power Equation (21). Using the definition of generalized
speeds Equation (10) the contribution of forces like the bush forces and the spring
force can be written as
T
∂ u̇
∂ u̇ ∂ ẏ T
∂ u̇ −1 T
F
qa =
K
F(u) =
F(u) =
F(u) ,
(69)
∂z
∂ ẏ ∂z
∂ ẏ
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
19
where u denotes the displacement of the force F, z is the vector of generalized
speeds, ẏ is the time derivative of the vector of generalized coordinates and K is
the kinematic matrix. For the quarter car model the kinematic matrix is equal to the
matrix of identity, K = E.
While taking one integration step from y k to y k+1 in vehicle models the kinematic
matrix K and the direction vector (∂ u̇/∂ ẏ) will not change very much. Hence, the
partial derivative of qa F with respect to y results in
∂qa F
=
∂y
∂ u̇ −1
K
∂ ẏ
T
∂ F(u) ∂u
.
∂u ∂ y
(70)
The time derivative of the force displacement
u̇ =
d
∂u
(u(y)) =
ẏ
dt
∂y
(71)
delivers by simple inspection
∂ u̇
∂u
=
.
∂ ẏ
∂y
(72)
As ∂ u̇/∂ ẏ is given by the kinematics of the force element and K comes from the
definition of generalized speeds only the force derivative with respect to the force
displacement ∂ F/∂u is needed to calculate the contribution of a force element to the
partial derivative of the vector of generalized forces and torques. Usually nonlinear
force characteristics are defined by lookup tables which are interpolated by simple
lines or cubic splines. Then, calculating the force F(u) and the derivative ∂ F(u)/∂u
costs only slightly more than the pure evaluation of the force.
4.5.3. Global Derivatives
The brake torque TB = TB (ω) was modelled by an enhanced dry friction model.
Its contribution qa TB to the vector of generalized forces and torques is given by
Equation (45). To calculate the partial derivative ∂qa TB /∂ y which can be done
similar to Equation (70) the derivative dTB /dω is needed. As the braking torque
was modelled quite simply in the neighborhood of ω = 0, jumps in the derivative
will occur.
20
G. RILL
The need for this derivative comes from the truncated Taylor expansion Equation (62) which was applied to generate an approximation to the implicit state
qa k+1 of the vector of generalized forces and torques. If we replace the ‘exact’
derivative
⎧
ω < ω1
⎪
⎨ 0,
dTB
= −d N , ω1 ≤ ω ≤ ω2
(73)
⎪
dω
⎩ 0,
ω > ω2
by the ‘global’ derivative
dTB
TB (ω) − TB (0)
T − TBst
≈
= B
dω
ω−0
ω
(74)
a smooth transition can be achieved, Figure 9.
Using the ‘global’ derivative means that instead of a Newton step a secant step
is used to get an approximation of qa k+1 . For characteristics with sharp bends a
single secant step generates a better approximation than a single Newton step and
thus increases the stability of the modified Euler formulas.
5. Results
5.1.
OVERALL PERFORMANCE
To test the performance of the modified Euler algorithm a simple driving and braking
manoeuver on a rough road was simulated. The road profile and the time history of
the driving and the maximum braking torque are plotted in Figure 10.
Some results are shown in Figure 11. The vehicle starts with a speed of
v ≈ 70 km/ h. By a ramp shaped drive torque it is accelerated to v ≈ 106 km/ h. A
hard braking manoeuver reduces the speed to v ≈ 25 km/ h. The maximum brake
Figure 9. Enhanced brake torque model and derivatives.
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
21
Figure 10. Road profile ξ (x) and torques TD (t) and TBmx (t).
Figure 11. Simulation results: modified euler compared to gear.
torque TBmx = 1200 N m is large enough to lock the wheel in an instant. The brake
torque model discussed in section 3.6 automatically generates the appropriate brake
torque |TB | ≤ TBmx which is needed to keep the wheel locked. The drive torque
has nearly no influence to the knuckle rotation. The strong reaction of the knuckle
rotation to the brake torque is typical for a trailing arm rear axle suspension and indicates the contribution to the anti-dive reaction of the chassis. Due to the different
22
G. RILL
Figure 12. Damper displacement: – with friction, – without friction.
bush compliances the bush displacements in the vertical direction are significantly
smaller than in the longitudinal direction. The implicit displacement prediction
described in Section 4.4.2 improves and stabilizes the stiff parts of the bush
motion.
The modified implicit Euler algorithm was applied with an integration step size
of h = 2 ms. Figure11 also shows the results of a Gear integration where the
accuracy was controlled by an absolute and relative error tolerance of abs = rel =
10−6 . Even in critical situations, like applying and releasing the brake, Euler and
Gear solutions are in very good conformity.
5.2.
DAMPER FRICTION
In Figure 12 the displacement of the pure damper element is plotted versus time
using a damper element with and without friction. To emphasize the effect of the
damper friction the road roughness was switched off and the maximum friction
force was increased from FFmx = 50 N to FFmx = 200 N .
The modified implicit Euler algorithm perfectly handles the dry friction model
developed in section 3.3. During normal driving and accelerating the friction force
is large enough to suppress any damper motion. The brake torque generates a large
knuckle rotation which results in a significant damper displacement. After finishing
the driving and braking maneuver the vehicle quickly returns to the equilibrium
position. Due to the dry friction in the damper element the equilibrium positions
of the damper displacement at the beginning (t = 0 s) and at the end (t = 8 s) are
not the same.
6. Conclusion
In this paper the implicit Euler algorithm is tailored to the specific problems in
vehicle dynamics. A first version of this approach was already used to achieve real
time performance for a full truck model, [8]. In particular the modifications within
A MODIFIED IMPLICIT EULER ALGORITHM FOR SOLVING VEHICLE DYNAMIC EQUATIONS
23
the implicit Euler algorithm pay off for large vehicle systems [6]. Since several
years the presented algorithm is used successfully within VeDynA a commercial
tool in Vehicle Dynamics [13]. VeDynA is embedded into the environment of
MATLAB/SIMULINK and it is widely used for off-line and real time applications,
c.f. [1].
The enhanced quarter car model used here is simply enough to explain all the
modification details but still is representative for complex vehicle models. At first
the implicit Euler formulas are applied to each subsystem of the overall vehicle
model. Then, the fully implicit Euler is replaced by a first order approximation
where only dominant terms in the Jacobian are taken into account. In consequence,
all derivatives are calculated in a first approximation level only. An implicit displacement prediction and global derivatives used to smoothen sharp bends in nonlinear
force or torque characteristics improve the stability of the algorithm. The latter also
simplifies the modelling of dry friction.
As shown here, the modified implicit Euler algorithm achieves a good accuracy
even for comparatively large step sizes. Hence, the run time performance of detailed
vehicle models is excellent. In general there is no need to simplify the vehicle model
in order to achieve real time performance.
References
1. Butz, T., von Stryk, O., Chucholowski, C., Truskawa, S. and Wolter, T.-M., ‘Modeling techniques
and parameter estimation for the simulation of complex vehicle structures’, in High-Performance
Scientific and Engineering Computing. Proceedings of the 3rd International FORTWIHR Conference, Erlangen, 12–14. März 2001, Breuer, M., Durst and F., Zenger, C. (eds.), Lecture Notes in Computational Science and Engineering 21. Springer Verlag, 2002, S. 333–
340.
2. Hirschberg, W., Rill, G. and Weinfurter, H., ‘User-appropriate tyre-modelling for vehicle dynamics in standard and limit situations’, Vehicle System Dynamics 38(2), 2002, 103–125. Lisse:
Swets & Zeitlinger.
3. van der Jagt, P., The Road to Virtual Vehicle Prototyping; new CAE-models for accelerated
vehicle dynamics development, PhD-Thesis, Tech. Univ. Eindhoven, Eindhoven 2000, ISBN
90-386-2552-9 NUGI 834.
4. Kosak, W. and Reichel, M.: ‘Die neue Zentral-Lenker-Hinterachse der BMW 3er-Baureihe’,
Automobiltechnische Zeitschrift, ATZ 93, 1991, 5.
5. Van Oosten, J.J.M. et al., Tydex Workshop: Standardisation of Data Exchange in Tyre Testing
and Tyre Modelling, Proc. 2nd Int. Colloquium on Tyre Models for Vehicle Dynamic Analysis,
Swets & Zeitlinger, Lisse, 1997, 272–288.
6. Reindl, N. and Rill, G., ‘Modifikation von Integrationsverfahren für rechenzeitoptimale Simulationen in der Fahrdynamik, Z. f. angew’, Math. Mech. (ZAMM) 68, 1988, 4, S. T107–
T108.
7. Rauh, J., ‘Virtual development of ride and handling characteristics for advanced passenger cars’,
Vehicle System Dynamics 40(1–3), 2003, 135–155.
8. Rill, G., Fahrdynamik von Nutzfahrzeugen im Daimler-Benz Fahrsimulator, In: Berechnung im
Automobilbau, VDI-Bericht 613. Düsseldorf: VDI-Verlag, 1986.
9. Rill, G., Simulation von Kraftfahrzeugen, Vieweg-Verlag, Braunschweig/Wiesbaden, 1994.
24
G. RILL
10. Rill, G., Modeling and Dynamic Optimization of Heavy Agricultural Tractors’, in 26th International Symposium on Automotive Technology and Automation (ISATA). Croydon: Automotive
Automation Limited 1993.
11. Rill, G., ‘Vehicle modelling for real time applications’, RBCM - J. of the Braz. Soc. Mechanical
Sciences XIX(2), 1997, 192–206.
12. Scientific Subroutine Library. Fujitsu Limited, Tokyo, Japan 1998.
13. www.tesis.de.