Welcome! Log In Create A New Profile

Advanced

How to use Motion Plus data?

Posted by michelinux 
How to use Motion Plus data?
November 13, 2009 08:58PM
ok, I can read rx, ry and rz from Motion Plus... but how to use them?

I see big numbers (about 8000) but I'don't know exactly what they represents (angular velocity?) and what unit of measure is used.

My main goal is to calculate yaw value when IR data are not valid... how can I do it?



Edited 1 time(s). Last edit at 11/13/2009 08:59PM by michelinux.
Re: How to use Motion Plus data?
November 14, 2009 04:38AM
I think the CWiid developer was working on some thing like that (http://abstrakraft.org/cwiid/). Probably could be used in libogc.

EDIT: Actually I don't think I read your post correctly so sorry if my answer doesn't make since.



Edited 1 time(s). Last edit at 11/14/2009 04:43AM by matthewbauer.
Re: How to use Motion Plus data?
November 14, 2009 02:41PM
Sorry matthewbauer, your answer has nothing to do with my question :)

Actually I understood that:

I must calibrate Motion Plus somehow

calibrated rx is angolar velocity towards bottom of wiimote
calibrated ry is anticlockwise roll angolar velocity
calibrated rz is horizontal anticlockwise angolar velocity

yaw decreases if:
calibrated rz * gforce.z > 0
or calibrated rx * gforce.x > 0
or calibrated ry * gforce.y > 0

Still trying to understand how to exactly calculate it...



Edited 2 time(s). Last edit at 11/14/2009 02:45PM by michelinux.
Re: How to use Motion Plus data?
November 17, 2009 02:13PM
Hi,

I think [wiibrew.org] is a good start.

The first thing to do is to calibrate by taking the mean of the values during a few seconds with the wiimote laying still, so that you know what value corresponds to "no movement".

Then you have to translate the raw values into something in a known unit (rad/s or deg/s). Some (very) approximative conversion values are given on the wiibrew wiki. Be careful to consider slow and fast mode.

Next step is to use these values to compute interesting stuff, like the amplitude of the movement preformed by integrating the values in a meaningful way (see euler angles and DCM for exemple). For your application, you may be able to get results without such complicated things, using a simple time integration of the values on the relevant axis.

Hope this can help.
Sorry, only registered users may post in this forum.

Click here to login