How do I calculate position from acceleration and how about integration drift?

The MTi’s (MTi-1, MTi-10 and MTi-100 series) and MTw has been designed as an orientation sensor. The MTi-G-710, although also primarily an orientation sensor, offers velocity and position output and can be used in outdoor applications.

If you intend to calculate velocity and/or position, from acceleration data, using the MTi or MTw, you will need to subtract the gravity component from the acceleration data and provide an initial velocity. Double integration of acceleration data to estimate position is very inaccurate due to integration drift inherent with sensor noise and bias. When integrating sensor data, you will implicitly have to accept integration drift. Expect the position estimate to be acceptable for a short period of time only, in the order of seconds. In order to get the free acceleration the gravity needs to be subtracted in the global frame. The calibrated data from the MTi /MTw however is expressed in the object frame. The object is the Motion Tracker (MT). To convert the measurements to the global frame, the orientation output of the MT can be used.

So called "zero velocity update" techniques allow to minimize the drift in situations where people are walking. The technique is for example mentioned in this link

Please note that you need to use either the quaternion or matrix representation of the orientation for that purpose. Euler angles are not suitable for this kind of calculation. By using the Free Acceleration provided by the MTi-20, MTi-30, MTi-200 or MTi-300 you can skip the gravity subtraction. This is already done by the filter.


Disclaimer: be reminded that the MTi and MTw are designed as orientation sensors. Xsens supplies the Free Acceleration output and acceleration output as is. This article is published for courtesy reasons. As we are bounded by the physical limitations of the MTi and MTw, we cannot support you in calculating position, nor can we provide example code for this purpose. 



Was this article helpful?
1 out of 1 found this helpful
Do you have a question? Please post your question in our Community Forum