A low-cost IMU/GPS position accuracy experimental study using extended kalman ﬁlter data fusion in real environments

. In a three-dimensional environment, the navigation of a vehicle in airspace, terrestrial space, or maritime space presents complex aspects concerning the determination of its position, its orientation, and the stability of the processing of the asynchronous data coming from the various sensors during navigation. In this context, this paper presents an experimental analysis of the position accuracy estimated by a low-cost inertial measurement unit coupled, by the extended Kalman data fusion algorithm, with a system of absolute measurements of a positioning system received from a GPS which designates the global positioning system. The di ﬀ erent scenarios of the experimental study carried out during this work concerned three tests in a real environment, such as the navigation in a course inside the city of Rabat / Morocco with a moderate speed, a section on the highway at a speed of 120 Km / h and a circular path around a roundabout. The experimental results proved that the low-cost sensors studied are a good candidate for civil navigation applications.


Introduction and motivation
Since his existence, man has always felt the need to locate and move. For this reason, he has shown his ability to find localization methods starting with simple methods to more complex modern techniques, from the most elementary processes to the most advanced technologies. However, these methods used did not allow great precision in terms of angles, distances, and speeds. Currently, thanks to sensors making it possible to refine the precision of the estimation of position, speed, and attitude, all unmanned vehicles are increasingly popular and widely used for military, industrial, agricultural, biomedical or rescue operations, etc... [1][2][3] To effectively control an unmanned vehicle, knowledge of position, speed, and attitude (orientation) are required. This is usually provided by a navigation system [4]. These high-quality military or commercial navigation systems are very expensive [5,6]. This motivates the development of a navigation system using low-cost sensors. Typical inertial sensors that are used for navigation purposes are accelerometers, gyroscopes, and magnetometers [7,8]. The assemblies of these microelectromechanical components or sensors constitute an (IMU) applied inertial measurement unit. In addition, satellite navigation systems (GNSS) are often used such as GPS (American), GLONASS (Russian), GALILEO (European), and Beidou (Chinese) to reduce cumulative errors along the navigation path [9,10]. * e-mail: elfatimi.az@gmail.com * * e-mail: addaim@gmail.com * * * e-mail: zouhair@emi.ac.ma A traditional inertial unit equipped with accelerometers, gyroscopes, and magnetometers can be too bulky or too expensive. From this perspective, microelectromechanical systems (MEMS) technology, based on the combination of electronics and mechanics in a microscopic scale, can be effective in reducing size and cost. But, unfortunately, the accuracy of the accelerometric, gyrometric, and magnetometric measurements provided by MEMS cannot match that obtained using a high-range inertial unit [11,12]. It is, therefore, necessary to implement additional techniques to compensate for the quality of the measurements and to achieve a better estimate of position, speed, and attitude [13,14].
Typical inertial sensors that are used for navigation purposes are accelerometers, gyroscopes, and magnetometers. The inertial measurement unit (IMU) is mainly composed of the LSM6DS3 6DOF sensor (accelerometer and gyroscope) and an AM09918 3DOF magnetic compass (magnetometer). Figure 1 shows the fundamental subsystems of a typical motion control system, which is subdivided into three parts namely: [15] • Guidance system intended to plan the mission and generate trajectories for the control subsystem; • Control system is used to control the different actuators according to the instructions defined at the input; • Navigation system provides all position, speed and attitude information. It gives feedback to the control system to check if the setpoints are reached and to the guidance system to redefine the trajectories if necessary. Figure 1: Functional view showing the coupling between the navigation system and the other subsystems of a motion control system [15].
The basic architecture of a classical inertial navigation system is illustrated in figure 2 [16].  [16].
The aim of this paper is to explain the data fusion performance from low-cost sensors using the extended Kalman filter.. This document discusses, after the introduction, the various frames adopted mainly in navigation, then, the technical characteristics of each sensor used, then, the fourth section shows the main lines of the modeling of the sensors and the principle of Kalman filtering. At the end of this article, an experimental study of the accuracy of the position in different scenarios such as navigation inside the city, on the highway, and in a circular route.

Basics of navigation
In this section, a set of conventional frames are chosen considering the spatial and temporal domain in which the vehicle will move to determine the position, speed, and attitude of the mobile vehicle. The different references systems used are described below [15].

Nomenclature
Throughout this article, a set of notations and symbols will be adopted. Table 1 summarizes all these notations and symbols used.

ECI frame
The Earth Centered Inertial ECI coordinate system is an orthogonal inertial coordinate system {i} = {x i , y i , z i }. This reference frame is placed in the center of the Earth and does not rotate with the Earth. The (xoy) plane coincides with the equatorial plane. The direction ox is oriented towards the vernal equinox. The (oz) axis aligns with the earth's axis of rotation. The future notation of this frame will be defined by the index i.

ECEF frame
The Earth-Centered, Earth-Fixed ECEF {e} = {x e , y e , z e } frame is found in the center of the earth at the same position as the ECI frame. However, this frame rotates with the earth. Its (ox) axis is aligned with the prime meridian (Greenwich) on the equatorial plane and its (oz) axis is on the same axis as that of the earth's rotation. The ECEF reference will be defined by the index e. This frame rotate around the (oz) axis at the same speed as the earth. This speed is given by the following relation:

N-E-D frame
The North East Down (NED) frame {n} = {x n , y n , z n } is defined relative to the Earth's reference ellipsoid (World Geodetic System 1984). The z-axis points downward perpendicularly to the tangent plane of the ellipsoid, and the x-axis points towards true north. The y-axis point towards east to complete the orthogonal coordinate system. This frame is equivalent to the N-E-D (North-East-Down) frame used in aviation. It rotates jointly with the earth. It is interesting to note that in contrary of the avionics applications which involve movements over great distances, robotics applications involve small local movements around the tangential reference frame. For this reason, this frame can often be considered fixed for these applications. In this document, the tangential coordinate system will be defined by the index n.

Autonomous vehicle frame
As shown in figure 3, the reference frame attached to the body {b} = {x b , y b , z b } is a movable and rotating coordinate frame which is fixed to the body of vehicle. The x-axis points to the direction of travel, the y axis is perpendicular to the x-axis and points to the right side, and the z-axis is perpendicular to the (xoy) plane and points to the center of the ECI frame. For local navigation, of the order of a few hundred meters, the 3D position and attitude of the vehicle are expressed in the inertial frame approximated by {n}.

Inertial measurement unit-IMU
The inertial measurement unit usually contains three accelerometers, three gyroscopes, and three magnetometers which are installed orthogonally. The principle diagram is given in figure 2.

LSM6DS3 Acceleorometer and gyroscope
The LSM6DS3 from STMicroelectronics company is a boxed system with a 3D accelerometer and digital 3D gyroscope operating at 1.25 mA (up to an output data rate of 1.6 kHz) in mode high-performance, and enabling lowpower features that are always on for an optimal movement experience for the consumer. The LSM6DS3 supports major operating system requirements, providing real, virtual, and batch sensors with 8KB capacity for massive data processing. The figure 4 represents the pin connection diagram [17].

AK09918 Magnetometer
AK09918 is a three-axis electronic compass implemented on a compact PCB. Its working principle is based on high sensitivity hall sensor technology. The box protecting the three magnetic sensors intended to measure the earth's magnetic field in the three directions x, y and z of the platform. It is also equipped with a management and control circuit, an amplifier, an arithmetic unit to process the signal from each sensor, and a self-test function [18].

IMU data acquisition sample
A sample of the measurements of the accelerometer, the gyroscope, and the magnetometer, respectively the LSM6DS3 6DOF and the AM09918 3DOF, as a function of time is shown in figure 7.

Accelerometer model
The accelerometer directly measures the accelerations of the platform relative to an inertial frame. However, on earth, gravitational, centripetal, and Coriolis forces must be balanced. The oerating principle of an accelerometer is a seismic mass in motion according the force applied by a spring or springs in one or more directions. When the sensor is accelerated, the mass seeks to remain at rest and deforms the spring or springs. This deformation can be measured to obtain acceleration. The accelerometer measures an acceleration often referred to as a specific force or natural acceleration. A specific force is described as a non-gravitational acceleration. It is about acceleration versus free fall. This specific force, therefore, contains the acceleration of the platform from which must be subtracted the gravitational acceleration as well as the centripetal acceleration induced by the movement of the earth around its axis and around the sun [19].
This specific force is described as follows [20]: Where a b b/i is the linear acceleration of the moving vehicle with respect to {i} described in {b}, and g n [0 0 9.81] T m/s 2 .
For local navigation, we consider the N-E-D is confused with the inertial frame of reference because the ___ x-axis ___ y-axis ___ z-axis N-E-D does not move, for this we use the following approximation: Assuming the scale factor errors and alignment errors are small, the output of the accelerometer can be modeled as [15]: T represents the accelerometer bias in the directions x, y and z, and ω acc ∈ R 3 represents unmodeled errors and measurement noise. Bias is modeled as a slowly varying disturbance over time.
Where ω bacc ∈ R 3 is gaussian white noise.

Gysroscope model
The gyroscopes of an inertial unit are essential sensors for measuring orientation. They designate a sensor measuring the rotational speeds with respect to an inertial frame [15].
Where ω b e/i is the angular speed of rotation of the earth, and ω b b/n is the rate of roll, pitch and yaw. Since the navigation is on earth then ω b n/e 0. For local navigation we consider the N-E-D to be the inertial frame of reference, which gives us the following approximation: Assuming the scale factor errors and alignment errors are small, the output of the gyroscope can be modeled as follows: represents the bias of the gyroscope relating to the roll, pitch and yaw, and ω gyr ∈ R 3 represents unmodeled errors and measurement noise. Bias is modeled as a slowly varying disturbance over timė Where ω bgyr ∈ R 3 is gaussian white noise.

Magnetometer model
The magnetometer measures the magnetic field intensity along its axis (ox), (oy), and (oz). So a group of three magnetometers with the axes orthogonal and aligned with the sensor body measure three components of the magnetic field [15].
Where m n = [m N m E m D ] T expresses the magnitude and direction of the earth's magnetic field. Assuming the scale factor errors and alignment errors are small, the output of the magnetometer can be modeled as [15]: The magnetic field is different around the world and variable in time.

Global navigation satellite system GNSS model
The GPS measures the position and calculates the speed in the ECEF. The position is usually presented as ellipsoid parameters, longitude (lng), latitude (lat), and height (h) above the reference ellipsoid (WGS84), while speed is usually presented in N-E-D . For local navigation, we need to transform the measurement of the GPS position into N-E-D coordinates. This can be done by setting the origin of the N-E-D repository to a fixed point in ECEF. Later, all the GPS measurements are then calculated with respect to this point.
Assuming the GPS position measurement has been transformed into N-E-D coordinates, the GPS output can be modeled as [15]: Where r b ant is the location of the GPS antenna and ω vel ∈ R 3 are the unmodeled errors and noise.
Some GPS can provide centimeter-level accuracy, but, for the moment, they are still too expensive to be made available to the general public and are therefore reserved for specific uses (military applications). Figure 8 shows the recording of GPS data in a static position for 14 min. From this figure, we can see that the low-cost GPS offers an accuracy that oscillates within a radius of 45 m in both the north and east directions.

Extended Kalman filter design outline
The principle of Kalman filtering consists in estimating the states of a dynamic system from a series of discrete and noisy measurements. The filter was named after the Hungarian-born American mathematician and computer scientist Rudolf Kalman. The Kalman filter in a noncontinuous or discrete context is an iterative estimator. This means that old measurements and estimates are not important in predicting future positioning. To estimate the current state, only the estimate of the previous state and current measurements are needed. The Kalman filter operates in two distinct fundamental phases: prediction phase and correction or update phase. The prediction phase uses the estimated state of the previous instant to produce an estimate of the current state. In the update step, the observations of the current time are used to correct the predicted state in order to obtain a more precise estimate [21,22]. Figure 3 presents the filter in its standard formulation, which includes measurements at discrete points in time. x − k and x − k−1 are respectively the estimation vectors of the a priori and a posteriori states. Q is the covariance matrix of the process noise of the prediction step. R is the observation noise covariance matrix of the correction step, which defines the degree of tolerance in each of the sensor measurements.

Experimental scenarios
Three different test paths have been set up, to see how the different biases and disturbances affect the precision of ___ GPS coordinates ___ Average GPS coordinates • Case 1: Path inside the city This path is characterized by low speed driving with various road conditions including short stops.

• Case 2: Highway section
The highway offers relatively fast driving up to a speed of 120 Km/h without stopping.

• Case 3: Tour around a roundabout
The roundabout allows the platform to be moved in all directions.

Recorded results
The recording frequency for the IMU and the GPS are respectively 200 Hz and 1 Hz. To synchronize the capture of the measurements, we used flags (example: gps_age = 1 when the measurement is updated else gps_age = 0, valid_acc = 1 when the accelerometer is available else valid_acc = 0, ...). Figures 10-15 represent the experimental results for each path and for each time series.  Table 2 illustrates the error deviation according to the three directions of the N-E-D frame. The results show that the extended Kalman filter significantly improves the performance of the low-cost IMU when GPS is available. However, the absence of valid GPS data generates a significant deviations thus influencing the quality of position estimation. This is justified by the fact that the acceleration is integrated twice to obtain the position. Small errors in acceleration (or gyroscope or magnetometer) will causes an exponential increase in position errors. GPS measurements are therefore necessary to compensate and estimate these errors. Table 2 shows how the error increases over time when GPS measurements are not available. In just 20 seconds, the position error is over 3000 meters.

Results analysis
Considering the precision obtained, we can state that the extended Kalman filter has fast convergence when the GPS signal is available.
From all the above, we can deduce that the inertial measurement unit coupled with a GPS, proposed is an acceptable solution for civil applications.       2D path overview.
Area e zoom in.
Area f.zoom in Figure 15: 2D path projection of the tour around a roundabout.

Conclusion
In this paper, we presented a detailed experimental study of the position accuracy of an estimation system based on the hybrid fusion of different low-cost positioning systems. The elaborate system requires a GPS receiver, a three-axis accelerometer, a three-axis gyroscope, and a three-axis magnetometer. This whole system made it possible to study the strengths and weaknesses of each sensor. An extended Kalman filter was also designed to merge the various asynchronous data coming from the static and dynamic measurement sensors. The results were found to be reliable and accurate after several tests carried out in different real environments such as traffic inside the city, the highway road, and passing around a roundabout. Also, we note that the extended Kalman filter converges quickly after the recovery of the GPS signal. On the other hand, the altitude measured by the GPS presents imperfections and instabilities, which is why the addition of an altimeter is desirable to improve the quality of the estimate.