maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Nokia N900 (https://talk.maemo.org/forumdisplay.php?f=44)
-   -   Accelerometer Control method games.. web browsing etc. (https://talk.maemo.org/showthread.php?t=33140)

Master of Gizmo 2009-10-21 09:01

Re: Accelerometer Control method games.. web browsing etc.
 
Quote:

Originally Posted by kwotski (Post 352939)
I do wonder though, whether the accelerometer can give you enough information to distinguish between an acceleration or movement and a change in orientation?


It can't. For full position tracking you need to be able to detect acceleration in all six degrees of freedom (translation in x/y/z and rotation in x/y/z). Our n900 can only detect translation in all three axes. Some rotation sensors (or gyroskopes) are built of liear accelerometers. In this case you need two linear accelerometers for each direction. If the two being responsible for one axis return the same values the device is experiencing linear acceleration in this axis (since both sensors are moved exactly in the same way). If they return different values then there's some rotation going on since both sensor do different movements. E.g. rotating the device may mean that one corner of the device stays in place and other corner moves in a circle around the first corner. Accelerometers mounted in both corners would return different values and from the difference you'd be able to reconstruct the rotation.

To make a long story short: A three axis accelerometer like the one in the n900 is not sufficient to measure arbitrary movement.

kwotski 2009-10-21 10:27

Re: Accelerometer Control method games.. web browsing etc.
 
Quote:

Originally Posted by Master of Gizmo (Post 353643)
It can't.

(details snipped)

To make a long store short: A three axis accelerometer like the one in the n900 is not sufficient to measure arbitrary movement.

That makes sense, thanks for the clarification.

I guess if the user guaranteed to only move the device within a plane, you would be fine for detecting movement quite accurately then, but where rotation is combined with movement or the movement is not constrained to be within a plane, as in the head-mounted option, this couldn't be accurate?

Master of Gizmo 2009-10-21 10:58

Re: Accelerometer Control method games.. web browsing etc.
 
Quote:

Originally Posted by kwotski (Post 353689)
you would be fine for detecting movement quite accurately then,

Even that won't work since accuracy is the second problem with these sensors.

Remember: They detect acceleration, but you want a position. In order to convert an acceleration into a position you need to integrate over time ... twice: Summing up acceleration values will give you speed values. Summing up speed values will give you positional values. The problem is: You'll also sum up errors given by the (VERY) limited accuracy of the accelerometers. And you'd even sum up these errors twice resulting in a huge error in the resulting position even if the initial error in the acceleration measurement was low. What you'll see in the end is a drifting value meaning that the device will basically always think it's moving even if it sits flat on the table.

That's why i am really _REALLY_ impressed by this new Wiimote Motion-Plus add-on. This looks so trivial, but the reliability of the positional information derived from this means that they are really working with incredibly precise acceleration values. And this is the reason why they need this add-on in the first place. The original Wiimote has pretty much the same sensors, they just weren't precise enough for the type of games that is possible with the new Motion-Plus add-on.

baksiidaa 2009-10-21 17:29

Re: Accelerometer Control method games.. web browsing etc.
 
Master pointed out the big problem I was going to bring up--drift. I did come up with an alternate control method, though. Instead of turning your head left or right, you could tip it to the left or right. It's not quite as intuitive, but if you think of it as banking I think it would work pretty well. The accelerometers measure +/-2g with an 8 bit resolution, which gives you an angular resolution of about 1.5 degrees (I think I calculated that correctly). Because you'd be sensing the acceleration of gravity instead of (doubly) integrating acceleration, there wouldn't be any drift problems, and you could instinctively correct for any zero-offset problems by just moving your head until rotation stopped.


All times are GMT. The time now is 01:14.

vBulletin® Version 3.8.8