Kommando Code: 0x95
Beschreibung: Liefert den Status 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 (den Code ,,Modus'' beachten), im Anschluss daran der Status (2 Byte), welcher wie folgt aufgebaut ist:
| Referenziert | Bit 1 | 0x01 |
| Bewegung | Bit 2 | 0x02 |
| Programmablauf | Bit 3 | 0x04 |
| Warnung | Bit 4 | 0x08 |
| Fehler | Bit 5 | 0x10 |
| Bremse | Bit 6 | 0x20 |
| Bewegung blockiert | Bit 7 | 0x40 |
| Position erreicht | Bit 8 | 0x80 |
Beispiel 1:
| D-Len | Cmd | Param | ||
| M->S | 0x06 | 0x95 | 0x00 0x00 0x80 0x3F 0x07 | Status-Information soll zyklisch jede Sekunde vom Modul geliefert werden. Außer Status-Bits werden auch Position, Geschwindigkeit und Strom mitversendet. |
| S->M (zyklisch jede Sekunde) | 0x0F | 0x95 | 0xD6 0xA3 0x70 0x41 0x56 0xC9 0x41 0x40 0x3C 0x41 0xEB 0x3E 0x03 0x00 | Position: 0xD6..0x41, Geschwindigkeit: 0x56..0x40, Strom: 0x3C..0x3E; Modul ist in Bewegung und Referenziert (0x03); kein Fehler (0x00) |
Beispiel 2:
| D-Len | Cmd | Param | ||
| M->S | 0x01 | 0x95 | Status-Information einmalig abfragen. Dabei werden zuletzt abgefragte Parameter mitversendet. | |
| S->M | 0x0F | 0x95 | 0x0x53 0x63 0xB7 0x41 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x61 0xD9 | Position: 0x53..0x41, Geschwindigkeit: 0x00..0x00, Strom: 0x00..0x00; Modul referenziert, Bewegung beendet, Bremse betätigt (0x61); Schnellstop betätigt (0xD9) |
Beispiel 3:
| D-Len | Cmd | Param | ||
| M->S | 0x06 | 0x95 | 0x00 0x00 0x00 0x00 0x01 | Status-Information einmalig abfragen. Außer Status-Bits wird auch Position mitversendet. |
| S->M | 0x07 | 0x95 | 0x00 0x00 0x00 0x00 0x20 0x00 | Position: 0x00..0x00; Modul nicht referenziert, Bremse betätigt (0x20); kein Fehler (0x00) |
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 Datencode
,,Daten'' wird beibehalten und braucht somit nicht jedes mal neu gesetzt
werden. Wird das Modul eingeschaltet, ist der Datencode auf ,,0x07'' gesetzt,
es werden also alle möglichen Status-Informationen komplett übermittelt.
![]() | Unter 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). |
![]() | Unter 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. |