In this project computer controls DC motor wirelessly through it’s LPT port. Computer generates signals that are transmitter by transmitter. These signals are received by DC motor controlling unit and it controls the operation of DC motor. 89C51 is used at receiver side which detects the signal and controls the operation of motor. IR interface is chosen to establish wireless connection between computer and controlling unit. So, one must keep transmitter and receiver in line of sight region.
So now you can start or stop the DC motor or even increase/decrease speed of it from a remote place through your PC!!!!!!!! Isn’t it interesting?????? Let’s see how it is done.
Again there are two parts (1) Transmitter (2) DC Motor control unit (receiver).
In transmitter part a small transmitting unit is connected to LPT port of computer. Computer generates different frequency signals on LPT port and these signals are modulated over high frequency carrier and transmitted over IR channel.
On receiver side these signals are demodulated by IR sensor and given to 89C51. On detecting particular signal 89C51 will take desired controlling action on DC motor.
Transmitter & controlling unit
Transmitter:-
IC 555 is connected in astable mode to generate CW of 38KHz. Reset pin (pin no.4) of IC is connected to pin no.2 (D0) pin of 25 pin D-type female connector. The astable operation of IC 555 is ON/OFF by applying 1/0 on this D0 pin. So the low frequency signal generated by program is modulated over 38KHz carrier wave. This modulated signal is given to IR LED that will generate IR light beam of 38 KHz. The function that generates signals is as given below.
wave (int a, int b, int c)
{
for (int i=1;i<a; i++)
{
sound(1000);
outport(0x0378,0x01);
delay(b);
outport(0x0378,0x00);
delay(c);
nosound();
}
}
The function takes three arguments. First argument decides how many times the for loop should be executed. Second two arguments decides the delay given between high (1) and low (0) logic given to pin no.2 (D0). So complete function will generate rectangular pulses on pin no. 2 of LPT port depending on these three parameters. For example you take a=200, b=3 and c=2 then a rectangular wave of freq. 200Hz (3+2 = 5ms means 200Hz) is generated for 200×5 = 1000ms means 1 second. For four different functions computer generates four different signals. Please refer the table.
Sr.No. |
Function |
Frequency signal (Hz) |
Delay (ms) |
1 |
Rotate Clockwise |
250 |
4 (2+2) |
2 |
Rotate Anticlockwise |
200 |
5 (3+2) |
3 |
Increase Speed |
125 |
8 (4+4) |
4 |
Decrease Speed |
100 |
10 (5+5) |
In software part all other things remains same means graphics, buttons, mouse interfacing etc. as it is in software “DC motor controller using C++”. To get more details
click here
89C51 based DC motor controling unit:-
The figure given below shows block diagram of unit.
This is the same DC-motor controller that I have used in “Remotely operated DC-Motor controller” project without any modification. To know more about this
click here
The only change is now rather then receiving signals from remote control the unit is receiving signals from computer. Rest whole operation is same.
Operation:-
When you clockwise/anticlockwise button on computer desired signal (250/200 Hz) is generated and modulated by 38KHz carrier. IR led will generate 38KHz IR light beam
· This IR light beam will be detected by IR sensor and the demodulated signal is given to micro-controller
· Micro-controller will count the frequency compare it with internal code frequency and rotate motor clockwise/anticlockwise for 3 seconds with desired speed. then motor will stop.
· Now if you press speed increment/decrement button blue LED will blink to indicate speed is incremented/decremented. Speed factor will also be incremented/ decremented on program screen
· Again when you press clockwise/anticlockwise button motor will rotate with new speed for 3 second.
Filed Under: Electronic Projects
Questions related to this article?
👉Ask and discuss on EDAboard.com and Electro-Tech-Online.com forums.
Tell Us What You Think!!
You must be logged in to post a comment.