Lab Course Driver-Assistance Systems

Lecturer (assistant)
  • Frank Diermeyer
TypePractical course
Duration4 SWS
TermWintersemester 2023/24
Language of instructionGerman
Position within curriculaSee TUMonline
DatesSee TUMonline


The goal of this lab course is to familiarize the participants with the basics of simulation and development of Driver-Assistance Systems (DAS). For this purpose, an Emergency Braking Assist (EBA) will be developed. After a theoretical introduction to the topic of DAS and Functional Safety (FuSa), the sensors that are necessary for the implementation of the EBA functions will be considered. In the practical part of this, a camera is calibrated and depth estimation is implemented using a stereo camera. For this purpose, a test vehicle (VW T7 - EDGAR) is available for reading and visualizing sensor data. Subsequently, first preliminary investigations of EBA functions are carried out with Matlab and Simulink. Afterwards, an EBA will be implemented step by step using C++ and ROS. The function of the developed algorithm is first verified in an open-loop simulation by replaying previously recorded sensor data. In the next step, the CARLA simulator is introduced. The simulator makes it possible to simulate a vehicle including sensors, which allows a closed-loop simulation to validate the EBA. Finally, the functions of existing EBAs are analyzed. For this purpose, real-world tests with a Tesla Model 3 and a VW ID.3 will be conducted.

The sessions include the following contents:

  1. Introduction DAS and Matlab repetition: simulation of braking and swerving trajectories in Matlab.
  2. Safety aspects/functional safety: comparison of two sensor setups for emergency braking in Matlab
  3. Basics of sensors and introduction to Simulink: sensorcharacteristics, TTC calculations in Simulink using a longitudinal dynamics model.
  4. Introduction VW T7 - EDGAR and HiL-Box real-time simulation: flashing, reading and evaluation of real-time data
  5. Perception of the environment (theory and VW T7 - EDGAR): camera calibration and depth estimation
  6. Introduction C++ and EBA application examples: implementation of EBA functions in C++
  7. Introduction ROS: reading and visualization of sensor data
  8. Implementation EBA: implementation and verification of EBA functions with ROS and C++
  9. Introduction CARLA Simulator: scenario generation
  10. Validation NBA: Closed-Loop Simulation of the implemented EBA with the CARLA Simulator
  11. Real-life tests: functional test EBA with Tesla Model 3 and VW ID.3

A variety of software tools and programming languages will be used during the lab course (Matlab, Simulink, C++, ROS, SVL Simulator). It is therefore aimed at students who wish to develop their programming and design skills in the field of automotive engineering. All methods not covered by the prerequisites for participation will be introduced to the required extent during the lab course. The tools utilized are used in current research projects of the institute, therefore this internship offers an excellent opportunity to become familiar with applications that will be needed in possible future student research activities.


  • Matlab basics (definition and calculation with vectors and matrices, plotting variables, creating functions and scripts, ...)
  • Basic knowledge of vehicle dynamics (coordinate systems for vehicle movements, characteristic values of wheel positions, ...)
  • Pass the introductory test
  • C++ basics helpful

In order to guarantee a common level of knowledge of the participants of the lab course, a script will be distributed to the participants prior to the start of the lab course. The tested knowledge of the introduction test is based purely on this script. The estimated workload for studying this script is two hours.

Teaching and learning methods

The events of the lab course (every Friday) consist of a theoretical part and a practical part. In the theory part in the morning (9:00-12:00) the relevant knowledge is acquired by means of presentation and live programming. In the following tutored homework part in the afternoon (13:00-16:00) the students work independently.

Exam Method and Evaluation

At the end of the lab course, an exam is held, which represents the overall grade. The exam consists of theoretical questions and programming tasks.