An approach for Charging Communication Conformance Testing in Electric Vehicle Frank Brosi Vector Congress, 29.11.2012 Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 1
Project objectives Development of Conformance-Tests for ISO 15118 Cooperation with Vector Informatik started in Jan 2012 Independent, stand-alone tests for vehicle (EV) or charge spot (EVSE) AC and DC charging Focus on OSI Layer 3-7, no Physical Layer Test (only implicitly tested) Active participation in ISO 15118 PT6 Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 2
Agenda Introduction for ISO 15118 Conformance Test Objectives Potential errors Test generation Test bed Outlook and Conclusion Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 3
INTRODUCTION Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 4
ISO 15118 Vehicle to grid communication interface Energy saving network technology (e.g. partial networking) Optimization of power consumption of embedded systems Charger ECU + - Communication with infrastructure On-board charger Battery management system ISO 15118 High-voltage engine control Source: Vector Informatik Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 5
ISO 15118 Vehicle to grid communication interface Use-Cases Simple payment and billing Load management DC charging control Additional services Benefits User consulting about charging slots (departure time, expected/required energy charge) Cheaper infrastructure with less vandalism potential (e.g. no HMI needed) Additional services like: sat-nav update, telematics update, music, ordering at shops or drivein restaurants Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 6
ISO/IEC 15118 communication stack overview Layer 7 - Application Vehicle 2 Grid communication messages for AC- & DC- charging Layer 6 - Presentation EXI (Efficient XML Interchange) Layer 5 - Session V2GTP (Vehicle to Grid Transfer Protocol) Layer 4 - Transport Layer 3 - Network Layer 2 Data Link Layer 1 - Physical TLS (IETF RFC 5246 Transport Layer Security 1.2) TCP (IETF RFC 2460 Transmission Control Protocol) IPv6 (IETF RFC 2460 Internet Protocol) IEEE 802.3 MAC layer IEEE 1901 Profile Green PHY UDP (IETF RFC 768 User Datagram Protocol) RFC 4862 IPv6 SLAAC Based on Source: ISO-TC22-SC3-JWG1_N0390_2012-01-19_JWG_V2G_CI_updated_status Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 7
CONFORMANCE-TEST OF ISO 15118 Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 8
Objectives of Conformance-Tests Connection establishment, interruption and reestablishment. Test scenarios for load leveling plug & charge payment Authentication etc. Correct handling of the low level communication (IEC 61851) as basis for high level communication Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 9
FKFS: Conformance Test Stepwise top-to-down Approach 1. Develop test case for the application layer Lower layers are tested implicitly 2. EXI, V2GTP explicit tests depending on ISO 15118 test requirements 3. TLS, TCP/IPv6 explicit tests depending on ISO 15118 test requirements 4. PLC physical layer tested implicitly only Based on source: ISO-TC22-SC3-JWG1_N0390_2012-01-19_JWG_V2G_CI_updated_status Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 10
Simplified Message structure and resulting error types Message consists of complex & simple data structures Timing / Sequence Data structure XML/EXI-data-types Use Case (Profile) Position (Ordering) implemented by Amount Format Data type Value Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 11
visdgm10 Data level - error category matrix Level Error category Repetition Deletion Insertion Re-Sequence State-Flow / Message Data structure Data type X X X X X X X X X X X Corruption X X Delay Masquerade Context / Semantics / Logic X X X X X Error categories based on IEC 61784-3 Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 12
Folie 12 visdgm10 Überschrift ist Deutsch, bitte in Englisch Großmann, Dirk; 26.11.2012
Attributes - error category matrix (example) Level (State-Flow / Message) Error category Repetition Deletion Insertion Re-Sequence Corruption Delay Masquerade Context /Semantics / Logic Error categories based on IEC 61784-3 Timing & Sequence errors repeated message Not received / send messages additional message; messages not in correct order Repeated hole sequences; Messages of wrong order timeouts Identity theft USE CASE (membership) errors Message not included in profile; Message of different schema version; Message not defined; conflicting messages (session with PreChargeReq & ChargingStatusReq) Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 13
Automated test generation with TeSAm Application layer tests ISO 15118 (Requirement) UML model (functional model) TeSAm TFS-XML test cases AlPaS (parameter-db) CANoe.IP XML / C# test knot TeSAm and AlPaS are tools of FKFS TFS: Test Feature Set Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 14
Example UML-Model stm StateMachine_Teat Initial Connection established [V2G2-484] (from Kapitel 8) «invariant» {receive_supportedappprotocolres[responsecodetype = Fail]/ CommunicationStop[MsgTimer_EVccMsg=Timeout]} [V2G2-485] (from Kapitel 8) «Process» {receive_supportedappprotocolres[responsecodetype = OK]/ send_sessionsetupreq [SequenceTimer = EVccSequencePerformanceTime]} Wait_supportedAppProtocolRes [V2G2-485] [V2G2-484] [V2G2-486] (from Kapitel 8) «invariant» {receive_sessionsetupres [ResponseCodeType = Fail]/ CommunicationStop [ MsgTimer >=v2gevccmsgtimeout]} [V2G2-487] Wait for SessionSetupRes [V2G2-486] (from Kapitel 8) «Process» {receive_sessionsetupres[responsecodetype = OK]/send_ServiveDiscoveryReq[SequenceTimer <= EVccSequencePerformanceTime]} [V2G2-487] [V2G2-488] Final Wait for ServiceDiscoveryRes [V2G2-489] (from Kapitel 8) «Process» {receive_servicediscoveryres [ResponseCodeType = OK] /send_servicedetailreq [SequenceTimer <= EVccSequencePerformanceTime & ServiceList_NotEmpty & EVccUses_AnyService]} {receive_servicediscoveryres[responsecodetype =Failed] / CommunicationStop [MsgTimer >= v2gevccmsgtimeout]} [V2G2-488] (from Kapitel 8) Final Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 15
Conversion Constraint to VXT Constraint VXT 1.3 Ereignis[Wächter1]/ Aktion[Wächter2] receive_supportedappprotocolres [ResponseCodeType = OK]/ send_sessionsetupreq [SequenceTimer < EVccSequencePerformanceTime] <set> Wächter1</set><send(Ereignis())> <wait>aktion</wait><choise(wächter2)> <set><sysvar name="scc::responsecodetype">1</sysvar></set> <capltestfunction name="tc_send_supported AppProtocolRes"> <caplparam name="id" type="int">65</caplparam> <caplparam name="para" type="sys"> SCC::ResponseCodeType </caplparam> </capltestfunction> <capltestfunction name="tc_wait_receiving_sessionsetupreq"> <caplparam name="id" type="int">5</caplparam> <caplparam name="para" type="int"> SCC::SequenceTimer </caplparam> </capltestfunction> <choice> <if> <condition> <sysvar name="scc::sequencetimer"> <st>500</st> </sysvar> </condition> </choice> Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 16
Vector tool chain for testing ISO 15118 EXI Test sequencer SCC CANoe Test Feature Set CANoe add-on SCC Eth SM V2GTP HTTP TLS TcpIp IPv4/IPv6 EthIf Eth EthTrcv CANoe Option IP VT System Source: Vector Informatik Ethernet Home Plug Green PHY Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 17
Hardware Communication, Measurement, test bed configuration EV AC DC EVSE AC/DC DC-Load AC energy recovery Grid Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 18
Outlook TeSAm Traceability ISO 15118 1-3 (requirements) & ISO 15118 4-5 (conformance tests) test spec. test case report Reduction of test cases positive Tests most probable errors risks for system and humans SCC-Package More special test functions Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 19
Conclusion High-level-communication necessary for DC-Charging More benefits, e.g. automated billing, load management TeSAm: Automated generation of test cases Reduction of test cases necessary, for example based on risk Vector tool chain is used to test the protocol Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 20
THANK YOU FOR YOUR ATTENTION Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 21
BACKUP Forschungsinstitut für Kraftfahrwesen und Fahrzeugmotoren Stuttgart 22