Dc Motor Driver Circuit

The circuit implements the widely used IRS2330 3-phase driver IC The offered concept appears very simple considering that almost all of the technicalities is looked after effectively by the IC itself, it's exactly about hooking up the appropriate pinouts with the few external additional parts for the preferred implementations. The two thick lines on the left are the main DC power supply (probably from some battery source or maybe a DC adapter). Once the power is routed through this circuit, you get a 5 volt potential difference across the ground and the line marked +5V. And you get 12 volts potential difference across the +12V line and ground. Specialized circuits (motor drivers) have been developed to supply motors with power and to isolate the other ICs from electrical problems. These circuits can be designed such that they can be completely separate boards, reusable from project to project. A very popular circuit for driving DC motors (ordinary or gearhead) is called an H-bridge. The Basic Motor Driver shield is a motor driver for two brush DC motors or one bipolar stepper motor. Rated for 30V and 2A peak current operation, the Basic Motor Driver is one of the lowest-cost medium-power motor driver solutions available for Arduino.

Common DC gear head motors need current above 250mA. There are many integrated circuits like ATmega16 Microcontroller, 555 timer IC. But, IC 74 series cannot supply this amount of current. When the motor is directly connected to the o/p of the above ICs then, they might damaged. To overcome this problem, a motor control circuit is required, which can act as a bridge between the above motors and ICs (integrated circuits). There are various ways of making H-bridge motor control circuit such as using transistor, relays and using L293D/L298.

H-Bridge Circuit

A H bridge is an electronic circuit that allows a voltage to be applied across a load in any direction. H-bridge circuits are frequently used in robotics and many other applications to allow DC motors to run forward & backward. These motor control circuits are mostly used in different converters like DC-DC, DC-AC, AC-AC converters and many other types of power electronic converters. In specific, a bipolar stepper motor is always driven by a motor controller having two H-bridges


A H-bridge is fabricated with four switches like S1, S2, S3 and S4. When the S1 and S4 switches are closed, then a +ve voltage will be applied across the motor. By opening the switches S1 and S4 and closing the switches S2 and S3, this voltage is inverted, allowing invert operation of the motor.

Generally, the H-bridge motor driver circuit is used to reverse the direction of the motor and also to break the motor. When the motor comes to a sudden stop, as the terminals of the motor are shorted. Or let the motor run free to a stop, when the motor is detached from the circuit. The table below gives the different operations with the four switches corresponding to the above circuit.

L293D Motor Driver IC

L293D IC is a typical Motor Driver IC which allows the DC motor to drive on any direction. This IC consists of 16-pins which are used to control a set of two DC motors instantaneously in any direction. It means, by using a L293D IC we can control two DC motors. As well, this IC can drive small and quiet big motors.

This L293D IC works on the basic principle of H-bridge, this motor control circuit allows the voltage to be flowing in any direction. As we know that the voltage must be change the direction of being able to rotate the DC motor in both the directions. Hence, H-bridge circuit using L293D ICs are perfect for driving a motor. Single L293D IC consists of two H-bridge circuits inside which can rotate two DC motors separately. Generally, these circuits are used in robotics due to its size for controlling DC motors.


Pin Diagram of a L293D Motor Driver IC Controller

  • Pin-1 (Enable 1-2): When the enable pin is high, then the left part of the IC will work otherwise it won’t work. This pin is also called as a master control pin.
  • Pin-2 (Input-1): When the input pin is high, then the flow of current will be through output 1
  • Pin-3 (Output-1): This output-1 pin must be connected to one of the terminals of the motor
  • Pin4 &5: These pins are ground pins
  • Pin-6 (Output-2): This pin must be connected to one of the terminals of the motor.
  • Pin-7 (Input-2): When this pin is HIGH then the flow of current will be though output 2
  • Pin-8 (Vcc2): This is the voltage pin which is used to supply the voltage to the motor.
  • Pin-16 (Vss): This pin is the power source to the integrated circuit.
  • Pin-15 (Input-4): When this pin is high, then the flow of current will be through output-4.
  • Pin-14 (Output-4): This pin must be connected to one of the terminals of the motor
  • Pin-12 & 13: These pins are ground pins
  • Pin-11 (Output-3): This pin must be connected to one of the terminals of the motor.
  • Pin-10 (Input-3): When this pin is high, then the flow of current will through output-3
  • Pin-9 (Enable3-4): When this pin is high, then the right part of the IC will work & when it is low the right part of the IC won’t work. This pin is also called as a master control pin for the right part of the IC.

Transistor Dc Motor Driver Circuit

H Bridge Motor Control Circuit Using L293d IC

The IC LM293D consists of 4-i/p pins where, pin2 and 7 on the left side of the IC and Pin 10 and 15 on the right side of the IC. Left input pins on the IC will control the rotation of a motor. Here, the motor is connected across side and right i/p for the motor on the right hand side. This motor rotates based on the i/ps we provided across the input pins as Logic 0 and Logic 1.

Let’s consider, when a motor is connected to the o/p pins 3 and 6 on the left side of the IC. For rotating of the motor in clockwise direction, then the i/p pins have to be provided with Logic 0 and Logic 1.

When Pin-2= logic 1 & pin-7 = logic 0, then it rotates in clockwise direction.
Pin-2=logic 0 & Pin7=logic 1, then it rotates in anti clock direction
Pin-2= logic 0 & Pin7=logic 0, then it is idle (high impedance state)
Pin-2= logic 1 & Pin7=logic 1, then it is idle

In a similar way the motor can also operate across input pin-15 and pin-10 for the motor on the right hand side.

The L4293D motor driver IC deals with huge currents, due to this reason, this circuit uses a heat sink to decrease the heat. Therefore, there are 4-ground pins on the L293D IC. When we solder these pins on the PCB (printed circuit board), then we can get a huge metallic area between the ground pins where the heat can be produced.

This is all about H Bridge Motor Control Circuit Using L293d IC. These ICs are generally used in robotics. We hope that you have got a better understanding about the concept of H-bridge. Furthermore, any queries regarding H bridge motor driver IC l293d or electrical and electronic projects, please give your feedback in the comment section below. Here is a question for you, what is the purpose of moor driver IC?

Related Content
Motor
  • Reverse voltage protection
Driver

Hook up the power supply backwards with most motor drivers and you can throw them in the trash. Not so with the Basic Motor Driver. It is fully reverse voltage protected up to 40V.

  • Simple enable/direction interface

Each motor (or stepper motor phase) is controlled by only 2 inputs: ENABLE and DIRECTION. The ENABLE input can be driven by a PWM output to control the average motor current. The DIRECTION input controls the direction of current flow. These four digital pins completely control 2 brush DC motors or 1 bipolar stepper motor. This interface is compatible with other popular Arduino motor driver shields. See the Connections section below for how to hook up these signals.

  • Use external power or Arduino power
Dc Motor Driver Circuit

You can either use an external voltage source (8V-30V) or use the Vin power from the Arduino. NOTE: For external voltages greater than 15V you must cut jumper J17 when the shield is plugged in to an Arduino (the Ruggeduino is OK up to 24V). See the diagram below in the Connections section for the location of this jumper.

  • Terminal blocks included and assembled

The L298P motor driver, 2-pin 3.5mm terminal blocks, protection diodes and resistors, etc. are all pre-assembled to the board. To use as an Arduino shield, you will need to purchase and solder either pin headers or stacking headers. You will need two 6-pin headers and two 8-pin headers. To use as a standalone motor driver, either solder wires directly to the board or solder in a 6-pin terminal block.

  • Configurable control pins for driving multiple motors

Within a few minutes you can modify the Basic Motor Driver to use different control pins (simple soldering required). Together with stacking headers this means you can stack multiple Basic Motor Driver shields together and independently control multiple motors. Since the Arduino has 6 PWM outputs you can stack up to 3 shields together and independently have PWM control over 6 DC motors or 3 stepper motors. More info below.

  • Parallel phases for double the current

Dc Motor Driver Circuit Board

For driving one DC motor you can connect the two output phases in parallel and get twice the current output. See our application note for more details.

Here are some sample programs for demonstrating the applications of the Basic Motor Driver. They are provided as INO files (i.e., sketches) for use with the Arduino development environment.

  • Basic DC Motor Control: INO file: rmcbasic.ino

This sketch demonstrates how simple it is to use the Basic Motor Driver to control the direction and rotation of two brush DC motors.

  • Stepper Motor Control: INO file: stepperdemo.ino

This sketch demonstrates keyboard control of a stepper motor. Open up the serial monitor (or any other terminal program) and use single-keystroke commands to control stepper motor speed, direction, and power. See the documentation in the sketch for usage notes.

The sketches above make use of the built-in Stepper library that comes with the Arduino software. The AccelStepper library is another library for controlling stepper motors and has more features and more examples.

NOTE: The AF_Motor library is only designed to work with the Adafruit motor shield and will not work with the Basic Motor Driver or other motor drivers that directly control motor driver pins.

Basic Control

L298n Dc Motor Driver Circuit

The following Arduino pins are used by default to control the two motor outputs.