MC_MoveAbsolute
MC_MoveAbsolute starts positioning to an absolute target position and monitors the axis movement over the whole travel path. The Done output is set once the target position has been reached. Otherwise the CommandAborted or, on error, the Error output is set.
MC_MoveAbsolute is predominantly used for linear axis systems. For modulo axes the position is not interpreted as a modulo position, but as an absolute position in continuous absolute coordinate system. Alternatively, the MC_MoveModulo block can be used for modulo positioning.
Travel commands can be applied to coupled slave axes, if this option was explicitly activated in the axis parameters. Travel commands can be applied to coupled slave axes, if this option was explicitly activated in the axis parameters. In this case only Buffer-ModeAborting is possible.
Inputs
VAR_INPUT
Execute : BOOL;
Position : LREAL;
Velocity : LREAL;
Acceleration : LREAL;
Deceleration : LREAL;
Jerk : LREAL;
BufferMode : MC_BufferMode;
Options : ST_MoveOptions;
END_VAR
Execute |
The command is executed with a rising edge at input Execute. |
Position |
Absolute target position to be used for positioning. |
Velocity |
Maximum travel velocity (>0). |
Acceleration |
Acceleration (≥0). If the value is 0, the standard acceleration from the axis configuration in the System Manager is used. |
Deceleration |
Deceleration (≥0). If the value is 0, the standard deceleration from the axis configuration in the System Manager is used. |
Jerk |
Jerk (≥0). If the value is 0, the standard jerk from the axis configuration in the System Manager is used. |
BufferMode |
The BufferMode is analyzed, if the axis is already executing another command. The running command can be aborted, or the new command becomes active after the running command. The BufferMode also determines the transition condition from the current to the next command. |
Options |
The data structure option includes additional, rarely required parameters. The input can normally remain open. |
Outputs
VAR_OUTPUT
Done : BOOL;
Busy : BOOL;
Active : BOOL;
CommandAborted : BOOL;
Error : BOOL;
ErrorID : UDINT;
END_VAR
Done |
The Done output becomes TRUE once the target position was reached. |
Busy |
The Busy output becomes TRUE when the command is started with Execute and remains TRUE as long as the movement command is processed. If Busy becomes FALSE again, the function block is ready for a new job. At the same time one of the outputs, Done, CommandAborted or Error, is set. |
Active |
Active indicates that the command is executed If the command was queued, it becomes active once a running command is completed. |
CommandAborted |
Becomes TRUE, if the command could not be fully executed. The axis may have been stopped, or the running command may have been followed by a further Move command. |
Error |
Becomes TRUE if an error occurs. |
ErrorID |
If the error output is set, this parameter supplies the error number. |
Inputs/outputs
VAR_IN_OUT
Axis : AXIS_REF;
END_VAR
Axis |
Axis data structure |
The axis data structure of type AXIS_REF addresses an axis uniquely within the system. Among other parameters it contains the current axis status, including position, velocity or error status.