Magnetometer Calibration for Portable Navigation Devices in Vehicles

0 downloads 0 Views 485KB Size Report
an absolute heading from magnetic north by sensing the Earth's magnetic field. Magnetometer readings are usually affected by magnetic fields, other than the ...
This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination. IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS

1

Short Papers Magnetometer Calibration for Portable Navigation Devices in Vehicles Using a Fast and Autonomous Technique Ahmed Wahdan, Jacques Georgy, Walid F. Abdelfatah, and Aboelmagd Noureldin

mathematical integration [1], [2]. Magnetometer is another low-cost sensor that does not suffer from mathematical integration errors and can provide an absolute heading from magnetic north by sensing the Earth’s magnetic field. Heading can be obtained from the two leveled horizontal magnetometer signals as



Abstract—Using absolute navigation systems (such as global navigation satellite systems) has proved to be insufficient for indoor navigation or when navigating in urban canyons due to multipath and obstruction. This opened the gate widely for sensor-based navigation systems to be used, particularly after the development of low-cost microelectromechanical system sensors. Heading determination is one of the most important aspects for navigation solutions. Magnetometer is a low-cost sensor that can provide an absolute heading from magnetic north by sensing the Earth’s magnetic field. Magnetometer readings are usually affected by magnetic fields, other than the Earth’s magnetic field, and by other error sources; therefore, magnetometer calibration is required. In this paper, a technique is proposed for fast and automatic magnetometer calibration that requires small space coverage. There is no user involvement in the calibration process, and there are no required specific movements. The proposed technique performs 3-D-space magnetometer calibration using 2-D calibration equations with pitch and roll sectors. The 3-D-space is divided into a group of pitch and roll sectors. Inside each sector, 2-D calibration can be performed for the leveled magnetometer readings, which make the calibration process faster and requiring less data. This technique makes the magnetometer useful for determining heading in pseudo-tethered devices, particularly when used while driving. Pseudo-tethered navigation devices are tethered at normal operation, but they can change their orientation according to user needs such as portable vehicle navigation devices, which can be placed on the dashboard of a vehicle or attached to the wind shield. Index Terms—Electronic compass, magnetometer calibration, portable navigation.

I. I NTRODUCTION The use of a standalone global navigation satellite system (GNSS) has proved to be insufficient when navigating indoors or in urban canyons due to multipath or obstruction. Recent technological advances in low-cost microelectromechanical system (MEMS)-based sensors have enabled the development of sensor-based navigation systems such as inertial navigation systems (INS). Although MEMS sensors are low cost, lightweight, small size, and have low-power consumption, they have complex error characteristics. A lot of research work was conducted for modeling MEMS sensor errors, and different techniques were developed for calibration. Heading determination is one of the most important aspects of navigation solutions. Gyroscopes are inertial sensors that can provide the angular rate from which the heading can be calculated. Their problem is that their readings are drifting with time in addition to their accumulated errors due to Manuscript received September 9, 2013; revised December 23, 2013 and March 6, 2014; accepted March 12, 2014. The Associate Editor for this paper was R. I. Hammoud. A. Wahdan, J. Georgy, and W. F. Abdelfatah are with Trusted Positioning Inc., Calgary, AB T2L 2K7, Canada. A. Noureldin is with the Navigation and Instrumentation Research Group (NavINST), Department of Electrical and Computer Engineering, Queen’s University, Kingston, ON K7L 3N6, Canada, and also with the NavINST, Department of Electrical and Computer Engineering, Royal Military College of Canada/Queen’s University, Kingston, ON K7K 7B4, Canada. Color versions of one or more of the figures in this paper are available online at http://ieeexplore.ieee.org. Digital Object Identifier 10.1109/TITS.2014.2313764

ϕ = arctan

hy hx



±D

(1)

where hx and hy represent the two leveled measurements of the Earth’s magnetic field vector in a coordinate system attached to the compass body (or the device comprising the magnetometer). Angle ϕ is the angle the device makes with the Earth’s true north; it represents the device heading, and D represents the declination angle. The presence of electronic magnetometers and the availability of microcontrollers in low cost that can be programmed to perform a realtime calibration enabled researchers to implement real-time magnetometer calibration. However, the calibration always suffers from one of two major problems. The first problem is that the user is involved in the calibration process; he should perform specific movements. The second problem is that the calibration requires large space coverage. This makes the calibration process slow and not very efficient in navigation applications. The main goal of magnetometer calibration is to use magnetometers as a heading source. One of the old and well-known methods for calibrating compass is “compass swinging.” Compass swinging was used for compass calibration to be used for heading determination in marine [4] and aviation [5] when other absolute navigation information systems [such as global navigation system (GPS)] are not available. The procedure involves leveling and rotating the vehicle or the aircraft containing the compass through a series of known headings. The main drawbacks of using traditional compass swinging are that the method is limited to use with two-axis systems as it cannot be used to calibrate a 3-D compass [6], [7]. It also requires the user to be instructed to rotate the compass in certain predefined directions [6], which involve the user in the calibration process. Another approach for compass calibration that does not require an external heading source is known as ellipse/ellipsoid fitting. In this approach, calibration is done in the magnetic field domain depending on the fact that the error-free locus made by the compass when it makes full rotation in 2-D is a circle. When the compass is rotated in 3-D covering all possible orientations, the error-free locus forms a sphere [3], [6], [8]–[11]. The error-free locus is the locus made by the compass when rotated assuming there is no ferrous interference with the Earth’s magnetic field. In some implementations, it is assumed that if a 2-D compass is rotated in normal operation conditions in 2-D (in the presence of ferrous interference), the locus of its readings forms an ellipse, whereas it forms an ellipsoid in 3-D [3], [6], [8], [10], [12], [13]. This is due to the perturbation effects caused by ferrous materials, such as biases (hard iron effects) in magnetometer readings, scale factors, soft iron effects . . ., etc. Either geometric or algebraic methods can be used to best fit the magnetometer measurements to the assumed manifold such as fitting the measurements to an ellipse in 2-D or to an ellipsoid in 3-D. A mathematical approach for ellipsoid fitting to calculate calibration parameters in the magnetic field domain is proposed in [6], [14], and [15]. In [7], a geometric method based on an iterative

1524-9050 © 2014 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination. 2

IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS

maximum-likelihood estimator best fits the device’s measurements to an ellipsoid manifold. Another method is proposed by Caruso [3], where a full rotation of the leveled sensor in the horizontal plane is required. Using measurements collected during the full rotation of the leveled sensor in the horizontal plane exploits the minimum and maximum values to estimate the scale factors and biases of the compass in 2-D. The main drawback of the aforementioned approaches is that they require the device having the magnetometers to rotate at least 360◦ in a horizontal plane in the case of 2-D covering a big portion of an ellipsoid in 3-D to define the ellipsoid eccentricity and rotation [7], [16]. This drawback either makes the calibration process slow, or it may require the user to perform certain movements (such as moving the device in “figure eight” if the device is portable) or rotating the vehicle for one complete loop to cover 360◦ . The other drawback in the latter scenarios is that the user becomes involved in the calibration process, which is not efficient in daily life scenarios [7], [16]. The proposed technique does not require the user to get involved in the calibration process; therefore, the technique is fully automatic. Moreover, the technique is fast as it can perform magnetometer calibration with very small space coverage. The proposed calibration technique is fast in terms of how quick it can perform the automatic calibration (without user involvement in the calibration process) without covering a huge part of the 3-D space. Having a reliable calibration depending on very small space coverage is considered fast compared with other calibration methods that require a large coverage such as 270◦ –360◦ , which will need more time to collect data to automatically calibrate. The word “fast” here does not imply a fast algorithm in terms of performance and computational efficiency, although the proposed technique is computationally efficient and is implemented in real time. The technique is very suitable to perform magnetometer calibration in pseudo-tethered devices such as portable devices used in navigation while driving. To assure the quality of the calibration, two quality check routines are developed. The first routine is called directly after the calibration to decide. The other quality check is called periodically after calibration to consider the case if the magnetic environment is changed while driving. In this paper, three frames are used. These are as follows: 1) the device frame, which is the frame of the device comprising the magnetometer; 2) the platform frame, which is the frame of the moving platform; and 3) the local level frame, which is also known as the local geodetic or navigation frame [2], [17], for example, North-East-Down.

II. M AGNETOMETER E RROR S OURCES Magnetometer readings are usually affected by magnetic fields other than the Earth’s magnetic field; the effects of these fields are not negligible; thus, they result in an inaccurate heading measurement due to perturbed magnetometer readings [18]. The following are some examples of error sources and their effects on magnetometer readings. 1) Hard iron distortion that is considered a constant bias added to each axis of sensor output. 2) Sensitivity errors that arise due to different sensitivities of magnetometer sensors in different axes. 3) Soft iron effect arises from the interaction of Earth’s magnetic field and any magnetically soft iron material such as nickel or iron. In most cases, hard iron distortion has a much larger contribution to the total error than soft iron [10]. 4) Temperature can affect the magnetic sensors causing inaccurate heading determination [9].

Fig. 1.

Pseudo-tethered device placed on vehicle dashboard.

5) Other error sources may be due to different factors such as sensor material or sensor fabrication that can cause errors in the magnetometer readings. In addition, the magnetometer readings can be affected by sensor noise that also adds other source of error.

III. FAST M AGNETOMETER C ALIBRATION FOR P ORTABLE D EVICES U SED IN D RIVING NAVIGATION S CENARIOS In some navigation applications, the device can change its pitch and roll angles frequently, and sometimes with relatively large values. This happens in pseudo-tethered navigation devices, such as in vehicle navigators, which can be temporarily fixed to the vehicle’s dashboard or windshield, where their orientation is always flexible according to the user’s most comfort. Fig. 1 shows an example of a pseudo-tethered device that is tethered temporarily in the dashboard of a car, for example, a smartphone. In this proposed technique, magnetometer calibration is performed in 3-D-space using 2-D calibration equations together with pitch and roll angles to divide the 3-D-space into a group of pitch and roll ranges. A certain range of pitch and a certain range of roll can form what is called a “pitch–roll sector.” The pitch and roll boundaries for each sector can be defined according to an experimental analysis. Two-dimensional calibration equations can then be applied on leveled magnetometer readings in each sector. Using 2-D calibration in a pitch–roll sector makes the calibration faster and requires less data collection. The calibration parameters are stored for each sector and used directly whenever the device is placed in this pitch–roll sector. By this technique, there is no need to perform a full 3-D calibration when using pseudo-tethered devices. The developed magnetometer calibration technique in this paper is capable of calculating different calibration parameters to correct for all different error sources that affect magnetometers. However, biases and scale factors in magnetometer readings are the only calibration parameters that are calculated and calibrated for in this research paper. They are assumed to be the most effective errors such that if they are calibrated accurately, the calibrated magnetometer readings can be used reliably for heading determination. At the same time, less space coverage during calibration and simpler calibration equations will be required. The following inputs are required for performing fast magnetometer calibration with the proposed technique: i) Raw magnetometer readings. Raw magnetic field readings are collected prior to the calibration and used as inputs to the calibration algorithm used.

This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination. IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS

ii) External heading information. The external heading used during calibration is acquired from an integrated navigation solution that integrates accelerometers, gyroscopes, and a barometer with GPS [19], [20]. The external heading is only required during calibration, whereas after calibrating the magnetometer, magnetometer heading can be used as an independent heading source. iii) Reference horizontal magnetic field. Reference horizontal magnetic field for a certain region in Earth at which calibration is performed can be acquired according to any Earth magnetic model. In this paper, the international geomagnetic reference field (IGRF) model: the eleventh generation [21] is used. GPS can be used to calculate the initial position of the device to be able to get the Earth’s magnetic field components from the IGRF model, where only the initial position is used to access the model for certain region on Earth. The IGRF model information can be stored in the device memory and accessed once, after the initial position is known using GPS. iv) Pitch and roll angles. They are used for leveling magnetometer readings and for detecting pitch–roll sectors. They are acquired using an integrated navigation solution. In order to acquire the Earth’s magnetic field information, the position of the device on Earth in terms of latitude, longitude, and altitude are required. The position can be obtained using any absolute navigation information updates or an integrated navigation system. The magnetic field information is nearly constant on a certain region on Earth. Therefore, in this paper, the Earth’s magnetic field information acquired from the Earth’s magnetic field model is not updated, except if the device having the magnetometer moves a very long distance. The magnetometer heading is always the device heading. In some cases, the heading of the device is not the same as the heading of the platform (have a heading misalignment). If there is a heading misalignment, and if an absolute navigational information source is used to obtain the platform heading, this heading will need to be compensated for the misalignment. Solving the heading misalignment problem is considered a separate research problem, and it is out of the scope of this paper; it is assumed compensated using another module. In a pseudo-tethered device used while driving, changing the device orientation can change the effect of the vehicle magnetic field on the device axes; therefore, a recalibration is required when a misalignment change is detected. The proposed technique requires the pitch and roll angles of the device comprising the magnetometer to perform calibration. The pitch and roll angles may be calculated from either gyroscopes as in [8] and [2], or from accelerometer readings or averaged accelerometers [2], or from integrated navigation solutions [2]. Knowing different heading values and the horizontal magnetic field, together with leveled magnetometer 2-D readings in each pitch–roll sector, a mathematical calculation or an estimation approach can be used to get calibration parameters for each pitch–roll sector. The raw 2-D magnetometer leveled readings are represented as functions of calibration parameters in a horizontal plane, together with the horizontal Earth’s magnetic field acquired according to the Earth’s magnetic field model used. Least square (LS) is used to solve for 2-D calibration parameters using at least two heading values with pitch and roll used for leveling magnetometer readings. After 2-D calibration parameters are calculated for a pitch–roll sector, whenever the device moves so that its pitch and roll falls in this pitch–roll sector, calibration parameters are applied directly to the 2-D leveled magnetometer readings. The main application that can use this technique that applies 2-D magnetometer calibration equations in pitch–roll sectors, includes heading determination using pseudo-tethered devices (such as using a

3

device that can be placed on a car’s dashboard for car navigation or personal navigators or smartphones used in pseudo-tethered states). The following equations show how the proposed technique can make use of external heading information to perform 3-D-space magnetometer calibration using 2-D calibration equations and pitch–roll sectors: hx = hh cos(ϕ)

(2)

hy = hh sin(ϕ)

(3)

where hx and hy are the two horizontal Earth’s magnetic field components in device frame. Angle ϕ represents the heading angle after subtracting the declination angle. Symbol hh represents the reference horizontal magnetic field acquired according to the IGRF model. Theoretically, the two horizontal readings from the magnetometer should be equal to hx and hy , but due to external magnetic fields and other perturbation sources mentioned earlier, the magnetometer readings are perturbed, and they do not represent the true Earth’s magnetic field components. Assuming that the reference magnetic field components are modeled as hx =

hx − bx γx

(4)

hy =

hy − by . γy

(5)

In (4) and (5), bx and by represent the bias errors in the horizontal axes X and Y , respectively. γx and γy represent the scale factor, whereas hx and hy are either the magnetometer 2-D readings sensed in a horizontal plane or they are the leveled 2-D readings. By substituting (4) and (5) in (2) and (3) and replacing ϕ by ϕexternal , this indicates that the external heading information used in calibration is acquired from an integrated navigation solution that integrates accelerometers, gyroscopes, and a barometer with GPS. Thus hx − bx = hh cos(ϕexternal ) γx



hx hh



hy hh

1 γx 1 γy

 

hy − by = hh sin(ϕexternal ) γy 1 − hh +

1 hh





bx γx by γy



= cos(ϕexternal )

 = sin(ϕexternal ).

The unknowns can be represented as



A=

1 γx





,

B=

bx γx



,

(6)



C=

1 γy



(7)

 ,

D=

by γy

 . (8)

Using the LS approach for solving the previous equations using N readings, in which the heading values are unique enough to solve the system



A=

A B







,

hx1  h ⎢ 1 ⎢ x2 H1 = . hh ⎣ .. hxN

X2 =



−1 −1 ⎥ .. ⎥ ⎦, . −1

C D





hy1  h ⎢ −1 ⎢ y2 H2 = . hh ⎣ .. hyN

(9)



−1 −1 ⎥ .. ⎥ ⎦ . −1

(10)

This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination. 4

IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS

Fig. 2. Block diagram describing the calibration technique.





cos(ϕexternal1 ) ⎜ cos(ϕexternal2 ) ⎟ ⎟, Y1 = ⎜ .. ⎝ ⎠ . cos(ϕexternaln )





sin(ϕexternal1 ) ⎜ sin(ϕexternal2 ) ⎟ ⎟. Y2 = ⎜ .. ⎝ ⎠ . sin(ϕexternaln ) (11)

Subscript n represents the number of readings; multiple readings are collected for each heading direction. Thus

 

H1 ∗ X 1 = Y 1 , H1T

∗ H1

 

X1 = H1T

H 2 ∗ X 2 = Y2

(12)

∗ Y1

H2T ∗ H2 X2 = H2T ∗ Y2

(13)



−1



−1

X1 = H1T ∗ H1 X2 = H2T ∗ H2

∗ H1T ∗ Y1 ∗ H2T ∗ Y2 .

(14)

By solving the LS equation, the biases and scale factors can be calculated as γx =

1 , A

bx =

B , A

γy =

1 , C

by =

D . C

(15)

Calibration parameters are saved for each sector after being calculated, so that if the device is placed or held in a sector, in which 2-D calibration parameters were calculated previously, calibration can be performed directly. In each pitch–roll sector detected, the method needs heading readings from two unique directions to perform accurate calibration and calculate biases and scale factors. By experimental trials, the minimum absolute difference between the two heading values required in each pitch–roll sector is set empirically to 70◦ –80◦ . Two heading directions separated by at least 70◦ span is the minimum that the method requires (one heading turn). The data are collected at a high rate that reaches 20 Hz on most smartphones and navigation devices, which enable taking multiple readings in each heading direction. Having multiple readings in each heading direction will prevent taking a noisy reading and using it to build the calibration. Moreover, noise is not the major problem in magnetometer signals; it is anomalies that can cause a wrong calibration; that is why quality checks are performed.

For each heading direction, multiple samples can be collected to give a smoother solution and to avoid taking a reading affected by noise due to the use of a low-cost sensor. Fig. 2 shows a block diagram describing the proposed calibration technique. The inputs and different steps are shown, including leveling magnetometer readings, pitch–roll sector detection, performing 2-Dspace calibration, and saving parameters. To assure the quality of the calibration, two quality check routines are developed. The first routine, i.e., “postcalibration check routine,” is used directly after the calibration to decide whether the calculated calibration parameters are correct or not. The second quality check, i.e., “periodic check routine,” is used periodically after calibration to consider the case if the magnetic environment is changed. Three factors are used for assessment in these routines. 1) Scale Factor check Scale factor calculated for magnetometer calibration always have a minimum and a maximum value, which can be determined statistically after many trials. Therefore, upper and lower bounds are set for the scale factor value and can be used as thresholds. If sf_lowerThreshold < sf < sf_upperThreshold, then the calibration is killed, and the recollection is required. Threshold values are used according to experimental trials. 2) Signal check In this check, the calibrated magnetometer readings are compared with the Earth’s magnetic field components acquired from any Earth magnetic field model. The comparison is made between the horizontal Earth’s magnetic field from the model and the horizontal leveled magnetometer readings. If the difference between the horizontal magnetic field of the calibrated signal and the reference horizontal field from the IGRF model is greater than 50–100 mG based on the sensor used, the calibration is killed. 3) Heading check A comparison is made between the heading calculated from the calibrated readings and the heading from the external heading information source if available. If the difference between the magnetometer heading after calibration and the reference heading from the integrated INS/GPS is greater than 20◦ , the calibration is killed. Choosing 20◦ gave some flexibility since the heading from magnetometer can be affected by some signal noise that can affect the heading during the heading check period.

This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination. IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS

5

Fig. 3.

Vehicle heading calculated using calibrated magnetometer.

Fig. 4.

Zoomed section of vehicle heading calculated using calibrated magnetometer.

The “periodic check routine” only uses the signal check. It does not include the scale factor check because it will be redundant since the scale factor check is applied earlier when the parameters were calculated. It does not include the heading check as well, since the heading is coming from the integrated solution that uses the magnetometer heading as an update, thus using this heading to assess the magnetometer heading will be a kind of double feedback. IV. E XPERIMENTAL R ESULTS The performance of the developed magnetometer calibration technique is examined with two road test experiments using a portable device that is attached to a cradle on a car’s dashboard. The user changes the device’s pitch and roll during the trajectory. In the following experiment, a low-cost prototype unit consisting of a six-degree-of-freedom inertial unit from Invensense (i.e., triaxial gyroscopes and triaxial accelerometers) (MPU-6050), triaxial magnetometers from Honeywell (HMC5883L), barometer from Measurement Specialties (MS5803), and a GPS receiver from u-blox (LEA-5T) was used. Data are collected at each time epoch according to the frequency the sensors are working with.

In this experiment, the device having the magnetometer is assumed to be aligned to the human body having zero heading misalignment. Its pitch and roll are changing during driving. Fig. 3 shows the heading of the conducted driving trajectory and demonstrates how switching between pitch–roll sectors is made. Both data collection and heading after magnetometer calibration are shown in each pitch–roll sector. For more demonstrations, a zoomed section of the heading plot is shown in Fig. 4, showing the magnetometer heading before calibration as well. It should be noted that the discontinuity of the drawn curves in the figures is due to the cyclicity of the heading and roll values, where their range is from −180◦ to 180◦ . The mean error between the reference heading and the calculated heading from magnetometer is used as a measure to assess the calibration quality in this experiment. The mean error before calibration was 40◦ , and it became 2.9◦ after calibration. The mean error is used just for simplicity and to avoid taking the effect of noise into consideration when assessing the heading accuracy. The drifts in INS heading during GPS absence can be relatively large. Therefore, having another source of heading whose absolute value (indicated by the mean error in our experiments) is around the

This article has been accepted for inclusion in a future issue of this journal. Content is final as presented, with the exception of pagination. 6

IEEE TRANSACTIONS ON INTELLIGENT TRANSPORTATION SYSTEMS

correct heading, even if it is noisy, it is a useful heading update to the integrated solution to help cover for inertial drift, whereas the INS will smooth out the noise in this heading update. Moreover, heading graphs with zoomed sections are provided to show how the heading of the calibrated magnetometer is reliable. V. C ONCLUSION A magnetometer, when calibrated accurately, represents one of the most efficient useful sources that can provide absolute heading information relative to the Earth’s magnetic north. The heading calculated using magnetometer can be easily converted to be relative to the Earth’s north by adding or subtracting the declination angle according to the geographical area where the heading is calculated. The heading accuracy after calibration is very good given that the magnetometer used is a low-cost sensor, and given that the device comprising the magnetometer is not tethered, and it is a portable device that either can move freely or be placed on seat or in a cradle where it is affected by jittering and vibrations. Given all these challenges, the mean error of the heading largely decreased after calibration. Moreover, the calibrated magnetometer heading is not used as a sole heading source; it is used as an update to an integrated navigation solution to prevent long-term inertial drift during outages. The calibration method proposed is competitive when compared with other methods as in [6]. The proposed technique uses all available navigation information from different navigation sensors and/or systems included in most modern navigation devices to perform automatic calibration in real time and with the minimum space coverage. No specific movements are required from the user to perform the calibration such as some other calibration techniques from literature. Moreover, quality check routines are developed to check the calibration performance to make sure that the magnetometer can be used as a reliable source for heading calculation in navigation applications. R EFERENCES [1] M. H. Afzal, V. Renaudin, and G. Lachapelle, “Use of Earth’s magnetic field for mitigating gyroscope errors regardless of magnetic perturbation,” Sensors, vol. 11, no. 12, pp. 11390–11414, 2011. [2] A. Noureldin, T. B. Karamat, and J. Georgy, Fundamentals of Inertial Navigation, Satellite-based Positioning and their Integration. New York, NY, USA: Springer-Verlag, 2013. [3] M. J. Caruso, “Applications of magnetoresistive sensors in navigation systems,” Progr. Technol., vol. 72, pp. 159–168, 1998. [4] N. Bowditch and J. I. Bowditch, American Practical Navigator. Washington DC, USA: US Government Printing Office, 1826.

[5] LCR-92 Attitude Heading Reference System, F. LITEF Corporation, Germany, 2001. [6] D. Gebre-Egziabher, G. H. Elkaim, J. D. Powell, and B. W. Parkinson, “Calibration of strapdown magnetometers in magnetic field domain,” J. Aerosp. Eng., vol. 19, no. 2, pp. 87–102, 2006. [7] J. Vasconcelos, G. Elkaim, C. Silvestre, P. Oliveira, and B. Cardeira, “A geometric approach to strapdown magnetometer calibration in sensor frame,” in Proc. Navigat., Guid. Control Underwater Veh., 2008, pp. 172–177. [8] M. J. Caruso, “Applications of magnetic sensors for low cost compass systems,” in Proc. IEEE Position Location Navigat. Symp., 2000, pp. 177–184. [9] M. J. Caruso, T. Bratland, C. H. Smith, and R. Schneider, “A new perspective on magnetic field sensing,” Sens.-Peterborough, vol. 15, pp. 34–47, 1998. [10] D. Gebre-Egziabher, Design and Performance Analysis of a Low-Cost Aided Dead Reckoning Navigator. Stanford, CA, USA: Stanford Univ. Press, 2004. [11] F. Camps, S. Harasse, and A. Monin, “Numerical calibration for 3-axis accelerometers and magnetometers,” in Proc. IEEE Int. Conf. EIT, 2009, pp. 217–221. [12] V. Petrucha, P. Kaspar, P. Ripka, and J. M. Merayo, “Automated system for the calibration of magnetometers,” J. Appl. Phys., vol. 105, no. 7, pp. 07E704-1–07E704-3, Apr. 2009. [13] C. Foster and G. Elkaim, “Extension of a two-step calibration methodology to include nonorthogonal sensor axes,” IEEE Trans. Aerosp. Electron. Syst., vol. 44, no. 3, pp. 1070–1078, Jul. 2008. [14] R. Alonso and M. D. Shuster, “Complete linear attitude-independent magnetometer calibration,” J. Astronaut. Sci., vol. 50, no. 4, pp. 477–490, 2002. [15] V. Y. Skvortzov, H.-K. Lee, S. Bang, and Y. Lee, “Application of electronic compass for mobile robot in an indoor environment,” in IEEE Int. Conf. Robot. Autom., 2007, pp. 2963–2970. [16] Q. Zhang, Q. Gao, Y. Chen, and X. Huang, “A novel magnetic compass calibration method based on improved ellipse model,” in Proc. ICICIP, 2010, pp. 11–15. [17] P. Aggarwal, Z. Syed, A. Noureldin, and N. El-Sheimy, MEMS-Based Integrated Navigation. Norwood, MA, USA: Artech House, 2010. [18] V. Renaudin, M. H. Afzal, and G. Lachapelle, “Complete triaxis magnetometer calibration in the magnetic domain,” J. Sens., vol. 2010, pp. 967245-1–967245-10, 2010. [19] Q. Ladetto, V. Gabaglio, and B. Merminod, “Two different approaches for augmented GPS pedestrian navigation,” in Proc. Int. Symp. Location Based Services Cellular Users, Locellus, 2001. [20] A. Solimeno, “Low-cost INS/GPS data fusion with extended Kalman filter for airborne applications,” M.S. thesis, Universidade Technica de Lisboa, Lisbon, Portugal, 2007. [21] C. Finlay, S. Maus, C. Beggan, T. Bondar, A. Chambodut, T. Chernova, A. Chulliat, V. P. Golovkov, B. Hamilton, M. Hamoudi, R. Holme, G. Hulot, W. Kuang, B. Langlais, V. Lesur, F. J. Lowes, H. Lühr, S. Macmillan, M. Mandea, S. McLean2, C. Manoj, M. Menvielle, I. Michaelis, N. Olsen, J. Rauberg, M. Rother, T. J. Sabaka, A. Tangborn, L. Tffner-Clausen, E. Thébault, W. P. Thomson, I. Wardinski, Z. Wei, and T. I. Zvereva, “International geomagnetic reference field: The eleventh generation,” Geophys. J. Int., vol. 183, no. 3, pp. 1216–1230, Dec. 2010.