This reference application represents a full vehicle dynamics model undergoing a braking test, including a split-mu test. You can create your own versions, establishing a framework to test that your vehicle meets the design requirements under normal and extreme driving conditions. Use this reference application in ride and handling studies and chassis controls development to characterize the vehicle dynamics during a braking test. For information about this and similar maneuvers, see standards SAE J299_2009014 and ISO 21994:20075.
To test advanced driver assistance systems (ADAS) and automated driving (AD) perception, planning, and control software, you can run the maneuver in a 3D environment. For the 3D visualization engine platform requirements and hardware recommendations, see Unreal Engine Simulation Environment Requirements and Limitations.
To create and open a working copy of the braking test reference application, enter
This table summarizes the blocks and subsystems in the reference application. Some subsystems contain variants.
|Reference Application Element||Description||Variants|
Generates accelerator and brake commands to conduct a straight line maneuver. The acceleration begins at the specified rate until the vehicle achieves the longitudinal velocity setpoint. The vehicle controller maintains the longitudinal velocity setpoint for the specified time or distance. The controller then decelerates the vehicle.
Optionally, specify fault conditions before braking during a split-mu test. If the vehicle speed, steering angle, or yaw rate is not within the allowable range before braking, the block sets a fault condition. The default values represent compliance with ISO 145126.
Implements the driver model that the reference application uses to generate acceleration, braking, gear, and steering commands.
By default, Driver Commands subsystem variant is the Predictive Driver block.
Implements wind and road forces, including a constant or split friction coefficient scaling factor.
Implements controllers for engine control units (ECUs), transmissions, anti-lock braking systems (ABS), and active differentials.
Provides the vehicle trajectory, driver response, and 3D visualization.
To enable 3D visualization, set the 3D Engine block parameter 3D Engine parameter to Enabled.
For the minimum 3D visualization environment hardware requirements, see Unreal Engine Simulation Environment Requirements and Limitations.
To override the default variant, on the Modeling tab, in the Design section, click the drop-down. In the General section, select Variant Manager. In the Variant Manager, navigate to the variant that you want to use. Right-click and select Override using this Choice.
Straight Maneuver Reference Generator
The Straight Maneuver Reference Generator block generates accelerator and brake commands to conduct a straight line maneuver. The acceleration begins at the specified rate until the vehicle achieves the longitudinal velocity setpoint. The vehicle controller maintains the longitudinal velocity setpoint for the specified time or distance. The controller then decelerates the vehicle.
Use the Maneuver Parameters to specify the maneuver start time, velocity setpoint, acceleration, and deceleration.
Optionally, on the Tracking Parameters tab, select Enable fault tracking before braking. Use the parameters to specify fault conditions before braking during a split-mu test. If the vehicle speed, steering angle, or yaw rate is not within the allowable range before braking, the block sets a fault condition. The default values represent compliance with ISO 145126.
For more information, see Straight Maneuver Reference Generator.
The Driver Commands block implements the driver model that the reference application uses to generate acceleration, braking, gear, and steering commands. By default, if you select the Reference Generator block parameter Use maneuver-specific driver, initial position, and scene, the reference application selects the driver for the maneuver that you specified.
Vehicle Command Mode Setting
Longitudinal Driver block — Longitudinal speed-tracking controller. Based on reference and feedback velocities, the block generates normalized acceleration and braking commands that can vary from 0 through 1. Use the block to model the dynamic response of a driver or to generate the commands necessary to track a longitudinal drive cycle.
Predictive Driver block — Controller that generates normalized steering, acceleration, and braking commands to track longitudinal velocity and a lateral reference displacement. The normalized commands can vary between -1 to 1. The controller uses a single-track (bicycle) model for optimal single-point preview control.
Implements an open-loop system so that you can configure the reference application for constant or signal-based steering, acceleration, braking, and gear command input.
The Environment subsystem implements wind and road forces, including a constant or split friction coefficient scaling factor.
Use the Road Track Friction block Type of surface parameter to specify the friction coefficient scaling factor:
Constant friction coefficient scaling factor— Constant surface friction during the maneuver
Split friction coefficient scaling factor— Two friction coefficients
Select this option to specify the friction scaling coefficients for a split-mu braking test. Use the enabled parameters to set the ground friction and rectangular surface friction coefficient scaling factors.
For more information, see Road Track Friction.
The reference application has these ground feedback variants.
Uses Vehicle Terrain Sensor block to implement ray tracing in 3D environment.
Implements a constant or split friction coefficient scaling factor based on the Road Track Friction block output.
The Controllers subsystem generates engine torque, transmission gear, brake pressure, and differential pressure commands.
The ECU controller generates the engine torque command. The controller
prevents over-revving the engine by limiting the engine torque
command to the value specified by model workspace variable
EngRevLim. By default, the value is 7000
rpm. If the differential torque command exceeds the limited engine
torque command, the ECU sets the engine torque command to the
commanded differential torque.
The Transmission Controller subsystem generates the transmission gear command. The controller includes these variants.
Implements a transmission control module (TCM) that uses Stateflow® logic to generate the gear command based on the vehicle acceleration, wheel speed, and engine speed.
Open loop transmission control. The controller sets the gear command to the gear request.
Implements a transmission control module (TCM) that uses Stateflow logic to generate the gear command based on the vehicle acceleration, brake command, wheel speed, engine speed, and gear request.
Implements a paddle controller that uses the vehicle acceleration and engine speed to generate the gear command.
Brake Pressure Control
The Brake Controller subsystem implements a Brake Pressure Control subsystem to generate the brake pressure command. The Brake Pressure Control subsystem has these variants.
Implements an ABS feedback controller that switches between two states to regulate wheel slip. The bang-bang control minimizes the error between the actual slip and desired slip. For the desired slip, the controller uses the slip value at which the mu-slip curve reaches a peak value. This desired slip value is optimal for minimum braking distance.
Open loop brake control. The controller sets the brake pressure command to a reference brake pressure based on the brake command.
Five-state ABS control when you simulate the maneuver.1,2,3 The five-state ABS controller uses logic-switching based on wheel deceleration and vehicle acceleration to control the braking pressure at each wheel.
Consider using five-state ABS control to prevent wheel lock-up, decrease braking distance, or maintain yaw stability during the maneuver.
The default ABS parameters are set to work on roads that have either:
To specify the road surface, see Environment.
Active Differential Control
The Active Differential Control subsystem generates the differential pressure command. To calculate the command, the subsystem has these variants.
Implements a controller that generates the differential pressure command based on the:
Does not implement a controller. Sets the differential pressure command to 0.
The Passenger Vehicle subsystem has an engine, controllers, and a vehicle body with four wheels. Specifically, the vehicle contains these subsystems.
|Body, Suspension, Wheels Subsystem||Variant||Description|
Vehicle with four wheels:
Subsystem has variants for the tires, including:
Vehicle with four wheels.
Subsystem has variants for the suspension, including:
Subsystem has variants for the tires, including:
Mapped spark-ignition (SI) engine
Steering, Transmission, Driveline, and Brakes Subsystem
Driveline Ideal Fixed Gear
Configure the driveline for all-wheel, front-wheel, rear-wheel, or rear-wheel active differential drive and specify the type of torque coupling.
Implements an ideal fixed gear transmission.
Implements the heuristic response of a hydraulic system when the controller applies a brake command to a cylinder. Includes front and rear wheel bias coefficients. The subsystem converts the applied pressure to a cylinder spool position. To generate the brake pressure, the spool applies a flow downstream to the cylinders.
When you run the simulation, the Visualization subsystem provides driver, vehicle, and response information. The reference application logs vehicle signals during the maneuver, including steering, vehicle and engine speed, and lateral acceleration. You can use the Simulation Data Inspector to import the logged signals and examine the data.
Yaw rate, Brake Pressure, Velocity, Lat Accel
Vehicle XY Plotter
Vehicle longitudinal versus lateral distance
ISO 15037-1:2006 block
Display ISO standard measurement signals in the Simulation Data Inspector, including steering wheel angle and torque, longitudinal and lateral velocity, and sideslip angle
If you enable 3D visualization on the Reference Generator block 3D Engine tab by selecting Enabled, you can view the vehicle response in the Simulation 3D Viewer.
To smoothly change the camera views, use these key commands.
For additional camera controls, use these key commands.
Cycle the view between all vehicles in the scene.
Mouse scroll wheel
Control the camera distance from the vehicle.
Toggle a camera lag effect on or off. When you enable the lag effect, the camera view includes:
This lag enables improved visualization of overall vehicle acceleration and rotation.
Toggle the free camera mode on or off. When you enable the free camera mode, you can use the mouse to change the pitch and yaw of the camera. This mode enables you to orbit the camera around the vehicle.
 Pasillas-Lépine, William. "Hybrid modeling and limit cycle analysis for a class of five-phase anti-lock brake algorithms." Vehicle System Dynamics 44, no. 2 (2006): 173-188.
 Gerard, Mathieu, William Pasillas-Lépine, Edwin De Vries, and Michel Verhaegen. "Improvements to a five-phase ABS algorithm for experimental validation." Vehicle System Dynamics 50, no. 10 (2012): 1585-1611.
 Bosch, R. "Bosch Automotive Handbook." 10th ed. Warrendale, PA: SAE International, 2018.
 J299_200901. Stopping Distance Test Procedure. Warrendale, PA: SAE International, 2009.
 ISO 21994:2007. Passenger cars — Stopping distance at straight-line braking with ABS — Open-loop test method. Geneva: ISO, 2007.
 ISO 14512:1999. Passenger cars — Straight-ahead braking on surfaces with split coefficient of friction -- Open-loop test procedure. Geneva: ISO, 2007.
3D Engine | Road Track Friction | Straight Maneuver Reference Generator | Vehicle Terrain Sensor