RP 1210

Kurze Einführung in RP1210

Die RP 1210 ist eine bewährte Programmierschnittstelle, die durch die „Recommended Engineering and Maintenance Practice“ des Technology & Maintenance Council (TMC) und der American Trucking Associations (ATA) initiiert wurde. Mit dieser Schnittstelle kann vor allem auf VCIs im Truck-Umfeld zugegriffen werden. Über die RP 1210 ist der Zugriff auf die Bussysteme J1708/J1587, CAN, J1939 und J1850 möglich. Hauptanwendungsfälle sind Programmierung, Diagnose und Analyse. Ähnlich wie bei der SAE J2534 kann das Diagnose-Interface unabhängig vom OEM eingesetzt werden – ein klarer Vorteil für die Werkstatt.

Ablauf

Das nachfolgende Diagramm zeigt einen vereinfachten Ablauf, wie RP1210 von einer Applikation genutzt wird:

Abbildung: Vereinfachter Ablauf RP 1210
Vereinfachter Ablauf RP 1210


RP1210_SendMessage transferiert einen Byte-Buffer zur RP 1210-Bibliothek. Die Applikation muss selbst sicherstellen, dass der Buffer-Inhalt im zu Protokoll passendem Format vorliegt. Für ISO15765 sieht das Format beispielsweise so aus:
1 Byte (Message Type) + 4 Bytes (CAN ID) + 1 Byte (Extended Address) + (0 – 4096) Message Bytes
 
RP1210_ReadMessage liefert einen Byte-Buffer zurück, dessen Format vom Protokoll abhängt. Für ISO15765 werden zu dem oben beschrieben Format am Anfang des Buffers noch folgende Informationen hinzugefügt:
4 Bytes (Time Stamp) + 0/1 (Echo) + 1 Byte (Indication Status)
 
Echo: wenn aktiviert, signalisiert, ob der Client die Nachricht ursprünglich verschickt hat. Wenn Echo-Modus deaktiviert ist, ist dieses Byte nicht vorhanden.
Indication Status: Nachricht bestätigt, Fehler aufgetreten, Erste Nachricht von einem Segment (First Frame of multi-frame message).

Die API bietet folgende Funktionen an:

FunktionBeschreibung
RP1210_ClientConnectHerstellen einer logischen Verbindung zur RP 1210 DLL.
RP1210_ClientDisconnectBeenden der logischen Verbindung zur RP 1210 DLL.
RP1210_SendMessageSchickt eine Nachricht zur RP 1210 DLL.
RP1210_ReadMessageLiest eine Nachricht von der RP 1210 DLL.
RP1210_SendCommandSchickt ein Befehl zur RP 1210 DLL.
RP1210_GetErrorMsgÜbersetzt einen RP 1210 Fehlercode auf einen Text.
RP1210_GetLastErrorMsgÜbersetzt einen RP 1210 Fehlercode auf einen Text mit mehr Details.
RP1210_GetHardwareStatusGibt den Verbindungsstatus zurück.
RP1210_ReadVersionLiest die Versionsinformation der RP 1210 API DLL über die API.
RP1210_ReadDetailedVersionLiest die Versionsinformation der RP 1210 API DLL über die API (neue bevorzugte Version).
RP1210_IoctlWird verwendet, um den Status der Fahrzeugkommunikation zu ändern. Dies war neu im RP1210B, und wird vom RP1210 zurzeit nur für die ISO9141- und KWP2000-Kommunikation verwendet. Diese Funktion ermöglicht die zukünftige Entwicklung des RP1210 im Hinblick auf weitere Protokolle für den Automobilbereich.
RP1210 API Funktionen

Merkmale

  • Mehrere Client-Applikationen können parallel auf denselben Fahrzeugbus zugreifen
  • Es ist die Aufgabe der Client-Applikation die Nachrichten korrespondierenden Steuergeräten zuzuordnen
  • Reine C-API mit 11 Funktionen
  • Fehlerbehandlung durch Auswertung von Rückgabewerten (keine Exceptions)
  • Hauptsächlich für Windows spezifiziert

Da es sich bei der RP 1210 um eine eher einfache Programmierschnittstelle handelt, ist ein Großteil der Logik durch die anwendende Applikation selbst zu gewährleisten.

Integration in einer Applikation

Zu jeder RP 1210 Installation gehört eine .INI und eine .DLL Datei. Die RP 1210 Spezifikation schreibt das Format für den Namen der Dateien und deren Pfad vor.

DateitypInstallationspfadDateiname
INIGetSystemWindowsDirectory – WIN APIVENDRX32.ini
DLLGetSystemDirectory() – WIN APIVENDRX32.dll
RP1210 API Funktionen

VENDRX ist dabei der Herstellername der Schnittstelle.

Nach oben scrollen