Keyword Protocol 2000 , förkortat KWP2000 , är en specifikation för en kommunikationskanal med fordonsdiagnosutrustning ( On-Board Diagnostics ). KWP2000-protokollet täcker flera lager i OSI- modellen: det fysiska lagret, datalänkslagret, applikationslagret och sessionslagret (när det gäller att starta, underhålla och avsluta en session).
Dataformatet för de enskilda instruktionerna är i de flesta fall en fråga om val av implementering.
Standarden ( OBD II ) reglerar de obligatoriska minimiparametrarna, vars utgång måste stödjas av styrenheten enligt fabriksprotokollet (OEM), inkl. och enligt KWP2000 :
KWP2000 är standardiserat av International Organization for Standardization som ISO 14230.
Det första grundläggande fysiska lagret för KWP2000 är identiskt med ISO 9141 med en dubbelriktad seriell länk på en tråd och kallas K-linjen. Dessutom kan det finnas ytterligare en L-linje för att "vakna". Dataöverföringshastigheten är från 1,2 till 10,4 Kbps, medan meddelandet kan innehålla upp till 255 byte data.
När den implementeras på det fysiska lagret K-line kräver KWP2000 speciella väckningssignaler: 5 Baud init eller Fast init. Båda dessa metoder kräver WakeUp-synkronisering av K-bussens signalfördröjningar och implementeras av speciell programvara.
ISO 14230 och ISO 9141 är liknande i hårdvaruimplementering av datalinjer (ISO 14230 är en utveckling av ISO 9141 [1] ). De skiljer sig åt i kraven för linjens elektriska parametrar, såväl som i protokollen för de övre nivåerna. En skanner som använder ISO 9141-standarden kan vanligtvis fungera med ISO 14230, men inte vice versa.
ISO 14230 ( Vägfordon - Diagnostiska system - Keyword Protocol 2000 ) är strukturerad enligt följande:
På den fysiska nivån, i enlighet med ISO 14230-1, implementeras KWP2000 som en dubbelriktad enkeltrådig K-Line- databuss. K-Line är enbart avsedd att utföra diagnostiska funktioner i dubbelriktade förbindelser med två deltagare. Signalspänningen är fordonets driftspänning i förhållande till dess "massa". Den maximala längden på K-Line är inte specificerad [2] .
På datautbytesnivån, i enlighet med ISO 14230-3, arbetar KWP2000 på ett asynkront dataöverföringsschema med master/slav åtkomstkontroll, samtidigt som man använder ett enkelriktat överföringsprotokoll som tillåter att data och kommandon överförs med validering, men ingen felkorrigering .
Meddelandestrukturen består i allmänhet av följande delar: 1 startbit; 8 databitar 1 stoppbit valfri kontrollsumma (Checksum). Vilken data styrenheten överför beror i sin tur på fordonstillverkaren.
Överföringshastigheten för K-Line-bussen enligt KWP2000-protokollet är från 1,2 till 10,4 Kbps [3] .
Enligt ISO 14230-4 anslutningsetableringsprotokoll:
- med "Fast init" (100 ms, bithastighet alltid 10,4 kBit/s):
- med "5 Baud init":
ISO-9141-2-standarden identifieras av närvaron av stift 7 i diagnoskontakten (K-line) och frånvaron av 2 och/eller 10 stift i OBD-II diagnoskontakten. Använda slutsatser - 4, 5, 7, 15 (kanske inte), 16.
KWP2000 är också ISO 11898 (Controller Area Network) kompatibel och stöder höga datahastigheter upp till 1 Mbps.
Att använda KWP2000 på CAN med ISO 15765 transport-/nätverkslager är det vanligaste. Om du använder KWP2000 på CAN, krävs ingen speciell väckningsfunktion.
KWP2000 kan implementeras på CAN med endast servicelager och sessionslager; eller med alla lager (huvud och kontrollsumma inneslutna i CAN-ramen). Men när alla lager används är KWP2000 redundant, till skillnad från ISO 15765, som tillhandahålls av dess transport-/nätverkslager.