MC_MoveCircAbs
Function Block A function block groups an algorithm and a set of private data. It has inputs and outputs. - Commands interpolated circular movement on an axes group to the specified absolute positions in the coordinate system as specified by the CoordSystem argument.
Inputs
Input |
Data Type |
Range |
Unit |
Default |
Description |
---|---|---|---|---|---|
Execute |
BOOL |
0, 1 |
N/A |
No default |
On the rising edge A rising edge is the transition of a digital signal from low to high. It is also called positive edge, request to perform a circular absolute move. |
AxesGroup |
No range |
N/A |
No default |
The axis group that performs the circular absolute move. |
|
CircMode |
SINT One of these enumeration values:
|
No range |
N/A |
No default |
Specifies the meaning of the AuxPoint[] input. |
AuxPoint[] |
LREAL |
0, Number of axes in group - 1 |
N/A |
No default |
Required Precision
Description Array of absolute positions for each axis in the group. The meaning depends on the value of the CircMode input:
|
EndPoint[] |
LREAL |
0, Number of axes in group - 1 |
N/A |
No default |
Required Precision
Description Array of absolute end positions for each axis in the group. |
PathChoice |
SINT One of these enumeration values:
|
No range |
N/A |
No default |
Specifies the direction of the path. This argument is only relevant when CircMode is MC_CIRC_MODE_CENTER. |
Velocity |
LREAL |
0 < Velocity < (20 * Acceleration) and |
User unit/sec |
No default |
Maximum velocity of the defined path. See Limitations on Acceleration and Jerk for more information. |
Acceleration |
LREAL |
0 < Velocity < (20 * Acceleration) |
User unit/sec2 |
No default |
Maximum acceleration. See Limitations on Acceleration and Jerk for more information. |
Deceleration |
LREAL |
0 < Velocity < (20 * Deceleration) |
User unit/sec2 |
No default |
Maximum deceleration. See Limitations on Acceleration and Jerk for more information. |
Jerk |
LREAL |
Trapezoidal velocity profiles: S-Curve velocity profiles: |
User unit/sec3 |
No default |
See Limitations on Acceleration and Jerk for more information. |
CoordSystem |
SINT |
One of these enumeration values:
|
N/A |
No default |
The coordinate system used when commanding the circular absolute move.
|
BufferMode |
SINT One of these enumeration values:
|
No range |
N/A |
No default |
Defines the chronological sequence of the function block relative to the previous block.
|
TransitionMode |
SINT |
The value is limited to:
|
N/A |
No default |
Coupled with the TransitionParameter[ ], this input defines the shape and dynamics of the inserted contour to connect the current motion with the next motion in the queue. See Transition Between Moves for more information. |
TransitionParameter[ ] |
LREAL |
1, N |
N/A |
No default |
This array is dependent on the specified TransitionMode.
|
Outputs
Output |
Data Type |
Range |
Unit |
Description |
---|---|---|---|---|
Done |
BOOL |
No range |
N/A |
If TRUE, the command completed successfully. |
Busy |
BOOL |
No range |
N/A |
If TRUE, the function block is executing. |
Active |
BOOL |
No range |
N/A |
If TRUE, the function block is controlling motion. |
CommandAborted |
BOOL |
No range |
N/A |
If TRUE, the command was aborted by another function block. |
Error |
BOOL |
No range |
N/A |
If TRUE, an error has occurred. |
ErrorID |
INT |
No range |
N/A |
Indicates the error if Error output is TRUE. See the table in PLCopen Function Block ErrorIDs. |
Remarks
- See Coordinated Motion, the top-level topic for Coordinated Motion.
- See Circular Moves Diagrams for more information about movement options.
- An error is returned if:
- The group is in the GroupDisabled state.
- The input parameters do not meet the required precision.
- See Precision Requirements for Circular Move Input Parameters for more information.
- When all motion has completed successfully, the axes group state is GroupStandby.
-
-
- Circular motion is only supported for axes groups with only two attached axes.
- 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.
Figure 6-148: MC_MoveCircAbs
FBD Language Example
FFLD Language Example
IL Language Example
BEGIN_IL "Instruction List" This is a low-level language and resembles assembly
CAL Inst_MC_MoveCircAbs( ExecuteMove, Group1_Ref, MC_CIRC_MODE_BORDER, AuxPoints, EndPoints, MC_CIRC_PATHCHOICE_CLOCKWISE, Velocity, Acceleration, Deceleration, Jerk, MC_COORDINATE_SYSTEM_ACS, MC_BUFFER_MODE_ABORTING, MC_TRANSITION_MODE_NONE, TransitionParams )
END_IL
ST Language Example
Inst_MC_MoveCircAbs( ExecuteMove, Group1_Ref, MC_CIRC_MODE_BORDER, AuxPoints, EndPoints, MC_CIRC_PATHCHOICE_CLOCKWISE, Velocity, Acceleration, Deceleration, Jerk, MC_COORDINATE_SYSTEM_ACS, MC_BUFFER_MODE_ABORTING, MC_TRANSITION_MODE_NONE, TransitionParams );
See Also