APIs, concepts, guides, and more

◆ ErrorLimitActionSet()

void ErrorLimitActionSet ( RSIAction action)
Description:
ErrorLimitActionSet sets the action that will occur when the Error Limit Event triggers.
Parameters
actionAction taken on Error Limit trigger. A RSIAction value.
Note:
Available Actions are Abort(), EStop(), Stop(), None, EStopAbort(), and EStopModify()

Part of the Limits and Action Configuration method group.

Sample Code:
Axis: Configuration
// add phantom axis
controller.AxisCountSet(controller.AxisCountGet() + 1);
// get phantom axis
int axisNumber = controller.AxisCountGet() - 1; // last axis [zero-based]
Axis axis = controller.AxisGet(axisNumber);
// disable all limits (not used for phantom axes)
axis.ErrorLimitActionSet(RSIAction.RSIActionNONE);
axis.HardwareNegLimitActionSet(RSIAction.RSIActionNONE);
axis.HardwarePosLimitActionSet(RSIAction.RSIActionNONE);
axis.HomeActionSet(RSIAction.RSIActionNONE);
axis.SoftwareNegLimitActionSet(RSIAction.RSIActionNONE);
axis.SoftwarePosLimitActionSet(RSIAction.RSIActionNONE);
double POSITION_TOLERANCE_MAX = Double.MaxValue / 10.0; // reduce from max slightly, so XML to string serialization and deserialization works without throwing System.OverflowException
axis.PositionToleranceCoarseSet(POSITION_TOLERANCE_MAX); // set Settling Coarse Position Tolerance to max value
axis.PositionToleranceFineSet(POSITION_TOLERANCE_MAX); // set Settling Fine Position Tolerance to max value (so Phantom axis will get immediate MotionDone when target is reached)
axis.MotorTypeSet(RSIMotorType.RSIMotorTypePHANTOM); // set the MotorType to phantom
RapidSetup:
Go to axis screen->Limits & Actions. In image below, ErrorLimitActionSet sets the action type shown in the Position Error box. It is currently set to ABORT.
Note
  • Position Error = Command Position - Actual Position
  • For safety reasons, you may want to set this to ABORT event.
See also
ErrorLimitActionGet
Examples
MultiAxisMotion.cs, MultiaxisMotion.cpp, PVTmotionMultiAxis.cpp, PathMotion.cpp, PhantomAxis.cpp, SampleAppsHelper.h, SingleAxisSyncOutputs.cpp, SyncOutputWithMotion.cpp, UpdateBufferPoints.cpp, axis-config-phantom-axis.cs, axis-homing-akd-drive.cs, mathblock-calculate-acceleration-from-velocity.cs, mathblock-difference-of-position-userlimit.cs, and mathblock-pdo-copy.cs.