drones Article
Tightly-Coupled Joint User Self-Calibration of Accelerometers, Gyroscopes, and Magnetometers Jacky C. K. Chow *
ID
, Jeroen D. Hol and Henk Luinge
Xsens Technologies, Pantheon 6a, 7521 PR Enschede, The Netherlands;
[email protected] (J.D.H.);
[email protected] (H.L.) * Correspondence:
[email protected] Received: 23 October 2017; Accepted: 31 December 2017; Published: 9 February 2018
Abstract: Inertial measurement units (IMUs) are fundamental for attitude control of drones. With the advancements in micro-electro-mechanical systems (MEMS) fabrication processes, size, power consumption, and price of these sensors have reduced significantly and attracted many new applications. However, this came at the expense of sensors requiring frequent recalibration, as they are highly contaminated with systematic errors. This paper presents a novel method to jointly calibrate the accelerometer, gyroscope, and magnetometer triad in a MEMS IMU without additional equipment. Opportunistic zero change in velocity and position updates, and inclination updates were used in conjunction with relative orientation updates from magnetometers in a robust batch least-squares adjustment. Solutions from the proposed self-calibration were compared to existing calibration methods. Empirical results suggest that the new method is robust against magnetic distortions and can achieve performance similar to a specialized calibration that uses a more accurate (and expensive) IMU as reference. The jointly estimated accelerometer and gyroscope calibration parameters can deliver a more accurate dead-reckoning solution than the popular multi-position calibration method (i.e., 54% improvement in orientation accuracy) by recovering the gyroscope scale error and other systematic errors. In addition, it can improve parameter observability as well as reduce calibration time by incorporating dynamic data with static orientations. The proposed calibration was also applied on-site pre-mission by simply waving the sensor by hand and was able to improve the orientation tracking accuracy by 73%. Keywords: calibration; accelerometers; gyroscopes; magnetometers; optimization; inertial navigation; dead-reckoning
1. Introduction The market and applications for drones have skyrocketed. There are many manufacturers such as DJI, 3D Robotics, Yuneec, and Parrot SA each selling their own unique designs. Depending on the application, the drone may be equipped with extra sensors, such as laser scanners and cameras. Regardless of the manufacturer or application, modern day drones are all dependent on the inertial measurement unit (IMU) for assisting its attitude control. Conventional IMUs are composed of a triad of accelerometers and a triad of gyroscopes. Together they can autonomously determine accurate changes in position, velocity, and orientation of quadcopters and fixed wing unmanned aerial vehicles (UAVs) at high frequencies through strap-down integration. Although they can provide valuable navigation information, their long-term usefulness as a solo navigation device is jeopardized by the accumulation of errors over time. Even over a relatively short time interval, the sensor’s systematic errors are magnified by the integration process and will provide erroneous navigation parameters that can be deemed unusable. Therefore, it is extremely important that these systematic effects be minimized. In addition, popular onboard navaids deployed to aid IMUs (e.g., magnetometers) are
Drones 2018, 2, 6; doi:10.3390/drones2010006
www.mdpi.com/journal/drones
Drones 2018, 2, 6
2 of 20
only advantageous if they are properly calibrated for the platform they are mounted on. The necessity for manufacturers to perform precise and reliable laboratory calibration has become a significant portion of the production cost. Furthermore, unavoidable “wear and tear” from the usage of the sensor may lead to demands for recalibration. For lower cost systems, stress induced on the printed circuit board (e.g., soldering) can introduce parasitic effects on the accelerometer and gyroscope. Brodie et al., 2008 [1] recalibrated the accelerometer and gyroscope of a micro-electro-mechanical systems (MEMS) IMU and reported absolute static orientation errors of 5.2 degrees before user-calibration and 1 degree after; in addition, they claimed that their user-calibration parameters are valid for at least 22 days before another user-calibration is necessary. This paper presents a new robust low-cost quality assurance technique that users can perform without specialized tools or taking apart the drone. 2. Related Work Traditionally, expensive external systems with accuracy better than the IMU under consideration are used to generate a series of reference signals. The IMU signals are forced to conform to this reference through solving for the systematic parameters [2], which may include:
• • •
Accelerometer—biases, scale factors, and non-orthogonalities. Gyroscope—biases, scale factors, non-orthogonalities, axes misalignments, and g-sensitivities. Magnetometer—biases, scale factors, non-orthogonalities, axes misalignments, soft-iron effects, and hard-iron effects.
Typical calibration methods belonging to this category use actuated mechanical systems to position the IMU in known orientations and rotate at known and/or constant rotation rates [3–6]. Kim and Golnaraghi, 2004 [7] used the LED marker-based optical tracking system Optotrak to calculate the ground truth acceleration and angular rate of the IMU and calibrated the biases, scale errors, and non-orthogonality for the accelerometer and gyroscope in a disjoint nonlinear least-squares routine. Existing infrastructure such as GNSS can also be used but will be restricted to outdoor environments [8,9]. Well-known methods in this category of inertial calibration include the local level frame method, six-position static test, and rate test [10]. Special boxes/mounts/platforms where the IMU can be mounted and rotated or positioned accurately in a deterministic fashion can also be used [11,12]. For magnetometer calibration, a 3D Helmholtz coil can be used to generate a known magnetic field in various directions [13]. These methods all require infrastructure and/or apparatus that may not be readily available to the end-user. Another, perhaps more suitable, stream of self-contained user calibration methods focused on exploiting reference signals found in nature and has no demand for specialized equipment except for the sensors on-board. For example, Panahandeh et al., 2010 [14] implemented a gravity constraint in the local-level frame to calibrate a triad of accelerometers. The calibration of other sensors necessary to obtain the full navigation solution was not studied, and the presented approach requires solving the nuisance inclination angles for every orientation besides the 9 accelerometer calibration parameters. Yang et al., 2012 [15] performed a similar 2-step optimization procedure for the calibration parameters and then the inclination but also solved for the non-linear scale errors. Wu et al., 2002 [16] and Lötters et al., 1998 [17] avoided the need to determine the orientation angles during calibration by constraining the norm of acceleration under static or quasi-static periods to equal gravity. The magnetometer can be calibrated by using the same concept of constraining the norm to a constant value (e.g., the magnitude of the Earth’s magnetic field obtained from a geomagnetic model) [18]. Instead of negligible or zero motion, a constant and uniform ambient magnetic field is required for the calibration [19]. This approach is comparable to performing a geometric sphere-fit to 3D points [20]. When used as an orientation update, the strength of the field has no impact, so the magnitude can arbitrarily be constrained to unity [21]. Any motion that can generate sufficient samples to cover the entire surface of the sphere can be used to determine the hard and soft iron effects reliably,
Drones 2018, 2, 6
3 of 20
although Ali, 2013 [22] tested several movement patterns (i.e., random, figure-eight, and orthogonal excitations) and concluded that coordinated rotation works best. When the sensor is stationary, the gyroscopes should only sense the rotation rate of the Earth and the magnitude of the observed angular rate can be compared to this reference using the same norm constraint previously described [23]. These methods can calibrate a particular module (e.g., triad of magnetometers or accelerometer) of a 9-DoF IMU or they can be combined to calibrate multiple modules (albeit independently). Camps et al., 2009 [24] used the aforementioned norm constraint approach to calibrate a triad of accelerometers and magnetometers. In the popular multi-position (or perhaps, “multi-orientation”) calibration approach the accelerometer and gyroscope were calibrated at the same time using the magnitude constraint [23]. These methods can be combined to calibrate a 9-DoF system, although in the case of magnetometers, the static requirement is unnecessary. This combined approach independently calibrates the accelerometer, gyroscope, and magnetometer even though data from the same trial can be used. It was reported that ~19% performance improvement can be expected for tactical-grade IMUs [25], but the gyroscope scale error and axes non-orthogonality for both the accelerometer and gyroscope are difficult to estimate using this method [26]. Rather than requiring strict-static periods, automatically detectable quasi-static periods can be used for convenience (with minor compromises in accuracy) for pedestrian tracking applications [27,28]. Most improvements made to this method involve adding a turn-table to generate a stronger reference signal for the gyroscope [29–31]. Undeniably this is advantageous, but reduces the ease-of-use factor by returning to the reliance on additional equipment. It took Zhang et al., 2010 [30] almost 2.5 h of data capture to perform their modified multi-position calibration. Another stream of inertial sensor calibration exploits the correlation between the sensor’s accelerometer, gyroscope, and/or magnetometer to perform the calibration. In such cases the calibration of the IMU components are no longer decoupled and often the inter-triad misalignment needs to be known or estimated in addition to tracking the orientation states. Examples of this type of calibration include Kok et al., 2012 [32] and Kok and Schön, 2014 [33]. In Kok et al., 2012 [32], the authors calibrated the magnetometers using sphere-fitting and the dip angle constraint along with the inclination (estimated by running a Kalman filter on the inertial data) to derive the axes misalignments. Since the inclination was estimated independent from the magnetometer calibration, the magnetometer readings were not used to update the inclination and calibrate the inertial sensor. In Kok and Schön, 2014 [33], they used a grey-box system identification approach to estimate the 12 magnetometer calibration parameters as well as the gyroscope bias and variance-covariance matrices of the accelerometer, gyroscope, and magnetometer. In both cases systematic errors of the accelerometers were ignored and small accelerations were expected, otherwise the estimated vertical direction could be erroneous. Cheuk et al., 2012 [34] hierarchically calibrated a 9-DoF IMU by first constraining the accelerometer and magnetometers to fit on two separate spheres and then comparing changes in orientation from integrating the gyroscope signal with the orientation determined by the accelerometer and magnetometer combined. They only used the magnetometer and accelerometer when the sensor was static (dynamic portions of the data were simply ignored). Renaudin and Combettes, 2014 [35], used a pre-calibrated magnetometer to help estimate the accelerometer and gyroscope biases in a Kalman filter. Their magnetic angular rate model and acceleration gradient model are comparable to the magnetometer and levelling updates used in this paper, which are suitable attitude updates (AUPT) for indoor urban environments. However, they focused on the tracking solution and did not account for the scale errors and non-orthogonalities of the triads. More recently, Li et al., 2015 [36] improved upon this approach by using a pre-calibrated magnetometer to also estimate the accelerometer and gyroscope scale errors. Measurement updates include approximate position updates, low-pass acceleration updates, quasi-static orientation updates, and relative change in magnetic field update when periods of constant magnetic field is identified by
Drones 2018, 2, 6
4 of 20
a detector. However, besides assuming that a calibrated magnetometer is available, not all systematic errors were estimated by the filtering approach. So far, none of the presented calibration routines can simultaneously calibrate for the accelerometer, gyroscope, and magnetometer sensors along with their inter-triad misalignments optimally without specialized tools; both Zhang et al., 2014 [37] and Ammann et al., 2015 [38] stressed the importance of determining the inter-triad misalignments but neglected some dependencies between the sensors by not calibrating them simultaneously. The abovementioned shortcomings can be mitigated using the proposed methodology. 3. Proposed Method The proposed self-calibration method was performed offline using a robust batch optimization technique. Compared to a filtering approach, this allows information from the past, present, and future to be incorporated optimally for identifying the systematic errors. By following the implicit least-squares adjustment framework, all navigation states (i.e., orientation, velocity, and position) can be marginalized away from the beginning of the adjustment, eliminating the need to determine good initial approximations for the non-linear optimizer and making the size of the Hessian and Jacobian time-invariant. To the authors’ best knowledge, this is the first total-system user self-calibration method designed for MEMS IMU with a magnetometer that can simultaneously model all first order systematic errors. Forty-two parameters are considered in this paper: accelerometer—3 biases, 3 scale errors, 3 non-orthogonality angles; gyroscope—3 biases, 3 scale errors, 3 non-orthogonality angles, 9 g-sensitivity coefficients, 3 angles for axes misalignment relative to the accelerometer; magnetometer—9 elements for the soft-iron effects and 3 elements for the hard-iron effects. In addition, both static and dynamic data from all three sensor triads are used; there is no restriction on how the sensor needs to be moved apart from having occasional periods of stillness (as in the typical multi-position calibration). The novelty of the presented 9-degrees-of-freedom (DoF) IMU calibration method is the combination of the following:
• •
• • • •
Tightly-coupled joint calibration (rather than sequential independent hierarchical calibration) of accelerometers, gyroscopes, and magnetometers. Number of optimization variables is time invariant and only contains the calibration parameters; this eliminates efforts in rotation parameterization, datum definition, and deriving initial approximation for the navigation states. Assumes only piecewise local homogenous magnetic field rather than a single global homogenous field, which is more suitable for indoor applications. Automatic outlier detection for abrupt magnetic disturbances during optimization. Opportunistic zero change in velocity, inclination, and loop-closure position updates when deemed suitable for calibrating the MEMS IMU indoors. Calibration is self-contained and easy to perform by the end-user. By combining both static and dynamic signals a total of 42 systematic error parameters can be recovered without using expensive equipment.
3.1. Sensor Models The following sensor models describe the relationship between the observed signals (e.g., sensed angular velocity and acceleration) and the true signal by accounting for the systematic and random errors. In the following equations, uppercase letters represent 3 by 3 matrices and lowercase letters represent 3 by 1 vectors. Furthermore, S is a diagonal matrix and N is a lower-triangular non-orthogonality matrix, where both are composed of three independent unknown parameters [30]. Although the effect of scale error and axes non-orthogonalities can be merged into a single matrix, they are treated separately for the accelerometers and gyroscopes to be consistent with the notation in some literature (e.g., [23,29]).
Drones 2018, 2, 6
5 of 20
3.1.1. Accelerometers s
y a = Sa Na s a + ba + ε a
(1)
where, sy a
is the measured acceleration in sensor frame. Sa is the linear accelerometer scale factor. Na is the accelerometer axes non-orthogonality. s a is the true acceleration in sensor frame. ba is the accelerometer bias. εa is the accelerometer noise. 3.1.2. Gyroscopes yω = Sω Nω Rω s ω + bω + Gω s a + ε ω
(2)
where, yω is the measured angular rate in gyroscope frame. Sω is the gyroscope scale factor. Nω is the gyroscope axes non-orthogonality. Rω is the inter-triad misalignments between the accelerometers and gyroscopes. s ω is the true angular rate in sensor frame. bω is the gyroscope bias. Gω is the g-sensitivity. εω is the gyroscope noise. 3.1.3. Magnetometers y m = Dm s m + o m + ε m ∗
(3)
where, ym is the measured magnetic field in magnetometer frame. Dm is the soft-iron effects. s m is the true magnetic field in sensor frame. om is the hard-iron effects. εm is the magnetometer noise. * Note that Dm and om also convey the effect of magnetometer biases, scale factors, axes non-orthogonality, and inter-triad misalignments. 3.2. Constraints and/or Measurement Updates Conventional IMU mechanization found in a Kalman filter requires the 3D pose (i.e., 7 parameters when using quaternions) and velocity (i.e., 3 parameters) to be estimated at every epoch (Equation (4)). Often IMU biases (i.e., 3 gyroscope biases and 3 accelerometer biases) are treated as time-varying unknowns (e.g., random walk process) and are included in the filter, resulting in 16 unknowns at every time step. These equations can pose a challenge when implementing in a batch least-squares adjustment; for example, the number of unknown parameters for a 100 Hz IMU can reach 96k in a minute (assuming orientations are parametrized using quaternions, represented by q in the equations). If all 42 calibration parameters are being considered this increases to 312k unknowns per
Drones 2018, 2, 6
6 of 20
minute. Furthermore, navigation states of an uncalibrated IMU will have to be initialized using some approximate methods before the nonlinear least-squares estimations. Lp
1 L L c L L L 2 t+ T = pt + vt T + 2 qt+ T · dvt,t+ T · qt+ T + gT Lv L L L L c L t+ T = vt + qt+ T · dvt,t +T T · qt+T + gT 1 Lq L t+ T = qt ⊗ exp 2 dqt,t+ T T
(4)
where, DronesL 2018, L 2, 3
6 of 19 p, v, and L q are the unknown navigation states (position, velocity, and orientation using quaternion parametrization, respectively) in local frame at time t and t + T. dqt,t+T and dvt,t+T are the change in orientation and velocity (defined in Equations (8) and (11), dqt,t+T and dvt,t+T are the change in orientation and velocity (defined in Equations (8) and (11), respectively). respectively). Lg is the local gravity vector. L g is the local gravity vector. T is the time interval. T is thenote: time superscript interval. c indicates the quaternion conjugate. Please
Please note: c indicates the quaternion Instead, the superscript constraints and measurement updatesconjugate. in this section are written in implicit form Instead, the constraints and measurement updates in this section are written implicit form (i.e., f(X,Y) = 0, where X and Y are the unknowns and observations, respectively). Thisinwas chosen by (i.e., f(X,Y) = 0, where X and Y areleast-squares the unknowns and [39] observations, respectively). was chosen by design in order to use an implicit solver to eliminate the necessityThis to explicitly solve design in order to use an implicit least-squares solver to eliminate necessity to explicitly for the navigation states, which grows with time. The[39] constraints and the updates described belowsolve may for the navigation states, with time. The constraints updates described may happen at different timeswhich (i.e., grows opportunistically), and only the and magnetometer updatesbelow are being happen at times (i.e.,The opportunistically), and only the magnetometer updates are being applied applied at different regular intervals. different constraints/updates are influenced by different systematic at regular intervals. The different constraints/updates are influenced by different systematic sensor errors and therefore provide different information to the self-calibration in terms ofsensor their errors and therefore provide differenteffect information to the the systematic self-calibration in observable terms of their recovery recovery (Figure 1). Their combined makes all errors in the total(Figure user 1). Their combined effect makes all the systematic observable in the total-system user system self-calibration and some redundancy betweenerrors observability improves the reliability of self-calibration and some redundancy observability theare reliability the following estimates. the estimates. More details about eachbetween individual update orimproves constraint given inofthe More details about each individual update or constraint are given in the following subsections. subsections.
Figure Figure 1. 1. Contribution Contribution of of the the various various constraint constraint and/or and/orupdates updates to to the the recovery recovery of of different different IMU IMU systematic systematic errors. errors. Green Greenindicates indicatesthat that itit isis possible possible to to calibrate calibrate for for those those error error terms terms using using the the corresponding corresponding constraint/update. constraint/update.Please Pleasenote notethat thatthe thelevelling levellingupdate updatemeasures measures the the tilt tilt angle angle of of the the sensor relative to local gravity when the sensor is static, ZUPT stands for zero-velocity update, and sensor relative to local gravity when the sensor is static, ZUPT stands for zero-velocity update, and CUPT which will will be be explained explained below. below. CUPT stands stands for for coordinate coordinate update, update, all all of of which
3.2.1. 3.2.1. Accelerometers Accelerometers When static or or quasi-static quasi-staticperiods periodsin inthe theIMU IMUdata dataare aredetected detected(e.g., (e.g.,byby considering a window When static considering a window of of inertial data and checking the variance against some threshold [9]), the magnitude of the measured inertial data and checking the variance against some threshold [9]), the magnitude of the measured acceleration local gravity gravity ((LLg). acceleration in in sensor sensor frame frame (s) (s) should should equal equal the the local g). This This update update can can help help define define the the scale scale for for the the accelerometer. accelerometer. s
2
L
2
s 2
s
2
s 2
L
2
= as ax2x ++ saa2yy ++ as az2z−−gL g2==0 0 ks a ka22 2−−L gg2 =
(5)(5)
the where, ssaaxx,,sas ay,y ,and andsaszaare theindividual individualcomponents componentsofofthe thecorrected correctedacceleration accelerationininsensor sensorframe. frame. z are 3.2.2. Gyroscopes When static or quasi-static periods in the IMU data are detected, the magnitude of the measured angular rate should equal the rotation rate of the Earth. However, for MEMS IMUs the noise typically masks such a weak signal. Instead the three components (x, y, and z channel) can be conditioned to
Drones 2018, 2, 6
7 of 20
3.2.2. Gyroscopes When static or quasi-static periods in the IMU data are detected, the magnitude of the measured angular rate should equal the rotation rate of the Earth. However, for MEMS IMUs the noise typically masks such a weak signal. Instead the three components (x, y, and z channel) can be conditioned to zero (a.k.a. zero rotation update). Any non-zero mean value will indicate a bias. s
ω x = s ωy = s ωz = 0
(6)
where, s ω x , s ω y , and s ω z are the individual components of the corrected angular rate in sensor frame. 3.2.3. Gyroscopes + Magnetometer Regardless of the motion, the gyroscope signals and magnetometer signals can be compared to each other in both static and dynamic situations. Instead of requiring the sensor to be static, the local magnetic field should be constant and homogenous. If this assumption is satisfied, the magnetometer can act as a low-pass filter that smooths out the sensed angular rate, while the gyroscope captures the high-frequency dynamics missed by the magnetometers. Although such an assumption may be satisfied in outdoor applications, in indoor urban environments the homogenous magnetic field assumption is often violated. Instead, the assumption can be relaxed to assume only piece-wise constant magnetic fields at the expense of losing the absolute heading reference (i.e., magnetic north) and experiencing the possibility of heading drift. However, since the calibration parameters are defined in sensor frame, they are independent of the absolute reference. Assuming a longer duration of homogeneous magnetic field reduces heading drift and induces more smoothing; however, it is more likely to be violated due to magnetic disturbances. On the contrary, by assuming a shorter duration, the update has a higher probability of being valid but the heading will drift more rapidly. It has also been perceived that a longer duration assumption is more robust to magnetic disturbances because, with a larger rotation interval, the outliers become more detectable. To combine the benefits of both approaches, the magnetometer updates can be performed at two frequencies simultaneously (e.g., 10 Hz and 100 Hz as in this paper). The magnetic field measurements at different times can be related through a 3D rotation (Equation (7)) determined by performing strap-down integration on the gyroscope signal (Equation (8)). dqt,t+T ·s mt+T ·dqct,t+T − s mt = 0
dqt,t+T
1 = 2
ZT
dqt,τ ·s ωτ dτ
(7)
(8)
τ =t
where, dqt,t+T is the relative change in orientation from time t to time t + T expressed using quaternions (with the superscript c representing the conjugate). s ω is the vector of corrected angular rates at time τ expressed in sensor frame. τ s m is the vector of corrected magnetic samples at time t expressed in sensor frame. t 3.2.4. Accelerometer + Gyroscopes Several updates based on the accelerometer and gyroscope can be enforced depending on the user’s motion for calibrating both sensors, namely levelling update, zero-velocity update (ZUPT), and coordinate update (CUPT). i.
Levelling Update
Drones 2018, 2, 6
8 of 20
When the sensor is static the accelerometers can define the tilt angles relative to the local-level frame by measuring gravity. This can be used to update the inclination determined from integrating the gyroscope readings and give the orientations an absolute vertical reference. dqt1 ,ti ·s ati ·dqct1 ,ti − s at1 = 0 ii.
(9)
Zero-Velocity Update (ZUPT)
Between two static (or quasi-static) periods the total change in velocity is zero. Instead of directly applying the update to the velocity, which would involve solving for all the nuisance intermediate velocity and orientation parameters, this update can be applied directly to the accelerometer and gyroscope signals using Equation (10) and strap-down integration for change in velocity (Equation (11)). s gt1 ·(ti − t1 ) + dvt1 ,ti = 0 (10) dvt1 ,ti =
Zti
dqt1 ,τ ·s aτ ·dqct1 ,τ dτ
(11)
τ = t1
where, dvt1 ,ti is the change in velocity from time t1 (first epoch) to time ti expressed in the sensor frame at t1 . s g is the gravity vector at time t expressed in sensor frame. 1 t1 iii.
Coordinate Update (CUPT)
If the user is rotating the sensor while standing or sitting at the same location, and/or the sensor was returned approximately to the same position after a period of time, an approximate zero change in position update can be applied. In the former case, this update can be applied at regular intervals, and in the latter it can be applied sporadically even if the sensor is not static. Following the strap-down integration approach described above and assuming the sensor started at rest, the CUPT can be implemented without explicitly solving for the navigation states using Equations (12) and (13). The detection of loop-closure (e.g., based on magnetic signature or RSS fingerprint) was not studied in this research, similar position updates were detected manually based on the data acquisition procedure described in Section 4. 2 1 s · gt1 · t j − t1 + dpt1 ,t j = 0 (12) 2 dpt1 ,t j =
Zt j Zτ
dqt1 ,ξ ·s aξ ·dqct1 ,ξ dξdτ
(13)
τ = t1 ξ =0
where, dpt1 ,t j is the change in position from time t1 to time tj expressed in the sensor frame at t1 . 3.3. M-Estimator The calibration parameters for the accelerometer, gyroscope, and magnetometers are treated as time-invariant and can be solved simultaneously offline using the standard iterative Gauss-Helmert least-squares adjustment [39] (as in the multi-position calibration approach [29]). The nuisance parameters (i.e., states) were marginalized away by design from the beginning (i.e., by writing the functional models in implicit form), which constrain the dimensions of the Hessian matrix. The unknowns vector contains the 42 calibration parameters only (i.e., X = [ba , Sa , Na , bω , Sω , Nω , Gω , Rω , Dm , om ]T ) and the observations are the accelerometer, gyroscope, and magnetometer readings (i.e., Y = [ya , yω , ym ]T ), along with the pseudo-measurements for the approximate CUPT. During the batch optimization the sum of weighted residuals squared is minimized (Equation (14)) subject to
Drones 2018, 2, 6
9 of 20
Equation (15). For more information about applying this implicit least-squares formulation to IMU data, please refer to Shin and El-Sheimy, 2002 [23] and Shin, 2001 [26]. Through marginalization the Hessian loses its sparse structure, however the size of the resulting dense Hessian matrix will never exceed 42 by 42 regardless of the amount of data captured. This is a favorable property and offers the potential for this method to be scaled to larger datasets. rˆ T Cl−1 rˆ = min
(14)
Aδˆ + Bˆr + w = 0
(15)
where, δˆ is the correction to the unknown parameters, X. rˆ is the correction to the observations, Y. w is the misclosure vector. A is the first design matrix. B is the second design matrix. Cl is the observations variance-covariance matrix. The measurement noise of the sensors can be obtained from the manufacturer’s specification sheets or from studying the Allan Variance. The noise introduced for the approximate CUPT depends on the application and is the only parameter that requires tuning (it was set to σ = 10 cm in this paper). All other measurement updates were assumed to be exact. To improve the robustness of the estimator, the Huber and Tukey weight functions [40] were adopted to iteratively reweight the accelerometer and magnetometer observations, respectively. This approach is suitable for dampening the effects of abrupt magnetic disturbances and false-detection of static periods that can significantly affect the calibration, for example. 4. Experimentation Two MEMS-based IMUs from Xsens Technologies, MTi-300 and MTi-G-700 (both with built-in accelerometers, gyroscopes, and magnetometers), were used for testing the algorithm. All data were logged at 100 Hz (note: the raw inertial data was captured at 2 kHz and then down-sampled to 100 Hz via strap-down integration [41]). For quality control, a fiber optic gyroscope (FOG)-based tactical grade IMU (i.e., IMU-FSAS from iMAR GmbH, St. Ingbert, Germany) capturing at 200 Hz was rigidly attached to the MEMS IMU to provide a reference solution (Figure 2). The two IMUs were software time synchronized for each experiment, while their rotational and translational offsets (i.e., boresight and lever-arm) were predetermined using the calibrated accelerometer and gyroscope signal. All reported error measures were computed by differencing the MEMS IMU solution with the tactical-grade IMU solution.
grade IMU (i.e., IMU-FSAS from iMAR GmbH, St. Ingbert, Germany) capturing at 200 Hz was rigidly attached to the MEMS IMU to provide a reference solution (Figure 2). The two IMUs were software time synchronized for each experiment, while their rotational and translational offsets (i.e., boresight and lever-arm) were predetermined using the calibrated accelerometer and gyroscope signal. All reported Drones 2018,error 2, 6 measures were computed by differencing the MEMS IMU solution with the tactical10 of 20 grade IMU solution.
Figure 2. The experimental set-up with the Xsens MTi-300 and MTi-G-700 rigidly mounted on the Figure 2. The experimental set-up with the Xsens MTi-300 and MTi-G-700 rigidly mounted on the outside of a box (left) and the iMAR rigidly mounted to the inside of the same box (right). Please note outside of a box (left) and the iMAR rigidly mounted to the inside of the same box (right). Please note that the third Xsens IMU (MTi-30) was not used in this experiment. that the third Xsens IMU (MTi-30) was not used in this experiment.
4.1. Case 1: In-Laboratory User Self-Calibration 4.1. Case 1: In-Laboratory User Self-Calibration In the first case, data was acquired by placing the MTi-G-700 in various static orientations (i.e., In the first case, data was acquired by placing the MTi-G-700 in various static orientations (i.e., 15) 15) similar to the conventional multi-position IMU calibration scheme. This calibration was similar to the conventional multi-position IMU calibration scheme. This calibration was performed in performed in a controlled environment with the objective of estimating the static portion of the a controlled environment with the objective of estimating the static portion of the systematic errors systematic errors (e.g., axes non-orthogonality). The repeatability and robustness of the calibration (e.g., axes non-orthogonality). The repeatability and robustness of the calibration was tested by was tested by carrying out ten consecutive calibrations with the MTi-300. The first five trials were carrying out ten consecutive calibrations with the MTi-300. The first five trials were acquired while acquired while mitigating magnetic disturbances (i.e., rotating the sensor with minimal translations mitigating magnetic disturbances (i.e., rotating the sensor with minimal translations in an open space) in an open space) and for the remaining five trials the sensor was rotated and translated in the and for the remaining five trials the sensor was rotated and translated in the presence of various presence of various magnetic disturbances (e.g., computers, tables, chairs, etc.). The latter magnetic disturbances (e.g., computers, tables, chairs, etc.). The latter heterogeneous magnetic field heterogeneous magnetic field case can represent some unexpected magnetic field changes during case can represent some unexpected magnetic field changes during laboratory calibration. In addition, laboratory calibration. In addition, it illustrates the potential of extending this method in an it illustrates the potential of extending this method in an uncontrolled environment when significant uncontrolled environment when significant excitations are provided. excitations are provided. 4.2. Case 2: On-Site User Self-Calibration 4.2. Case 2: On-Site User Self-Calibration The second experiment was designed to reduce the time and effort of the multi-position The second experiment was designed to reduce the time and effort of the multi-position calibration calibration (i.e., less stillness periods), which despite being easy to perform, may not always be a (i.e., less stillness periods), which despite being easy to perform, may not always be a viable option viable option on-site. The MTi-G-700 begins in a static or quasi-static position, followed by a sequence on-site. The MTi-G-700 begins in a static or quasi-static position, followed by a sequence of hand-held rotations (~30 s) to ensure all axes are excited, and finishes in a static position near the starting position. This type of calibration is suitable for estimating the static systematic errors that may change from operation to operation such as turn-on biases and the soft and hard-iron effects immediately prior to data acquisition for example. A special case where no periods of stillness exist in the MTi-300 data is also presented to show the performance of the method as a gyroscope and magnetometer duo calibration method. This accelerometer-free calibration places no restriction on the motion (e.g., slow movements or quasi-stillness) and is suitable for applications with unpredictable extreme dynamics. 5. Results and Analyses 5.1. Case 1: In-Laboratory User Self-Calibration Although the data acquisition procedure is almost identical to the popular multi-position self-calibration approach, the data processing of the proposed method is rather different. The conventional method ignores all dynamic data and the mutual information that can be shared between the sensors. The proposed method can achieve similar or better accuracy in less time by exploiting both static and dynamic portions of the trial in the optimization. The multi-position calibration (without turn-tables) has difficulties estimating the gyroscope scale errors (and possibly the accelerometer and gyroscope axes non-orthogonality). Through the inclusion of accelerometer, gyroscope, and magnetometer signals under motion (Equations (6), (8), (9) and (11)),
unpredictable extreme dynamics. 5. Results and Analyses 5.1. Case Drones 2018,1:2,In-Laboratory 6
User Self-Calibration
11 of 20
Although the data acquisition procedure is almost identical to the popular multi-position selfcalibration approach, the databiases, processing of thenon-orthogonality, proposed method rather different. The the accelerometer and gyroscope scale errors, andisinter-triad misalignments conventional method ignores all dynamic data and the mutual information that can be shared can be recovered simultaneously with the hard and soft-iron effects for the magnetometer. The between the sensors. The proposed method can achieve similar or better accuracy in less time by estimated calibration parameters along with their standard deviations are reported in Table 1. The exploiting both static and dynamic portions of the trial in the optimization. sensor under consideration appears to be well calibrated, with the most pronounced systematic The multi-position calibration (without turn-tables) has difficulties estimating the gyroscope errors being the accelerometer and gyroscope biases, and the magnetic distortions induced by the scale errors (and possibly the accelerometer and gyroscope axes non-orthogonality). Through the mounting platform. inclusion of accelerometer, gyroscope, and magnetometer signals under motion (Equations (6), (8), All the recovered systematic errors are statistically significant based on the t-test at a 95% (9) and (11)), the accelerometer and gyroscope biases, scale errors, non-orthogonality, and inter-triad confidence interval, except for a few terms in the g-sensitivity matrix, the non-orthogonality between misalignments can be recovered simultaneously with the hard and soft-iron effects for the the accelerometer’s y- and z-axis, the non-orthogonality between the gyroscope’s x- and z-axis, and the magnetometer. The estimated calibration parameters along with their standard deviations are misalignment rotation between the accelerometer and gyroscope about the x-axis. After removing the reported in Table 1. The sensor under consideration appears to be well calibrated, with the most statistically insignificant parameters, the least-squares regression was repeated estimate pronounced systematic calibration errors being the accelerometer and gyroscope biases, and the to magnetic the final sensor error model parameters. distortions induced by the mounting platform. Table Estimated residual systematic theMTi-G-700 Xsens MTi-G-700 using the proposed Table1. 1. Estimated residual systematic errorserrors for thefor Xsens using the proposed method inmethod in-lab. lab. Component X Y Z X Y Z
Matrix
Matrix
Accelerometer Sa Ba (m/s2) Na (deg) (unitless) −0.0639 0.0007 −0.0135 −0.0028 0.0006 0.0292 0.0446 0.0002 0.0012 σ 1.45 × 10−4 1.71 × 10−5 3.72 × 10−3 2.41 × 10−4 1.99 × 10−5 4.69 × 10−3 1.11 × 10−4 1.23 × 10−5 1.93 × 10−3
Gyroscope Magnetometer Sω Bω (deg/s) Nω (deg) Rω (deg) om (a.u.) (unitless) −0.0759 0.0003 0.0241 0.0060 −0.0216 −0.0003 0.0000 −0.0053 −0.0114 0.0147 −0.2532 0.0002 −0.0451 0.0779 −0.0139 σ σ 7.31 × 10−4 5.27 × 10−5 4.14 × 10−3 4.82 × 10−3 4.23 × 10−5 7.45 × 10−4 5.98 × 10−5 4.15 × 10−3 4.43 × 10−3 4.00 × 10−5 8.78 × 10−4 5.73 × 10−5 4.11 × 10−3 5.52 × 10−3 3.81 × 10−5 Gω (rad∙s/m) Dm (unitless) 0.0000 0.0000 0.0000 −0.0358 −0.0093 −0.0173 0.0000 0.0000 0.0000 −0.0003 −0.0194 −0.0507 0.0000 0.0000 0.0000 −0.0142 −0.0134 0.0552 σ σ 2.80 × 10−6 2.41 × 10−6 2.52 × 10−6 5.44 × 10−5 9.03 × 10−5 9.20 × 10−5 2.95 × 10−6 3.51 × 10−6 2.82 × 10−6 1.02 × 10−4 6.07 × 10−5 1.04 × 10−4 1.82 × 10−6 1.71 × 10−6 2.16 × 10−6 9.57 × 10−5 9.63 × 10−5 5.71 × 10−5
All the recovered systematic errors are statistically significant based on the t-test at a 95% Tables 2 and 3 show the inertial error for both the in-sample trial (trial used for calibration) confidence interval, except for a few terms in the g-sensitivity matrix, the non-orthogonality between and out-of-sample trial (another independent trial captured in a similar way as the multi-position the accelerometer’s y- and z-axis, the non-orthogonality between the gyroscope’s x- and z-axis, and calibration hours later and after turning on and off the sensor several times). The RMSE in the misalignment rotation between the accelerometer and gyroscope about the x-axis. After removing the acceleration and angular rate signals showed only minor improvements after performing the statistically insignificant calibration parameters, the least-squares regression was repeated to multi-position and the proposed user self-calibration, which can be misleading. Therefore, estimate the final sensor error model parameters. the integrated gyroscope (i.e., orientation) and integrated (un-rotated) accelerometer signals were also reported to show the accumulated error over the four-minute duration of the trial. According to Mautz, 2012 [42] who surveyed various modern indoor positioning technologies (e.g., cameras and infrared) the lowest positioning update frequency is 0.1 Hz, therefore the velocity and positioning error after 10 s of dead-reckoning is also reported to indicate the upper error limit.
acceleration and angular rate signals showed only minor improvements after performing multiposition and the proposed user self-calibration, which can be misleading. Therefore, the integrated position and the proposed user self-calibration, which can be misleading. Therefore, the integrated gyroscope (i.e., orientation) and integrated (un-rotated) accelerometer signals were also reported to gyroscope (i.e., orientation) and integrated (un-rotated) accelerometer signals were also reported to show the accumulated error over the four-minute duration of the trial. According to Mautz, 2012 [42] show the accumulated error over the four-minute duration of the trial. According to Mautz, 2012 [42] who surveyed various modern indoor positioning technologies (e.g., cameras and infrared) the who surveyed various modern indoor positioning technologies (e.g., cameras and infrared) the lowest positioning update frequency is 0.1 Hz, therefore the velocity and positioning error after 1020s Drones 2018, 2, 6 12 of lowest positioning update frequency is 0.1 Hz, therefore the velocity and positioning error after 10 s of dead-reckoning is also reported to indicate the upper error limit. of dead-reckoning is also reported to indicate the upper error limit. Table In-sampleRMSE RMSEofofthetheinput input signals estimated navigation quantities before Table2.2. In-sample signals andand estimated navigation quantities before selfTable 2. In-sample RMSE calibration), of the input signals and estimated navigation quantities before selfself-calibration (i.e., factory after conventional multi-position calibration, and after in-lab calibration (i.e., factory calibration), after conventional multi-position calibration, and after in-lab user calibration (i.e., factory calibration), after conventional multi-position calibration, and after in-lab user user self-calibration. self-calibration. self-calibration. Before 1 Before 1
Multi-Position Multi-Position (15 (15 Orientations) Orientations) 0.16 0.16
% % Improv Improv
Proposed Proposed Method (6 Method (6 Orientations) Orientations) 0.16 0.16
% % Improv. Improv.
Proposed Proposed Method (15 Method (15 Orientations) Orientations) 0.16 0.16
% % Improv. Improv.
Acceleration 0.17 2.95 2.90 2.98 Acceleration (m/s2) 0.17 2.95 2.90 2.98 2) (m/s Angular Rate 0.32 0.28 12.66 0.28 11.61 0.28 10.99 Angular Rate (deg/s) 0.32 0.28 12.66 0.28 11.61 0.28 10.99 (deg/s) Integrated Integrated Acceleration 8.46 1.36 83.88 0.95 88.74 1.05 87.60 Acceleration 8.46 1.36 83.88 0.95 88.74 1.05 87.60 (m/s) (m/s) Orientation 4.30 0.24 94.36 0.24 94.45 0.15 96.49 Orientation (deg) 4.30 0.24 94.36 0.24 94.45 0.15 96.49 (deg) Velocity @ 10s 1.93 0.07 96.52 0.06 97.13 0.05 97.22 Velocity @ 10s (m/s) 1.93 0.07 96.52 0.06 97.13 0.05 97.22 (m/s) Position @ 10s 6.48 0.34 94.69 0.23 96.40 0.04 99.31 Position (m)@ 10s 6.48 0.34 94.69 0.23 96.40 0.04 99.31 (m) 1 In the Results and Analyses section, the term factory calibration is used synonymously with before user self-calibration. 1 In the Results and Analyses section, the term factory calibration is used synonymously with before user self-calibration.
Table3.3. Out-of-sample signals andand estimated navigation quantities before selfTable Out-of-sample RMSE RMSEofofthe theinput input signals estimated navigation quantities before Table 3. Out-of-sample RMSE of the input signals and estimated navigation quantities before selfcalibration (i.e.,(i.e., factory calibration), afterafter conventional multi-position calibration, and after in-lab user self-calibration factory calibration), conventional multi-position calibration, and after in-lab calibration (i.e., factory calibration), after conventional multi-position calibration, and after in-lab user self-calibration. user self-calibration. self-calibration.
0.21 0.21
MultiMulti- (15 Position Position (15 Orientations) Orientations) 0.21 0.21
1.48 1.48
Proposed Proposed Method (6 Method (6 Orientations) Orientations) 0.21 0.21
1.36 1.36
Proposed Proposed Method (15 Method (15 Orientations) Orientations) 0.21 0.21
0.41 0.41
0.38 0.38
7.47 7.47
0.38 0.38
7.33 7.33
0.38 0.38
7.64 7.64
11.95 11.95
3.68 3.68
69.22 69.22
4.02 4.02
66.38 66.38
3.27 3.27
72.67 72.67
13.43 13.43
0.94 0.94
93.03 93.03
0.49 0.49
96.35 96.35
0.43 0.43
96.76 96.76
1.07 1.07
0.07 0.07
93.41 93.41
0.02 0.02
97.94 97.94
0.01 0.01
98.61 98.61
3.07 3.07
0.33 0.33
89.32 89.32
0.13 0.13
95.66 95.66
0.14 0.14
95.45 95.45
Before Before Acceleration Acceleration (m/s2) (m/s2) Angular Angular Rate (deg/s) Rate (deg/s) Integrated Integrated Acceleration Acceleration (m/s) (m/s) Orientation Orientation (deg) (deg) @ Velocity Velocity @ 10s (m/s) 10s (m/s)@ Position Position 10s (m)@ 10s (m)
% Improv. % Improv.
% Improv. % Improv.
% Improv. % Improv. 1.52 1.52
Based on the in-sample error, both the multi-position and proposed self-calibration method were Based on the in-sample error, both the multi-position and proposed self-calibration method were ableBased to significantly reduce the discrepancies between theand accelerometer and gyroscope method signals of the on the in-sample error, both the multi-position proposed self-calibration were able to significantly reduce the discrepancies between the accelerometer and gyroscope signals of the MEMS IMU and reference by modelling between for the systematic error parameters. Compared to the able to significantly reduce IMU the discrepancies the accelerometer and gyroscope signals of MEMS IMU and reference IMU by modelling for the systematic error parameters. Compared to the factory calibration the IMU new set calibration improved the accuracy Compared of the inertial the MEMS IMU andresults, reference by of modelling forparameters the systematic error parameters. to factory calibration results, the new set of calibration parameters improved the accuracy of the inertial signals by more than 80%. The RMSE also indicated that the proposed calibration can yield similar the factory calibration results, the new set of calibration parameters improved the accuracy of the signals by more than 80%. The RMSE also indicated that the proposed calibration can yield similar inertial signals by more than 80%. The RMSE also indicated that the proposed calibration can yield similar or better results than the multi-position method by modelling additional statistically significant compensation parameters (e.g., gyroscope scale errors). During the out-of-sample validation, the orientations and integrated accelerations using the proposed method were 54% and 11% more accurate than the multi-position method, respectively. By utilizing the dynamic data between static segments of the trial more systematic errors became observable and modelling them improved the data quality. Even when using just the first 1.4 min of data (six static orientations with each axis pointing approximately up and down) the calibrated accelerometer and gyroscope signals are comparable to the conventional multi-position method. Although the integrated acceleration error is higher than the multi-position results, this was more than
compensation parameters (e.g., gyroscope scale errors). During the out-of-sample validation, the orientations and integrated accelerations using the proposed method were 54% and 11% more accurate than the multi-position method, respectively. By utilizing the dynamic data between static segments of the trial more systematic errors became observable and modelling them improved the data quality. Even when using just the first 1.4 min of Drones 2, 6 13 of 20 data 2018, (six static orientations with each axis pointing approximately up and down) the calibrated accelerometer and gyroscope signals are comparable to the conventional multi-position method. Although the integrated acceleration error is higher than the multi-position results, this was more compensated by achieving nearly 50% lower orientation errors, and overall the IMU dead-reckoning than compensated by achieving nearly 50% lower orientation errors, and overall the IMU deadperformance both in-sample and out-of-sample is improved (with the out-of-sample improvement reckoning performance both in-sample and out-of-sample is improved (with the out-of-sample being particularly pronounced). improvement being particularly pronounced). This suggests that using the proposed user self-calibration method has the merit of improving the This suggests that using the proposed user self-calibration method has the merit of improving MEMS IMU accuracy and can potentially reduce the number of static orientations required (hence the MEMS IMU accuracy and can potentially reduce the number of static orientations required (hence reduce data acquisition time) in a multi-position calibration scheme. reduce data acquisition time) in a multi-position calibration scheme. The given zero change in velocity and position math models (Equations (10) and (12)) use the first The given zero change in velocity and position math models (Equations (10) and (12)) use the epoch as a reference in order to maintain consistent trajectory estimation when it is desired. However, first epoch as a reference in order to maintain consistent trajectory estimation when it is desired. in the case of in-lab or on-site calibration, the objective is usually only to obtain a set of consistent However, in the case of in-lab or on-site calibration, the objective is usually only to obtain a set of calibration parameters, therefore it can be performed as a relative update rather than an absolute consistent calibration parameters, therefore it can be performed as a relative update rather than an update. This is justifiable because the calibration parameters are expressed in sensor frame and are absolute update. This is justifiable because the calibration parameters are expressed in sensor frame independent of the absolute the navigation frame. Thisframe. is beneficial performing and are independent of thereference absolute in reference in the navigation This isbecause beneficial because aperforming relative zero change in velocity update (with respect to the previous stillness period) instead a relative zero change in velocity update (with respect to the previous stillness period)of an absolute zero change in velocity update (with respect torespect the firsttostillness shorter instead of an absolute zero change in velocity update (with the first period) stillnessmeans period)a means history of trajectory needs to be memorized. This results in a more efficient algorithm while delivering a shorter history of trajectory needs to be memorized. This results in a more efficient algorithm while statistically identical calibration parametersparameters (as found in research). delivering statistically identical calibration (asthis found in this research).
Consistency and Robustness of the Self-Calibration Method Consistency and Robustness of the Self-Calibration Method Any parameters dedicated dedicated to to aa particular particular IMU IMU should should Any calibration calibration method method that that estimates estimates parameters consistently accuracy when when compared comparedto tousing usingsome sometypical typicalaverage average consistentlyimprove improvethe thesensor’s sensor’s navigation navigation accuracy calibration parameters. In addition, the self-calibration should be insensitive to magnetic disruptions calibration parameters. In addition, the self-calibration should be insensitive to magnetic disruptions and manual calibration calibration (MEMS (MEMSinertial inertialsignals signals anddeliver deliver results results comparable comparable to to the the more more expensive expensive manual directly directlycompared comparedto toaamore moreaccurate accurate reference reference such such as as the the iMAR). iMAR). In order to check for the consistencies of this method bothunder homogeneous and heterogeneous In order to check for the consistencies of thisunder method both homogeneous and magnetic fields,magnetic the out-of-sample errors for ten consecutive calibrations ofcalibrations the MTi-300ofis heterogeneous fields, thevalidation out-of-sample validation errors for ten consecutive presented in is Table 4. This compared the errorstoobtained when usingwhen nominal the MTi-300 presented in is Table 4. This to is compared the errors obtained usingcalibration nominal parameters (average component specs) of the sensor. Besides reporting the reduction errors after calibration parameters (average component specs) of the sensor. Besides reporting the in reduction in applying the applying proposed the self-calibration method, errorsmethod, obtained from obtained applyingfrom the manufacturer’s errors after proposed self-calibration errors applying the one-time-only calibration, and errors after conventional manual calibration manufacturer’sfactory one-time-only factory calibration, andperforming errors after aperforming a conventional manual are shown. calibration are shown. Table and estimated estimated navigation navigationquantities quantitiesbased basedon onsome some Table4.4.Out-of-sample Out-of-sampleRMSE RMSEof of the the input input signals signals and nominal values, after factory calibration, after manual calibration, and after in-lab user self-calibration nominal values, after factory calibration, after manual calibration, and after in-lab user self-calibration under field environments. environments. underboth bothhomogeneous homogeneous and and heterogeneous heterogeneous magnetic magnetic field
Acceleration (m/s2) Angular Rate (deg/s) Integrated Acceleration (m/s) Orientation (deg)
Homogeneous Magnetic Field Heterogeneous Magnetic Field Self 1 Self 2 Self 3 Self 4 Self 5 Self 1 Self 2 Self 3 Self 4 Self 5
Nominal
Factory
Manual
0.67
0.12
0.05
0.05
0.05
0.05
0.05
0.05
0.05
0.05
0.05
0.05
0.05
1.86
0.17
0.15
0.16
0.16
0.17
0.15
0.16
0.15
0.16
0.17
0.16
0.17
41.21
4.76
0.54
0.63
0.58
0.51
0.53
0.52
0.54
0.50
0.51
0.45
0.44
30.83
1.01
0.42
0.34
0.30
0.28
0.24
0.27
0.25
0.30
0.37
0.35
0.45
It can be perceived that both the manual calibration and all cases of self-calibration improved the sensor’s overall accuracy. Their improvements are even greater than relying on the factory calibration, likely because the manufacturer’s calibration was done over a year ago and is outdated. For the ten self-calibration results, only six static orientations were captured in each case. The errors in the integrated acceleration and angular rate are comparable or lower than the manual calibration for
ym (a.u.)
ym (a.u.)
the sensor’s overall accuracy. Their are even greater than relying on the factory It can be perceived that both theimprovements manual calibration and all cases of self-calibration improved calibration, likely because the manufacturer’s calibration was done over a year ago and is outdated. the sensor’s overall accuracy. Their improvements are even greater than relying on the factory For the ten self-calibration only six static orientations in ago eachand case. The errors calibration, likely becauseresults, the manufacturer’s calibration was were done captured over a year is outdated. inFor thethe integrated acceleration and angular rate are comparable or lower than the manual calibration ten self-calibration results, only six static orientations were captured in each case. The errors Drones 2,of 6 theacceleration 14when of 20 for cases. No significant in the signal quality be observed inmajority the 2018, integrated and angulardeterioration rate are comparable or lower than can the manual calibration for majority of the cases.parameters No significant deterioration the signal quality can be observed applying the calibration obtained under in a non-homogeneous magnetic field when to the applying trial. the calibration parameters obtained under a non-homogeneous magnetic field to the validation majority of the cases. No significant deterioration in the signal quality can be observed when applying validation trial. To further the quality of under the magnetometer calibration, the magnitude the calibrated the calibration assess parameters obtained a non-homogeneous magnetic field to the of validation trial. To further assess the quality of the magnetometer calibration, the magnitude of the calibrated magnetometer signal measured while rotating under a homogenous magnetic field is plotted To further assess the quality of the magnetometer calibration, the magnitude of the calibratedin magnetometer signal calibration measured while under athe homogenous magnetic field close is plotted in Figure 3. The factory is notrotating valid because MTi-300 was mounted to other magnetometer signal measured while rotating under a homogenous magnetic field is plotted in Figure 3. The factory calibration is not valid because the MTi-300 was mounted close to other magnetic during testing.isThe arewas consistent performance Figure 3.objects The factory calibration not self-calibration valid because theresults MTi-300 mountedand closeshow to other magnetic magnetic objects Magnetic during testing. The self-calibration resultscalibrates are consistent and show performance similar to Xsens’ Field Mapper (MFM), which the magnetometer using the objects during testing. The self-calibration results are consistent and show performance similar to similar to Xsens’ Magnetic Field Mapper (MFM), which calibrates the magnetometer using the sphere-fitting approach [43]. Figure showscalibrates the magnitude of the calibrated field Xsens’ Magnetic Field Mapper (MFM),4 which the magnetometer using themagnetic sphere-fitting sphere-fitting approach [43]. Figure 4from shows the magnitude of the calibrated magnetic field measurements in4 self-calibration one the heterogeneous magnetic field trials approach [43].used Figure shows the magnitude of theofcalibrated magnetic field measurements usedand in measurements in self-calibrationtofrom one of the heterogeneous magnetic field trials were and demonstrate the used method’s unexpected disturbances. These magnetic outliers self-calibration from one ofrobustness the heterogeneous magnetic field trials and demonstrate the method’s demonstrate the method’s robustness to unexpected disturbances. magnetic outliers were detected and to rejected by thedisturbances. self-calibration method automatically andThese did not impact the calibration robustness unexpected These magnetic outliers were detected and rejected by the detected and rejected by the self-calibration method automatically and did not impact the calibration significantly. Based on the authors’ experience, the impact proposed magnetometer self-calibration method automatically and did not the gyroscope calibrationand significantly. Based update, on the significantly. Based on the authors’ experience, the proposed magnetometer update, which only assumes a local constant homogenous magneticgyroscope field, hasand shown to assumes yield the same authors’ experience, the proposed gyroscope and magnetometer update, which only a local which only assumes a local constant homogenous magnetic field, has shown to yield the same calibration results as assuming global homogenous magnetic field.results The benefit of the constant homogenous magneticafield, hasconstant shown to yield the same calibration as assuming calibration results as assuming a global constant homogenous magnetic field. The benefit of the a global constant homogenous magnetic field. The benefit of the proposed approach is that, under proposed approach is that, under magnetic disturbances, separate clusters of local magnetic proposed approach is that, under magnetic disturbances, separate clusters of local magnetic magnetic disturbances, separate clusters of local homogeneity can be automatically detected homogeneity can be automatically detected in themagnetic optimizer and can contribute to the self-calibration. homogeneity can be automatically detected in the optimizer and can contribute to the self-calibration. in thethe optimizer can contribute to the self-calibration. the global homogenous Under global and homogenous field assumption, some localUnder homogenous magnetic fields field (that Under the global homogenous field assumption, some local homogenous magnetic fields (that assumption, some local homogenous fields (that happen to outlier be different from the global field) happen to be different from the globalmagnetic field) may be rejected by the detector. happen to be different from the global field) may be rejected by the outlier detector. may be rejected by the outlier detector.
ym (a.u.)
ym (a.u.)
Figure homogenous field field using usingthe thefactory factory Magnitude themagnetometer magnetometer measurements in Figure3.3.Magnitude Magnitudeofofthe magnetometermeasurements measurements in in aa homogenous homogenous calibration parameters, Xsens’ Magnetic Field Mapper (MFM) calibration parameters, and in-lab selfMapper (MFM) calibration parameters, and and in-lab selfcalibration parameters, parameters,Xsens’ Xsens’Magnetic MagneticField Field Mapper (MFM) calibration parameters, in-lab calibration estimated under both homogeneous and and heterogeneous magnetic fields. calibrationparameters parameters estimated under bothboth homogeneous heterogeneous magnetic fields. self-calibration parameters estimated under homogeneous heterogeneous magnetic fields.
Figure 4. Magnitudeofofan an exampleinput input magnetometer measurement measurement sequence user Figure sequence used usedfor forin-lab in-labuser user Figure4.4.Magnitude Magnitude of anexample example inputmagnetometer magnetometer measurement sequence used for in-lab self-calibration under heterogeneous magnetic field conditions after correcting for the hard and soft self-calibration under heterogeneous magnetic field conditions after correcting for the hard and soft self-calibration under heterogeneous magnetic field conditions after correcting for the hard and soft iron effects. iron ironeffects. effects.
5.2. Case 2: On-Site User Self-Calibration The measured accelerometer, gyroscope, and magnetometer signal from the MTi-G-700 before self-calibration is shown in Figure 5. The integrated accelerometer and gyroscope errors before and after applying the self-calibration parameters in-sample are shown in Figures 6 and 7, respectively; please note that dashed lines in the cyan-magenta-yellow (CMY) color palette indicate x, y, and z errors before user self-calibration and their complementary colors in the red-green-blue (RGB) color palette
Drones 2018, 2, 6
15 of 20
Droneswith 2018,solid 2, 3 lines represent x, y, and z errors after user self-calibration, respectively. Noticeable reduction 14 of 19 Drones 2018, 2, 3 14 of 19
Acc Acc
2 2
500 500
1000 1000
1500 1500
2000 2000
2500 2500
3000 3000
10 10 8 8 500 500
1000 1000
1500 1500
2000 2000
2500 2500
3000 3000
3500 3500
2500 2500
3000 3000
3500 3500
2500 2500
3000 3000
3500 3500
Magnitude Gyr Magnitude Gyr
250 250
ω ω
y y(deg/s) (deg/s)
200 200 150 150 100 100 50 50 500 500
1000 1000
1500 1500
2000 2000
2500 2500
3000 3000
0 00 0
3500 3500
Mag Mag
1.5 1.5 1 1 0.5 0.5 0 0 -0.5 -0.5 -1 -1
500 500
1000 1000
1500 1500
2000 2000
Magnitude Mag Magnitude Mag
1.1 1.1 1.05 1.05 (a.u.) ymym(a.u.)
y (a.u.) ymm(a.u.)
12 12
6 60 0
3500 3500
Gyr Gyr
300 300 200 200 100 100 0 0 -100 -100 -200 -200 -300 -3000 0
Magnitude Acc Magnitude Acc
14 14
ya y(m/s ) ) (m/s a
15 15 10 10 5 5 0 0 -5 -5 -10 -10 -15 0 -15 0
ω
y (deg/s) ω y (deg/s)
2
ya (m/s 2 ) ya (m/s )
in errors can be perceived even after a few seconds of integration. Instead of reaching absolute errors 5.2. Case 2: On-Site Self-Calibration of 2 m/s and 1.9User deg when integrating the factory calibrated inertial signals, errors well below 0.4 m/s 5.2. Case 2: On-Site User Self-Calibration and 0.2 deg were achieved using the new set of calibration parameters. The measured accelerometer, gyroscope, and magnetometer signal from the MTi-G-700 before after performing the calibration, another trial wassignal captured where the sensor was TheImmediately measured accelerometer, gyroscope, and magnetometer from the MTi-G-700 before self-calibration is shown in Figure 5. The integrated accelerometer and gyroscope errors before and rotated freelyisand the navigation determined using the previously determined calibration self-calibration shown in Figurestates 5. Thewere integrated accelerometer and gyroscope errors before and afterparameters. applying the parameters in-sample are shown in Figures 6 and 7, respectively; Theself-calibration accumulated change in velocity and orientation errors in of Figures this trial (out-of-sample) are after applying the self-calibration parameters in-sample are shown 6 and 7, respectively; please note that dashed lines in the cyan-magenta-yellow (CMY) color palette indicate x, y, and z shown Figures 8 and lines 9. It can perceived from the figures that aftercolor performing user self-calibration please noteinthat dashed in be the cyan-magenta-yellow (CMY) palette indicate x, y, and z errors user self-calibration and their complementary colors in the red-green-blue (RGB) thebefore navigation solution out-of-sample were improved. Table 5 quantifies the errors for both trialscolor errors before user self-calibration and their complementary colors in the red-green-blue (RGB) color before and after applying the user self-calibration parameters. On-site self-calibration was capable palette with solid lines represent x, y, and z errors after user self-calibration, respectively. Noticeable palette with solid lines represent x, y, and z errors after user self-calibration, respectively. Noticeable of improving the can accuracy of the accelerometer gyroscope signal approximately 5% and 30%, reduction in errors be perceived even afterand a few seconds of by integration. Instead of reaching reduction in errors can be in perceived even after a few seconds of integration. Instead of reaching respectively. This results decimeter-level positioning accuracy after 10 s of dead-reckoning, and absolute errors of 2 m/s and 1.9 deg when integrating the factory calibrated inertial signals, errors absolute errorsRMSE of 2 m/s and 1.9 deg whenMore integrating thehave factory calibrated inertial signals, errors sub-degree in orientation overall. data could yielded a better calibration for the well below 0.4 m/s and 0.2 deg were achieved using the new set of calibration parameters. wellMTi-G-700 below 0.4but m/sthere andis0.2 deg were using the new set of calibration parameters. trade-off withachieved convenience.
1 1 0.95 0.95 0.9 0.9
-1.5 -1.5 0 0
500 500
1000 1000
1500 1500
2000 2000 Sample Sample
2500 2500
3000 3000
0.85 0.85 0 0
3500 3500
500 500
1000 1000
1500 1500
2000 2000 Sample Sample
Figure 5. signal from free hand motion used for on-site calibration. The red, green, and blue in Figure 5. Input Input signal from free for on-site on-sitecalibration. calibration. The red, green, Figure 5. Input signal from freehand handmotion motion used used for The red, green, andand blueblue in in the represents the x, respectively. theleft left column represents the x,x,y, y,y,and and components, respectively. thecolumn left column represents the andzzz components, components, respectively.
Integrated Accelerometer Errors (m/s) Integrated Accelerometer Errors (m/s)
22
Δx-before Δx-before Δy-before Δy-before Δz-before Δz-before Δx-after Δx-after Δy-after Δy-after Δz-after Δz-after
1.5 1.5 11 0.5 0.5 00
-0.5 -0.5 -1-1
-1.5 -1.5 -2-2 00
55
10 10
15 15
20 20 time time (s) (s)
25 25
30 30
35 35
Figure 6. errors in the integrated rotating frame before and after Figure 6. In-sample In-sample errors inin the integrated signalinina arotating rotating frame before Figure 6. In-sample errors the integratedaccelerometer accelerometer signal frame before andand afterafter on-site calibration. on-site calibration. on-site calibration.
33
Error in Rotation (deg) Error in Rotation (deg)
22 11 00
-1-1 -2-2
Roll-before Roll-before Pitch-before Pitch-before Yaw-before Yaw-before Roll-after Roll-after
-1.5 -2
0
5
10
15
20 time (s)
25
30
35
Figure 6. In-sample errors in the integrated accelerometer signal in a rotating frame before and after on-site Dronescalibration. 2018, 2, 6 16 of 20
Drones Drones2018, 2018,2,2,33
15 15ofof19 19
15 of 19 Immediately after 3 Immediately afterperforming performingthe thecalibration, calibration,another anothertrial trialwas wascaptured capturedwhere wherethe thesensor sensorwas was rotated and the navigation states were determined using the previously determined calibration rotated2freely freely and the navigation states were determined using the previously determined calibration Immediately after performing the calibration, another trial was captured where the sensor was parameters. The accumulated change in velocity and errors trial parameters. Theand accumulated change velocity andorientation orientation errorsof ofthis this trial(out-of-sample) (out-of-sample) 1 rotated freely the navigation statesinwere determined using the previously determined calibration are shown in Figures 8 and 9. It can be perceived from the figures that after performing user areparameters. shown in Figures 8 and 9. It can be perceived from the figures that after performing userselfselfThe accumulated change in velocity and orientation errors of this trial (out-of-sample) 0 calibration the navigation solution out-of-sample were improved. Table 5 quantifies the errors calibration the solution out-of-sample Table 5 quantifies errors for are -1shown in navigation Figures 8 and 9. It can be perceived were from improved. the figures that after performingthe user self-for Roll-before Pitch-before both trials before and after applying the user self-calibration parameters. On-site self-calibration was both trials before and after applying the user self-calibration parameters. On-site self-calibration was calibration the navigation solution out-of-sample were improved. Table 5 quantifies the errors for Yaw-before -2 Roll-after capable the accuracy of the accelerometer and gyroscope approximately capable ofimproving improving the accuracy ofthe theuser accelerometer andparameters. gyroscopesignal signalby by approximately 5% both of trials before and after applying self-calibration On-site self-calibration was5% Pitch-after Yaw-after -3 and 30%, respectively. This results decimeter-level positioning accuracy 10 ss of dead0 5 10 15 20 25 30 35 of improving the accuracy the accelerometer and gyroscope signal by after approximately 5% andcapable 30%, respectively. This resultsofin in decimeter-level positioning accuracy after 10 of deadtime (s) reckoning, and sub-degree RMSE in overall. More could and 30%, respectively. This results in decimeter-level positioning accuracy after yielded 10 s of adeadreckoning, and sub-degree RMSE in orientation orientation overall. More data data could have have yielded a better better reckoning, sub-degree RMSE in isorientation overall. Morebefore dataand could yielded a better calibration for the MTi-G-700 there with Figure In-sample errorsbut from integrating the gyroscope signal afterhave on-site calibration. calibration for7.and the MTi-G-700 but there istrade-off trade-off withconvenience. convenience. Figure 7. In-sample frombut integrating the gyroscope signal before and after on-site calibration. calibration for the errors MTi-G-700 there is trade-off with convenience. Error in Rotation (deg)
Drones 2018, 2, 3
2 2
Integrated Accelerometer Errors (m/s)
Integrated Accelerometer Errors (m/s) Integrated Accelerometer Errors (m/s)
2
1.5 1.5
1.5
1
1
1
0.5 0.5 0
0.5
0
-1.5 -1.5
Δz-after
0
-0.5 -0.5 -1 -1
Δx-before Δx-before Δy-before Δy-before Δx-before Δz-before Δz-before Δy-before Δx-after Δx-after Δz-before Δy-after Δy-after Δx-after Δz-after Δz-after Δy-after
-0.5 -1 -1.5
-2 -2
-2
5
5
5
10 10
10
15 15
15
time (s) time (s)
20 20 20
25 25
25
30
30 30
35
35 35
time (s)
Figure 8.8.8. Out-of-sample errors inin signal in rotating frame before and Figure Out-of-sample errors the integrated accelerometersignal signalin inaaaarotating rotating frame before and Figure Out-of-sample errors in the accelerometer signal in rotating frame before and Figure 8. Out-of-sample errors inthe theintegrated integratedaccelerometer accelerometer frame before and after on-site calibration. after on-site calibration. after on-site calibration. after on-site calibration.
Error in Rotation (deg) Error in Rotation (deg)
2 1 0
3
3
2
2
1 0
Error in Rotation (deg)
3
-1 -1 -2 -2 -3 -3
1 0 -1 -2 -3
Roll-before Roll-before Roll-before Pitch-before Pitch-before Pitch-before Yaw-before Yaw-before Yaw-before Roll-after Roll-after Roll-after Pitch-after Pitch-after Pitch-after Yaw-after Yaw-after Yaw-after 5 5 5
10
10 10
15
15 15
20
time (s)
time (s) time (s)
20 20
25
25 25
30
35
30 30
35 35
Figure 9. Out-of-sample errors from integrating the gyroscope signal before and after on-site
Figure 9.9.9.Out-of-sample errors from integrating the signal before and Figure Out-of-sample from integrating the gyroscope signal before and after on-site calibration. Figure Out-of-sampleerrors errors from integrating the gyroscope gyroscope signal before and after after on-site on-site calibration. calibration. calibration. Table 5. In-sample and out-of-sample RMSE of the input signals and estimated navigation quantities Table 5. In-sample and out-of-sample RMSE of the input signals and estimated navigation quantities Table 5.5.In-sample and RMSE before and after on-site user self-calibration. Table In-sample andout-of-sample out-of-sample RMSEofofthe theinput inputsignals signalsand andestimated estimatednavigation navigationquantities quantities before and after on-site user self-calibration. before and after on-site user self-calibration. before and after on-site user self-calibration. In-Sample Error Out-of-Sample Error In-Sample Out-of-Sample Error In-Sample Error Out-of-Sample Error Before After Error % Improv. Before After % Improv. 2 Before After % Improv. Before After % Improv. Before After % Improv. Before After %5.34 Improv. Acceleration (m/s ) 0.09 0.09 5.33 0.09 0.08 2)2 Acceleration (m/s 0.09 0.09 5.33 0.09 0.08 5.34 Angular Rate (deg/s) 0.21 0.14 35.38 0.21 28.11 Acceleration (m/s ) 0.09 0.09 5.33 0.09 0.15 0.08 5.34 Angular 0.14 35.38 0.21 0.15 28.11 Integrated Acceleration 1.19 0.22 81.62 1.26 58.47 AngularRate Rate(deg/s) (deg/s) (m/s) 0.21 0.21 0.14 35.38 0.21 0.52 0.15 28.11 Orientation (deg) 1.11 0.11 90.18 0.98 73.46 Integrated Acceleration (m/s) 0.22 81.62 1.26 0.52 58.47 Integrated Acceleration (m/s) 1.19 1.19 0.22 81.62 1.26 0.26 0.52 58.47 Velocity @ 10s (m/s) 0.76 0.20 73.33 1.96 0.15 92.13 Orientation (deg) 1.11 0.11 90.18 0.98 0.26 73.46 Orientation (deg) 1.11 0.11 90.18 0.98 0.26 73.46 Position @ 10s (m) 2.88 0.90 68.70 7.38 96.61 Velocity @@10s (m/s) 0.76 0.20 73.33 1.96 0.15 92.13 Velocity 10s (m/s) 0.76 0.20 73.33 1.96 0.25 0.15 92.13
Position 2.88 0.90 68.70 7.38 0.25 Position@@10s 10s(m) (m) 2.88 0.90 68.70 7.38 0.25 Gyroscope and Magnetometer Calibration (Accelerometer-Free Calibration) Gyroscope and Magnetometer Calibration (Accelerometer-Free Calibration)
96.61 96.61
Gyroscope and Calibration Calibration) Gyroscope andMagnetometer Magnetometer Calibration (Accelerometer-Free Calibration) In situations situations where not(Accelerometer-Free stop moving or moves erratically (e.g., continuous highIn where the theIMU IMUdoes does not stop moving or moves erratically (e.g., continuous dynamic movements), the gravity signal cannot be separated from the acceleration signal, therefore In where stop (e.g., continuous highhigh-dynamic the does gravity cannot or be separated from the acceleration signal, Insituations situationsmovements), wherethe theIMU IMU doesnot notsignal stopmoving moving ormoves moveserratically erratically (e.g., continuous highit becomes difficult to incorporate acceleration information into the self-calibration. However, the therefore it becomes difficult to incorporate acceleration information into the self-calibration. However, dynamic dynamicmovements), movements),the thegravity gravitysignal signalcannot cannotbe beseparated separatedfrom fromthe theacceleration accelerationsignal, signal,therefore therefore gyroscope and and magnetometer can still be still calibrated jointly using the proposed in the absencein the gyroscope can beinformation calibrated jointly using themethod proposed method ititbecomes difficult totomagnetometer incorporate into self-calibration. However, the becomes difficult incorporateacceleration acceleration information intothe the self-calibration. However, the of stillness (only Equations (6) and (7) will be active). A comparison between the manufacturer’s gyroscope and magnetometer can still be calibrated jointly using the proposed method in the absence gyroscope and magnetometer can still be calibrated jointly using the proposed method in the absence MFM calibration and the proposed calibration for on-site application is presented in Figure 10. The of ofstillness stillness(only (onlyEquations Equations(6) (6)and and(7) (7)will willbe beactive). active).AAcomparison comparisonbetween betweenthe themanufacturer’s manufacturer’s MFM MFMcalibration calibrationand andthe theproposed proposedcalibration calibrationfor foron-site on-siteapplication applicationisispresented presentedin inFigure Figure10. 10.The The
Drones 2018, 2, 6
17 of 20
the absence Drones 2018, 2, 3 of
stillness (only Equations (6) and (7) will be active). A comparison between 16 ofthe 19 manufacturer’s MFM calibration and the proposed calibration for on-site application is presented Drones 2018, 2, 3 16 of 19 RMSE between theRMSE two signals is 0.01 a.u. signals for the individual y,the andindividual z channels.x,For most practical in Figure 10. The between the two is 0.01 a.u. x,for y, and z channels. RMSE between twosets signals is forofthe individual x,results y,considered and can z channels. For most practical applications, thethe two of magnetometer results can be The main For most practical applications, the0.01 twoa.u. sets magnetometer be comparable. considered comparable. applications, the proposed two setsproposed of magnetometer results can bethe considered comparable. The main advantage of the method compared to MFM areMFM freedom to accelerate (i.e., rotate The main advantage of the method compared to are the freedom to accelerate (i.e., advantage of the proposed method compared to MFM are the freedom to accelerate (i.e., rotate quickly duringduring data capture) because acceleration is notisused resolving the vertical direction and rotate quickly data capture) because acceleration not for used for resolving the vertical direction quickly during capture) because acceleration is not for resolving the vertical direction the gyroscope is data calibrated simultaneously, therefore the used gyroscope dead-reckoning solution canand also and the gyroscope is calibrated simultaneously, therefore the gyroscope dead-reckoning solution can the gyroscope is calibrated simultaneously, therefore the gyroscope dead-reckoning solution can also be improved during this process. The out-of-sample rotation errors observed when using factory also be improved during this process. The out-of-sample rotation errors observed whenthe using the be improved during this process. Thegyroscope out-of-sample errors observed when using the factory calibration, manual calibration, and androtation magnetometer self-calibration parameters are factory calibration, manual calibration, and gyroscope and magnetometer self-calibration parameters calibration, manual calibration, and gyroscope andappeared magnetometer self-calibration parameters are summarized in Table 6. The proposed calibration the are summarized in Table 6. The proposed calibration appearedtotobebeslightly slightlyworse worsethan than the manual summarized in Table 6. The proposed calibration appeared to be slightly worse than the manual calibration, calibration, but but is is nevertheless nevertheless aa significant significant improvement improvement over over the the factory factory calibration calibration results results in in all calibration, butdirections is nevertheless a significant improvement over the equipment. factory calibration results in all three principal and can be performed without additional three principal directions and can be performed without additional equipment.
Figure 10. Comparison of magnetometer measurements in homogeneous field after applying Xsen’s Figure in aaa homogeneous homogeneousfield fieldafter afterapplying applyingXsen’s Xsen’s Figure10. 10.Comparison Comparison of of magnetometer magnetometer measurements measurements in MFM calibration and the proposed gyroscope and magnetometer magnetometer calibration. calibration. MFM calibration and the proposed gyroscope and MFM calibration and the proposed gyroscope and magnetometer calibration. Table 6.Out-of-sample Out-of-sampleRMSE RMSE gyroscope signal and integrated angular rate in on-site selfTable for for gyroscope signal and integrated angularangular rate in on-site Table6. 6. Out-of-sample RMSE for gyroscope signal and integrated rate inself-calibration on-site selfcalibration using only the and gyroscope and magnetometer. using only the gyroscope magnetometer. calibration using only the gyroscope and magnetometer. Factory Calibration Factory Calibration
Manual Calibration Manual Calibration
Self-Calibration Self-Calibration
ωx (deg/s) ωx (deg/s)
0.41 0.41
0.37 0.37
0.37 0.37
ωωy y(deg/s) (deg/s)
0.23 0.23
0.19 0.19
0.21 0.21
ωωz z(deg/s) (deg/s)
0.19 0.19
0.18 0.18
0.19 0.19
Roll Roll(deg) (deg)
2.87 2.87
0.55 0.55
0.54 0.54
Pitch Pitch(deg) (deg)
2.57 2.57
0.63 0.63
0.91 0.91
Yaw Yaw(deg) (deg)
1.81 1.81
0.42 0.42
0.81 0.81
6. Conclusions 6.6.Conclusions Conclusions The of UAVs for both commercial and consumer consumer applications arerising. rising. Theutilization utilizationand and variety of of UAVs for for bothboth applications are The utilization andvariety variety UAVs commercial and consumer applications are Although there of the UAVs they all use usethey an IMU IMU forattitude attitude Although thereisisathere alot lotof of diversity in the the architecture architecture all an for rising. Although isdiversity a lot of in diversity in the architecture of they the UAVs all use an IMU feedback control. Most of because the cost, payload, power restrictions MEMS-based feedback control. Most ofthe thetime time because of thebecause restrictions aaMEMS-based for attitude feedback control. Most of the of time of the and cost,power payload, and power restrictions IMU is adopted. Sensor calibration can add tremendous value to MEMS IMUs but timeis adopted. Sensor calibration cancalibration add tremendous MEMS IMUs but itit isis aa timeaIMU MEMS-based IMU is adopted. Sensor can add tremendous value to MEMS IMUs but consuming and expensive quality assurance procedure that need to be updated frequently. This consuming and expensive quality assurance procedure may need to be updated frequently. This it is a time-consuming and expensive quality assurance procedure that may need to be updated paper self-calibration 9-DoF MEMS MEMS IMU.for Incontrast paperpresented presented newtotal-system total-system user self-calibration for a 9-DoF IMU. In frequently. Thisaanew paper presented user a new total-systemroutine user self-calibration routine acontrast 9-DoF to calibrating the individual components separately, all sensors were jointly estimated to take to calibrating individual components separately, were jointly estimated tojointly take MEMS IMU. Inthe contrast to calibrating the individual components separately, all sensors were advantage of their correlations. It encompasses static inertial and magnetic information advantage of their correlations. It encompasses static and dynamic inertial and magnetic information estimated to take advantage of their correlations. It encompasses static and dynamic inertial and andapplies applies AUPT, CUPT, CUPT, and ZUPT ZUPT without without to the and AUPT, and external equipment to estimate estimate the calibration calibration magnetic information and applies AUPT, CUPT, and ZUPT equipment without external equipment to estimate parameters in post-processing. The method can enhance the quality of laboratory calibration and/or parameters in post-processing. The method can The method can enhance of laboratory calibration and/or the calibration parameters in post-processing. the quality of laboratory reduce this laborious process. Unlike the popular calibration method, it can recover reduce this laborious process. Unlike the popular multi-position calibration method, it can recover calibration and/or reduce this laborious process. Unlike the popular multi-position calibration uptoto42 42systematic systematicerrors errorssimultaneously simultaneously (including (including gyroscope scale up scale errors, errors, which which was waspreviously previously unobservable). This self-calibration method was designed to be robust against inhomogeneity unobservable). This self-calibration method was robust against inhomogeneityin inthe the ambient magnetic magnetic field. field. Results Results have have shown shown that that the the calibration calibration quality ambient quality does does not not deteriorate deteriorate significantly inin the the presence presence of of magnetic magnetic disturbances. disturbances. It significantly It is is aa suitable suitable method method for for on-site on-site selfself-
Drones 2018, 2, 6
18 of 20
method, it can recover up to 42 systematic errors simultaneously (including gyroscope scale errors, which was previously unobservable). This self-calibration method was designed to be robust against inhomogeneity in the ambient magnetic field. Results have shown that the calibration quality does not deteriorate significantly in the presence of magnetic disturbances. It is a suitable method for on-site self-calibration—for example it can be performed in tens of seconds prior to data acquisition and results have shown that dead-reckoning orientation error of 0.26 degrees over about half a minute is achievable. In the absence of useful accelerometer information, the gyroscope and magnetometer can still be calibrated simultaneously using the proposed method. This is a significant improvement over the manufacturer’s current on-site magnetometer self-calibration approach (i.e., Xsens’ MFM) because the sensor does not need to be moved slowly (simplifies data acquisition) and accuracy of the gyroscope model can also be improved, which means the strap-down integration error can be reduced. Future work will focus on a near real-time implementation of this self-calibration method for in-use applications. Acknowledgments: This research is funded by TRAcking in complex sensor systems (TRAX), under the EU’s Seventh Framework Programme (grant agreement No. 607400), and the Natural Science and Engineering Research Council (NSERC) of Canada. Valuable discussions with Alexander Young, Ignazio Aleo, Laurens Slot, Matteo Giuberti and Giovanni Bellusci are gratefully acknowledged. Author Contributions: Jacky C. K. Chow wrote the paper, developed the software, and conducted all the experiments. Jeroen D. Hol and Henk Luinge provided valuable feedback and revisions. Conflicts of Interest: The authors declare no conflict of interest.
References 1. 2. 3. 4. 5. 6. 7.
8.
9.
10. 11. 12.
13.
Brodie, M.; Walmsley, A.; Page, W. The static accuracy and calibration of inertial measurement units for 3D orientation. Comput. Methods Biomech. Biomed. Eng. 2008, 11, 641–648. [CrossRef] [PubMed] Chatfield, A.B. Fundamentals of High Accuracy Inertial Navigation; American Institute of Aeronautics and Astronautics: Reston, VA, USA, 1997. Hanse, J. Method for Calibrating an Inertial Measurement Unit. U.S. Patent US6,968,281 B2, 2005. Madgwick, S. Automated Calibration of an Accelerometers, Magnetometers and Gyroscopes—A Feasibility Study; Technical Report; x-io Technologies Limited: Bristol, UK, 2010. Peter, B. Development of an Automatic IMU Calibration System. Master’s Thesis, Swiss Federal Institute of Technology Zurich, Zürich, Switzerland, 2011. Panagas, P. Inertial Measurement unit Calibration System. U.S. Patent US8,583,392 B2, 2013. Kim, A.; Golnaraghi, M. Initial calibration of an inertial measurement unit using an optical position tracking system. In Proceedings of the PLANS 2004 on Position Location and Navigation Symposium, Monterey, CA, USA, 26–29 April 2004; pp. 96–101. Amirsadri, A.; Kim, J.; Petersson, L.; Trumpf, J. Practical considerations in precise calibration of a low-cost MEMS IMU for road-mapping applications. In Proceedings of the American Control Conference (ACC), Montreal, QC, Canada, 27–29 June 2012. Bancroft, J.; Lachapelle, G. Estimating MEMS gyroscope g-sensitivity errors in foot mounted navigation. In Proceedings of the Ubiquitous Positioning, Indoor Navigation, and Location-based Service (UPINLBS), Helsinki, Finland, 3–4 October 2012. Titterton, D.; Weston, J. Strapdown Inertial Navigation Technology; Peter Pergrinus Ltd.: London, UK, 1997. Finley, T.; Parker, P. Positioning System for Single or Multi-Axis Sensitive Instrument Calibration and Calibration System for Use Therewith. U.S. Patent US7,467,536 B2, 2008. Hwangbo, M.; Kanade, T. Factorization-based calibration method for MEMS inertial measurement unit. In Proceedings of the International Conference on Robotics and Automation, Pasadena, CA, USA, 19–23 May 2008. Beravs, T.; Beguš, S.; Podobnik, J.; Munih, M. Magnetometer calibration using kalman filter covariance matrix for online estimation of magnetic field orientation. IEEE Trans. Instrum. Meas. 2014, 63, 2013–2020. [CrossRef]
Drones 2018, 2, 6
14.
15. 16.
17. 18. 19. 20. 21. 22. 23. 24.
25. 26. 27. 28.
29. 30. 31. 32.
33.
34.
35.
19 of 20
Panahandeh, G.; Skog, I.; Jansson, M. Calibration of the accelerometer triad of an inertial measurement unit, maximum likelihood estimation and Cramér-Rao bound. In Proceedings of the International Conference on Indoor Positioning and Indoor Navigation, Zurich, Switzerland, 15–27 September 2010. Yang, J.; Wu, W.; Wu, Y.; Lian, J. Improved iterative calibration for triaxial accelerometers based on the optimal observation. Sensors 2012, 12, 8157–8175. [CrossRef] [PubMed] Wu, Z.; Wang, Z.; Ge, Y. Gravity based online calibration for monolithic triaxial accelerometers’ ain and offset drift. In Proceedings of the 4th World Congress on Intelligent Control and Automation, Shanghai, China, 10–14 June 2002. Lötters, J.; Schipper, J.; Veltink, P.; Olthuis, W.; Bergveld, P. Procedure for in-use calibration of triaxial accelerometers in medical applications. Sens. Actuators A Phys. 1998, 68, 221–228. [CrossRef] Renaudin, V.; Afzal, M.; Lachapelle, G. Complete triaxis magnetometer calibration in the magnetic domain. J. Sens. 2010, 2010, 1–10. [CrossRef] Hudák, J.; Blažek, J.; Kmec, F.; Draganová, K.; Lukáˇc, P. Multi-position static test of magnetometer from IMU. J. Electr. Eng. 2010, 61, 24–27. Gebre-Egziabher, D.; Elkaim, G.; Powell, J.D.; Parkinson, B. Calibration of strapdown magnetometers in magnetic field domain. J. Aerosp. Eng. 2006, 19, 87–102. [CrossRef] Renaudin, V.; Afzal, M.; Lachapelle, G. Magnetic perturbations detection and heading estimation using magnetometers. J. Locat.-based Serv. 2012, 6, 161–185. [CrossRef] Ali, A. Low-Cost Sensors-Based Attitude Estimation for Pedestrain Navigation in GPS-Denied Environment. Ph.D. Thesis, Department of Geomatics Engineering, University of Calgary, Calgary, AB, Canada, 2013. Shin, E.; El-Sheimy, N. A new calibration method for strapdown inertial navigation systems. Z. Vermess. J. 2002, 127, 1–10. Camps, F.; Harasse, S.; Monin, A. Numerical calibration for 3-axis accelerometers and magnetometers. In Proceedings of the International Conference on Electro/Information Technology, Windsor, ON, Canada, 7–9 June 2009. Hayal, A.G. Static Calibration of Tactical Grade Inertial Measurement Units; Geodetic Science Report No. 496; The Ohio State University: Columbus, OH, USA, 2010. Shin, E. Accuracy Improvement of Low Cost INS/GPS for Land Application; Department of Geomatics Engineering Report No. 20156; University of Calgary: Calgary, AB, Canada, 2001. Fong, W.; Ong, S.; Nee, A. Methods for in-field user calibration of an inertial measurement unit without external equipment. Meas. Sci. Technol. 2008, 19, 1–11. [CrossRef] Tedaldi, D.; Pretto, A.; Menegatti, E. A robust and easy to implement method for IMU calibration without external equipments. In Proceedings of the International Conference on Robotics and Automation, Hong Kong, China, 31 May–7 June 2014. Syed, Z.; Aggarwal, P.; Goodall, C.; Niu, X.; El-Sheimy, N. A new multi-position calibration method for MEMS inertial navigation systems. Meas. Sci. Technol. 2007, 18, 1897–1907. [CrossRef] Zhang, H.; Wu, Y.; Wu, W.; Wu, M.; Hu, X. Improved multi-position calibration for inertial measurement units. Meas. Sci. Technol. 2010, 21, 1–11. [CrossRef] Nieminen, T.; Kangas, J.; Suuriniemi, S.; Kettunen, L. An enhanced multi-position calibration method for consumer-grade inertial measurement units applied and tested. Meas. Sci. Technol. 2010, 21, 1–11. [CrossRef] Kok, M.; Hol, J.; Schön, T.; Gustafsson, F.; Luinge, H. Calibration of a magnetometer in combination with inertial sensors. In Proceedings of the 15th International Conference on Information Fusion, Singapore, 9–12 July 2012. Kok, M.; Schön, T. Maximum likelihood calibration of a magnetometer using inertial sensors. In Proceedings of the 19th World Congress of the International Federation of Automatic Control (IFAC), Cape Town, South Africa, 24–29 August 2014; Volume 47, pp. 92–97. Cheuk, C.M.; Lau, T.K.; Lin, K.W.; Liu, Y. Automatic calibration for inertial measurement unit. In Proceedings of the 12th International Conference on Control, Automation, Robotics, and Vision, Guangzhou, China, 5–7 December 2012. Renaudin, V.; Combettes, C. Magnetic, acceleration fields and gyroscope quaternion (MAGYQ)-based attitude estimation with smartphone sensors for indoor pedestrian navigation. Sensors 2014, 14, 22864–22890. [CrossRef] [PubMed]
Drones 2018, 2, 6
36. 37. 38.
39. 40. 41. 42. 43.
20 of 20
Li, Y.; Georgy, J.; Niu, X.; Li, Q.; El-Sheimy, N. Autonomous calibration of MEMS gyros in consumer portable devices. IEEE Sens. 2015, 15, 4062–4072. [CrossRef] Zhang, R.; Höflinger, F.; Reindl, L. Calibration of an IMU using 3-D rotation platform. IEEE Sens. 2014, 14, 1778–1787. [CrossRef] Ammann, N.; Derksen, A.; Heck, C. A novel magnetometer-accelerometer calibration based on a least squares approach. In Proceedings of the International Conference on Unmanned Aircraft Systems, Denver, CO, USA, 9–12 June 2015. Förstner, W.; Wrobel, B. Mathematical concepts in photogrammetry. In Manual of Photogrammetry, 5th ed.; American Society of Photogrammetry and Remote Sensing: Bethesda, MD, USA, 2004; pp. 15–180. Zhang, Z. Parameter estimation techniques: A tutoril with application to conic fitting. Image Vis. Comput. 1997, 15, 59–76. [CrossRef] Vydhyanathan, A.; Bellusci, G.; Luinge, H.; Slycke, P. The Next Generation Xsens Motion Trackers for Industrial Applications; Xsens Technologies B.V.: Enschede, The Netherlands, 2015; pp. 1–9. Mautz, R. Indoor Positioning Technologies. A habilitation thesis submitted to ETH Zurich for the Venia Legendi in Positioning and Engineering Geodesy. Ph.D. Thesis, ETH Zurich, Zürich, Switzerland, 2012. Xsens. Magnetic Field Mapper Documentation; Xsens Technologies B.V.: Enschede, The Netherlands, 2013. © 2018 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).