Datasets
Vehicle Parameters

Figure 1.
| Parameter | Type | Range | Comments |
|---|---|---|---|
| Vehicle Mass | Real | Value>0 | |
| Final drive ratio | Real | Value>0 | Coupler ratio between drive coupler output and input shafts. Note that drive ratio is 3.7 in case of default RWD model and 1 in case of default FWD model. This value is not parameterized. |
| Transmission efficiency | Real | Value>0 | Input omega/(output omega*Drive ratio). |
| Drive type | Option | Value = FWD or RWD | Four wheel drive not allowed for advanced driver. |
| Max. powertrain torque | Real | Value > 0 | Torque produced by the powertrain at the input shaft of the differential at
100% throttle. *Required only for vehicle models without CSE powertrain. Driver can directly query CSE powertrain. |
| Min. Powertrain torque | Real | Torque produced by the powertrain at the input shaft of the differential at
0% throttle. *Required only for vehicle models without CSE powertrain. Driver can directly query CSE powertrain. |
|
| Maximum front braking torque | Real | Value>0 | Maximum braking torque on front axle at 100. |
| Maximum rear braking torque | Real | Value>0 | Maximum braking torque on rear axle. |
| Brake bias | Real | 0<Value<1 | Front to Rear. 0 is 100% front, 1 is 100% rear. |
| Front wheel radius | Real | Value>0 | Loaded radius |
| Rear wheel radius | Real | Value>0 | Loaded radius |
| Front cornering stiffness | Real | Value>0 | |
| Rear cornering stiffness | Real | Value>0 | |
| Vehicle a | Real | Value>0 | X component (Vehicle SAE system) of the distance from vehicle front axle to vehicle CG. |
| Vehicle b | Real | Value>0 | (Wheel base - vehicle a) |
| Vehicle yaw inertia | Real | Value>0 | |
| Steer ratio | Real | Value>0 | Ratio of steering wheel input to tire motion (toe). |
Analysis Settings
| Parameter | Type | Range | Comments |
|---|---|---|---|
| Altair Driver file | File | Address of the file path |
Signal Dimensions

Figure 2.
$Example ADF end conditions block
(END_CONDITIONS)
{SIGNAL GROUP ABS OPERATOR VALUE TOLERANCE WATCH_TIME}
LONG_VEL 0 Y SS 0.0 0.0001 1.50
ROLL_ANGLE 1 Y SS 0.0 0.0001 1.50
PITCH_ANGLE 2 Y SS 0.0 0.0001 1.50
YAW_RATE 3 Y SS 0.0 0.0001 1.50
CG_Z 4 Y SS 0.0 0.0001 1.50
$------------------------------------------------------------------------------------------------------------------Using this block in ADF and signals dimension dataset, Driver will know the appropriate conversion factors for each and every value.
Control States
| MDL Statements | |
|---|---|
|
|
| gse_advanced_driver | Variable name of the driver cse. |
| “CSE Advanced Driver” | Label |
| 6 | Number of outputs. |
| sa_u_advanced_driver | Solver array with input signals. |
| Driver resizes the state array and sets initial conditions of the states internally. Hence, the state IC array should not be provided. | |
|
|
| USER | Indicates that Motionsolve should look outside its dll’s for the entry point. |
| USER({sa_par.idstring}) | Function call with par[0] = Array ID with vehicle parameters |
|
|
| 1 | The number of states are by default set to 1. |
|
|
| Msautoutils | Looks for this dll first in the current directory and then in MotionSolve installation. |
|
|
| SCRIPT_DRIVER | Entry point function name. |
Motions
| Steering wheel motion | Driver computes the required steering angle and applies motion to the steering wheel joint. |
| Differential motion | Required to lock the differential during static (present only if drive joint attachment is resolved in the Driver attachment dialog). |
Forces
| Steering torque | Driver computes the required steering torque and applies torque to the steering wheel joint. |
Sensor
| Maneuver switch | Switch to end one maneuver and start next maneuver. Sensor uses a sensor subroutine to monitor the signals and end conditions associated with the signal to actuate the switch. |
Solver Arrays
These solver arrays are parameterized to data sets or attachments and provide several pieces of vehicle information to the Solver.
| Mass Info Array |
|
| Brake Info Array |
|
| Tire Info Array |
|
| Powertrain Info Array |
|
| Drive Train Info Array |
|
| Driver Info |
|
| Bicycle Model Info Array |
|
| Vehicle Parameters Array |
|
| Sensor Mass Dimension array (Using signal dimensions dataset table) |
|
| Sensor Length Dimension array (Using signal dimensions dataset table) |
|
| Sensor Time Dimension array (Using signal dimensions dataset table) |
|
| Sensor Force Dimension array (Using signal dimensions dataset table) |
|
| Sensor Angle Dimension array (Using signal dimensions dataset table) |
|
| Sensor Label Dimension array (Using signal dimensions dataset table) |
|
| Sensor Solver variable ID array (Using signal dimensions dataset table) |
|
| Sensor Master array (Using signal dimensions dataset table) |
|
| Input Signal Array (GSE, U type) |
|
| Motion array |
|
| Force array |
|
| Joint array |
|
| Jprim array |
|
| Sensor array |
|
| Output Signal array |
|
| Solver Diff array |
|
| Control Entities Array |
|
Solver Diff
| Steering angle differentiation | `ARYVAL({gse_msautoDriver_1.y_array.idstring},1)` |
| Throttle | `ARYVAL({gse_msautoDriver_1.y_array.idstring},2)` |
Solver Variables
| Driver Steer output | `ARYVAL({gse_msautoDriver_1.y_array.idstring},1)` |
| Driver throttle output | `ARYVAL({gse_msautoDriver_1.y_array.idstring},2)` |
| Driver brake output | `ARYVAL({gse_msautoDriver_1.y_array.idstring},3)` |
| Driver gear output | `ARYVAL({gse_msautoDriver_1.y_array.idstring},4)` |
| Driver clutch output | `ARYVAL({gse_msautoDriver_1.y_array.idstring},5)` |
| Distance traveled | `ARYVAL({gse_msautoDriver_1.y_array.idstring},6)` |
| Demand traction signal | `ARYVAL({gse_msautoDriver_1.y_array.idstring},8)` |
| Steer torque | `ARYVAL({gse_msautoDriver_1.y_array.idstring},9)` |
| Simulation Time | TIME |
| Engine speed | `VARVAL(<Engine speed attachment solver
variable>)` |
| Longitudinal velocity wrt to gyro | -VX ( <Gyro fixed marker> , <Ground body CM marker> , < Gyro fixed marker > ) |
| Lateral velocity wrt gyro | VY ( <Gyro fixed marker> , <Ground body CM marker> , < Gyro fixed marker > ) |
| Yaw rate wrt gyro | WZ ( <Gyro fixed marker> , <Ground body CM marker> , < Gyro fixed marker > ) |
| Longitudinal acceleration wrt gyro | -ACCX( <Gyro fixed marker> , <Ground body CM marker> , < Gyro fixed marker > ) |
| Lateral acceleration wrt gyro | -ACCY( <Gyro fixed marker> , <Ground body CM marker> , < Gyro fixed marker > ) |
| Longitudinal displacement | DX ( <Vehicle Body>) |
| Lateral displacement | DY ( <Vehicle Body>) |
| Vertical displacement | DZ ( <Vehicle Body>) |
| Yaw angle | AZ(<Vehicle Body>) |
| Roll Angle | ROLL(<Vehicle Body>) |
| Pitch Angle | PITCH(<Vehicle Body>) |
| Roll Rate | WX(<Vehicle Body>, <Ground Body>, <Vehicle Body>) |
| Pitch Rate | WY(<Vehicle Body>, <Ground Body>, <Vehicle Body>) |
| User signal 0 | User defined in Altair Driver panel (signal_0) |
| User signal 1 | User defined in Altair Driver panel (signal_1) |
| User signal 2 | User defined in Altair Driver panel (signal_2) |
| User signal 3 | User defined in Altair Driver panel (signal_3) |
| User signal 4 | User defined in Altair Driver panel (signal_4) |
| Steering wheel error derivative | DIF1(<Steering angle solver diff>)' |
| Steering wheel angle on vehicle | -AZ(<Steering wheel joint i body>,<Steering wheel joint j body>)` |
| Demand traction signal derivative | DIF1(<Demand traction signal solver diff>)` |
Template
Introduces the differential lock motion if the drive joint attachment of driver is unresolved.
{ driveJt = {PARENT.ds_vehicle_params.int_jdrive_ID.value} }
{if (driveJt != 0 )}
<Motion_Joint
id = "{abs( id - driveJt + 1)}"
label = "Differential motion"
full_label = "Model-Altair Driver-Differential motion"
type = "CONSTANT"
val_type = "D"
q = "0."
joint_id = "{PARENT.ds_vehicle_params.int_jdrive_ID.value}"
motion_type = "R"
/>1
{endif}
Sensors
| Maneuver switch | Switch to end one maneuver and start next maneuver. Sensor uses a sensor subroutine to monitor the signals and end conditions associated with the signal to actuate the switch. |
System Gyro
Gyro (short form for gyroscope) is used to calculate the roll and pitch corrected velocities and displacements for the driver inputs.
| Gyro body | Body to make attachments with the vehicle body. |
| Gyro body CG to gyro X dis CG to gyro Y dis CG to gyro Z dis |
Dataset containing the position information of the gyro. Gyro X - Vehicle CG X Gyro Y - Vehicle CG Y Gyro Z - Vehicle CG Z |
| Gyro parallel axes joint Gyro hookes joint |
Parallel axes joint between ground body and gyro body. Aligns Global Z with
gyroCM Z axis. Aligns cross pins of the Gyro X and Gyro Y with vehicle X and vehicle Y using a universal joint. |
| Gyro fixed marker | Marker fixed to the gyro body. |
| Gyro location | CGf location of the gyro body. |