Arduino Based DC
Motor Speed Control
http://www.edgefxkits.com/
Introduction
Arduino Based DC Motor Speed
Control
 This project is designed to control speed of a DC motor using
an Arduino development board. Speed of the DC motor is
directly proportional to the voltage applied across its
terminals. Hence, if the voltage across the motor terminal is
varied, then the speed can also be varied.
http://www.edgefxkits.com/
Block Diagram
Arduino Based DC Motor Speed
Control
http://www.edgefxkits.com/
Hardware Requirements
Arduino Based DC Motor Speed
Control
• Arduino develop Board
• Crystal
• DC Motor
• Motor Driver IC
• LED
• Resistors
• Capacitors
• Diodes
• Transformer
• Voltage Regulator
• Push Buttons.
http://www.edgefxkits.com/
Software Requirements
Arduino Based DC Motor Speed
Control
 Arduino software
 Language: Arduino programming language
http://www.edgefxkits.com/
Arduino
Arduino Based DC Motor Speed
Control
 The Arduino microcontroller is an easy to use yet powerful single board
computer that has gained considerable traction in the hobby and
professional market.
 The Arduino is open-source, which means hardware is reasonably priced
and development software is free.
http://www.edgefxkits.com/
Arduino Based DC Motor Speed
Control
Arduino Board
http://www.edgefxkits.com/
Working of Arduino
Arduino Based DC Motor Speed
Control
 Inexpensive :
• Arduino boards are relatively inexpensive compared to other
microcontroller platforms.
 Cross-platform :
• The Arduino software runs on Windows, Macintosh OSX, and Linux
operating systems. Most microcontroller systems are limited to
Windows.
http://www.edgefxkits.com/
Arduino Based DC Motor Speed
Control
 Programming environment :
• The Arduino programming environment is easy-to-use for beginners,
yet flexible enough for advanced users to take advantage of as well.
 Open source and extensible software :
• The Arduino software and is published as open source tools, available
for extension by experienced programmers.
Working of Arduino
http://www.edgefxkits.com/
Arduino Based DC Motor Speed
Control
PWM
 The PWM switching frequency has to be much faster than what would
affect the load, which is to say the device that uses the power.
 The term duty cycle describes the proportion of on time to the regular
interval or period of time.
 A low duty cycle corresponds to low power, because the power is off for
most of the time. Duty cycle is expressed in percent, 100% being fully on.
http://www.edgefxkits.com/
PWM Applications
Arduino Based DC Motor Speed
Control
 Telecommunications
 Power delivery
 Voltage regulation
 Audio effects and amplification.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
LE
D
 LEDs are semiconductor devices are made out of silicon.
When current passes through the LED, it emits photons as a
byproduct.
Normal light bulbs produce light by heating a metal filament
until its white hot.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
 LEDs present many advantages over traditional light sources including
 Lower energy consumption.
 Longer lifetime.
 Improved Robustness.
 Smaller Size.
 Faster Switching.
LED
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
 Most common LCDs connected to the microcontrollers are 16x2 and 20x2
displays.
 This means 16 characters per line by 2 lines and 20 characters per line by 2
lines, respectively.
 The standard is referred to as HD44780U.
 It refers to the controller chip which receives data from an external source
and communicates directly with the LCD.
Liquid Crystal Display (LCD)
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
 If an 8-bit data bus is used the LCD will require 11 data lines (3 control lines
plus the 8 lines for the data bus).
 The three control lines are referred to as EN, RS, and RW.
 EN=Enable (used to tell the LCD that you are sending it data).
 RS=Register Select (When RS is low (0), data is treated as a command)
(When RS is High(1), data being sent is text data ).
 R/W=Read/Write (When RW is low (0), the data written to the LCD)
(When RW is low (0), the data reading to the LCD).
LCD Background
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
LCD Diagram
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
DC- Motor
 A DC motor is an electric motor that runs on direct current (DC)
electricity.
 In any electric motor, operation is based on simple electromagnetism.
 A simple 2-pole DC electric motor (here red represents a magnet or
winding with a "North" polarization, while green represents a magnet
or winding with a "South" polarization).
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
 Every DC motor has six basic parts -- axle, rotor (a.k.a.,
armature), stator, commutator, field magnet(s), and brushes.
DC- Motor
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Simplest DC Motor
Circuit
 Connect the motor to a DC power supply.
Switch open Switch closed
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Current Continues After Switch is Opened
 Opening the switch does not immediately stop current in the
motor windings.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Reverse Current
 Charge build-up can cause damage.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Motor Driver (l293d)
 L293D is a typical Motor driver or Motor Driver IC which allows DC
motor to drive on either direction.
 L293D is a 16-pin IC which can control a set of two DC motors
simultaneously in any direction.
 Control two DC motor with a single L293D IC. Dual H-bridge Motor
Driver integrated circuit(IC).
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
L293D Pin Diagram
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Working of
L293D
 There are 4 input pins for l293d, pin 2,7 on the left and pin 15 ,10 on the
right as shown on the pin diagram.
 Left input pins will regulate the rotation of motor connected across left
side and right input for motor on the right hand side.
 The motors are rotated on the basis of the inputs provided across the
input pins as LOGIC 0 or LOGIC 1.
 In simple you need to provide Logic 0 or 1 across the input pins for
rotating the motor.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Circuit Diagram For l293d Motor Driver IC
Controller
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Voltage Specification
 VCC is the voltage that it needs for its own internal operation 5v.
 L293D will not use this voltage for driving the motor.
 For driving the motors it has a separate provision to provide motor
supply VSS (V supply).
 L293d will use this to drive the motor.
 It means if you want to operate a motor at 9V then you need to
provide a Supply of 9V across VSS Motor supply.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
 The maximum voltage for VSS motor supply is 36V.
 It can supply a max current of 600mA per channel.
 Since it can drive motors Up to 36v hence you can drive pretty big
motors with this l293d.
 VCC pin 16 is the voltage for its own internal Operation.
 The maximum voltage ranges from 5v and up to 36v.
Voltage Specification
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
 Output current 1A per channel (600 mA for L293D).
 Peak output current 2 A per channel (1.2 A for L293D).
 Output clamp diodes for Inductive Transient suppression(L293D).
Motor Driver Features
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Working Principle
 The voltage supplied to a DC motor controls its speed.
 Arduino cannot supply variable DC output.
 Arduino lacks a true analog output.
 Use Pulse-width modulation (PWM) to simulate a variable DC supply
voltage.
 PWM is a common technique for supplying variable power levels to
“slow” electrical devices such as resistive loads, LEDs, and DC motors.
 Arduino Uno has 6 PWM pins: Digital I/O pins 3, 5, 6, 9,10, and 11.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Arduino UNO
http://www.edgefxkits.com/
Applications:
Arduino based DC Motor Speed
Control
 Wide supply-voltage range: 4.5V to 36V
 Separate input- logic supply
 Internal ESD protection
 Thermal shutdown
 High-Noise-Immunity input
 Functional Replacements for SGS L293 and SGS L293D
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Further Enhancement
The project can be enhanced by using power electronic
devices such as IGBTs to achieve the speed control higher
capacity industrial motors and DC Motor Controller.
http://www.edgefxkits.com/
Arduino based DC Motor Speed
Control
Conclusion
The Circuit was designed and implemented. this project
can be enhanced by using power electronic devices such as
IGBTs to achieve the speed control higher capacity
industrial motors and DC Motor Controller. A motor-driver
IC is interfaced to the Arduino board for receiving PWM
signals and delivering desired output for speed control of a
small DC motor.
http://www.edgefxkits.com/

BLDC Motor Speed Control with RPM Display and PWM

  • 1.
  • 2.
    http://www.edgefxkits.com/ Introduction Arduino Based DCMotor Speed Control  This project is designed to control speed of a DC motor using an Arduino development board. Speed of the DC motor is directly proportional to the voltage applied across its terminals. Hence, if the voltage across the motor terminal is varied, then the speed can also be varied.
  • 3.
  • 4.
    http://www.edgefxkits.com/ Hardware Requirements Arduino BasedDC Motor Speed Control • Arduino develop Board • Crystal • DC Motor • Motor Driver IC • LED • Resistors • Capacitors • Diodes • Transformer • Voltage Regulator • Push Buttons.
  • 5.
    http://www.edgefxkits.com/ Software Requirements Arduino BasedDC Motor Speed Control  Arduino software  Language: Arduino programming language
  • 6.
    http://www.edgefxkits.com/ Arduino Arduino Based DCMotor Speed Control  The Arduino microcontroller is an easy to use yet powerful single board computer that has gained considerable traction in the hobby and professional market.  The Arduino is open-source, which means hardware is reasonably priced and development software is free.
  • 7.
    http://www.edgefxkits.com/ Arduino Based DCMotor Speed Control Arduino Board
  • 8.
    http://www.edgefxkits.com/ Working of Arduino ArduinoBased DC Motor Speed Control  Inexpensive : • Arduino boards are relatively inexpensive compared to other microcontroller platforms.  Cross-platform : • The Arduino software runs on Windows, Macintosh OSX, and Linux operating systems. Most microcontroller systems are limited to Windows.
  • 9.
    http://www.edgefxkits.com/ Arduino Based DCMotor Speed Control  Programming environment : • The Arduino programming environment is easy-to-use for beginners, yet flexible enough for advanced users to take advantage of as well.  Open source and extensible software : • The Arduino software and is published as open source tools, available for extension by experienced programmers. Working of Arduino
  • 10.
    http://www.edgefxkits.com/ Arduino Based DCMotor Speed Control PWM  The PWM switching frequency has to be much faster than what would affect the load, which is to say the device that uses the power.  The term duty cycle describes the proportion of on time to the regular interval or period of time.  A low duty cycle corresponds to low power, because the power is off for most of the time. Duty cycle is expressed in percent, 100% being fully on.
  • 11.
    http://www.edgefxkits.com/ PWM Applications Arduino BasedDC Motor Speed Control  Telecommunications  Power delivery  Voltage regulation  Audio effects and amplification.
  • 12.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control LE D  LEDs are semiconductor devices are made out of silicon. When current passes through the LED, it emits photons as a byproduct. Normal light bulbs produce light by heating a metal filament until its white hot.
  • 13.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control  LEDs present many advantages over traditional light sources including  Lower energy consumption.  Longer lifetime.  Improved Robustness.  Smaller Size.  Faster Switching. LED
  • 14.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control  Most common LCDs connected to the microcontrollers are 16x2 and 20x2 displays.  This means 16 characters per line by 2 lines and 20 characters per line by 2 lines, respectively.  The standard is referred to as HD44780U.  It refers to the controller chip which receives data from an external source and communicates directly with the LCD. Liquid Crystal Display (LCD)
  • 15.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control  If an 8-bit data bus is used the LCD will require 11 data lines (3 control lines plus the 8 lines for the data bus).  The three control lines are referred to as EN, RS, and RW.  EN=Enable (used to tell the LCD that you are sending it data).  RS=Register Select (When RS is low (0), data is treated as a command) (When RS is High(1), data being sent is text data ).  R/W=Read/Write (When RW is low (0), the data written to the LCD) (When RW is low (0), the data reading to the LCD). LCD Background
  • 16.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control LCD Diagram
  • 17.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control DC- Motor  A DC motor is an electric motor that runs on direct current (DC) electricity.  In any electric motor, operation is based on simple electromagnetism.  A simple 2-pole DC electric motor (here red represents a magnet or winding with a "North" polarization, while green represents a magnet or winding with a "South" polarization).
  • 18.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control  Every DC motor has six basic parts -- axle, rotor (a.k.a., armature), stator, commutator, field magnet(s), and brushes. DC- Motor
  • 19.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Simplest DC Motor Circuit  Connect the motor to a DC power supply. Switch open Switch closed
  • 20.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Current Continues After Switch is Opened  Opening the switch does not immediately stop current in the motor windings.
  • 21.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Reverse Current  Charge build-up can cause damage.
  • 22.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Motor Driver (l293d)  L293D is a typical Motor driver or Motor Driver IC which allows DC motor to drive on either direction.  L293D is a 16-pin IC which can control a set of two DC motors simultaneously in any direction.  Control two DC motor with a single L293D IC. Dual H-bridge Motor Driver integrated circuit(IC).
  • 23.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control L293D Pin Diagram
  • 24.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Working of L293D  There are 4 input pins for l293d, pin 2,7 on the left and pin 15 ,10 on the right as shown on the pin diagram.  Left input pins will regulate the rotation of motor connected across left side and right input for motor on the right hand side.  The motors are rotated on the basis of the inputs provided across the input pins as LOGIC 0 or LOGIC 1.  In simple you need to provide Logic 0 or 1 across the input pins for rotating the motor.
  • 25.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Circuit Diagram For l293d Motor Driver IC Controller
  • 26.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Voltage Specification  VCC is the voltage that it needs for its own internal operation 5v.  L293D will not use this voltage for driving the motor.  For driving the motors it has a separate provision to provide motor supply VSS (V supply).  L293d will use this to drive the motor.  It means if you want to operate a motor at 9V then you need to provide a Supply of 9V across VSS Motor supply.
  • 27.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control  The maximum voltage for VSS motor supply is 36V.  It can supply a max current of 600mA per channel.  Since it can drive motors Up to 36v hence you can drive pretty big motors with this l293d.  VCC pin 16 is the voltage for its own internal Operation.  The maximum voltage ranges from 5v and up to 36v. Voltage Specification
  • 28.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control  Output current 1A per channel (600 mA for L293D).  Peak output current 2 A per channel (1.2 A for L293D).  Output clamp diodes for Inductive Transient suppression(L293D). Motor Driver Features
  • 29.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Working Principle  The voltage supplied to a DC motor controls its speed.  Arduino cannot supply variable DC output.  Arduino lacks a true analog output.  Use Pulse-width modulation (PWM) to simulate a variable DC supply voltage.  PWM is a common technique for supplying variable power levels to “slow” electrical devices such as resistive loads, LEDs, and DC motors.  Arduino Uno has 6 PWM pins: Digital I/O pins 3, 5, 6, 9,10, and 11.
  • 30.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Arduino UNO
  • 31.
    http://www.edgefxkits.com/ Applications: Arduino based DCMotor Speed Control  Wide supply-voltage range: 4.5V to 36V  Separate input- logic supply  Internal ESD protection  Thermal shutdown  High-Noise-Immunity input  Functional Replacements for SGS L293 and SGS L293D
  • 32.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Further Enhancement The project can be enhanced by using power electronic devices such as IGBTs to achieve the speed control higher capacity industrial motors and DC Motor Controller.
  • 33.
    http://www.edgefxkits.com/ Arduino based DCMotor Speed Control Conclusion The Circuit was designed and implemented. this project can be enhanced by using power electronic devices such as IGBTs to achieve the speed control higher capacity industrial motors and DC Motor Controller. A motor-driver IC is interfaced to the Arduino board for receiving PWM signals and delivering desired output for speed control of a small DC motor.
  • 34.