Skip to main content

A Low Cost Motor Driver




     From micro-controller we can not connect a motor directly because micro-controller can not give sufficient current to drive a motor. Motor driver is a current enhancing device, it can also act as switching device. Thus,  we insert motor driver in between motor and micro-controller. Motor driver takes the input signals from micro-controller and generate corresponding enhanced output for motor.
 Here, I introduced a low cost motor driver circuit using a SPDT relay module. Many motor driver circuits are available in market . But, they can withstand only small values of current. The driver circuits which can withstand more than 7 Amps are costly. The commonly used L293D driver can pass only 1 Amps. And the L298 can pass only 2 Amps. So It will be good if we have a low cost motor driver which can withstand more than 7 Amps.


The figure shows an SPDT relay. It has 5 terminals as shown in the figure.

NO : Normally Open
NC : Normally Closed
COM : Common


         The terminals indicated as COIL are the two ends of the relay coil. Here we give the excitation voltage. One of these pins will be connected +12 volt and the other one will be connected to tge ground.
        The COM terminal will be  continuous with NC terminal when no excitation voltage is given. When the coil is excited COM terminal will be continuous with NO terminal.
        I used a 4 channel relay module for driving a stepper motor.
The coils of stepper motor are connected to COM of each relay. The normally closed (NC) terminals of each relay are connected to the ground. The normally open (NO) terminals are connected to +12 volt.
        The IN1, IN2, IN3, IN4 of the relay module are connected to the micro-controller. So when a relay coil is energized, corresponding stepper motor coil will be connected to +12 volt and other coils will be connected to the ground.

Advantages,
  • low cost.
  • high current capacity.
Disadvantages,
  • switching can not be too low
  • fast switching may damage the relay



Comments

Popular posts from this blog

A PROCESSING UI FOR CONTROLLING ARDUINO DIGITAL PINS

This is just a simple Processing program and its corresponding Arduino program for controlling the digital pins of Arduino. It is done by using the processing serial library  Processing code import processing.serial.*; Serial n; color c1,c2,c3; color h1,h2; boolean onb0=false; boolean onb1=false; boolean onb2=false; boolean onb3=false; boolean onb4=false; boolean onb5=false; boolean onb6=false; boolean onb7=false; boolean onb8=false; boolean onb9=false; boolean onb10=false; boolean onb11=false; boolean onb12=false; boolean offb0=false; boolean offb1=false; boolean offb2=false; boolean offb3=false; boolean offb4=false; boolean offb5=false; boolean offb6=false; boolean offb7=false; boolean offb8=false; boolean offb9=false; boolean offb10=false; boolean offb11=false; boolean offb12=false; boolean onb13=false; boolean offb13=false; void setup() {   size(800,800);   n=new Serial(this,"/dev/ttyUSB0",9600);   c1=color(80);   h1=color(255,0,0);   c2=color(255)...