MC_MoveDirAbs
Description
MC_MoveDirAbs commands the movement of an axes group to a specified absolute position in the specified coordinate system without taking care of how (on which path) the target position is reached.
-
-
- An error is returned if the group is in the GroupDisabled state.
- This function block does not have its own Acceleration, Deceleration, Velocity, and JerkIn physics, jerk is the rate of change of acceleration; more precisely, the derivative of acceleration with respect to time arguments. These are set using MC_AxisSetDefaults.
- The maximum number of axes is set by the MaxNumberOfAxes input set in the MC_CreateAxesGrp function block.
- S-Curve motion is not currently supported. The Jerk input is currently ignored. S-Curve motion and the Jerk argument will be supported in a future release. .
When all motion is completed successfully, the state becomes GroupStandby.
Related Functions
MC_MoveDirRel, MC_ErrorDescription
Coordinated Motion, the top-level topic for Coordinated Motion.
Arguments
For more detail on how inputs and outputs work, refer to PLCopen Function Blocks - General Rules
Input
Execute | Description | On the rising edgeA rising edge is the transition of a digital signal from low to high. It is also called positive edge, request to perform a direct absolute move. |
Data Type | BOOL | |
Range | 0, 1 | |
Unit | n/a | |
Default | — | |
AxesGroup | Description | Reference to an axes group |
Data Type | AXES_GROUP_REF | |
Range | — | |
Unit | n/a | |
Default | — | |
Position[ ] | Description |
Array of absolute end positions for each axis in the group. |
Data Type | LREAL | |
Range | [0, Number of axes in group - 1] | |
Unit | n/a | |
Default | — | |
CoordSystem | Description |
The coordinate system used when commanding the direct absolute move Currently, only the ACS coordinate system is supported. See Coordinate Systems to learn more. |
Data Type | SINT | |
Range |
|
|
Unit | n/a | |
Default | — | |
BufferMode | Description |
Defines the chronological sequence of the function block relative to the previous block. See the table in Buffer Modes. |
Data Type |
SINT MC_BUFFER_MODE_ABORTING = 0 = Abort |
|
Range | — | |
Unit | n/a | |
Default | — |
Output
Done | Description | If True, then the command completed successfully. |
Data type | BOOL | |
Busy | Description | If True, then the function block is executing. |
Data type | BOOL | |
Active | Description | If True, then the function block is controlling motion. |
Data type | BOOL | |
CommandAborted | Description | If True, command was aborted by another function block. |
Data type | BOOL | |
Error | Description | If True, an error has occurred. |
Data type | BOOL | |
ErrorID | Description | Indicates the error if Error output is set to TRUE. See table in PLCopen Function Block ErrorID Output. |
Data type | INT |
Example
Structure Text
Inst_MC_MoveDirAbs( DirectMove, Group1_Ref, PositionList, MC_COORDSYSTEM_ACS, MC_BUFFER_MODE_ABORTING);
IL
BEGIN_IL"Instruction list" This is a low-level language and resembles assembly CAL Inst_MC_MoveDirAbs( DirectMove, Group1_Ref, PositionList, MC_COORD_SYSTEM_ACS, MC_BUFFER_MODE_ABORTING) END_IL
Function Block Diagram
Ladder Diagram