Begin Move By

C Definition

void dms_T<n>AxisBeginMoveBy(long NodeNumber, long GroupNumber, double XDelta, ... double LastDelta);

Pascal Definition

procedure dms_T<n>AxisBeginMoveBy(NodeNumber:longint; GroupNumber:longint; XDelta:double;...LastDelta:double);

Description

The Begin Move By command initiates a relative move by the specified position parameters but does not wait for the move to finish before continuing. The motion is performed with a trapezoidal velocity profile based on parameters set with the Set Accel , Set Decel , and Set Speed methods. These parameters apply to the vector path motion of the coordinated group rather than to any particular axis. Begin Move By is a nonblocking command. The execution continues immediately allowing other commands to be performed while the motion is occurring. It is often necessary at some point to wait for the motion to finish which is accomplished with the Move Is Finished command. If there is nothing to do during the motion it is simplest to use the Move By blocking form of the command. Begin Move By can be used on an axis that is already in motion. The target will be changed to the current position of the motor when the block is executed plus the parameter value. The Stop, Begin Stop, and Abort commands will end the motion before it reaches the target position.

Escapes

Begin Move By will produce an Axis Is Busy Escape Code if the group is already in motion.

A single axis can be directed to a new destination while in motion as long as the destination is still ahead of the motion and obtainable with the current decel setting. If not a Motion Overrun Escape Code will occur.

If the destination of the move is beyond the positive and negative software limits, the Begin Move By block will produce a Position Limit Escape Code and the move will not be attempted.

Note that the EscapeResult parameter must be preset to 0 before making the call or the routine will not run

Related Topics

Begin Move To
Move By
Set Speed
Set Accel
Set Decel
Move Is Finished