
Die Xemo-Steuerungen haben sowohl von der Hardware- als auch der Softwareseite implementierte Überwachungsfunktionen, die dem Anwender ein großes Maß an Betriebssicherheit gewähren. Wird innerhalb der Steuerung oder der Ablaufsoftware ein Fehler erkannt, wird dieser optisch über Blinken der Error-LED ausgegeben, es wird aber auch in der Firmware eine Fehlermeldung erzeugt, die in einer Fehlerbehandlungsroutine ausgewertet werden kann und sollte.
Die Firmware übergibt die Fehlernummer einem Register, das in einem automatisch aufgerufenen Unterprogramm zur Auswertung zur Verfügung steht. Hierzu muss der Anwender ein Unterprogramm mit einem festgelegten Namen in seine Anwenderdatei einbinden.
Vorzugsweise sollte das Unterprogramm so aufgebaut sein:
sub onerror
dim err_nr as long
dim err_axis as long
dim err_sub as long
err_nr = _ErrNo() ' read the error number
err_axis = _ErrAxis()
err_sub = _SubError()
! HIER MUSS DIE EIGENE FEHLERBEHANDLUNG IMPLEMENTIERT WERDEN !
end sub
Die Xemo-Steuerung bzw. Software liefert Fehlermeldungen in den verschiedenen Phasen des Betriebs. Bei Fehlern werden die Fehlernummer ausgegeben, falls eine Achse betroffen ist die Achsnummer und bei Unterfehlern auch noch diese Nummer angegeben.
Je nach Stand der Firmwareversion variiert die Zahl der Fehlermeldungen, im Fehlerspeicher werden bis zu fünf Fehler gespeichert, die alle abgerufen und beseitigt werden müssen.
Nach Einschalten der Steuerung führt diese einen Selbsttest aus, getestet werden die Speicherinhalte und die Elektronik. Bei Hardware-Fehlern sollte grundsätzlich die Ursache ermittelt werden. Bei den kleinen Steuerungen
Die Fehler können zumindest erkannt und innerhalb der "onerror"-Routine ausgegeben werden. Wird betriebsbedingt z.B. bei NOTAUS die Motorspannung ausgeschaltet, so tritt nach Löschen dieses Fehler mit reserr() der Fehler unmittelbar wieder auf. In einem solchen Fallmacht es Sinn, in der "onerror"-Routine so lange zu bleiben, bis die Spannung wieder vorhanden ist.
Fehler-Nr. | Bedeutung Fehler | Fehlerbehandlung |
54 | Geräteübertemperatur | Register 1202 (Temperatur in 1/10 °C) einlesen, bei einem Wert von < 480 kann der Fehler gelöscht werden. Tritt der Fehler häufiger auf, muss die Kühlung verbessert werden! |
71 | fehlerhafte 12V Spannung | Register 1205 (Spannung in 100 mV) einlesen, bei einem Wert zwischen 115 und 125 kann der Fehler gelöscht werden. Bei dauerhaftem Fehler liegt ein Defekt vor! |
72 | fehlerhafte 24V Spannung | Register 1206 (Spannung in 100 mV) einlesen, bei einem Wert zwischen 220 und 260 kann der Fehler gelöscht werden. Bleibt die Spannung unzuläsig, muss die Stromversorgung überprüft werden. Da über diese Spannung auch die I/O versorgt wird, könnte ein Kurzschluss an einem fest angeschlossenem Verbraucher die Ursache sein. |
73 | fehlerhafte Motorspannung | Register 1207 (Spannung in 100 mV) einlesen, bei einem Wert zwischen 220 und 510 kann der Fehler gelöscht werden. Bleibt die Spannung unzuläsig, muss die Stromversorgung überprüft werden, es kann auch ein Fehler auf einer integrierten Schrittmotortreiberbaugruppe vorliegen, die Hardware muss überprüft werden. |
|
|
|
31 | Fehlerhafte Signatur im EEProm | Dies kann nach erster Programmierung bzw. Flash-Load auftreten, wenn das Programm zum ersten Mal gestartet wird. In diesem Fall den Fehler löschen, danach ist eine korrekte Prüfsumme gebildet. |
79 | Fehlerhafte Prüfsumme im Anwenderprogramm | Dieser Fehler sollte - wenn es überhaupt noch möglich ist - nur ausgegeben werden. Danach sollte die Anwendersoftware noch einmal geflasht werden. Bei dauerhaftem Fehler liegt ein Defekt imFlash-Speicher vor. |
Fehlermeldungen im Betrieb müssen jeweils zustandsabhängig behandelt werden, hier ist aus dem Kontext heraus zu entscheiden, ob ein Fehler gelöscht werden soll und kann bzw. welche Maßnahmen zu treffen sind.
Die Run-Time-Fehler können ebenfalls in der "onerror"-Routine behandelt werden.
Mein Kommentar