Blog Home

Measure RPM with an IR sensor and Arduino

Arduino TeamFebruary 27th, 2018

When dealing with robotics and other electronics projects, it can be important to know how many revolutions a motor is making. From here, you can infer the distance that your device has traveled, or any number of other important variables.

If you’d like to get started with this type of sensing, this electronoobs tutorial will show you how to get things hooked up using an Arduino and a computer, along with an oscilloscope to verify measurements up to 10,000 RPM.

In his setup, an IR emitter/receiver bounces light off a spinning object. When light reflects back, it opens the circuit, causing the output to be grounded via a pulldown resistor, telling you that a revolution has been made. The 3D-printed device also features an OLED screen.

To emit infrared light we need a IR LED and to detect it a IR sensible transistor. Usually you could find those as a one unique module. To amplify the signal I’ve used the LM324 amplifier. You will also need a 100 ohm resistor and a 4.7k ohm one. To supply the system we will need a basic 9V battery and connector, an Arduino Nano, and an OLED screen. The case is 3D printed…

You can find more details on the build process here, as well as a demo of the tachometer below!