Move By

Command

<axis or group> MTB <value> <value> ... <value>

Description

Move By performs a relative coordinated move by the specified position parameters. The procedure requires as many parameters as there are dimensions in the axis group. For example, a single axis has one parameter while a group with three axes requires three parameters. The motion is performed with a trapezoidal velocity profile based on parameters set with the Set Accel, Set Decel, and Set Speed procedures. These parameters apply to the resulting vector path motion of the coordinated group, not to any particular axis. Move By can be used on an axis or group that is already in motion, replacing the previous target position with one relative to the position of the motor when the command is executed. Move By is a blocking command and does not return until the motion has been completed. Blocking program execution until the end of the move is helpful for synchronizing subsequent events. If program execution is required during the move, a non-blocking command such as Begin Move By should be used instead. The Stop, Begin Stop, and Abort commands will end the motion before it reaches the target position. Note that since Move By is a blocking command no other commands will reach the controller until the move has finished. This will prevent aborting the move or initiating other activities. It is usually better to use a non-blocking form when using a command interpreter. Move completion can be identified by polling with the Move Is Finished command. If un unsolicited response is needed from the controller to indicate the completion of a controller event this can be done as an application program. Contact us for additional info.

Escapes

Move By will escape if used while an axis is in motion and the new destination specified is "behind" the vector path position or if the destination is so close that the axis group cannot accomplish the move at the specified decel rate. In these cases the group will emit a Motion Overrun Escape Code and come to a stop.

If the destination of the move is beyond the positive and negative software limits Move By will produce a Position Limit Escape Code.

Examples

This procedure initiates a single axis relative move by 10:

This procedure attempts a single axis relative move by 20 and handles potential error cases using a Try..Recover statement:

Related Topics

Move To
Speed
Accel
Decel
Try Recover