ISO 15765-2

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche

ISO 15765-2, auch kurz ISO-TP ist eine internationale Norm für ein Transportprotokoll über CAN-Bus. Das Protokoll ermöglicht den Transport von Botschaften, deren Länge die maximal 8 Bytes Nutzdaten eines CAN-Frames überschreiten. Im OSI-Modell deckt es die Schichten 3 (Network Layer) und 4 (Transport Layer) ab und kann bis zu 4095 Bytes Nutzdaten pro Telegramm transportieren. ISO-TP segmentiert längere Botschaften auf mehrere Frames und ergänzt die Datenpakete um Metadaten, die eine Interpretation der einzelnen Frames durch den Empfänger ermöglichen.

Die typische Anwendung ist die Übertragung von Diagnosebotschaften aus KWP2000 und UDS, ist aber nicht darauf beschränkt.

ISO-TP kann mit eigener Adressierung als so genanntes Extended Addressing oder ohne Adresse (sog. Normal Addressing) betrieben werden. Mit Extended Addressing trägt jeder Frame ein Byte Adress-Information im ersten Nutzdaten-Byte des CAN Frames. Dies ist dann notwendig, wenn in einem CAN-Netzwerk nicht jedem Steuergerät ein eigener CAN-Identifer zur Antwort zugewiesen ist. Ohne Adresse im Frame muss die Adressierung über verschiedene CAN-Identifer für Request und Response für jedes einzelne Steuergerät sichergestellt werden. Bei Normal Addressing steht bei der Datenübertragung ein Byte mehr für Nutzdaten im jeweiligen CAN Frame zur Verfügung.

Neben dem ggf. vorhandenen Extended Addressing Byte existiert in einem CAN-Frame bei ISO-TP immer ein Protocol Control Information Byte (PCI) im Nutzdatenteil des CAN-Frames. In diesem Protocol Control Information Byte werden ISO-TP Frame-Typen sowie protokollspezifische Zähler und Status abgelegt.

Das ISO-TP definiert vier Frame-Typen:

  • Single Frame: das zu übertragende Telegramm besteht aus bis zu 6 bzw. 7 Bytes (Normal Addressing) Nutzdaten, nicht segmentierte Übertragung.
  • First Frame: erster Frame des Senders, wenn mehr als 6 bzw. 7 Bytes Daten segmentiert übertragen werden müssen. Der Frame enthält die gesamte Länge des Telegramms.
  • Consecutive Frame: Überträgt die weiteren Nutzdaten bei Segmentierung.
  • Flow Control Frame: Antwort des Empfängers, der die Modalitäten für die Übertragung der weiteren Consecutive Frames festlegt.

Die segmentierte Übertragung leitet der Sender mit einem First Frame ein, den der Empfänger mit einem Flow Control Frame bestätigt. In diesem (ersten) Flow Control Frame definiert der Empfänger, wie viele Consecutive Frames direkt aufeinander folgend empfangen werden können (Block Size) und in welchen zeitlichen Abständen (0–127 ms) diese Consecutive Frames gesendet werden müssen. Ist ein Block von Consecutive Frames übertragen, erfolgt ein weiterer Flow Control Frame vom Empfänger, bis sämtliche Nutzdaten übertragen sind. Moderne Steuergeräte unterstützen auch Block Size 0 (= aus), d. h. es dürfen beliebig viele aufeinander folgende Consecutive Frames von Sender gesendet werden. Jeder Consecutive Frame enthält einen 4-Bit-Folgezähler, der mit jedem gesendeten Frame erhöht wird (1, 2, …, 15, 0, 1, …), wodurch verloren gegangene Frames erkannt werden können.

4095 Bytes Nutzdaten sind die definierte Obergrenze für segmentierte Nachrichten des ISO-TP Protokolls, wobei in der Praxis das projektspezifische Limit teilweise geringer ist, da die Empfangspuffer kleiner gewählt werden.

Normen[Bearbeiten]

ISO 15765-2:2011 Road vehicles - Diagnostic communication over Controller Area Network (DoCAN) - Part 2: Transport protocol and network layer services

Literatur[Bearbeiten]

  • Werner Zimmermann und Ralf Schmidgall: Bussysteme in der Fahrzeugtechnik – Protokolle, Standards und Softwarearchitektur. 5. Auflage, Springer Vieweg, 2014, ISBN 978-3-658-02418-5.