Motion Block
Description
The Stop block directs the axis or axis group to slow down at the specified decel rate and stop motion. This can be used to stop a continuous Jog or to stop a move early. A coordinated
group will remain coordinated during the stop. This is a blocking command and the block list will not continue until the motion has come to a complete stop. This is
different from Begin Stop command which will start to decelerate but will immediately continue the block list.
Escapes
>
The Stop block does not generate any escapes.
Examples
This block list stops a process and also stops any remnant motion.
Block list activity and motion activity are independent. After stopping a task any motion that was initiated will continue to its conclusion unless explicitly stopped also.
This block list stops a number of motors in sequence. The first will start decelerating, come to a complete stop, and then the second axis will start to decelerate. This will create a staggered stop effect:
If the motors should all start decelerating at the same time then the Begin Stop command should be used so that the block list immediately continues to stop the second axis:
The following might appear to be a good idea to manually jog a motor but has a subtle problem:
Consider what happens if the motor is at speed and the button is released. The Stop command is performed which initiates the deceleration and then waits for the motor to come to a complete stop. The Mouse Up event will not complete until the motor has come to a complete stop.
Before the motor comes to a complete stop the mouse is clicked down again and the Mouse Down event triggers requesting the motor Jog to a speed of 3.
The motion system allows this and the motor accelerates back up to speed never having come to a complete stop. Since the motor never came to a complete stop the initial Stop command never finished and the Mouse Up event never finished. When the mouse is again released the Mouse Up event is
found to already be running so no further action is taken. At this point there is no longer any control over the motor. It is important in this type of situation, where several different agents can direct a motor, for the commands to be non-blocking. A better solution which works as expected is this:
This approach allows stopping the motion while it is accelerating, and resuming motion during deceleration.
Related Topics
Begin Stop
Jog
Abort