September 13, 2015


Our homemade RPM sensor.

As part of the axial-flux alternator project, we wanted to determine the rotation speed of the steam engine that drives the alternator. To do so I worked with Windward member Ruben to build a sensor that can detect the rotation speed.

Ruben built a circuit around an infrared LED and phototransistor that are separated by an opaque wall. When the infrared light reflects back to the phototransistor, it creates a voltage drop in the circuit, which is detected by a multimeter.

Circuit diagram of our RPM sensor

The LED and phototransistor pair were placed under the steam engine's flywheel, and reflective tape was placed along alternating quarters of the flywheel. As the steam engine operates, the alternating quarters of reflective tape pass over the LED/phototransistor pair, the voltage in the circuit fluctuates.

Since any environment contains some infrared light, the precise voltages will vary with the local conditions. But as long as there is a rise and fall of the voltage during each turn of the flywheel, the precise numbers aren't important.

When we tested it, we got a shift from ~1 Volt for the sections without reflective tape, to ~0.2 volts for the sections with the tape. In one rotation of the flywheel, the voltage falls and rises twice, so the frequency setting on the multimeter gives us a value that should be twice the frequency of rotation.

To know if the sensor we built is accurate, we need to test it against a measuring device that we know gives us sufficiently accurate readings. But if we already had a device that could measure the rotational speed of the steam engine, we wouldn't need to be building this one.

The RPM sensor clamped in place, with the LED/phototransitor pair beneath the flywheel, which has reflective tape covering its alternating quarters.

What we do have is our fingers and a stopwatch. By placing a finger near the steam engine's piston we can can count the impacts (which occur once per revolution). Dividing the counted impacts by the time measured on the stopwatch, we get the frequency of rotation.

Obviously at high speeds it is neither safe to put your finger near the piston, nor feasible to count the impacts even if you were foolish enough to do so. I've found this method to work well for speeds under 6 Hertz.

This method has its own errors, but I think it is accurate enough to serve as a test for the multimeter reading. At speeds up to 6 Hertz, on average both readings agreed to within 0.25 Hertz. Since we plan to run the alternator at around 500 RPM (8.33 Hertz), it seems safe to extrapolate that if our sensor worked at speeds up to 6 Hertz, it will also work at those slightly higher speeds.

Since we'll want to use the multimeter for other things, the next step is to build and program a microcontroller and display to replace the multimeter. Building this more complicated sensor will be the subject of the next part of this article.