MC_Stop

MC_Stop 1:

MC_Stop hält eine Achse mit einer definierten Bremsrampe an und verriegelt die Achse gegen andere Bewegungskommandos. Der Baustein eignet sich daher für Stopps in besonderen Situationen in denen eine weitere Bewegung der Achse unterbunden werden soll.

Hinweis

Die Achse wird gleichzeitig für andere Bewegungskommandos gesperrt. Erst wenn nach dem vollständigen Stopp das Execute-Signal auf FALSE gesetzt wird, kann die Achse wieder gestartet werden. Die Entriegelung der Achse nach der fallenden Flanke von Execute benötigt wenige Zyklen. Während dieser Phase bleibt der Busy-Ausgang TRUE und der Funktionsbaustein muss weiter aufgerufen werden, bis Busy FALSE wird.

Hinweis

Mit einem MC_Reset wird die Verriegelung der Achse aufgehoben.

Alternativ kann die Achse mit MC_Halt ohne Verriegelung angehalten werden. MC_Halt ist für normale Bewegungsabläufe zu bevorzugen.

Bewegungskommandos können auf gekoppelte Slave-Achsen angewendet werden, wenn diese Option in den Parametern der Achse explizit aktiviert worden ist. Ein Bewegungskommando wie MC_Stop führt dann automatisch zum Abkoppeln der Achse und das Kommando wird anschließend ausgeführt.

Eingänge


VAR_INPUT
Execute : BOOL;
Deceleration : LREAL;
Jerk : LREAL;
Options : ST_MoveOptions;
END_VAR

Execute

Mit einer steigenden Flanke am Eingang Execute wird das Kommando ausgeführt.
Die Achse wird während des Stopps verriegelt. Erst wenn nach dem vollständigen Stopp das Execute-Signal auf FALSE gesetzt wird, kann die Achse wieder gestartet werden.

Deceleration

Verzögerung (≥0). Bei einem Wert von 0 wirkt die mit dem letzten Move-Kommando parametrierte Verzögerung.
MC_Stop und auch MC_Halt können aus Sicherheitsgründen nicht mit schwächerer Dynamik ausgeführt werden, als der gerade aktive Fahrauftrag. Die Parametrierung wird gegebenenfalls automatisch angepasst.

Jerk

Ruck (≥0). Bei einem Wert von 0 wirkt der mit dem letzten Move-Kommando parametrierte Ruck.
MC_Stop und auch MC_Halt können aus Sicherheitsgründen nicht mit schwächerer Dynamik ausgeführt werden, als der gerade aktive Fahrauftrag. Die Parametrierung wird gegebenenfalls automatisch angepasst.

Options

Zur Zeit nicht implementiert - Die Datenstruktur Options enthält zusätzliche, selten benötigte Parameter. Im Normalfall kann der Eingang offen bleiben.

Allgemeine Regeln für MC-Funktionsbausteine

Ausgänge


VAR_OUTPUT
Done : BOOL;
Busy : BOOL;
Active : BOOL;
CommandAborted : BOOL;
Error : BOOL;
ErrorID : UDINT;
END_VAR

Done

Der Ausgang Done wird TRUE, wenn die Achse gestoppt wurde und im Stillstand ist.

Busy

Der Busy-Ausgang wird TRUE, sobald das Kommando mit Execute gestartet wird und bleibt TRUE, solange das Kommando abgearbeitet wird. Wenn Busy wieder FALSE wird, so ist der Funktionsbaustein bereit für einen neuen Auftrag.
Hinweis Busy bleibt TRUE solange, die Achse gesperrt ist. Erst nachdem Execute=FALSE gesetzt wird, wird die Achse entriegelt und Busy wird FALSE.

Active

Active zeigt an, dass der Funktionsbaustein die Achse kontrolliert.
Hinweis Active bleibt TRUE solange, die Achse gesperrt ist. Erst nachdem Execute=FALSE gesetzt wird, wird die Achse entriegelt und Active wird FALSE.

CommandAborted

Wird TRUE, wenn das Kommando nicht vollständig ausgeführt werden konnte.

Error

Wird im Fehlerfall TRUE.

ErrorID

Liefert bei einem gesetzten Error-Ausgang die Fehlernummer.

Allgemeine Regeln für MC-Funktionsbausteine

Ein/Ausgänge


VAR_IN_OUT
Axis : AXIS_REF;
END_VAR

AXIS_REF

Axis

Achsdatenstruktur

Die Achsdatenstruktur vom Typ AXIS_REF adressiert eine Achse eindeutig im System. Sie enthält unter anderem den aktuellen Status der Achse, wie Position, Geschwindigkeit oder Fehlerzustand.