# Running stepper motors fast

I have ordered these stepper motors. I asked the seller how many revolutions the motor can achieve in a minute and they answered 43. I calculated (13 + 212/289) * 200 * 43 / 60 to determine how many steps I would need to step in a second to achieve 43 rpm. This results to roughly 1950 steps per second. However, when I try to run the stepper motor with 1950 steps per second, it stalls. It vibrates but doesn't turn. After reducing the steps per second to 1300, the stepper starts moving again.

I'm using TB6600 drivers from eBay, set to ignore microstepping and to supply 0,5 A current with 12 V. I'm controlling the driver with an Arduino Mega 2560 and AccelStepper library.

Why can't I run it with higher speeds? I've had this problem with other steppers, too.

• Did you ramp up to 1950 or did you try to start it at that speed? (consider inertia)
– Tut
Sep 14, 2016 at 15:47

Stepper motors generally have two speed specifications, the absolute maximum speed, and the maximum single step start/stop speed, which is much less.

The single step start/stop speed is the maximum speed for which you can just start supplying pulses from rest, or conversely, the maximum speed it can run at, and, when you stop supplying pulses, come to a stop without overshoot.

If you run above the max start/stop speed, you must smoothly accelerate and decelerate the motor.

Both speeds are a function of the driver, both the supply voltage, and the current limit.

Unfortunately your data sheet is a bit coy on any speeds, so it's up to you to experiment, and find out what the two speeds are.

In addition to Neil_UK s answer, you should be aware that running steppers at high speeds requires a good drive. By "good" I don't mean "powerful", I mean capable of switching inductive loads at high speed. This means a current source with high compliance voltage.

Using resistors to limit current (and a low supply voltage to minimize power loss in the resistors) is a sure-fire way to limit the maximum speed of the motor. Steppers work by turning individual windings on and off in synchrony, and simple drive circuits simply will not perform this well.