IF_RobotMotion - MoveJ (Method)
Type: |
Method |
Available as of: |
V2.8.2.0 |
This chapter provides information on:
oTask
Point-to-point motion in three-dimensional space.
With the method MoveJ, a motion job can be issued to move in a point-to-point motion to a target position in three-dimensional space.
With this method, it is possible to modify the robot arm configuration.
ET_ArmConfiguration.Left |
|
![]()
|
![]()
|
If a modification of arm configuration is requested that results in a segment length of 0 (start and target identical, angle of axis B = 0°), the modification takes place at the start of the next segment that includes a movement of the TCP (segment length <> 0).
For detailed information on ET_ArmConfiguration.InnerLeft and ET_ArmConfiguration.InnerRight, also refer to chapter Behavior with Arm Configuration InnerRight/InnerLeft.
It is not possible to modify the arm configuration if tracking is active (coordinate system <> CSR). In this case, the movement command is refused.
If a tracking is requested within a MoveJ segment, the tracking offset is shifted to the path position of the arm configuration modification.
Input |
Data type |
Description |
---|---|---|
i_stTarget |
Target position coordinates of the motion job in three-dimensional space. |
|
i_etArmCofiguration |
Configuration of the target arm configuration. Valid values: oET_ArmConfiguration.Right oET_ArmConfiguration.Left oET_ArmConfiguration.InnerRight oET_ArmConfiguration.InnerLeft |
|
i_lrMaxZone |
LREAL |
Configuration of the maximum size of the blending zone of the motion job. Value range: i_lrMaxZone ≥ 0.0 |
i_udiSegmentId |
UDINT |
Id of the motion job. The Id of a motion job in a connected path must be unique. Value range: i_udiSegmentId > 0 |
Output |
Data type |
Description |
---|---|---|
q_etDiag |
General library-independent statement on the diagnostic. A value not equal to GD.ET_Diag.Ok corresponds to a diagnostic message. |
|
q_etDiagExt |
POU-specific output on the diagnostic. q_etDiag = ET_Diag.Ok -> Status message q_etDiag <> ET_Diag.Ok -> Diagnostic message |
|
q_sMsg |
STRING[80] |
Event-triggered message that gives additional information on the diagnostic state. |
q_etDiag |
q_etDiagExt |
Enumeration value |
Description |
---|---|---|---|
OK |
0 |
Ok |
|
OK |
14 |
A move command has been sent to an identical target position. |
|
OK |
43 |
A new connected path is established. |
|
ExecutionAborted |
10 |
The command has been denied. |
|
ExecutionAborted |
112 |
The transformation is invalid. |
|
ExecutionAborted |
1 |
The configuration is invalid. |
|
ExecutionAborted |
51 |
Disabled |
|
ExecutionAborted |
116 |
The start offset is out of range. |
|
ExecutionAborted |
87 |
There are no more connected paths available. |
|
ExecutionAborted |
88 |
There are no more zones available. |
|
ExecutionAborted |
77 |
The robot is not ready. |
|
ExecutionAborted |
130 |
The motion parameters are invalid. |
|
ExecutionAborted |
86 |
There are no more segments available. |
|
ExecutionAborted |
201 |
The maximum number of available arm configuration events is reached. |
|
ExecutionAborted |
176 |
Tracking is active. |
|
ExecutionAborted |
159 |
Diagnostic message concerning the work envelope is active. |
|
ExecutionAborted |
205 |
The external position source is configured. |
|
InputParameterInvalid |
21 |
The segment Id already exists. |
|
InputParameterInvalid |
15 |
The segment Id is out of range. |
|
InputParameterInvalid |
12 |
The maximum zone is out of range. |
|
InputParameterInvalid |
200 |
The arm configuration is invalid. |
|
InputParameterInvalid |
91 |
The target is invalid. |
|
InputParameterInvalid |
202 |
The arm configuration is indeterminable. |
|
UnexpectedProgramBehavior |
4 |
The initialization was unsuccessful. |
|
UnexpectedProgramBehavior |
3 |
An interface is invalid. |
|
UnexpectedProgramBehavior |
13 |
A feedback value was invalid. |
Enumeration name: |
ArmConfigurationInvalid |
Enumeration value: |
200 |
Description: |
The arm configuration is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The value transferred at the input i_ArmConfiguration is outside the valid range. |
At the input i_ArmConfiguration, a valid value must be transferred. Valid values: oET_ArmConfiguration.Right oET_ArmConfiguration.Left |
Enumeration name: |
CommandRefused |
Enumeration value: |
10 |
Description: |
The command has been denied. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
A positioning command is already being processed. Two move commands, for example MoveL(...), MoveC(...), MoveS(...) or MoveSync(...), are called simultaneously. |
Ensure that move commands are called one after another and not simultaneously. |
Enumeration name: |
ConfigInvalid |
Enumeration value: |
1 |
Description: |
The configuration is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The robot configuration is invalid. |
Call the method ConfigDone(...) to complete the configuration of the robot. |
Enumeration name: |
Disabled |
Enumeration value: |
51 |
Description: |
Disabled |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
FB_Robot.xEnable = FALSE -> The robot is not active. |
Set FB_Robot.xEnable = TRUE to enable the robot. |
ExternalPositionSourceConfigured
Enumeration name: |
ExternalPositionSourceConfigured |
Enumeration value: |
205 |
Description: |
The external position source is configured. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
An external position source for the robot components cartesian, orientation, and auxiliary axes is configured. |
Sending a motion job is not possible when an external position source for the robot components is configured. Do not send a motion job. |
Enumeration name: |
IdenticalTarget |
Enumeration value: |
14 |
Description: |
A move command has been sent to an identical target position. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The motion job target position transferred at the input i_stTarget and the input i_etArmConfiguration are identical to the target position of the previously issued motion job |
A corresponding entry is created in the logger. Ensure that the target position is different to last target position of the previously issued motion job. Decrease the value of IF_RobotConfigurationAdvanced.lrMinPositionDelta, if necessary. |
The motion job target position transferred at the input i_stTarget is identical to the target position of the previously issued motion job, but the arm configuration is modified |
A corresponding entry is created in the logger. The modification of the arm configuration is stored for further movement commands. |
Enumeration name: |
InitializationFailed |
Enumeration value: |
4 |
Description: |
The initialization was unsuccessful. |
The motion job was aborted.
Enumeration name: |
InterfaceInvalid |
Enumeration value: |
3 |
Description: |
An interface is invalid. |
The motion job was aborted.
Enumeration name: |
MaxZoneRange |
Enumeration value: |
12 |
Description: |
The maximum zone is out of range. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The value transferred at the input i_IrMaxZone is outside the valid range. |
At the input i_lrMaxZone, a value greater than or equal to 0 must be transferred. |
Enumeration name: |
MotionParameterInvalid |
Enumeration value: |
130 |
Description: |
The motion parameters are invalid. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The motion parameters of the path are invalid. At least one of the motion parameters (Velocity, Acceleration, Deceleration, Ramp) is invalid. |
Ensure that the used motion parameters for each ET_RobotComponent are valid. |
Enumeration name: |
NewConnectedPath |
Enumeration value: |
43 |
Description: |
A new connected path is established. |
The motion job was transferred successfully.
A new connected path is established.
NoMoreArmConfigurationEventsAvailable
Enumeration name: |
NoMoreArmConfigurationEventsAvailable |
Enumeration value: |
201 |
Description: |
The maximum number of available arm configuration events is reached. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
No more arm configuration events can be issued for this motion. |
Wait until move commands for point-to-point movements with arm configuration modifications have been executed before sending new move commands. |
Enumeration name: |
NoMoreConnectedPathsAvailable |
Enumeration value: |
87 |
Description: |
There are no more connected paths available. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
No further motion jobs can be issued. The maximum number of connected paths has been reached. |
Wait until move commands for path movements have been executed before sending new move commands. |
Enumeration name: |
NoMoreSegmentsAvailable |
Enumeration value: |
86 |
Description: |
There are no more segments available. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
No more motion jobs can be issued for a point-to-point motion. |
Wait until move commands for point-to-point movements have been executed before sending new move commands. |
Enumeration name: |
NoMoreZonesAvailable |
Enumeration value: |
88 |
Description: |
There are no more zones available. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
No further motion jobs can be issued. The maximum number of blending zones has been reached. |
Wait until move commands for path movements have been executed before sending new move commands. |
Enumeration name: |
NotReady |
Enumeration value: |
77 |
Description: |
The robot is not ready. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The robot is not ready. |
Ensure that the configuration of the robot is finished, the robot is enabled, and the drives are ready. |
Enumeration name: |
Ok |
Enumeration value: |
0 |
Description: |
Ok |
The motion job was transferred successfully.
Enumeration name: |
SegmentIdAlreadyExists |
Enumeration value: |
21 |
Description: |
The segment Id already exists. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The Id transferred at the input i_udiSegmentId already exists in the latest connected path. |
Ensure that the segment Id is unique in the latest connected path. |
Enumeration name: |
SegmentIdRange |
Enumeration value: |
15 |
Description: |
The segment Id is out of range. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The value transferred at the input i_udiSegmentId is outside the valid range. |
At the input i_udiSegmentId, a value greater than or equal to 0 must be transferred. |
Enumeration name: |
StartOffsetRange |
Enumeration value: |
116 |
Description: |
The start offset is out of range. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The value transferred at the input i_lrStartOffset of the method IF_RobotMotion.ChangeCoordinateSystem was negative. The start position for changing the coordinate system is calculated from the end of the move command. The length of the move command is too short. |
Ensure that the length of the linear move command is long enough. Ensure that the start offset fits to the length of the move command. |
Enumeration name: |
TargetInvalid |
Enumeration value: |
91 |
Description: |
The target is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The position transferred at the input i_stTarget is outside the valid work envelope. |
Ensure that the target position transferred at the input i_stTarget is inside the valid work envelope of the robot. |
Enumeration name: |
TrackingActive |
Enumeration value: |
176 |
Description: |
Tracking is active. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
A modification of the arm configuration is initiated while tracking is active. |
Ensure that tracking is finished before the motion job including a modification of the arm configuration is called. Ensure that i_etArmConfiguration represents the same value as the arm configuration of the last motion job. |
Enumeration name: |
TransformationInvalid |
Enumeration value: |
112 |
Description: |
The transformation is invalid. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The transformation used is not a SCARA transformation. |
Ensure that Scara4Ax is used. |
Enumeration name: |
UnexpectedFeedback |
Enumeration value: |
13 |
Description: |
A feedback value was invalid. |
The motion job was aborted.
Enumeration name: |
UnknownArmConfiguration |
Enumeration value: |
202 |
Description: |
The arm configuration is indeterminable. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The robot does not support the transferred arm configuration. |
The Schneider Electric robots only support the movement through the out-stretched position of AxisB. Use ET_ArmConfiguration.Right or ET_ArmConfiguration.Left to define the arm configuration. |
Enumeration name: |
WorkEnvelope |
Enumeration value: |
159 |
Description: |
Diagnostic message concerning the work envelope is active. |
Issue |
Cause |
Solution |
---|---|---|
The motion job was aborted. |
The TCP position of the robot is outside of the valid work envelope. |
Bring the robots TCP position back to the valid work envelope. |