MotionController Axis MultiAxis IO IOPoint NetworkNode RsiError
Sample Apps Changelog

RapidCode API

◆ UserLimitConditionSet() [1/2]

void UserLimitConditionSet ( int32  number,
int32  conditionNumber,
RSIUserLimitLogic  logic,
uint64  address,
uint32  mask,
uint32  limitValue 
)
pure virtual

Set the conditions for a User Limit.

Description:
UserLimitConditionSet set one of the conditions for a User Limit.
Parameters
numberThe index of the UserLimit. Starts from 0 and goes to (UserLimitCountGet - 1).
conditionNumberThis should be 0 or 1, User Limits only support two conditions.
logicUse RSIUserLimitLogic
*addressUse any address in the controller (see sample code).
maskA 32-bit AND mask, the limit ANDs the value stored in address with this mask.
limitValueValue to be compared with the value stored in address after it is ANDed with the mask.
Sample Code:
// configure user limit to evaluate input bit
controller->UserLimitConditionSet(0,
0,
0xFFFFFFFF ,
0x00010000);
Note
Logic evaluates as follows: VALUE_AT_ADDRESS RSIUserLimitLogic LIMIT_VALUE' E.g. A limit with logic RSIUserLimitLogic.RSIUserLimitLogicGT Would be true when 'VALUE_AT_ADDRESS > LIMIT_VALUE'
See also
UserLimitConfigSet , UserLimitOutputSet
 
Examples
UserLimitCommandPositionDirectSet.cs, UserLimitDigitalInputAction.cpp, UserLimitDigitalInputEStopStorePosition.cs, UserLimitDigitalInputOneCondition.cpp, UserLimitDigitalInputOneCondition.cs, UserLimitDigitalInputTwoCondition.cpp, UserLimitFeedRate.cs, UserLimitGainChangeBasedOnPosition.cpp, UserLimitPositionOneCondition.cpp, UserLimitPositionOneCondition.cs, and UserLimitStateAction.cpp.