Optical mouse odometry

145 views
Skip to first unread message

Dave Curtis

unread,
Dec 22, 2009, 1:59:28 PM12/22/09
to hbrob...@googlegroups.com
The idea of doing odometry with a hacked optical mouse has intrigued me for a long time. Of course, it would require that the robot be restricted to relatively smooth surfaces so that the odometry "shoe" could slide along the surface. The thing that has always held me back is that optical mouse parts usually are hard to buy unless you get huge quantities. But I noticed that Mouser has both a sensor and a matching lens from Avago avilable onsies:

http://mouser.com/ProductDetail/Avago-Technologies/ADNS-2610/?qs=sGAEpiMZZMsx4%2fFVpd5sGRJFTXXjj3EB
http://mouser.com/ProductDetail/Avago-Technologies/HDNS-2100001/?qs=sGAEpiMZZMsx4%2fFVpd5sGQ73rSZEX6RS

Anybody have comments on this idea?

-dave

George Campbell

unread,
Dec 22, 2009, 2:11:59 PM12/22/09
to hbrob...@googlegroups.com
I've got as far as purchasing the dev kit which comes with 5 of each
of those parts. I've got some of the PCB layout done but I haven't
purchased all of the resisters, caps and resonators. I'm waiting to
know what size all of parts are first before I make the first run of
boards.

> --
>
> You received this message because you are subscribed to the Google Groups "HomeBrew Robotics Club" group.
> To post to this group, send email to hbrob...@googlegroups.com.
> To unsubscribe from this group, send email to hbrobotics+...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/hbrobotics?hl=en.
>
>
>

David Wyland

unread,
Dec 22, 2009, 2:21:48 PM12/22/09
to hbrob...@googlegroups.com
I know what you mean. I had the same hope. I talked to Avago, and got
some interesting information back. The optical mouse part works, but it
is not "accurate". If you move it forward and then backward, the counts
will probably NOT be the same, according to the engineer at Avago. I
quickly got the idea that I was not the first to ask the question. by far.

This makes an obtuse amount of sense. Mice are used for general motion
indication, direction and amount moved. The human is in the loop, so the
human compensates for any errors as part of moving the mouse pointer
around on the screen. Laser optical mice look at movement of the laser
speckles, I think. These are probably not all that stable, but can give
an OK indication of direction and movement.

OTOH, an old-fashioned, mechanical mouse does not have these same
problems. You have a mouse ball and a pair of encoders. I suspect that
they will give a pretty accurate, repeatable indication of motion.

Too bad, though. A cheap, non-contact motion detector would be nice.

Dave Wyland

Dave Curtis

unread,
Dec 22, 2009, 5:13:27 PM12/22/09
to hbrob...@googlegroups.com

On Dec 22, 2009, at 11:21 AM, David Wyland wrote:

> I know what you mean. I had the same hope. I talked to Avago, and got
> some interesting information back. The optical mouse part works, but it
> is not "accurate". If you move it forward and then backward, the counts
> will probably NOT be the same, according to the engineer at Avago. I
> quickly got the idea that I was not the first to ask the question. by far.

Yes, that's interesting. They work by having a small grayscale image (18x18 pixels, 6 bits gray level in the case of the part below) and simply do motion estimation between images. I guess the accuracy question is how much noise there is in the data. Do your wheels slip more than the error in the mouse anyway?

I've also thought it would be an interesting way to make a wheel encoder, even though you are throwing away have the data you get back. Another thought is to grab a bag of surplus lenses and see if it could be used at other distance for coarse imaging, for instance line following. The Avago part has a test mode where you can get the entire image back, not just the X/Y counts.

-dave

Nathaniel Lewis

unread,
Dec 23, 2009, 10:57:35 AM12/23/09
to hbrob...@googlegroups.com
But in computer mice, they don't care about extreme accuracy do they? I
certain that most people move the mouse until the cursor is where they want,
so there counts just have to have some accuracy and be directionally
accurate. I did not think the they were good for localization requiring
most and returning to the same spot.
Nathaniel

Dave Curtis

unread,
Dec 23, 2009, 11:26:48 AM12/23/09
to hbrob...@googlegroups.com
But I have seen references to people using hacked mice for odometry. And even odometry based on highly accurate motor encoders will accumulate location error pretty quickly. The real test is comparing the two forms of odometry over a real course.

-dave

Nathaniel Lewis

unread,
Dec 23, 2009, 2:24:53 PM12/23/09
to hbrob...@googlegroups.com
I know there is error always, but the ball mice seem like they would be
more accurate for odometry. My Stinger robot has issues where the drive
base changes because the wheels slip sometimes. They are 1.7 inch long
foam tires and I can't predict the drive base exactly to do exact turns.
I got close, but over time, as you said, the error accumulates.
Nathaniel
Reply all
Reply to author
Forward
0 new messages