Top Banner
V2.0 | 2018-12-05 Introduction to different Interfaces, Technologies and APIs CANoe as Open Environment
35

CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

Mar 28, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

V2.0 | 2018-12-05

Introduction to different Interfaces, Technologies and APIs

CANoe as Open Environment

Page 2: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

2

1. Current Tool Landscape

2. What CANoe Can Do

3. Interfaces

4. Conclusion

Agenda

Page 3: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

3

Motivation

Current Tool Landscape

SUT

Tool 1HIL/RBS

Tool 5Autom.

Test

Tool 2Env Mdl

Tool 3Dynamic

Mdl

AIO/DIO

CAN, LIN, FlexRay, Most, Ethernet, …

n

???

Tool 4ADAS, virt

driving

?

Page 4: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

4

Motivation

Current Tool Landscape

Many different specialized tools involved – one for each domain

Tools have to interact with each other

Often done with homegrown solutions> Drawback

> Large effort to maintain compatibility over several versions

> Project specific – low reuse

Thus using already available interfaces is obvious

Page 5: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

5

1. Current Tool Landscape

2. What CANoe Can Do

3. Interfaces

4. Conclusion

Agenda

Page 6: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

6

Application/Simulation Related

What CANoe Can Do

SUT

Tool 1HIL/RBS

Tool 2Env Mdl

Tool 3Dynamic

Mdl

AIO/DIO

CAN, LIN, FlexRay, Most, Ethernet, …

n

Most Common modeling tool is Matlab/Simulink

CANoe provides a Matlab/Simulink Interface

More generic approach: FMI (Functional-Mockup-Interface)

CANoe can load and integrate FMUs

Vector specific: FDX

UDP based and thus commonly available

Tool 4ADAS, virt

driving

Page 7: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

7

Automated Testing

What CANoe Can Do

SUT

Tool 1HIL/RBS

Tool 5Autom.

Test

CAN, LIN, FlexRay, Most, Ethernet, …

n

ASAM XiL API

Standardized interface

COM

Standardized interface from Microsoft

Only suitable to setup/control test

Vector specific: FDX

UDP based and thus commonly available

Also for high performance date exchange

National Instruments

LabVIEW - Shared Network Variables

Page 8: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

8

1. Current Tool Landscape

2. What CANoe Can Do

3. Interfaces

4. Conclusion

Agenda

Page 9: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

9

Matlab/Simulink Interface

Interfaces

Application Model in MATLAB

physical bus simulated bus

Application Model in CAPL

real

node

ApplicationMATLAB/Simulink/Stateflow

IL NM

TPCANoe

Application CAPL

IL NM

TPCANoe

CANoe

IL NM

TP CANoe

CANoe

Application CAPL

IL: Interaction Layer

NM: Network Management

TP: Transport Protocol

on timer tMoveDownTimer

{

if(gPosWN < 15 && gMoveDown == gTrue)

{

gPosWN++;

$DOOR_l::WN_Position = gPosWN;

}

}

Page 10: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

10

Matlab/Simulink Interface

Interfaces

Provide the environment for a SUT in a compiled MATLAB model

Stimulation of sensors/actuators from model outputs/inputs

Utilizing e.g. CANoe RT for deterministic timing behavior

CANoe

SUT(System Under Test)

Signal Output

(Bus Access)

Actuator Output

(I/O)

Signal Input

(Bus Access)

Sensor Input

(I/O)

Remaining Bus

and Application or

Environment/Vehicle

Model

SW Stimulation(System Variables)

SW Reaction(System Variables)

Page 11: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

11

Idea: Define an interface for integrating models of different types (mechanical, electrical, …) and vendors and make them available to different simulation platforms without disclosing IP

FMI for model exchange

FMI for co-simulation

FMI (Functional Mockup Interface)

Interfaces

Tool

FMU

Solver

Model

Solver

FMU

Model

Tool

Functional Mockup Interface for model exchange and tool coupling

Tool

Solver

Tool

Page 12: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

12

FMU Import

Interfaces

Page 13: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

13

FMU Export

Interfaces

Page 14: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

14

UDP based link – therefore generally available

FDX (Fast Data eXchange) is a protocol for simple, fast, real-time exchange of data between CANoe and other systems via an Ethernet connection. The protocol enables other systems read and write access to CANoe system variables, environment variables and contents of bus messages

FDX

Interfaces

PC HiL System1

Windows UDP/IP stackCANoe FDX client2UDP/IP

stack

XML

Data Description

UDP

Ethernet

1Running on any OS

2Written in any programming language

FDX protocol is easy to use

UDP is available on almost every system

Customer can implement specific solutions on his own

Page 15: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

15

FDX

Interfaces

The type of data can be any typical integer or floating point type, scalar or array and even string

Data elements are sent and received in groups

Page 16: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

16

FDX

Interfaces

Page 17: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

17

FDX Editor

Interfaces

Layout view

Configured Symbols in a data group

Data groups

HIL Symbols(optional)

Symbol Selection

Page 18: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

18

FDX – Configuration in CANoe with XML

Interfaces

Page 19: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

19

FDX – Implementation on Client Side with any Programming Language

Interfaces

Page 20: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

20

ASAM XiL API

Interfaces

Test Automation Tool

Test Case

XIL Ports

Model Access Port

Test Bench

XIL Framework(optional) Mapping

NetworkPort

DiagPort

EESPort

ECUMPort

ECUCPort

HIL Hardware / Offline Simulation

XIL API

Page 21: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

21

ASAM XiL API – Usage scenarios

Interfaces

Scenario 1:

CANoe as Server

Scenario 2:

CANoe as Client

vTESTstudio

3rd Party Test Bench

CANoe

CANoe

3rd Party Test Automation Tool

Test Cases

XIL APIXIL API

Test CasesTest Cases

Test CasesTest CasesTest Cases

Page 22: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

22

ASAM XiL API – CANoe as Server

Interfaces

Scenario 1:

CANoe as Server

vTESTstudio

3rd Party Test Bench

CANoe

CANoe

3rd Party Test Automation Tool

Test Cases

XIL APIXIL API

Test CasesTest Cases

Test Cases

Page 23: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

23

XIL API – CANoe as Server

Interfaces

Page 24: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

24

ASAM XiL API – Usage scenarios

Interfaces

Scenario 2:

CANoe as Client

vTESTstudio

3rd Party Test Bench

CANoe

CANoe

3rd Party Test Automation Tool

XIL APIXIL API

Test CasesTest CasesTest CasesTest Cases

Page 25: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

25

XIL API – CANoe as Client

Interfaces

Page 26: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

26

ASAM XiL API – Supported ports

Interfaces

Model AccessPort

Largely supported Partly supported Not supported

Generators

Capturing

Variable Access Diag Port

EESPort

ECUM Port

ECUC Port

Network Port

Short Circuit Errors

Static Timing

Interruption Errors

Dynamic Timing

Pin to Pin Errors

Resistor Errors

Loose Contact Timing

Generators

Variable Access

Page 27: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

27

LabVIEW Shared Network Variables

Interfaces

NI Real Time Rack

GUI PC

RT PC

LabWindows

CVI Runtime

LabVIEW VI

LabWindows

CVI Runtime

configuration

data exchange

CANoe GUI

CANoe RT

Interface to LabVIEW

Realization: Usage of the Shared Network variable API of LabVIEW

Measurement signal configuration in CANoe via GUI

Fully automated generation of required system variables

Page 28: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

28

LabVIEW Shared Variables

Interfaces

Page 29: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

29

COM

Interfaces

CANoe provides a COM server with numerous object to

Remote control CANoe, e.g. start and stop the measurement

Build up/modify configuration dynamically

COM server is not suitable for exchanging simulation data in an online setup

Page 30: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

30

Microsoft COM

Interfaces

Page 31: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

31

1. Current Tool Landscape

2. What CANoe Can Do

3. Interfaces

4. Conclusion

Agenda

Page 32: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

32

Conclusion

The “oe” in CANoe means “Open Environment”

Many available interfaces are already supported

Page 33: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

33

Available Interfaces

Conclusion

SUT

CANoeHIL/RBS

Tool 5Autom.

Test

Tool 2Env. Mdl.

Tool 3Dynamic

Mdl.

AIO/DIO

CAN, LIN, FlexRay, Most, Ethernet, …

n

Tool 4ADAS, virt.

driving

ASAM XIL API, FDX, COM

Matlab Interface, FMI FMI, FDX

Page 34: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

34

Design (models, test scripts, …)

HW

Open Environment by APIs

Conclusion

Vector Tools

Test Design

vTESTstudio

Simulation Model

CANoe

Additional Models

Test Management

Requirements Test Cases Test Planning Test Result Analysis

FDX

Other 3rd party tools

Traceability Matrix XML Report

VT System

Direct Integration

Vector Network

Interfaces

.NET DLL

SUT

FMI/FMU IPG

CarMakerFM

I

DLL

TESIS

DYNA4

DLL

Other 3rd-party HIL System

ASAM XIL API

XIL API

Matlab/Simulink Integration

Matlab

Shared Network Variables

NI

LabVIEW

Trace Items

FDX

.NET DLL

ReqIF

ReqIF Exp.

Page 35: CANoe as Open Environment - Vector · LabWindows CVI Runtime LabVIEW VI LabWindows CVI Runtime configuration data exchange CANoe GUI CANoe RT Interface to LabVIEW Realization: Usage

35 © 2015. Vector Informatik GmbH. All rights reserved. Any distribution or copying is subject to prior written approval by Vector. V2.0 | 2018-12-05

Author:Neuffer, JochenVector Germany

For more information about Vectorand our products please visit

www.vector.com