[RMP 8.1.6]
We’re trying to do probing, and we’re using user limits to stop the motors when the probe strikes.
We’ve gotten this very same thing to work for probe 1 on some Yaskawa Sigma-7 drives. When we try it for probe 2, calling UserLimitConfigSet()
raises an exception.
Function(RSI::RapidCode::Impl::MotionController::UserLimitConfigSet)
Warning?(No)
Text(Parameter invalid :: {userlimit.c, line 2388} : MPIUserLimitCondition: Specified type (0) is not a valid type. (Error 2) (RSI::RapidCode::Impl::MotionController::UserLimitConfigSet) (Object 0) (File …..\source\motioncontroller.cpp) (Line 4771) (Version 8.1.6 for 04.04.02.RMP))
ShortText(Parameter invalid :: {userlimit.c, line 2388} : MPIUserLimitCondition: Specified type (0) is not a valid type.)
I added some logging to spit out the actual parameters to the function call.
UserLimitConfigSet(0,1,7,0,0)
These look legit to me. The actual code I’m compiling is:
controller->UserLimitConfigSet(user_num,
:RSIUserLimitTriggerTypeSINGLE_CONDITION,
:RSIActionE_STOP_MODIFY,
axis_id,
duration);
It’s for axis #0.
Any ideas what I’m doing wrong?