MC_MoveDirectRelative
This Function Block commands a movement of an axes group to a relative position without taking care of how (on which path) the target position is reached. The start position is the initial position of the TCP.
Parameters
| * | Parameter | Data Type | Description | Default |
|---|---|---|---|---|
|
VAR_IN_OUT
|
||||
| B |
AxesGroup | AXES_GROUP_REF | A logical reference to a group of axes, which contains several additional substructures pertaining to the group. | |
| VAR_INPUT | ||||
| B | Execute |
BOOL | Upon the rising edge, all other function block inputs are read and the function is initiated. To modify an input, change the value and re-trigger the execute input. | FALSE |
| B | Distance |
VECTOR | An array of values. The specific meaning of each value depends upon the Coordinate System specified and the mechanism, and the context. For example, the values could be world space positions or velocities. | Array of LREAL#0.0 |
| V | LimitVelocity |
LREAL | Maximum allowable velocity in user units/sec. On a remote hosted robot, this parameter is in percentage of the maximum rating for the robot. | LREAL#0.0 |
| V | LimitAccel |
LREAL | The maximum allowable acceleration in user units/sec2. On a remote hosted robot, this parameter is in percentage of the maximum rating for the robot. | LREAL#0.0 |
| V | LimitDecel |
LREAL | The maximum allowable deceleration in user units/sec2. On a remote hosted robot, this parameter is in percentage of the maximum rating for the robot. | LREAL#0.0 |
| V | LimitJerk |
LREAL | Maximum allowable jerk in user units/sec3. On a remote hosted robot, this parameter is in percentage of the maximum rating for the robot. | LREAL#0.0 |
| V | MoveOptions |
Yt_GroupMoveOptions | Commands to specify the pose of a robot mechanism, set Cartesian or rotational velocity, velocity units, etc. | All zeros in structure |
| E | CoordSystem |
MC_CoordinateSystem | Enumeration with the following values: 0 = ACS, 1 = MCS, 2 = PCS, 3 = TCS, 4 = WCS, 5 = TPCS. | MC_CoordinateSystem#ACS |
| E | BufferMode |
MC_BufferMode | Defines the behavior of the axis - allowable modes are Aborting, Buffered, BlendingLow, BlendingPrevious, BlendingNext, and BlendingHigh. | MC_BufferMode#Aborting |
| E | TransitionMode |
MC_TransitionMode | Specifies how segments are blended together when multiple MC_MoveLinear and MC_MoveCircular function blocks are buffered. | MC_TransitionMode#TMNone |
| E | TransitionParameter |
VECTOR | Additional parameters for the selected TransitionMode. See detailed section about TransitionParameter. | Array of LREAL#0.0 |
| VAR_OUTPUT | ||||
| B | Done |
BOOL | Set high when the commanded action has completed successfully. If another block takes control before the action is completed, the Done output will not be set. This output is reset when Execute goes low. | |
| E | Busy |
BOOL | Set high upon the rising edge of the Execute input, and reset when Done, CommandAborted, or Error is true. In the case of a function block with an Enable input, a Busy output indicates the function is operating, but not ready to provide Valid information. (No Error) | |
| E | Active |
BOOL | For buffered modes, this output is set high at the moment the block takes control of the axis. For non buffered modes, the outputs Busy and Active have the same value. | |
| E | CommandAborted |
BOOL | Set high if motion is aborted by another motion command or MC_Stop. This output is cleared with the same behavior as the Done output. | |
| B | Error | BOOL | Set high if an error has occurred during the execution of the function block. This output is cleared when 'Execute' or 'Enable' goes low. |
|
| E |
ErrorID | UINT | If Error is true, this output provides the Error ID. This output is reset when 'Execute' or 'Enable' goes low. |
|
Notes
- This function block is supported only for MotomanSync groups.
Error Description
See the Function Block ErrorID List.
Example 1
Following example shows the behavior of MC_MoveDirectRelative. All positions are specified in MCS:
- Starting at position p0 (10, 10) a MC_MoveLinearAbsolute to position p1 (80, 35) is commanded.
- While the TCP is moving towards p1, the MC_MoveLinearAbsolute command is aborted by an MC_MoveDirectRelative command. The actual position of the TCP, when MC_MoveDirectRelative becomes active, is (44.5, 21.63).
- The TCP leaves the path p0 p1 and moves toward the new target position p2 (54.5, 41.63). The resulting trajectory depends on the kinematic transformation of the axes group.
- This function cannot be executed after the conveyor tracking feature is enabled when a blended transition is required. Synchronized motion will stop first, then this block will execute the relative move.