1 / 20

21.08.2014 | 1

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: juergen.grossmann@fokus.fraunhofer.de Ilja Radusch, Carsten Neumann, Andreas Hinnerichs (Fraunhofer FOKUS),

gerda
Download Presentation

21.08.2014 | 1

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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: juergen.grossmann@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 21.08.2014 | 1 Hier steht die Fußzeile Hier steht die Fußzeile

  2. V2X Systems safety, efficiency, comfort • Different communication technologies • WiFi 802.11 b / g, 802.11 p • UMTS / GPRS • GPS / Galileo • Distributed dynamic system GPS/Galileo UMTS/GPRS ITS G5 ICS IVS IVS 802.11 b/g and ITS G5 IRS IRS Testing distributed C2X applications – T3UC 2011

  3. The 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. Testing distributed C2X applications – T3UC 2011

  4. 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. Testing distributed C2X applications – T3UC 2011

  5. Systematic 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 features:functionality, robustness, efficiency, reliability Design Module test Implementation Testing distributed C2X applications – T3UC 2011

  6. 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 2011

  7. Testing 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 Testing distributed C2X applications – T3UC 2011

  8. Realization of the test bed LSS template C2XMessage c2xMessage(in id := sid, payload := { protocolVersion := 1, actionID := 100, cancelationFlag := false, generationTime := {t, 0}, validityDuration := 100, referencePosition := {longitude := {isE, protocolMsg := pm } } IRS IVS Test Control HMI IVS • For example, obstacle avoidance • Vehicle is stopped and sends obstacle avoidance messages • Verification that the following vehicles receive the messages and display the warning ICT Testing distributed C2X applications – T3UC 2011

  9. The test bed in the FOKUS automotive laboratory Hier steht die Fußzeile

  10. Architecture of the target hardware Communication Unit (CCU) 2G/3G WLan GPS CAN C2X Protocols WirelessManager VAPI* Security Router API Application Unit (AU) Logging API COM Client VAPI Client LDM C2X Applications HMI Controller * The Vehicle API (VAPI) is provided by Volkswagen Testing distributed C2X applications – T3UC 2011

  11. 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. Testing distributed C2X applications – T3UC 2011

  12. 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 IRS IVS2 Test-PC IVS1 TP API VehicleSpeed,150 Simulator COM VAPI Another Testtool TC LDM C2X Applications Test Executable(TTCN-3) Logging API HMI Controller Logs Testing distributed C2X applications – T3UC 2011

  13. 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 2011

  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; Providing the vehicle state <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

  15. C2X messages (CAM, DENM) template Message simpleMessage(intmID, PositionVector_TYPEoriginatorPos, 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(intmID, PositionVector_TYPEoriginatorPos) := { 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}}} } } } } } }+++ Testing distributed C2X applications – T3UC 2011

  16. C2X message templates template Message sMessage(C2XAppPayload_TYPE p) := { sourceId := ?, messageId :=?, contentType := 31, contentSubType := 0, packetType := ?, transportOptions := {trafficClass := ?, priority := ?, repetitionInteval := ?, lifeTime := ?}, secOptions := ?, template Message hiwaMessage(intmID, PositionVector_TYPEoriginatorPos) := { 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}}} } } } } } }+++ Testing distributed C2X applications – T3UC 2011

  17. Testing 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 3sends 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 } Testing distributed C2X applications – T3UC 2011

  18. Testing one IVS: obstacle avoidance Reading trace data haltVehicleT.start(2.0); emergencyAction := false; alt { [] tracesPort.receive(item:?) -> valuelastTraceMsg { if (not emergencyAction) { lastFilteredPosition := lastTraceMsg.SimTD_FilteredPosition;} if (emergencyAction){ lastTraceMsg.SimTD_EmergencyLighting := { EmergencyLighting := {bool := true}}; …} ivsPort.send(lastTraceMsg); repeat;} [] loggingPort.receive(ereignisWarnung) -> valueccMsg { responseTimer.stop; setverdict(pass, "EinsatzfahrzeugWarnung received.");} [] loggingPort.receive(LogEntry:?) -> valuegenericLogEntry { repeat;} [] haltVehicleT.timeout { emergencyAction := true; repeat;} } • 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 Waiting for obstacle detection Replay of modified trace data Obstacle detection Testing distributed C2X applications – T3UC 2011

  19. Summary and outlook • Test system is implemented and is currently being used in simTD: • TTCN-3 Framework distributed to the partners • Tool: TTworkbenchfrom 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 Testing distributed C2X applications – T3UC 2011

  20. Contact Jürgen Großmann Fraunhofer FOKUS Kaiserin-Augusta-Allee 31,10589 Berlin Tel: +49-30-3463-7390 juergen.grossmann@fokus.fraunhofer.de Hier steht die Fußzeile

More Related