loading

Hi to all. In this tutorial i will help you to connect an unipolar stepper motor to your arduino.

To do this you'll need

1x Arduino board -> on ebay aprox 10$

1x driver for stepper ->they are cheap on ebay (just type in ebay :ULN2003 Stepper Motor Driver Board around 1$)

1x unipolar stepper motor -> the price depends on size etc..or you can find then in old printing machines

So,this is all we need,and let's get started !

Step 1: Connect Your Stepper to the Driver

In this step you need to connect the wires from stepper to the driver.Most steppers have 6 wires,three for one coil,and three for second coil,if you are not sure witch wire it's in the middle of the coil find it with Ohm meter.

When you find both wires connect them together and that will be the positive terminal.The other 4 wires solder in a female connector and put it in the WHITE male connector on the driver.

Warning! Because stepper consumes quite a lot of current,you need to connect this driver to the external power supply and NOT on the arduino!!

Step 2: Now Connect the Driver With Arduino

You're doing great! Now you just need 4 wires and with them connect driver shield to arudino,on arudino i selected ports 8,9,10,11,but you can use other ports too!

Step 3: Almost Finish! Just a Bit of Programing...

Now the hardware is finished and we can start programing. Open the arduino software and copy this program

Some tips : You need to know

steps = Number of steps in One Revolution * Gear ratio .

Maybe you'll need to figure out witch port it's first,second,third and forth because it's not 100% that they are connected properly and the motor will not spin

#include <Stepper.h>

const int stepsPerRevolution = 200; // change this to fit the number of steps per revolution // for your motor

// initialize the stepper library on pins 8 through 11:

Stepper myStepper(stepsPerRevolution, 8,9,10,11);

void setup() {

// set the speed at 60 rpm:

myStepper.setSpeed(60);

// initialize the serial port:

Serial.begin(9600); }

void loop() {

// step one revolution in one direction:

Serial.println("clockwise");

myStepper.step(stepsPerRevolution);

delay(500);

// step one revolution in the other direction:

Serial.println("counterclockwise");

myStepper.step(-stepsPerRevolution);

delay(500);

}

If you need help ask in the comments or send me email : drimer525@gmail.com

**SOON ON KICKSTARTER HOPE YOU'LL HELP ME**

<p>hi <br>my stepper motor gives whistle voice during rotation.<br>Who knows what the problem is?<br>my stepper motor is 42BYGH40388</p>
<p>Can you share me whiring diagram?</p>
My stepper only have 4 wires...
<p>Nice work, thanks for sharing this project!</p>
<p>Thanks,there will be more projects,like how to connect OLED i2C display,nrf modul etc..so if you want to be updated-FOLLOW ! :)</p>
I think the step code is for step/dir connections (bipolar) ?
<p>Sure a pin driver (That is that the ULN2003 was designed to do, drive solenoid pins -- it is an array of diode protected Darlington transistors) will run a stepper motor. It just will not run it very well. You need to control current with feedback running a stepper motor. Get a real stepper driver, then just output step, and direction signals with your microcontroller.</p>

About This Instructable

26,056views

62favorites

License:

Bio: Studying electro...
More by drimer525:Connect stepper motor to arduino 
Add instructable to: