Introduction: Bi Polar Stepper Motor With L293D and Arduino

Picture of Bi Polar Stepper Motor With L293D and Arduino

Hi,

I had a Bi Polar stepper motor lying, which I'll be using to create a Dolly for my DSLR.

Components used:

  1. Arduino Uno
  2. Stepper Motor ML17A3 B (This is the model no printed on motor)
  3. Breadboard
  4. L293D
  5. 9v Battery Pack
  6. Some Jumper cables

To make the connections, follow the circuit diagram.

Step 1: Connections on Breadboard

Picture of Connections on Breadboard

The images show the step by step connections made on bread board. I started off with GND pins and then to the motor and then Arduino and finally the Battery Pack.

Step 2: Code

I used the code from Arduino IDE. I tried with stepper_OneRevolution and stepper_OneStepAtATime example and they worked fine. The code is listed below.

/*
This program drives a unipolar or bipolar stepper motor. The motor is attached to digital pins 8 - 11 of the Arduino. The motor should revolve one revolution in one direction, then one revolution in the other direction. Created 11 Mar. 2007 Modified 30 Nov. 2009 by Tom Igoe */

#include

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); }

Step 3: Final Testing

The testing video.

Comments

shivamp76 (author)2017-08-13

what battery I have to use with nema17 and L293d...please I need this for my project...please

RehanM1 (author)2016-12-01

I tried this but my stepper motor is running without Motor supply votage

MsSweetSatisfaction (author)2014-08-30

Woah very neat! Thanks for sharing!

Thanks MsSweetSatisfaction. This inspires me to share my creations.

bisrats (author)sureshmali2016-04-18

hi am trying to move the stepper motor in case sensitive. i need to run the motor in the first 90degree and 180, 270,380 this is for both counter and clock wise direction can u help me pls

TrentL5 made it! (author)2016-03-06

thanks with your help i figured it out! here is a vid

TrentL5 made it! (author)2016-03-06

thanks for your help! i was able to get it going here is a vid

nsharma25 (author)2016-02-08

can you tell me what is the difference between l293d(st) and l293dne(texas instruments).because motor driver board which use l293d able to rotate the motor while l293dne cannot.

sureshmali (author)nsharma252016-02-08

I checked the datasheet and the only difference I see in the specifications is that L239DNE has 4 output and L239D has 2 output. For more info you can check the data sheet.

http://www.mouser.in/ProductDetail/STMicroelectron...

http://www.mouser.in/ProductDetail/Texas-Instrumen...

Regards,

120030117004 (author)2015-10-22

How much current require for l293d to operate the 1A rating stepper motor?

JuneV1 (author)2015-10-18

hi.. im making a automatic roof extension for rain. im using the same
components as listed above and a rain sensor can you help me make a
codes :( i have a hard time making the codes.. Please help Thank you

swagatam.bosechoudhury (author)2015-04-04

I tried using pins 2,3,4,5 instead of 8,9,10,11 and its not working....plz help

thanksin advance

sk8raven (author)2015-03-19

What current does your motor use? For example, I want to control a stepper that takes 1.7 A, only that I don't know if the L293D can handle that...

ishaan80 (author)sk8raven2015-03-30

use L298 in that case

JaredE (author)2015-03-07

Thanks. You forgot to include the stepper library in your sketch. Here is the corrected code:

/*
This program drives a unipolar or bipolar stepper motor. The motor is attached to digital pins 8 - 11 of the Arduino. The motor should revolve one revolution in one direction, then one revolution in the other direction. Created 11 Mar. 2007 Modified 30 Nov. 2009 by Tom Igoe */

#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); }

I have all these components and will try to build this thing.

MitchellO (author)2015-02-04

Hello this helps a lot, thank you. I have a project that requires me to make an elevator with three floors, and an emergency stop. Was wondering if you'd be able to help. Thank you

AkDisaster (author)2014-11-14

from that code .. you can create a code for mini elevator using that IC ??
we have project please help us :'( .. can you teach me .. tnx

sureshmali (author)AkDisaster2014-11-14

yes sure, you can build an elevator. share your exact requirement. i'' try to help as much as possible.

Arman5592 (author)2014-08-31

Nice ! I always wanted DIY drivers to reduce costs and space .

About This Instructable

52,467views

39favorites

License:

Bio: I am a Project Management Analyst at a reputed brand. Electronics and Photography are my hobby which I pursue on my weekends.
Add instructable to: