MATLAB and Simulink for Automated Driving Systems

Automotive engineers use MATLAB® and Simulink® to design automated driving system functionality including sensing, path planning, and sensor fusion and controls. With MATLAB and Simulink, you can:

  • Develop perception systems using prebuilt algorithms, sensor models, and apps for computer vision, lidar and radar processing, and sensor fusion.  
  • Design control systems and model vehicle dynamics in a 3D environment using fully assembled reference applications.
  • Test and verify systems by authoring driving scenarios using synthetic sensor models.
  • Use automated driving-specific visualizations.
  • Plan driving paths by designing and using vehicle costmaps, and motion-planning algorithms.
  • Reduce the engineering effort needed to comply with ISO 26262.
  • Automatically generate C code for rapid prototyping and HIL testing using code generation products.

“MATLAB is my preferred tool because it speeds algorithm design and improvement. I can do the data analysis, algorithm development, algorithm visualization, and simulation in one place and then generate C code that is reliable, efficient, and easy for software engineers to integrate within a larger system.”

Liang Ma, Delphi

Using MATLAB for Automated Driving Systems

Perception Design and Testing

MATLAB provides prebuilt algorithms and sensor models for computer vision, lidar processing, radar, and sensor fusion. Perform sensor fusion using a library of tracking and data association techniques including point and extended object trackers. Simulate measurements from IMU/GPS sensors, and design fusion and localization algorithms to estimate vehicle position and orientation.

Use deep learning and machine learning to develop algorithms for pedestrian detection, lane detection, and drivable path estimation.

Using the Ground Truth Labeling app, test perception system performance by comparing ground truth data against algorithm outputs.  


Control Design and Testing

Develop controllers for automated driving functions such as automatic emergency braking (AEB), lane keeping assist (LKA), automated cruise control (ACC), and automated parking valet. Design model predictive controllers specifically for automated driving applications with prebuilt features and blocks for scenarios like ACC, LKA, and obstacle avoidance.

Test automated driving algorithms using authored scenarios and synthetic detections from radar and camera sensor models. Define road networks, actors, and sensors using the Driving Scenario Designer app. Import prebuilt EURO NCAP tests and OpenDRIVE® road networks. 


Path Planning and Localization

Plan driving paths by using vehicle costmaps and motion-planning algorithms. You can also access path planning techniques from ROS using interfaces in Robotics System Toolbox™. Estimate vehicle location and orientation using data from IMU and GPS sensors.


Simulation-Based Testing  

Test your automated driving algorithms using the Driving Scenario Designer app, which lets you build scenarios or load prebuilt ones - including EuroNCAP. Generate detections from your statistical radar and camera models and analyze the output in MATLAB or Simulink.

Develop a virtual test ground for ADAS and automated driving features using the reference applications and the 3D environment. The vehicle models come with a virtual camera that sends images back to Simulink during the simulation. Analyze the signals in Simulink to test your lane detection algorithm. Customizing the scenes in the Unreal Engine editors gives you additional flexibility to create and simulate scenarios that fully exercise your ADAS and automated driving features.