This paper introduces a new algorithm (Gravity & Magnetic North Vector correction — Double SLERP, or “GMV-D”) to estimate the orientation of a MEMS Magnetic/Angular-Rate/Gravity (MARG) sensor module using sensor fusion in the context of a real-time hand tracking application, for human–computer interaction purposes.Integrated MEMS MARG modules are affordable, small, light and consume minimal power. As such, there is interest in using them for monitoring the orientation of various body segments, to which they can be attached (e.g., the finger segments of a gloved hand). However, each of the 3 types of signals they provide has proven insufficient to yield robust orientation estimates, particularly in regions of space where the geomagnetic field is distorted. The significance (main contribution) of the approach we present is the computation of a final orientation estimate that uses all the signals generated by inexpensive (e.g., less than 20 USD, in large quantities) integrated MEMS MARG modules but weighs their contributions with simple, real-time-updatable parameters that prevent erroneous corrections when the pre-conditions for their valid use are not met. This will enable the use of inexpensive integrated MEMS MARG modules for hand tracking applications in human–computer interaction and other areas of work where tracking the orientation of body segments in real-time is important.In each iteration, GMV-D defines an initial orientation estimate from integration of gyroscopic signals (“dead reckoning”), and also calculates accelerometer-based and magnetometer-based corrections. These corrections are defined on the assumptions that the module is near static and affected by an undistorted geomagnetic field.Because these assumptions are seldom fully met simultaneously, the information fusion challenge is to apply each correction only to the extent that its corresponding pre-conditions are met, as inappropriate corrections will introduce significant error in the future orientation estimates. To achieve this, GMV-D develops an accelerometer correction trustworthiness parameter, 0 ≤α≤ 1, and a magnetometer correction trustworthiness parameter, 0 ≤μ≤ 1, both of which are updated on a sample-by-sample basis and are available at each iteration of the algorithm. The information fusion phase of the algorithm implements the corrections in a two-tiered application of Spherical Linear Interpolation (SLERP) of the quaternions representing the initial dead reckoning estimate and the available corrections, scaled according to their corresponding levels of trustworthiness.GMV-D was evaluated in comparison to 2 other orientation correction approaches (Kalman Filtering and GMV-S) and contrasted with 2 contemporary complementary filter approaches (Madgwick , Mahony). The results confirm that GMV-D displayed better orientation estimation performance when the algorithms operated in an area with known distortion of the geomagnetic field.
Read full abstract