Post on 10-Apr-2020
Designing a software framework for automated driving
Dr.-Ing. Sebastian Ohl, 2017 October 12th
© Elektrobit (EB) 2017 | Confidential
Challenges
Designing a software framework for automated driving
2
• Functional software architecture with open interfaces and a set of well-defined software components for automated driving systems up to SAE level 5
• Seamless cooperation and combination of automotive soft- and hardware
• Highly automated driving software from prototyping to embedded/serial use
Complexity
Functionality
Components & Interactions
© Elektrobit (EB) 2017 | Confidential
Trajectory Control
Longitudinal Control
Lateral Control
Positioning
Object Fusion
Grid Fusion
Behavior
Road and Lane Fusion
Vehicle Database
Fun
ctio
n S
pe
cifi
c V
iew
s
Ve
hic
le A
bst
ract
ion
- S
en
sors
Ve
hic
le A
bst
ract
ion
- A
ctu
ato
rs Motion
Management
Safety Management
Behavior
Behavior
Situative Behavior Arbitration Sensor Data Fusion
HMI Management
Situation Analysis
Situation Analysis
Situation Analysis
Path Planning
Path Planning
Path Planning
Designing a software framework for automated driving
3
Key features: • Architecture for ADAS up to SAE level 5 • Runs on AUTOSAR • Central ECU as well as distributed
systems • Incorporates existing or new, customer
or third party subsystems
EB robinos: EB‘s Autonomous Driving Software
© Elektrobit (EB) 2017 | Confidential
Trajectory Control
Longitudinal Control
Lateral Control
Positioning
Object Fusion
Grid Fusion
Behavior
Road and Lane Fusion
Vehicle Database
Fun
ctio
n S
pe
cifi
c V
iew
s
Veh
icle
Ab
stra
ctio
n -
Se
nso
rs
Veh
icle
Ab
stra
ctio
n -
Act
uat
ors
Motion Management
Safety Management
Behavior
Behavior
Situative Behavior Arbitration Sensor
Data Fusion
HMI Management
Situation Analysis
Situation Analysis
Situation Analysis
Path Planning
Path Planning
Path Planning
Veh
icle
Ab
stra
ctio
n -
Act
uat
ors
A modular, extensive framework for automated driving
Designing a software framework for automated driving
4
Integrated safety concept • system health monitoring and diagnosis • safe-state triggering • option: redundant environment model • option: redundancy functions (e.g.
minimal risk manoeuvers)
Environment modeling and interpretation • vehicle localization in relative and absolute coordinates • environment model – objects, free space, roads, lanes, intersections, signs • interpretation of typical scenarios, recognition of atypical scenarios
Interfaces for • interoceptive sensors: wheel ticks, steering angle, accelerometers/gyros • „smart“ environment sensors – point clouds, object lists • ADASIS for map, SENSORIS for cloud
Extensible function framework • rule-based coordination of functions • clear upgrade path from NCAP to HAD by adding functions • complex behavior emerges from coordinated elementary behavior • guaranteed testability / verifyability
Coordination of vehicle control and HMI • braking, steering, or full trajectory control • safe communication of vehicle state • safe hand-over / take-over management
Interfaces for • kinematic vehicle
components • instrument cluster • infotainment display
Veh
icle
Ab
stra
ctio
n -
Se
nso
rs
Behavior
Behavior
Behavior
Situative Behavior Arbitration
Situation Analysis
Situation Analysis
Situation Analysis
Path Planning
Path Planning
Path Planning
Positioning
Object Fusion
Grid Fusion
Road and Lane Fusion
Vehicle Database
Sensor
Data Fusion
Fun
ctio
n S
pe
cifi
c V
iew
s
Trajectory Control
Longitudinal Control
Lateral Control
Motion Management
HMI Management
Trajectory Control
Longitudinal Control
Lateral Control
Motion Management
HMI Management
Safety Management
© Elektrobit (EB) 2017 | Confidential
A modular framework
Designing a software framework for automated driving
Map onto concrete ECU architecture
Ensure differentiation, shorten time to market
EB modules 3rd-party modules Your modules
Upgrade across models / Upgrade over time
NCAP
HAD
© Elektrobit (EB) 2017 | Confidential
Designing a software framework for automated driving
Different Test Vehicles Running the Same Software Automated Valet Parking & inner-city Driving
Highway Driving Embedded Valet Parking
• Lidar, ultra sonic, and 360° camera sensors
• High performance computer
• Additional actuators for steering & pedals
• High precision IMU
• Lidar, camera, and radar sensors
• High performance computer
• Additional actuators for steering & pedals
• High precision GPS
• Lidar and radar sensors
• Embedded computing platform
• Using OEM interfaces to actuators
• Low precision IMU
© Elektrobit (EB) 2017 | Confidential
Different Development Stages
7
EB robinos
EB Assist ADTF Middleware
Designing a software framework for automated driving
Rapid prototyping
C, C++, Model based
Rapid embedding
C, C++
Automotive grade software
ECU Evaluation hardware PC
EB Adaptive AUTOSAR Embedded Linux Middleware
© Elektrobit (EB) 2017 | Confidential
A Runtime Environment for EB robinos
Designing a software framework for automated driving
8
Communication
• Sending Data
• Receiving Data
• Call Interfaces
• Inter- & Intra ECU
Runtime triggering
• Trigger a function cyclically
• Trigger a function on events
System Assembly
• Combine different components
• Describe communication channels
High Performance ECU Characteristics
• High computation power with heterogeneous computing
• Hardware virtualization
• Widespread, POSIX-like Operating System (e.g. Linux)
• Extensive update capabilities
• Interfacing with common in-vehicle bus systems
© Elektrobit (EB) 2017 | Confidential
Designing a software framework for automated driving
Classic AUTOSAR • Mass production grade ECU basic software • Widely used for 32-Bit controllers • Provides Sender/Receiver as well as client/server
communication • Various bus systems supported • System assembly by AUTOSR system architecture tool
Adaptive AUTOSAR • Upcoming standard for high performance ECUs • Service orientated communication (via some/IP) • Dynamic scheduling of applications
Embedded Linux • Much more suitable for high performance computing
systems • Inter-Application communication via some/IP and
MessageBus protocol • Intra-application communication via C++ calls • System assembly directly in C++ code
9
Different Run-time Platforms
EB Assist ADTF • Rapid Prototyping Framework • Supports Sender/Receiver communication via Pins • Call interfaces are supported by ADTF services • Provides MessageBus for Inter-ECU communication • Configuration Editor for system assembly
© Elektrobit (EB) 2017 | Confidential
AUTOSAR OS
Adaptive AUTOSAR
Application Application
ECU
Classic AUTOSAR
Automotive-grade Hypervisor
Adaptive AUTOSAR
POSIX OS POSIX OS
Core Core Core Core Core Core
Classic AUTOSAR
App
MCU
AUTOSAR OS
Core Core
MCU
adaptive classic
ECU
Software Configuration
Management Security Management
Diagnostics
Bootloader
Operating system
Execution
Management
Persistency
Platform Health
Management Logging and Tracing Hardware Acceleration
Time Management
Application Application Application Application
Communication
Management
Linux
Hypervisor
Designing a software framework for automated driving
Adaptive AUTOSAR Characteristics Key Features & Benefits
10
EB Adaptive AUTOSAR
• Software Development Kit for construction, qualification and deployment of adaptive applications for high performance controllers
• Offers service-oriented architecture and communication
• Support integration with multiple variants of POSIX-Like Operating Systems (e.g. Linux, QNX, …)
• Enables OEMs and TIER1s to reload software functionality at runtime
• Designed for major market trends like E-Mobility, Automated Driving and Mobility Services
• Complementing standard, neither replacing classic AUTOSAR nor replaces proven implementations
• Standardized methodology
• Specifying API’s and functional requirements only
© Elektrobit (EB) 2017 | Confidential
EB robinos Grid Fusion Processing Online Data
Designing a software framework for automated driving
• Grid: 160x160 cells covering 1x1cm
• Sensor: Hokuyo UST-10LX LIDAR at 40 Hz
• Board: NVIDIA Jetson TX1 (same processor as the Nvidia DrivePX 1)
• Runtime Environment: EB tresos Solution for AD
• The demo shows the grid processing online data from the LIDAR sensor. During the demo obstacles are introduced and moved. This results in changes in the grid fusion’s visualization.
11
Black: unkown cells Green: free cells Red: occupied cells
Grid on AUTOSAR
© Elektrobit (EB) 2017 | Confidential
EB robinos Path Planning Processing Recorded Data
Designing a software framework for automated driving
• Sensor: IBEO Lux Gen4 at 12.5Hz
• Board: Intel based PC
• Runtime Environment: EB Assist ADTF
• The demo shows EB robinos Path Planning running on EB Assist ADTF. It is taking local sensors as well as map data into account. Moreover, the path is adapted according to local traffic participants. The motion model is restricted according to traffic rules and vehicle speed.
12
Path Planning on ADTF
© Elektrobit (EB) 2017 | Confidential
EB robinos Processing Recorded Data
Designing a software framework for automated driving
• Sensor: IBEO Lux Gen4 at 12.5Hz
• Board: NVIDIA Drive PX2
• Runtime Environment: EB robinos Linux Environment
• The demo shows grid processing and inner-city path planning running on a NVIDIA DrivePX 2 hardware. All processing and visualization is running on the embedded platform.
13
PathPlanning + Grid on Nvidia DrivePX 2
© Elektrobit (EB) 2017 | Confidential
EB robinos for Embedded Linux on NVIDIA DrivePX
Designing a software framework for automated driving
• Ready to use HAD software modules
• Different show cases possible (e.g. Valet Parking or people mover)
• Running as pure Linux applications
• Packaged modules (Oct 2017)
EB robinos Grid Fusion
EB robinos Path Planning
EB robinos Cross Product components
14
© Elektrobit (EB) 2017 | Confidential
EB robinos software components can be used to automatize parking applications from simple maneuvers up to complete autonomous systems navigating on big parking lots.
• Valet Parking as SAE Level 5 function • Usable on private property
(depending on local laws)
• Assisted parking for complex situations • Garage parking
EB robinos - Software modules • for prototyping: EB Assist ADTF • for rapid embedding: (adaptive) AUTOSAR or embedded Linux • for production: on vehicle ECU
15
Solution
Key Message
EB’s added value
Designing a software framework for automated driving
Trajectory Control
Longitudinal Control
Lateral Control
Positioning
Object Fusion
Grid Fusion
Road and Lane Fusion
Vehicle Database
Fun
ctio
n S
pe
cifi
c V
iew
s
Ve
hic
le A
bst
ract
ion
- S
en
sors
Ve
hic
le A
bst
ract
ion
- A
ctu
ato
rs Motion
Management
Safety Management
Situative Behavior Arbitration Sensor Data Fusion
HMI Management
Situation Analysis
Situation Analysis
Situation Analysis
Path Planning
Path Planning
Path Planning
Valet Parking
Automated Valet Parking with EB robinos
© Elektrobit (EB) 2017 | Confidential
Highway Pilot with EB robinos is providing software modules to bring EB robinos to the highway.
• Highly Automated Driving on highways, 0-120 km/h • free driving and vehicle following • lane keeping • automated lane change
• Automatically detect of system failures and limits • React to failures / limits with appropriate safety maneuvers.
• Use EB robinos software framework and standard interfaces • Support a wide variety of sensors, actuators, and ECUs • Easy integration into customer E/E architecture
16
Solution
Key Message
EB’s added value
Designing a software framework for automated driving
Trajectory Control
Longitudinal Control
Lateral Control
Positioning
Object Fusion
Grid Fusion
Road and Lane Fusion
Vehicle Database
Fun
ctio
n S
pe
cifi
c V
iew
s
Ve
hic
le A
bst
ract
ion
- S
en
sors
Ve
hic
le A
bst
ract
ion
- A
ctu
ato
rs Motion
Management
Safety Management
Situative Behavior Arbitration Sensor Data Fusion
HMI Management
Situation Analysis
Situation Analysis
Situation Analysis
Path Planning
Path Planning
Path Planning
Lane Change
Lane Keeping
ACC
Highway Pilot with EB robinos
www.elektrobit.com www.eb-robinos.com
sebastian.ohl@elektrobit.com
Get in touch!