virtual test driving in the development process - ipg …€¦ · virtual test driving in the...
TRANSCRIPT
Virtual Test Driving in the Development Process –New Methods and Tools for Current Challenges
Episode 1: Hardware-in-the-Loop
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
327-Mar-18
Highly networked functions Platform ECUs/„Super ECUs“ Sensor data fusion
Automated DrivingNeural networksArtificial intelligence
Current and Future Challenges for Function Verification with HIL
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Sensorf (.)
427-Mar-18
Aerog (.)
Chassisn (.)
…c (.)
…h (.)
…p (.)
…x (.)…
y (.)
…z (.)
…m (.)
…d (.)
ADASj (.)
…b (.)
…k (.)
Software / Office Environment
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Software / Office environment
Sensorf (.)
527-Mar-18
Aerog (.)
Chassisn (.)
…c (.)
…h (.)
…p (.)
…x (.)…
y (.)
…z (.)
…m (.)
…d (.)
…b (.)
…k (.)
ADASj (.)
Hardware-in-the-Loop Environment
ECU
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
cmdlineoptions
C code / Infofile editing
Databases
Existing Implementation with CarMaker
627-Mar-18
.dbcC code
(IO_CAN.c,…)
Infofiles(FlexRay
Parameters, …)
APP_VER = "Car_Generic<insert.your.version.no>"APP_NAME = CarMaker.$(ARCH)$(EXE_EXT)
OPT_CFLAGS = -g -O1
LD_LIBS = $(CAR_LIB) \$(CARMAKER_LIB)
$(DRIVER_LIB) $(ROAD_LIB) $(TIRE_LIB) $(TAME_LIB)OBJS = CM_Main.o CM_Vehicle.oUser.oOBJS_xeno = IO.o $(OBJS_CANIOGEN) $(OBJS_CANIOGEN_USER)OBJS_linux =OBJS_linux64 =OBJS_win32 =OBJS_win64 =
# Prepend local include/library directory to include path:# PREINC_CFLAGS +=
-I../include -
CANiogencmdline
tool
.xml
.arxml
fibex2flexcmdline
tool
voidIO_CAN_Cam_User_Out(
const unsigned int CycleNo){
/* Modify/Delete following lines, assign values to CAN signal variables */
/* ECU CAM_Out *//* CAN Msg 0x550 (CAMcommon) */IO_CAN_Cam_Timings.SendPeriod = 1;
/*Periodenzeit in Millisekunden*/IO_CAN_Cam_Timings.SendDistrib = 0;
/*Zeitversatz der Botschaft*/IO_CAN_Cam.EPM.MEcommon_DLC
= IO_CAN_Cam_MEcommon_DLC; /*Data length coding gibt Länge der Botschaftan*/
IO_CAN_Cam.Blinker_Left= VehicleControl.Lights.IndL;
IO_CAN_Cam.Blinker_Left_State= IO_CAN_Cam_SigStates[IO_CAN_Cam_SState_
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
BUS CONFIGURATOR
Bus ConfiguratorFor rest bus simulation
727-Mar-18
Infofiles- FlexRayParameters- RBSParameters- FlexCardParameters
Infofiles- CANParameters- RBSParameters
Databases
.dbc
.xml
.arxml
LIVE DEMO
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
BUS CONFIGURATOR
827-Mar-18
Choose your database
Configure your restbus configuration
Map and refine your signals
Save and run your test
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
927-Mar-18
BUS CONFIGURATOR
Features at a glanceFull FlexRay support (FIBEX, AUTOSAR)
Full CAN support (FIBEX, AUTOSAR, Vector DBC)
Automatic detection of database type
Automatic generation of frames, PDUs and signals
GUI-based mapping of signals to Data Dictionary, Constants, RollingCount, E2E_P2, CRC
Additional functions for usability (e.g. filter, hooks, trigger…)
Infofile approach enables simulation start on-the-fly
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Automotive Sensors
1027-Mar-18
Radar
Lidar
Front View Kamera
Rear View Kamera Surround View Kamera
Ultrasonic
GPS
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Sensorf (.)
1127-Mar-18
Aerog (.)
Chassisn (.)
…c (.)
…h (.)
…p (.)
…x (.)…
y (.)
…z (.)
…m (.)
…d (.)
…b (.)
…k (.)
ADASj (.)
Hardware-in-the-Loop Environment
ECUSensors
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Object List Based Injection
1227-Mar-18
Sensors
Device under test
Bypass (object lists)
ECU HIL
TES
T SY
STEM
Xpack4 RT-System
CarMaker
Restbussimulation
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
1327-Mar-18
Radar Sensor
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Physical Sensor Integration
1427-Mar-18
Device under test
CarMakerSensor stimuli
RestbussimulationECU
Sensors
HIL
TES
T SY
STEM
Xpack4 RT-System
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Example: Ultrasonic Sensor Box
1527-Mar-18
Device under test
HIL
TES
T SY
STEM
Xpack4 RT-System
CarMaker
Restbussimulation
ECU
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Example: Ultrasonic Sensor Box
Restbussimulation
1627-Mar-18
Device under test HIL
TES
T SY
STEM
Xpack4 RT-System
ECU
CarMaker
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Emulation of Sensor Signals
1727-Mar-18
Device under test
HIL
TES
T SY
STEM
CarMaker
Xpack4 RT-System
Sensor emulation
SensorsECU Restbus
simulation
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Example: Video Interface Box
1827-Mar-18
Sending the virtual scenario
Sending the data to device under test
Sending back information to CarMaker
System reaction in CarMaker
Device under testXpack4 system with CarMaker
Video Interface Box
Closed Loop Testing
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Sens
ors
TechnologyADAS Sensor InterfacesOverview
Solution depends on requirements and available informationEvery sensor type matches at least one HIL solution
1927-Mar-18
Camera
Ultrasonic
Lidar
Radar
Object list based approachEmulationPhysical(sensor-in-the-loop)
Screen capturing = Monitor-HIL
Ultrasonic sensor box
Lidar target simulator with partners of IPG Automotive
Radar target simulator with partners of IPG Automotive
Camera RSI
Ultrasonic RSI
Free Space Sensor /(Lidar RSI – coming soon)
Radar RSI
Object Sensor / Line Sensor /
Traffic Sign Sensor
Object Sensor
Object Sensor
Object Sensor / Radar HiFi Sensor
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
HARDWARE-IN-THE-LOOP
2027-Mar-18
LIVE DEMO
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
GM
SL HIL
TES
T SY
STEM
CarMaker
Xpack4 RT-PCHDMI
Drive PX2 HIL Demo System
2127-Mar-18
Video Interface Box
Device under Test
…f (.)
…g (.)
…c (.)
…p (.)
…y (.)
…b (.)Radar
RSI
Restbus simulation / Radar data
NVIDIA Drive PX2
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Video Interface Box
Drive PX2 HIL Demo System
NVIDIA Drive PX2
2227-Mar-18
Device under TestRestbus simulation / Radar data
HIL
TES
T SY
STEM
CarMaker
Xpack4 RT-PC
2227-Mar-18
…f (.)
…g (.)
…c (.)
…p (.)
…y (.)
…b (.)Radar
RSI
GM
SL
HDMI
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
2327-Mar-18
Hardware platform (i.e. Xpack4, National Instruments PXI, dSPACE Scalexio & DS1006, ETAS Labcar)
running on
integrated in
Function under test
CarMaker HIL software as middleware
CarMaker Runs on Different Hardware Platforms
Episode 2: Virtual ECUs
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
FMUs allow a seamless and easy integration of own or third-party models into CarMaker
Automatic conversion of physical units between connected signals• GUI proposes factor and offset
for conversion automatically based on given units
Tunable parameters allow a runtime influencing of the FMU
2527-Mar-18
2.0
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Front-loading validation and testingduring automotive
software development
Silver Virtual ECUs
2627-Mar-18
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
What is a virtual ECU? – Runs on a PC „like the ECU in the car“
2727-Mar-18
Silver
Plant Model
vECU and ECU share the same code C sources or Target HEX code
vECU and ECU have same interfaces Calibration – CANape, INCA Configuration files – PAR, DCM Networking – CAN, LIN, FlexRay
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Software Development Process
2827-Mar-18
Model-based developmentautomotive software
ECU testand validation
Feedbackfor developers
C codelibs
Build fortarget CPU
.hex
Code gen. and hand coding
ECU
HIL
.mdl
Flash
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Software Development Process
2927-Mar-18
ECU testand validation
Feedbackfor developers
ECU
Model-based developmentautomotive software
Build fortarget CPU
.hex
HIL
.mdl
Flash
Few and expensive: BOTTLENECK!
Days or weeks: LATE!
C codelibs
Code gen. and hand coding
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Silver Virtual ECUs – Software-in-the-Loop
3027-Mar-18
ECU
Build fortarget CPU
.hex
HIL
.mdl
Flash
Build
C codelibs
Code gen. and hand coding
vECU
Benefit of SIL: same as MIL plus • More SW-in-the-loop• Behavior closer to real ECU • Just 1 process for code generation
Minutes or days!
ECU testand validation
Feedbackfor developers
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Silver Virtual ECUs – Chip Simulation
3127-Mar-18
.hex
ECU
HIL
flash
Build fortarget CPU.mdl
Benefit of vPIL: same as SIL plus• No model or C code required
Feedbackfor developers
Minutes or days!
Build
vECU
C codelibs
Code gen. and hand coding
ECU testand validation
.hex
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Configuration file for Adaptive Cruise Control
Build a Silver Virtual ECU
3227-Mar-18
01 # set up compiler and files02 visualStudioVersion("100") # use Visual Studio 10.0 compiler03 inc_dir("$(PROJECT)\\src") # location of C header files04 src_files("$(PROJECT)\\src\\.+\.c") # C source files0506 # tasks of the virtual ACC07 task_initial(task_init)08 task_periodic(task_10ms, 0.01)0910 # interface of the virtual ACC11 input(ACC_IsActive)12 input(ACC_DesiredSpd)13 input(DM_Brake)14 input(DM_Gas)15 output(VC_Brake)16 output(VC_Gas)
.c, .h, .lib
.a2l, .dbc.ldf
sbsBuild
Virtual ACC
RTOS emulation
ECUfunctions
4 GBvirtual memory
A2Lconversion
XCP
flash
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Import Silver FMU into CarMaker 7.0
Import is straightforward Just edit the configuration No need to rebuild CarMaker.exe
3327-Mar-18
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
SilverEntire Silver setup acts as FMU One or many networked vECUs User interface Optional plant models
Validation and test Use TestWeaver or any other test
automation solution available for CarMaker and/or Silver
Virtual Test Driving: CarMaker & Silver Virtual ECU
3427-Mar-18
CarMaker 7.0
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
QTronic Silver – Summary
3527-Mar-18
Silver offersPC execution platform for virtual ECUs
Proven build process for virtual ECUs
Co-simulation with CarMaker 6.0.4 and later
Extremely short edit/run cycle for agile development
Source-level debugger on PC
Used to front-load validation and testing
Benefit
Episode 3: Automated Driving
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Searching for Future Solutions in Automated DrivingROS in General
Robot Operating System (ROS) Open-source software framework Background in robotics Rising interest in the ADAS and AD community Autonomous software stack available Flexible architecture, very useful especially for
big, complex systems Supports message-based inter-process
communication even across hardware boundaries
Hardware abstraction, device control and package management available
3727-Mar-18
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
CarMaker / TruckMakerROS (Robot Operating System) support
There are numerous trade-offs in creating a ROS AD architecture in combination with the simulation environment
3827-Mar-18
CarMaker
Node 1 Node 2
ROS node as plugin in CarMaker gives you a fast start
CarMaker builds the perfect completion for a ROS-based virtual vehicle development Simulates the missing
environment Provides the required flexibility for
typical system and test designs Straightforward data exchange
between CarMaker and ROS
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Autonomous software stackCarMaker environment
Possible Architecture for Automated DrivingClosed loop for automated driving function testing
3927-Mar-18
CarMaker
Radar data processing
/ROS node
Camera data processing
/ROS node
Sensor data fusion
/ROS node
Decision making
/ROS node
Trajectory planning
/ROS nodeMap data
processing
/ROS node
Radar data
Camera dataRoad data
Environment model
Desiredmaneuver
Processedsensor data
Processedsensor data
Processedsensor data
/ROS node
Control signal generation
/ROS node
Planned trajectory
Control signals
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Autonomous software stack
CarMaker environment
Possible Architecture for Automated DrivingClosed loop for automated driving function testing
4027-Mar-18
Radar data processing
/ROS node
Camera data processing
/ROS node
Sensor data fusion
/ROS node
Decision making
/ROS node
Trajectory planning
/ROS node
Control signal generation
/ROS nodeMap data
processing
/ROS node
CarMaker
Radar data
Camera dataRoad data
Control signals
Environment model
Desiredmaneuver
Planned trajectory
Processedsensor data
Processedsensor data
Processedsensor data
/ROS node
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Autonomous software stack
CarMaker environment
Demo Architecture for ACC ControlClosed loop for ADAS function testing
4127-Mar-18
ACC control algorithm
/ROS node
CarMaker
/ROS node
Object sensor data
+vehicle data
Control signals
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
4227-Mar-18
LIVE DEMO CarMaker & ROSProof of Concept
Episode 4: High-Performance Computing
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Parallelization Analysis
4427-Mar-18
Evenly distributed atomic units
Constant model complexity
Medium serialization share
Purpose driven fidelity – variable model complexity
Uneven model split
High serialization share
Single-domain Multi-domain
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
The Challenge of Speeding Up the SimulationAccording to Amdahl's law
4527-Mar-18
Number of cores0 4 16 32 64 128 256 512 1024
𝜂𝜂s= 𝑇𝑇/(𝑡𝑡𝑡𝑡 + 𝑡𝑡𝑡𝑡 + 𝑡𝑡𝑡𝑡/𝑛𝑛𝑡𝑡)
220
2
00
Parallel portion50%95%
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Parallelization on TestRun Level
4627-Mar-18
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Parallelization on TestRun Level
4727-Mar-18
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
The SolutionAccording to Amdahl's and Gustafson‘s law
4827-Mar-18
Number of cores
Acc
eler
atio
nfa
ctor
0 4 16 32 64 128 256 512 1024
𝜂𝜂s= 𝑇𝑇/(𝑡𝑡𝑡𝑡 + 𝑡𝑡𝑡𝑡 + 𝑡𝑡𝑡𝑡/𝑛𝑛𝑡𝑡)
220
2
00
Parallel portion50%95%
99,5%
𝜂𝜂s= 1 − 𝑡𝑡𝑡𝑡 + 𝑛𝑛𝑡𝑡 ∗ 𝑡𝑡𝑡𝑡
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
HPC Classes
4927-Mar-18
Number of cores
few many
Test
Man
ager
HPC
con
fig
HPC light
HPC withscheduler
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
ok
okHPC Light
5027-Mar-18
okok
ok
Spec
ifica
tions
Scheduler
HPC Scalability
DedicatedHardware
Scheduling
HPC Light
Embedded in CarMakerTest Manager
1 node< 100 cores
Single PC, multi-core
No special implementationResiliency
Limitation of parallel processes
Health Checks Process monitoring (tbi)
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
5127-Mar-18
LIVE DEMO HPC Light
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
???okok
???okok
Re-Use Your Company InfrastructureHPC with scheduler
5227-Mar-18
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
HPC with Scheduler
5327-Mar-18
okok
Spec
ifica
tions
Scheduler
HPC Scalability
Dedicated Hardware
Scheduling
HPC
With external scheduler(e.g. PBS professional)
beyond 50,000 nodesmillions of cores
Clusters, clouds, and supercomputers
Includes automatic fail-over architecture with no single point of failureResiliency
Balancing job turnaround time and utilization with optimal job placement
Health Checks
Monitors and automatically mitigates faults with a comprehensive health check framework
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
HILOffice
HILOffice
HILOffice
Remote control
Simulation backend
IPGMovie, IPGControl, Instruments
Test ManagerTest Configurator
Vehicle GUI with encryption
Maneuver, road, traffic, driver GUIs
FMI, SL plugins
Main GUI, APOSDK with C-interfaceCarMaker for Simulink
5427-Mar-18
Runtime Licenses
HIL
HIL
HIL
HIL
HIL
HIL
HIL
HIL
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
HILOffice
HILOffice
HILOffice
Integratemodels
NoGUI
Build scenarioswith road
networks and traffic
Create andencrypt virtual
prototypes
Create simulation
frameworks
Interactivelyrun
simulations
Create testcatalogs
Execute pre-defined
testcatalogs
Automation interface
5527-Mar-18
Runtime Licenses
HIL
HIL
HIL
HIL
HIL
HIL
HIL
HIL
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
Use Case ScenariosOffice simulations
5627-Mar-18
CarMaker/OfficeFull functionality
CarMaker/Office OperateFor interactive operation by humans
CarMaker/Office RuntimeFor automatic execution
Simulation framework established Third-Party Software
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
CarMaker/HIL OperateFor interactive operation by humans
CarMaker/HIL RuntimeFor automatic execution
Use Case ScenariosHIL simulations
5727-Mar-18
CarMaker/HILFull functionality Simulation framework established
HIL HIL HIL
HIL HIL HIL HIL
Third-Party Software
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
HPC ApplicationsJust the first ideas
5827-Mar-18
Oth
er D
omai
ns Identify the best vehicle dynamics setup
Calibrate and analyze emissions and energy consumption with design of experiments (DoE)
AD
AS
& A
D
Use HPC to test millions of test kilometers in simulation using test automation
Continuous integration - Robustness checks of daily builds
Stochastic vs. deterministic traffic simulation - Simulate the unexpected
Generate simulation data to train neural networks
SESSION 1 – Automotive Systems Engineering© IPG Automotive GmbH, 2018
IPGDriver – Lane Change Optimization
5927-Mar-18
IPGDriver is now able to identify a driving strategy for the fastest ride in double lane change and soon in slalom maneuvers