MC_GroupStop (FB)

FUNCTION_BLOCK FINAL MC_GroupStop

Der Funktionsbaustein führt einen kontrollierten Bewegungsstopp aus und transferiert die Achsgruppe in den Zustand GroupStopping.

Er bricht jedes andere Bewegungskommando ab. Während die Achsgruppe im Zustand GroupStopping ist, kann kein anderer FB eine Bewegung auf dieser Achsgruppe ausführen. Nachdem die Achsgruppe den Zustand standstill erreicht hat, wird der Ausgang Done sofort auf TRUE gesetzt. Die Achsgruppe bleibt so lange im Zustand GroupStopping wie Execute TRUE ist, oder die Achsen noch nicht im Zustand standstill sind. Sobald Done gesetzt ist und Execute FALSE ist, geht die Achsgruppe in den Zustand GroupStandBy. Der Befehl kann nur durch MC_Power abgebrochen werden.

Bemerkung

Die effektiven Grenzen für Verzögerung und Ruck werden durch die Eingänge``Deceleration``, Jerk, AccFactor und JerkFactor bestimmt. Diese Grenzen können überschritten werden um auf der kommandierten Bahn zu bleiben.

Bemerkung

../../../_images/MC_GroupStop_Timing.png
Ein-/Ausgang:

Gültigkeitsbereich

Name

Typ

Initialwert

Kommentar

Inout

AxisGroup

AXIS_GROUP_REF_SM3

Referenz auf eine Achsgruppe

Eingang

Execute

BOOL

Steigende Flanke: Der Vorgang startet.

Deceleration

LREAL

Betrag der Verzögerung [u/s²]. Wird nur verwendet, wenn eine Continuous-Path-Bewegung angehalten wird.

Jerk

LREAL

Betrag der Verzögerung [u/s²]. Wird nur verwendet, wenn eine Continuous-Path-Bewegung angehalten wird.

AccFactor

LREAL

1

Die maximale Verzögerung jeder Achse wird mit diesem Faktor multipliziert. Der Faktor muss im Bereich ]0, 1] liegen.

JerkFactor

LREAL

1

Der maximale Ruck jeder Achse wird mit diesem Faktor multipliziert. Der Faktor muss im Bereich ]0, 1] liegen.

TorqueFactor

LREAL

1

Die maximale Drehmoment jeder Achse wird mit diesem Faktor multipliziert. Der Faktor muss im Bereich ]0, 1] liegen. Damit sich dieser Faktor auswirkt, muss ein dynamisches Modell mit SMC_GroupSetDynamics erstellt worden sein.

ClearMovements

BOOL

TRUE

Wenn auf TRUE gesetzt, werden alle vor MC_GroupStop kommandierten Bewegungen gelöscht, nachdem die Achsgruppe den Stillstand erreicht hat. Um mit SMC_GroupSaveContinueData und MC_GroupContinue die vorhergehenden Bewegungen aus der Halteposition fortsetzen zu können, muss ClearMovements auf FALSE gesetzt werden.

Name

STRING

‚MC_GroupStop‘

Der Name der Bewegung.

Ausgang

Done

BOOL

Stillstand wurde erreicht

Busy

BOOL

Der Funktionsbaustein ist nicht beendet

Active

BOOL

Zeigt an, dass der FB die Achse steuert

CommandAborted

BOOL

Der Befehl wird abgebrochen, indem MC-Power von einer oder mehreren Achsen der Gruppe deaktiviert wird. Der Status wechselt zu GroupDisabled.

CommandAccepted

BOOL

Der Befehl wurde von der Achsgruppe angenommen. Wenn der Ausgang TRUE wird, kann die Funktionsbausteininstanz dazu benutzt werden, die nächste Bewegung mit einer neuen steigenden Flanke an Execute zu kommandieren. Solange der Ausgang FALSE ist, wird der Funktionsbaustein ohne neue steigende Flanke von Execute weiter ausgeführt. Der Ausgang wird bei einer fallenden Flanke von Execute auf FALSE zurückgesetzt.

Error

BOOL

Zeigt an, dass im Funktionsbaustein ein Fehler aufgetreten ist

ErrorID

SMC_ERROR

Fehlererkennung

MovementId

SMC_Movement_Id

Eindeutige Identifikationsnummer der Bewegung. Gültig, wenn CommandAccepted oder Done TRUE sind.