Car parameters for vdrift-2009-06-15 and older

From VDrift
Revision as of 09:32, 7 February 2010 by Venzon (talk | contribs) (→‎Tire)
Jump to: navigation, search

The units are all in MKS (meters, kilograms, seconds). It might also help to read The Physics of Racing by Brian Beckman. For unit conversion you can go to: This Site.

The .car file contains several sections. Each section will now be described, along with example values from the XS.car file. The XS has performance comparable to the Honda S2000.

Coordinate system

A vector of 3 floats ( 1.0, 3.0, 1.5 ) will be interpreted as distances from the car body model origin. See Coordinate systems for a detailed description.

Top level parameters

drive = RWD

The "drive" parameter accepts values "RWD", "FWD", "AWD" that correspond to rear wheel drive, front wheel drive, and all wheel drive, respectively.

version = 2

The file format version. The only change between version 1 and version 2 is the move to coordinate system version 2, which is described in Coordinate systems. If no version is specified version 1 is assumed. VDrift is backward compatible with previous file formats. VDrift is not forward compatible with new file formats -- that is, VDrift will refuse to load a file specifying format version 3 if VDrift's code only supports version 2.

Steering

max-angle = 33.19

This defines the maximum angle that the wheels will turn in each direction. For the XS, when the steering wheel is full left, the wheels would be at -33.19 degrees.

Engine

position = 0.86, 0.0, -0.21
mass = 140.0
max-power = 1.79e5
peak-engine-rpm = 7800.0
rpm-limit = 9000.0
inertia = 0.25
idle = 0.02
start-rpm = 1000
stall-rpm = 350
fuel-consumption = 1e-9
torque-friction = 0.0003
torque-curve-00 = 1000, 140.0
torque-curve-01 = 2000, 149.14
torque-curve-02 = 2200, 145.07
torque-curve-03 = 2500, 147.78
torque-curve-04 = 3000, 169.50
torque-curve-05 = 3300, 172.19
torque-curve-06 = 4000, 169.50
torque-curve-07 = 4500, 166.77
torque-curve-08 = 5600, 172.19
torque-curve-09 = 5800, 170.83
torque-curve-10 = 6000, 168.12
torque-curve-11 = 6100, 177.61
torque-curve-12 = 6200, 186.42
torque-curve-13 = 6300, 192.53
torque-curve-14 = 6500, 195.92
torque-curve-15 = 6700, 195.92
torque-curve-16 = 7000, 195.24
torque-curve-17 = 7600, 190.49
torque-curve-18 = 8000, 184.39
torque-curve-19 = 8200, 183.04
torque-curve-20 = 8300, 146.43
torque-curve-21 = 9500, 146.43

The position and mass parameters affect the weight distribution of the car. The torque curve is calculated from max-power and peak-engine-rpm using a polynomial expression given in Motor Vehicle Dynamics, Genta (1997), where peak-engine-rpm is the engine speed at which the maximum power output (max-power) is achieved. Alternatively, the torque curve can be explicitly defined, as in the example above. A rev limit can be set with rpm-limit. The rotational inertia of the moving parts is inertia. idle is the throttle position at idle. Starting the engine initially sets the engine speed to start-rpm. Letting the engine speed drop below stall-rpm makes the engine stall. The rate of fuel consumption is set with fuel-consumption. The actual fuel consumed each second (in units of liters) is the fuel-consumption parameter times RPM times throttle (throttle is from 0.0 to 1.0, where 1.0 is full throttle).

Clutch

sliding = 0.27
radius = 0.15
area = 0.75
max-pressure = 11079.26

The clutch is described by its sliding friction coefficient, radius, area and maximum applied pressure. The torque capacity(maximum transmitted torque) of the clutch is TC = sliding * radius * area * max-pressure. It should be somewhere between one and two times the maximum enine torque. TC = 1.25 * max-engine-torque is a good start value.

Transmission

gears = 6
gear-ratio-r = -2.8
gear-ratio-1 = 3.133
gear-ratio-2 = 2.045
gear-ratio-3 = 1.481
gear-ratio-4 = 1.161
gear-ratio-5 = 0.943
gear-ratio-6 = 0.763
shift-time = 0.2

The number of forward gears is set with the gears parameter. The gear ration for reverse and all of the forward gears is then defined. The shift-time tag tells how long it takes, in total seconds, to change gears (when autoclutch is enabled). Half the time is spent changing the gear and the other half is spent letting the clutch out. This parameter is not required and defaults to 0.2 seconds, which is a reasonable value for a manual transmission. F1 cars take about 50 ms, by comparison.

Differential

final-drive = 4.100
anti-slip = 600.0
anti-slip-torque = 1
anti-slip-torque-deceleration-factor = 0

The final drive provides an additional gear reduction. The anti-slip parameter defines the maximum anti-slip torque. For speed-sensitive differentials, it also defines the anti-slip torque per radian per second of speed difference between the wheels. If the differential is speed-sensitive, the anti-slip-torque and anti-slip-torque-deceleration-factor parameters must be omitted or set to zero. If the differential is torque-sensitive, then anti-slip-torque defines the amount of anti-slip torque per input torque. The anti-slip-torque-deceleration-factor defines the amount of anti-slip torque per negative input torque. For a 1-way torque-sensitive LSD, set anti-slip-torque-deceleration-factor to zero, for a 2-way torque-sensitive LSD, set anti-slip-torque-deceleration-factor to 1.0, for 1.5-way, set it between 0.0 and 1.0.

Fuel tank

position = -0.8, -0.1, -0.26
capacity = 0.0492
volume = 0.0492
fuel-density = 730.0

The fuel tank's position, the current volume of fuel and the density of the fuel affect the car's weight distribution. The capacity tag sets the maximum volume of fuel that the tank can hold. The initial volume is set with the volume tag. The density of the fuel is set with fuel-density.

Suspension

Front/rear parameters are broken into two fields. Per-wheel parameters are broken into four fields. In the example below the front suspension is shown, followed by the front left wheel suspension parameters.

[ suspension-front ]
spring-constant = 49131.9
spring-factor-1 = 0.052, 1.0
spring-factor-2 = 0.055, 1.2
bounce = 2588
rebound = 2612
damper-factor-1 = 0.08,1.0
damper-factor-2 = 0.1, 0.7
travel = 0.19
camber = -1.33
caster = 6.12
toe = 0.0
anti-roll = 8000.0
[ suspension-FL ]
hinge = 0,0,0

The spring-constant is the wheel rate in N/m. The spring-factor-1 and 2 parameters define a curve for the spring response. These can be omitted if desired, in which case a factor of 1.0 will be used everywhere. Points are defined by specifying an x,y pair where x is the suspension displacement in meters and y is the factor to be applied to the spring coefficient. In this example, the spring factor will be 1.0 when the displacement is between 0 and 0.052 m, and then the spring factor will change linearly to 1.2 at 0.055 m (and beyond). The spring factor gets multiplied by the spring-constant. You can put as many spring-factor points as you want (just increase the spring-factor- number for each additional point). Note that displacement values are relative to the "zero g", "zero force" position. For best results, start VDrift with the -debug option and observe suspension displacements during maneuvering to determine where you want to put your points.

The bounce and rebound parameters are the damping coefficients for compression and expansion of the suspension, respectively, in units of N/m/s. The damper-factor-1 and 2 parameters define a curve for the damper response. These can be omitted if desired, in which case a factor of 1.0 will be used everywhere. Points are defined by specifying an x,y pair where x is an absolute value of suspension velocity in m/s and y is the factor to be applied to the damping coefficient. In this example, the damper factor will be 1.0 when the compression velocity absolute value is between 0 and 0.08 m/s, and then the damper factor will change linearly to 0.7 at 0.1 m/s (and beyond). The damper factor gets applied to the bonce or rebound damper coefficient, depending on the direction of travel. You can put as many damper-factor points as you want (just increase the damper-factor- number for each additional point).

The hinge is the center of the wheel's path as the suspension moves. The location of the hinge is determined by suspension geometry, and may be outside of the car itself.

Wheel alignment is set with the camber, caster, and toe tags. All angles are in degrees.

Note that the suspension position parameter and the max-compression-velocity parameters are no longer used and can be omitted.

Tire

Front/rear parameters are broken into two fields. In the example below the front tire section is shown.

radius = 0.29
rolling-resistance = 1.3e-2, 6.5e-6
rotational-inertia = 10.0
tread = 0.0
# Lateral force
a0=1.6
a1=-38
a2=1201
a3=1914
a4=8.7
a5=0.014
a6=-0.24
a7=1.0
a8=-0.03
a9=-0.0013
a10=-0.15
a111=-8.5
a112=-0.29
a12=17.8
a13=-2.4
# Longitudinal force
b0=1.7
b1=-80
b2=1571
b3=23.3
b4=300
b5=0
b6=0.0068
b7=0.055
b8=-0.024
b9=0.014
b10=0.26
b11=-86
b12=350
# Aligning moment
c0=2.3
c1=-3.8
c2=-3.14
c3=-1.16
c4=-7.2
c5=0.0
c6=0.0
c7=0.044
c8=-0.58
c9=0.18
c10=0.043
c11=0.048
c12=-0.0035
c13=-0.18
c14=0.14
c15=-1.029
c16=0.27
c17=-1.1

The two elements of rolling-resistance are the constant and velocity-squared terms, respectively. Radius defines the radius of the tire. The tread parameter ranges over arbitrary values of 0.0 to 1.0, where 0.0 is a road tire and 1.0 is an off-road tire. The longitudinal, transverse, and aligning section each contain a vector of “magic formula” coefficients as presented in Motor Vehicle Dynamics, Genta (1997). A description is shown below:

Shape factor ........................................... A0
Load infl. on lat. friction coeff (*1000)... (1/kN) .... A1
Lateral friction coefficient at load = 0 (*1000) ....... A2
Maximum stiffness ........................ (N/deg) ..... A3
Load at maximum stiffness ................ (kN) ........ A4
Camber infiuence on stiffness ............ (%/deg/100) . A5
Curvature change with load ............................. A6
Curvature at load = 0 .................................. A7
Horizontal shift because of camber ........(deg/deg).... A8
Load influence on horizontal shift ........(deg/kN)..... A9
Horizontal shift at load = 0 ..............(deg)........ A10
Camber influence on vertical shift ........(N/deg/kN)... A111
Camber influence on vertical shift ........(N/deg/kN**2) A112
Load influence on vertical shift ..........(N/kN)....... A12
Vertical shift at load = 0 ................(N).......... A13

Shape factor ........................................... B0
Load infl. on long. friction coeff (*1000)... (1/kN) ... B1
Longitudinal friction coefficient at load = 0 (*1000)... B2
Curvature factor of stiffness ............ (N/%/kN**2) . B3
Change of stiffness with load at load = 0 (N/%/kN) ..... B4
Change of progressivity of stiffness/load (1/kN) ....... B5
Curvature change with load ............................. B6
Curvature change with load ............................. B7
Curvature at load = 0 .................................. B8
Load influence on horizontal shift ....... (%/kN) ...... B9
Horizontal shift at load = 0 ............. (%) ......... B10
Load influence on vertical shift ......... (N/kN) ...... B11
Vertical shift at load = 0 ............... (N) ......... B12

Shape factor ........................................... C0
Load influence of peak value ............ (Nm/kN**2) ... C1
Load influence of peak value ............ (Nm/kN) ...... C2
Curvature factor of stiffness ........... (Nm/deg/kN**2) C3
Change of stiffness with load at load = 0 (Nm/deg/kN) .. C4
Change of progressivity of stiffness/load (1/kN) ....... C5
Camber influence on stiffness ........... (%/deg/100) .. C6
Curvature change with load ............................. C7
Curvature change with load ............................. C8
Curvature at load = 0 .................................. C9
Camber influence of stiffness .......................... C10
Camber influence on horizontal shift......(deg/deg)..... C11
Load influence on horizontal shift........(deg/kN)...... C12
Horizontal shift at load = 0..............(deg)......... C13
Camber influence on vertical shift........(Nm/deg/kN**2) C14
Camber influence on vertical shift........(Nm/deg/kN)... C15
Load influence on vertical shift..........(Nm/kN)....... C16
Vertical shift at load = 0................(Nm).......... C17

More information can be found at http://members.xoom.virgilio.it/adiaforo/epcjk.htm or if it's down try http://web.archive.org/web/20050913052226/http://members.xoom.virgilio.it/adiaforo/epcjk.htm

Brakes

Front/rear parameters are broken into two fields. In the example below the front section is shown.

friction = 0.73
max-pressure = 4.0e6
bias = 0.60
radius = 0.14
area = 0.015

The bias parameter is the fraction of braking pressure applied to the front brakes (in the front brake section) or the rear brakes (in the rear brake section). To make sense, the rear value should equal 1.0 minus the front value. The maximum brake torque is calculated as friction * area * bias * max-pressure * radius. Some fraction of this value is applied based on the brake pedal.

Driver

position = -0.62, -0.35, -0.12
mass = 90.0
view-position = -0.64, 0.35, 0.30
hood-mounted-view-position = 0.55, 0, 0.17
view-stiffness = 0.0

The position and mass affect the weight distribution of the car. The view positions define 3D coordinates for camera placement. The view-stiffness parameter defines the stiffness of the camera bounce effect, where 0.0 is a sports car and 1.0 is F1-ish.

Drag

position = 0.0, 0.0, 0.2
frontal-area = 2
drag-coefficient = 0.3

The frontal area and coefficient of drag, set with frontal-area and drag-coefficient, are used to calculate the drag force.

Wing

Front/rear parameters are broken into two fields. In the example below the front section is shown.

position = 1.9, 0.0, 0.60
frontal-area = 0.2
drag-coefficient = 0.0
surface-area = 0.3
lift-coefficient = -0.5
efficiency = 0.95

Downforce can be added with wings. The amount of downforce is determined by the value in the lift-coefficient tag. If the lift coefficient is positive, upforce is generated. This is usually undesirable for cars. The efficiency determines how much drag is added as downforce increases. The surface-area is the surface area of the wing. This value is also used in the drag calculation.

Wheel

Per-wheel parameters are broken into four fields. In the example below the front left wheel is shown.

position = 1.14, 0.76, -0.47
roll-height = 0.29
mass = 18.14
restitution = 0.1

Contact-points

mass = 0.05
position-00 = 1.96, 0.37, -0.24
position-01 = 1.96, -0.37, -0.24
position-02 = 1.52, 0.83, 0.16
position-03 = 1.52, -0.83, 0.16
position-04 = -0.10, 0.89, -0.24
position-05 = -0.10, -0.89, -0.24
position-06 = -2.18, -0.83, -0.10
position-07 = -2.18, 0.83, -0.10

These values are used for weight distribution and balance only. They no longer perform any contact-related function. So, contact-points are the same as particles (defined below), but the syntax is slightly different.

Particle

These parameters are broken into a series of values starting at 00 and going to some number less than 100. The particle-00 is shown below.

mass = 30.0
position = -1.28, 0.0, -0.36

These values are used for weight distribution and balance.