Im connecting all of this with a bread board, now please tell me if i can control 5 nema 17 stepper motors with an arduino uno r3. Im trying to avoid buying a arduino mega cause i want to keep the costs low. Thanks...
Breadboards are designed for temporary experiments with low power logic circuits and cannot handle motor current. The tracks will burn, so all motor leads and power must be wired separately (with soldered connections or screw terminals).
You need 10 digital pins for 5 STEP & DIR control inputs, so no need for a port expander.
The A4988 can handle at most 1 Ampere current per motor winding, so be sure to set the current limit to that or less.
Get one motor working by itself, before moving on.
You should have bought DRV8825 drivers. A 1Amp A4988 can't drive a 1.7Amp stepper motor to it's full potential.
A 12volt/1A supply might already be struggling with one motor.
It's certainly not enough for five motors.
Think 12volt/7A or if you want torgue at higher speeds 24volt/5A.
Leo..
Im using bread board because im an comp engg student, i have no experience with soldering, hence was trying to avoid it. But if the bread board will fry after usage then i will try to switch to a perfboard.
And i would likely need microstepping, so i atleast need 4 pins per motor(step, dir, ms1, ms2) to atleast be able to do a 1/8th step.
Do you ever need to change the microstep setting? Commonly that is either hard wired or set with jumpers, not dynamically changed under program control.
And i understand that im low on power supply, mostly cause i don't know what can and cannot fry my electronics, so please suggest an appropriate power supply
"Hard wire" means to use a wire to connect the pin to either Vcc or ground, whichever is needed. Could also be done using a resistor as a pull-up or pull-down.
The term "hard wired" generally refers to not having an easy option to make changes, such as having to physically cut a trace on a circuit board instead of having header pins for a jumper.
Yes. The point is if you are always going to use 1/8 stepping, there is no need to wire MS0/MS1/MS2 to the Arduino input/output port pins, that is only needed if you want to control the stepping setting in your sketch.
Thanks, now what about the motor driver, is A4988 fine or do i need to switch to a DRV8825, because the motors are going to run for a long time, like for 6-7hours continuously, will the A4988 get too hot and malfunction even with the heat sinking, do i need to switch?