Benutzer:Gas M21/Spielwiese
Dieser Artikel ist im Entstehen und noch nicht Bestandteil der freien Enzyklopädie Wikipedia.
Solltest du über eine Suchmaschine darauf gestoßen sein, bedenke, dass der Text noch unvollständig sein und Fehler oder ungeprüfte Aussagen enthalten kann. Wenn du Fragen zu dem Thema hast, nimm am besten Kontakt mit dem Autor auf. |
Kfz-Bussysteme
BearbeitenOpen-System-Interconnect-Layer-Model (nach ISO)
7 | Application | Anwendung | Allg. Dienste (Fehlerspeicher lesen, Kfz-Ident.-Nr. etc.) |
6 | Presentation | Darstellung | |
5 | Session | Sitzungssteuerung | |
4 | Transport | Datentransport | Aufteilen und Zusammensetzen der Daten mehrerer Botschaften |
3 | Network | Vermittlung | Routing, Adress- und Teilnehmerverwaltung |
2 | Data Link | Sicherung | Botschaftsaufbau, Buszugriff, Fehlersicherung, Flusskontrolle |
1 | Physical | Bitübertragung | Elektrische Signalpegel, Bitcodierung |
0 | Mechanical | Mechanik | Steckverbinder und Kabel |
In Wirklichkeit lassen sich die Layer nicht exakt abgrenzen, Standards umfassen meist nur Teile mehrerer Layer.
Phys. Bussysteme:
Ausgänge der Teilnehmer sind typischerweise über Pull-Up-Widerstände auf die Busse geschaltet. Ein durchgeschalteter Ausgang zieht den gesamten Bus auf L. Dadurch ist der Ruhezustand logisch H, logisch L ist dominant.
Nicht OBD-relevant | |
LIN – | LocalInterconnectNetwork, für kostengünstige zeichenbasierte Sensor-Aktor-Anwendungen |
FlexRay - | Weiterentwicklung von CAN, Sternförm. Busse mit höherer Geschwind und Sicherheit möglich |
MOST - | Media Oriented Systems Transport |
OBD-relevant | |
J1850 – | PWM/VPWM, Gesetzl. Ablösung durch CAN 2007 |
ISO 9141 (K/L-Line)
Zeichenbasierte Übertragung (1 Zeichen = 1 Start-Bit + 8 Daten-Bit + 1 Stop-Bit), Verarbeitung softwaregesteuert in UART (Universal Asynchronous Receiver and Transmitter), Eindrahtdatenverbindung, Pegel Bordspannung (12/24V) gegen Fz.-Masse (0,8UB = H, 0,2UB = L), max. Tbit = 100µs -> fbit = 10,4kbit/s (OBD-relevant sind fest 10,4kbit/s),
Schnelle Initialisierung (nur ISO14230):
Feste Bitrate 10,4kbit/s,
K+L–Line min. 300ms nach Einschalten bzw. 55ms nach letzter Verbindung in Ruhe (logisch H)
K+L gleichzeitig 25ms Low, danach 25ms High (L – Line bleibt danach H)
K – Tester sendet Start Communication Service Request Botschaft mit Geräteadresse
Adressiertes Gerät antwortet innerhalb 50ms (Start Comm. Response) mit Keyword
5 Baud Initialisierung:
K+L–Line min. 300ms in Ruhe (logisch H)
K + L gleichzeitig - Tester sendet 8bit-Adresswort mit Geräteadresse (Bitrate 5bit/s)
K - Steuergerät antwortet innerhalb 300ms mit 55h (als Synchr.-Muster) und danach im Abstand von max. 20ms 2 Byte Keyword mit eigener Geräte-Taktrate
K – Tester sendet 2. Keybyte innerhalb 20ms invertiert in Geräte-Taktrate zurück
K – Gerät quittiert innerhalb 50ms mit eigener invertierter Geräteadresse
KWP2000 – Botschaftsformat (ISO 14230):
Format | I | (Target adr) | I | (Source adr) | I | Length | II | Data 1…255 Byte | II | Checksum |
Adr-Byte, | TA | SA | kann bei | 1. Byte Service Identifier | aus Header + | |||||
Längenbyte | kleiner | (SID) | Payload | |||||||
Ja/Nein, | 63 Databyte | |||||||||
funkt. oder | entfallen | |||||||||
phys. Adr. |
SID:
81h Start Comm. Service Req.
82h Stop Comm. Service Req.
Emissionsrelevante Einschränkungen (OBD):
3 Byte Header ( | Format | Target | Source | )
Max. 7 Byte Data
Tester fragt mit funkt. Adr., Gerät antwortet mit phys., Source adr ist immer phys.
Nur Default-Time-Out, fest 10,4kbit/s (beide Ini.-arten zulässig)
ISO 14230 definiert nur Kommunikationsmodell und Übertragungsdienste, Diagnosedienste s. ISO 15031-5
ISO 11898 (CAN)
Bitstrombasierte Übertragung, Linienbus, max. Bitrate 1Mbit/s, Zweidrahtverbindung mit invertierten Signalen
High Speed CAN >250(LKW)/500(PKW)kbit/s, Signalhub 2V, 120Ohm Abschluß
Low Speed CAN <125kbit/s, Signalhub 2,2V – Busarten nicht kompatibel
Abtastzeitpunkt wird im Controller eingestellt, Controller kommunizieren selbständig – für Anwender kein Wissen über physical Layer notwendig
Broadcast-System = Botschaften ohne Ziel und Quelle, dafür Inhaltsangabe (Message Identifier MID)
bitweise Arbitrierung (wer mit dem niedrigstwertigen MID sendet, darf weiter senden - wenn ein Teilnehmer ein H sendet, der Bus aber auf L steht, muss dieser Teilnehmer sofort mit senden aufhören) – jeder Teilnehmer muss durch Mithören den Bus mit den eigenen Sendedaten vergleichen
Header 19bit(CAN2.0A)/39bit(CAN2.0B) |
0…64bit Payload | Trailer | |||
Start Bit | 11+1bit oder 29+3bit MID |
6 bit Control-Bits | 0…8 Byte Data | 15 bit CRC | Acknowledge + End of Frame |
Remote Frame – ohne Payload, über MID werden Daten abgefordert
ISO 15765-2 (Transport-Protokoll CAN)
1…3 Nutzdatenbyte werden zur Steuerung verwendet
I | Adress Information AI | I | |||||||
Single Frame | I | MID | I | Ctrl | II | opt. 1Byte AI | + 1Byte PCI (0h+4bitDataLength) (Protocol Control Inform.) |
+ 0…7Byte SDU (Service Data Unit) | |
First Frame | I | MID | I | Ctrl | II | opt. 1Byte AI | + 2Byte PCI (1h+12bit DL) | + 0…6Byte SDU | |
Consecutive Fr. | I | MID | I | Ctrl | II | opt. 1Byte AI | + 1Byte PCI (2h+4bitSequenceNr) | + 0…7Byte SDU | |
Bei Multiframe-Botschaften muss über MID/AI genau ein Empfänger angesprochen werden. Der Empfänger antwortet auf First Frame mit Flow Control Frame | |||||||||
Flow Ctrl. Fr. | I | MID | I | Ctrl | II | opt. 1Byte AI | + 3Byte PCI (3h+4bitFlowStatus +1ByteBlockSize+1ByteSepar.Time) |
FlowStatus (FS) = 0h (Clear to Send) oder 1h (Wait)
BlockSize (BS) = Anzahl Frames, die Empfänger hintereinander empfangen kann
SeparationTime (STmin) = Mindestzeit, die Sender zwischen zwei Frames warten muss
Dienste:
Service Data Request – Transport-Layer sendet Data.confirm an Anwendung, wenn Daten gesendet
Service Data Indication
Service ChangeParameter Request – Änderung von BS und ST, mit Data.confirm
TimeOut generell 1s
Transportprotokolle CAN TP 1.6 und TP 2.0 sind VAG-Werkstandards.
ISO 14230-3 = ISO 15765-3 (Diagnoseprotokoll KWP2000 / K-Line / CAN)
Tester (Client) | Service Request ----------------------> <--------------------- Service Confirm. |
Steuergerät (Server) |
Adr.Inform. AI | I | Nutzdaten | I | |||
= SA + TA (+ RA) | I | ServiceID SID | I | Request Parameter | I | Service Req. |
↓ | ||||||
K-Line Header o. CAN MID |
I | SID + 40h Error ID 7Fh |
I | Response Param. SID I Error(Resp.)Code |
I | Positive Resp. Negative Resp. |
SID | Request | pos. Resp. | neg. Resp. | def. durch |
OBD | 00…0Fh | 40…4Fh | 7F 00…7F 0Fh | ISO 15031-5 |
allg. Dienste | 10…3Eh | 50…7Eh | 7F 10…7F 3Eh | ISO 14230-3 ISO 15765-3 |
Escape Code | 80h | C0h | 7F 80h | dto. |
K-Line Dienste | 81…83h | C1…C3h | 7F 81…7F 82h | ISO 14230-2 |
CAN Dienste | 84…85h | C4…C5h | 7F 84...7F 85h | ISO 15765-3 |
Hersteller Dienste | A0…BEh | E0…FEh | 7F A0…7F BEh |
RA – RemoteAdress – bei Kopplung mehrere Datennetze über Gateways ist SA oder TA die Adresse des Gateways, RA ist die Adresse des Teilnehmers aus einem anderen Datennetz
TA oder RA können auch im 1. Nutzdatenbyte stehen
Diagnosetester kann Steuergerät zur Eröffnung einer spez. (Programming, Adjustment,…) Diagnosesitzung auffordern (Default Diagnostic Session = 81h),
- meldet sich beim Steuergerät über Schlüsselaustausch an (Security Access),
unterschiedl. Schlüssel für unterschiedl. Clients (Hersteller, Vertragswerkstatt, ASU),
Steuergerät geht nach 5s ohne Botschaft vom Client in Default-Mode zurück
Service | SID | Param./Bemerk. |
Start Diagn. Session | 10h | Session-Nr. 1Byte |
Stop Diagn. Session | 20h | nur K-Line, bei CAN SID=10h - dann Aufruf Default Session 81h |
Read Data by ID | 22h | in KWP2000 nur Common ID, für Local ID SID=21h |
Read Memory by Adr | 23h | |
Read Scaling Data by ID | 24h | def. in ISO 14229/15765-3, Skalier.-/Normier.-infos für Werte |
Security Access | 27h | 01h Request Seed 02h Send Key ... |
Tester Present | 3Eh | Keep alive (Time-Out-Vermeidung) |
ECU Reset | 11h | Steuergerät Reset |
Read ECU Identification | 1Ah |
ISO 14230-2, ISO 15765-2, -4 (Adressierung)
Jedes Gerät muss eine eindeutige phys. Adresse haben.
Tester Adressbereich F0…FDH, OBD-Abgasmesser F1h
OBD-Tester sendet funktionale Adresse 33h (alle abgasrelevanten Steuergeräte müssen diese unterstützen)
Steuergeräte antworten mit ihrer phys. Adresse
ISO 14230 s.o.
ISO 15765-2 – für jedes Paar Tester – Steuergerät eigener MID
Für allg. Steuergeräte – bei 29bit CAN ID: 0CDAXXYYh (phys.) und 0CDBXXYYh (funkt.)
ISO 15765-4, ID für abgasrelevante Steuergeräte:
7DFh, 7E0h…7EFh | (11bit ID) | |
18DAXXYYh, 18DBXXYYh | (29bit ID) |
ISO 14229 / 15765-3 (Unified Diagnostic Services)
ISO 14229: Beschreibung Applikationsschicht unabhängig vom Bus, Implementierung in CAN in ISO 15765-3
SID wurden gegenüber KWP2000 gestrafft, einzelne Dienste wurden als Unterfunktionen in neuem Dienst zusammengefasst, Request über neuen Parameter Subfunction Level LEV
| AI || SID | LEV | Req. Param. |
Identifikation von Datensätzen oder Funktionen im Gerät durch 16bit-Kennziffern, einige Kennziffern (u.a. OBD-relevante) sind standardisiert
Verschlüsselte Datenübertragung nach ISO 15764 möglich (in zusätzl. Security-Layer)
Diagnose- | → | Security- | → | UDS Applic. | → | Lower | → | UDS Applic. | → | Security | → | Steuergeräte |
Anwendung | ← | Layer | ← | Layer | ← | Layer | ← | Layer | ← | Layer | ← | Anwendung |
ISO 15031 (On Board Diagnostic)
AI | II | SID | I | PID (Parameter ID) |
I | Req. Parameter | II | Service Request |
AI | II | SID + 40h | I | PID | I | Resp. Param. | II | Pos. Response |
AI | II | Err. 7Fh | I | SID | I | Error Code | II | Neg. Response |
Service | SID | Param./Bemerk. |
req. emiss. rel. trouble codes | 03h | Auslesen als endgültig defekt markierter abgasrelevanter Fehler |
req. emiss. rel. trouble codes | 07h | alle abgasrelevanten Fehler |
req. powertrain freeze frame data | 02h | Abfrage Umgebungsdaten Fehlercode |
clear emiss.-rel. diagn. funct. | 04h | Löschen Fehlerspeicher |
05h | Überwachung Lambda-Sonde | |
06h | Überwachung Kat./ASR, Zündung, Einspritzung | |
08h | Test Tankentlüftung | |
req. curr. Powertrain diagn. data | 01h | Abfrage Steuergeräte-Daten über Kennziffern (PID), bei Abfrage mit PID=00h liefert Steuergerät 32bit-Wert mit unterstützten PID |
req. Vehicle information | 09h | Fahrzeug-ID (Fahrgestell-Nr.) |
PID | Bedeutung | Wertebereich | |
00h | vom Steuergerät unterstützte PID | 32 bit | |
04h | Motorlast | 8 bit | 0…100% |
05h | Kühlwassertemp. | 8 bit | -40…+215°C |
06…09h | Kraftstoffmengenkorrektur der Einspritzventile (Ausgabe je 2 Zylinder) |
8 bit | -100...+99,2% |
0Bh | Druck im Ansaugrohr | 8 bit | 0…255 kPa |
0Ch | Motordrehzahl | 16 bit | 0…16383,75 /min |
0Dh | Geschwindigkeit | 8 bit | 0…255 km/h |
0Eh | Zündwinkel (Zyl. 1) | 8 bit | -64…63,5° |
0Fh | Ansauglufttemperatur | 8 bit | -40…+215°C |
10h | Luftmasse | 16 bit | 0…655,35 g/s |
11h | Gaspedalstellung | 8 bit | 0…100% |
14…1Bh | Lambda-Sonden-Spannung | 8 bit (16bit) | 0…1,275 V |
24…2Bh | Lambda-Sonden-Spannung (alternativ) | 8 bit (16bit) | 0…1,275 V |
34…3Bh | Lambda-Sonden-Spannung (alternativ) | 8 bit (16bit) | 0…1,275 V |
2Ch | Abgasrückführrate | 8 bit | 0…100% |
31h | Fahrtstrecke seit Löschen Fehlerspeicher | 16 bit | 0…65535 km |
4Eh | Betriebsdauer seit Löschen Fehlerspeicher | 16 bit | 0…65535 min |
21h | Fahrtstrecke seit Einschalten Fehlerlampe | 16 bit | 0…65535 km |
4Dh | Betriebsdauer seit Einschalten Fehlerlampe | 16 bit | 0…65535 km |
ISO 15765-4: zulässige CAN Bitrate 250 oder 500 kbit/s, Diagnosetester ermittelt selbst ID-Länge (11/29 bit), Teilnehmer senden vollständ. 8-Byte-CAN-Botschaften, Empfänger ignorieren Auffüll-Bytes
Beispiel OBD-Diagnose-Abfrage
Beispiel für CAN mit 11bit ID
Tester fragt nach Motordrehzahl und Fahrgeschwindigkeit:
CAN MID | PCI | SID | PID + Daten | |
Tester fragt nach Motordrehzahl und Fahrgeschwindigkeit | ||||
7DFh | 03h | 01h | 0Ch | 0Dh |
funkt. Adr. Tester → abgasrel. Geräte |
Single Frame 3 databyte |
Diagnosedaten Antriebsstrang lesen |
PID Motordrehzahl | PID Geschwindigkeit |
Motorsteuergerät antwortet mit Wert Motordrehzahl | ||||
7E8h | 04h | 41h | 0Ch | 0E 74h |
phys. Adr. Motorsteuergerät → Tester |
Single Frame 4 databyte |
pos. Response auf SID 01h |
PID Motordrehzahl | Messwert 925 /min |
Getriebesteuergerät antwortet mit Wert Geschwindigkeit | ||||
7E9h | 03h | 41h | 0Dh | 32h |
phys. Adr. Getriebesteuergerät → Tester |
Single Frame 3 databyte |
pos. Response auf SID 01h |
PID Geschwindigkeit | Messwert 50 km/h |
J1939 (Transportprotokoll für (US-)Nutzfahrzeuge)
Beruht auf CAN 2.0B (29bit ID), wird für FMS genutzt.
Literatur
BearbeitenZimmermann/Schmidgall: Bussysteme in der Fahrzeugtechnik Vieweg+Teubner, ISBN 978-3-8348-0447-1