Control DC Motor Using L293D

by Anshu AR in Circuits > Arduino

38256 Views, 36 Favorites, 0 Comments

Control DC Motor Using L293D

Cover 01.JPG

Hello everyone,

In this instructable we will be controlling DC motor using L293D and Arduino.

The L293D motor driver is able to control the speed as well as direction of motor.

Gather the Parts

Parts 01.JPG
Parts 02.JPG

For, controlling DC motor using L293D we will need:

  • An Arduino UNO
  • A L293D motor driver
  • Small DC motor
  • A Breadboard
  • Jumper wire pack

Circuit

Wiring 01.JPG
Wiring 02.png
Wiring 03.png

Hookup all the components according to the circuit shown above.

Pins on L293D :

  • The speed of the motor is controlled by Enable 2 pin using analogWrite() function.
  • While the direction of the motor is controlled by In 3 and In 4 pins.

Arduino Sketch

Code 02.JPG
Code.PNG

Upload the following code to Arduino using Arduino IDE

int enable2 = 9;

int in3 = 10;

int in4 = 11;

void setup()

{

pinMode(enable2, OUTPUT);

pinMode(in3, OUTPUT);

pinMode(in4, OUTPUT);

}

void loop()

{

analogWrite(enable2, 200); // Any value between 0 and 255

digitalWrite(in3, HIGH);

digitalWrite(in4, LOW);

delay(10000);

analogWrite(enable2, 200); // Any value between 0 and 255

digitalWrite(in3, LOW);

digitalWrite(in4, HIGH);

delay(10000);

}

To control the direction of the motor :

  • The pins in3 and in4 must be set to opposite values.
  • If in3 is HIGH and in4 is LOW, the motor will spin one way, on the other hand in3 is HIGH and in4 LOW then, the motor will spin in the opposite direction.

To control the speed of the motor :

  • The speed is set by using an analogWrite to the enable pin.
  • Speed of the motor can be changed by changing the value in "analogWrite", The motor spins at a maximum speed if the value in analogWrite is set as 255.

Downloads

Done

Done 01.JPG

Now just power the Arduino using USB or 9V battery and see your motor spinning.

Thanks for viewing.