I am trying to get the fasted speed with stepper motor and easy drive.

I am trying to use 8 motors with one arduino board. but I can't really decide what kind of motor I need to get.
What I wanna do in just control motor''s speed (has to be quite fast like 300 rps) and direction.
And I bought a mercury stepper motor and an easy driver for start. because one of my friend who is very into Arduino, he said stepper motor is easier to control with Arduino.

But my question is how fast the stepper motor can be?
is it better to use DC motor?

is it better to use DC motor?

Depends on your application. A stepping motor is good at precisely turning through an exact angle, with typically 1.8 degrees per step.
However, it sounds like you don't need that sort of control so you would be better off using a DC motor.

Basally the top speed is governed by:-

  1. The motor
  2. The load on the motor
  3. The voltage you drive it at
  4. The speed you can output pulses to it
  5. If you ramp the speed up and down it will go faster than trying to go that speed from a standing start

300 RPS??? That's 18,000 RPM. Wood working Routers and high speed milling spindles run that fast. What are you trying to make?

I am trying to get the fasted speed with stepper motor and easy drive using AccelStepper libraries.
But It doesn't look as fast as 300 rps.

any advise for coding?

#include <AccelStepper.h>

// Define a stepper and the pins it will use
AccelStepper stepper(1, 9, 8);

int pos = 3600;

void setup()
{
stepper.setMaxSpeed(90000);
stepper.setAcceleration(900000);
}

void loop()
{
if (stepper.distanceToGo() == 0)
{
delay(500);
pos = -pos;
stepper.moveTo(pos);
}
stepper.run();
}

AccelStepper says: Speeds of more than 1000 steps per second are unreliable. It looks as if you're way outside the region of reliable operation. How many steps per second are you trying to achieve?

But It doesn't look as fast as 300 rps.

18000 rpm is fast, even for a DC motor.
Is that really what you meant?

Please use code tags when posting code.

But It doesn't look as fast as 300 rps.

That is because you are not going as fast as 300 rps with that code.
It is one thing setting the speed and quite another having the motor respond to that speed. I suspect it is being stepped too fast and it is skipping steps.
You need to look on a scope to see if your signals are alright at this speed, I suspect they are not.

Topics merged.

Cross posting wastes everyones time.

DO NOT CROSS POST.

any advice?

  1. Ditch the floating-point arithmetic.
  2. keep your posts to a single thread.