Warnung
Sie lesen eine alte Version dieser Dokumentation. Wenn Sie aktuelle Informationen wünschen, schauen Sie bitte unter 2025.04 .Fehler
Bei der Nutzung des Asycubes mit Modbus TCP können mehrere Arten von Fehlern auftreten. Die Bits des Holding Registers HR_MODBUS_STATUS (Adresse 64) repräsentieren den Status dieser Fehlertypen.
Wert (binär) |
Name |
Beschreibung |
---|---|---|
0b0001 |
Modbus-Fehlerstatus des Asycubes |
Ist der Wert 1, konsultieren Sie bitte den Abschnitt Wichtigste Modbus-Ausnahmecodes |
0b0010 |
Fehlerstatus interne Modbus-Kommunikation |
Ist der Wert 1, konsultieren Sie bitte den Abschnitt Holding Register: Fehlercodes |
0b0100 |
Status der Asycube-Warnungen |
Ist der Wert 1, konsultieren Sie bitte den Abschnitt Warnungen und Alarme des Asycubes |
0b1000 |
Status der Asycube-Alarme |
Ist der Wert 1, konsultieren Sie bitte den Abschnitt Warnungen und Alarme des Asycubes |
Der Fehlerstatus kann zurückgesetzt werden, indem das entsprechende Bit im Holding Register HR_MODBUS_CONTROL auf 1 gesetzt wird. Zum Beispiel wird durch das Schreiben des Wertes 0b0110
(entspricht dem Wert ‘6’ in dezimal) sowohl der Modbus-Fehlerstatus des Asycubes als auch der Warnungsstatus des Asycubes zurückgesetzt.
Wichtigste Modbus-Ausnahmecodes
Die Modbus-Ausnahmecodes sind in den Protokollspezifikationen definiert (http://www.modbus.org). Ein Teil dieser Ausnahmen ist im Asycube implementiert (vgl. Tab. 19). Das Modbus-Protokoll ist dafür verantwortlich, die Ausnahmen direkt in der Modbus-Nachricht zu übertragen und nicht in einem Holding Register zu speichern.
Wert (dezimal) |
Name |
Beschreibung |
1 |
Unzulässige Funktion |
Der in der Abfrage empfangene Funktionscode wird vom Slave nicht erkannt oder nicht zugelassen |
2 |
Unzulässige Datenadresse |
Die Datenadressen einiger oder aller benötigten Entitäten sind nicht zulässig oder existieren nicht im Slave |
3 |
Unzulässiger Datenwert |
Wert wird vom Slave nicht akzeptiert |
Holding Register: Fehlercodes
Das Register HR_MODBUS_ERROR_CODE gibt den aktuellen Modbus-Fehler des Asycubes an.
Das erste Byte (Maske 0x00FF
) gibt den mit der Implementierung von Modbus mit Asycube verbundenen Fehler an (vgl. Tab. 20).
Wert (hexadezimal) |
Name |
Beschreibung |
0x01 |
Schreibzugriff nicht gewährt |
Die Daten können nicht geschrieben werden, weil es unzulässig ist oder weil der Index ausserhalb des zulässigen Bereichs liegt. Ein Beispiel wäre die Auswahl einer Sequenz (HR_SELECT_VIBRATION_SET) mit einem Wert ausserhalb des Bereichs, wie z.B. 27. |
Das zweite Byte (Maske 0xFF00
) gibt den Fehlercode der internen Modbus-Kommunikation an (vgl. Wert Error Bit in Tab. 17). Der Fehler bei der internen Modbus-Kommunikation tritt typischerweise auf, wenn eine Vibration mit falschen Parameterwerten ausgelöst wird.
Ein Beispiel wäre das Auslösen einer Plattformzentrierung (HR_PLATFORM_CENTERING_TRIG), während der Wert der X-Position (HR_PLATFORM_CENTERING_X ) ausserhalb des Bereichs liegt, z. B. bei 120 %.
Warnungen und Alarme des Asycubes
Der Asycube verfügt über seine eigenen Warnungen und Alarme. Sie können jeweils in den Holding Registern HR_WARNINGS und HR_ALARMS gelesen werden.