A Portable and Cost-effective Configuration of Strap-down INS/GPS for General-purpose Use

Masaru Naruoka*, Takeshi Tsuchiya**

*Department of Aeronautics and Astronautics, The University of Tokyo, Tokyo, Japan (Tel: +81-3-5841-6589; E-mail: tt56367@mail.ecc.u-tokyo.ac.jp) **Department of Aeronautics and Astronautics, The University of Tokyo, Tokyo, Japan (Tel: +81-3-5841-6644; E-mail: tsuchiya@mail.ecc.u-tokyo.ac.jp)

Abstract: In this paper, we develop a new configuration of strap-down INS/GPS (Inertial Navigation System / Global Positioning System) integrated navigation system. It is aimed for general-purpose use, and by using MEMS (microelectromechanical system) sensors and quaternion based modeling it overcomes a problem that existing INS/GPS devices are big, heavy and expensive. In order to examine the effectiveness of our system, we build a prototype instrument based on the suggested design and do an experiment for comparing it with GAIA, a high-precision INS/GPS device developed by Japan Aerospace Exploration Agency (JAXA). The result shows our system is small, light and low-cost enough for general-purpose use and has precision enough for controlling or monitoring general moving objects.

Keywords: INS/GPS, MEMS, Quaternion, Kalman filtering

1. INTRODUCTION

The motivation of our study is derived from today’s demands for controlling or monitoring moving objects such as vehicles, robots and so on. Strap-down INS/GPS systems have much potential to be served in these applications because they give precise state values: position, velocity and attitude of the moving objects. However, there are rare cases where existing INS/GPS implementations are employed on the objects. This is because most of them are used in aircrafts and spacecrafts that needs highly precise navigation and they are unsuitable for other purposes in their portability and cost efficiency. They use big, heavy and expensive dedicated components.

Therefore we propose a new strap-down INS/GPS configuration that is small, light and low-cost. The configuration is characterized by two features. The first is to use MEMS inertial sensors and a civil-use GPS receiver as INS/GPS components. Each sensor with low Signal/Noise (S/N) ratio does not have precision enough for navigation but is low-cost, small and light. The other feature is quaternion modeling for extended Kalman filtering (EKF), by which an INS and a GPS are integrated and worked as an INS/GPS. It is noted that applying EKF to non-linear system models that have low S/N ratio inputs often causes divergence because linearized models in the EKF does not reflect correctly real models. To decrease possibility of divergence, we simplify the models mathematically to reduce the error between computational models and real models with quaternion.

In order to examine the effectiveness of our configuration, we build a prototype system and carry out an experiment. The prototype system consists of tri-axes MEMS accelerometers and tri-axes MEMS gyros and a L1-wave GPS receiver module, and has a USB interface to a data acquisition PC. After we calibrate its temperature characteristic and misalignment, the experiment for comparing the prototype with GAIA, a highprecision INS/GPS instrument developed by Japan Aerospace Exploration Agency (JAXA), is performed to evaluate its precision in flight of an experimental aircraft, MuPAL-α of JAXA.

2. CONFIGURATION OF INS/GPS

In this section, we explain the detail of INS/GPS we configured. First, coordinate systems and symbol definitions we use are described. Then, we explain the detail of an INS and a GPS as a component of an INS/GPS. Finally, focused on the integration method of an INS and a GPS, we introduce our INS/GPS configuration.

2.1 Coordinate Systems and Symbol Definitions

We use five coordinate systems shown in fig. 1. All systems are right-handed orthogonal systems.

Fig. 1 Coordinate Systems

• i-Frame The earth-centered inertial system. The Z_{i} axis corresponds to the rotation axis of the earth.

• e-Frame The earth-centered, earth-fixed system. The Z_{i} axis corresponds to the rotation axis of the earth, and the X_{e} axis is directed to the first meridian.

• g-Frame The local geodetic system. The origin is the observation point. The N_{g} axis and the D_{g} axis are directed to northward and downward, respectively.

• n-Frame The navigation frame. This system is identical to the rotated g-Frame by Azimuth angle, α rad.

• b-Frame The body frame. The origin is the same as one of n-Frame. The X_{b} axis is identical to the body axis.

Next, symbol definitions are described. A threedimensional vector is expressed like u⃗, and a quaternion are

expressed like q̃or \{ \begin{matrix}q(scalar elemnt) \\ q⃗(vector element) \end{matrix}\} . q̃^{∗} ≡ \{ \begin{matrix}q \\ −q⃗ \end{matrix} \} means

the conjugate quaternion of q̃. In addition, we introduce following superscripts and subscripts. u_{1}^{2} stands for the value on the 1-Frame observed from the 2-Frame, and u_{1/2}^{3} stands for the value on the 1-Frame to the 2-Frame observed from the 3-Frame.

Moreover, we use following symbols.

• r⃗ position

• ṙ velocity

• a⃗ acceleration

• ω⃗ angular speed

• g⃗ gravity

• q̃_{e}^{n} another representation of latitude, longitude, and azimuth

• q̃_{n}^{b} attitude of the observed target

2.2 INS

An INS outputs position, velocity and attitude by obtaining acceleration and angular speed from inertial sensors and solving equations of motion. According to the mounting method of inertial sensors, INSs are classified broadly into two types: the strap-down type and the gimballed type. At the cost of large calculation power, the strap-down type does not need any physical mechanisms but has possibility to configure a smaller, lighter and lower cost INS as much as possible. Therefore We adopt the strap-down type.

The characteristic of an INS such as precision, cost and so on is mostly derived from installed inertial sensors. In our configuration, MEMS sensors which are widely used for civiluse products like car navigation systems are chosen. They are much smaller, lighter and less expensive than high-precision sensors like servo accelerometers and ring laser gyros which are intended for aircraft and spacecraft navigation. However, they have low S/N (Signal / Noise) ratios and low bias stability, and they vary considerably in quality. Moreover, it is noted that the precision of an INS which consists of them is very low. In order to compensate that disadvantage, we take advantage of the integration with a GPS.

Modelling equations of motion for our INS, we express position and attitude in unit quaternions to remove singular points. This is because we avoid the problem that the model error is increasing and outputs deteriorate near a singular point. Especially speaking, during a calculation an INS with MEMS sensors occasionally goes through an unpredictable path in the modeled space because the noise element of inputs is big. Therefore we think it is effective for improving the precision of our system. By using quaternions, equations of motion are following.

• Velocity equation of motion

\begin{aligned}\frac{d}{dt}\{ \begin{matrix}0 \\ ṙ_{e}^{n} \end{matrix}\} & = q̃_{b}^{n}^{∗}\{ \begin{matrix}0 \\  & a^{b} \end{matrix}\} q̃_{b}^{n}+ \{ \begin{matrix}0 \\  & g^{n} \end{matrix}\} \\ & − \{ \begin{matrix}0 \\ ( 2ω⃗_{e/i}^{n} + ω⃗_{n/e}^{n}) ×ṙ_{e}^{n} \end{matrix} \} \\ & −q̃_{e}^{n}^{∗}\{ \begin{matrix}0 \\ ω⃗_{e/i}^{e} × ( ω⃗_{e/i}^{e} ×r⃗_{e}) \end{matrix} \} q̃_{e}^{n} \end{aligned}  (1)

• Position equation of motion

\frac{d}{dt}q̃_{e}^{n} = \frac{1}{2}q̃_{e}^{n}\{ 0 ; ω⃗_{n/e}^{n}\} , \frac{d}{dt}h = −(ṙ_{e}^{n})_{Z} (2)

• Attitude equation of motion

\begin{aligned}\frac{d}{dt}q̃_{n}^{b} & = \frac{1}{2} [q̃_{n}^{b}\{ 0 ; ω⃗_{b/i}^{b}\} \\ & −( \{ 0 ; ω⃗_{e/i}^{n} \} + \{ 0 ; ω⃗_{n/e}^{n}\} ) q̃_{n}^{b}] \end{aligned}  (3)

2.3 GPS

The function of GPS ground nodes is estimating position, velocity and so on by receiving radio wave emitted by GPS satellites. Therefore the characteristic of a GPS such as precision and cost depends on receivers and antennas. Concretely speaking, frequency bands and a data processing method. We select a receiver and an antenna which receive the GPS L1 frequency band (1575MHz) and perform the C/A code measurement. They are used commonly, for example in car navigation fields, and are small, light and inexpensive.

2.4 INS/GPS

The integration method of our INS and GPS plays most important roles, because as previously noted the precision of the INS with MEMS sensors are very low. In order to utilize the other system, GPS, we use the Kalman filter(KF) algorithm that enables us to perform optimal estimation based on probability. Moreover among some types of KF configurations we choose the “loose coupling” method that position, velocity and attitude of the INS are corrected by using position and velocity obtained from GPS. Fig. 2 shows the adopted INS/GPS algorithm.

Fig. 2 the INS/GPS Algorithm

Because the motion equations of the INS are non-linear, we use the extended Kalman filter(EKF). The EKF requires a gradient linearization (perturbation) form and it is obtained by performing following substitutions to Eqs. (1)-(3).

ṙ_{e}^{n} → ṙ_{e}^{n}+ Δṙ_{e}^{n}  (4)
q̃_{e}^{n} → \{ \begin{matrix}1 \\ Δu_{e}^{n} \end{matrix}\} q̃_{e}^{n}, h → h + Δh  (5)
q̃_{n}^{b} → \{ \begin{matrix}1 \\ Δu_{n}^{b} \end{matrix}\} q̃_{n}^{b}  (6)
a^{b} → a^{b}+ Δa^{b}, ω⃗_{b/i}^{b} → ω⃗_{b/i}^{b} + Δω⃗_{b/i}^{b}  (7)
g⃗ → g⃗+ Δg⃗  (8)

where a Δ symbol stands for small and multiplication of values with Δs is negligible. Moreover, the perturbation form of quaternions is not the additive form which is used generally for the EKF, but the multiplicative form by Ude[2]. If we use the additive form as the perturbation form, the norm of a quaternion ||q̃|| is

\begin{aligned}||q̃+ Δq̃||^{2} & = (q_{0}+ Δq_{0}) ^{2}+ ||q⃗+ Δq⃗||^{2} \\ & ≈ (q_{0}^{2}+ q⃗^{2}) + 2(q_{0}Δq_{0}+ q⃗· Δq⃗) \\ & > 1 + 2(q_{0}Δq_{0}+ q⃗· Δq⃗) \end{aligned}  (9)

and unity of quaternions ||q̃+ Δq̃|| = 1 is broken. Therefore a small residual element Δu⃗ where ||Δu⃗|| ≈ 0 is introduced and we define the quaternion perturbation form with it as:

q̃+ Δq̃≡ \{ \begin{matrix}1 \\ Δu⃗ \end{matrix}\} q̃= \{ \begin{matrix}q_{0}− Δu⃗· q⃗ \\ q⃗+ q_{0}Δu⃗+ Δu⃗× q⃗ \end{matrix} \} (10)

where the norm is

\begin{aligned}||q̃+ Δq̃||^{2} & ≡ (q_{0}− Δu⃗· q⃗)^{2} \\ & + ||q⃗+ q_{0}Δu⃗+ Δu⃗× q⃗||^{2} \\ & ≈ (q_{0}^{2}− 2q_{0}Δu⃗· q⃗) \\ & + (||q⃗||^{2}+ 2q_{0}Δu⃗· q⃗) \\ & = q_{0}^{2}+ ||q⃗||^{2} = 1 \end{aligned}  (11)

and the unity of quaternion is kept. That is to say, while the system model is represented by twelve state values, ṙ_{e}^{n}, q̃_{e}^{n}, h and q̃_{n}^{b}, the perturbation form for the EKF is represented by ten state values, Δṙ_{e}^{n}, Δu_{e}^{n}, Δh and Δu_{n}^{b}.

Now, the time update equation of the EKF is

\frac{d}{dt}x = Ax + Bu (12)

where x, u stand for state values of the perturbation form and the error of sensor inputs respectively:

x ≡ [ \begin{matrix}Δṙ_{n}^{e} \\ Δu_{e}^{n} \\ Δh \\ Δu_{n}^{b} \end{matrix}] , u ≡ [ \begin{matrix}Δa^{b} \\ Δω⃗_{b/i}^{b} \\ Δg⃗ \end{matrix} ] (13)

and A, B are matrices.

The observation equation for the measurement update of the EKF is

z = Hx + v (14)

where

z ≡ [ \begin{matrix} & q̃_{e}^{n} \\ h \\ ṙ_{e}^{n} \end{matrix}]_{INS}− [ \begin{matrix} & q̃_{e}^{n} \\ h \\ ṙ_{e}^{n} \end{matrix}]_{GPS} (15)

and subscription INS, GPSstand for state values of the INS and the GPS respectively. H is matrix and v is the measurement error of the GPS.

Then, error covariances matrices, P ≡ E[xx^{T}], Q ≡ E[uu^{T}] and R ≡ E[vv^{T}], are defined and when the output of the GPS is unavailable, the time update for the EKF, the prediction, is performed:

P_{k+1} = (I + AΔt)P_{k}(I + AΔt)^{T}+ (BΔt)Q(BΔt)^{T} (16)

When the output of the GPS is available, the measurement update, the correction, by the EKF is done:

K_{k} = P_{k}H_{k}^{T}(H_{k}P_{k}H_{k}^{T}+ R_{k})^{−1}  (17)
P_{k} → (I − K_{k}H_{k})P_{k}  (18)

x_{k} ≡ [ \begin{matrix}Δṙ_{n}^{e} \\ Δu_{e}^{n} \\ Δh \\ Δu_{n}^{b} \end{matrix}]_{k} = K_{k}z_{k}  (19)

(ṙ_{n}^{e})_{INS} → (ṙ_{n}^{e})_{INS}− (Δṙ_{n}^{e})_{k}  (20)
(q̃_{e}^{n})_{INS} → \{ \begin{matrix}1 \\ (Δu_{e}^{n})_{k} \end{matrix}\} ^{∗}(q̃_{e}^{n})_{INS},
h_{INS}→ h_{INS}− (Δh)_{k}

(21)

(q̃_{n}^{b})_{INS} → \{ \begin{matrix}1 \\ (Δu_{n}^{b})_{k} \end{matrix}\} ^{∗}(q̃_{n}^{b})_{INS}  (22)

where K_{k} is the Kalman gain.

3. EVALUATION

In order to evaluate our suggested configuration, we made a prototype system. Moreover, after calibration we carried out an experiment for comparing the prototype with GAIA, a highprecision INS/GPS device developed by JAXA. In this section, we describe the detail of the prototype, the calibration and the experiment in sequence.

3.1 Prototype

Figures. 3-4 and Table. 1 show a look, the processing flow diagram and the specification of the prototype system respectively. For simplicity, we make up this system by gathering data in real time and analyzing it with a personal computer(PC) latterly. We also have confirmed that the PC is exchangeable for a small digital signal processor(DSP) unit and it have enough calculation power for the real-time application. According to the prototype, our suggested configuration is small, light and inexpensive enough for general-purpose usage.

The initial velocity and position of the system are output values from the GPS at the start of measurement. The attitude of the system is initialized by 0 deg. The initial P covariance matrix of the EKF is a suitably big diagonal matrix. Moreover, the Q and R covariance matrices are determined by the measured static noises of inertial sensors and by the dilution of precision(DOP) values acquired from the GPS respectively.

Fig. 3 A look of the prototype Fig. 4 The block diagram of the prototype

Table. 1 The detail of the prototype

Item  Description
Accelerometer 1 “LIS3L02AS4”

made by STMicroelectronics (3-Axes/1-Package, MEMS)

Gyro  3 “ADXRS150”s

made by AnalogDevices (1-Axis/1-Package, MEMS)

GPS  1 “TIM-LA” made by u-blox

(L1 GPS, 4Hz update)

A/D Converter 1 “AD7739” made by AnalogDevices

(100Hz, 24bit quantization)

Interface  USB (“AN2131” made by Cypress)
Size  Under 100 cc without structural element
Weight  Under 30 g without structural element
Cost  About 30,000 JPY

3.2 Calibration

Before the experiment, we measured the bias temperature characteristic and the misalignment of inertial sensors, and canceled these effects by numerical calibration. The reason why we chose these two as correction items is that we think they are major causes of degrading the precision. First, it is noted that MEMS inertial sensors are intended for detecting large displacement and their bias stability to temperature alteration is very low. In addition, inertial sensors have to be aligned orthogonally as precise as possible. We describe the detail as follows. 3.2.1 Bias temperature characteristic

The bias temperature characteristic of accelerometers and gyros are obtained by setting them statically in a thermostatic chamber with controlled temperature. A part of measured data is shown in Fig. 5, and we can perceive that there is the linear relation between temperature and bias. Table. 2 shows the result of the analysis.

Fig. 5 Temperature characteristic of the X-axis gyro bias

Table. 2 The list of temperature characteristic

Sensor Type  X-axis  Y -axis Z-axis

Accelerometer

[m/s^{2}/^{∘}C] -0.000763 0.0223 0.00602

Gyro ; [deg/^{∘}C]  0.0575 -0.0881 -0.0191

3.2.2 Misalignment

The misalignment of gyros is obtained by fixing them on a turntable which rotates at constant speed and measuring outputs. This is based on the following scheme. For instance, we describe the unit vector of the major axis and the scale factor of the X-axis gyro as u⃗_{x} and K_{x}, the unit normal vector of an attachment surface named 1 as u⃗_{01}, and an output on the Xaxis when the 1 surface is the base surface as a⃗_{x1}. When we measure outputs to the 1, 2 and 3 surface, there is a relation:

[ \begin{matrix}\frac{a⃗_{x1}}{K_{x}} & \frac{a⃗_{y1}}{K_{y}} & \frac{a⃗_{z1}}{K_{z}} \\ \frac{a⃗_{x2}}{K_{x}} & \frac{a⃗_{y2}}{K_{y}} & \frac{a⃗_{z2}}{K_{z}} \\ \frac{a⃗_{x3}}{K_{x}} & \frac{a⃗_{y3}}{K_{y}} & \frac{a⃗_{z3}}{K_{z}} \end{matrix} ] = [ \begin{matrix} & u_{01}^{T} \\ & u_{02}^{T} \\ & u_{03}^{T} \end{matrix}] [u⃗_{x} u⃗_{y} u⃗_{z}] (23)

This equation shows that when we do it to three surfaces of whose u⃗_{01} etc are already-known, we can compute the misalignment like u⃗_{x} and the scale factor like K_{x} by the unit condition like ||u⃗_{x}|| = 1. Fig. 6 represents an appearance of measurement and the result shown in Table. 3.

Fig. 6 The misalignment measurement

Table. 3 Gyro misalignment

X-axis  Y -axis  Z-axis
1.00  8.72E^{−3} −1.18E^{−2}
u⃗ −9.43E^{−3} 1.00 4.91E^{−3}
1.52E^{−3} 1.24E^{−2}  1.00

Misalignment [deg]

0.547  0.868  0.731

Measuring the misalignment of accelerometers is omitted in this prototype, because they contain three axes in a package and factory calibrated.

3.3 Experiment

We compared the precision of the prototype with GAIA. GAIA is a high-precision INS/GPS device and has enough reliable precision as a reference. The experiment is carried out in flight of an experimental aircraft, MuPAL-α owned by JAXA, and with the prototype system and GAIA installed horizontal straight flight, steady turning flight and so on are maneuvered. Figures. 7-10 show the comparison of both. For the result, the difference of mounting positions is considered and corrected.

Fig. 7 The position record

Fig. 8 The horizontal difference

Additionally, statistical summary of the result is shown in Table. 4. This summary is computed with values from the time that the error covariance matrix P of the EKF is enough converged, i.e. at the GPS time 3.57E+8 msec.

Table. 4 The difference between the prototype and GAIA

Mean Standard deviation Worst
Horizontal distance [m] 6.44  2.97  17.0
Altitude [m]  0.85  2.10  6.90
North speed [m/s]  0.00  0.12  1.25
East speed [m/s]  0.00  0.12  -1.13
Down speed [m/s]  -0.08  0.10  -0.67
Roll [deg]  0.00  0.26  -1.19
Pitch [deg]  -0.67  1.21  -3.90
Heading [deg]  4.17  9.68  23.9

About position and velocity that are corrected directly by

Fig. 9 The velocity record

Fig. 10 The attitude record

GPS outputs, the result shows the prototype even equals to GAIA. About attitude that is corrected indirectly, the difference of both in roll and pitch is in several degrees and small enough. However, there is a difference of more than ten degrees in heading.

3.4 Discussion

According to the experiment result, the error of the suggested system is about several meters in position and ten and several degrees in heading as the worst item under consideration to the standard deviation. We think our configured INS/GPS is precise enough for general-purpose controlling and monitoring moving objects. In addition, the result shows that we build an effective system by integrating a MEMS INS whose precision is poor in stand-alone with a GPS like our configuration.

Detailing the experiment result, we notice that heading is much worse than roll and pitch. We think that this reflect the dynamics of an aircraft as a test bed. That is to say, the dynamics of roll and pitch is controlled by higher frequency mode than that of heading. The former is about several Hz in frequency, but the latter is more than several seconds in period. In addition, the bias unstable noise, which is difficult to eliminate, is appeared in very low frequency whose period is over several seconds. Therefore we think we cannot divide that noise from moving and heading is degraded significantly. The deterioration in pitch near the GPS time 3.58E+8 also supports this discussion. This is beacuse near the time steady turning flight is performed and the change of pitch is very slow.

From the above discussion, in order to upgrade the precision of the suggested system, it is important to consider the dynamics of the target and separate the low frequency noise from moving especially. For instance, a suitable filtering in frequency domain for inputs will improve the precision. In addition, another aiding system which corrects directly low frequency state values will be effective. For example, when the target is an aircraft, like the experiment, a magnetic compass will be a candidate device for aiding yaw correction.

4. CONCLUSION

We have shown that the suggested INS/GPS system is small, light and low cost enough for general-purpose usage by making the prototype system. The flight experiment have indicated that our INS/GPS configuration is precise enough for controlling and monitoring moving objects. Therefore, our system is effective.

In addition, we get clues for improving the precision more. According to the experiment, there seems to be the relation between the precision of the system and moving frequency. For the future work, we will analyze the data of the experiment in frequency domain.

Finally, it is noted that the flight tests using MuPAL-α were carried out in collaboration with JAXA.

REFERENCES

[1] R.M.Rogers, “Applied Mathematics in Integrated Navigation System, Second Edition”, AIAA Education Series, ISBN 1-56347-656-8, 2003.

[2] A.Ude, “Filtering in a unit quaternion space for modelbased object tracking”, Robotics and Autonomous Systems, Vol.28, pp.163-172, 1999.

[3] D.Choukroun, “A Novel Quaternion Kalman Filter”, Paper 2002-4460 at 42th AIAA Guidance, Navigation, and Control Conference, 2004.

[4] Harigae, M, Tomita, H, and Nishizawa, T, “Development of High Precision GPS Aided InertialNavigation”, Journal of the Japan Society for Aeronautical and Space Sciences, Vol.50, No.585, pp.416-425, 2002. (in Japanese)

[5] Katayama, T, “Applied Kalman Filtering, New Edition”, ISBN 4-254-20101-X, 2000. (in Japanese)

[6] Tamagawa Seiki co.ltd., “Introduction to Gyro Application Technology ”, ISBN 4-7693-1208-3, 2003. (in Japanese)

[7] Naruoka, M, and Tsuchita, T, “A Low-cost Integrated Navigation System of INS/GPS Using MEMS Sensors”, 37th JSASS Annual Conference, 2006. (in Japanese)