CAN Controller Area Network

Slides:



Advertisements
Ähnliche Präsentationen
Hauptseminar 2003 CAN-ProtokollRobert Lange Startseite CAN-Protokoll, CAN-Bus Controller Area Network Vortrag für das Hauptseminar in Informations- und.
Advertisements

Proseminar: Anwendungen für Augmented Reality
Powerpoint-Präsentation
Ethernet Powerlink Safety (EPLsafety) Volker Sasse , KW-Software
Motivation Bisher: Codes mit möglichst kurzer Codelänge.
2. Link Layer Lernziele: Verstehen wie IP prinzipiell über eine Link Layer Verbindung übertragen wird.
Attribute Protocol.
Eine kleine Einführung
2 Kommunikationssysteme bieten Kommunikationsdienste an, die das Senden und Empfangen von Nachrichten erlauben (sending & receiving messages) bestehen.
CSMA/CD Zugriffsverfahren
Vergleich von LAN - Protokollen
Die Geschichte der Netzwerktechnologie von Carsten Freitag
IrDA 1979 wurde die Infrarotkommunikation von der Firma Hewlett Packard erstmalig eingesetzt um den Taschenrechner HP-41C mit einem Drucker zu verbinden.
Link Access Protocol Das IrLAP entspricht der Data LinK Layer im OSI Modell und benutzt eine Weiterentwicklung des High-level Data Link Control (HDLC)
Multimedia-Seminar Der European Installation Bus (EIB) Vortrag von Sven-Mortem Resch FH Giessen-Friedberg.
Aufgaben der Sicherungsschicht
Netze Vorlesung 11 Peter B. Ladkin
Einführung in die Netzwerktechnik 1 Der ARP-Prozess
2. Link Layer Lernziele: – Verstehen wie IP prinzipiell über eine Link Layer Verbindung übertragen wird.
1. Einführung Lernziele: Auffrischen des Wissens aus Rechnernetze
Wegplanung mit Fast Forward Andreas Bauer2 Inhalt Klassisches Planen Verschiedene Planerstrategien Fast Forward –Allgemeines –Systemarchitektur.
Sicherheit in drahtlosen Netzen
Wireless LAN Mobile Computing Seminar SS 2003 Ba Kien Tran
Parallele Schnittstellen
CCNA1 – Module 6 Ethernet Fundamentals
RS232 Register und ihre Bits
Ende Christian SeitzJochen Braun. Ende Der CMOS Standard Chip.
Netzwerkkomponenten (Hardware)
Abteilung / Referent / Datum
Von der Frequenz zum FID und zurück I
TCP/IP-Ethernet.
Christian Schindelhauer Sommersemester Vorlesung
Controller Area Network
KFZ-Elektronik Teil 1 – Was bedeutet CAN?
A MAC protocol for full exploitation of Directional Antennas in Ad-hoc Wireless Networks Ad hoc Network Seminar Referent: Dominik Erb basierend auf einer.
Produktmanagement RimatriX & Software Solutions / Fabian Schäfer / 12
PSI - Überblick und Szenarien
Übersicht Definition Netzwerk
Das OSI Schichtenmodell
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Fehler in Rechnernetzen
C164CI - CAN-Schnittstelle
Vertiefung und Erweiterung des Referates von M. Dreier
Computerorientierte Physik VORLESUNG
OSI- MODELL 7 Schichten Gruppe : WRJ.
Warum gibt es Netzwerke?
Meldungen über Ethernet mit FINS/UDP
Funktionsweise der 4. Schicht im OSI-Modell am Beispiel TCP und UDP.
Funktionsweise der 4. Schicht im OSI-Modell
Datenverarbeitung im PC
EIB Europäischer Installationsbus
Anforderungen an Automotive Bussysteme
Die 7 Schichten des OSI-Schichtmodells
LOW-COST 3D-Printer Rapid Prototyping.
CCNA_Sem1 Kapitel 6.
Schutzvermerk nach DIN 34 beachten Ethernet und Echtzeit.
Bussysteme WS 05/06 Dominik Fehrenbach EN5:
SNMP – Simple Network Management Protocol
Webserver Apache & Xampp Referenten: Elena, Luziano und Sükran
Kirsten Kropmanns Allgemeine Technologien II 9. März 2009
Visualisierung verteilter Systeme
Random Access: Einleitung TDMA-, FDMA- oder CDMA-Mehrfachzugriffssysteme Benutzertrennung über die Zeit, die Frequenz oder über Codes Random Access Systeme.
Lisa Franziska Busche, Matthias Meyer, Michael Plas, Jasmin Reinders
Media Access Control Zuständig für die Aufbereitung und Übertragung der Frames.
2 Kommunikationssysteme
ABB STOTZ-KONTAKT GmbH ABB i-bus® KNX Raum Master, Basic, RM/S 1.1
Netzwerke Netzwerkgrundlagen.
Den Bus erkunden ….
Kapitel IX: Übertragungsprotokollimplementierungen
 Präsentation transkript:

CAN Controller Area Network Kommunikationsnetze Michael Bauer

Gliederung Einleitung Grundlegende Eigenschaften des CAN Protokolls Aufbau eines Datenframes Bitweise Arbitrierung Fehlererkennung und Fehlerbehandlung Michael Bauer

Einleitung CAN Bussystem auch als Feldbus bezeichnet zur Kommunikation zwischen niedrigen Prozessoren (Sensoren/Aktoren) Entwicklung von CAN als Autobus Mitte der 80-er Jahre bei der Firma Bosch GmbH und 1985 mit Intel erstmalig in Silizium realisiert heute hat jeder große Halbleiterhersteller mind. ein CAN Produkt im Angebot Notwendigkeit der Entwicklung war durch Automobilindustrie gegeben, da immer komplexere Kabelbäume in Fahrzeugen integriert wurden Beispiel: Kabellänge > 2000m mit Gewicht > 100kg dazu kamen bis zu 600 verschiedene Kabelbäume pro Modell Michael Bauer

Einleitung 1992 erstmalig in Serienmodell (S-Klasse) eingesetzt und heute in fast allen Automobiltypen verwendet, auch im echtzeitkritischen Bereich weitere Anwendungen: - Verkehrsmittel: PKW,LKW,Flugzeuge,Züge,Schiffe, landwirtschaftliche Maschinen, Baumaschinen etc. - Industriesteuerungen: programmierbare Steuerungen, Handhabungsautomaten,Roboter,intelligente Motorsteuerungen,Geldautomaten,Spielzeuge u.v.m. Michael Bauer

II. Grundlegende Eigenschaften des CAN Protokolls CAN Protokoll auf OSI Schicht 1 bis 2 baut auf eine Multimaster Hierarchie, das bedeutet bei defekt eines Knoten läuft das Gesamtsystem trotzdem stabil weiter Zugriffsverfahren CSMA/CD+CR: CS – Carrier Sense MA – Multiple Access CD – Collision Detection CR – Collision Resolution Jeder Knoten wartet bis der Bus frei ist und startet dann die Übertragung, andernfalls erfolgt eine Bitweise Arbitrierung. Michael Bauer

II. Grundlegende Eigenschaften des CAN Protokolls Ereignisgesteuerte Kommunikation: Sobald ein Ereignis auftritt was zu einer zu übertragenden Information führt, sorgt der Teilnehmer für die Übertragung. Kommunikation ist grundsätzlich Broadcast-orientiert: - Zugriffssieger sendet grundsätzlich an alle anderen Knoten, diese prüfen auf Fehler erst dann wird durch Empfänger geprüft ob für ihn bestimmt Michael Bauer

II. Grundlegende Eigenschaften des CAN Protokolls Remote Request – Antwort: - Nachfrage kann von jedem Knoten ausgelöst werden - erfolgt über ein „Remote Request Frame“ - gerade aktuelle Daten werden dann gesendet Michael Bauer

II. Grundlegende Eigenschaften des CAN Protokolls Grenzwerte des System-Layout: - 32 Knoten pro System (bei Standard Leitungstranceivern) - bis zu 128 Knoten möglich - 211 Botschaften pro System (CAN 2.0A) - 229 Botschaften pro System (CAN 2.0B) - 0 bis 8 Byte Daten pro Botschaft - 117 Bits pro Botschaft (CAN 2.0A) - 136 Bits pro Botschaft (CAN 2.0B) - Bit-Rate programmierbar zwischen 5kBit/s und 1MBit/s Michael Bauer

II. Grundlegende Eigenschaften des CAN Protokolls Leitungstreibereigenschaften - Differential mode (+NRZ): zwei Signalleitungen die mit komplementären Signalen - Unsymmetrische Übertragung (+NRZ): nur eine Signalleitung - Gleichspannungsloser Betrieb: Transformatorkopplung zur Unterdrückung unterschiedlicher Erdungspotentiale Michael Bauer

III. Aufbau eines Datenframes Format nach CAN 2.0A S O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 Format nach CAN 2.0B S O F R T I EOF D E L ACK DEL C R C IDENTIFIER1 CONTROL1 DATA (Byte) 1 15 7 3 11 2 0-8 IDENTIFIER2 18 CONTROL2 6 Michael Bauer

III. Aufbau eines Datenframes O F 1 S O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Arbitrierung Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes O F R T I EOF D E L ACK DEL C R C IDENTIFIER CONTROL DATA (Byte) 1 15 7 3 11 6 0-8 SOF: Start of Frame Identifier: Kennzeichnung und Priorität der Nachricht RTR: Remote Transmission Request Bit Control: Datenlänge und Extended ja/nein Data: Daten CRC: x15+ x14+ x10+ x8+ x7+ x4+ x3+1 DEL: Begrenzungsbit ACK: Bestätigungsbit/Bestätigungsslot EOF: End of Frame IFS: Interframe Space Bits minimaler Abstand zum nächsten Frame Michael Bauer

III. Aufbau eines Datenframes Standardformat und erweitertes Format sind kompatibel zueinander Unterscheidung durch zwei Bits SRR und IDE Bit Substitute Remote Request Bit ersetzt RTR und bedeutet, dass ein Standardformat prinzipiell Höherprior ist Identifier Extension Bit kennzeichnet Extended Format S O F R T I EOF D E L ACK DEL C R C IDENTIFIER1 CONTROL1 DATA (Byte) 1 15 7 3 11 2 0-8 IDENTIFIER2 18 CONTROL2 6 S O F R T I EOF D E L ACK DEL C R C IDENTIFIER1 CONTROL1 DATA (Byte) 1 15 7 3 11 2 0-8 IDENTIFIER2 18 CONTROL2 6 Michael Bauer

IV. Bitweise Arbitrierung Wenn mehrere Teilnehmer gleichzeitig auf den Bus zugreifen, wird in einer Auswahlphase (Arbitrierung) entschieden wer am Bus bleiben darf. Arbitrierungsfeld besteht aus RTR-Bit + Identifier jeder Knoten liest den aktuellen Wert des Kommunikationsmedium und vergleicht mit dem gesendeten wenn Vergleich negativ ausfällt schaltet er sofort auf Empfang physikalische Grundlage sind dominante bzw. rezessive Buspegel („wired and“, „open collector“), d.h. das dominante Bit überschreibt das rezessive 00...00 ist also höchstpriore und 11...11 ist die am wenigsten wichtige Botschaft Michael Bauer

IV. Bitweise Arbitrierung Beispiel: S O F R T IDENTIFIER1 DATA (Byte) 1 0-8 CONTROL 6 10 9 8 7 5 4 3 2 Teilnehmer 1 Teilnehmer 2 Teilnehmer 3 Buspegel Arbitrierungsphase Michael Bauer

IV. Fehlererkennung und Fehlerbehandlung Jeder erkannte Fehler wird allen Teilnehmer mitgeteilt, welche die empfangene Botschaft verwerfen. Gesendet wird ein sogenanntes Errorframe, welches durch alle Teilnehmer erkannt wird. Damit der Bus bei einer lokalen Störung eines Teilnehmers nicht dauerhaft belegt wird, zieht sich dieser nach und nach vom Busgeschehen zurück. Part of Data Frame 6-Bit Active Error Flag 0-6-Bits Active 8 Bits of Error Delimiter Active Error Frame Michael Bauer

IV. Fehlererkennung und Fehlerbehandlung 1. Bit-Fehler: empfangenes Bit gesendetes Bit außer Arbitrierungsphase bzw. Acknowledgement 2. Bit-Stuffing-Fehler: mehr als 5 aufeinanderfolgende gleiche Bits zwischen Start of Frame und CRC-Delimiter 3. CRC-Fehler: CRC Prüfsumme stimmt nicht 4. Format-Fehler: Verletzung des Datenformats 5. Acknowledgement-Fehler: während des Acknowledgement Slot kein dominantes Bit empfangen Michael Bauer

IV. Fehlererkennung und Fehlerbehandlung Reihenfolge der Fehlerbehandlung: 1. Fehler wird erkannt 2. Errorframe wird von jedem Teilnehmer der den Fehler erkennt gesendet. 3. Telegramm wird von allen verworfen. 4. Fehlerzähler wird bei jedem Teilnehmer in entsprechender Weise beeinflusst. 5. Telegramm wird erneut komplett gesendet. Michael Bauer

Literatur Wolfhard Lawrenz (Hrsg.): CAN Controller Area Network, 3., bearbeitete Auflage, Hüting Verlag 1999 Konrad Etschberger: CAN Controller-Area-Network, Carl Hanser Verlag 1994 Robert Bosch GmbH: CAN Specification, Version 2.0, Sep. 1991 Michael Bauer

FIN Michael Bauer