Here is a description of the model of traction force and skidding, etc., that is implemented in move_car() (CARZ.CPP). Note that "P" is used here for a vector, not for power. Also note that we use "F" for a vector here and "f" for its magnitude. In the computer program F was used for the magnitude. (There are no vectors directly represented in the program.)
We begin by erecting an x-y coordinate system with the positive x axis along the car's velocity vector, and the y axis to the driver's approximate left.
Let:
A fundamental vector relation is:
V = car's velocity vector, given P = car's pointing vector, unit vector in direction car is pointing (these two are separated by the angle alpha, given) W = velocity vector of tire bottom surface wrt car = -P * vc ( where "vc" is "velocity commanded", given ) L = slip vector, velocity of tire bottom wrt track surface. F = force vector pushing the car; this is in direction opposite to L. Ft = x-component of F (t for tangential to path) Fn = y-component of F (n for normal to path) Lt = x-component of L Ln = y-component of L
L = V + WWhich just says that the tire velocity wrt track is the tire velocity
L = V - vc * PSince the components of P and V are known, we can write:
Lt = v - vc * cosine(alpha);We will use lowercase letters for magnitudes of the vectors,
Ln = - vc * sine(alpha)
f = u(l) where u(l) is the friction function, given. hence:
F = - u(l) * L / lBecause the F and L vectors are parallel, the components of F are
Ft = -f * Lt/lThe power consumed "pwr" is equal to the component of F parallel
Fn = -f * Ln/l
pwr = vc * (Ft * cosine(alpha) + Fn * sine(alpha))That is the procedure currently used to calculate the force vector
The friction function currently used is of the form:
u(l) = FMAX * l / (K + l)where FMAX and K are given constants.
Any function that rises steeply from the origin and then levels out
and approaches a maximum might be used. It might be piecewise linear
with only two or three pieces, for example.
In order to have a model that more accurately simulates the real
world, especially paved surfaces, it will be necessary for the
traction force function to depend on more than just the slip speed,
I believe.
m