Achsenzustände (Zustandsdiagramm)

Das nachfolgend abgebildete Zustandsdiagramm definiert den Status einer Achse sowie den Zustandswechsel von einem Status in den anderen. Ebenfalls zeigt es, welche Motion Control-Funktionsbausteine für die Zustandswechsel erforderlich sind und in welcher Reihenfolge sie ausgeführt werden müssen. Eine Beauftragung mehrerer Motion Control-Funktionsbausteine gleichzeitig ist möglich.

Zustandsdiagramm (PLCopen-Zustandsmaschine)

Aus allen Zuständen erreichbar: Es ist ein Fehler in der Achse aufgetreten.

Aus allen Zuständen erreichbar: MC_Power . Status = FALSE und kein Fehler aktiv

MC_Reset UND MC_Power . Status = FALSE

MC_Reset UND MC_Power . Status = TRUE UND MC_Power . Enable = TRUE

MC_Power . Enable = TRUE UND MC_Power . Status = TRUE

MC_Stop . Done = TRUE UND MC_Stop . Execute = FALSE

Anmerkungen zum Zustandsdiagramm
  • Das Zustandsdiagramm bezieht sich auf eine Einzelachse.
  • Die Achse befindet sich stets in einem der oben definierten Zustände.
  • Für Mehrachsbewegungen gilt: Master- und Slave-Achse(n) können sich in unterschiedlichen Zuständen befinden. Für jede beteiligte Achse gilt wiederum das oben dargestellte Zustandsdiagramm. Das Ankoppeln einer Slave-Achse hat keinen Einfluss auf den Zustand der Master-Achse.
  • Die Pfeile zwischen den Zuständen kennzeichnen mögliche Zustandswechsel (Transitionen). Die gestrichelten Pfeile kennzeichnen Zustandswechsel aufgrund des Abbruchs eines Bewegungskommandos sowie system- oder fehlerbedingte Zustandswechsel.
  • Bewegungskommandos werden immer der Reihe nach (sequentiell) abgearbeitet.
  • Die Bewegungskommandos, die zu einem Zustandswechsel führen, sind oberhalb des entsprechenden Zustands aufgeführt. Als Folge eines Zustandswechsels ändert sich auch das Bewegungsprofil.
Achsenzustand "Disabled"

Der Zustand " Disabled " beschreibt den Grundzustand einer Achse:

  • Die Achse ist gesperrt.
  • Es lassen sich keine Bewegungskommandos ausführen.
  • In der Achse liegt kein Fehler vor.
Achse freigeben (Bewegungsbereitschaft einschalten)

Der Wechsel vom Zustand " Disabled " in den Zustand " Standstill " erfolgt durch Aufruf des FB MC_Power mit Enable = TRUE. Vor dem Zustandswechsel meldet die Achse über MC_Power . Status = TRUE den Status "Achse ist bewegungsbereit" zurück.

Achsenzustand "Standstill"
  • Die Achse ist freigeben.
  • In der Achse liegt kein Fehler vor.
  • Es sind keine Bewegungskommandos aktiv.
Hinweis!

Bitte beachten Sie bei der Verwendung sollwertmanipulierender FBs (insbesondere L_MC1P_AverageFilterSetValue und L_CT1P_OscillationComp ):

  • In den PLCopen-Status "Standstill" wird eingetreten, sobald die unmanipulierte Sollwertvorgabe den Stillstand erreicht hat.
  • Für die Stillstandserkennung in der Applikation können bei Bedarf zusätzlich die Ausgänge xStandstillActVelocity und xInPosition in den FBs MC_ReadMotionState oder L_MC1P_AxisBasicControl sowie der Ausgang xInEqOut des sollwertmanipulierenden FBs genutzt werden.
Hinweis!

Wird der FB MC_Stop im Achsenzustand " Standstill " aufgerufen, erfolgt ein Wechsel nach " Stopping " und zurück nach " Standstill ", wenn der Execute -Eingang auf FALSE zurückgesetzt wird.

  • Der Zustand " Stopping " ist solange aktiv, solange der Execute -Eingang auf TRUE gesetzt ist.
  • Der Statusausgang Done wird auf TRUE gesetzt, wenn die Achse über die am FB MC_Stop eingestellte Bremsrampe gestoppt wurde.
Achse wieder sperren (Bewegungsbereitschaft ausschalten)

Aus jedem Achsenzustand mit Ausnahme von " ErrorStop " ist ein Wechsel in den Grundzustand " Disabled " möglich, indem der Enable -Eingang des FB MC_Power auf FALSE zurückgesetzt wird. Der Wechsel erfolgt direkt. Alle aktiven Bewegungskommandos werden abgebrochen (" CommandAborted ").

Achsenzustand "ErrorStop"

Der Zustand " ErrorStop " besitzt die höchste Priorität und wird im Fehlerfall aktiv. Auslöser des Fehlers kann ein Funktionsbaustein in der Applikation oder eine Überwachungsfunktion der Achsdaten sein. Auch erfolgt ein Wechsel in den Zustand " ErrorStop ", wenn der verbundene Antrieb in einen Fehlerzustand gewechselt ist. Hierzu wird das Fehlerbit im Statuswort zyklisch ausgewertet.

  • Die Achse wird in den Stillstand geführt (sofern sie sich nicht bereits im Stillstand befindet).
  • Es lassen sich keine weiteren Bewegungskommandos ausführen.
  • Der aufgetretene Fehler wird in den Achsdaten angezeigt und kann über den Ausgang AxisErrorID des FB MC_ReadAxisError ausgegeben werden.
  • Wird im Falle eines Antriebsfehlers die gerätespezifische Fehlernummer als PDO übertragen, so wird diese in den Achsdaten angezeigt und kann über den Ausgang DriveErrorID des FB MC_ReadAxisError ausgegeben werden.
  • Eine Warnung des Antriebs wird über den Ausgang DriveWarning des FB MC_ReadAxisError signalisiert.
  • Die Achse lässt sich über den Enable -Eingang des FB MC_Power freigeben oder sperren (sofern der Antrieb dies zulässt), ohne dass jedoch ein Zustandswechsel nach " Standstill " oder " Disabled " erfolgt.
  • Der Zustand " ErrorStop " kann nur durch eine Quittierung des Fehlers über den FB MC_Reset verlassen werden, sofern die Fehlerursache behoben ist. In Abhängigkeit des Enable -Eingangs des FB MC_Power erfolgt dann ein Wechsel nach " Standstill " oder " Disabled ".