28
V1.1 | 2016-11-28 Automotive Ethernet Symposium 2017 Simulating Service-Oriented Architectures with CANoe’s Function Bus

Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

V1.1 | 2016-11-28

Automotive Ethernet Symposium 2017

Simulating Service-Oriented Architectures with CANoe’s Function Bus

Page 2: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

2

Automotive Industry Trends

SoA Middleware Requirements

The CANoe Function Bus

Test Concepts

Summary

Agenda

Page 3: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

3

Mega Trends Automotive Industry Trends

Major Changes in E/E Architecture

Automated Driving

Different sensor types On/off-board

information fusion Complex algorithms

security is a must fail operational needed

Electrification

Efficiency Start-stop, sailing, ... Hybrid Battery Electric Vehicle Multi voltage

broad range of solutions standards needed

Connectivity (IoT)

Infotainment V2X Cloud services OTA update & diagnostics

always on new business models

Page 4: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

4

Embedded Software becomes Software Automotive Industry Trends

ADAS Autonomous Driving

Connected Car Car-to-X

Technology Drivers

Implications

Service

Service

Service

Service

Platform

Communication

Topology

Test focus

AUTOSAR/OSEK

Signal flow

Static

Device

AUTOSAR Adaptive, Linux et al.

SoA, complex data

Dynamic

Function

Page 5: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

5

It‘s all about middleware Automotive Industry Trends

AUTOSAR Basic Approach

© AUTOSAR.org

AUTOSAR the Next Generation – The Adaptive Platform, Simon Fürst, ARS@EDCC 2015

viwi https://www.w3.org/Submission/2016/01/

http://open-services.net/specifications/

Page 6: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

6

Automotive Industry Trends

SoA Middleware Requirements

The CANoe Function Bus

Test Concepts

Summary

Agenda

Page 7: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

7

Asynchronous Remote Procedure Calls SoA Middleware Requirements

Client

GetItem(12)

Middleware Middleware Server

GetItem(12)

Return(42)

ECU ECU

Ethernet cable

Page 8: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

8

Services are a composition of Methods (RPCs) Events (Notifications) Fields (Events with getter/setter methods)

Announce availability and location of services

Publish/subscribe model for events

Dynamic approach to communication Service discovery Activate/deactivate communication paths Intelligent usage of uni-, multi-, broadcast Service content is statically defined

Save bandwidth and computing resources

Easy relocation of services

SOME/IP SoA Middleware Requirements

Offer service

Subscribe eventgroup

Notifications

Call method

Method result

Client Server

Page 9: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

9

Web Services Higher layer than SOME/IP: Built on top of HTTP Representational State Transfer (REST) paradigm Example: Volkswagen Infotainment Web Interface (viwi)

CAN FD: CAN with Flexible Data Rate Bigger datagrams Higher data rate Dynamic payload

Beyond SOME/IP SoA Middleware Requirements

GET /car/doors/ HTTP/1.1 … HTTP/1.1 200 OK … { "status": "ok", "data": [ { "name": "FrontLeft", "uri": "/car/doors/3901a278-ba17-44d6-9aef" }, { "name": "FrontRight", "uri": "/car/doors/8901870-b526-11e3-a5e2" } ] }

Page 10: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

12

Prototyping and Integration SoA Middleware Requirements

Real ECU

Virtual ECU

Simulation node

CANoe

Page 11: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

13

Prototyping and Integration SoA Middleware Requirements

Real ECU

Virtual ECU

Simulation node

CANoe

Page 12: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

14

Prototyping and Integration SoA Middleware Requirements

Real ECU

Virtual ECU

Simulation node

CANoe

Page 13: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

15

Prototyping and Integration SoA Middleware Requirements

Real ECU

Virtual ECU

Simulation node

CANoe

Page 14: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

17

Converging point: Function Bus The CANoe Function Bus

Abstraction

client/server communication

Support services and their discovery

Address dynamic topologies

Easy switching between real and simulated components

SOME/IP <SoA>

AUTOSAR Adaptive

Virtual prototyping

AUTOSAR VFB

CANoe Function Bus

Page 15: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

18

Function Bus Molecules: Communication Objects The CANoe Function Bus

F5 F4

F2

F1

F3

F6

F7

Logical participant / Function

Endpoint

Any pair of endpoints may

…connect distinct physical devices, or

…share a MAC address on the same PHY, or

…share an IP address, or

…connect abstract simulation code.

Communication Object

Signal

PDU

RPC

Service Methods, Events,

Fields

(like SOME/IP)

Asynchronous remote procedure

call

Protocol Data Unit

Page 16: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

19

Communication Objects: Configuration The CANoe Function Bus

FrontLeftCAM

FrontRightCAM

RearCAM

HeadUnit

ParkAssist

M

Dyn. Clients * Dyn. Servers * System.arxml

Intelligent AUTOSAR (adaptive) import

vVIRTUALtarget

Interface Camera {

Operations:

GetCamStatus()

SetVideoFormat()

Events:

imageT NewFrame

}

Interface Definition Language / Editor

HeadUnit Virtual Target

ParkAssist Real

Simulated

Simulated

Real

FrontLeftCAM

FrontRightCAM

RearCAM

Page 17: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

20

Communication Object: Layers The CANoe Function Bus

App. API App. API

Binding block

Page 18: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

21

Communication Object: Layers The CANoe Function Bus

SOME/IP

TCP/UDP/IP

Ethernet

SOME/IP

TCP/UDP/IP

Ethernet

App. API App. API

Binding block

Page 19: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

22

Communication Object: Layers The CANoe Function Bus

Web Service

HTTP/TCP/IP

Ethernet

Web Service

HTTP/TCP/IP

Ethernet

App. API App. API

Binding block

Page 20: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

23

Communication Object in Real Environment I The CANoe Function Bus

SOME/IP

TCP/UDP/IP

Ethernet

SOME/IP

TCP/UDP/IP

Ethernet

App. API App. API

Sim. node

Binding block configured

ECU

Page 21: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

24

Communication Object in Real Environment II The CANoe Function Bus

SOME/IP

TCP/UDP/IP

Ethernet

SOME/IP

TCP/UDP/IP

Ethernet

App. API App. API

Measurement

ECU ECU VN56xx

Page 22: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

25

Communication Object in Simulated Environment The CANoe Function Bus

SOME/IP

TCP/UDP/IP

Ethernet

SOME/IP

TCP/UDP/IP

Ethernet

App. API App. API

Sim. node A

Abstract transmission

No need to configure those

layers

Abstract timing behaviour by transmission

models

Virtual ECU

Page 23: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

26

Automotive Industry Trends

SoA Middleware Requirements

The CANoe Function Bus

Test Concepts

Summary

Agenda

Page 24: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

27

CANoe

Function Bus

IL SD

SOME/IP

TCP/UDP/IP

Testing: Choosing the right layer Test Concepts

Bus

send(msg1)

on msg2 {

}

Test

Bus

Application

IL NM

TP

SUT (real or virtual)

Test

$sig1 = 1;

On sig2 {…}

IL NM

TP

Eth

Application

SUT (real or virtual)

Test

SetStatus(42)

IL SD

TCP/UDP/IP

SOME/IP

Classic domain: PDUs and signals Service-oriented Architecture domain

Application

SUT (virtual only)

Test

@sig1 = 1;

On sig2 {…}

CANoe System variables

Application

SUT (virtual only)

Test

SetStatus(42) Re-use

SUT (real or virtual)

Abstract

Page 25: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

28

Test Side: Programming Examples Test Concepts

on key 'f' { CAM[HeadUnit,FrontLeftCam] .GetCamStatus.CallAsync(); } on called CAM[HeadUnit,FrontLeftCam] .GetCamStatus { this.status = CAM_RECORDING; this.return = 1; } on returned CAM[HeadUnit,FrontLeftCam].GetCamStatus { //… } testcase X { TestWaitForCall(…); …LatestCall.Result = 1; …LatestCall.Return(); TestWaitForReply(…); }

CAPL C# Answering Machine

public override void Start()

{

var cam = new CAM();

cam.SetConsumer(HeadUnit);

cam.SetProvider(FrontLeftCAM);

cam.CallAsync((result) => {

Output.WriteLine(“returned”);

});

}

[OnCall(typeof(CAM.GetStatus))]

void OnGetStatus(CAM.GetStatus.CC cc)

{

Execution.Wait(100);

cc.Return(1);

}

Page 26: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

29

APIs for Testing SoA Applications Test Concepts

Service Discovery Abstraction of SOME/IP SD

Configurable automatic offers

Observable discovery states

New wait functions Await service being discovered

Await function call on server side

Await function return on client side

Await event subscription

Service Mockup Answering Machine

Configurable automatic answers

Dynamic endpoints

New handlers On service discovered

On function called

On function returned

On event subscribed

Page 27: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

30

Core functionality for vVIRTUALtarget integration and SOME/IP simulation/modeling

available starting with CANoe 10.0 (Mid 2017)

Conclusion Summary

E/E architectures keep on changing

All major OEMs design service-oriented architectures

CANoe function bus key concepts: Providing a simulation backbone for all relevant communication paradigms Supporting virtual and real integration of SoA Prototyping and integration of classic (signal-based) systems Simplifying test cases by providing the right level of abstraction

Page 28: Simulating Service-Oriented Architectures with CANoe’s ...€¦ · Simulating Service- Oriented Architectures with CANoe’s Function Bus . 2 Automotive Industry Trends . SoA Middleware

31 © 2016. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V0.1 | 2016-11-17

For more information about Vector and our products please visit www.vector.com

Author: Köllner, Christian Vector Germany