# Thread: Quickest way to stop a stepper

1. ## Quickest way to stop a stepper

If we accelerate a stepper to some speed and then simply stop sending step pulses, the motor will surely stop. BUT it will more than likely "skip steps" in doing so. If we DECELERATE the motor we know that we can avoid these skipped steps. BUT - is there an acceleration curve that will actually stop the motor MORE QUICKLY than simply stopping the step pulses AND not cause skipped steps?

2. There are devices called "Stepper Motor Brakes" that activate to stop the motion when the driver stops sending pulse signals. I am unsure of exactly how they work, but I assume they are meant to solve the issue that you are referring to.

3. Inertia.... When the motor is running, the inertia of the rotor (and attached parts) acting as a flywheel tends to want to keep on turning. The faster it is running, the more power it will take to stop it. Your car engine stops if you pop the clutch at idle, but maybe not with the engine running at 6000 rpm. The more power that is "stored" in the rotating part, the more power it will take to stop it.

Steve

4. Thanks _AR_ but what I'm really after is whether this can be done without extra equipment. i.e. is there a step pulse sequence that will stop the motor faster than just no pulses at all.

Thanks Steve - not sure what question you're answering but it doesn't look like it was mine

Ian

• Assuming there are no issues with motor resonance the fastest stop would be by linear deceleration, ie increasing the time between each step by a constant linear amount per time period. Your control software should have a deceleration constant you can just change the value of?

In real life you will have less torque at higher revs so you can't decelerate quite as hard there, and during mid revs you will have resonance issues so you won't want to dwell there and it can be best to decelerate MORE during this speed to quickly pass through the resonance band. This whole system is often wrapped in a nice term like "S-shaped deceleration curve" etc.

• I give up...

• Ian,

Most software packages have but one setting for acceleration and deceleration. A motion control board I have has several curves to select from but is still the same for both acceleration and deceleration.

Here is a link to the torque curves of several stepper motors....
http://www.helicalcoupling.net/image...0(800x894).png

One thing you will notice (as RomanLini stated) is that the available torque is lower at higher rpm. Sometimes as little as 1/10 torque at speeds of 3000 rpm (50 RPS) or so. To stop a stepper motor that is turning at some speed takes torque. In theory, the fastest deceleration curve for a given motor will be a curve where the steps/sec/sec decrease in relation to the available torque curve for that motor. That is, the higher the RPM the slower the accel/decel RATE.

So for your application the curve would be something that looks somewhat like the second quadrent of a sine wave as with the X value as time and the Y value as RPM.

Steve

• Sorry - this has turned into a bit of a meal but to be fair I probably havn't phrased my question very well.

I use Mach for all my stepper systems and if your familiar with it (mach) you'll know that the system response to both limit and e-stops is to simply stop the pulse stream (as it is of course in many systems). Now of course this works just fine with regard to stopping the machine pronto (the most important thing under these two conditions) but of course a minimal downside is that the controller (mach) loses positional synch with the machine. However, a question arose as to whether it's possible that a stepper system can actually be brought to rest more quickly by using a different accel curve than would typically be used for general motion. i.e. more quickly than stopping the pulse train. That way not only would limits and e-stop conditions stop the machine more quickly but also position would not be lost. Personally I had my doubts that this was possible but others insisted it was. I just wondered if anyone could confirm/deny this possibility is all.

Ian

• No, it's not possible. Accel and Decel are the same in most systems, and are typically set as fast as safely possible.

If you want to decel for limits and Estop, then neither do what they are supposed to do.

There is a way you can possibly cheat with limit switches, though. Set up soft limits, with a slow zone outside the limit switches and a very slow speed. So that when you get to the slow zone, it decels to a very slow speed before it hits the limits, so it doesn't (maybe) lose steps. The softlimits can be behind the physical switches, so the limits don't trip.

A bigger question would be why do you keep hitting the limits and/or Estop?

• Originally Posted by ger21
No, it's not possible. Accel and Decel are the same in most systems, and are typically set as fast as safely possible.
Gerry - I KNOW THIS - the discussion was whether this could be improved on for the special case of limit or e-stop - it's a theoretical discussion.

Originally Posted by ger21
If you want to decel for limits and Estop, then neither do what they are supposed to do.
Why am I having so much difficulty with this? - The idea as I've said was to determine if it was theoretically possible to stop them EVEN FASTER than simply stopping the step stream! - I don't know - by cleverly arranging the pulses to actually perform braking or something.

Originally Posted by ger21
There is a way you can possibly cheat with limit switches, though. Set up soft limits, with a slow zone outside the limit switches and a very slow speed. So that when you get to the slow zone, it decels to a very slow speed before it hits the limits, so it doesn't (maybe) lose steps. The softlimits can be behind the physical switches, so the limits don't trip.
This has already been discussed on the mach forum but this is not the point of my question.

Originally Posted by ger21
A bigger question would be why do you keep hitting the limits and/or Estop?
OFFS - I DON'T - like I've said it was a question raised (on the mach forum) where if you look at the thread both me, Hood and others posed this very same question "why do you keep hitting the limits"? but that's beside the point. The OP over there stated that he believed steppers could be stopped faster than simply removing the step pulse stream - I stated I doubted that - but heaven forgive me I thought I'd check it out here just in case someone knew better - I really wish I'd never bothered - don't people actually bother to RTFP anymore?

• Originally Posted by stirling
Gerry - I KNOW THIS - the discussion was whether this could be improved on for the special case of limit or e-stop - it's a theoretical discussion.

Why am I having so much difficulty with this? - The idea as I've said was to determine if it was theoretically possible to stop them EVEN FASTER than simply stopping the step stream! - I don't know - by cleverly arranging the pulses to actually perform braking or something.

This has already been discussed on the mach forum but this is not the point of my question.

OFFS - I DON'T - like I've said it was a question raised (on the mach forum) where if you look at the thread both me, Hood and others posed this very same question "why do you keep hitting the limits"? but that's beside the point. The OP over there stated that he believed steppers could be stopped faster than simply removing the step pulse stream - I stated I doubted that - but heaven forgive me I thought I'd check it out here just in case someone knew better - I really wish I'd never bothered - don't people actually bother to RTFP anymore?
It doesn't really make sense what you want to do. Stopping faster than simply stopping and locking the motors is like saying you want to travel back in time or something so that it can happen faster. I understand the missed steps and losing position problem, but that's the trade-off you have for the safety purpose of e-stop and limits. They are for safety. If you want to keep position, use feed hold or pause.

• Originally Posted by stirling
I give up...
As mentioned before the fastest way to stop involves using a brake.
Most of the time that is unnessesary because you use your motor to do the braking for you, the key here is to have the system properly tuned for the acceleration/deceleration settings.
When tuning you do want to know what the highest rate of decellertion is without loosing steps in the process.
Your final setting will be very close to that, allowing some reduction for relieabilitie and comfort level.
You may be suprised on how fast a well tuned system is able to accel/decel.
A tight system usually results in some hard banging sounds durring reversals, this may be hard on the mechanical components.
People often reduce those settings some to get a smuther running machine.
However even with some reduction most Systems stop with just a friction of an inch of overrun. This is usually faster then your reaction time anyway.
A ergonomic location for your Stop Button will gain you much more then the few tousends of an inch of improvement a brake would get you.
(special cases excluded from this general opinion)
Good Luck

• Page 1 of 2 12 Last

#### Posting Permissions

We are the largest and most active discussion forum from DIY CNC Machines to the Cad/Cam software to run them. The site is 100% free to join and use, so join today!