Understanding the driver statements in the log file can help in case user wants to know whether driver is reading all the information as user wants.
• | MotionSolve loads the driver and powertrain DLL. |
Attempting to load usersub dll in the following search order:
Searching [msautoutils.dll] => Not found
INFO: Usersub library [C:\Program Files\Altair\13.0.110.30-mudhitdMviewFb13Sa2MADriver_BUILD-dev9\hwsolvers\motionsolve\bin\win64\msautoutils.dll] loaded
• | User message below is not an error. Drag information is not necessary for the driver to work. |
USRMES:USER1
INFO: No Drag Info found
• | Driver checks out the license. |
• | Driver uses the MotionSolve license and extra license is not required for driver to work. |
Checking out license feature 16 ...
License OK.
• | Driver reads the file and initializes all the maneuvers and all the controllers. |
• | Reads all the meta-character driven expressions. |
• | Driver does not overload the expressions now, it does so right before the transient maneuver start. |
<< ALTAIR DRIVER :: Instantiating...
<< ALTAIR DRIVER :: DEBUG_PARAMETERS found. Debug information will be written to debug_script_fish_hook.adf.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: File read successfully.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Instantiating controllers for Maneuver#1 GO_STRAIGHT...
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Instantiating Open Loop Controller, OL_CONSTANT_STEER, for STEER...
<< ALTAIR DRIVER :: Setting up Signal Generator/Constant.
<< ALTAIR DRIVER :: Signal Generator instantiated.
<< ALTAIR DRIVER :: Open Loop Controller instantiated for STEER.
<< ALTAIR DRIVER :: Instantiating FeedForward Traction Controller/Velocity, FEED_FORWARD_TRACTION, for THROTTLE...
<< ALTAIR DRIVER :: Setting up Signal Generator/Constant.
<< ALTAIR DRIVER :: Signal Generator instantiated.
<< ALTAIR DRIVER :: FeedForward Traction Controller/Velocity, FEED_FORWARD_TRACTION, for THROTTLE instantiated.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Giving BRAKE control to FEED_FORWARD_TRACTION
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Param_Transient/0/h_max will be updated to:0.001 at the start of the maneuver.
<< ALTAIR DRIVER :: Maneuver#2 GO_STRAIGHT instantiated.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Instantiating controllers for Maneuver#2 LEFT_TURN...
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Instantiating Open Loop Controller, OL_LEFT_STEER, for STEER...
<< ALTAIR DRIVER :: Setting up Signal Generator/Expression.
<< ALTAIR DRIVER :: Using VARVAL/31300100 as signal.
<< ALTAIR DRIVER :: Reference_Variable/31300100/expr will be updated to:{STEER_0} + {%TIME}*3.14*2 at the start of the maneuver.
<< ALTAIR DRIVER :: Signal Generator instantiated.
<< ALTAIR DRIVER :: Open Loop Controller instantiated for STEER.
<< ALTAIR DRIVER :: Instantiating FeedForward Traction Controller/Velocity, FEED_FORWARD_TRACTION, for THROTTLE...
<< ALTAIR DRIVER :: Setting up Signal Generator/Constant.
<< ALTAIR DRIVER :: Signal Generator instantiated.
<< ALTAIR DRIVER :: FeedForward Traction Controller/Velocity, FEED_FORWARD_TRACTION, for THROTTLE instantiated.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Giving BRAKE control to FEED_FORWARD_TRACTION
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Param_Transient/0/h_max will be updated to:0.001 at the start of the maneuver.
<< ALTAIR DRIVER :: Maneuver#3 LEFT_TURN instantiated.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Instantiating controllers for Maneuver#3 RIGHT_TURN...
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Instantiating Open Loop Controller, OL_RIGHT_STEER, for STEER...
<< ALTAIR DRIVER :: Setting up Signal Generator/Expression.
<< ALTAIR DRIVER :: Using VARVAL/31300100 as signal.
<< ALTAIR DRIVER :: Reference_Variable/31300100/expr will be updated to:{STEER_0} - {%TIME}*3.14*2 at the start of the maneuver.
<< ALTAIR DRIVER :: Signal Generator instantiated.
<< ALTAIR DRIVER :: Open Loop Controller instantiated for STEER.
<< ALTAIR DRIVER :: Instantiating FeedForward Traction Controller/Velocity, FEED_FORWARD_TRACTION, for THROTTLE...
<< ALTAIR DRIVER :: Setting up Signal Generator/Constant.
<< ALTAIR DRIVER :: Signal Generator instantiated.
<< ALTAIR DRIVER :: FeedForward Traction Controller/Velocity, FEED_FORWARD_TRACTION, for THROTTLE instantiated.
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Giving BRAKE control to FEED_FORWARD_TRACTION
<< ALTAIR DRIVER ::
<< ALTAIR DRIVER :: Param_Transient/0/h_max will be updated to:0.001 at the start of the maneuver.
<< ALTAIR DRIVER :: Maneuver#4 RIGHT_TURN instantiated.
<< ALTAIR DRIVER ::
• | Loads maneuvers and changes the solver parameters or solver expressions for the maneuver, if any. |
• | Execute MODSET Utility... commands follow this section if there are any changes to the xml. |
<< ALTAIR DRIVER :: Loading Maneuver#1.
<< ALTAIR DRIVER :: Controllers loaded for the maneuver.
<< ALTAIR DRIVER :: Updating parameters for the maneuver.
<< ALTAIR DRIVER :: Maneuver#1 loaded.
<< ALTAIR DRIVER :: Instantiated successfully.
• | Following part of the driver messages are written out just before the start of the initial static event. |
• | Driver reads the gear ratios and keeps the information from where it can be accesses easily. |
• | Updates the throttle scaling in the powertrain to avoid any discrepancy in driver output and powertrain expected input. |
• | Updates the initial engine speed corresponding to initial speed, initial gear information in the ADF. This message won’t make much sense in case of linear torque map. As the linear torque map has nothing like engine speed. |
• | Deactivates the end condition sensor to avoid any false end condition trigger. |
<< ALTAIR DRIVER :: Reading GearRatios.
<< ALTAIR DRIVER :: Updating throttle scaling in powertrain to 1
<< ALTAIR DRIVER :: Updating engine initial speed corresponding to initial vehicle speed.
Deactivate SENSOR/319001
• | After static, driver over-rides all the solver signals attached as driver outputs. |
<< ALTAIR DRIVER :: Overriding the solver variables attached as outputs.
• | Updates steering wheel motion from 0 to variable value of steer angle signal. Negative sign ensures transition from driver internal model to vehicle convention. |
Execute MODSET Utility...
ORIGINAL:
<Motion_Joint id="319001" expr="0"/>
MODIFIED:
<Motion_Joint id="319001" expr="-VARVAL(31901700)"/>
• | Updates throttle output solver signal. |
Execute MODSET Utility...
ORIGINAL:
<Reference_Variable id="31200100" expr="0"/>
MODIFIED:
<Reference_Variable id="31200100" expr="VARVAL(31901800)"/>
• | Updates brake output solver signal. |
Execute MODSET Utility...
ORIGINAL:
<Reference_Variable id="31500500" expr="0"/>
MODIFIED:
<Reference_Variable id="31500500" expr="VARVAL(31901900)"/>
• | Updates gear output solver signal. |
Execute MODSET Utility...
ORIGINAL:
<Reference_Variable id="31200300" expr="0"/>
MODIFIED:
<Reference_Variable id="31200300" expr="VARVAL(31902100)"/>
• | Updates clutch output solver signal. |
Execute MODSET Utility...
ORIGINAL:
<Reference_Variable id="31200200" expr="0"/>
MODIFIED:
<Reference_Variable id="31200200" expr="VARVAL(31902000)"/>
• | Deactivates all the locks from the static simulation – Vehicle yaw constraint, vehicle XY constraint, Wheel locks and differential lock. |
<< ALTAIR DRIVER :: Deactivating joints and lock motions.
Deactivate MOTION/119002
Deactivate MOTION/219002
Deactivate MOTION/119003
Deactivate MOTION/219003
Deactivate MOTION/319004
Deactivate JPRIM/303001
Deactivate JPRIM/303002
• | Sets up the initial velocity of the vehicle. |
<< ALTAIR DRIVER :: Setting up the initial velocity of the vehicle.
• | Activates the end condition sensor before the transient simulation. |
<< ALTAIR DRIVER :: Activating end conditions sensor.
Activate SENSOR/319001
Execute analysis [transient]...
• | Runs transient, until the end condition sensor is triggered. |
<< ALTAIR DRIVER :: End time for the maneuver reached. Switching to next maneuver...
INFO: Invoking action [RETURN] triggered by sensor [id=319001]...
INFO: Time = 1.99915811E+00
INFO: Reference Value = 1.00000000E+00 Current Value = 2.00000000E+00
• | Loads next maneuver and end conditions or aborts the simulation if no more maneuvers are found. |
<< ALTAIR DRIVER :: Loading Maneuver#2.
<< ALTAIR DRIVER :: Adding maneuver end condition sensor::ROLL_ANGLE
<< ALTAIR DRIVER :: Adding maneuver end condition sensor::TIME
<< ALTAIR DRIVER :: Adding maneuver end condition sensor::STEER
<< ALTAIR DRIVER :: Controllers loaded for the maneuver.
<< ALTAIR DRIVER :: Updating parameters for the maneuver.
Execute MODSET Utility...
ORIGINAL:
<Reference_Variable id="31300100" expr="0"/>
MODIFIED:
<Reference_Variable id="31300100" expr="0+(VARVAL(31900100) - 1.99916)*3.14*2"/>
<< ALTAIR DRIVER :: Maneuver#2 loaded.
Execute analysis [transient]...
Transient errors in the steering controller.
Steering is computationally most heavy, complex and most sophisticated block. Hence, understanding the steering controller messages are important.
1. | WARNING: Steering Controller: Could not Find Steering wheel angle in eatc iterations – Newton Raphson convergence failure and error along tangent used for calculations is > 1 mm along lateral direction. This error is not fatal and driver drives the vehicle with best approximations. |
2. | WARNING: Steering Controller: Suppressing warning messages from steering controller – If driver repeatedly warns with the previous message. The driver suppresses the warnings. |
3. | ABORT: Steering Controller: Could not Find Steering wheel angle in nrpec Iterations. Aborting simulation. – This message means either the vehicle has slipped out of the driver has repeatedly failed to converge to a steering angle value that would take the vehicle on the path. However, when driving on close to limit maneuvers. This also happens when the vehicle is drifting. Many a times this behavior is expected and the user can specify driver not to abort the simulation because of this error by writing AGGRESSIVE=’TRUE’ in steering controller block in the ADF. |