DIY Tachometer (RPM Meter)

Introduction: DIY Tachometer (RPM Meter)

About: Awesome Electronics Tutorials, Projects and How To´s

In this project I will show you how a 3€ IR distance sensor works and how we can use it to build a proper DIY tachometer that functions properly. Let's get started!

Step 1: Watch the Video!

Make sure to watch the video. It gives you all the information you need to create your own DIY tachometer. But during the next steps I will present you some additional information.

Step 2: Order the Components!

Here you can find a parts list with example seller (affiliate links):

1x Arduino Pro Mini: https://s.click.aliexpress.com/e/_dTWuuYz

1x IR Distance Sensor: https://s.click.aliexpress.com/e/_dXlui7F

1x 128x64 OLED: https://s.click.aliexpress.com/e/_dXOYM8H

1x TP4056 Charge Protect Board: https://s.click.aliexpress.com/e/_d697XPJ

1x LiPo Battery: https://s.click.aliexpress.com/e/_dUE2A0V

1x Toggle Switch: https://s.click.aliexpress.com/e/_dZ19w21

Step 3: Create the Circuit!

Here you can find the schematic with reference pictures of my finished board design. Use them to create your own!

Step 4: Upload the Code!

Here you can find the code for the project. Upload it through an FTDI breakout board. Also make sure to include this library:

https://github.com/olikraus/u8g2

Also make sure that you use the following board settings: Arduino Pro Mini 3.3V 8MHz

Step 5: Success!

You did it! You just created a your own DIY Tachometer!

Feel free to check out my YouTube channel for more awesome projects: http://www.youtube.com/user/greatscottlab

You can also follow me on Facebook and Twitter for news about upcoming projects and behind the scenes information:

https://twitter.com/GreatScottLab

https://www.facebook.com/greatscottlab

5 People Made This Project!

Recommendations

  • Eggs Challenge

    Eggs Challenge
  • Build a Tool Contest

    Build a Tool Contest
  • Remote Control Contest

    Remote Control Contest

20 Comments

0
ebweiss
ebweiss

Question 1 year ago on Step 1

Would it be possible for you to upload a sketch using the Arduino code so us non-experts can understand it and perhaps make modifications?

0
thozader
thozader

Answer 26 days ago

Hi. If I understood, see Step 4. I'm also a non expert.
Before upload the code, make sure to add library "U8g2-2.32.15.zip" previously downloaded and installed so add it to the code and uplaod to your board.

0
jendam99
jendam99

6 months ago

For everyone having the problem with the value 14448, random values and similar. After some debuging I found out, that the problem is caused by false trigering the interrupt and can be solved with good power supply rail filtering and RF decoupling. Use at least 100uF/16V electrolytic cap across the 5 V rail together with 10nF ceramic cap for filtering the power line. Then also add a 10nF cap from the signal line of the IR sensor to ground (place it as close to the arduino as possible). This solved my problem immediately.

0
ShaunH53
ShaunH53

Question 1 year ago on Step 4

Is there a code modification for use of the 5v 16mhz version of the pro-mini please. I too am getting either slow or 14448. Same as Sonora.industries.

0
SantiNavarro
SantiNavarro

Answer 6 months ago

Yo también lo he hecho. También tuve ese problema de 14448, en mi caso al poner la punta del osciloscopio para ver la señal, se ponía a funcionar bien.
La solucion fue cambiar el sensor por otro igual, con ese si funciono.

0
Vaiz Aragorn
Vaiz Aragorn

Answer 1 year ago

Hey! Have you figured out anyway to work it with 5v 16mhz pro mini? I'm trying to mess with timer settings but i couldn't figure out a way to fix it.

0
ShaunH53
ShaunH53

Reply 1 year ago

I found another instructable Infrared Tachometer Using Arduino
With code that worked.
0
arnablue
arnablue

Reply 11 months ago

Here is some weird thing I noticed... I'm using 5V 16Mhz pro mini...

At first I was using my "DIY" IR Distance Sensor made with LM358 IC... Worked Perfect...
Then I ordered two new IR Distance Sensor made with LM393... Both are giving very bad result...!!! (Trimpot, covering LED doesn't help)
Please check if this problem of yours also with the "LM393 Module"...

Now the problem is, for make it compact, I ordered these same board as "Scott" (I assume)... But the actual module is not working, but my home made sensor working...

I think in this project, again DIY wins...!!!! (-_-)'

WhatsApp Image 2021-09-09 at 11.27.00 PM.jpeg
0
Vaiz Aragorn
Vaiz Aragorn

Reply 1 year ago

weird thing is, i'm using 3.3v 8mhz pro mini but i'm still getting the same thing.

0
bdcatme
bdcatme

Answer 1 year ago

I had the same problems, until I adjusted the potiometer on the IR sensor.

0
ShreyasD11
ShreyasD11

1 year ago

Hello Scott,
It's nice project. I have tried it using Arduino Uno (Atmeg 328,16MHz). the tachometer gives me random readings some times they are zero some times they are stable to some value.. may be that's correct RPM but most of the time values gets changes . Can you help me reagarding the same issue?
0
sonuora.industries001
sonuora.industries001

Question 1 year ago

I created the project using you code but I made some changes(I use LCD instead of LED display). I modified the code for using the LCD display. When I later tried to measure the RPM of my drilling machine it didn't work very well, The display either show "Slow" or 14448 value and continuously changes value even the speed was constant. Can you tell me what kind of problem I am dealing with. If you reply I will show you the code that I have uploaded on the Arduino.

And I am huge fan of your projects please reply soon.
here's my email "sonuora.industries001@gmail.com". I will wait for the reply.
Thankyou
#GREATSCOTTLAB

0
Bilal20
Bilal20

1 year ago

I tried making it, but mine keeps showing “slow” even thought the motor is rotating at high speed, I think it’s the code. Please someone should help

0
CrazyGuyN2O
CrazyGuyN2O

Reply 1 year ago

I watched the video about this, and the person (presumably Scott) had a small strip of white tape to reflect the IR beam and the rest of the motor shaft covered in black tape. Maybe that would help.

0
bhedderich
bhedderich

1 year ago

I'm Confused it seems your lipo already has a BMS and the TP4056 also has a battery charging module why use 2?

0
wilbertyuen
wilbertyuen

Reply 1 year ago

Would it be related to the power requirement of the display and sensor? (5v?)
Also I think the BMS only protects the battery from overcharges?

0
wilbertyuen
wilbertyuen

1 year ago

A few question,
1. Is there a specific reason why only user 3V 8MHz pro mini? Will it work with 5V 16MHz version?
2. I tried a lot of push button similar to yours (with 6 connectors) but I have no luck powering on my setup, is there a specific types of button I need to use and where do you get them?
3. Let say if I want to have the Average RPM stays on the display instead of letting the system goes back to "SLOW" what should be the point of determination?

0
NirL
NirL

Question 1 year ago

Can you explain some of the working principles? Sometimes those are more useful than the end result, since many people are looking for ideas and not just products :) for me, that's why I look at instructables at all

0
GreatScottLab
GreatScottLab

Answer 1 year ago

I talked about how the sensor and code works in the video.