how many stepper motor drivers can i connect to arduino

Hi everyone ,
how many stepper motor drivers can i connect to arduino

depends on the arduino-type (or even another microcontroller like a teensy) and the stepper-motor-driver-type.

If you would like to use H-bridges this would be 4 IO-pins per stepper-motor
If you would like to use stepper-drivers with STEP-/DIR-Input you need two IO-pins per stepper-motor.

Depending on the maximum-stepfrequency you need you could use IO-pin-expanders to go up to 32, 64 or 128 stepper-drivers.

So you need to specify a few more things.
What is the stepper-motor-rpm you need?
What is the drive-mode you want to use
fullstep / halfstep microstepping as 1/4, 1/8, 1/16, 1/32?

I'm pretty sure you can't answer the questions above.
So best thing to do is to post a detailed description of the whole project.

best regards Stefan

1 Like

Thank you Stefan ,
I can explain basicly (steppers are nema17) , 20 steps (36 deggres) and maximum 0.5 amps for 1st and 2nd stepper motors. For 3rd and 4th stepper motors 200 steps (360 degrees) and minimum 2 amps maximum 4 amps because I need torque. Or I can print gears from a 3d printer and increase the torque mechanically.

also high rpm is not important. first and second stepper is used just turning 50 grams and they have 6 rpm is enough. but third and fourth steppers have to min 60 rpm

You can control steppers from an Arduino, but they will need external power and drivers, so the torque requirement doesn't impact which Arduino you use. Typically, you will need to connect to a step and direction pin for each stepper. Possibly enable too. So for four motors you'll need up to twelve digital pins so pretty much any Arduino will do in that regard.

1 Like

OK some more information.
The more interesting number is the maximum rotations per minute that you need on those stepper-motors and what precisision do you need.

You can run a 200 steps/revolution stepper-motor resolving 0.00703125 degrees per step
if the stepperdriver is able to create 1/256 microsteps. If you need this steppermotor to run at
1200 rpm this would mean 1200/60 * 200 * 256 = 102400 steps per second.
Which is 102,4 kHz. This is a very high frequency which would require the use of hardware-counters on a many Mhz-microcontroller. Such a fast pulse-train can't be created by a Arduino Uno. So give a rough estimation how fast each stepper-motor will run and what those stepper-motors are driving.

best regards Stefan

1 Like

stefen i am so confused i want to send you the video of the project directly model (R45) telephone +905541374605 makes 12000 refills per hour. Fills thin and regular tubing - YouTube

You are working on an informatic project (programming a microcontroller) and what is most needed in an informatic project is information.

1 Like

thank you ,
of course I use stepper driver ,but I didnt sure arduino include 16 pin for stepper

I am mechanical engineer not electrical :joy::joy::joy: but I want to build this machine without help

as I said information.
Where is what kind of stepper-motor mounted.
What are the speeds they need to rotate.
all things you can evaluate by analsysing this video

I prepared the 3D model, I'll print it and write it again later. I'm sure it will be easier for me to decide once the mechanical elements are ready. Also, I guess it would be better if I use arduino mega for 16 pin.

This tutorial Multi-tasking in Arduino has a complete stepper example
controlled by User Input and a sensor.
You can add other steppers as extra 'tasks'. The loopTimer will let you know how fast you can run your steppers.

1 Like

Thank you :smiley:

I think you were being asked what you are trying to do, not how you think it should be done. see