
EtherCAT Informationen
Printed in the Federal Republic of Germany
TR-Electronic GmbH 2010, All Rights Reserved
10/07/2013
TR - ECE - BA - DGB - 0080 - 05
Page 19 of 176
4.7 Übertragung von SDO Nachrichten
Mit den SDO Diensten können die Einträge des Objektverzeichnisses gelesen oder
geschrieben werden. Das SDO Transport Protokoll erlaubt die Übertragung von
Objekten mit beliebiger Größe. Das EtherCAT SDO Protokoll ist äquivalent zum
CANopen SDO Protokoll, um die Wiederverwendung von vorhandenen Protokoll-
Stacks zu gewährleisten.
Das
erste
Byte
des
ersten
Segments
beinhaltet
die
notwendigen
Steuerungsinformationen. Die nächsten drei Bytes des ersten Segments beinhalten
den
Index
und
Sub-Index
der
zu
lesenden
oder
zu
schreibenden
Objektverzeichniseinträge. Die letzten vier Bytes des ersten Segments sind verfügbar
für Nutzdaten. Das zweite und die folgenden Segmente beinhalten das Steuerbyte
und Nutzdaten. Der Empfänger bestätigt jedes Segment oder ein Block von
Segmenten, so das eine Peer-To-Peer Kommunikation (Client/Server) statt findet.
Im CAN-kompatiblen Mode besteht das SDO Protokoll aus 8 Bytes, um der CAN
Datengröße zu entsprechen. Im erweiterten Mode werden die Nutzdaten einfach
erweitert, ohne den Protokoll-Header zu verändern. Auf diese Weise wird die
vergrößerte Datenmenge der EtherCAT Mailbox an das SDO Protokoll angepasst, die
Übertragung von großen Datenmengen wird somit entsprechend beschleunigt.
Außerdem wurde ein Mode hinzugefügt der es erlaubt, in einem Vorgang, die
kompletten Daten eines Indexes aus dem Objektverzeichnisses zu übertragen. Die
Daten aller Sub-Indices werden anschließend übertragen.
Die Dienste mit Bestätigung (Initiate SDO Upload, Initiate SDO Download, Download
SDO Segment, und Upload SDO Segment) und die Dienste ohne Bestätigung (Abort
SDO Transfer) werden für die Ausführung der Segmented/Expedited Übertragung der
Service-Daten-Objekte benutzt.
Der so genannte
SDO Client
(Master) spezifiziert in seiner Anforderung „Request“
den Parameter, die Zugriffsart (Lesen/Scheiben) und gegebenenfalls den Wert. Der
so genannte
SDO Server
(Slave bzw. Mess-System) führt den Schreib- oder
Lesezugriff aus und beantwortet die Anforderung mit einer Antwort „Response“. Im
Fehlerfall gibt ein Fehlercode (Abort SDO Transfer) Auskunft über die Fehlerursache.
Üblicherweise stellt der EtherCAT-Master entsprechende Mechanismen für die
SDO-Übertragung zur Verfügung. Die Kenntnis über den Protokoll-Aufbau und
internen Abläufe sind daher nicht notwendig.
Für die Fehlersuche kann es jedoch wichtig sein, den prinzipiellen Ablauf von
SDO-Übertragungen zu kennen. Aus diesem Grund wird im Folgenden näher auf
die Dienste
Initiate SDO Download Expedited
und
Initiate SDO Upload Expedited
eingegangen. Über diese Dienste können jeweils bis zu vier Byte geschrieben,
bzw. bis zu vier Byte gelesen werden. Für die meisten Objekte ist dies
ausreichend.