High fidelity simulation using Simcenter Prescan C++ Simulation interface

By Paul van Straten

As the development processes for vehicles change, simulation tools also need to adapt to the new challenges that auto makers are faced with. The need for more processing power, better sensor simulations, more advanced assistance systems and many more.

The microchip “brains” that the ADAS systems have inside the vehicle play a very important role. They communicate important data to the the vehicle’s ECUs, process the information while perceiving the world around them and communicating information with other vehicles and infrastructure.

For this reason, with Simcenter Prescan release 2019.3, the new C++ simulation interface was introduced. It ensures that Prescan is ready to interface with tools such as ROS and AutoWare and that verification of the validity of Integrated Circuits with algorithms written in C, is made seamless. In combination with the best-in-class sensor simulation in the market, this new interface offers many possibilities to accelerate the development and adoption of ADAS and AV systems.


The C++ Simulation interface is an excellent choice as a simulator since it will effortlessly integrate with the existing processes within any company. Call it interfacing with ROS or Apollo, Simcenter Amesim or third-party vehicle dynamics, HEEDS for Test Automation and reporting or using the OpenX standards. Logically, given the fact that the interface is a C++ tool, it will also be easily connected into in-house processes that already use other C or C++ tools.

Visualization and rendering using Unreal technology

Unreal Visualization

The C++ simulation interface can also make use of the Unreal technology for rendering and visualization out of the box. The Unreal technology offers unprecedented realism and graphics in ADAS simulation, without affecting the performance of the experiments in simulation.


To go into this capability a little bit deeper and to learn how to execute high-fidelity simulations with both the Simulink interface or the C++ interface we have developed a free on demand webinar. In this webinar we present the new interface, we compare it with our other simulation interface that uses Simulink and offer many insights into interfacing and use cases.

Engineering use cases

The engineering use case presented in this webinar, uses the C++ simulation interface to depict an ego vehicle equipped with a camera and radars. A pure pursuit algorithm makes sure that the vehicle stays in the middle of the lane, and an AEBS algorithm ensures that the vehicle doesn’t collide with a target vehicle that performs a cut-in maneuver.

Engineering use case using the C++ simulation interface

The experiment is test automatable, by changing the initial and desired speeds of both ego and target vehicles. Additionally, all important KPI parameters are collected after each experiment to ensure that the user can analyze all the important data of the experiment, and optimize the controllers as needed. This experiment can be simulated either as a standalone executable or by using HEEDS to automatically launch hundreds of variations, automatically gathering, plotting and reporting all the KPI data.

To learn more, watch the webinar here.

If you would like to get a demonstration, ask your local Siemens sales representative.

This article first appeared on the Siemens Digital Industries Software blog at