Contactless Digital Tachometer using PIC Microcontroller

Hey friends, I should have posted this project last month itself but there was some problem with the circuit. [link], author of this project did an exellent job. I have been watching him learning on this website. He came as a total noob but now he is well versed with 8051 and PIC microcontroller. earlier he has submitted Microcontroller Based Home Security System



This project is about A Contactless Digital Tachometer. As per defination from wikipedia

A tachometer (revolution-counter, Tach, rev-counter, RPM gauge) is an instrument measuring the rotation speed of a shaft or disk, as in a motor or other machine. The device usually displays the revolutions per minute (RPM) on a calibrated analogue dial, but digital displays are increasingly common. The word comes from Greek Ταχος, tachos, "speed", and metron, "to measure".

wikipedia



Following diagram explains the logic of this project.



The infra red reflective object sensor work by simply emitting the infra red beam and when it encounter the white object surface than the infra red beam will be reflected back to the phototransistor; next the phototransistor and the 2N3904 transistor which formed the Darlington pair will start to conduct and will generate enough voltage across the 470 Ohm resistor to be considered by the PIC16f690 microcontroller build in Capture Compare Pulse width modulation(CCP )module input port as the logical "1". When the infra red beam encounters the black tire surface than both of the phototransistor and 2N3904 transistor will turn off; and the voltage across 470 Ohm resistor will drop to 3.5 volt (logical "0").

Therefore by timing the generated pulse period by the infra red reflective object sensor we could easily calculate the RPM using this following formula:

Frequency = 1/T Hz; T is the generated pulse period in second.

RPM (Rotation per Minute) = Frequency x 60

Here is a sample video of working project:



You can download project related files here:

Download Contactless Digital Tachometer project

Thank you Romel for this contribution. If anyone has doubts regarding this project, please use forum.
printer friendly create pdf of this news item

Submit comment

(Required; Min length 5)
(Required; will not be displayed)

Conversation

Wed Jul 01 2015, 05:14 PM
ShubhamBansal1996
i am making a project of connecting 4 8051's using a can bus for which i am using mcp2515 and mcp2551.but before making it i want to ensure it works by simulating it on proteus though the two ic's mentioned above dont seem to have models in proteus so is there anyone who can help me with that
ExperimenterUK
Tue Jun 30 2015, 05:24 PM
@sachinmm The 8051 timer can't do 1 second. It can do 50ms so count 20 times
sachinmm
Sat Jun 27 2015, 05:01 AM
how calculate 1 second delay in 8051 by using timer and what value should be store in TH0 & TLO register??
sachinmm
Fri Jun 26 2015, 08:25 AM
hello sir plz tell me how to know the 74HC165 parallel in serial out ic is fauty or not?
Wed Jun 24 2015, 08:24 AM
ben mutuku
How can one use XOR gate to ensure the first output is '1' and the next is '0'?
ExperimenterUK
Wed Jun 17 2015, 01:37 AM
@baz..try adding a hash and a semi colon
Sun Jun 14 2015, 06:31 AM
baz
@ExperimenterUK no..i dont do that i just type message example.. Hello my name is baz and then i click send message,
ExperimenterUK
Sun Jun 14 2015, 01:55 AM
@baz..did you end your message with a hash and a semi colon
Sat Jun 13 2015, 06:48 PM
asif Jamadar
I want the program for v/f control technique of 3 phase induction motor
Sat Jun 13 2015, 07:06 AM
baz
@ExperimenterUK okay thank you...but now I already complete and my dot matrix already light up but when i send message from pc to my hardware project it doesnt show any message on my dot matrix..its only blinking when i click send message....I really dont know whats the problem...I had follow all the steps...schematic and use the coding that have been provided..is it because firstly i had wrong burn the coding in AT24C16?? Is that effect ????

Downloads

Comments

Nals99
Fri Jul 03 2015, 08:33 AM
Mc_Comet32
Thu Jun 25 2015, 11:42 AM
yashaswi
Thu Jun 25 2015, 05:56 AM
Riki-cc
Tue Jun 23 2015, 10:48 AM
PadRlp
Thu Jun 18 2015, 02:11 PM
start
Thu Jun 18 2015, 01:30 PM
sheilabajos
Tue Jun 09 2015, 03:35 PM
martintan
Tue Jun 09 2015, 12:08 AM

Online

Guests: 57, Members: 0 ...

most ever online: 182184
(Members: , Guests: 182184) on 06 Aug 2010: 05:37 AM

Members: 37672
Newest member: Nals99
Forum Activity
Nals99 Avatar
Posted By Nals99
Fri Jul 03 2015, 09:34 AM
Here you have an example using timer 0: void delay...
Nals99 Avatar
Posted By Nals99
Fri Jul 03 2015, 08:52 AM
Hi guys...I'm having some problems to transmit dat...
Karan123 Avatar
Posted By Karan123
Thu Jul 02 2015, 09:12 AM
@ajay_bhargav i will not prefer costly ic because ...
prajwalsnh Avatar
Posted By prajwalsnh
Wed Jul 01 2015, 05:21 AM
@ExperimenterUKThanks a lot for correcting my misc...
prajwalsnh Avatar
Posted By prajwalsnh
Wed Jul 01 2015, 05:17 AM
@ExperimenterUK Thank you for your simple and usef...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 30 2015, 05:45 PM
The 8051 timer can't do 1 second. It can do 50ms, ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 30 2015, 05:38 PM
Debugging is the process of finding out why your ...
ExperimenterUK Avatar
Posted By ExperimenterUK
Tue Jun 30 2015, 05:21 PM
You may have misunderstood some of the terms used....
Amit Kumar Das Avatar
Posted By Amit Kumar Das
Mon Jun 29 2015, 06:03 PM
Suppose the ILI9320 TFT LSB & MSB pins are con...
prajwalsnh Avatar
Posted By prajwalsnh
Mon Jun 29 2015, 03:39 PM
Hello everyone,I wanted to know the basics of debu...