MC_MoveAbsolute
Mit dem Funktionsbaustein MC_MoveAbsolute wird eine Positionierung auf eine absolute Zielposition gestartet und die Achsbewegung über den gesamten Fahrweg überwacht. Der Ausgang „Done“ wird gesetzt, wenn die Zielposition angefahren wurde. Anderenfalls wird der Ausgang „CommandAborted“ oder im Fehlerfall der Ausgang „Error“ gesetzt.
MC_MoveAbsolute wird in erster Linie für lineare Achssysteme eingesetzt. Bei
Modulo-Achsen wird die Position nicht als Modulo-Position, sondern ebenfalls als absolute Position in einem endlosen absoluten Koordinatensystem interpretiert. Zur Modulo-Positionierung kann alternativ der Funktionsbaustein MC_MoveModulo verwendet werden.
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_MoveAbsolute führt dann automatisch zum Abkoppeln der Achse und das Kommando wird anschließend ausgeführt. In diesem Fall ist ausschließlich der BufferMode „Aborting“ möglich.
Eingänge
VAR_INPUT
Execute : BOOL;
Position : LREAL;
Velocity : 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. |
Position | LREAL | Absolute Zielposition, auf die positioniert werden soll. |
Velocity | LREAL | Maximale Geschwindigkeit, mit der gefahren werden soll (>0). |
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_MoveAbsolute wird nach dem laufenden Kommando aktiv oder bricht dieses ab. Übergangsbedingungen vom laufenden zum nächsten Kommando werden ebenfalls durch den BufferMode festgelegt. Wird das Kommando auf eine gekoppelte Slave-Achse angewendet, ist nur der BufferMode „Aborting“ möglich. 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 offenbleiben. |
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
Done : BOOL;
Busy : BOOL;
Active : BOOL;
CommandAborted : BOOL;
Error : BOOL;
ErrorID : UDINT;
END_VAR
Name | Typ | Beschreibung |
---|---|---|
Done | 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 „Done“, „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 |