Go to Post But please take into account that each year, the GDC has to come up with a rule book that will spend the next three months being picked apart by 40,000 of the brightest, most creative minds on the planet. I think they do an outstanding job of it. - dtengineering [more]
Home
Go Back   Chief Delphi > Technical > Electrical
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 29-12-2004, 11:20
gnormhurst's Avatar
gnormhurst gnormhurst is offline
Norm Hurst
AKA: gnorm
#0381 (The Tornadoes)
Team Role: Programmer
 
Join Date: Jan 2004
Location: Trenton, NJ
Posts: 138
gnormhurst will become famous soon enoughgnormhurst will become famous soon enough
External Lens for optical mouse

I've seen various suggestions on the web to use an optical mouse as a position sensor. What a great idea: it's non-contact, so it won't wear out from use. And it's pretty accurate(?). And it uses a serial (but synchronous) interface that outputs delta x and y values as 7 or 8 bit values.

And they're relatively cheap.

One big problem is that optical mice are not designed for the speeds at which FIRST robots move. They work by correlating subsequent snapshots from a very low-res imager (18x18). If the mouse moves so fast that two snapshots are of completely different (non-overlapping) areas, then correlation won't work.

Yesterday I did an experiment with my computer's opitcal mouse. I took an old 35mm camera lens and held the mouse behind it so that the lens focused an image on the bottom of the mouse. It was tricky to find the right spot, but when I did, I could point it at a lamp across the room and, as I tilted and panned the lens, the mouse cursor moved very nicely, just like using a mouse pad. Except that the effective mouse position was moving feet, not inches! I had optically reduced the sensitivity of the mouse.

This is very intriguing. One obvious application would be to aim it down at the carpet and track x/y robot motion. Perhaps it could even be used aimed horizontally (at the stands or whatever, focused at infinity?) to measure yaw.

Potential snags: mice work well when there is some "acceleration" or other non-linearity applied. If this is applied by the driver after the mouse sends linear delta x/y values, then no problem. But if this happens inside the mouse, it could be a problem. I think some mice are different than others; I think some can be configured over their bidirectional serial line.

Another snag is that PS/2 mice use a synchronous interface, not async like standard "serial" ports. I've heard that the TTL port on the PIC can be used for sync operation, but who knows how??

Here's the claim that the PIC TTL port can support sync interface:
http://www.chiefdelphi.com/forums/sh...29&postcount=6

Comments?
__________________
Trenton Tornadoes 381
2004 Philadelphia Regional Winners
2006 Xerox Creativity Award
---
My corner of the USPTO.
My favorite error message from gcc: main is usually a function
My favorite error message from Windows: There is not enough disk space available to delete this file.
  #2   Spotlight this post!  
Unread 29-12-2004, 11:32
Aignam's Avatar
Aignam Aignam is offline
This Space For Sale
AKA: Anthony Mangia
#1257 (Parallel Universe)
Team Role: Scout
 
Join Date: Oct 2002
Rookie Year: 2003
Location: North Brunswick, New Jersey
Posts: 877
Aignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant futureAignam has a brilliant future
Send a message via AIM to Aignam Send a message via Yahoo to Aignam
Re: External Lens for optical mouse

I have no idea if this is useful or relevant, but Laser Technology is beginning to dominate over Optical Mice.
__________________
Some Thoughts to Ponder
How does a sign turn into a lady friend? Don't optional stop signs ruin the purpose? What are pneumatics? Am I really banned from 229 for life? Can walls get bigger?

Aignam. Pronounced A-Num. Mangia backwards.

NJFIRST.org | Best Thread. Ever.

AIM: Aignam | ICQ: 265237569 | E-mail: AnthonyMangia@aol.com | HTTP: www.aignam.com
  #3   Spotlight this post!  
Unread 30-12-2004, 21:18
m&mengineering m&mengineering is offline
Mentor
AKA: Marv Kraska
#0440 (Ford First)
Team Role: Engineer
 
Join Date: Sep 2004
Rookie Year: 2000
Location: Team Ford FIRST(Dearborn, MI)
Posts: 2
m&mengineering is an unknown quantity at this point
Re: External Lens for optical mouse

Quote:
Originally Posted by gnormhurst
I've seen various suggestions on the web to use an optical mouse as a position sensor. What a great idea: it's non-contact, so it won't wear out from use. And it's pretty accurate(?). And it uses a serial (but synchronous) interface that outputs delta x and y values as 7 or 8 bit values.

And they're relatively cheap.

One big problem is that optical mice are not designed for the speeds at which FIRST robots move. They work by correlating subsequent snapshots from a very low-res imager (18x18). If the mouse moves so fast that two snapshots are of completely different (non-overlapping) areas, then correlation won't work.

Yesterday I did an experiment with my computer's opitcal mouse. I took an old 35mm camera lens and held the mouse behind it so that the lens focused an image on the bottom of the mouse. It was tricky to find the right spot, but when I did, I could point it at a lamp across the room and, as I tilted and panned the lens, the mouse cursor moved very nicely, just like using a mouse pad. Except that the effective mouse position was moving feet, not inches! I had optically reduced the sensitivity of the mouse.

This is very intriguing. One obvious application would be to aim it down at the carpet and track x/y robot motion. Perhaps it could even be used aimed horizontally (at the stands or whatever, focused at infinity?) to measure yaw.

Potential snags: mice work well when there is some "acceleration" or other non-linearity applied. If this is applied by the driver after the mouse sends linear delta x/y values, then no problem. But if this happens inside the mouse, it could be a problem. I think some mice are different than others; I think some can be configured over their bidirectional serial line.

Another snag is that PS/2 mice use a synchronous interface, not async like standard "serial" ports. I've heard that the TTL port on the PIC can be used for sync operation, but who knows how??

Here's the claim that the PIC TTL port can support sync interface:
http://www.chiefdelphi.com/forums/sh...29&postcount=6

Comments?
That's exactly why our teams have been looking into this technology for the past 2 years. Great minds do indeed think alike! :-)

Maximum speed of the correlator is about 14 inches per second, if memory serves. Now if that were feet per second, we could just drag the mouse behind the robot to get x-y info.

Very interesting light experiment. We always tried to lens both the light and imager, never tried just pointing it at a lamp. Didn't have much success with our tests - the image on the correlator must have to be pretty bright for it to work.

Note the mouse could be used as a linear (or 2-d) position feedback sensor.

The PS2 mouse protocol specifies commands to reduce effective resolution, and disable acceleration (scale) functions. Every mouse is different, but some basic commands must be the same for compatibility reasons.

Well, the TTL serial port can do sync serial, but the mouse protocol is more of a master/slave protocol, so our teams found it necessary to use another PIC processor to handle the communcations. See the attached image with a stand-alone board that accumulates and displays the mouse counts on a LCD display. I can post more info if there is some interest in developing the mouse as a robot sensor.
Attached Thumbnails
Click image for larger version

Name:	mousedecode (6).jpg
Views:	183
Size:	63.3 KB
ID:	2714  
__________________
m&mEngineering

Last edited by m&mengineering : 30-12-2004 at 21:31. Reason: forgot to add attachment
  #4   Spotlight this post!  
Unread 30-12-2004, 22:20
gnormhurst's Avatar
gnormhurst gnormhurst is offline
Norm Hurst
AKA: gnorm
#0381 (The Tornadoes)
Team Role: Programmer
 
Join Date: Jan 2004
Location: Trenton, NJ
Posts: 138
gnormhurst will become famous soon enoughgnormhurst will become famous soon enough
Re: External Lens for optical mouse

Quote:
Originally Posted by m&mengineering
That's exactly why our teams have been looking into this technology for the past 2 years. Great minds do indeed think alike! :-)
Apparently there are more great minds. Check out this thread, which was recently started as a place for people to share ideas on the subject:

http://www.chiefdelphi.com/forums/sh...ad.php?t=31999
__________________
Trenton Tornadoes 381
2004 Philadelphia Regional Winners
2006 Xerox Creativity Award
---
My corner of the USPTO.
My favorite error message from gcc: main is usually a function
My favorite error message from Windows: There is not enough disk space available to delete this file.
  #5   Spotlight this post!  
Unread 07-01-2005, 19:07
bigqueue bigqueue is offline
Registered User
#0811 (A.R.C.)
 
Join Date: Dec 2001
Location: Nashua, NH
Posts: 231
bigqueue will become famous soon enough
Send a message via AIM to bigqueue Send a message via Yahoo to bigqueue
Re: External Lens for optical mouse

Quote:
Originally Posted by gnormhurst
Apparently there are more great minds. Check out this thread, which was recently started as a place for people to share ideas on the subject:

http://www.chiefdelphi.com/forums/sh...ad.php?t=31999

Hmmm....what a great idea. What a great "re-use" of existing proven technology. This is a great example of how good engineering is done. (generally, always on the backs of people who came before them....not always "reinventing the wheel")




__________________
Live free or die....
Closed Thread


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Looking for Mouse part Mr. Lim Electrical 3 27-12-2004 19:56
Optical Mouse / Ball Mouse Clark Gilbert Chit-Chat 26 22-07-2004 13:17
IS THIS RIGHT?!?!? RebAl General Forum 22 31-03-2002 00:07
All these mouse bots gives me an evil idea- CAT BOTS! Patrick Wang General Forum 2 09-03-2002 22:43


All times are GMT -5. The time now is 18:16.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi