Arduino stepper motor & driver?

I need to run a couple of stepper motors at 800 - 1000 rpm. There will not be much load on them, they just need to spin at high RPM

My initial questions are...

  1. which stepper drive can support at least 24v and possibly up 80v which I think may be necessary for high rpm.

  2. I know very little about steppers so any recommendations on which models to look at would be great. There are no space constraints so NEMA size doesn't really matter.

  3. Do I need encoders to know the location of the stepper position?

Thanks for any help

it is not voltage, but voltage over nameplate voltage.

if you get a 10v motor, you might need to feed it 200 volts.
if you get a 2,2 volt motor, 44 volts would give the same results.

quality of the driver output to the motor is also very important.
timing of the pulses is also important.

You may find something useful in stepper motor basics.

AFAIK the "hobby" stepper drivers such as Pololu A4988 have an upper voltage limit of 30v or 35v. You will probably need a more expensive driver if you need higher voltages.

I have no personal experience of the sort of speeds you are talking about. 1000RPM would require 200,000 3333 pulses per second for a 200-step motor. That is a step every 5 300 microsecs - which does not leave much time for a 16MHz Arduino to do anything else.

Edit because I just realized I mixed up RPM and RPS (I do this regularly)

...R

if you want to spin a motor 1,000 times and it takes 200 steps to do that, you need to feed it 200,000 steps.

now, if you want to do that over 60 seconds, that would be 200,000 / 60 = 3,333 per second ?

Ok, I've read through the stepper basics thread. So I have a new question.

If I feel the Pololu A4988 may be insufficient for running a stepper at approx 1000 rpm. What driver to I look for?

cgchris99:
Ok, I've read through the stepper basics thread. So I have a new question.

If I feel the Pololu A4988 may be insufficient for running a stepper at approx 1000 rpm. What driver to I look for?

start with application.
then choose a stepper.
then choose a driver.
not sure why you think the A4988 is insufficient. what criteria are you using to rule out this chip ?
this is important to know as it would eliminate recommending any other chip that you find will not meet your needs.
at 1,000 RPM your stepper will have almost no power,
as was mentioned earlier, getting the absolute lowest motor voltage and the highest RATIO of voltage to motor voltage is paramount to your quest.
I would like to see some math that you are using as your selection process helps point the way.

If you need to run a stepper motor that fast, you probably need something other than a stepper. ...You usually don't think about "spinning" a stepper motor, you usually think about "stepping" it.

You might want to use pulleys to "gear-up" the speed. The downside of gearing-up is that you loose torque (you might need a bigger motor) and you loose resolution. But, you might loose accuracy/resolution at that speed anyway unless you carefully accelerate/decelerate.

cgchris99:
If I feel the Pololu A4988 may be insufficient for running a stepper at approx 1000 rpm. What driver to I look for?

From a brief look at the Allegro A4988 datasheet I think the A4988 can take step inputs at the rate of 500,000 per sec. You only need 3333 per second.

AFAIK it is the electrical characteristics of the motor that will limit the possible speed

As @dave-in-nj has said, please explain your thinking.

...R

Hi,

What is the application, is it possible to use a dc motor to do the job.

Tom..... :slight_smile:

DVDdoug:
If you need to run a stepper motor that fast, you probably need something other than a stepper. ...You usually don't think about "spinning" a stepper motor, you usually think about "stepping" it.

You might want to use pulleys to "gear-up" the speed. The downside of gearing-up is that you loose torque (you might need a bigger motor) and you loose resolution. But, you might loose accuracy/resolution at that speed anyway unless you carefully accelerate/decelerate.

in a CNC application, 'rapids' are a no-load application. on an 8ft table, at slow speed, it can take awhile.

Can't use DC motor. Need to be able to count the exact revolutions and be able to stop it at a specified number of turns.

cgchris99:
Can't use DC motor. Need to be able to count the exact revolutions and be able to stop it at a specified number of turns.

again, please tell us what you want to do.
an encoder on a DC motor is every bit as accurate as a stepper.
see gray scale encoder.
my cheap fax machine has one that is on the order of 8,000 steps per revolution.
besides, the huge CNC stuff uses DC motors and encoders because steppers have limitations especially in the huge multi-hp sizes.
of course the A4988 looks like it is more than up to the speed challenge.

I need to have a motor at each end. Attached to each motor will be a string, think rope.

The first process is to twist the string. Meaning each motor turns in opposite directions. These have to be counted exactly the proper number of turns.

Step two is to spin the string a certain number of revolutions. It must start slow and then ramp up to speed and then slow down at the end finishing with the correct number of revolutions.

the problem with the DC motor method is they may not spin exactly together at the same rate. This will put more or less twists in the string causing a big problem. Does that make sense.

cgchris99:
Does that make sense.

Apart from the speed you want to operate at that seems to be a simple project.

Could you gear up the motors so that a moderate stepper speed would give the desired "string" speed. It is easy to make a stepper go very slowly to compensate for the gearing when slow speed is required.

...R

I've seen stepper gearboxes that provide slower rotation but I don't think I've seen any that provide faster rotation.

cgchris99:
I need to have a motor at each end. Attached to each motor will be a string, think rope.

The first process is to twist the string. Meaning each motor turns in opposite directions. These have to be counted exactly the proper number of turns.

Step two is to spin the string a certain number of revolutions. It must start slow and then ramp up to speed and then slow down at the end finishing with the correct number of revolutions.

the problem with the DC motor method is they may not spin exactly together at the same rate. This will put more or less twists in the string causing a big problem. Does that make sense.

total sense.
a dc servo counts steps of the encoder and you control the motor for steps taken.
match steps so that the two are synchronized exactly.
forward and backwards.

biggest question is have you tried anything ?

I would offer that a couple steppers and some drivers should get you running. the test is how fast you can get the units spinning.

Hi
How many twists do you need in the rope?
Do you need 1000rpm?

Tom..... :slight_smile:

cgchris99:
I've seen stepper gearboxes that provide slower rotation but I don't think I've seen any that provide faster rotation.

I was assuming you would make your own.

This may be a bit "Heath Robinson" but it might be a solution ...
What about mounting the stepper(s) on a frame that can itself be rotated by a DC motor. So use the steppers to do the twisting and then use the DC motor to do the high speed spinning. It would probably mean that one stepper would be sufficient.

...R

Robin2:
I was assuming you would make your own.

This may be a bit "Heath Robinson" but it might be a solution ...
What about mounting the stepper(s) on a frame that can itself be rotated by a DC motor. So use the steppers to do the twisting and then use the DC motor to do the high speed spinning. It would probably mean that one stepper would be sufficient.

...R

this seems to be a solution without a problem.
the steppers, drivers and such can spin at the correct speeds.
a DC motor with encoder can be more accurate and spin even faster.
my concern with the process is if the rope goes out of balance. that adds a layer off complexity.
I think to solve for that, one could purposely wind up one motor until the rope is taught, then perform the required dance, then, return to zero.