Suspension Asme
Suspension Asme
Suspension Asme
net/publication/222848337
CITATIONS READS
40 7,482
3 authors:
David Daney
National Institute for Research in Computer Science and Control
96 PUBLICATIONS 2,058 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Yves A. Papegay on 23 November 2017.
Abstract
This paper shows how some exact computational methods can be (and
have been) used for the kinematic analysis of mechanisms involved in sus-
pension of vehicles. It points out that, among the tools recently devel-
opped to solve exactly sets of algebraic equations, some are powerful and
efficient enough to analyse and solve the kinematics of such mechanisms.
This paper presents numerical results which are much more accurate and
complete than the one obtained through numerical iterative computa-
tions. Those results are illustrated on two mechanisms, the simple but
very popular Mac Pherson mechanism and one of the most complicated
suspension mechanism involving 5 rods with 5 spherical joints.
1 Introduction
Multi-link suspensions are yet very popular on a lot of vehicle and the numerical
simulation of their motions is a critical step of their design process. Hence the
kinematics of these mechanisms are the main topics of a large number of studies
([?],[?],[?]) even if mostly the simplest case of the well known Mac Pherson
mechanism has been thoroughly investigated ([?],[?]).
Among the papers addressing the problem of the kinematics analysis of such
mechanisms, not one (except [?]) considers the problem of the reliability of
the Newton-Raphson iterative scheme that is usually used to solve the highly
non-linear equations appearing in the kinematics. Indeed, being given a set of
numerical values for the parameters of the mechanism, such a numerical iterative
process leads to a single result for the position of the wheel while the system of
equations usually have several real solutions corresponding to several different
positions. So, when such a process is used at each step of the computation of a
discrete approximation of the trajectory of the wheel during a motion, there is
no guarantee that the whole set of points defining the positions are belonging to
1
Greyed curves are the two branches of
the solution curve, which correspond to
two different trajectories, black curve is
the computed trajectory.
Figure 1: what could happen
2
cially after simplifications due to an analysis of the geometry of the mechanism.
Some advanced mechanisms also include cylindrical joints and more seldomly
universal joints.
where (xi , yi , zi ) and (xj , yj , zj ) denotes the coordinates of two points belonging
to each of the linked bodies, and where (ui , vi , wi ) and kij , li,j denotes the
coordinates of an unitary vector and other constants which are only depending
on the geometry of the mechanism.
This set of non-linear equations expressing the mechanical constraints is
known as geometrical model using natural coordinates.
Depending of the choice of the points involved in the equations, the model
may also contains equations expressing that several points are belonging to the
same rigid body:
• for 2 points (x1 , y1 , z1 ) and (x2 , y2 , z2 ), it expresses that the distance is
constant:
(x1 − x2 )2 + (y1 − y2 )2 + (z1 − z2 )2 = l12 (2.1)
3
• for any additional point (xi , yi , zi ), we write down that their coordinates
is a linear combinations of the coordinates of the three first one:
xi = k1,i x1 + k2,i x2 + k3,i x3
yi = k1,i y1 + k2,i y2 + k3,i y3 (2.3)
zi = k1,i z1 + k2,i z2 + k3,i z3
4
3 Exact Computational Methods
Three important exact computational methods have been reviewed by Raghavan
and Roth in [?] in the scope of kinematics analysis problems, Grbner basis,
continuation and dialytic elimination. They are respectively representive of
three family of methods.
Symbolical Methods may only be used for solving set of polynomial ex-
pressions with rational or symbolic coefficients. They are computing explicit
symbolic expressions of the output parameters (in our case, the parameters
defining the position of the wheel) in terms of the input and fixed parameters
(in our case, the length of the spring and the design parameters of the suspen-
sion mechanism). Using symbolical methods is very efficient for solving, the
whole set of numerical result being simply obtained by numerical evaluation of
the symbolical expressions but is also very efficient for following trajectories, as
the information about each branch of a trajectory is attached to the computed
expressions. Symbolic methods like Grbner basis or Triangular set general-
ize the Gauss elimination to set of non-linear equations. It gives a theoretical
framework for the human way of solving equations ”by hand” by successive
eliminations of variables, repeating:
Select one equation, select one variable appearing in the selected
equation, express the selected variable in term of the other using the
selected equation and then, substitute this expression in the others
equations.
Unfortunately the number of monomials involved in intermediate expressions is
huge even on academic examples and is very quickly increasing with the number
of variables and the number of equations, as well as the size of the rational
coefficients. In the worst cases, the time and space complexity bound is a twice
exponential function of the number of variables, the number of equations and
the degree of the equations. We will show that it is not practicable, even for
the simple Mac Pherson mechanism, to compute the symbolical expression of
the output parameters using such a method.
5
result for each given set of input parameters and hence have no capabilities for
following trajectories.
Certified Numerical Methods may be used even if the equations are not
algebraic. They are based on numerical scheme with adaptative steps or on
homotopy algorithms. Combined with interval arithmetics, or with arithmetics
with a controlled precision, they can guarantee qualitative and quantitative in-
formation on the results or report numerical problems. Like hybrid methods,
certified numerical methods are of no help for following trajectories and special-
ized numerical procedure must be design for this purpose.
X12 = [x1 + x2 , x1 + x2 ]
which means that the sum of any number in the ranges X1 , X2 is strictly included
in the range X12 . As the operators that have an interval definition are almost
all the classical mathematical functions, interval analysis enable to determine
lower and upper bounds for the value of any mathematical expression. Clearly
if 0 is not included between these bounds, then the value of the expression will
never be 0 whatever the values of the unknowns. A drawback is that usually
the bounds will be overestimated. For example if we consider the function
F = x2 + x when x ∈ [−1, 3] then:
while the real bounds are [-1/4,12]. But an advantage of interval computation
is that it is possible to implement interval arithmetics in such way that round-
off errors are taken into account i.e. the interval evaluation of a function is
guaranteed to include the real bounds for the function (hence if 0 is not included
in the interval evaluation of an equation for given intervals for the unknowns
we may guarantee that there is no root of this equation within the intervals for
the unknowns).
A basic equation solver based on interval analysis will use a bisection process
that we will illustrate on the equation F in one unknown. If we are looking
for the solution of F (x) = 0 when x lie in the range [-1,3] we will start by
computing the interval evaluation of the function for this range. As this lead
to the range [-1,12] we cannot conclude if F has a real root in the range. The
bisection process consists in splitting the initial interval into two new intervals,
for example [-1,1],[1,3] and repeat the process on each new interval. In our case
the interval evaluation of F for the range [1,3] leads to [2,12] that does not
include 0. Hence this interval will be rejected and we will repeat the bisection
6
process only on the interval [-1,1]. The process will return as solution the range
whose width (the difference between the upper and lower bound) is lower than
a given threshold and for which the interval evaluation include 0.
One main drawback of interval analysis is that ranges for the unknowns
should be given and that only the roots within these ranges will be found.
For the kinematic analysis this is not a problem as the distance equations we
are dealing with enable one to determine easily ranges that are guaranteed to
contain all the roots.
There are numerous tricks to improve the efficiency of the basic solver.
Among them we may mention:
• using the monotonicity of the function. We may consider the derivatives
of the function and compute its interval evaluation: if the lower and upper
bound of a derivative with respect to a given variable have same sign
then the function is monotonous with respect to this variable and the
minimum and maximum of the function will be evaluated not by using
the range for the variable but by fixing its value according to the sign
of the derivative. Note that this must be a recursive process: fixing the
value of a variable may change the interval evaluation of the derivative
with respect to other variables. Using the monotonicity better interval
evaluation of the function will be obtained
• using Moore or Kantorovitch test [?], [?]. These methods give condi-
tions respectively on the gradient and on the gradient and Hessian of the
equations such that if they are fulfilled there will be a unique real root
within some ranges. Furthermore they guarantee that a numerical method
(respectively the Krawczyk operator and Newton scheme) will converge to-
ward this root. These tests enable one usually to avoid a large number of
bisection.
• using parallel computation: at some point of the process we have a list of
set of ranges that may contain a real root of the equations. Determining
if a set contain one root is not dependent upon the presence of roots in
any other set. Hence this set can be examined independently and interval
analysis is a good candidate for parallel computation
For solving the system of equation of the suspension mechanism we use two
others methods:
• the 3B method: let x1 , . . . xn be the unknowns in the equations. We
choose one unknown in this list, say xi whose range is [xi , xi ] and a small
number ǫ such that xi + ǫ < xi . We will substitute the range for xi by the
range [xi , xi +ǫ] while leaving the other ranges untouched and compute the
interval evaluation of the equations for this new set of ranges. If at least
one interval does not contain 0, then the range for xi may be reduced to
[xi + ǫ, xi ]. The process is then repeated until no improvement is obtained
for xi . We may also use this procedure for the other variables and for the
right side of the interval.
7
• by using the simplex approach [?]: it may be seen that all the equations
that appears in the kinematics equations may be written as the sum of a
linear part in the unknowns and a non-linear part. Let substitute this non-
linear part by a new variable Yi . Using interval analysis we may compute
and interval evaluation of Yi = [Yi , Yi ]. Each equation is now linear in the
augmented set of unknowns and we have a set of inequalities constraints
for each unknowns. Hence we may use the simplex method to determine
if there is a feasible region for the unknowns and eventually to determine
the minimum and maximum values of the unknowns, thereby improving
their ranges. This method enable to deal with a major problem of interval
analysis: each equation is considered independently and while there may
be values for the unknowns in their range for which each equation is 0
there may not be values for which all the equations are 0 at the same
time
To test this solving method we use the ALIAS library, a C++ library 2 that
implement high-level solving procedures using the BIAS/Profil library3 for the
basic interval operations.
8
2. ||Γ0 F (x0 )|| ≤ 2B0
Pn ∂ 2 Fi (x
3. k=1 | ∂xj ∂xk | ≤ C for i, j = 1, . . . , n and x ∈ U
9
Figure 2: MacPherson mechanism
10
Figure 3: MacPherson - notations
As A’s points are fixed points, we only have as unknown variables the 9
coordinates of B3 , B4 and B5 . Other symbols correspond to fixed (but not
independent) parameters, except one of them taken as input, say for example
11
l25 expressing the degree of freedom.
x3 = f1 (s, l25 )
y3 = f2 (s, l25 , x3 )
z3 = f3 (s, l25 , x3 , y3 )
z4 = f4 (t, l25 , x3 , y3 , z3 )
x4 = f5 (t, l25 , x3 , y3 , z3 , z4 )
y4 = f6 (t, l25 , x3 , y3 , z3 , z4 )
z5 = f7 (t, l25 , x3 , y3 , z3 , x4 , y4 , z4 )
x5 = f8 (t, l25 , x3 , y3 , z3 , x4 , y4 , z4 , z5 )
y5 = f9 (t, l25 , x3 , y3 , z3 , x4 , y4 , z4 , z5 )
12
2. substitute the previous result into (4.2) to eliminate z3 from the equation
and solve it to get the expression of y3 in term of x3 , we get two expressions
√
2w0 2 y0 − 2u0 x3 v0 + 2v0 2 y0 + 2u0 x0 v0 ± 2 ∆
y3 = 1/2 (5.2)
v0 2 + w0 2
with
13
−x2 l14 2 − x3 z1 2 − x3 y1 2 + x1 y3 2 + x2 l34 2 + x2 z1 2 + x1 x3 2
2Dx4 = (−2z1 y2 + 2z3 y2 − 2y3 z2 + 2y1 z2 + 2z1 y3 − 2y1 z3 )z4
−2y3 k42 l25 l45 + 2y1 k42 l25 l45 + y3 z2 2 + y3 x2 2 − z3 2 y2 + l34 2 y2
−y1 2 y3 + y1 2 y2 − z1 2 y3 − l14 2 y2 − x3 2 y2 + y1 y3 2 + y1 x3 2
+l14 2 y3 − y1 x2 2 − y1 y2 2 − y1 z2 2 − y1 l34 2 + y1 l25 2 + y1 l45 2
+y1 z3 2 + y3 y2 2 + x1 2 y2 − x1 2 y3 + z1 2 y2 − y3 2 y2 − y3 l45 2 − y3 l25 2
with
D = −x1 y3 − x2 y1 + x2 y3 + x3 y1 − x3 y2 + x1 y2
14
Figure 4: acceptable positions for B4
15
Figure 5: acceptable positions for B5
16
A5
B5 B4
A4
B3 chassis
A3
B2
B1 A2
wheel
A1
5 5-rod 5SK
The mechanism, shown in figure 7, which is denoted by 5SK in the standard
classification has been used for the design of the suspension of the rear wheels
for more then 15 years on the Mercedes 190 serie. The wheel support is linked
to the body of the car through 5 rigid rods of fixed length. On both sides,
the links between the rods and the other parts are realised by elasto-kinematic
joints, modeled as ball joints. The spring-damper system is connected to one of
the 5 rigid rods and on the other side to the body of the car through ball joints.
From a kinematical point of view, this mechanism is highly redundant, it is
made of 8 bodies with 12 joints building 6 kinematics chains and 11 loops.
17
assuming that for each i, Ai is connected to Bi through the i-th rod. A6 is
the point where is attached on the body the spring-damper system and B6 =
(u6 , v6 , w6 ) is at the other end of this system, on the first rod. Let l6 denotes
the length of the spring damper system while the other parameters are physical
constants describing the geometry of the mechanical system.
With these notations, constraints on the length of the rods can be writ-
ten:
We express the fact that the spring-damper system is attached to the first rod
by:
u6 = k6 u1 + (1 − k6 )x1 ) (6.7)
v6 = k6 v1 + (1 − k6 )y1 ) (6.8)
w6 = k6 w1 + (1 − k6 )z1 ) (6.9)
And we express that B1 , B2 , B3 , B4 and B5 belongs to the same rigid body by:
and by:
18
By substitution of the expressions of the coordinates of B4 , B5 and B6 we
get a reduced model with 9 equations and 9 unknowns:
19
x1 = −102.6
u1 = −48.1
y1 = 220.1 v1 = 660.5
l1 = 444.3865097
z1 = 238.1 w1 = 214.5
l2 = 313.9128701
x2 = 309.8 u2 = 34.6
l3 = 245.2243258
y2 = 506 v2 = 631.5
l4 = 246.4982353
z2 = 253.5 w2 = 169.5
l5 = 297.6022345
x3 = 201.9 u3 = 137.9
l12 = 98.51543026
y3 = 426.1 v3 = 660.5
l13 = 191.7244116
z3 = 294.1 w3 = 261
l23 = 141.0111343
x4 = 206.7 u4 = 75.5
k14 = 1.706216400
y4 = 443 v4 = 651.5
k24 = −2.641106193
z4 = 398.2 w4 = 389.5
k34 = 1.805302996
x5 = −2.1 u5 = 5.1
k15 = 2.559324080
y5 = 363 v5 = 660.5
k25 = −3.529570293
z5 = 421.5 w5 = 424.5
k35 = 1.815276435
x6 = −112.5 u6 = −75.35
k6 = 0.5
y6 = 438.0 v6 = 440.3
z6 = 417.5 w6 = 226.3
Still with this numerical data we were not able to solve the problem using only
symbolic computation. In that case however we may still solve the problem
using the interval analysis approach. As mentioned in section 3.1 the first step
of the approach is to determine the starting points of the branches by solving
the system of equations for the initial value of the parameter. For the 5SK
mechanism this is a quite difficult problem, which is equivalent to solve the
direct kinematics of a parallel robot, a problem that is recognized to be one of
the most challenging in modern kinematics.
20
A first example of improvment of the general solving method is to show that
it is not necessary to compute the gradient (which may be computer intensive)
to improve the interval evaluation of the Fi . Indeed, as the unknowns in this
equation appears only once in the Fi , a fundamental theorem of interval analysis
states that the bounds provided by the interval evaluation of Fi are exact, i.e.
there are values of the unknowns in the interval such that the value of Fi is
exactly one of the bounds given by the interval evaluation.
Compared to the general interval solving algorithm we may use here a second
improvement by using the so-called 2B method. Let us assume that Xm is a
fixed point with coordinates am , bm , cm . Equation (8) way be written as:
(Xk1 − am )2 = L2i − (Xk2 − bm )2 − (Xk3 − cm )2 (9)
Let U be the interval evaluation of the right side of this equation for the current
interval values of the unknowns Xk2 , Xk3 and let U be the upper bound of U . If
U is negative, then there are no root for this equation as the left side term of
the equation should be positive; hence we may state that there is no solution to
the system of equations for the current values of the intervals for the unknowns.
If we assume now √ that U is positive
√ then we get that Xk1 must belong to the
interval V1 = [am − U , am + U]. As Xk1 is an unknown it has already an
interval value V2 and Xk1 must be compatible with both the intervals V1 , V2 , i.e.
it must belong to V1 ∩ V2 . This operation may lead to a decrease in the width of
the interval for Xk1 . Evidently this procedure has to be repeated for Xk2 and Xk3
and for each equation in the system. Furthermore it has to be restarted as soon
as the interval for one unknown is modified as this change may have an effect for
an equation that has already been processed (however the convergence of this
method is asymptotically slow and it is better, in general, to stop this procedure
if the decrease of width of the interval is small as performing a bissection will
be more efficient). Note also that this procedure may be used to determine
efficiently initial values for the intervals for each unknowns.
The third improvement is related to Kantorovitch: for the specific case of
distance equations it is possible to show that a ”stronger” version of this theorem
may be demonstrated in the sense that a larger convergence domain will be
obtained. Using this version in the distance solver allows to determine that a
unique solution exists within larger interval than with the general version of
Kantorovitch test. This has also a drastic effect on the trajectory following
algorithm, as may be seen on the numerical example in the next section.
Note also that the distance solver may also be used to deal with the McPher-
son mechanism providing that the two first equations of the system are sub-
stituted by two equations expressing the point B3 (x3 , y3 , z3 ) is at a constant
distance from any two arbitrary points lying on the rotation axis of the joint of
the lower arm.
21
–50
0
50
u1
100
150
200
250
600
500
v1
400
300
600
500
400
300
200
100
w1
Figure 8: The 6 trajectories of the point of coordinates (u1 , v1 , w1 ) when l6 is
in the interval [173,280]
0
20
40
60
80
120
u2
160
200
240
700
600
500
v2
400
300
500
400
300
200
100
w2
presented in the previous section the 6 initial points for l6 = 280 are determined
in about 50 seconds.
Then, using the trajectory following algorithm, we are able to draw in an
exact way the 6 trajectories obtained when l6 varies between 174 and 280 in
about 10 seconds. These trajectories are represented in figure 8, 9, 10.
Clearly if we are interested in following only one branch the computation
time will be lower. Using the same data the computation time for following the
first branch is only 1.5 seconds.
6 Conclusion
We have presented two methods to solve exactly the kinematics of suspension
mechanisms
• a symbolic approach that has the advantages to provide the kinematics
solution directly as symbolic functions of the design parameters and is
hence appropriate for design purposes but has the drawback that not all
suspension mechanisms may be solved using this method,
22
0
50
100
u3
150
200
250
650
600
550
500
v3
450
400
500
400
w3300
200
100
350
Figure 10: The 6 trajectories of the point of coordinates (u3 , v3 , w3 ) when l6 is
in the interval [173,280]
23