MC_MoveContinuousRelative
Mit dem Funktionsbaustein MC_MoveContinuousRelative wird eine Positionierung um eine relative Distanz gestartet und die Achsbewegung über den gesamten Fahrweg überwacht. An der Zielposition wird eine konstante Endgeschwindigkeit erreicht, die beibehalten wird. Der Ausgang „InEndVelocity“ wird gesetzt, wenn die Zielposition angefahren wurde. Anderenfalls wird der Ausgang „CommandAborted“ oder im Fehlerfall der Ausgang „Error“ gesetzt.
Nachdem die Zielposition erreicht wurde, wird die Funktion des Bausteins abgeschlossen und die Achse wird nicht weiter überwacht.
![]() | Für Eil-/Schleichachsen ist MC_MoveContinuousRelative nicht implementiert. |
Eingänge
VAR_INPUT
Execute : BOOL;
Distance : LREAL;
Velocity : LREAL;
EndVelocity : LREAL;
Acceleration : LREAL;
Deceleration : LREAL;
Jerk : LREAL;
BufferMode : MC_BufferMode;
Options : ST_MoveOptions;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Execute | BOOL | Mit einer steigenden Flanke wird das Kommando ausgeführt. |
Distance | LREAL | Relative Fahrstrecke, um die positioniert werden soll. |
Velocity | LREAL | Maximale Geschwindigkeit, mit der „Distance“ abgefahren werden soll (>0). |
EndVelocity | LREAL | Endgeschwindigkeit, die nach Abfahren der relativen Strecke „Distance“ beibehalten werden soll. |
Acceleration | LREAL | Beschleunigung (≥0) |
Deceleration | LREAL | Verzögerung (≥0) |
Jerk | LREAL | Ruck (≥0) |
BufferMode | Wird ausgewertet, wenn die Achse bereits ein anderes Kommando ausführt. MC_MoveContinuousRelative wird nach dem laufenden Kommando aktive oder bricht dieses ab. Übergangsbedingungen vom laufenden zum nächsten Kommando werden ebenfalls durch den BufferMode festgelegt. Um den BufferMode zu verwenden, ist immer ein zweiter Funktionsbaustein nötigt. Es ist nicht möglich, einen Move-Baustein mit neuen Parametern zu triggern, während er noch aktiv ist. | |
Options | Datenstruktur, die zusätzliche selten benötigte Parameter enthält. Im Normalfall kann der Eingang offen bleiben. |
Siehe auch: Allgemeine Regeln für MC-Funktionsbausteine
Ein-/Ausgänge
VAR_IN_OUT
Axis : AXIS_REF;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Axis | Achsdatenstruktur, welche eine Achse eindeutig im System adressiert. Sie enthält unter anderem den aktuellen Status der Achse, wie Position, Geschwindigkeit oder Fehlerzustand. |
Ausgänge
VAR_OUTPUT
InEndVelocity : BOOL;
Busy : BOOL;
Active : BOOL;
CommandAborted : BOOL;
Error : BOOL;
ErrorID : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
InEndVelocity | BOOL | TRUE, wenn die Zielposition erreicht wurde. |
Busy | BOOL | TRUE, sobald das Kommando mit „Execute“ gestartet wird und solange der Fahrbefehl abgearbeitet wird. Wenn „Busy“ FALSE ist, ist der Funktionsbaustein bereit für einen neuen Auftrag. Gleichzeitig ist einer der Ausgänge „CommandAborted“ oder „Error“ gesetzt. |
Active | BOOL | Zeigt an, dass das Kommando ausgeführt wird. Wenn das Kommando gepuffert wurde, wird es evtl. erst aktiv, nachdem ein laufendes Kommando beendet ist. |
CommandAborted | BOOL | TRUE, wenn das Kommando nicht vollständig ausgeführt werden konnte. Die Achse wurde gestoppt oder das laufende Kommando wurde durch ein weiteres Move‑Kommando abgelöst. |
Error | BOOL | TRUE, wenn ein Fehler auftritt. |
ErrorID | UDINT | Liefert bei einem gesetzten Error-Ausgang die Fehlernummer. |
Siehe auch: Allgemeine Regeln für MC-Funktionsbausteine
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS-Bibliotheken |
---|---|---|
TwinCAT v3.0.0 | PC oder CX (x86 oder x64) | Tc2_MC2 |