Designing a software framework for automated driving · Automated Valet Parking & inner-city...

17
Designing a software framework for automated driving Dr.-Ing. Sebastian Ohl, 2017 October 12 th

Transcript of Designing a software framework for automated driving · Automated Valet Parking & inner-city...

Page 1: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

Designing a software framework for automated driving

Dr.-Ing. Sebastian Ohl, 2017 October 12th

Page 2: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 3: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 4: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 5: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 6: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 7: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 8: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 9: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 10: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 11: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 12: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 13: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 14: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 15: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 16: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

© 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

Page 17: Designing a software framework for automated driving · Automated Valet Parking & inner-city Driving Highway Driving Embedded Valet Parking •Lidar, ultra sonic, and 360° camera

www.elektrobit.com www.eb-robinos.com

[email protected]

Get in touch!