Error Code 30 on sine start following hold position


I have an actuator that I’m trying to command to follow a sine wave with RMCTools.

If I issue the command “Move Absolute (20)” to position zero and then send the sine start (72) the actuator moves fine.

If I issue the command “Move Absolute” to position zero, then send the command “Hold Position (5)” and then the start sine (72) command, the controller throws error #30 - discontiguous target not allowed without selecting a transition behavior.

In both cases, the actuator is at position zero, the sine start command is identical - I’m using a zero offset and auto start location. There’s no difference in the actuator feedback signal, it’s strictly a matter of issuing the hold position command or not. I thought the result of either the move absolute or the hold current position commands would be for the controller to be in a PID loop holding the current (or final target) position. Why would issuing the sine start following the hold position command generate an error, while issuing it after the move absolute does not?

The Hold Current Position (5) command will hold the current Actual Position. That means that the Target Position will be changed to whatever the Actual Position is, which is very likely not the position you intended.

Sending the Hold Current Position (5) command after a closed-loop move is unnecessary and typically leads to these kinds of problems. The Hold Current Position (5) command is more useful when the axis is in open loop and you want to put it in closed-loop control.

Excellent, thanks. -Dan