[ODE] A 'real' demo of ODE

Gregor Veble gregor.veble at uni-mb.si
Tue Nov 13 04:39:02 MST 2001


Hi Russ and all,

this is my first post on this list, but as I heard my name being called
I had no choice but to reply :).

The suspensions in racecars are often of the multilink type, which means
five rods connecting the chassis and the wheel. As forces in individual
rods do make sense in car simulations (force feedback effects,
suspension compliance and breaking) it would be quite appropriate to
model each such link separately.

The condition for each such link is, of course, that the distance
between two specified points on the two objects is constant (and is not
0, such as is the case in the ball-socket type of a link). The
constraint function is therefore something like

C(R_1, O_1 ,R_2, O_2; r_1, r_2, r) = 
       (R_1 + O_1.r_1 - R_2 - O_2.r_2)^2 - r^2,

where variables R_1 and R_2 are origin vectors of both objects, O_1 and
O_2 are the (3x3) orientation matrices, while parameter vectors r_1 and
r_2 specify the link points in the reference frame of the objects, and
the scalar r is the desired distance between the two points (the link
length).

Other types of links to be used (MacPherson strut etc.) are also of
interest, but starting with the above should give a good framework, as
links do not have to be specified as objects anymore, just as
constraints which would lower the required number of degrees of freedom
and constraints.

One thing I wanted to ask, though; does ODE support time varying
constraints (where constraint functions depend explicitly on time)? This
would, for example, be needed to support steering inputs where one of
the links is moved (or can this be achieved by other means?).

-Gregor

Colin Reed wrote:
> 
> > the first thing to do is specify the suspension constraint as a
> > parameterized kinematic relationship between the chassis and wheel
> > bodies. can you give me equations?
> 
> Erm, no, maybe Gregor could step in and provide some enlightenment ...
>



More information about the ODE mailing list