Default and Optional Error Handling Behavior
Default Error Handling Behavior
In the default motion error handling case, a user can detect errors using any of these group function blocks:
- MC_GrpReadStatus - Output GroupErrorStop is true if a group error has occurred.
- MC_GrpReadError - Error output is TRUE.
- ErrorID output is set to 12 if the error is due to E-stop.
- The originating Coordinated Motion command (MC_MoveLinAbs, MC_MoveCircAbs, etc.) will return Error ID 12
To determine which PLCopen axis has generated the error, call MC_ReadAxisErr for each axis in a group.
- The output ErrorID is set to 12.
- MC_ReadStatus for each axis in the group can be called where the output ErrorStop is TRUE if in a E-stop condition.
- Once an error has been detected, the error must first be resolved.
- MC_GrpReset can be called to reset all PLCopen axis errors.
- This also resets the group status from GroupErrorStop to GroupStandby.
- The Done output of MC_GrpReset is TRUE if all axis errors have been reset.
- This function block may take up to 3 seconds to reset some error conditions.
Optional Error Handling Behavior
-
-
This is configurable on a per group basis.
In the optional motion error handling case, the group status GroupErrorStop is not set when an axis is in error.
The application is responsible for monitoring and handling error conditions. The remaining axes in the group will continue moving.
Errors can be detected using this group function block:
- MC_GrpReadBoolPar - Read the result of parameter ID AXIS_ESTOP_ACTIVE (1001).
- If the result is TRUE, an axis error exists.
- The group function blocks used for the default case of detecting errors (MC_GrpReadStatus and MC_GrpReadError) do not return an error.
To determine which PLCopen axis has generated the error, call MC_ReadAxisErr for each axis in a group.
- The output ErrorID is set to 12.
- MC_ReadStatus for each axis in the group can be called where the output ErrorStop is TRUE if in a E-stop condition.
- Once an error has been detected, the error must first be resolved.
- MC_ResetError can then be called on each axis in error.
- This function only sends a request to the drive to clear any error.
- The error is not yet reset when this function returns.
- MC_ReadStatus still has to be called to verify that the drive error has been resolved.