Allgemeines zur Verwaltung der Funktionsbausteine "Administrative" und "Motion"

Verwaltung von Eingangsvariablen

Der Funktionsbaustein startet an der steigenden Flanke des Eingangs Execute.

Jegliche weiteren Änderungen an den Eingangsvariablen werden nicht berücksichtigt.

Gemäß IEC 61131-3-Normen gilt: Wenn irgendein Variableneingang für einen Funktionsbaustein fehlt (d.h. offen oder nicht verbunden ist), wird der Wert aus dem vorhergegangenen Aufruf der Funktionsbaustein-Instanz verwendet. Beim ersten Aufruf wird in diesem Fall der ursprünglich konfigurierte Wert zugewiesen. Daher sollten den Eingängen eines Funktionsbausteins möglichst immer bekannte Werte zugewiesen werden, um so Probleme beim Debugging des Programms zu vermeiden. Für HSC- und PTO-Funktionsbausteine sollte die Instanz idealerweise nur einmal verwendet werden und diese Instanz muss sich im Haupttask befinden.

Verwaltung der Ausgangsvariablen

Die Ausgänge Done, InVelocity oder InFrequency können nicht gemeinsam mit den Ausgängen Busy, CommandAborted und Error verwendet: Nur einer dieser Ausgänge kann auf einem Funktionsbaustein TRUE sein. Wenn der Eingang Execute den Wert TRUE aufweist, ist einer dieser Ausgänge TRUE.

Bei einer steigenden Flanke am Eingang Execute gilt für den Ausgang der Wert Busy. Dieser Busy-Ausgang bleibt während der Ausführung des Funktionsbausteins gesetzt und wird bei der steigenden Flanke eines der anderen Ausgänge (Done, InVelocity, InFrequency, CommandAborted und Error) zurückgesetzt.

Die Ausgänge Done, InVelocity oder InFrequency werden gesetzt, wenn die Ausführung des Funktionsbausteins erfolgreich abgeschlossen wurde.

Wenn die Ausführung des Funktionsbausteins durch einen anderen Funktionsbaustein unterbrochen wird, wird stattdessen der Ausgang CommandAborted gesetzt.

Wenn die Ausführung des Funktionsbausteins aufgrund eines Fehlers beendet wird, wird der Ausgang Error gesetzt, und die erkannte Fehlernummer wird über den Ausgang ErrID ausgegeben.

Die Ausgänge Done, InVelocity, InFrequency, Error, ErrID und CommandAborted werden mit der fallenden Flanke des Eingangs Execute zurückgesetzt. Wenn der Eingang Execute zurückgesetzt wird, bevor die Ausführung abgeschlossen ist, werden die Ausgänge für einen Task-Zyklus nach Abschluss der Ausführung gesetzt.

Wenn die Instanz eines Funktionsbausteins einen neuen Execute-Befehl erhält, bevor er vollständig ausgeführt ist, gibt der Funktionsbaustein kein Feedback zurück wie mit Done bei der vorherigen Aktion.

Handhabung eines erkannten Fehlers

Alle Funktionsbausteine haben zwei Ausgänge, die einen Fehler bei der Ausführung des Funktionsbausteins melden können:

oError = TRUE, wenn ein Fehler erkannt wird.

oErrID Wenn Error = TRUE, wird die ID des erkannten Fehlers zurückgegeben.