Using an optical mouse for robotic position sensing

Technology

mousemod_20071215.jpg

The standard optical mouse contains all of the hardware necessary for tracking X/Y movement on a flat surface. With a bit of modification, you can tweak the illumination and focal length of the device to create a compact motion tracking module for your robotics projects.

Mac A. Cody has done a really nice job of documenting a couple different configurations using the common Agilent/Avago ADNS-2610 Optical Mouse Sensor that powers a lot of cheap optical mice. The motion sensor pictured above has been hacked to sit further above the surface than a stock mouse, and he’s included some fairly simple example code for reading the X/Y movements from the sensor.

The cool thing about using something like this, aside from the cheap cost, is that the motion detected by this system isn’t dependent on your gearing, traction, or relative speed between wheels or tracks. If you are moving, the camera detects it. If you aren’t, it can tell that as well. This is pretty difficult with standard wheel encoders, where you can tell that a wheel is spinning, but not that the robot is moving.

References:
Cody’s Robot Optical Motion Sensor #1 – Link
BTC Optical Mouse Hack – Link
Interface to Optical Mouse Sensor (PDF) – Link

What will the next generation of Make: look like? We’re inviting you to shape the future by investing in Make:. By becoming an investor, you help decide what’s next. The future of Make: is in your hands. Learn More.

Tagged
Discuss this article with the rest of the community on our Discord server!

ADVERTISEMENT

Escape to an island of imagination + innovation as Maker Faire Bay Area returns for its 16th iteration!

Prices Increase in....

Days
Hours
Minutes
Seconds
FEEDBACK