2D Position Tracking - optical mouse sensor?

Hello,

I’m in need of a means to track the position of my arduino. It’s attached to a piece of plastic and I was wondering if I could get an optical sensor (similar to what’s in a mouse) to measure the translation in X and Y. Is there something like this that I could purchase?

From my research, measuring position is difficult enough in 2D let alone 3D (since accelerometer + gyroscope isn’t viable). An alternative I suppose would be to build a translation table but this will be expensive and I think a mouse already does what I want.

Does anyone have any recommendations?

Thank you

The mouse sensor depends on feedback. If you hold the mouse a little bit off perfectly square and moving it right makes it go up a little then the person looking at the screen will adjust down without realizing that they've done it.

If you can hold your Arduino in a perfectly-aligned jig, then the sensor will work for you.

I can't remember the name of it but there's an electronic pen that works with special paper. The paper has a 2D barcode encoded on it so the pen always knows where it is on the page, by looking at the barcode. I think the ink reflects IR better than visible light, so it's barely visible to the user.

Very old optical mice used a special pad that had IR lines horizontal and UV lines vertical.

A "digitizer" tablet has wires embedded in it and uses magnetic induction to find the absolute position of the pen or puck.

An arm with a rotary encoder at the "shoulder" and "elbow" joints is usually the best way to find position, if you're constrained to tabletop size.

If there's nothing else on the table, then a big touchscreen can be built relatively cheaply from plastics, using the resistive principle.

MorganS:
The mouse sensor depends on feedback. If you hold the mouse a little bit off perfectly square and moving it right makes it go up a little then the person looking at the screen will adjust down without realizing that they've done it.

If you can hold your Arduino in a perfectly-aligned jig, then the sensor will work for you.

I can't remember the name of it but there's an electronic pen that works with special paper. The paper has a 2D barcode encoded on it so the pen always knows where it is on the page, by looking at the barcode. I think the ink reflects IR better than visible light, so it's barely visible to the user.

Very old optical mice used a special pad that had IR lines horizontal and UV lines vertical.

A "digitizer" tablet has wires embedded in it and uses magnetic induction to find the absolute position of the pen or puck.

An arm with a rotary encoder at the "shoulder" and "elbow" joints is usually the best way to find position, if you're constrained to tabletop size.

If there's nothing else on the table, then a big touchscreen can be built relatively cheaply from plastics, using the resistive principle.

Thank you for your response. Actually one thing I've been trying to get my head around with regards to a mouse optical sensor is what happens when the sensor is rotated a bit. I've been trying to workout if having two sensors would mean it's possible to determine this rotation.

I get the impression the people who wrote this paper:

May have done such a thing.

If you can be sure that both sensors are clamped to the surface then that will probably work. But if it's possible to lift one corner of your device and un-reference one of the "mouse" sensors, then it will fail.

We still need more details on what this thing is. What are the other constraints on the system? Is there a "home" position on the table that can be painted a different color for a third optical sensor to see?

I don't think an optical mouse sensor would be good for position sensing. LinusTechTips on Youtube has a video where Logitech showed off how they tested their new wireless gaming mouse. They tested how well the tracking worked by having the mouse trace a circle on the pad, and recorded the signals back from the mouse. The top-of-the-line gaming mice shown off in the video all had noticeable amounts of drift when the movements picked up by the sensor is integrated (mathematically speaking) into the cursor position. Since the drift was constant you could reduce it with calibration and probably get quite good short term position tracking, but for longer term use you would need a way to either eliminate the drift or be able to "reset" the position to a known state periodically.