00196043-05 - SG X und X4I FSE_de - 第91页
Kommunikation und Steuerung CAN-Bus CAN-Bus-Protokoll 91 Student Guide SIPLACE X-Serie und X4I FSE Bei CAN erfolgt der Bu szugriff durch die TN völlig unkoordinier t nach dem Prinzip des dezentralen Buszugriffs. Es ist g…

Kommunikation und Steuerung
CAN-Bus-Protokoll CAN-Bus
Student Guide SIPLACE X-Serie und X4I FSE 90
CAN-Bus-Protokoll
4.3.2 CAN-Bus-Protokoll
CAN-Bus-Protokoll
▪ Start
Dieses Bit kennzeichnet den Beginn eines Telegramms und besteht aus einem dominanten Bit. Ein
Teilnehmer (TN) kann mit der Arbitrierung nur beginnen, solange sich der Bus im Ruhezustand
befindet.
▪ Adressenfeld (11-Bit-Identifier)
Der Wert des 11-Bit-Identifier entscheidet über den Buszugriff. Der niedrigere Wert besitzt die
höhere Priorität.
▪ Steuerfeld
Die 4 niedrigsten Bit des 6-Bit-Feldes geben die Datenlänge des nachfolgenden Datenfeldes in
Bytes an (DLC: data length code).
▪ Datenfeld
Enthält die eigentliche Nutzinformation und kann 0 bis 8 Byte umfassen. Die Übertragung eines
Bytes beginnt mit dem höchstwertigen Bit.
▪ Datensicherungsfeld CRC
Besteht aus einer 15-Bit Prüfsequenz (CRC Sequence + CRC Delimiter = CRC Field - Cyclic
Redundancy Check), sowie einem rezessiv übertragenem Begrenzungsbit. Mit der in der
Prüfsequenz enthaltenen redundanten Information kann der Empfänger nachprüfen, ob die
empfangene Nachricht durch Störeinwirkungen verfälscht wurde.
▪ Ende
Jedes Datentelegramm wird durch eine Bitsequenz von 7 rezessiven Bits abgeschlossen.
11-Bit-Identifier
4.3.2.1 11-Bit-Identifier
11-Bit-Identifier
Das CAN-Bussystem verwendet den 11-Bit-Identifier zur Adressierung der versch. CAN-Objekte.
Ein 11 Bit langer Identifier (Adresse) identifiziert die Nachricht bzgl. Art, Priorität, Quelle und/oder Ziel.
Durch den Identifier wird auch der Buszugriff gesteuert (Arbitrierung).
CAN-Bus-Arbitrierung
4.3.2.2 CAN-Bus-Arbitrierung
Arbitrierung (engl. Arbitration bedeutet übersetzt Entscheidung)

Kommunikation und Steuerung
CAN-Bus CAN-Bus-Protokoll
91 Student Guide SIPLACE X-Serie und X4I FSE
Bei CAN erfolgt der Buszugriff durch die TN völlig unkoordiniert nach dem Prinzip des dezentralen
Buszugriffs. Es ist grundsätzlich möglich, dass mehrere TN gleichzeitig mit dem Senden einer Nachricht
(Kommando oder Meldung) beginnen. Generell gilt, dass ein TN nur dann den Bus belegen kann, wenn
dieser frei ist. Die Busteilnehmer erkennen den Belegungszustand des Busses über eine festgelegte
Zeitspanne, innerhalb welcher der Bus auf Ruhepotential sein muss.
Immer dann, wenn mehrere TN gleichzeitig mit dem Senden einer Nachricht beginnen, wird im Rahmen
einer Auswahlphase (Arbitrierungsphase) entschieden, welcher TN am Bus verbleiben darf.
Ein solcher Buszugriffskonflikt wird durch bitweises Aufschalten des Nachrichtenarbitrierungsfeldes
(Standard ist ein 11-Bit-Identifier) aufgelöst.
Grundlage der bitweisen Arbitrierung ist die Unterscheidung von 2 physikalischen Buspegeln, einem
dominanten (low) und einem rezessiven Bit (high).
Ein freier Bus befindet sich auf rezessivem Pegel. Ein TN, der den Bus belegt, signalisiert dies durch
Aufschalten eines dominanten Bits (SoF, Start of Frame). Während der Arbitrierungsphase vergleicht
jeder sendende TN den von ihm aufgeschalteten Buspegel mit dem tatsächlich auf dem Bus
vorhandenen Pegel.
Jeder TN, der ein rezessives Bit gesendet hat und ein dominantes beobachtet, stellt seinen
Arbitrierungsversuch sofort ein und wird zum möglichen Empfänger der Nachricht. Am Ende der
Arbitrierung bleibt nur derjenige TN am Bus, dessen Nachricht den niedrigsten Identifierwert besitzt
(logische Null wird durch dominanten Pegel abgebildet). Die Priorität einer Nachricht ist also höher, je
niedriger der Wert des Identifier dieser Nachricht.
Dadurch wird sichergestellt, das bei gleichzeitiger Belegung des Busses durch mehrere TN immer nur
ein TN am Bus bleibt. Die von diesem TN gesendete Nachricht wird hier nicht zerstört, so dass wir von
einer verlustlosen Arbitrierung sprechen.
Zustandsdiagramm Arbitrierung
Im folgenden Beispiel ist die Arbitrierung durch bitweises Abtasten der Identifier von 2 Teilnehmern
dargestellt:

Kommunikation und Steuerung
CAN-Bus-Struktur CAN-Bus
Student Guide SIPLACE X-Serie und X4I FSE 92
CAN-Bus Arbitrierung Beispiel
Haben Busteilnehmer A und B einen Sendewunsch, so beginnen sie nach Start-of-frame Bit zu senden
und vergleichen jeweils gesendetes und empfangenes Bit. Da "0" auf dem Bus dominiert, erkennt
Busteilnehmer B hier beim vierten Bit einen Unterschied zum gesendeten Bit und zieht sich vom Bus bis
zum nächsten Start-of-frame zurück. Busteilnehmer A erkennt keinen Unterschied und sendet weiter.
Nachrichten mit hoher Priorität haben also einen Identifier, der mit vielen "0" beginnt.
Es existieren zwei Buszustände während der Arbitrierung: dominant und rezessiv.
Fehler auf dem CAN-Bus
4.3.2.3 Fehler auf dem CAN-Bus
Error Frames
▪ Was sind Error Frames?
Error Frames werden von den einzelnen Subsystemen gesendet, wenn ein Kommando nicht der
Kodiervorschrift entspricht oder physikalisch zerstört wurde. D. h. wenn in einem CAN-Telegramm
6 oder mehr Bits hintereinander den gleichen Pegel High oder Low aufweisen.
Wird so ein Kommando von einem Teilnehmer erkannt informiert er sofort die anderen Teilnehmer
und den Absender des Telegramms, indem er einen Error Frame sendet.
Durch den Empfang eines Error Frames verwerfen alle Teilnehmer die empfangene Nachricht und
beginnen ebenfalls einen Error Frame zu senden.
Wenn der Bus wieder frei ist, wird das Kommando erneut gesendet.
▪ Eine Häufung von Error Frames deutet auf physikalische Busfehler hin. Werden zu viele Error
Frames während des Betriebes erkannt, ist eine detaillierte Analyse der CAN-Signale notwendig.
CAN-Bus-Struktur
4.3.3 CAN-Bus-Struktur
HINWEIS
► Bei SIPLACE X-Maschinen ist der Maschinencontroller ein Box PC. In diesem befindet sich
die COM-Baugruppe.
► Bei Maschinen ab ca. 2008 entfällt die Beleuchtungsteuerung, da diese in die stationären
Kameras ab Version 04 integriert ist. Die Ansteuerung des PPWs und die Überwachung der
Sensoren erfolgt über den CAN-Knoten. Somit ist der PPW wieder im CAN-Bus
eingebunden.
HINWEIS
X-Serie/X4I mit SW 702
An diesen Maschinen übernimmt der erste BoxPC die Steuerung der gesamten Maschine. Der
zweite BoxPC dient hier als Visionrechner.