Making Arduino based tachometer | Best school project

In this post, I will show you how you can make A Arduino based tachometer(RPM counter). it is the best school science project. I will use IR sensor To measure RPM(Revolution per Minute).



Tachometer is a RPM Counter which counts the number of Rotation per minute. It is of two types one is Mechanical and another one is Digital. In this post, I will show you How you can make a Arduino Based Digital Tachometer using IR sensor module to detect object for count rotation of any rotating body. As IR transmits IR rays which reflect back to IR receiver and then IR Module generates an output or pulse which is detected by the Arduino.

Connection Diagram

Tachometer Circuit Diagram


First of all plug Female Header Pins to male Header Pin of LCD Display and Arduino.

Fixing Arduino LCD Display And Potentiometer On PCB

Now place every component on zero PCB, Like Arduino, LCD Display, Potentiometer.

Then solder all the components and complete the circuit According to Diagram.

Then fix IR proximity sensor on PCB and connect it to the circuit as we completed before with the help of jumper wire.

Fixing Battery On Tachometer PCB

And the last step of assembly is to fix the 9v battery. You can also use the switch with it


Assembling part has been done, So It’s the time of programming.

Connecting Tachometer To PC

Now connect Arduino nano to pc using USB cable.

Then open arduino ide and select tools then click on port and select arduino nano.

Now again click on tools then click on Port and select latest port, In my case it is Com7.

Now copy the below-written code and paste in Arduino ide.

Arduino Code

LiquidCrystal lcd(12,11,6,5,4,3);
float value=0;
float rev=0;
int rpm;
int oldtime=0;
int time;
int sec;

void isr() //interrupt service routine

void setup()
lcd.begin(16,2);                //initialize LCD
attachInterrupt(0,isr,RISING);  //attaching the interrupt

void loop()
detachInterrupt(0);           //detaches the interrupt
time=millis()-oldtime;        //finds the time 
rpm=(rev/time)*60000;         //calculates rpm
oldtime=millis();             //saves the current time
lcd.print("  RPM  COUNTER  ");
lcd.print(     rpm);
lcd.print(" RPM");
lcd.print(" ");
lcd.print(   sec);


Now Click On Upload Button To Upload The Code.

After Successful Upload Disconnect Arduino From Pc.


Now connect the battery to the circuit and your Tachometer is ready to use

To use this Arduino based digital tachometer cover your motor with black tape and do not cover a small part for reflection.

Now, you can see when Tx LED emitting IR ray on black tape so Red LED is not glowing.

Now Tachometer Is Ready To use

It will also show you RPS. Now you can use it to check RPM of any Motor or Rotating Device.

If You Have Any Question Please Ask In Comment Section.

15 thoughts on “Making Arduino based tachometer | Best school project”

  1. I was suggested this web site by my cousin. I am not sure whether this
    post is written by him as no one else know such detailed about
    my problem. You’re incredible! Thanks!

  2. I have assembled the circuit. It works, but the readings are erratic. The readings don’t seem to be correct. Kindly clarify. Thank you.

  3. This is a useful article. I certainly can enrich my knowledge, by reading this.
    Your idea is really outstanding. Thank’s toshare withe us such a significant
    King regards,
    Harrell Henneberg

  4. Pingback: Google
  5. Pingback: My Homepage
  6. I’m not sure why but this weblog is loading incredibly slow for me.
    Is anyone else having this issue or is it a issue on my end?
    I’ll check back later and see if the problem still exists.

Leave a Reply

Your email address will not be published. Required fields are marked *