Arduino-Based Optical Tachometer

Over ten years ago, I put up a web page with detailed instructions on building a simple electric motor based on one from the Beakman’s World TV show. I called it the “Beakman’s Electric Motor” page and over the years it has had hundreds of thousands, if not millions, of hits. Realizing that just building a motor, no matter how cool, wasn’t a good science fair project, I added suggestions for using the motor as a science fair project, such as experimenting with different magnets, batteries, and coil constructions and seeing how they affect performance. In order to do this, the speed of the motor should be measured, but I left that as an open-ended question.
Arduino-Based Optical Tachometer
I’ve had dozens of e-mails over the years asking how to measure the speed and I’ve always suggested using a broken light beam and a counter, but I’ve never built one myself. I even suggested to one person that they use a slot-car lap counter since I’d seen on one sale at Toys ‘R Us for 99 cents and she said that it worked perfectly, but not everyone can find a good deal like that.

It just so happened that I got one of these “how do I measure the motor speed?” e-mails on the same day my new Arduino Diecimila microcontroller board arrived from the Make Store, so I thought that would make a great weekend project.

Here is the result, an optical tachometer for Beakman’s Electric Motor using an IR emitter/detector pair and a Arduino board. With a few modifications to the programming, you can use this tachometer for measuring other things such as fan or propeller speed. Notes are included on what to change for different applications.

How to have fun with Arduino is a good source of basics on how to setup and use the Arduino board.

Step 1: Materials Needed

Arduino Diecimila Board 
Available from the Make Store or from several other online resources. Note however that the techniques of this Instructable could be adapted for other microcontrollers and circuits.

Computer with Arduino software and USB cable

IR LED and IR phototransistor 
I used a Radio Shack #276-142, but that may be an old part number. Parts selection on this probably isn’t too critical.

Visible light LED
I used a high-brightness red one that I had around. Actual selection not too critical.

10K Ohm resistor

220 Ohm resistor

Breadboard (semi-optional), hookup wires, clips

Opaque tape, such as black electrical tape

Framework for holding LED and detector
Use your imagination, I used KNex pieces to build a frame.

Beakman’s Electric Motor (or something else to measure)
Original instructions for building the motor are here: Beakman’s Motor
Similar plans are available from other places, such as this Instructable:
Simple Electric Motor

Step 2: Building and Preparing the Motor (if necessary)

Follow the instructions to build the Beakman’s Electric motor. The motor should be mounted on a suitable base so that it can run freestanding a bit off the table. I used some Brio construction set pieces (I have a lot of toys laying around).

The most important thing to ensure reliable motor operation is to make sure the coil is balanced and the tails of the coil are very straight. I drew a diagram using my coil form and a ruler, then laid the completed coil on the paper to align the tails perpendicular to the coil and to make sure they were straight. I then used a drop of superglue where the tails were wrapped around the coil to make sure they couldn’t slide.

To enable the coil to break the light-beam, place a piece of opaque tape (I used black electrical tape) across the coil. This might slow it down a tiny bit, but if all of your coils have the same sized piece of tape in the same position, your results between coils should be relatively consistent.

Arduino-Based Optical Tachometer schemetic

There are three separate circuits to connect to the Arduino. You can refer to my schematic and notes sketch in the images and to the pictures of the breadboard to see how I hooked it all up. Of course, the critical things to note are the anode/cathode orientation of the LEDs and transistors and the connections to power and ground. The whole circuit is powered from the Arduino board and since the program will communicate with the PC, I’m using the USB connector for power.


For more detail: Arduino-Based Optical Tachometer

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:

Leave a Comment

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

Scroll to Top