The RMP Motion Controller APIs

◆ 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()
Remarks
This function is also available in RapidSequencer.

Part of the Limits and Action Configuration method group.

Sample Code:
PhantomAxis
controller.AxisCountSet(controller.AxisCountGet() + 1); // Configure one additional axis to be used for the phantom axis
int axisNumber = controller.AxisCountGet() - 1; // Set the axis number to the last axis on the network (subtract one because the axes are zero indexed)
axis = controller.AxisGet(axisNumber); // Initialize Axis class
HelperFunctions.CheckErrors(axis); // [Helper Function] Check that the axis has been initialized correctly
// These limits are not meaningful for a Phantom Axis (e.g., a phantom axis has no actual position so a position error trigger is not necessary)
// Therefore, you must set all of their actions to "NONE".
axis.ErrorLimitActionSet(RSIAction.RSIActionNONE); // Set Error Limit Action.
axis.HardwareNegLimitActionSet(RSIAction.RSIActionNONE); // Set Hardware Negative Limit Action.
axis.HardwarePosLimitActionSet(RSIAction.RSIActionNONE); // Set Hardware Positive Limit Action.
axis.HomeActionSet(RSIAction.RSIActionNONE); // Set Home Action.
axis.SoftwareNegLimitActionSet(RSIAction.RSIActionNONE); // Set Software Negative Limit Action.
axis.SoftwarePosLimitActionSet(RSIAction.RSIActionNONE); // Set Software Positive Limit Action.
const double positionToleranceMax = Double.MaxValue / 10.0; // Reduce from max slightly, so XML to string serialization and deserialization works without throwing System.OverflowException
axis.PositionToleranceCoarseSet(positionToleranceMax); // Set Settling Coarse Position Tolerance to max value
axis.PositionToleranceFineSet(positionToleranceMax); // 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
PathMotion.cpp.
RSI::RapidCode::RSIMotorType
RSIMotorType
Motor Type.
Definition: rsienums.h:1209
RSI::RapidCode::RSIAction
RSIAction
Action to perform on an Axis.
Definition: rsienums.h:1013
HelperFunctions.CheckErrors
static void CheckErrors(RapidCodeObject rsiObject)
Check if the RapidCode Object has any errors.
Definition: HelperFunctions.cs:64
HelperFunctions
Helper Functions for checking logged creation errors, starting the network, etc.
Definition: HelperFunctions.cs:50