CAN-Bus Eigenschaften und Übertragungsraten
Ein Controller Area Network (CAN-Bus) ist ein robuster Fahrzeugbusstandard, der es Mikrocontrollern und Geräten ermöglicht, in Anwendungen ohne Host-Computer miteinander zu kommunizieren. Bei dem CAN-Bus handelt es sich um ein nachrichtenbasiertes Protokoll, das ursprünglich für die Multiplex-Verdrahtung in Automobilen entwickelt wurde, um Kupfer zu sparen, aber auch in vielen anderen Bereichen eingesetzt wird.
Bitrate und Buslängen
Für den CAN-Bus bestehen folgende gängige Bitraten.
Bitrate | Kabellänge |
---|---|
10 kbits/s | 6,7 km |
20 kbits/s | 3,3 km |
50 kbits/s | 1,0 km |
125 kbits/s | 500 m |
250 kbits/s | 250 m |
500 kbits/s | 125 m |
1 Mbits/s | 25 m |
Die maximale Buslänge steht somit in Abhängigkeit vor der Busgeschwindigkeit.
CAN-Bus Stecker und Leitungen
Zur Verlegung des CAN-Busses werden Leitungen mit drei Adern benötigt:
- CAN-GND
- CAN-High
- CAN-Low
Die Datenleitungen CAN-High und CAN-Low werden miteinander verdrillt.
Der im Standard vorgeschlagene CAN-Steckverbinder ist der 9-polige Sup-D Stecker / Buchse mit folgender Belegung:
Pin | Signal | Beschreibung |
---|---|---|
1 | nicht verwendet | |
2 | CAN-L | negiertes CAN-Signal (Dominant Low) |
3 | CAN-GND | Masse |
4 | nicht verwendet | |
5 | CAN-SHLD | Schirmung (optional) |
6 | GND | Geräte Masse (optional) |
7 | CAN-H | positives CAN Signal (Dominant High) |
8 | nicht verwendet | |
9 | Vcc | Versorgungsspannung (optional) |
Das CAN-Frame
Ein CAN-Bustelegramm kann zwischen 1 und 8 Byte Nutzdaten enthalten und ist wie folgt aufgebaut:
CAN-Übertragungsraten
Bei einer Bus-Datenrate von 1 Mbit/s und einer theoretischen Auslastung von 100 % ergibt sich bei einer maximalen Datenlänge von 8 Byte eine theoretische Nutzdatenrate von ca. 561 kbit/s
Ein Frame mit einem Byte Nutzdaten bestitzt eine Länge von 58 Bit
Ein Frame mit acht Byte Nutzdaten besitzt eine Länge von 114 Bit
Die maximal möglichen Framerate beträgt somit:
bei 1 Byte Nutzdaten
bei 8 Byte Nutzdaten
Die maximale Nutzdatenrate lässt sich nun wie folgt berechnen:
bei 1 Byte Nutzdaten
bei 8 Byte Nutzdaten
Beispiel:
Die Übertragung einer 10 MByte großen Datei würde bei 8 Byte großen Teilstücken und einer Busgeschwindigkeit von 1 Mbit/s sowie einer Busauslastung von 100 % mit dieser Übertragung 2 Minuten und 22 Sekunden dauern.
Noch keine Kommentare.