Slashdot Mirror


Optical Mouse Used As Cheap Motion Sensor

drphil writes " Dr. Tuck Wah Ng, a member of the Faculty of Engineering at the National University of Singapore uses an optical mouse as a cheap non-contact motion sensor in his research. If a resolution of a little less than 60 microns is sufficient, you really can't beat the price. Dr. Ng has studied the viscoelastic deformation of plastics using a hacked optical mouse - published in J. Chem. Ed. vol 81, p 1628, 2004. You'd need to be a subscriber of the journal to see anything but the abstract, but any university science/chemistry library would have a copy of this issue of the Journal of Chemical Education. (Viscoelastic deformation, in plain English, is the degree to which a plastic stretches when you pull on it)"

5 of 131 comments (clear)

  1. It's been done before in a much cooler application by TurkishGeek · · Score: 4, Interesting

    Not really new-I'm sure many Slashdotters who are IEEE members enjoyed the September 2004 issue of IEEE Computer magazine which covered the theme of biologically inspired robotics. There is a paper in that issue by S. Thakoor et al. which uses an optical mouse chip for terrain feature tracking for a flying aerial robot. You can't read the paper if you don't have IEEE digital library access, but here is the link:

    http://csdl.computer.org/comp/mags/co/2004/09/r903 8abs.htm

    --
    Zigbee Central: A Zigbee weblog
  2. Fun experiment by TrentL · · Score: 4, Interesting

    If a resolution of a little less than 60 microns is sufficient, you really can't beat the price

    Hmmm. This inspired me to try to see if I could move my optical mouse without moving the cursor. It's possible, but very difficult. It obviously depends on the sensitivity setting.

    1. Re:Fun experiment by Spy+Hunter · · Score: 4, Interesting

      In Robotics class some classmates and I made a robot that used an optical mouse to sense how far it had driven across the floor. We found that the accuracy of our optical mouse left a lot to be desired. The actual distance sensed by the mouse changed depending on the speed it moved across a surface (and didn't seem very accurate even after taking this into account). For normal use this doesn't matter a bit, because you get feedback from the movement of the mouse pointer on the screen, not from the absolute position of your hand on the mouse pad. However, for our robot, this meant that it quickly went off track. It couldn't even drive in a reasonable square on the floor. So it's fine to use optical mice to measure the presence of and probably also the direction of small-scale motion, but using them to measure absolute speed or distance on medium to large scales is not adviasble.

      --
      main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
  3. WebCams by squoozer · · Score: 4, Interesting

    I've seen quite a few papers recently that talk about using multiple cheap (<£30) webcams to do gesture recognition. Ok the images aren't great but the improvements you get from using £1000+ video set-ups with fancy lenses etc aren't that great.

    --
    I used to have a better sig but it broke.
  4. How about using mouse for accelerometer? by Goldenhawk · · Score: 4, Interesting

    This got me thinking... me and my geek engineer brain...

    Seems to me by mounting a small mass between springs right above the sensor, you could probably measure acceleration fairly accurately. The spring deflection would be precisely related to the acceleration, the mass, and the spring constant, two of which are known (or can be measured independently) and are fixed values.

    F=ma, where force = mass times acceleration
    F=kx, where force = spring constant times displacement
    so
    a = kx/m
    (Figuring out the units is left as an exercise for the reader.)

    So as the combined mouse/spring/mass assembly was accelerated, the cursor would deflect accordingly. Calibration would be straightforward: since k is fairly linear for most springs (within small ranges), and m is fixed, simply turning the sensor on its side (e.g., subjecting it to exactly 1.0g) gives a very nice data point.

    Might be a cheap and fun way to build a sensor, say for measuring cornering force on your car, etc. Also might be a neat high school physics class experiment.

    That is, unless Microsoft already patented that use... *grin*

    --
    --Brandon / Split Infinity Music