Escolar Documentos
Profissional Documentos
Cultura Documentos
Using Adams/Car to analyze a virtual prototype is much like ordering a test of a physical prototype. You
specify the virtual prototype by opening or creating an assembly that contains the appropriate
components, or subsystems, that make up the prototype. For example, you create suspension assembly
containing suspension and steering subsystems and the suspension test rig.
In Adams/Car, you can run suspension and full-vehicle analyses.
214 Adams/Car
Running Suspension Analyses
To set parameters:
1. From the Simulate menu, point to Suspension Analysis, and then select Set Suspension
Parameters.
2. Enter the necessary parameters as explained in the dialog box help for Suspension Analysis: Setup
Parameters.
3. Select OK.
External-File Analyses
You can perform two types of external-file analyses:
• Loadcase Analysis
• Wheel-Envelope Analysis
Loadcase Analysis
A loadcase analysis reads the analysis inputs (for example, vertical wheel travel, steering travel, and
static loads) from one or more existing loadcase files. When you supply more than one loadcase file,
Adams/Car performs one analysis for each loadcase file. See an Example Suspension Loadcase File.
A loadcase analysis requires a suspension subsystem.
Each loadcase analysis produces a separate set of output files, such as .gra, .req, and .out.
216 Adams/Car
Running Suspension Analyses
Wheel-Envelope Analysis
A wheel-envelope analysis generates wheel-center positions and orientations for use in packaging the
wheel/tire within the wheel well (fender). The analysis sweeps the wheels through their vertical and
steering travel in fixed increments based on information stored in a wheel-envelope input file (.wen). The
positions and orientations for the left and right wheel centers are output to a wheel-envelope output file
(.wev) for import into computer-aided design (CAD) packages. See an Example Wheel-Envelope Input
File and Example Wheel-Envelope Output File.
Steering Analysis
A steering analysis steers the wheels over the specified steering-wheel angle or rack travel displacement
from the upper to the lower bound. The application of steering motion results in a wheel displacement at
the specified wheel height.
A steering analysis requires a suspension and a steering subsystem.
Wheel-Travel Analyses
A wheel-travel analysis allows you to look at how the characteristics of a suspension change throughout
the vertical range of motion of the suspension.
You can perform three types of wheel-travel analyses. As a minimum, all wheel-travel analyses require
a suspension subsystem. These analyses can also include a steering subsystem.
• Opposite Wheel-Travel Analysis
• Parallel Wheel-Travel Analysis
• Single Wheel-Travel Analysis
The force limits for the left/right_vertical jack force are implemented as real numbers and are defaulted
to -2.0E+04 and 4.0E+04 Newton.
You can modify the force limits in the Template Builder using the actuator modify dialog box (because
actuators in Adams/Car are a topological element) or using the Command Navigator and modifying the
corresponding variables.
218 Adams/Car
Running Suspension Analyses
For example, to modify the left-side actuator force limits from the default values in the Standard Interface
after having an assembly already opened, you go to: Tools -> Command Navigator -> Variable -> Modify.
In the Variable Modify dialog box, select the desired limit variable
(.assembly.testrig.jfl_jack_force.force_limits, in this case) and modify the values to the new force limits.
X = C F
From this perspective, matrix element cij is the displacement of system degree of freedom i due to a unit
force at degree of freedom j.
Adams/Car uses a 12 x 12 matrix relating the motion of the left and right wheel centers to units forces
and torques applied to the wheel centers. This matrix has the form shown next:
220 Adams/Car
Running Suspension Analyses
For example, element C(3,3) is the vertical motion of the left wheel center due to a unit vertical force
applied at the left wheel center. Element C(3,9) is the vertical motion of the left wheel center due to a unit
vertical force applied at the right wheel center. For an independent suspension without a stabilizer bar,
C(3,9) is zero since a vertical force on the right wheel will not cause motion of the left wheel. The other
elements of the compliance matrix are defined similarly.
Both methods give accurate results, but the instant axis method is more general, because it can be used
when the steer axis cannot be determined geometrically, such as in a five-link suspension. Currently, for
a new suspension template the default is the geometric method.
Running Analyses 221
Running Suspension Analyses
Geometric Method
Using the geometric method, Adams/Car calculates the steer axis by passing a line through two non-
coincident points located on the steer axis. To use the geometric method, you must identify a part or parts
and two hardpoints that fix the steer axis.
For example, in a double wishbone suspension you might identify the wheel carrier part and Hardpoints
located at the upper and lower ball joints. For a MacPherson strut suspension, you might identify the
wheel carrier part and a hardpoint located at the lower ball joint for one point, and the strut rod and a
hardpoint located where the strut attaches to the body for the second point.
Dynamic Analysis
A dynamic analysis actuates the suspension at the contact patch via user defined runtime function
expressions or by referencing existing RPC3 files.
It is also possible to define a runtime function expression for the steering motion, therefore combining
vertical excitation with steering sweeps.
222 Adams/Car
Running Suspension Analyses
Note that the Computation of Suspension and Steering Characteristics is currently not available for
dynamic suspension analyses.
-60.0000 -60.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
-40.0000 -40.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
-20.0000 -20.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.000
20.0000 20.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
40.0000 40.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
60.0000 60.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
80.0000 80.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
100.0000 100.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000
Note: For wheel-envelope input files, Adams/Car ignores columns three through ten: (left and
right) lateral force, aligining torque, brake force, and driving force.
$--------------------------------------------MDI_HEADER
[MDI_HEADER]
FILE_TYPE = 'wen'
FILE_VERSION = 5.0
FILE_FORMAT = 'ascii'
$--------------------------------------------UNITS
[UNITS]
LENGTH = 'mm'
FORCE = 'newton'
ANGLE = 'deg'
MASS = 'kg'
TIME = 'sec'
$--------------------------------------------MODE
[MODE]
STEERING_MODE = 'angle'
VERTICAL_MODE = 'length'
$--------------------------------------------GRID
[GRID]
BOUNDARY_STEERING_GRID = 100.0
BOUNDARY_WHEEL_GRID = 20.0
INTERIOR_STEERING_GRID = 100.0
INTERIOR_WHEEL_GRID = 20.0
$--------------------------------------------DATA
[DATA]
$COLUMN: input type: type of input data: side:
$ (c1) wheel z disp / force left
$ (c2) wheel z disp / force right
$ (c3) lateral force (y) left
$ (c4 lateral force (y) right
$ (c5) aligning torque (z-axis) left
$ (c6) aligning torque (z-axis) right
$ (c7) brake force (y) left
$ (c8 brake force (y) right
$ (c9) driving force (y) left
224 Adams/Car
Running Suspension Analyses
The table that follows the header contains the following information:
• The first column shows the solution step number
• Columns 2-4 show the data for the left wheel center x, y, z
• Columns 5-7 show the data for the left wheel axis point x, y, z
• Columns 8-10 show the data for the right wheel center x, y, z
• Columns 11-13 show the data for the right wheel axis point x, y, z
1 -4.2702 -673.57 205.00 -348.83 -1611.7 170.29 7.0293 670.69 205.00 303.63 1620.7 107.88
2 -4.6463 -681.45 225.00 -344.63 -1621.7 206.15 6.7629 678.55 225.00 307.97 1628.3 139.91
3 -4.9532 -687.82 245.00 -340.16 -1630.0 239.60 6.5706 684.92 245.00 311.28 1634.4 170.26
4 -5.2433 -692.82 265.00 -334.67 -1637.0 271.40 6.3755 689.93 265.00 314.35 1639.0 198.89
Running Analyses 225
Running Suspension Analyses
5 -5.5240 -696.55 285.00 -328.07 -1643.0 301.70 6.1779 693.66 285.00 317.43 1642.1 225.76
6 -5.7905 -699.08 305.00 -320.38 -1648.0 330.44 5.9864 696.18 305.00 320.67 1643.8 250.76
7 -6.0372 -700.45 325.00 -311.59 -1652.1 357.51 5.8099 697.55 325.00 324.25 1644.1 273.76
8 -6.2583 -700.71 345.00 -301.72 -1655.3 382.78 5.6583 697.79 345.00 328.31 1643.0 294.55
9 -6.4469 -699.89 365.00 -290.74 -1657.8 406.03 5.5424 696.93 365.00 333.04 1640.3 312.88
10 -6.5953 -698.01 385.00 -278.64 -1659.4 426.98 5.4752 695.00 385.00 338.63 1636.2 328.39
... .......
226 Adams/Car
Output of Suspension Analyses
For steered suspensions, Adams/Car analyses also output the following steering characteriscs:
• Ackerman
• Ackerman Angle
• Ackerman Error
• Caster Moment Arm (Mechanical Trail)
• Ideal Steer Angle
• Outside Turn Diameter
• Percent Ackerman
• Scrub Radius
• Steer Angle
Running Analyses 227
Output of Suspension Analyses
Description The aligning torque steer compliance is the change in steer angle due to unit
aligning torque on the wheel. The aligning torque camber compliance is the
change in camber angle due to a unit aligning torque on the wheel.
A positive aligning torque acts to steer the wheel to the left. For a positive
steer angle, the wheel turns to the left. For a positive camber angle, the top
of the wheel tilts away from the body.
Units degrees/(force*length)
Request Names • alt_steer_compliance.left
• alt_steer_compliance.right
• alt_camber_compliance.left
• alt_camber_compliance.right
Method alt_steer_compliance.left = C(6,6) + C(6,12)
alt_steer_compliance.right = C(12,6) + C(12,12)
alt_camber_compliance.left = C(4,6) + C(4,12)
alt_camber_compliance.right= -C(10,6) + C(10,12)
Camber Angle
Description Camber angle is the angle the wheel plane makes with respect to the vehicle's
vertical axis. It is positive when the top of the wheel leans outward from the
vehicle body.
Caster Angle
Description Caster angle is the angle in the side elevation (vehicle XZ plane) between the
steering (kingpin) axis and the vehicle's vertical axis. It is positive when the
steer axis is inclined upward and rearward.
Adams computes the steer axis using the geometric or instant axis method.
Units Degrees
Request Names • caster_angle.left
• caster_angle.right
Inputs • Steer (kingpin) axis unit vectors - left and right
• Road vertical unit vector (z)
• Road longitudinal unit vector (x)
Method Adams uses the direction cosines in the x- and the z-directions of the kingpin
axis to calculate caster angle, such that:
sx = steer_axis road_x_axis
sz = steer_axis road_z_axis
caster_angle = rtod * arctan(sx/sz)
Description Dive braking is the amount of front suspension compression per G of vehicle
braking. Included in dive is suspension compression due to weight transfer plus
suspension extension due to brake forces. Positive dive indicates that the front
suspension compresses in braking.
Lift braking is the amount of rear suspension extension per G of vehicle braking.
Included in lift is suspension extension due to weight transfer plus compression
due to brake forces. Positive lift indicates that the rear suspension extends in
braking.
Units mm
Request Names • dive.left
• dive.right
Running Analyses 231
Output of Suspension Analyses
These are forces at each wheel per unit total braking force.
Description The stiffness of the suspension in the fore-aft direction is relative to the body,
measured at the wheel center.
Units Newtons/mm
Request Names • fore_aft_wheel_center_stiffness.left
• fore_aft_wheel_center_stiffness.right
Inputs Compliance matrix
Method Adams applies equal unit forces acting longitudinally at the wheel centers. It
calculates the fore-aft wheel center stiffness as follows:
fore_aft_wheel_center_stiffness.left = 1 /
C(1,1)
fore_aft_wheel_center_stiffness.right = 1 /
C(7,7)
Description The swing arm is the imaginary arm extending from the wheel's front elevation
instant center of rotation to the wheel center. The swing arm has a positive
length when the instant center is inward of the wheel center. The angle of the
swing arm is the angle it makes to the horizontal. A positive angle is when the
arm slopes outward and upward from the center of rotation to the wheel center.
Method The change in vertical and lateral position and the front view rotation of the left
wheel center due to a unit vertical force at the left wheel center is:
Y left = C 2, 3
Z left = C 3, 3
left = C 4, 3
The left front view swing arm length and angle are:
2 2 12
fr_view_swing_arm_length.left = – Y left + Z left left
–1
fr_view_swing_arm_angle.left = – tan Y Z left
left
The change in vertical and lateral position and the front view rotation of the right
wheel center due to a unit vertical force at the right wheel center is:
Y right = C 8, 9
Z right = C 9, 9
right = C 10, 9
234 Adams/Car
Output of Suspension Analyses
The right front view swing arm length and angle are:
2 2 12
fr_view_swing_arm_length.right = Y right + Z right right
–1
fr_view_swing_arm_angle.right = tan Y right Z right
Description The kingpin inclination angle is the angle in the front elevation between the steer
axis (the kingpin axis) and the vehicle's vertical axis. It is positive when the steer
axis is inclined upward and inward.
Units Degrees
Request Names • kingpin_incl_angle.left
• kingpin_incl_angle.right
Running Analyses 235
Output of Suspension Analyses
Description The deflections at the wheel center due to unit lateral forces applied simultaneously at
the tire contact patches. The forces are oriented as if in a right turn. Adams reports the
lateral translational deflection, steer deflection (rotational deflection about the vertical
axis), and the camber deflection (rotational deflection about the longitudinal axis).
Positive deflection indicates a deflection to the right. Positive steer is a steer to the left.
Positive camber compliance is when the wheels lean outward at the top.
Units Deflection - mm; Camber and steer - degrees
236 Adams/Car
Output of Suspension Analyses
Request • lat_force_defl_compliance.left
Names • lat_force_defl_compliance.right
• lat_force_steer_compliance.left
• lat_force_steer_compliance.right
• lat_force_camber_compliance.left
• lat_force_camber_compliance.right
Inputs • Compliance matrix
• Tire radius - loaded
Method When the force is applied at the tire contact patch, Adams computes the deflection due
to both the lateral force at the wheel center and the moment created around the wheel
center. The total compliances are:
Lift/Squat Acceleration
Description Lift is the amount of front suspension extension (rebound) per G of vehicle
acceleration. Squat is the amount of rear suspension compression (jounce) per
G of vehicle acceleration. Lift and squat arise when the suspension reacts to
longitudinal tractive forces, weight transfer forces, and, in dependent
suspensions, to the differential input and output torques.
Units mm
Request Names Front suspensions:
• lift.left
• lift.right
Rear suspensions:
• squat_acceleration.left
• squat_acceleration.right
Inputs Compliance matrix
• suspension_type (independent/dependent)
Vehicle parameters array:
• sprung_mass
• cg_height
• wheelbase
• loaded_tire_radius
• tire_stiffness
• axle_ratio (final drive ratio, pinion ring gear ratio)
• drive_ratio (fraction of total drive torque directed to the suspension)
Suspension geometry:
• Track
Acceleration due to gravity (Ag)
238 Adams/Car
Output of Suspension Analyses
Method The suspension lift or squat during acceleration arises due to the tractive forces,
weight transfer, and, in live axles, due to the differential input and output
torques, as well. The longitudinal tractive forces at the tire contact patches are:
Description Percent anti-dive braking for a front suspension and percent anti-lift braking for a
rear suspension are the ratio of vertical suspension deflections caused by braking
forces and torques to the deflections caused by weight transfer. During braking,
the vertical deflections in a suspension from weight transfer can, in part, be
cancelled by the vertical deflections caused by braking forces and torques in the
suspension. Suspensions that exhibit this characteristic are said to have anti-dive
or anti-lift geometry.
• anti_dive_braking.left
• anti_dive_braking.right
Rear suspensions:
• anti_lift.left
• anti_lift.right
240 Adams/Car
Output of Suspension Analyses
• sprung_mass
• cg_height
• wheelbase
• loaded_tire_radius
• tire_stiffness
• brake_ratio (fraction of braking done by the suspension)
• acceleration due to gravity (Ag)
Method The brake forces at the tire contact patch per G of longitudinal deceleration are:
Description Percent anti-lift for a front suspension and percent anti-squat for a rear
suspension are the ratio of vertical suspension deflections caused by tractive
forces and drive torques to the deflections caused by weight transfer. During
acceleration, the vertical deflections in a suspension from weight transfer can,
in part, be cancelled by the vertical deflections caused by tractive forces and
drive torques in the suspension. Suspensions that exhibit this characteristic
are said to have anti-lift or anti-dive geometry. Note that a suspension that
does not transmit tractive forces and drive torques (drive_ratio = 0.0) has zero
anti-lift or anti-squat.
• anti_lift.left
• anti_lift.right
Rear suspensions:
• anti_squat.left
• anti_squat.right
242 Adams/Car
Output of Suspension Analyses
• suspension_type (independent/dependent)
Vehicle parameters array:
• sprung_mass
• cg_height
• wheelbase
• loaded_tire_radius
• tire_stiffness
• axle_ratio (final drive ratio, pinion ring gear ratio)
• drive_ratio (fraction of total drive torque directed to the suspension)
Suspension geometry:
• Track
Acceleration due to gravity (Ag)
Running Analyses 243
Output of Suspension Analyses
Method The longitudinal tractive forces at the tire contact patches are:
Ride Rate
Description Ride rate is the spring rate of the suspension relative to the body, measured at the
tire contact patch.
Units Newtons/mm
Request Names • ride_rate.left
• ride_rate.right
Inputs • Compliance matrix
• Tire stiffness
Method Adams computes ride rate as the equivalent rate of the wheel rate and tire rate in
series.
Ride Steer
Description Ride steer is the slope of the steer angle versus the vertical wheel travel curve. Ride
steer is the change in steer angle per unit of wheel center vertical deflection due to
equal vertical forces at the wheel centers. Positive ride steer implies that the
wheels steer to the right, as the wheel centers move upward.
Units Degrees/mm
Request Names • ride_steer.left
• ride_steer.right
Running Analyses 245
Output of Suspension Analyses
d(wcvl)/dF = Wl x wcvl
d(wcvr)/dF = Wr x wcvr
Change in Steer Angle
The change in steer angle due to a change in wheel-center vector orientation is also
a vector of partial derivatives given by:
ride_steer.left = d(steer_anglel)/dzl =
d(steer_anglel)/dF/(dF/dzl)
ride_steer.right = d(steer_angler)/dzr =
d(steer_angler)/dF/(dF/dzr)
Nomenclature • Bold, uppercase text, such as Wl, are vectors.
• Bold, lowercase text, such as wcvl, are unit vectors.
• X is the vector cross product operator.
• o is the vector dot product operator.
• * is the scalar multiplication operator.
Description Roll camber coefficient is the rate of change of wheel inclination angle with
respect to vehicle roll angle. Positive roll camber coefficient indicates an increase
in camber angle per degree of vehicle roll.
Units Unitless
Request Names • roll_camber_coefficient.left
• roll_camber_coefficient.right
Running Analyses 247
Output of Suspension Analyses
Av = DZ / track
Adams measures the wheel inclination with respect to the line through the tire
contact patches, which has two components. The first is from the vertical
movement of the tire contact patch and is the same as the vehicle roll angle. The
second is from the rotational compliance at the wheel center due to the vertical
force:
Ai = Av - Ac
The roll camber is then:
Description Roll caster coefficient is the rate of change in side view steer axis angle
with respect to vehicle roll angle. A positive roll caster coefficient indicates
an increase in caster angle per degree of vehicle roll.
This calculation assumes that the steer axis (kingpin) is fixed in the
suspension upright as in a double-wishbone or MacPherson strut
suspension. The calculation, however, is not valid for suspensions where
the steer axis is not fixed in the suspension upright, for example, a five-link
front suspension used in Audi A4.
Units Unitless
Request Names • roll_caster_coefficient.left
• roll_caster_coefficient.right
Inputs • Compliance matrix
• Tire stiffness
• Track width
Method Adams applies opposing unit forces acting vertically at the tire contact
patches. The height difference between the tire contact patches is the
following, where Kt is the vertical tire rate:
Av = DZ / track
The rotational compliance at the wheel center due to the vertical force is:
roll_caster_coefficient = Ac / Av
Description Roll center location is the point on the body where the moment of the
lateral and vertical forces exerted by the suspension links on the body
vanishes.
Units
Request Names • roll_center_location.lateral_from_half_track
• roll_center_location.vertical
• roll_center_location.lateral_to_left_patch
• roll_center_location.lateral_to_right_patch
250 Adams/Car
Output of Suspension Analyses
Adams reports errors when the motions of the left and right patches are
parallel (just as it occurs with a fully trailing arm suspension). Therefore,
the projected lines have no intersection. Adams also reports an error when
the motion of the left and/or right patches is very small for a unit vertical
force (for example, the suspension is very stiff).
Finally, Adams limits the distance from the roll center to the left and right
patches to +/- 1000 meters.
Roll Steer
Description Roll steer is the change in steer angle per unit change in roll angle, or the slope of
the steer-angle-verses-roll-angle curve. Roll steer is positive when for increasing
roll angle (left wheel moving up, right wheel moving down) the steer angle increases
(wheels steer toward the left).
Units Unitless
Request Names • roll_steer.left
• roll_steer.right
Inputs • Wheel center spin axis unit vector (wcv) left and right
• Track
• Tire stiffness (Kt)
• Compliance matrix
252 Adams/Car
Output of Suspension Analyses
Method Using the compliance matrix, Adams first calculates the change in roll angle and the
change in the wheel-center vector orientation due to a roll moment (the roll moment
is a unit vertical force upward at the left contact patch and a unit force downward at
the right contact patch). Then, Adams calculates the change in steer angle due to the
change in wheel-center vector orientation. Finally, Adams applies the chain rule to
calculate the roll steer.
d(wcvl)/d(roll_moment) = Wl x wcvl
d(wcvr)/d(roll_moment) = Wr x wcvr
The change in steer angle for a change in roll moment is computed using the chain
rule:
d(steer_anglel)/d(roll_moment) = (
d(steer_anglel)/d(wcvl) ) o (
d(wcvl)/d(roll_moment) )
d(steer_angler)/d(roll_moment) = (
d(steer_angler)/d(wcvr) ) o (
d(wcvr)/d(roll_moment) )
Roll Steer
And applying the chain rule one last time, the roll steer is
roll_steer.left = ( d(steer_anglel)/d(roll_moment)
) / ( d(roll_angle)/d(roll_moment) )
roll_steer.right = ( d(steer_angler)/d(roll_moment)
) / ( d(roll_angle)/d(roll_moment) )
Request REQUST/id, FUNCTION=USER(900,17,characteristics_input_array_id)
Statements
Nomenclature • Bold, uppercase text, such as Wl, are vectors.
• Bold, lowercase text, such as wcvl, are unit vectors.
• X is the vector cross product operator.
• o is the vector dot product operator.
• * is the scalar multiplication operator.
Side-View Angle
Description The side-view angle is the wheel carrier side-view rotation angle. It is
positive for a clockwise rotation, as seen from the left side of the vehicle.
Units Angle
Request Names • side_view_angle.left
• side_view_angle.right
Inputs Wheel bearing I marker and origo_y
Method side_view_angle = az, marker I, marker J
254 Adams/Car
Output of Suspension Analyses
Description The swing arm is an imaginary arm extending from the wheel's side elevation
instant center of rotation to the wheel center. For front suspensions, the sign
convention is that when the instant center is behind the wheel center, the swing
arm has a positive length. For rear suspensions, the sign convention is the
opposite: when the instant center is ahead of the wheel center, the swing arm
has a positive length.
The angle of the swing arm is the angle it makes to the horizontal. A positive
angle for a positive length is when the arm slopes downward from the wheel
center. A positive angle for a negative length arm is when the arm slopes
upward from the wheel center.
DX left = C(1,3)
DZ left = C(3,3)
DØ left = C(5,3)
The left side view swing arm length and angle are:
The change in vertical and longitudinal position and the change in side view
rotation of the right wheel center due to a unit vertical force at the right wheel
center is:
DX right = C(7,9)
DZ right = C(9,9)
DØ right = C(11,9)
The right side view swing arm length and angle are:
Description Suspension roll rate is the torque, applied as vertical forces at the tire contact
patches, per degree of roll, measured through the wheel centers.
Units Newton-mm/degree
Request Names • susp_roll_rate.left
• susp_roll_rate.right
Inputs • Compliance matrix
• Track width
Method Adams uses opposing unit forces as the applied torque:
T = F x track = track
The resulting vertical distance between wheel centers is:
Z = X 3, 3 – X 3 , 9 – X 9 , 3 + X 9 , 9
The rotation of the line through the wheel centers is:
= Z track
The roll rate is:
2
susp_roll_rate = T / Ø = track Z
Toe Angle
Description Toe angle is the angle between the longitudinal axis of the vehicle and the line
of intersection of the wheel plane and the vehicle's XY plane.
Adams reports toe angle in radians. It is positive if the wheel front is rotated
in towards the vehicle body.
Units Degrees
RequestNames • toe_angle.left
• toe_angle.right
Inputs Wheel center axis unit vectors - left and right
Method Adams uses the direction cosines in the x- and y-directions of the wheel
center axis relative to the road to calculate toe angle, such that:
Description Total roll rate is the torque, applied as vertical forces at the tire contact patches,
per degree of roll, measured at the tire contact patches.
Units Newton-mm/degreee
Request Names • total_roll_rate.left
• total_roll_rate.right
Inputs • Compliance matrix
• Tire stiffness
• Track width
Method Adams uses opposing unit forces as the applied torque:
T = F x track = track
The resulting vertical distance between wheel centers is the following, where Kt
is the tire stiffnesses:
Z = C 3, 3 – C 3 , 9 – C 9 , 3 + C 9, 9 + 2 K t
The rotation of the line through the tire contact patches is:
= Z track
Total Track
Description Total track is the distance measured along the line passing through the left and
right tire contact points with the left and right road parts (pads) and then
projected onto the right road plane.
• The first line is formed by the intersection of the wheel plane with the
road plane.
• The second line is perpendicular to the first and passes through the
wheel center.
The wheel plane is perpendicular to the wheel spin axis and passes through
the wheel center.
The left and right road planes behave differently, depending on your
coordinates:
Wheel Rate
Description Wheel rate is the vertical stiffness of the suspension relative to the body, measured
at the wheel center.
Units Newtons/mm
Request Names • wheel_rate.left
• wheel_rate.right
Inputs Compliance matrix
Method Adams computes suspension wheel rate as the inverse of the z-axis displacement
at the wheel center due to the vertical forces applied at both wheel centers
simultaneously.
Ackerman
Description Ackerman is the difference between the left and right wheel steer angles. A
positive Ackerman indicates that the right wheel is being steered more to the
right than to the left.
Units Degrees
Request Names • ackerman.left
• ackerman.right
Inputs Steer angle (see Steer Angle)
Method Adams/Car computes Ackerman by subtracting the right steer angle from the
left steer angle:
Ackerman Angle
Description Ackerman angle is the angle whose tangent is the wheel base divided by the turn
radius. Ackerman angle is positive for right turns.
Units Degrees
Request Names • ackerman_angle.left
• ackerman_angle.right
262 Adams/Car
Output of Suspension Analyses
Ackerman Error
Description Ackerman error is the difference between the steer angle and the ideal steer angle
for Ackerman geometry. Because Adams/Car uses the inside wheel to compute
the turn center, the Ackerman error for the inside wheel is zero.
For a left turn, the left wheel is the inside wheel and the right wheel is the outside
wheel. Conversely, for a right turn, the right wheel is the inside wheel and the left
wheel is the outside wheel. Positive Ackerman error indicates the actual steer
angle is greater than the ideal steer angle or the actual is steered more to the right.
Units Degrees
Running Analyses 263
Output of Suspension Analyses
Description Caster moment arm is the distance from the intersection of the kingpin (steer)
axis and the road plane to the tire contact patch measured along the intersection
of the wheel plane and road plane. Caster moment arm is positive when the
intersection of the kingpin axis and road plane is forward of the tire contact
patch.
Units mm
Request Names • caster_moment_arm.left
• caster_moment_arm.right
264 Adams/Car
Output of Suspension Analyses
Inputs • Kingpin axis position, a point on the kingpin axis (Rs) - left and right
• Kingpin (steer) axis unit vector (s) - left and right
• Tire contact patch position (Rp) - left and right
• Wheel center axis unit vector (w) - left and right
• The road normal unit vector (k)
Methods Adams/Car first finds the intersection of the kingpin axis and the road plane.
Note that by convention, the kingpin axis unit vector is directed upward, away
from the road, and the road plane has zero height. The intersection of the
kingpin axis and the road plane (Rkr) is:
l = k x w / | k x w | (left side)
l = k x -w / | k x -w | (right side)
The distance along l from the contact patch to the intersection of the kingpin
axis and the road plane is:
Description Ideal steer angle is the steer angle in radians that gives Ackerman steer geometry
or 100% Ackerman. For Ackerman steer geometry, the wheel-center axes for all
four wheels pass through the turn center. Note that Adams/Car uses the steer
angle of the inside wheel to determine the turn center for Ackerman geometry.
Therefore, the ideal steer angle and the steer angle are equal for the inside wheel.
When making a left turn, the left wheel is the inside wheel. Conversely, when
making a right turn, the right wheel is the inside wheel. A positive steer angle
indicates a steer to the right.
Units Degrees
Request Names • ideal_steer_angle.left
• ideal_steer_angle.right
Inputs • Turn radius (see Steer Angle)
• Tire contact patch position (Rp) - left and right
• Wheelbase
Method ideal_steer_angle.left = tan-1 [Wheel Base/Turn Radius - Rp(left) o y )]
ideal_steer_angle.right = tan-1 [Wheel Base/Turn Radius -Rp(right) o ŷ )]
Note • Right turns give positive angles and turn radii
• Rp(left) o ŷ < 0
• Rp(right) o ŷ > 0
• |Inside wheel's ideal steer angle| > |outside wheel's ideal steer angle|
Description Outside turn diameter is the diameter of the circle defined by a vehicle's outside
front tire when the vehicle turns at low speeds. Adams/Car determines the circle
by the tire's contact patch for a given steer angle. For a left turn, the right front
wheel is the outside wheel. For a right turn, the left front wheel is the outside
wheel.
Units mm
Request Names • outside_turn_diameter.left
• outside_turn_diameter.right
Inputs • Turn radius (see Turn Radius)
• Track width
• Wheelbase
Method outside_turn_radius = 2.0 [(| Turn Radius | +Track/2)2 + (Wheel Base) 2]1/2
Percent Ackerman
Description Percent Ackerman is the ratio of actual Ackerman to ideal Ackerman expressed
as a percentage. Percent Ackerman is limited to the range from -999% to 999%.
Percent Ackerman is positive when the inside wheel's steer angle is larger than the
outside wheel's steer angle.
Units %
Request Names • percent_ackerman.left
• percent_ackerman.right
Inputs • Steer angle (see Steer Angle)
• Ideal steer angle (see Ideal Steer Angle)
• Ackerman (see Ackerman)
Method ackerman = Right steer angle - Left steer angle
Scrub Radius
Description Scrub radius is the distance from the intersection of the kingpin (steer) axis and
the road plane to the tire contact patch measured along the projection of the
wheel-center axis into the road plane. Scrub radius is positive when the
intersection of the kingpin axis and the road plane is inboard of the tire contact
patch.
Units mm
268 Adams/Car
Output of Suspension Analyses
M = (k x w) x k
m = M / | M |
The distance from the contact patch to the intersection of the kingpin axis and
the road plane along m is:
Steer Angle
Description Steer angle is the angle measured from the vehicle heading to the line formed
by the intersection of the wheel plane with the ground plane. Steer angle is
positive when a wheel is rotated to the right as if the vehicle were making a right
turn.
Units Degrees
Request Names • steer_angle.left
• steer_angle.right
Inputs Wheel-center axis unit vectors - left and right
Method Adams/Car uses the direction cosines of the x-direction and the y-direction of
the wheel-center axis constructed from the wheel-center orientation to calculate
steer angle:
Description The steer axis offset is the shortest distance from the steer (kingpin) axis to
the wheel center. The steer axis offset is measured in the plane perpendicular
to the steer axis and passing through the wheel center. The steer axis offset is
always positive.
The steer axis offset-longitudinal is the component of the steer axis offset
along the intersection of the wheel plane with the plane perpendicular to the
steer axis and passing through the wheel center. The steer axis offset-
longitudinal is positive when the wheel center is forward of the steer axis.
The steer axis offset-lateral is the component of the steer axis offset along the
projection of the wheel-center axis into the plane perpendicular to the steer
axis and passing through the wheel center. The steer axis offset - lateral is
positive when the wheel center lies outboard of the steer axis.
Units mm
Request Names • steer_axis_offset.off_left
• steer_axis_offset.off_right
• steer_axis_offset.lon_left
• steer_axis_offset.lon_right
• steer_axis_offset.lat_left
• steer_axis_offset.lat_right
Inputs • Wheel-center position (WCP) left and right
• Wheel-center (spin) axis unit vector (wcv) left and right
• Kingpin (steer) axis position (KPP) left and right
• Kingpin (steer) axis unit vector (kpv) left and right
272 Adams/Car
Output of Suspension Analyses
Method First, define longitudinal and lateral directions in a plane perpendicular to the steer
(kingpin) axis using the kingpin axis vector and the wheel-center (spin) vector.
The displacement vector (R) from a point on the kingpin (steer) axis to the wheel
center is:
R = WCP - KPP
The steer axis offset-longitudinal is:
steer_axis_offset.lon_left = -R o u_lon
steer_axis_offset.lon_right = R o u_lon
The steer axis offset-lateral is:
steer_axis_offset.lat_left = R o u_lat
steer_axis_offset.lat_right = R o u_lat
Finally, the steer axis offset is:
Longitudinal offset:
REQUST/id, FUNCTION=USER(900,45,characteristics_input_array_id)\
Lateral offset:
REQUST/id, FUNCTION=USER(900,46,characteristics_input_array_id)\
Nomenclature • Bold text in uppercase letters, such as R, shows vectors.
• Bold text in lowercase letters, such as u_lon, shows unit vectors.
• X is the vector cross product operator.
• o is the vector dot product operator.
• * is the scalar multiplication operator.
Turn Radius
Description The turn radius is the distance measured in the ground plane from the
vehicle center line to the turn center along the y-axis (see the figure for
Ackerman Angle). Turn radius is positive for right turns and negative for left
turns.
Units mm
Request Names • turn_radius.left
• turn_radius.right
274 Adams/Car
Output of Suspension Analyses
Left turn:
To properly assemble with the test rig, your suspension template must include the following output
communicators (see Communicator Entity Class):
• suspension_mount (communicator entity class: mount) - Points to the parts (typically the hub,
also known as the spindle) in your suspension template to which the test rig wheel tires mount.
• wheel_center_location (communicator entity class: location) - Contains the wheel-center
location that Adams/Car uses to locate the test rig relative to the suspension.
• toe_angle and camber_angle (communicator entity class: parameter real) - Contain the static toe
and camber angles that Adams/Car uses to orient the test-rig wheels.
• suspension_upright (communicator entity class: mount) - Points to the suspension upright in
your suspension template. The suspension test rig creates a perpendicular joint primitive
between the suspension mount (that is, the hub) and the suspension upright to lock wheel
rotation during suspension analyses.
The following make up the suspension test rig:
• Vertical Actuators
• Suspension Test Rig Tire
• Static Loads
• Loadcase Files
Vertical Actuators
The left and right vertical actuators apply forces to drive the test-rig tables, and in turn, the suspension,
up and down. An integral controller computes the actuator force necessary to achieve the desired wheel
Running Analyses 277
Working with the Suspension Test Rig
center or contact patch positions. However, the forces in the actuators are limited by default to -22,000
N in rebound and 40,000 N in jounce.
The vertical actuators are standard joint force actuators (pairs of action-only translational forces). You
can modify the force limits using the Adams/Car Template Builder through the menus Build -> Actuator
-> Joint Force -> Modify.
RIGID_WHEEL
When you select RIGID_WHEEL, you enter the tire stiffness and unloaded radius. Adams/Car sets the
tire property file string to ”RIGID_WHEEL” and passes the stiffness and radius you entered to
Adams/Tire through an ARRAY statement. Adams/Tire calculates the tire vertical force using the
following equation:
force = tire_stiffness*(unloaded_radius - radius) (r o n)
LIVE_TIRE
When you select LIVE_TIRE, you must enter a tire property file. Adams/Tire opens the property file and
reads the unloaded radius and vertical stiffness. These values are automatically converted to the proper
278 Adams/Car
Working with the Suspension Test Rig
units for your suspension assembly. Other parameters in the tire property file are ignored. Adams/Tire
calculates the tire vertical force using the following equation:
force = max(0.0, tire_stiffness*(unloaded_radius - radius) (r o n))
Static Loads
You can specify forces, torques, and displacements as inputs to your suspension analyses. These inputs
are stored in the loadcase spline. The loadcase spline contains a linear interpolation at discrete time
intervals, between the upper and lower values.
The following table shows how forces and torques are expressed in the reference frames :
Forces/Torques in Reference Frames
Reference frame:
TYDEX H ISO-W contact TYDEX-C axis system wheel
Force/torque: patch center
Lateral force (cornering) x
Longitudinal force (braking) x
Longitudinal force (traction) x
Overturning moment x
Rolling resistance torque x
Aligning torque x
Loadcase Files
Adams/Car supports old suspension loadcase files (version 5) as follows:
• Vertical Mode = Length - Corresponds to wheel_center_height
• Vertical Mode = Force - Corresponds to an open-loop vertical force
Running Analyses 279
Tire Test Rig
Example testrig files, defining the testrig simulations, can be found in the loadcases folder of the
Adams/Car database. The user may define own testrig simulations or modify one of these examples.
Running Analyses 281
Tire Test Rig
Each analysis represents one simulation. By clicking on the analysis name, the simulation details can be
defined:
Once all analysis details have been defined, clicking on 'Run It' starts the process of generating the model
files, run these with the solver and plotting a number of default characteristics in the postprocessor view.
Note: There are three points of attention when evaluating tire characteristics:
• For analyzing steady state tire characteristics, please remember that the usemode
in the tire property file should be set to steady state (not transient)
• Some tire models have a 'start-up' smoothing option. This causes the tire response
to start from zero up to the full tire force response during the first 0.1 seconds. For
analyzing tire characteristics it is often useful to disable this option.
• The plots created for the Adams Postprocessor will be in MMKS units (mm,
Newton, seconds, Kilogram).
282 Adams/Car
Running Full-Vehicle Analyses
You can specify inputs to the analysis by typing them into an analysis dialog box or by selecting a driver
control file that contains the desired inputs.
After specifying the prototype assembly and its analysis, Adams/Car, like your company's testing
department, applies the inputs that you specified and records the results. To understand how your
prototype behaved during the analysis, you can plot the results. After viewing the results, you might
modify the prototype and analyze it again to see if your modifications improve its behavior.
The following figure shows an overview of the full-vehicle analysis process.
• Checking a Vehicle
• Setting up the Analysis
Assembling a Vehicle
Adams/Car creates a full-vehicle assembly from a set of subsystems that you select. An assembly lets
you quickly put together full vehicles from previously tested and verified subsystems and switch between
subsystems depending on the analysis that you want to perform.
The associated component property files, such as springs and bushings, must also exist in your database.
If a suspension subsystem uses mount parts, such as the spring top mounting to a subframe, you must
read the subframe subsystem into the assembly. If you do not read in the required mount subsystems,
Adams/Car connects any mount parts to the global ground part instead of the absent mount subsystem.
Therefore, the mount point cannot move with the full vehicle, which causes the Adams/Car analysis to
fail.
Checking a Vehicle
Before submitting your model for analysis, visually check its assembly. The Adams/Car default view is
front isometric view. From the front view, you should be able to see obvious assembly problems. You
should also check your vehicle from the side because it provides a more useful view for positioning the
subsystems.
As you view your assembly from different angles, check for obvious problems, such as:
• Is the front suspension in the correct place?
• Is the body graphic positioned correctly?
• Are the wheels somewhere near the same height?
All the analyses currently available are based on the Driving Machine. Therefore, to perform open-loop,
closed-loop, and quasi-static analyses, you must select the .__MDI_SDI_TESTRIG in your assemblies.
Always check whether you selected the correct test rig for the analysis you want to perform. If you
selected an incorrect test rig, create another assembly using the correct test rig.
• Performs a dynamic analysis by running each of the mini-maneuvers listed in the DcfMini
classes in the event file
You can view and modify the event file (.xml) using the Event Builder. The Event Builder allows you to
modify existing parameters for the entire maneuver, such as step size and hmax, to modify specific mini-
maneuver information, and add mini-maneuvers.
The following line calls the control subroutine EventInit:
control/ routine=abgVDM::EventInit, function=user(3,1,10,0,2,5,7,17)
The call to this subroutine passes 8 parameters, as described next. Note that each number in the array
(3,1,10,0,2,5,5,17) is listed after the description of that parameter.
par(1) 3: ID of STRING statement containing .XML event filename = 3
par(2) ID of ORIGO marker = 1
par(3) ID of ARRAY statement containing initial condition SDI parameters = 10
par(4) ID of ARRAY statement containing ids of parts for which initial
velocity are not set = 0
par(5) ID of ARRAY holding Vehicle Parameters. = 2
par(6) ID of main Driving Machine ARRAY. = 5
par(7) ID ISO EAS Marker = 7
par(8) ID of ARRAY containing the ids of extensible end condition sensor
elements = 17
If you look at the corresponding Adams/Solver dataset (.adm), you will see that STRING/3 contains the
name of the event file:
! adams_view_name='testrig_dcf_filename'
STRING/3
, STRING =example_crc.xml
All standard Adams/Car events generate an event file in XML format, similar to the one referenced in
the example above, but .dcf files in TeimOrbit format are still supported, both in the Event Builder and
at the solver level. This means that you can replace the above string and reference a .dcf file in TeimOrbit
format. The file will be automatically converted to XML format.
By modifying the .acf file, you can now execute all mini-maneuvers defined in the event file, or just run
the initialization and then execute one mini-maneuver at a time. Full-vehicle analysis .acf files by default
call the Driving Machine initialization routine, then call the RunAll method. You can, however, modify
the .acf file and use the following commands for more control over your analysis:
• control/ routine=abgVDM::EventRunAll, function=user(0) - Runs all the active mini-maneuvers
in the list of events
• control/ routine=abgVDM::EventRunNext, function=user(0) - Runs the following mini-
maneuver in the list of the events
• control/ routine=abgVDM::EventRunFor, function=user(double time) - Runs the current mini-
maneuver for duration of time [s]
• control/ routine=abgVDM::EventRunUntil, function=user(double time) - Runs the current mini-
maneuver until the desired absolute time [s]
286 Adams/Car
Running Full-Vehicle Analyses
Using this flexibility within the event control subroutine enables you to use the power of the acf language
to make changes and re-submit your solution to Adams/Solver. The language parameters for the .acf file
are documented in the Adams/Solver online help.
Reading Results
After you run the analysis, you can use Adams/PostProcessor to animate and view the results.
Note: • To control the execution of the various mini-maneuvers defined in the XML event
file you need to issue the EventInit control subroutine command first. This
instructs Adams/Car to build a list of quasi-static and transient events as they are
defined in the event file.
• To execute each mini-maneuver in the event file, you should issue a control/
routine=abgVDM::EventRunNext as described above.
3D Road Analysis
A 3D road analysis simulates your vehicle assembly traversing a three-dimensional road representation
and the obstacles or characteristics contained in that 3D road. The road file (.rdf/.xml) is used by both the
tire subsystems to compute contact patch forces/moments, and by the lateral controller. The Driving
Machine uses path information contained in the 3D road file to drive the vehicle along the specified
course centerline. Example 3D road files are distributed in the shared Adams/Car database (3d_road_*).
For more information about the 3D road, see Using the Road Builder.
Running Analyses 287
Running Full-Vehicle Analyses
Cornering Analyses
You use cornering analyses to evaluate your vehicle's handling and dynamic responses during various
cornering-type maneuvers. Cornering analyses use both open- and closed-loop controllers of the steering,
throttle, brake, gear, and clutch signals to investigate various vehicle behaviors. You can investigate both
steady-state and limit cornering to characterize responses such as understeer/oversteer gradients, weight
transfer, and so on.
Note: Adams/Car creates an event file (.xml) that defines the analysis. The Driving Machine uses
the event file to control the vehicle. Adams/Car stores the event file in the working
directory so you can refer to it as needed and examine it using the Event Builder.
Braking-In-Turn Analysis
The braking-in-turn analysis is one of the most critical analyses encountered in everyday driving. This
analysis examines path and directional deviations caused by sudden braking during cornering. Typical
results collected from the braking-in-turn analysis include lateral acceleration, variations in turn radius,
and yaw angle as a function of longitudinal deceleration.
In a braking-in-turn analysis, you can set the Driving Machine to drive your full vehicle, as follows:
• Drive down a straight road, turn onto a skidpad, and then accelerate to achieve a desired lateral
acceleration
• Run a quasi-static skidpad setup, which places the vehicle on a skidpad with predefined lateral
acceleration
288 Adams/Car
Running Full-Vehicle Analyses
The Driving Machine holds the longitudinal speed and radius constant for a time to let any transients
settle. It then applies a brake signal to the vehicle to control the vehicle deceleration at a constant rate
(units in g).
Depending on the controller type, the Driving Machine does either of the following:
• Open-loop - Locks the steering wheel
• Closed-loop - Maintains the skidpad radius
The Driving Machine maintains the braking for the given duration of the maneuver or until the vehicle
speed drops below 2.5 meters/second.
You can use the plot configuration file, mdi_fva_bit.plt, in the shared Adams/Car database to generate
the plots that are typically of interest for this type of analysis.
Course Analyses
Course analyses are based on the Driving Machine and are of a course-following type, such as ISO lane
change.
In an ISO lane change analysis, the Driving Machine drives your full vehicle through a lane change
course as specified in ISO-3888: Double Lane Change. You specify the gear position and speed at which
to perform the lane change. The analysis stops after the vehicle travels 250 meters; therefore, the time to
complete the lane change depends on the speed you specify.
The course analyses include:
• ISO Lane Change
• 3D Road
Note: Adams/Car creates an event file (.xml) that defines the analysis and the different
parameters. It uses the .xml file for the analysis and then leaves it in the working directory
so you can refer to it as needed. The file that defines the path is stored in the
shared_car_database, in the driver_data table, and is called iso_lane_change.dcd.
3D Road
A 3D road analysis simulates your vehicle assembly using a three-dimensional road representation. The
road file (.rdf) is used by both the tire subsystems to compute contact patch forces/moments, and by the
lateral controller. The standard driver interface (SDI) uses path information contained in the 3D road file
to drive the vehicle along the specified course. The shared car database includes several example 3D road
files.
Drift Analysis
In a drift analysis, the vehicle reaches a steady-state condition in the first ten seconds. A steady-state
condition is one in which the vehicle has the desired steer angle and initial velocity values. In seconds 1
through 5 of the analysis, Adams/Car ramps the steering angle/length from the initial value to the desired
value using a STEP function. In seconds 5 through the desired end time, it linearly ramps the throttle at
the desired ramp rate.
Note: Adams/Car creates an event file (.xml) that defines the analysis and the different parameters.
It uses the .xml file for the analysis and then leaves it in the working directory so you can
refer to it as needed.
292 Adams/Car
Running Full-Vehicle Analyses
Fish-Hook Analysis
You use a fish-hook analysis is to evaluate dynamic roll-over vehicle stability.
A fish-hook analysis consists of two mini-maneuvers (see Creating Mini-Maneuvers):
• A quasi-static phase sets up the vehicle at the desired initial conditions.
• The second mini-maneuver runs the actual fish-hook analysis in which Adams/Car computes the
steering signal as a combination of step functions, and disengages the clutch. The maneuver
provides a basis for evaluating a vehicle's transitional response and dynamic roll-over stability.
The most important factors for this evaluation are: steering-wheel angle, lateral acceleration,
yaw rate, and roll angle.
Adams/Car conducts the analysis by driving at a constant speed, putting the vehicle in neutral,
and turning one direction in a preselected steering-wheel angle and then turning the opposite
direction in another preselected steering-wheel angle.
Impulse-Steer Analysis
In an impulse-steer analysis, the steering demand is a force/torque, single-cycle, sine input. The steering
input ramps up from an initial steer value to the maximum steer value. You can run with or without cruise
control. The purpose of the test is to characterize the transient response behavior in the frequency domain.
Typical metrics are: lateral acceleration, and vehicle roll and yaw rate, both in time and frequency
domain.
Ramp-Steer Analysis
In a ramp-steer analysis, you obtain time-domain transient response metrics. The most important
quantities to be measured are: steering-wheel angle, yaw angle speed, vehicle speed and lateral
acceleration. During a ramp-steer analysis, Adams/Car ramps up the steering input from an initial value
at a specified rate.
During a step steer analysis, Adams/Car increases the steering input from an initial value to a final value
over a specified time.
294 Adams/Car
Running Full-Vehicle Analyses
During a swept-sine steer analysis, Adams/Car steers the vehicle from an initial value to the specified
maximum steer value, with a given frequency. It ramps up the frequency of the steering input from the
initial value to the specified maximum frequency with the given frequency rate.
Quasi-Static Analyses
Quasi-static analyses find dynamic equilibrium solutions for your full vehicle at increasing, successive
values of lateral acceleration. Quasi-static analyses, in contrast to open-loop and closed-loop analyses,
do not include transient effects and solve very quickly. For example, in a quasi-static analysis, a change
in lateral acceleration from 0.1g to 0.5g does not show the lateral acceleration or yaw rate overshoot that
a similar open-loop and closed-loop analysis might show.
The following topics contain information on setting up quasi-static analyses, as well as a description of
the types of quasi-static analyses:
• Quasi-Static Constant-Radius Cornering
• Quasi-Static Constant-Velocity Cornering
• Quasi-Static Force Moment Method
Running Analyses 295
Running Full-Vehicle Analyses
You can, for example, use the plot configuration file, mdi_fva_ssc.plt, in the shared Adams/Car database
to generate the plots that are typically of interest for this analysis. Otherwise, in Adams/PostProcessor,
you can create your own plots by selecting the desired requests and components.
• Can be useful when exploring the limit handling characteristics of the vehicle due to a
combination of decreasing turn radius and longitudinal acceleration.
• Differs from the constant-radius cornering analysis in that the turn radius is not fixed.
A CONSUB controls this analysis. For more information on CONSUB, see Welcome to Adams/Solver
Subroutines.
You can use the plot configuration file, mdi_fva_ssc.plt, in the shared car database to generate the plots
that are typically of interest for this analysis.
provides a quicker solution than the dynamic analysis but doesn't have transient effects, because of such
events as gear shifting.
Note: Adams/Car creates an event file (.xml) that defines the analysis and the different parameters.
It uses the .xml file for the analysis and then leaves it in the working directory so you can
refer to it as needed.
Acceleration Analysis
During an acceleration analysis, the Driving Machine ramps the throttle demand from zero at your input
rate (open loop) or you can specify a desired longitudinal acceleration (closed loop). You can specify
either free, locked, or straight-line steering. An acceleration analysis helps you study the anti-lift and anti-
squat properties of a vehicle.
Braking Analysis
During a braking analysis, the Driving Machine ramps the brake input from zero at your input rate or lets
you specify a longitudinal deceleration (closed loop). You can also specify either free or locked steering.
The braking test analysis helps you study the brake-pull anti-lift and anti-dive properties of a vehicle.
File-Driven Analysis
The file-driven analysis lets you run an analysis described in an existing event file (.xml).
Having direct access to event files lets you perform non-standard analyses on your full-vehicle assembly
because all you have to do is generate a new event file describing the analysis.
Learn about the Driving Machine.
Creating Mini-Maneuvers
A mini-maneuver is a set of smaller, simpler analysis steps, such as a straight-line mini-maneuver. Mini-
maneuvers are contained in event files (.xml).
To create a mini-maneuver, you must specify controls signals (steering, throttle, braking, gear, and
clutch) and its conditions. For each control signal, you specify the following:
• Actuator type (steering only)
• Control method
• Control type
• Control mode
Learn more:
• Specifying an Actuator Type
• Specifying a Control Method
• Specifying a Control Type
• Specifying a Control Mode
• Specifying Conditions
force Driving Machine steers the vehicle by applying a force to the steering rack.
rotation Driving Machine steers the vehicle using a MOTION statement on the steering-wheel
revolute joint.
torque Driving Machine steers the vehicle by applying torque to the steering wheel.
trans Driving Machine steers the vehicle using a motion on the steering rack translational
joint.
302 Adams/Car
Running Full-Vehicle Analyses
Note: • If you set Speed Control to lat_accel, then you must set Steer Control to skidpad.
• Machine control for throttle requires the use of machine control for braking.
Likewise, machine control for clutch requires machine control for gear.
Running Analyses 303
Running Full-Vehicle Analyses
Arguments
304 Adams/Car
Running Full-Vehicle Analyses
• ax_s_map
• ax_t_map
• file
• File Name - Enter the name of a file that contains the closed-loop data.
• lat_accel - Be sure to set Steer Control to skidpad.
• Lat. Acc. - Enter a value for the lateral acceleration.
• lon_accel
• Start Time
• Long. Acc - Enter a value for the longitudinal acceleration.
• maintain - The Driving Machine maintains the ending speed of the vehicle from the
previous mini-maneuver. If this mini-maneuver is the first in the experiment, then the
Driving Machine maintains the initial speed set in the EXPERIMENT block.
• Velocity
• speed_s_map
• speed_t_map
• vel_polynomial
• Velocity - Specifies the vehicle speed as polynomial of time. The Driving Machine
computes the speed using the following relation:
IF (Time < START_TIME):
SPEED = VELOCITY
IF ( TIME START_TIME ):
SPEED = VELOCITY +
ACCELERATION*(TIME - START_TIME)+
1/2*JERK*(TIME-START_TIME)**2
where START_TIME is the starting time relative to the beginning of the mini-maneuver.
Specify the following arguments:
VELOCITY = value <length/time>
ACCELERATION = value <length/time2>
JERK = value <length/time3>
START_TIME = value <time>
Note that JERK is the time rate of change of acceleration. JERK = d(acceleration)/dt.
• Acceleration
• Jerk
• Start Time
You can use a Table/Plot editor to define the various maps of speed and acceleration expressed as a
function of time or distance traveled.
306 Adams/Car
Running Full-Vehicle Analyses
constant The Driving Machine inputs a constant signal to your vehicle model.
impulse The Driving Machine outputs an impulse to your vehicle constructed from a pair of cubic
step functions. To define the impulse, you must specify the following arguments:
• Start Time - The starting time of the impulse relative to the beginning of the
mini-maneuver. For example, if the mini maneuver starts at 1.2 seconds
simulation time and Start Time = 0.3 seconds, then the impulse begins at 1.5
seconds simulation time.
• Duration - The length in time of the impulse.
• Maximum Value - The height of the impulse. The impulse reaches its
maximum value relative to the start time at half the duration.
Adams/Car computes the IMPULSE function as follows:
ramp The Driving Machine supplies a ramp input. To define the ramp, you must supply the
following arguments:
• Start Time
• Ramp Value
Adams/Car computes the RAMP function as follows:
Note: When using the RAMP function, the output value grows for the duration of the
mini-maneuver.
Running Analyses 309
Running Full-Vehicle Analyses
sine The Driving Machine outputs a single-cycle sinusoid to your vehicle smoothed at the
beginning and end by cubic-step functions. The duration of each cubic-step function is
1/100*CYCLE_LENGTH.
• Start Time - The starting time of the sinusoid relative to the beginning of the
mini-maneuver. For example, if the mini-maneuver starts at 2.1 seconds
simulation time and Start Time = 0.3 seconds, then the sinusoid begins at 2.4
seconds simulation time.
• Amplitude - The amplitude of the sinusoid.
• Cycle Length - The length of time to complete one cycle of the sinusoid.
Adams/Car computes the SINE function as follows:
step The Driving Machine inputs a STEP5 function to your vehicle model based on the
following input parameters, which you must supply:
• Start Time
• Duration
• Final Value
Adams/Car computes the STEP function as follows:
swept_sine Sweeps the frequency of the output from the initial frequency to a maximum frequency
at a given rate. Once the maximum frequency is achieved, the frequency remains
constant. The amplitude of the swept sine function is fixed. To define swept sine, you
must supply the following parameters:
• Start Time - The starting time of the function, measured from the beginning of
the mini-maneuver.
• Amplitude - The amplitude of the swept-sine function.
• Initial Frequency - The starting frequency of the swept-sine function in
<cycles/time>.
• Frequency Rate - The rate the frequency is swept from the initial frequency to
the maximum frequency <cycles/time/time>.
• Max Frequency - The maximum frequency of the swept sine function in
<cycles/time>.
The following plot illustrates the SWEPT_SINE open-loop function:
For these control types, Control Mode changes the meaning of the FINAL_VALUE input in the .xml.
Control Mode has no effect on the rest of the Control Types, nor on machine, human, and SmartDriver
control methods.
The relative and absolute methods allow you to define the steering-wheel angle for the end of the next
mini maneuver.
Arguments
Absolute Indicates that the final value is absolute. For example, for a step input to the steering
where the initial steering is 10 degrees and the final value is 50 degrees, the steer at the
end of the step equals 50 degrees.
Relative Indicates that the final value is relative to the initial value. For example, for a step input
to the steering where the initial steering is 10 degrees and the final value is 50 degrees,
the steer at the end of the step equals 60 degrees.
Here is another example. If at the beginning of the mini-maneuver the steering is 20o, the steering Control
Method is set to open, the Control Type is set to step, and the FINAL_VALUE = 90.0, then
FINAL_VALUE is relative to INITIAL_VALUE, and the steering angle at the end of the step input is
110o. If, however, Control Mode is set to Absolute, then the steering angle at the end of the step input
equals the FINAL_VALUE of 90o
Specifying Conditions
Conditions specify when one mini-maneuver ends so the next one can begin. For example, you might end
a mini-maneuver when the vehicle speed reaches 100 kph. You can also group end conditions together.
For example, you might end a mini-maneuver when the vehicle speed reaches 100 kph and the lateral
acceleration exceeds 5 m/s2.
The event file supports conditions based on time, distance, velocity, acceleration, and many other vehicle
control variables. Conditions reference a measure or solver variable by name to measure a given quantity
in the model.
The Conditions tab of the Event Builder shows one possible condition at a time in Property Editor mode.
To add conditions or view other defined conditions, click the button to the left of the condition name to
enter Table Editor mode. In Table Editor mode, you can see all defined conditions, add new conditions,
modify conditions, or delete conditions. The Table Editor mode also lets you see the full set of arguments
available for each condition.
Running Analyses 313
Running Full-Vehicle Analyses
Arguments
Name Filter Filters the listed conditions based on the substring you specify.
Name Shows the condition name (not editable).
314 Adams/Car
Running Full-Vehicle Analyses
• Closed-loop data - Uses data from the dcd file to fix the vehicle path and speed for a mini-
maneuver. Examples of closed-loop data are the vehicle position {x, y} versus time (t) or path
{x, y} versus distance traveled (s). Closed-loop data can also include vehicle speed and lateral
acceleration which the Machine Control integrates to determine the desired vehicle path and
speed.
You reference .dcd files in your event files by selecting Machine for Steering/Throttle and Braking and
browsing your databases for dcd files in the File Name text box. That is, using the file option for Machine
Control means that you want to obtain control data from a .dcd file.
Adams/SmartDriver Analysis
The Adams/SmartDriver analysis lets you run an analysis described in an existing event file (.xml). You
can drive the vehicle at the acceleration limits or some percentage of those limits.
Note: We changed the Driving Machine architecture to support XML files as the default, while
maintaining support for legacy dcf files. If you specify a dcf file, Driving Machine
automatically converts it to an XML file in the working directory so you can use the Event
Builder to review and modify the event.
Driving Machine reads recorded open-loop signals and vehicle path and velocity data from text files
named driver control data files (.dcd).
To help you calculate the control signals, Adams/Solver passes vehicle information such as position,
velocity, and acceleration, to the Driving Machine. The Driving Machine provides a means for defining
and passing sets of command signals, feedback signals, and parameters for each of the five control signals
(steering, throttle, brake, gear, and clutch).
Running Analyses 319
Using the Driving Machine
The following figure shows how the Driving Machine works in a virtual prototyping model.
Standard-speed Test
When speed increases, the difference in path point spacing has no effect.
Running Analyses 323
Using the Driving Machine
Template Updates
The 2005 Driving Machine employs vehicle controllers developed by MSC.Software, commonly known
as Machine Control, which replaces DriverLite functionality, and Adams/SmartDriver. To better control
324 Adams/Car
Using the Driving Machine
speed and path, the 2005 Driving Machine needs additional information about the vehicle. In particular,
the speed controller uses a feed-forward function to ensure quick and accurate response. However, this
requires information about the available engine brake torque, engine drive torque, brake torque, and
aerodynamic drag. You supply this information by creating new output communicators in your templates.
In addition, you must also enter vehicle parameter data, such as overall steering ratio that is stored in the
assembly file.
For more information, see Working with Templates->Template Updates.
Speed
Represents the initial vehicle speed for the maneuver.
Gear Number
Represents the initial gear position for the maneuver.
Static Setup
You can specify static-setup analyses that remove start-up transients that can eliminate mini-maneuvers
that you might normally use to set up a vehicle for cornering maneuvers. For example, in the past, to
perform a brake-in-turn analysis you might have run a transient mini-maneuver to have the vehicle turn-
in and reach static-setup on given turn, at a given speed/lateral acceleration, before starting to brake the
vehicle. This approach is equivalent to a test driver on a proving ground, driving at a steady speed and in
a steady-state condition (vehicle has no transients) before starting a dynamic maneuver (braking,
acceleration, steering, and so on). Now you can perform a much faster (less CPU time) static-setup
analysis.
You can set static setup to any of the arguments described next.
326 Adams/Car
Using the Driving Machine
Arguments
none Adams/Car does not perform a static equilibrium analysis. Rather, it locks the wheel
rotations and then performs an acceleration initial-conditions analysis, which
initializes Adams/Tire. Adams/Car then deactivates the wheel lock joint primitives
before executing the first mini-maneuver.
normal Locks the wheel rotations using joint primitives, but leaves the body free to move in
the fore-aft, lateral, and yaw directions. Soft springs (1 N/m and 10 N m/radian),
introduced by Adams/Tire just for static equilibrium, acting in all directions
between each wheel center and ground limit, but do not prevent, body yaw, fore-aft,
and lateral displacements. Then, before executing the first mini-maneuver,
Adams/Car deactivates the joint primitives to unlock the wheel rotations, and
Adams/Tire removes the soft springs.
The transitional and torsional stiffnesses supplied by the tire act in all directions
(x,y,z). Without these stiffnesses, the vehicle would have a neutral equilibrium
position in the x-y plane of the road.
For example selecting settle and specifying an initial velocity of 27777.78 mm/s is
equivalent to driving a stake vertically through the vehicle body and constraining the
body to move vertically about the stake. It allows the vehicle to roll (cornering) and
pitch (braking), but does not allow rotation about the axis of the stake (Yaw). When
the vehicle is released from this condition, it should be relatively well balanced to
remove initial transient effects. An imbalance in the tire forces could, however,
cause a slight steering effect. If you want to remove this effect, we recommend that
you use straight.
Running Analyses 327
Using the Driving Machine
skidpad Locks the body's fore-aft and lateral position using a joint primitive. Adams/Car
adjusts the steering and throttle so the vehicle's yaw rate, lateral acceleration, and
speed match those prescribed by the initial radius, initial turn direction, and the
initial lateral acceleration or initial speed. You must specify the initial radius and
turn direction. Also, you must supply either the initial lateral acceleration or the
initial speed.
For example, selecting skidpad and specifying an initial radius, turn direction, and
initial speed effectively performs a settle static setup followed by a straight static
setup. Then, Adams/Car adjusts the steering and throttle so that the vehicle's yaw
rate, lateral acceleration, and speed match those prescribed in the event file. By
carefully observing the .msg file Adams/Solver produces, you can see the model
manipulation occur.
straight Locks the body's fore-aft and lateral position using a joint primitive. Adams/Car
adjusts the steering (so that the vehicle's yaw rate and lateral acceleration are zero)
and the throttle and/or brake (to balance any aerodynamic drag and scrub that the
tires produce and to match the specified initial longitudinal acceleration). Then,
before executing the first mini-maneuver, Adams/Car deactivates the joint
primitives.
The maneuver has two separate static analyses: the first uses the settle method, the
second uses a force balance on the vehicle body to ensure that the net lateral force
is negative (the vehicle is traveling in a straight line) and that longitudinal forces are
zero. The values for steering-wheel angle, throttle position, and so on, are used as
initial conditions for the subsequent dynamic analysis.
Gear-Shifting Parameters
Define the gear-shifting properties and the shape of the upshift and downshift curves for throttle and
clutch signals.
Arguments
Throttle Fall Time Delta time of the step function for the descending curve of the throttle
signal (> 0.0)
Clutch Fall Time Delta time of the step function for the descending curve of the clutch signal
(> 0.0)
Throttle Raise Time Delta time of the step function for the ascending curve of the throttle signal
(> 0.0)
Clutch Raise Time Delta time of the step function for the ascending curve of the clutch signal
(> 0.0)
328 Adams/Car
Using the Driving Machine
Mini-Maneuvers
The Driving Machine runs each mini-maneuver in the order listed, until the list is ended or a mini-
maneuver is terminated.
For each mini maneuver, you must specify a name for the mini-maneuver, the control signals (steering,
throttle, braking, gear, and clutch), as well as the condition for ending the mini maneuver. Learn more
about Creating Mini-Maneuvers.
The driver control data file must also contain at least one of two data blocks:
• OPEN_LOOP block - Specifies the steering, throttle, brake, gear, and clutch inputs to the
vehicle.
• CLOSED_LOOP block - Specifies the path or the speed of the vehicle, or both.
Note: Driver control data files can contain both open-loop and closed-loop blocks.
(COMMENTS)
{comment_string}
'Example .dcd file containing steering path for iso lane change'
[UNITS]
LENGTH = 'meters'
FORCE = 'newton'
MASS = 'kg'
TIME = 'sec'
ANGLE = 'radians'[CLOSED_LOOP]
STEERING_CONTROL = 'path'
SPEED_CONTROL = 'none'
Running Analyses 329
Using the Driving Machine
(DATA)
{ X Y }
0.0 0.000
-45.0 0.000
-52.5 0.000
60.0 0.000
90.0 3.586
-102.0 3.586
-115.0 3.586
-140.0 0.172
-147.0 0.172
-155.0 0.172
-162.0 0.172
-170.0 0.172
-200.0 0.172
-300.0 0.172
[OPEN_LOOP]
ORDINAL = 'time'
(DATA)
{ time steering throttle brake gear clutch }
0.0000E-01 0.1465E-02 0.3016E-02 0.0000E+00 0.3000E+01 0.0000E+00
0.1000E-01 0.1465E-02 0.3016E-02 0.0000E+00 0.3000E+01 0.0000E+00
0.2000E-01 0.1541E-02 0.3193E-02 0.0000E+00 0.3000E+01 0.0000E+00
0.3000E-01 0.1633E-02 0.3748E-02 0.0000E+00 0.3000E+01 0.0000E+00
0.4000E-01 0.1730E-02 0.5697E-02 0.0000E+00 0.3000E+01 0.0000E+00
0.5000E-01 0.1865E-02 0.1197E-01 0.0000E+00 0.3000E+01 0.0000E+00
0.6000E-01 0.1959E-02 0.2062E-01 0.0000E+00 0.3000E+01 0.0000E+00
0.7000E-01 0.2108E-02 0.4782E-01 0.0000E+00 0.3000E+01 0.0000E+00
0.8000E-01 0.2190E-02 0.8150E-01 0.0000E+00 0.3000E+01 0.0000E+00
0.9000E-01 0.2180E-02 0.1329E+00 0.0000E+00 0.3000E+01 0.0000E+00
0.1000E+00 0.2011E-02 0.2006E+00 0.0000E+00 0.3000E+01 0.0000E+00
The following table summarizes the closed-loop data that a .dcd file can contain:
• The columns represent speed-control options from the driver parameters array.
• The rows represent the steering control options from the driver parameters array.
• The intersections give the data contained in the .dcd file and, therefore, the data input to the
funnel to produce {x, y, lon_vel} as needed by Driving Machine.
• p1 refers to the first parameter in the steering and throttle (speed) driver parameters arrays
(initial conditions arrays) in the dataset Adams/Car outputs.
SPEED_CONTROL path
STEERING_CONTROL none lon_vel (p1=0) lon_acc (p1=1) lat_acc (p1=2) (p1=3)
none NOT {(distance or time), {(distance or time), NOT VALID NOT
VALID lon_vel} lon_acc} VALID
curvature (p1 = 0) {distance, {(distance or time), {(distance or time), {(distance or time), NOT
curvature} curvature, lon_vel} curvature, lon_acc} curvature, lat_acc} VALID
path (p1 = 1) {x, y} {x, y, lon_vel} {x, y, lon_acc} {x, y, lat_acc} {x, y,
time}
lat_acc (p1 = 2) NOT {distance or time, {distance or time, NOT VALID NOT
VALID lat_acc, lon_vel} lat_acc, lon_acc} VALID
At the trajectory planning stage, your targets for the vehicle and driver behavior and some basic
parameters describing the characteristics of the simulated vehicle are taken into account, and a realistic
trajectory that most closely satisfies your targets is identified (for example, path, speed, and acceleration).
Machine Control uses simple mathematical models of vehicle dynamics, such as a bicycle model, a
particle model, and a kinematic drivetrain model, to estimate the necessary control actions, such as the
steering angle and throttle position. Machine Control applies these estimated controls as inputs to the
simulated vehicle in a feed-forward manner, such that approximately correct control actions are applied
without delay.
Differences between the behavior of the simulated vehicle and the expected behavior (that is, the
behavior of the idealized models employed by the controller) are corrected continuously using feedback
controllers, which adjust the control actions to minimize the error between the reference trajectory and
the actual vehicle behavior.
Learn more about Machine Control:
• Feed-Forward Control
• Trajectory Planning
• Feedback Control
• Computation of Controls
Feed-Forward Control
The projection of the vehicle path onto the ground plane is related to the velocities and global heading
as:
x· = V X cos – V Y sin
y· = V X sin – V Y cos
where:
The feed-forward component of the lateral control action is computed by assuming that your simulated
vehicle responds as a bicycle model. The simplicity of the bicycle model allows the analytical
identification of the relationship between the geometry of the path and the necessary control action
(steering angle), and vice-versa.
In a bicycle model, the lateral forces from both tires on an axle are assumed to act in the same direction,
and the left and right steer angles are assumed to be the same. In other words, Ackerman steering
geometry is not considered. With these assumptions, the tires may be lumped together into a single tire
representation, and the model is guided by a single steer angle.
Running Analyses 335
Using the Driving Machine
This simplified model is used to identify the necessary steer angle required for the vehicle to follow the
connecting contour.
The form of the bicycle model employed by Machine Control assumes pure rolling of the front and rear
tires with no kinematic or compliance-steer effects, and therefore, no lateral velocity at the rear axle. Note
that this does not imply zero sideslip at the center of mass.
336 Adams/Car
Using the Driving Machine
If the origin of the vehicle-fixed local axis system shown above is selected to be the center of the rear
axle (not the center of mass), then the lateral velocity VY is now always assumed to be zero, and the
assumed path of the vehicle simplifies to:
where:
Rate of change of the direction of the path at the rear axle (note that this is
not equal to the yaw rate of the vehicle).
In this case, the center of the turn always lies on a line through the rear axle. The steer angle required to
yield a certain path curvature is then always equal to the Ackerman angle, and is independent of the
vehicle speed VX:
where:
and, therefore, this single steer angle input to the bicycle model controls the radius of turn and the
curvature of the path. A simple inversion of this equation enables an estimate of the necessary steer angle
to be calculated and applied to the simulated vehicle in a feed-forward sense.
V ref
T inertial = m e ------------- R eq = m e a ref R eq
t
1 2
T aero – drag = --- A C D AVref R eq
2
where:
Gear Shifting
Gear shifts are triggered on the basis of engine speed thresholds, and the gear is incremented according
to the following strategy:
338 Adams/Car
Using the Driving Machine
where:
Trajectory Planning
Connecting Contour
For the lateral control of the vehicle, a simple model of the vehicle (a bicycle model) is used to compute
the control action that should cause the vehicle to follow the intended path. The simulated vehicle,
however, may not exactly follow the target path because of differences between the simplified model and
the simulated vehicle, or external factors (road roughness and aerodynamic disturbances).
Therefore, the potential for offset between the instantaneous vehicle location and heading, and the
location and heading of the path must be considered. In considering the location and heading of the path,
Machine Control builds a connecting contour between the current vehicle position (wherever it may be)
and some point on the target path, along which the vehicle will be steered to later bring it back to the
target path:
The function that describes the connecting contour is parameterized such that one end of the connecting
contour matches the position and direction of the vehicle (at the vehicle rear axle) and the other end of
the connecting contour matches the path (at the preview distance, where the contour connects with the
target path), as shown in the above figure.
The connecting contour then becomes the reference trajectory (path) for the lateral control of the vehicle,
and the vehicle is steered by both feed-forward and feedback controllers, such that it should follow this
connecting contour. The connecting contour is updated each time the Machine Control controller is
called.
Feedback Control
where is a flag indicating whether the lateral displacement controller is activated, that is whether
the lateral displacement error Lo is small:
340 Adams/Car
Using the Driving Machine
Note that in the above, positive Lo indicates a vehicle to the left of the target path, requiring a positive
steering correction.
where:
Anti-windup
To improve the stability of the control in conditions of actuator (usually engine torque) saturation, the
input to the integral term of the controller is set to zero. This prevents wind-up of the integral term when
the vehicle is unable to provide any more torque, such that the feedback component of the torque demand
becomes:
Computation of Controls
such that the upper and lower limits Tm and TM on the net wheel torque, Tw (we) can be identified from
the upper and lower limits on Te (we):
where:
Net wheel torque limits as a function of engine speed, and maximum brake torque
The above figure shows the user-supplied engine model, scaled according to the gearing of the vehicle,
to yield:
• The maximum available net wheel torque, TM (normally positive for all we)
• The minimum available net wheel torque Tm (usually negative, especially at high engine speed
we, since it includes frictional and pumping losses due to throttling).
or
If a throttle map is provided, then this is mathematically inverted, so that the necessary throttle position
can be identified from the required net wheel torque Tw, provided it is feasible for the engine to deliver
this torque at the current engine speed :
344 Adams/Car
Using the Driving Machine
If the linear model is selected, then the feed-forward throttle and brake signals can be determined directly
from the required torque:
• Gear change time (not the time of the whole event, but the time for which the clutch is not fully
engaged)
• Clutch raise and fall time
• Throttle raise and fall time
• DT1 (the delay between clutch disengagement and throttle release)
• DT2 (the delay between that start of clutch re-engagement and start of throttle reapplication)
The following plot shows the influence of the parameters DT1 and DT2:
346 Adams/Car
Using the Driving Machine
The following plot shows the influence of the throttle raise and fall time parameters:
Running Analyses 347
Using the Driving Machine
The following plots show the effect of changing a single parameter from this baseline:
348 Adams/Car
Using the Driving Machine
• Changing DT1:
Running Analyses 353
Using the Driving Machine
• Changing DT2:
Wheel-lift compensation
Controller-induced wheel-spin-up or wheel-lock is prevented by detecting when the loads on the driven
wheels go to zero (that is, the driven wheels are not in contact with the road). In this case, the throttle and
354 Adams/Car
Using the Driving Machine
brake are released (set to zero) and the clutch is depressed. The clutch action ensures that when the
vehicle lands, the wheels spin up to the correct velocity as quickly as possible.
Running Analyses 355
Controlling Analysis Output Files
ID Description
900 Runs one or more static solutions to, for example, to adjust tie rod length to set desired
toe angle. Adams/Car adds a call to this consub when the assembly contains adjustable
forces. See Align or Adjust Suspension.
910 Set part velocity and wheel rotational velocity. See Part Velocity Setting.
917 Set part velocity and wheel rotational velocity. See Set Part Velocity.
950 For a suspension assembly, run a quasi-static simulation from time zero (0) to time one
(1) to position the suspension at the first point in the loadcase file. Output from
Adams/Solver to the request, graphics, and results files is suppressed so that plots
generated for suspension characteristics verses wheel travel do not have duplicate points
details of the maneuver. In particular, two files are important in defining the scope of the maneuver. These
are the Adams/Solver control file (.acf) and the event file (.xml).
The following shows the typical contents of an .acf:
file/model=test_step
preferences/solver=F77
output/nosep
control/ routine=abgVDM::EventInit,
function=user(3,1,10,0,2,5,7,9,4,8, 17)
control/ routine=abgVDM::EventRunAll, function=user(0)
!
stop
In the .acf, note the following line:
control/ routine=abgVDM::EventInit,
function=user(3,1,10,0,2,5,7,9,4,8, 17)
This line calls an Adams/Car-specific control subroutine (a consub). The consub sets up and initializes
the full-vehicle analysis. It does the following:
• Reads the event file (or converts the TeimOrbit .dcf file into XML)
• Performs a number of static analyses based on the content of the DcfStatic class in the event file
• Performs a dynamic analysis by running each of the mini-maneuvers listed in the DcfMini
classes in the event file
You can view and modify the event file (.xml) using the Event Builder. The Event Builder allows you to
modify existing parameters for the entire maneuver, such as step size and hmax, to modify specific mini-
maneuver information, and add mini-maneuvers.
The following line calls the control subroutine EventInit:
control/ routine=abgVDM::EventInit,
function=user(3,1,10,0,2,5,7,9,4,8, 17)
The call to this subroutine passes 11 parameters, as described next. Note that each number in the array
(3,1,10,0,2,5,5,9,4,8, 17) is listed after the description of that parameter.
par(1) 3: ID of STRING statement containing .XML event filename = 3
par(2) ID of ORIGO marker = 1
par(3) ID of ARRAY statement containing initial condition SDI
parameters = 10
par(4) ID of ARRAY statement containing ids of parts for which initial
velocity are not set = 0
par(5) ID of ARRAY holding Vehicle Parameters. = 2
par(6) ID of main Driving Machine ARRAY. = 5
par(7) ID ISO EAS Marker = 7
par(8) ID of Driver_Parameters_ARRAY_Steering_Human = 9
par(9) ID of STRING statement containing Driver Road Filename = 4
par(10) ID of ARRAY containing Human Driver Parameters = 8
par(11) ID of ARRAY containing the ids of extensible end condition
sensor elements = 17
358 Adams/Car
Controlling Analyses Using CONSUBs
If you look at the corresponding Adams/Solver dataset (.adm), you will see that STRING/3 contains the
name of the event file:
! adams_view_name='testrig_dcf_filename'
STRING/3
, STRING =example_crc.xml
All standard Adams/Car events generate an event file in XML format, similar to the one referenced in
the example above, but .dcf files in TeimOrbit format are still supported, both in the Event Builder and
at the solver level. This means that you can replace the above string and reference a .dcf file in TeimOrbit
format. The file will be automatically converted to XML format.
By modifying the .acf file, you can now execute all mini-maneuvers defined in the event file, or just run
the initialization and then execute one mini-maneuver at a time. Full-vehicle analysis .acf files by default
call the Driving Machine initialization routine, then call the RunAll method. You can, however, modify
the .acf file and use the following commands for more control over your analysis:
• control/ routine=abgVDM::EventRunAll, function=user(0) - Runs all the active mini-maneuvers
in the list of events
• control/ routine=abgVDM::EventRunNext, function=user(0) - Runs the following mini-
maneuver in the list of the events
• control/ routine=abgVDM::EventRunFor, function=user(time) - Runs the current mini-maneuver
for duration of time [s]
• control/ routine=abgVDM::EventRunUntil, function=user(time) - Runs the current mini-
maneuver until the desired absolute time [s]
Using this flexibility within the event control subroutine enables you to use the power of the acf language
to make changes and re-submit your solution to Adams/Solver. The language parameters for the .acf file
are documented in the Adams/Solver online help.