APIs, concepts, guides, and more

◆ Resume()

void Resume ( )
Resume will resume an axis that was previously stopped with a Stop(). If the motion is in idle state (RSIStateIDLE), it will change to moving state (RSIStateMOVING), and the motion will resume if it was stopped by a prior call to Stop().
Resume will use 'stop time' value defined by StopTimeSet() to go from 0 counts/sec to commanded velocity.
The stopping time that is used will be from the object (Axis or MultiAxis) that started the active motion, NOT the object that commanded this action.
If a MultiAxis motion is in progress, the stopping time will be determined by MultiAxis::StopTimeSet() and the individual Axis::StopTimeSet() values will be ignored.
This function is also available in RapidSequencer.

Part of the Action method group.

Sample Code:
Motion: Modify
Console.WriteLine("Start Motion");
axis.MoveSCurve(100); // Call MoveScurve to move to a position.
// set feedrate for axis to 150%
while (axis.CommandPositionGet() < 5)
Thread.Sleep(1); // Wait here until we reach position "15".
axis.Stop(); // Stop the axis/motor.
axis.MotionDoneWait(); // Wait for move to complete.
axis.FeedRateSet(-1); // Change FeedRate to reverse motion.
axis.Resume(); // Start Reverse Motion.
Console.WriteLine("New Feed Rate Start");
axis.FeedRateSet(1); //restore default

Resume will not work with EStop() or any other error condition (such that an axis is in error state)
Go to axis screen->Position and Trajectory box. Various actions (Stop, EStop, Abort) are shown in image below.
See also
StopTimeSet , StopTimeGet , Stop, RSIState
MotionModify.cs, and MotionStreaming.cs.