Skip to main content

Real-Time Simulation and Control of High-Performance All-Electric Autonomous Racing Cars

Discover the full autonomous software stack from Technical University of Munich’s Roborace team. Designed with Simulink and ready to run on Speedgoat.

Learn how to

  • Use Speedgoat CAN-bus I/O modules
  • Prototype and test trajectory planning and following algorithms
  • Model realistic sensors with white noise and fault insertion
  • Perform sensor fusion using Kalman filters
  • Apply realistic actuator models with limits and failure modes
  • Perform vehicle diagnostics

Key benefits

  • Build new automated driving functions with a user and field proven reference application
  • Test often and safely using a real-time virtual vehicle that closely mimics vehicle dynamics, sensors, actuators, and the environment
  • Start quickly with fully customizable planning, controls and virtual vehicle models
  • Investigate fault and edge scenarios safely in a simulation environment
  • Visualize and log real-time data with Simulink®

A research group from the Chair of Automotive Technology and the Chair of Automatic Control at the Technical University of Munich (TUM) uses Speedgoat real-time hardware for the development, testing, and deployment of their autonomous racing software stack. The engineers put their algorithms to the test on real vehicles in the recurring Roborace challenge, a driverless Formula E-style racing event.

Roborace provides every competing team with an identical four-wheel-drive electric race car, and they have equipped each car with a Speedgoat Mobile real-time target machine as the main vehicle control unit. This is possible thanks to Speedgoat hardware's robustness and the availability of all the required automotive I/O-interfaces.

The goal of using identical cars is to have the teams compete on the software layer only, while using the very capable Robocar platform that holds the world record for the fastest autonomous car.

The Roborace challenge is an excellent opportunity for the people at TUM to test their latest research in sensor fusion, path planning, trajectory optimization, and vehicle control. But verifying the algorithms and especially the safety-relevant aspects before going to the track is crucial. In-vehicle testing creates a lot of logistics overhead, is therefore time-consuming and can damage the car.

With the support of Speedgoat, the team at TUM developed a Hardware-In-the-Loop (HIL) setup using a Speedgoat Performance real-time target machine. They run high-fidelity simulations of the vehicle and its surroundings in real-time. Only after verifying proper operation of all the modules and the interfaces between components, the researchers deploy the same algorithms to the real car.

This fast-paced workflow enables the team to test quickly and dedicate more time to the development of their algorithms, resulting in repeated top rankings in the global competition throughout the years.

To accelerate technological progress, the full software stack developed by TUM is open-source and available on GitHub and through Speedgoat. The recommended hardware setup for this reference application consists of two Speedgoat real-time target machines. One of them simulates the virtual vehicle, while the other runs the path planning and vehicle control tasks. An alternative setup using only a single Speedgoat real-time target machine is also possible. The communication between different software modules uses CAN and UDP protocols, the same interfaces present on the real car, allowing to also interface with real car components for HIL simulation.

During simulation, info about the car’s status is sent to the host PC, where both car and racetrack are rendered in photorealistic 3D using Unreal® Engine. With the Vehicle Dynamics Blockset Interface for Unreal Engine 4 Projects and the Unreal® Engine editor, custom 3D environments can be created and used for simulation.The provided virtual racetrack has the dimensions of the Monteblanco circuit in Spain, where Roborace took place in 2019. 

A lot of work goes into putting together all the modules of a complete software framework. Using this reference application, you can immediately focus on a specific component of your interest. Perform continuous integration and testing and verify your custom implementation with data logging and visualization in MATLAB® and Simulink®.

Adopting the same workflow as the TUM team allows you to perform design iterations quickly, implement new path planning and control methods, and smoothly perform virtual vehicle testing in hardware-in-the-loop simulators. Thanks to the full compatibility of the various tools provided by MathWorks® and Speedgoat, you can rely on our solutions throughout the whole development cycle.

Product Focus: Vehicle Dynamics Blockset Interface for Unreal Engine 4 Projects

This free-of-charge support package for Vehicle Dynamics Blockset™ provides several 3D scenes where you can visualize and drive a virtual vehicle. Simulink® blocks allow you to easily exchange data with Unreal® Engine during simulation, like updating the vehicle position.

Use the pre-built scenes right away or make customizations and build entirely new scenes with the Unreal® Engine editor. Follow the documentation included with the support package to get started using one of the most advanced game engines for your 3D visualization.

Product Highlights

The Author

Timo Strässle

Timo Strässle
Application Engineer

Related Content