0% found this document useful (0 votes)
54 views

DC-Motor Speed Controller

This document describes a circuit that allows controlling the speed of a DC motor using a PC's parallel port. The circuit uses a decoder, inverters, a timer IC and transistor to interface the motor with the PC. Software written in C controls the motor speed by adjusting the pulse width output from the timer IC. The user can increase, decrease, or exit the program to control the motor speed in 8 levels from the PC. Contact information is provided to obtain the full documentation, presentation, and hardware kit to implement the project.

Uploaded by

chakralabs
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
54 views

DC-Motor Speed Controller

This document describes a circuit that allows controlling the speed of a DC motor using a PC's parallel port. The circuit uses a decoder, inverters, a timer IC and transistor to interface the motor with the PC. Software written in C controls the motor speed by adjusting the pulse width output from the timer IC. The user can increase, decrease, or exit the program to control the motor speed in 8 levels from the PC. Contact information is provided to obtain the full documentation, presentation, and hardware kit to implement the project.

Uploaded by

chakralabs
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

Visit www.deekshith.

in for more unique project ideas and circuits


CIRCUIT IDEAS

PC-BASED DC MOTOR SPEED CONTROLLER


R. KARTHICK

SAN

I THE

his circuit allows you to control the speed of a DC motor (in eight levels) from your PCs parallel port. The PC uses a software program to control the speed of the motor. The motor is connected to the PC through an interface circuit. The interface

The resistor network comprising presets VR1 through VR8, resistors R1 and R2 and capacitor C1 are the timing components of timer IC 555 (IC4), which is configured in astable mode. The output of IC4 is a square wave, which is fed to the base of transistor T1 via current-limiting resistor R3. Transistor T1 is used to drive the motor.

The software (speedM.c) is written in C language and compiled using Turbo C compiler. Initially, when the motor is off, the program prompts you to press Enter key to start the motor. Once you press the key, the motor starts running at full speed. After a few seconds, the program asks you to press any key from the keyboard to go

circuit consists of 1-of-8 decoder IC 74LS138 (IC1), hex inverter ICs 74LS04 (IC2 and IC3), resistor networks, timer IC 555 (IC4) and motor driver transistor SL100 (T1). The decoder IC accepts binary weighted inputs A0, A1 and A2 at pins 1, 2 and 3, respectively. With active-low enable input pins 4 and 5 of the decoder grounded, it provides eight mutually exclusive active-low outputs (Q0 through Q7). These outputs are inverted by hex inverters IC2 and IC3.

The pulse-width modulation (PWM) method is used for efficient control of the motor. The output of the PC is decoded to select a particular preset (VR1 through VR8). The value of the selected preset, along with resistors R1 and R2 and capacitor C1, changes the output pulse width at pin 3 of IC4. Thus the motor speed can be increased/decreased by choosing a particular resistance. For high-power motors, the transistor can be replaced by an IGBT or a power MOSFET.

to the next screen for controlling the speed of the motor. This screen has options for increasing and decreasing the motor speed and also for exiting from the program. For increasing the speed enter choice 1 and press Enter key, and for decreasing the speed enter choice 2 and press Enter key. This action changes the speed by one step at-a-time and the message Speed decreased or Speed increased is displayed on the screen. To go to the main menu, again press Enter key.

SPEEDM.C
//R.KARTHICK,III ECE,K.L.N.C.E.,MADURAI //[email protected] #include<stdio.h> #include<conio.h> int a[7],i,c; void start(void); void main(void) { int P=0x0378,j,c=7,c1,x,y; clrscr(); outportb(P,0); textbackground(9); textcolor(3); for(x=0;x<=80;x++) for(j=0;j<=25;j++) { gotoxy(x,j); cprintf(" "); } for(i=0;i<8;i++) a[i]=i; gotoxy(23,11); printf("Press Enter to start the motor"); getch(); gotoxy(28,13); printf("WAIT STARTING MOTOR"); start();
JUNE 2004 ELECTRONICS FOR YOU

http://www.deekshith.in/search/label/Projects :Visit for more unique project ideas and circuits

Visit www.deekshith.in for more unique project ideas and circuits


CIRCUIT IDEAS
gotoxy(25,15); printf("Motor started sucessfully"); gotoxy(22,17); printf("Press any key for speed control"); getch(); while(1) { clrscr(); gotoxy(25,3); for(j=0;j<79;j++) { gotoxy(j+1,2); printf("*"); } gotoxy(23,3); printf("DC MOTOR SPEED CONTROL USING PC"); for(j=0;j<79;j++) { gotoxy(j+1,4); printf("*"); } printf("\n"); printf("\t\t\t1.INCREASE SPEED\n\t\t\t2.DECREASE SPEED\n\t\t\t3.EXIT") ; for(j=0;j<79;j++) { gotoxy(j+1,8); printf("*"); } for(j=0;j<79;j++) { gotoxy(j+1,10); printf("*"); } gotoxy(1,9); printf("Enter your choice:"); scanf("%d",&c1); switch(c1) { case 1:if(c==7) { clrscr(); gotoxy(23,13); printf("MOTOR IS RUNNING IN FULL SPEED"); getch(); } if(c<7) { clrscr(); c++; outport(P,a[c]); gotoxy(33,13); printf("SPEED INCREASED"); getch(); } break; case 2: if(c==0) { clrscr(); gotoxy(23,13); printf("MOTOR IS RUNNING IN LOW SPEED"); getch(); } if(c>0) { clrscr(); c--; outport(P,a[c]); gotoxy(33,13); printf("SPEED DECREASED"); getch(); } break; case 3 : for(j=c;j>=0;j--) { outportb(0X0378,j); delay(100); } outportb(P,0); clrscr(); gotoxy(17,13); textcolor(2); cprintf("KARTHICK.R\nECE\nK.L.N.COLLEGE OF ENGG\nMADURAI."); getch(); exit(1); } } } void start() { outportb(0x0378,0); for(i=0;i<8;i++) { outportb(0X0378,i); delay(1000); } }

ELECTRONICS FOR YOU

JUNE 2004

http://www.deekshith.in/search/label/Projects :Visit for more unique project ideas and circuits

Visit www.deekshith.in for more unique project ideas and circuits

Get this project done!


Get the Document + PPT + KIT
Are you interested in doing this project either as your college (mini / major) project or as your hobby? We can help you out. We can provide you with all the documents including documentation, PPT, etc that you need as a student to present this project at your college. Also, if you are in need of the hardware kit for this project, we can provide it to you at a cheaper cost and in little time.
Contact: http://deekshith.in/p/contact.html Email: [email protected] Facebook: http://facebook.com/deekshithallamaneni Phone: +919441921293 (Local to Hyderabad, India)

http://www.deekshith.in/search/label/Projects :Visit for more unique project ideas and circuits

You might also like