21.08.2014 | 1

20
16.06.22 | 1 Hier steht die Fußzeile 16.06.22 | 1 Hier steht die Fußzeile Testing distributed C2X systems with TTCN-3 Jürgen Großmann Fraunhofer FOKUS Kaiserin-Augusta-Allee 31 10589 Berlin Tel: +49-30-3463-7390 Email: [email protected] Ilja Radusch, Carsten Neumann, Andreas Hinnerichs (Fraunhofer FOKUS), Stephan Pietsch, Bogdan Stanca-Kaposta (Testing Technologies IST GmbH) TTCN-3 User Conference 2011 7 – 9 June 2011 - Bled, Slovenia

Upload: gerda

Post on 01-Feb-2016

46 views

Category:

Documents


4 download

DESCRIPTION

Testing distributed C2X systems with TTCN-3. Jürgen Großmann Fraunhofer FOKUS Kaiserin-Augusta-Allee 31 10589 Berlin Tel: +49-30-3463-7390 Email: [email protected] Ilja Radusch, Carsten Neumann, Andreas Hinnerichs (Fraunhofer FOKUS), - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 21.08.2014  |  1

22.04.23 | 1 Hier steht die Fußzeile22.04.23 | 1 Hier steht die Fußzeile

Testing distributed C2X systems with TTCN-3

Jürgen GroßmannFraunhofer FOKUSKaiserin-Augusta-Allee 3110589 BerlinTel: +49-30-3463-7390Email: [email protected]

Ilja Radusch, Carsten Neumann, Andreas Hinnerichs (Fraunhofer FOKUS), Stephan Pietsch, Bogdan Stanca-Kaposta (Testing Technologies IST GmbH)

TTCN-3 User Conference 20117 – 9 June 2011 - Bled, Slovenia

Page 2: 21.08.2014  |  1

V2X Systems safety, efficiency, comfort

• Different communication technologies- WiFi 802.11 b / g, 802.11 p

- UMTS / GPRS

- GPS / Galileo

• Distributed dynamic system

ICSICS

GPS/GalileoUMTS/GPRS

802.11 b/g and ITS G5

IRSIRS

ITS G5

IVS IVS

Testing distributed C2X applications – T3UC 201122.04.23 | 2

Page 3: 21.08.2014  |  1

22.04.23 | 3 Testing distributed C2X applications – T3UC 2011

The results presented here have been developed as part of the project simTD. The project simTD is funded by the Federal Ministries of

Economics and Technology (BMWi) and the Federal Ministries of Education and Research (BMBF) in Germany. The project is supported by the Federal

Ministry of Transport, Building and Urban Affairs.

Page 4: 21.08.2014  |  1

Characteristics of 802.11p

• Unicast: data transport service from a single node (source) to just a single node (target) by communicating directly or via multiple hops to geographical addresses.

• Topologically-scoped broadcast (TSB): data transport service from a single node (source) to all nodes in an ad-hoc network.

• Single-Hop Broadcast (SHB): special situation of the topological broadcast. Messages are distributed to the immediate neighbours and not redirected by multi-hop communications.

• Geographically-scoped broadcast (GBC): data transport service from a single node (source) to node in a specific geographical area.

22.04.23 | 4 Testing distributed C2X applications – T3UC 2011

Page 5: 21.08.2014  |  1

Fiel

d te

stFiel

d te

st

TTC

N-3

test

bed

TTC

N-3

test

bed

Systematic verification and validation of simTD systems

Specification

Design

Implementation

Module test

Integration test

System test

validation of the system: utility, efficiency, usability

verification of the system: efficiency, functionality,

availability

verification of simTD platform and features:functionality, robustness,

efficiency, reliability

Testing distributed C2X applications – T3UC 201122.04.23 | 5

Page 6: 21.08.2014  |  1

Challenges

• Providing Test for several levels of integration (software integration, software / hardware integration, system integration)

• Support for various types of testing (functional testing, protocol testing, robustness testing)

• Independent of proprietary interfaces and vehicle manufacturer’s technologies (test shall run on systems that are used by different vehicle manufacturers)

• Distributed test development in over 20 development teams

• Analysis of complex data and protocols (e.g. complex C2X messages)

• Continuous stimulation with vehicle data (e.g. velocity, position etc.)

• Distributed system with heterogeneous components

Testing distributed C2X applications – T3UC 201122.04.23 | 6

Page 7: 21.08.2014  |  1

Testing scope of the test bench

• Testing C2X scenarios in a laboratory environment- continuous integration- acceptance and regression testing

• Support for test automation

22.04.23 | 7

For example, obstacle avoidance

•Vehicle is stopped and sends obstacle avoidance messages•Verification that the following vehicles receive the messages and display the warning

Testing distributed C2X applications – T3UC 2011

Page 8: 21.08.2014  |  1

Realization of the test bed

22.04.23 | 8

template C2XMessage c2xMessage(in id := sid, payload := { protocolVersion := 1, actionID := 100, cancelationFlag := false, generationTime := {t, 0}, validityDuration := 100, referencePosition := {longitude := {isE, protocolMsg := pm } }

IRSIRS

IVSIVS

Test Control

HMI

IVSIVS

ICT LSS

For example, obstacle avoidance

•Vehicle is stopped and sends obstacle avoidance messages•Verification that the following vehicles receive the messages and display the warning

Testing distributed C2X applications – T3UC 2011

Page 9: 21.08.2014  |  1

The test bed in the FOKUS automotive laboratory

22.04.23 | 9 Hier steht die Fußzeile

Page 10: 21.08.2014  |  1

Architecture of the target hardware

22.04.23 | 10

Application Unit (AU)Application Unit (AU)

VAPIClient

VAPIClient

LDMLDM

C2X ApplicationsC2X Applications

COM ClientCOM Client

HMI ControllerHMI Controller

Communication Unit (CCU)Communication Unit (CCU)

VAPI*VAPI*WirelessManager

WirelessManager

GPSGPS

Router APIRouter API

CANCAN2G/3G2G/3G WLanWLan

SecuritySecurity

C2X ProtocolsC2X Protocols

LoggingAPI

LoggingAPI

Testing distributed C2X applications – T3UC 2011

* The Vehicle API (VAPI) is provided by Volkswagen

Page 11: 21.08.2014  |  1

Systematic testing approach (overview)

• Testing a single C2X application: The IVS system is stimulated using the Vehicle API (VAPI) with speed and position data that simulate a complete car ride. After about two seconds, the vehicle stopped and put the hazard lights on. It is verified if the system generates a suitable obstacle avoidance messages and if the message is sent.

• Testing of Distributed C2X applications on one IVS or more IVS or on an IVS and IRS: The system is stimulated with speed and position data for two vehicles using the VAPI of the respective IVS. Vehicle 1 drives on the highway at a constant speed, vehicle 2 will follow with 15 delay on the same route. Vehicle 2 reduces the vehicle speed to zero and sets the hazard lights. The expected behaviour, vehicle 1 sends an obstacle avoidance and vehicle 2 warns the driver

• Testing the protocol layer (802.11 p): The test of geographically-scoped broadcast communication is based on three IVS. All IVS will be stimulated with plausible vehicle data (e.g. constant speed and vehicle distance 300m). Using the communication interface of the vehicle 1 the test system sends a message (e.g. obstacle avoidance), which is addressed to a particular geographical area. It will be checked if the vehicle will receive the message when passing the area.

22.04.23 | 11 Testing distributed C2X applications – T3UC 2011

Page 12: 21.08.2014  |  1

Architecture of the test bed

• Tool-independent interface (TPAPI)

• Stimulating the system:- Traces: simulating the vehicle state and its change over time- C2X messages: selective triggering of events

• Automated evaluation of the system output:- Detection and analysis of incoming messages- Detection of HMI activities- Analysis of log messages

22.04.23 | 12

IRSIRS

IVS2IVS2

IVS1IVS1

VAPIVAPI

LDMLDMTCTC

Test-PCTest-PC

Test Executable(TTCN-3)

Test Executable(TTCN-3)

TP API

TP API

C2X ApplicationsC2X Applications

LoggingAPI

LoggingAPI

LogsLogs

COM COM

Another Testtool

Another Testtool

HMI ControllerHMI Controller

VehicleSpeed,150

SimulatorSimulator

Testing distributed C2X applications – T3UC 2011

Page 13: 21.08.2014  |  1

Why TTCN-3

• Standardized and used in the standardization of C2X protocols

• Established concepts with mature tool support:

- Test specification language with well-defined syntax and semantics (textual and graphical)

- Concepts to define and maintain heavily structured data and data patterns (TTCN-3 templates)

- Graphical logging

• High potential for test automation

• Extendable to provide a commonly used set of test function and a user friendly interface

- Coordinate and control the inputs for up to 5 different stations (IVS 3x and 2x IRS)

- Trace player to easily play trace data

- Access to the configuration interface of the simTD system

Testing distributed C2X applications – T3UC 201122.04.23 | 13

Page 14: 21.08.2014  |  1

Providing the vehicle state

22.04.23 | 14

AntiLockBrakeSystem, BrakeActuation, BrakingPressure, ClutchSwitchActuation, CruiseControlSystemState, CurrentGear, DirectionOfDriving, DoorPosition, ElectronicStabilityProgram, EngineSpeed, ExteriorTemperature, FogLight, FrontLights, FuelConsumption, GasConsumption, GearSelection, HazardWarningSystem, Horn, LateralAcceleration, LongitudinalAcceleration, ModelName, ModelType, Odometer, PanicBraking, PedalForce, RainIntensity, RearFogLight, SimTD_EmergencyLighting, SimTD_EmergencyResponseType, SimTD_FilteredPosition, SimTD_ImprovedLocating, SimTD_PublicTransportParameters, SimTD_PublicTransportState, SimTD_RawPosition, SimTD_Siren, SimTD_SpecialVehicleType, SimTD_TurnPrediction, SteeringWheelAngle, SteeringWheelAngularVelocity, TankLevel, TrackWidth, TripOdometer, TurnSignalLever, TurnSignalLights, VehicleDimensions, VehicleIdentificationNumber, VehicleSpeed, WheelBase, WiperSpeed, WiperSystem, YawVelocity;

<item> <date>24.06.2010 11:01:05.864</date><FuelConsumption><InstantaneousValuePerMilage>2.55</InstantaneousValuePerMilage><InstantaneousValuePerTime>0.74</InstantaneousValuePerTime><TotalValue>2.55</TotalValue></FuelConsumption><VehicleSpeed><VehicleSpeed>78.43</VehicleSpeed></VehicleSpeed><YawVelocity><YawVelocity>-1.18</YawVelocity></YawVelocity></item>

Testing distributed C2X applications – T3UC 2011

Page 15: 21.08.2014  |  1

C2X messages (CAM, DENM)

template Message hiwaMessage(int mID, PositionVector_TYPE originatorPos) := { type_ := "received", item := {type_ := 3, payloadLength := 15000}, sourceId := 306999566, messageId := mID, contentType := 31, contentSubType := 0, packetType := 3, transportOptions := {trafficClass := 0, priority := 0, repetitionInteval := 0, lifeTime := 41789530309280}, secOptions := {cryption := "NONE", signature_ := "NONE", plausibility := "NONE"}, destination := { type_ := "UNDEFINED", nodeId := 0, latitude1 := - 900000000, longitude1 := - 1800000000, latitude2 := - 900000000, longitude2 := - 1800000000, size := 0 }, originator := {originatorPosition := originatorPos, senderPosition := originatorPos, medium := "AUTO"}, C2XAppPayload := { protocolVersion := 0, actionID := 0, cancelationFlag := {bool := false}, generationTime := {timeStamp := 1282050379, milliSec := 72}, validityDuration := 604799, referencePosition := { longitude := 92371197, latitude := 490046194, elevation := 0, heading := omit, streetName := omit, positionConfidence := omit, elevationConfidence := omit, roadSegmentID := omit }, protocolMsg := { content := { decEnvNotification := { management := {reliability := 50, isNegation := {bool := false}, dataReference := omit}, event := { trafficFlowEffect := {effectCode := 3, tendency := omit, lengthAffected := omit, averageSpeedAbsolute := 500, delay := omit, segmentSpeedLimit := omit, prognosisTime := omit}, causeCode := 31, directCause := {severity := 2, subCause := 2, lengthEffected := 500, laneRestriction := 3, numberOfLanes := 1} }, taggedList := {content := {}}, location := { locationRef := { content := { trace := { referencePosition := { longitude := 92371197, latitude := 490046194, elevation := 0, heading := omit, streetName := omit, positionConfidence := omit, elevationConfidence := omit, roadSegmentID := omit }, approaches := { content := { {PositionList := {content := {{OffsetPosition2D := {longOffset := - 13166, latOffset := - 14775}}}}}, {PositionList := {content := {{OffsetPosition2D := {longOffset := - 11981, latOffset := - 15185}}}}}, {PositionList := {content := {{OffsetPosition2D := {longOffset := - 9424, latOffset := - 15960}}}}}, {PositionList := {content := {{OffsetPosition2D := {longOffset := - 5752, latOffset := - 16696}}}}} } }, extension_ := omit, endPosition := omit, extensionRange := omit, roadSegmentList := omit } } }, destinationArea := {content := {rectangle := {pos1Lon := 130000000, pos1Lat := 520000000, pos2LonOff := 8100000, pos2LatOff := 500000, width := 1000}}} } } } } }}+++

template Message simpleMessage(int mID, PositionVector_TYPE originatorPos, C2XAppPayload_TYPE p) := { sourceId := 306999566, messageId := mID, contentType := 31, contentSubType := 0, packetType := 3, transportOptions := {trafficClass := 0, priority := 0, repetitionInteval := 0, lifeTime := 41789530309280}, secOptions := {cryption := "NONE", signature_ := "NONE", plausibility := "NONE"},

Testing distributed C2X applications – T3UC 201122.04.23 | 15

Page 16: 21.08.2014  |  1

C2X message templates

template Message hiwaMessage(int mID, PositionVector_TYPE originatorPos) := { type_ := "received", item := {type_ := 3, payloadLength := 15000}, sourceId := 306999566, messageId := mID, contentType := 31, contentSubType := 0, packetType := 3, transportOptions := {trafficClass := 0, priority := 0, repetitionInteval := 0, lifeTime := 41789530309280}, secOptions := {cryption := "NONE", signature_ := "NONE", plausibility := "NONE"}, destination := { type_ := "UNDEFINED", nodeId := 0, latitude1 := - 900000000, longitude1 := - 1800000000, latitude2 := - 900000000, longitude2 := - 1800000000, size := 0 }, originator := {originatorPosition := originatorPos, senderPosition := originatorPos, medium := "AUTO"}, C2XAppPayload := { protocolVersion := 0, actionID := 0, cancelationFlag := {bool := false}, generationTime := {timeStamp := 1282050379, milliSec := 72}, validityDuration := 604799, referencePosition := { longitude := 92371197, latitude := 490046194, elevation := 0, heading := omit, streetName := omit, positionConfidence := omit, elevationConfidence := omit, roadSegmentID := omit }, protocolMsg := { content := { decEnvNotification := { management := {reliability := 50, isNegation := {bool := false}, dataReference := omit}, event := { trafficFlowEffect := {effectCode := 3, tendency := omit, lengthAffected := omit, averageSpeedAbsolute := 500, delay := omit, segmentSpeedLimit := omit, prognosisTime := omit}, causeCode := 31, directCause := {severity := 2, subCause := 2, lengthEffected := 500, laneRestriction := 3, numberOfLanes := 1} }, taggedList := {content := {}}, location := { locationRef := { content := { trace := { referencePosition := { longitude := 92371197, latitude := 490046194, elevation := 0, heading := omit, streetName := omit, positionConfidence := omit, elevationConfidence := omit, roadSegmentID := omit }, approaches := { content := { {PositionList := {content := {{OffsetPosition2D := {longOffset := - 13166, latOffset := - 14775}}}}}, {PositionList := {content := {{OffsetPosition2D := {longOffset := - 11981, latOffset := - 15185}}}}}, {PositionList := {content := {{OffsetPosition2D := {longOffset := - 9424, latOffset := - 15960}}}}}, {PositionList := {content := {{OffsetPosition2D := {longOffset := - 5752, latOffset := - 16696}}}}} } }, extension_ := omit, endPosition := omit, extensionRange := omit, roadSegmentList := omit } } }, destinationArea := {content := {rectangle := {pos1Lon := 130000000, pos1Lat := 520000000, pos2LonOff := 8100000, pos2LatOff := 500000, width := 1000}}} } } } } }}+++

template Message sMessage(C2XAppPayload_TYPE p) := { sourceId := ?, messageId :=?, contentType := 31, contentSubType := 0, packetType := ?, transportOptions := {trafficClass := ?, priority := ?, repetitionInteval := ?, lifeTime := ?}, secOptions := ?,

22.04.23 | 16 Testing distributed C2X applications – T3UC 2011

Page 17: 21.08.2014  |  1

Testing the characteristics of the protocol layer 802.11 p

Geographically-scoped broadcast

1.Configuration: 3 IVS

2.All IVS are stimulated with plausible vehicle data using the VAPI (e.g. constant speed and vehicle distance 600m).

3.Vehicle 3 sends a message (e.g. obstacle avoidance), which is addressed to a specific geographical area (e.g. 1200m ahead).

4.Check if vehicle 1 states the reception of the message and vehicle 2 not.

22.04.23 | 17

destination := { type_ := "circle", nodeId := 0, latitude1 := latVehicle1, longitude1 := longVehicle1,

size := 300 }

Testing distributed C2X applications – T3UC 2011

Page 18: 21.08.2014  |  1

Testing one IVS: obstacle avoidance

22.04.23 | 18

haltVehicleT.start(2.0); emergencyAction := false;alt {[] tracesPort.receive(item:?) -> value lastTraceMsg { if (not emergencyAction) { lastFilteredPosition := lastTraceMsg.SimTD_FilteredPosition;} if (emergencyAction){ lastTraceMsg.SimTD_EmergencyLighting := { EmergencyLighting := {bool := true}}; …} ivsPort.send(lastTraceMsg); repeat;}[] loggingPort.receive(ereignisWarnung) -> value ccMsg { responseTimer.stop; setverdict(pass, "EinsatzfahrzeugWarnung received.");}[] loggingPort.receive(LogEntry:?) -> value genericLogEntry { repeat;}[] haltVehicleT.timeout { emergencyAction := true; repeat;}}

Reading trace data

Replay of modified trace data

Waiting for obstacle detection

Obstacle detection

• the system is stimulated with speed and position data that simulate a car ride.

• after about 2 seconds, the vehicle stopped and turned on the hazard lights.

• it is checked whether the system creates a perfect obstacle warning and sent

Testing distributed C2X applications – T3UC 2011

Page 19: 21.08.2014  |  1

Summary and outlook

• Test system is implemented and is currently being used in simTD:

• TTCN-3 Framework distributed to the partners

• Tool: TTworkbench from Testing Technologies

• Carrying out the tests on the virtual system (testing applications on a VM)

• Carrying out the tests on the physical system

• Next Steps:

- Further testing activities in particular to common features of 802.11p

- Integration of simulators for the generation of vehicle data

- Dissemination and exploitation of ideas within other FOT projects, in standardization (ETSI) and with industrial partners

22.04.23 | 19 Testing distributed C2X applications – T3UC 2011

Page 20: 21.08.2014  |  1

Contact

22.04.23 | 20 Hier steht die Fußzeile

Jürgen GroßmannFraunhofer FOKUS

Kaiserin-Augusta-Allee 31,10589 BerlinTel: +49-30-3463-7390

[email protected]