If a move command MoveSync (2.) was sent to the robot, either for the connected path or for a next connected path, it is not possible to send a move command MoveAsync (3.) which starts before the synchronous movement is completed.
Reasons for this are:
The end of an asynchronous movement has no relation to a path position.
A forecast as to when the asynchronous movement is finished in relation to a path movement is not possible in all cases.
In general, it is not possible to execute a synchronous and an asynchronous auxiliary axis movement at the same time.
If a move command MoveAsync (2.) was sent to the robot, it is not possible to send a move command MoveSync (3.) until the asynchronous movement is finished.
A forecast as to when the asynchronous movement is finished in relation to a path movement is not possible in all cases.
In general, it is not possible to execute a synchronous and an asynchronous auxiliary axis movement at the same time.
Also refer to the diagnostic messages of the MoveSync command (MoveAsyncTriggered, MoveAsyncActive).
If a move command MoveAsync (2.) was sent to the robot, it is not possible to send a second move command MoveAsync (3.) until the first asynchronous movement is finished.
A forecast as to when the asynchronous movement is finished in relation to a path movement is not possible in all cases.
The asynchronous movement is executed with the motion parameters (MaxVelocity, MaxAcceleration, MaxDeceleration and Ramp) set by the methods:
IF_RobotMotion.SetMotionParameter
IF_RobotMotion.SetMaxVelocity
IF_RobotMotion.SetMaxAcceleration
IF_RobotMotion.SetMaxDeceleration
IF_RobotMotion.SetRamp
The parameters are set for ET_RobotComponent.AuxAxAll or ET_RobotComponent.AuxAx[1..10].
The asynchronous movement is executed with the last set of motion parameters sent before the move command MoveAsync is called.
A change of the motion parameters after the move command MoveAsync is called or while the asynchronous movement is active is possible, but the change does not affect the last sent move command or the ongoing asynchronous movement.
Preconditions |
Result |
---|---|
Robot is active and ready.
The robot moves immediately. |
If FB_Robot.xStart is set to FALSE during an asynchronous auxiliary axis movement is active, the movement is stopped with MaxDeceleration and Ramp configured by methods listed in chapter Motion parameters for an asynchronous auxiliary axis movement. |
If FB_Robot.xStart is set to TRUE again, the asynchronous auxiliary axis movement is continued. |
|
If the auxiliary axis was moved away from its last position (for example, by jogging), the robot returns the diagnostic message ET_DiagExt.NotOnPath. |
Preconditions |
Result |
---|---|
Robot is active and ready.
The robot moves immediately. |
In case of FB_Robot.xEnable is set to FALSE during an asynchronous auxiliary axis movement is active, the movement is stopped with MaxEmergencyDeceleration and EmergencyRamp configured by the method IF_RobotConfiguration.SetEmergencyParameter2. |
For an asynchronous auxiliary axis movement, it is mandatory to configure emergency parameters for the auxiliary axis movement (SetEmergencyParameter2). |
|
To read out the configured emergency parameters for a robot component, use the method GetEmergencyParameter2. |
For an asynchronous auxiliary axis movement, velocity override, which is set by IF_RobotMotion.lrVelOverride, is NOT considered.
Preconditions |
Result |
---|---|
Robot is inactive and not ready.
Robot is active and ready. |
If a ColdStart is performed after re-enabling the robot, the previous active asynchronous auxiliary axis movement is NOT continued. |
Preconditions |
Result |
---|---|
Robot is active and ready.
Warm start motion is pre-selected.
|
If a WarmStart is performed after re-enabling the robot, a previous active asynchronous auxiliary axis movement is continued. |
If the auxiliary axis was moved during FB_Robot.xStart and/or FB_Robot.xEnable was FALSE, it is moved back to its last position on path first before the asynchronous auxiliary axis movement is continued. |
|
If the auxiliary axis has to be moved back to its last position on path, the motion parameters of the latest synchronous or asynchronous movement are used. |
In case the Schneider Electric robotics library diagnostics detect that a robot movement would go outside the robot work envelope, the path and tracking movement is stopped.
Refer to SchneiderElectricRobotics Library Guide (SER).
An asynchronous auxiliary axis movement is also stopped.
If an asynchronous auxiliary axis movement is sent or active, jogging along the connected path is not possible.
IF_RobotJogging.Start(i_etComponent := ET_RobotComponent.Path) returns:
q_etDiag -> GD.ET_Diag.ExecutionAborted
q_etDiagExt -> ET_DiagExt.MoveAsyncTriggered / ET_DiagExt.MoveAsyncActive