I'm using the NI-73xx palette to construct a contoured pattern. Everything works fine, but it won't be practical until I can get it to pause and resume exactly where it left off. I tried using the velocity override VI but couldn't get it to work. I think it's because contoured motion calculates the velocity for you, so you can't change it even if you tried to set it. Any ideas? Thanks!
You are correct on both accounts: you cannot pause a contour move, and the velocity profile is calculated based on the generated trajectory. A paused move will not work because the deceleration will carry the motion beyond the generated trajectory. You could attempt to resolve the software location of the motor once the move is stopped to generate updated setpoints to mimic the original curve, but you won't be able to simply resume the same move.
I can't think of a way to simply pause any moves in the NI Motion API, but I would recommend looking into doing what I described above. Essentially, if a move gets stopped, programmatically update the buffer going to the contoured move based on the current stopped position. This will generate smooth motion while retaining the desired travel path. Besides a contoured move, there are no other options for "continuous" motion; the other move types are used as finite moves and trajectories.
I was thinking along the same lines as you. If the motion is stopped, stop the motion with the actual "Stop Motion" VI, store the contents of the buffer along with the rest of the data, and use the "Play Motion" VI to generate a new contoured motion whenever it is resumed. Does that sound optimal to you? Thanks again for your answers, they've helped a lot.