Title: Testing distributed C2X systems with TTCN-3
1Testing distributed C2X systems with TTCN-3
- Jürgen Großmann
- Fraunhofer FOKUS
- Kaiserin-Augusta-Allee 31
- 10589 Berlin
- Tel 49-30-3463-7390
- Email juergen.grossmann_at_fokus.fraunhofer.de
- 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
07.10.2014 1
Hier steht die Fußzeile
2V2X Systems safety, efficiency, comfort
GPS/Galileo
UMTS/GPRS
ITS G5
ICS
IVS
IVS
802.11 b/g and ITS G5
IRS
IRS
- Different communication technologies
- WiFi 802.11 b / g, 802.11 p
- UMTS / GPRS
- GPS / Galileo
- Distributed dynamic system
3The results presented here have been developed as
part of the project simTD. The project simTD is
funded by the Federal Ministries ofEconomics 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.
4Characteristics 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.
5Systematic verification and validation of simTD
systems
validation of the system utility, efficiency,
usability
Field test
verification of the system efficiency,
functionality, availability
System test
Specification
TTCN-3 test bed
Integration test
verification of simTD platform and
featuresfunctionality, robustness, efficiency,
reliability
Design
Module test
Implementation
6Challenges
- 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
manufacturers 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
7Testing scope of the test bench
- Testing C2X scenarios in a laboratory environment
- continuous integration
- acceptance and regression testing
- Support for test automation
- For example, obstacle avoidance
- Vehicle is stopped and sends obstacle avoidance
messages - Verification that the following vehicles receive
the messages and display the warning
8Realization of the test bed
template C2XMessage c2xMessage(in id sid,
payload protocolVersion 1,
actionID 100, cancelationFlag false,
generationTime t, 0,
validityDuration 100, referencePosition
longitude isE, protocolMsg pm
- For example, obstacle avoidance
- Vehicle is stopped and sends obstacle avoidance
messages - Verification that the following vehicles receive
the messages and display the warning
9The test bed in the FOKUS automotive laboratory
10Architecture of the target hardware
Communication Unit (CCU)
GPS
CAN
2G/3G
WLan
VAPI
WirelessManager
C2X Protocols
Security
Router API
Application Unit (AU)
VAPI Client
COM Client
Logging API
LDM
C2X Applications
HMI Controller
The Vehicle API (VAPI) is provided by Volkswagen
11Systematic 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.
12Architecture 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
IRS
IVS2
IVS1
Test-PC
TP API
VehicleSpeed,150
Simulator
VAPI
COM
TC
Another Testtool
LDM
C2X Applications
Test Executable(TTCN-3)
Logging API
HMI Controller
Logs
13Why 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
14Providing the vehicle state
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, SteeringWheelAngular
Velocity, TankLevel, TrackWidth,
TripOdometer, TurnSignalLever,
TurnSignalLights, VehicleDimensions,
VehicleIdentificationNumber, VehicleSpeed,
WheelBase, WiperSpeed, WiperSystem,
YawVelocity
ltitemgt ltdategt24.06.2010 110105.864lt/dategt ltFuel
Consumptiongt ltInstantaneousValuePerMilagegt2.55lt/In
stantaneousValuePerMilagegt ltInstantaneousValuePerT
imegt0.74lt/InstantaneousValuePerTimegt ltTotalValuegt2
.55lt/TotalValuegt lt/FuelConsumptiongt ltVehicleSpeedgt
ltVehicleSpeedgt78.43lt/VehicleSpeedgt lt/VehicleSpeed
gt ltYawVelocitygt ltYawVelocitygt-1.18lt/YawVelocitygt lt
/YawVelocitygt lt/itemgt
15C2X messages (CAM, DENM)
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",
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
16C2X message templates
template Message sMessage(C2XAppPayload_TYPE p)
sourceId ?, messageId ?,
contentType 31, contentSubType 0,
packetType ?, transportOptions
trafficClass ?,
priority ?,
repetitionInteval ?,
lifeTime ?, secOptions ?,
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
17Testing the characteristics of the protocol layer
802.11 p
- Geographically-scoped broadcast
- Configuration 3 IVS
- All IVS are stimulated with plausible vehicle
data using the VAPI (e.g. constant speed and
vehicle distance 600m). - Vehicle 3 sends a message (e.g. obstacle
avoidance), which is addressed to a specific
geographical area (e.g. 1200m ahead). - Check if vehicle 1 states the reception of the
message and vehicle 2 not.
destination type_ "circle",
nodeId 0, latitude1 latVehicle1,
longitude1 longVehicle1, size
300
18Testing one IVS obstacle avoidance
Reading trace data
haltVehicleT.start(2.0) emergencyAction
false alt tracesPort.receive(item?) -gt
value lastTraceMsg if (not emergencyAction)
lastFilteredPosition lastTraceMsg.SimTD_F
ilteredPosition if (emergencyAction)
lastTraceMsg.SimTD_EmergencyLighting
EmergencyLighting bool true
ivsPort.send(lastTraceMsg) repeat
loggingPort.receive(ereignisWarnung) -gt value
ccMsg responseTimer.stop
setverdict(pass, "EinsatzfahrzeugWarnung
received.") loggingPort.receive(LogEntry?)
-gt value genericLogEntry repeat
haltVehicleT.timeout emergencyAction
true repeat
Waiting for 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
Replay of modified trace data
Obstacle detection
19Summary 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
20Contact
Jürgen Großmann Fraunhofer FOKUS Kaiserin-Augusta-
Allee 31,10589 Berlin Tel 49-30-3463-7390 juer
gen.grossmann_at_fokus.fraunhofer.de