Main Content

Working on a autonomous robot, I needed to be able to control simultaneously two DC motors moves.
I already designed a system in july 2016 that runs rather well but I needed to improve speed measurement precision.

To do so I restarted from scratch and it was a good opportunity to publish this instructable.

This system rely on:

some mechanical components
a simple electronic circuit
some Arduino software tools.
All that is detailed further in this instructable.

Working Principle

a wheel with some holes is set on the rotation axis
a LED provides an infrared light that goes thru holes each time LED is in front of a hole
an infrared receiver provides an electrical signal that depends on the received light
a microcontroler monitors the electical signal, counts the nomber of holes detected, compute the instantaneous speed and adjust the motor input voltage to fit with the expectations
This instructable demonstrates how to implement the system for only one motor.
Actually robots require more than one motor. That’s why I developed software that can deal with up to four motors simultaneously. And that’s also the reason I chose a microcontroler more powerfull than a UNO and I chose ATMega 2560”

Link to article