Modbus Motion Interface
Write_Double(<AxisOrGroupPage>_+_BeginMoveBy_d,<Relative Distance>);
Description
The Begin Move By registers 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
Accel , Decel , and Speed registers.
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 registers.
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 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.
Examples
This operation causes axis 1 to move 5.2 user units positive from its current position:
Write_Double(Axis1_+_BeginMoveBy_d,5.2);
Related Topics
Begin Move To
Move By
Speed
Accel
Decel
Move Is Finished