Kommando Code: 0x98
Beschreibung: Liefert den Status einer Achse oder eines Roboters des Moduls, sowie einige
weitere Informationen, wenn gewünscht. Das Modul kann diesen Status
selbständig in regelmäßigen Abständen updaten.
Parameter (Master -> Slave):
Antwort (Slave -> Master): Optionale Daten (entsprechend dem eingestellten ,,Modus''), im Anschluss daran der Status (2 Byte) gefolgt vom Achsindex. Die Bits des Status sind gleich aufgebaut wie beim GET STATE Kommando.
Beispiele:
Beispiel 1:
| D-Len | Cmd | Param | ||
| M->S | 0x07 | 0x98 | 0x00 0x00 0x80 0x3F 0x07 0x01 | Status-Information soll zyklisch jede Sekunde von Achse 1 des Moduls geliefert werden. Außer Status-Bits werden auch Position, Geschwindigkeit und Strom mitversendet. |
| S->M (zyklisch jede Sekunde) | 0x10 | 0x98 | 0xD6 0xA3 0x70 0x41 0x56 0xC9 0x41 0x40 0x3C 0x41 0xEB 0x3E 0x03 0x00 0x01 | Position: 0xD6..0x41, Geschwindigkeit: 0x56..0x40, Strom: 0x3C..0x3E; Modul ist in Bewegung und Referenziert (0x03); kein Fehler (0x00); Achsindex: 1 (0x01) |
Beispiel 2:
| D-Len | Cmd | Param | ||
| M->S | 0x02 | 0x98 | 0x02 | Status-Information von Achse 2 einmalig abfragen. Dabei werden zuletzt abgefragte Parameter mitversendet. |
| S->M | 0x10 | 0x98 | 0x0x53 0x63 0xB7 0x41 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x61 0xD9 0x02 | Position: 0x53..0x41, Geschwindigkeit: 0x00..0x00, Strom: 0x00..0x00; Modul referenziert, Bewegung beendet, Bremse betätigt (0x61); Schnellstop betätigt (0xD9); Achsindex: 2 (0x02) |
Beispiel 3:
| D-Len | Cmd | Param | ||
| M->S | 0x07 | 0x98 | 0x00 0x00 0x00 0x00 0x01 0x03 | Status-Information von Achse 3 einmalig abfragen. Außer Status-Bits wird auch die Position mitversendet. |
| S->M | 0x07 | 0x98 | 0x00 0x00 0x00 0x00 0x20 0x00 0x03 | Position: 0x00..0x00; Modul nicht referenziert, Bremse betätigt (0x20); kein Fehler (0x00); Achsindex: 3 (0x03) |
Sonstiges: Will man Position, Geschwindigkeit und Strom
unter CAN in einer Nachricht erhalten, so ist das Fragmentierprotokoll
zu verwenden. Unter Profibus finden alle
Informationen in einer Profibusnachricht platz. Ein einmal gesetzter ,,Modus''
wird beibehalten und braucht somit nicht jedes mal neu gesetzt
werden. Wird das Modul eingeschaltet, ist der Modus auf ,,0x07'' gesetzt,
es werden also alle möglichen Status-Informationen komplett übermittelt.
![]() | Beim Profibus werden, wenn alle Parameter (Position, Geschwindigkeit, Strom) übermittelt wurden nur die unteren 8 Bit des Status angezeigt. Diese kommen nun auf Byte 14 zu liegen, wo profibusspezifisch der Status immer aktuell geliefert wird. Auf Byte 15 folgt der MsgCount, welcher die oberen 8 Bit des Status Wortes überschreibt. |
![]() | Unter Profibus wird standardgemäß in Byte 10-13 die aktuelle Position übermittelt. Werden mit GET STATE alle Parameter angefordert, so wird die aktuelle Position in Bytes 10-13 mit dem aktuellen Stromwert überschreieben. Daher ist es empfelenswert unter Profibus das ,,Modus'' Byte maximal auf ,,0x07'' zu setzen (Position, Geschwindigkeit und Strom werden übermittelt). |
![]() | Beim Profibus sollte man mit dem ,,automatischen'' Abrufen vorsichtig sein. Hier kann es unter Umständen günstiger sein die Daten zu ,,pollen''. Insbesondere dann, wenn der FREEZE Mechanismus genutzt wird. |