Abstract

In this paper, we propose a new configuration of a strap-down INS/GPS (Inertial Navigation System / Global Positioning System) integrated navigation system. It is aimed at general-purpose use, with utilization of MEMS (microelectromechanical system) sensors and a quaternion-based model enabling the development of a precise system with a degree of portability that traditional INS/GPS devices cannot achive. In order to examine the effectiveness of our system, we built a prototype instrument and performed an experiment comparing its performance with GAIA, an ultra high-precision INS/GPS device developed by the Japan Aerospace Exploration Agency (JAXA). The results show that our small, light and low-cost system is applicable to general-purpose use, having a position error of several meters and under 2 degrees of roll and pitch error, which is sufficiently precise for the general control of moving objects.

和文概要

本論文では、航空宇宙用途に限らず汎用的に使用されることを目指した、新しい構成のストラップダウン型 INS/GPS 複合航法システムを提案する。システムの構成として、微細加工技術 (MEMS) を利用したセンサを利用し、またクォータニオンを利用したシステムモデルを作成することによって、従来の INS/GPS 機器では実現困難であった高い利便性を持ちつつも高い精度を確保するに至った。システムの有効性を検証する方法としては、プロタイプを作成し、宇宙航空研究開発機構 (JAXA) 所有の超高精度 INS/GPS 装置 GAIA との比較を行った。結果、本システムは汎用利用に十分に小型、軽量、安価であり、またその精度は位置で数メートル、ロールならびにピッチ誤差で 2 度以下と汎用的な移動体の制御には十分な精度である。

Nomenclature

\underline{x} = general column vector
x⃗ = general three-dimensional vector
q̃ = general quaternion
q̃^{∗} = general conjugate quaternion
r⃗_{e} = target position vector from the center of the earth
ṙ_{e}^{n} = target velocity to the earth (3 states)
a^{b} = output of accelerometers which are fixed on the target (3 states)
ω⃗_{e/i}^{e} = earth rotation on Earth-Centered Earth-Fixed frame (3 states)
ω⃗_{n/e}^{n} = navigation frame rotation (3 states)
ω⃗_{b/i}^{b} = output of gyros which are fixed on the target (3 states)
g^{n} = earth gravitation (3 states)
h = altitude (1 states)
q̃_{e}^{n} = position quarternion of latitude, longitude, and azimuth (4 states)
q̃_{n}^{b} = atitude quarternion of roll, pitch, and yaw (4 states)
P = system error covariance matrix of Kalman Filter
Q = process error covariance matrix of Kalman Filter
R = measurement error covariance matrix of Kalman Filter
K = Kalman gain

I. Introduction

Our study is a response to the current need for controlling or monitoring moving objects such as vehicles, robots and so on. Strap-down INS/GPS systems have great potential to serve in these applications because such systems give precise state values: the position, velocity, and attitude of the moving objects. However, in rare cases traditional INS/GPS systems are implemented on moving objects. Most devices of this type are used in aircraft and spacecraft which require highly precise navigation, and are unsuitable for other purposes due to their lack of portability and general high cost. Such systems are large, heavy, and expensive dedicated devices.

Therefore, we have developed a new strap-down INS/GPS configuration that is small, light, and low-cost. This configuration is characterized by two features. First is the use of MEMS inertial sensors and a civil-use GPS receiver as INS/GPS components. They are low-cost, small, and light. However, MEMS sensors do not have a level of precision sufficient for navigation because of their low Signal/Noise (S/N) ratio. Winkler et al.[1] and Liu et al.[2] reported INS/GPS systems that employed a simlar concept and overcame the problem by calibrating the sensors and so on, However, we do not consider such systems sufficiently robust. Thus, we introduce another feature into the system.

This feature is quaternion modeling for extended Kalman filtering (EKF), by which an INS and a GPS are integrated and function 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 do not reflect accurately real models. To decrease this possibility of divergence, we make a new algorithm that simplifies the models mathematically in order to reduce the error between computational models and real models using quaternion.

In order to examine the effectiveness of our configuration, we built a prototype system and tested it experimentally. The prototype system consists of tri-axes MEMS accelerometers, tri-axes MEMS gyros, a L1-wave GPS receiver module, a data procesing PC and so on. After we calibrated its temperature characteristic and misalignment, the experiment for comparing the prototype with the GAIA[3], a high-precision INS/GPS instrument developed by the Japan Aerospace Exploration Agency (JAXA), was performed to evaluate its precision during the flight of an experimental aircraft, the MuPAL-α of JAXA.

II. Components of INS/GPS

In this section, we describe the components of the INS/GPS system we configured. An INS/GPS system consists of a INS and a GPS as physical components; therefore, we explain these two components in sequence. The two components are integrated as a INS/GPS system by our algorithm as described in the next section.

A. Starp-down INS using MEMS senosrs

An INS outputs position, velocity, and attitude by obtaining acceleration and angular speed from inertial sensors and solving kinematic equations. According to the method of mounting the inertial sensors, INSs are classified broadly into two types: the strap-down type and the gimballed type. While sacrificing large calculation power, the strap-down type does not require physical mechanisms and can be configured as a smaller, lighter, and lower-cost INS. For these reasons we adopted the strap-down type.

Characteristics of an INS such as precision, cost, and so on are derived mostly from installed inertial sensors. In our configuration, MEMS sensors which are widely used for civil-use products such as car navigation systems are chosen. They are much smaller, lighter, and less expensive than high-precision sensors such as 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 employs them is very low. In order to compensate for that disadvantage, we take advantage of integration with a GPS.

B. Civil-use GPS reciever

The function of GPS ground nodes is estimating position, velocity, and so on by receiving radio waves emitted by GPS satellites. Therefore, the characteristics of a GPS such as precision and cost depend on the type of receiver and antenna used. Specifically, these element are related to the system’s data processing method and the frequency bands employed. We select a receiver and an antenna which receive the GPS L1 frequency band (1575MHz) and perform the C/A code stand-alone measurement. They are commonly used, for example in car navigation, and are small, light, and inexpensive.

III. Algorithm of INS/GPS

In this section, we explain the INS/GPS algorithm we configured. First, the coordinate systems and notations we use are described. We then explain the extended Kalman filter (EKF) that is the base of our algorithm, and derive the system equation and the mesurement equation that are required to apply the filter. Finally, we describe the alogorithm based on the two stages, i.e., the time update and the measurement update, that are defined in the filter.

A. Coordinate Systems and Symbol Definitions

We use five coordinate systems as shown in Figure 1. All systems are righthanded orthogonal 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 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 that of the n-Frame. The X_{b} axis is identical to the body axis.

Next, symbol definitions are described. A general column vector is expressed as \underline{x}, three-dimensional vector is expressed as x⃗, a quaternion is expressed as q̃ or { q_{0} ; q⃗} where q_{0} and q⃗ are the scalar elemnt and the vector element, respectively. q̃^{∗} ≡ \{ \begin{matrix}q_{0} \\ −q⃗ \end{matrix} \} indicates the conjugate quaternion of q̃. In addition, we introduce the following superscripts and subscripts. x_{1}^{2} stands for the value of the 1-Frame coordinatized in the 2-Frame, and x_{1/2}^{3} stands for the rotation value of the 1-Frame relative to the 2-Frame coordinatized in the 3-Frame.

B. Extended Kalman Filter

The method of integrating our INS and GPS plays a very important role, because the precision of the INS with MEMS sensors is very low, as previously noted, and we have to utilize another system, a GPS, as much as possible. Therefore, we developed an INS/GPS algorithm based on the extended Kalman filter (EKF) that enables us to perform optimal estimation based on probability. In this subsection, we introduce a general EKF, and describe how the EKF is apllied to our INS/GPS.

The EKF is based on two equations: the system equation and the measurement

7/1  Naruoka, M.

equation. The system equation is \underline{x}_{t+1} = f(\underline{x}_{t},\underline{u}_{t}), (1)

where \underline{x}_{t} and \underline{u}_{t} represent the system’s true state values and true inputs, respectively. The measurement equation is

\underline{z}_{t} = h(\underline{x}_{t}) + \underline{v}_{t}, (2)

where \underline{z}_{t} and \underline{v}_{t} represent measurement values and measurement error respectively.

In the practical application, the EKF is divided into two stages: the time update and the measurement update. The time update is performed as time passes and is composed of the following equations:

ˆ\underline{x}_{t+1} = f(ˆ\underline{x}_{t}, ˆ\underline{u}_{t}) (3) P_{t+1} = Γ_{t}P_{t}Γ_{t}^{T}+ Φ_{t}Q_{t}Φ_{t}^{T}. (4)

The measurement update is performed when additional information is gained, and consists of the following eqautions:

K_{t} = P_{t}H_{t}^{T}(H_{t}P_{t}H_{t}^{T}+ R_{t})^{−1} (5) ˆ\underline{x}_{t} ← ˆ \underline{x}_{t}+ K_{t}(\underline{z}_{t}− h_{t}(ˆ\underline{x}_{t})) (6) P_{t} ← (I − K_{t}H_{t})P_{t}. (7)

In these eqautions, ˆ \underline{x}_{t}, ˆ \underline{u}_{t} represent the system’s estimated state values, estimated inputs, respectively. P_{t}, Q_{t}, and R_{t} are error covariance matrices of the system’s state residuals between true values and estimated values, input residuals between true values and estimated values, and measurement error, respectively, i.e.,

P_{t} = E [(ˆ\underline{x}_{t}− \underline{x}_{t}) (ˆ\underline{x}_{t}− \underline{x}_{t}) ^{T}] ≡ [Δ\underline{x}_{t}Δ\underline{x}_{t}^{T}] (8)

Q_{t} = E [(ˆ\underline{u}_{t}− \underline{u}_{t}) (ˆ\underline{u}_{t}− \underline{u}_{t}) ^{T}] ≡ [Δ\underline{u}_{t}Δ\underline{u}_{t}^{T}] (9)

R_{t} = E [\underline{v}_{t}\underline{v}_{t}^{T}], (10) where Γ_{t}, Φ_{t} and H_{t} are matrices derived from the perturbation (linearization) froms of ths system equation and the measurement equation that are nonlinear. In the standard EKF, these matrices are Jacobian:

Γ_{t} ≡ \frac{∂f}{∂x}|_{x_{t}} (11)

Φ_{t} ≡ \frac{∂f}{∂w}|_{x_{t}} (12)

H_{t} ≡ \frac{∂h}{∂x}|_{x_{t}} . (13)

K_{t} is a matrix called Kalman gain.

Three well-known configurations are commonly used to integrate an INS and a GPS with the EKF: loose-coupling, tight-coupling, and ultra tight-coupling. Among these configurations, we choose the loose-coupling because this method requires the least calculation power suitable for general-purpose use. In the loose-coupling, the system equation of the EKF is the kinematics equations of an INS, and the measurement equation is based on the outputs of a GPS. Expressed in another way, the position, velocity and attitude of the INS are corrected by the position and velocity obtained from the GPS. Figure 2 shows our INS/GPS system integrated by loose-coupling.

In the next two subsections, we explain the system equation and the measurement equation.

C. System Equation (INS)

The system equation, Eq. (1), is the kinematics equation of an INS. Thus, the system’s state values \underline{x}_{t} are the position, velocity, and attitude of an INS. Here we express position and attitude in unit quaternions to remove singular points. This is in order to avoid the problem of the model error increasing and the outputs deteriorating near a singular point. Especially, during calculation an INS with MEMS

9/1  Naruoka, M.

sensors occasionally goes through an unpredictable path in the modeled space because of the large size of the input’s noise element. Therefore we consider this an effective way of improving our system’s precision. With quaternions, the kinematics equations are as follows:

• Velocity kinematics

\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}  (14)

• Position kinematics

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

• Attitude kinematics

\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}  (16)

Summarizing these equations, we can describe following form:

\frac{d}{dt}[ \begin{matrix}ṙ_{e}^{n} \\ & q̃_{e}^{n} \\ h \\ & q̃_{n}^{b} \end{matrix}] = f′( [ \begin{matrix}ṙ_{e}^{n} \\ & q̃_{e}^{n} \\ h \\ & q̃_{n}^{b} \end{matrix}] ,[ a⃗_{b} ; ω⃗_{b/i}^{b} ; g^{n} ] ) . (17)

Descretize this equation by computational time step Δt:

\underline{x}_{t+1} = ( I + f′|_{\underline{x}_{t},\underline{u}_{t}}Δt) x_{t} (≡ f(\underline{x}_{t},\underline{u}_{t})) , (18)

where

\underline{x}_{t} = [ \begin{matrix}ṙ_{e}^{n} \\ & q̃_{e}^{n} \\ h \\ & q̃_{n}^{b} \end{matrix}]_{t}, \underline{u}_{t} = [ a⃗_{b} ; ω⃗_{b/i}^{b} ; g^{n} ]_{t}. (19)

This equation is the system equation, and identical to Eq. (3).

10/1  Naruoka, M.

D. Measurement Equation (GPS)

The measurement equation, Eq. (2), is derived by outputs of a GPS:

\underline{z}_{t} ≡ [ \begin{matrix}ṙ_{e}^{n} \\ & q̃_{e}^{n} \\ h \end{matrix}]_{GPSt}, (20)

where the subscription GPSstands for the GPS’s output. The output of a GPS is velocity ṙ_{e}^{n} and position q̃_{e}^{n},h; thus, attitude q̃_{n}^{b} is dropped from system state values.

E. INS/GPS Algorithm

In this subsection, we explain our INS/GPS algorithm based on the EKF equations that have been described. We explain the two stage, the time update, and the measurement update, in sequence. We also explain the initailization method and covariance setting.

E.1 Time Update

The time update is performed when the time passes. In this stage, Eq. (3), i.e. Eq. (18), and Eq. (4) are performed. Eq. (4) requires matrics Γ and Φ. In typical EKF applications, these matrices are Jacobians and obtained by Eqs. (11)-(12). However, we obtain the matrices by performing the following steps.

First, we perform the following substitutions to Eqs. (14)-(16), and subtract the original equations from the substituted equations.

ṙ_{e}^{n} ← ṙ_{e}^{n}+ Δṙ_{e}^{n} (21)

q̃_{e}^{n} ← \{ \begin{matrix}1 \\ Δu_{e}^{n} \end{matrix}\} q̃_{e}^{n}, h → h + Δh (22)

q̃_{n}^{b} ← \{ \begin{matrix}1 \\ Δu_{n}^{b} \end{matrix}\} q̃_{n}^{b} (23)

a^{b} ← a^{b}+ Δa^{b}, ω⃗_{b/i}^{b} → ω⃗_{b/i}^{b} + Δω⃗_{b/i}^{b} (24)

g^{n} ← g^{n}+ Δg^{n} (25)

11/1  Naruoka, M.

where Δ stands for small error, and multiplications of two or more Δ values are negligible.

We now get the following perturbation equation:

\frac{d}{dt}Δ\underline{x}= AΔ\underline{x}+ BΔ\underline{u} (26)

where Δ\underline{x}and Δ\underline{u}stand for the system’s state values in the perturbation form and the input’s error, respectively:

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

where A and B are matrices.

Finally, by descretizing Eq. (26), we obtain matrices Γ and Φ:

Γ = I + AΔt, Φ = BΔt . (28)

We do not use Jacobians because they violate the unity of the quaternion norm. A Jacobian is a so-called additive form, and if we use it 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⃗) ≠ 1 \end{aligned}  (29)

and the unity of the quaternion, ||q̃+ Δq̃|| = 1, is broken.

Therefore we employ the multiplicative form described by Ude[4]. A small residual element Δu⃗where ||Δu⃗|| ≈ 0 is introduced and using it we define the quaternion perturbation form as:

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

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}  (31)

and the unity of quaternion is kept.

Thus, while the system model is represented by twelve state values, ṙ_{e}^{n}, q̃_{e}^{n}, h, and q̃_{n}^{b}, the perturbation of the system equation is represented by ten state values, Δṙ_{e}^{n}, Δu_{e}^{n}, Δh, and Δu_{n}^{b}, and the error covariances matrices, P ≡ E[Δ\underline{x}Δ\underline{x}^{T}] , Q ≡ E[Δ\underline{u}Δ\underline{u}^{T}] are 10 × 10 and 10 × 9, respectively.

E.2 Mesurement Update

When the output of the GPS is available, the measurement update is performed. At this stage, Eqs. (5)-(7) are activated. However, now we use ten state values, Δṙ_{e}^{n}, Δu_{e}^{n}, Δh, and Δu_{n}^{b}, in the pertuabation form of the system equation, and we have to change the standard equations on the measurement update. This is because there now arize certain problem; for example, the error covariance matrix P is a 10 × 10 matrix and the Jacobian H matrix derived from Eq. (13) is 8 × 12. Thus, Eq. (5) is broken.

Therefore, we use the following equations:

\underline{z}_{t}− h_{t}(ˆ\underline{x}_{t}) ≡ −[ \begin{matrix}I & 0 & 0 & 0 \\ 0 & I & 0 & 0 \\ 0 & 0 & I & 0 \end{matrix}] [ \begin{matrix}Δṙ_{e}^{n} \\ Δq̃_{e}^{n} \\ Δh \end{matrix}]_{t}+ \underline{v}

= −[ \begin{matrix}I & 0 & 0 & 0 \\ 0 & H_{22} & 0 & 0 \\ 0 & 0 & I & 0 \end{matrix}] [ \begin{matrix}Δṙ_{e}^{n} \\ Δu_{e}^{n} \\ Δh \\ Δu_{n}^{b} \end{matrix}]_{t}+ \underline{v}

≡ H_{t}Δ\underline{x}_{t}+ \underline{v}, (32)

H_{22} ≡ [ \begin{matrix}−q_{1} & −q_{2} & −q_{3} \\ q_{0} & q_{3} & −q_{2} \\ −q_{3} & q_{0} & q_{1} \\ q_{2} & −q_{1} & q_{0} \end{matrix} ]_{ˆq̃_{e}^{n}} (33)

where matrix H_{t} is 7 × 10, and we can calculate the Kalman gain K_{t} from Eq. (5), and correct the error covariance matrix P by using Eq. (7). Moreover, the system’s estimated state values are corrected by the follwing equations:

Δˆ\underline{x}_{t} ≡ [ \begin{matrix}Δˆṙ_{n}^{e} \\ Δû_{e}^{n} \\ Δĥ \\ Δû_{n}^{b} \end{matrix}]_{t} = K_{t}(\underline{z}_{t}− h(ˆ\underline{x}_{t})) (34)

(ˆṙ_{n}^{e})_{t} ← (ˆṙ_{n}^{e})_{t}− (Δˆṙ_{n}^{e})_{t} (35)

( ˆq̃_{e}^{n})_{t} ← \{ \begin{matrix}1 \\ (Δû_{e}^{n})_{t} \end{matrix}\} ^{∗}( ˆq̃_{e}^{n}), ĥ_{t}← ĥ_{t}− (Δĥ)_{t} (36)

( ˆq̃_{n}^{b})_{t} ← \{ \begin{matrix}1 \\ (Δû_{n}^{b})_{t} \end{matrix}\} ^{∗}( ˆq̃_{n}^{b}), (37)

where Eqs. (35)-(37) is an alternative form of Eq. (6).

E.3 Initialization Method and Covariance Setting

The initialization is performed in the quiescent condition. The initial velocity ˆṙ_{e}^{n} and position ˆ q̃_{e}^{n},ĥ of the system equation are the output values from a GPS receiver at the starting time of measurement. The attitude ˆ q̃_{n}^{b} is initialized by sensing the gravity vector and assumeing the heading of the target is 0, because our prototype has no augmentation system such as an earth magnetism sensor, which senses absolute heading of the target.

The initial P_{t} covariance matrix of the EKF is a suitably large diagonal matrix. The Q_{t} and R_{t} covariance matrices are determined, respectively, by the measured static noise of inertial sensors and by the dilution of precision(DOP) values acquired from a GPS reciever.

IV. Evaluation

In order to evaluate our suggested configuration, we constructed a prototype system. Moreover, after calibration we performed an experiment comparing the prototype with GAIA, a high-precision INS/GPS device developed by JAXA. In this section, we describe the details of the prototype, its calibration and the experiment itself.

A. Prototype

Figures 3-4 show a photograph and a processing flow diagram of the prototype system, respectively. The prototype consists of MEMS inertial sensors, a GPS reciever, interface circuit, and a personal computer (PC). The MEMS inertial sensors are an LIS3L02AS4 accelerometer and ADXRS150 gyros, and their data, acceleration, and angular speed, are collected at 100 Hz. The GPS reciever is a TIM-LA GPS module, and its data, position, and velocity, are read out at 4 Hz. In other words, the time update and the measurement update of the INS/GPS algorithm are performed at 100 Hz and 4 Hz, respectively. We also record the temperature sensed by the ADXRS150 gyros for temperature calibration, as will be described later. A PC is used to apply the INS/GPS algorithm to the collected raw datra. For simplicity, we gather the raw data in real time and perform calculation subsequently. We also have confirmed that the PC is exchangeable for a small digital signal processor (DSP) unit which have enough calculation power for real-time application.

The size, weight, and material cost of the prototype are under 100 cm^{3}, under 30 g and about $ 300 without a PC and the structual element. Our suggested configuration is small, light, and inexpensive enough for general-purpose usage.

B. Calibration

Before the experiment, we measured the bias temperature characteristics and the misalignment of the inertial sensors, and canceled these effects by numerical calibration. We chose to correct these two aspects of the system because we consider them major causes of the degradation of the system’s precision. First, it is noted that MEMS inertial sensors are intended for detecting large displacement and their bias stability in relation to changes in temperature is very low. In addition, inertial sensors have to be aligned orthogonally as precisely as possible. We describe the details in the following.

B.1 Relation of bias and temperature

The bias temperature characteristics of accelerometers and gyros are obtained by setting them statically in a thermostatic chamber at a controlled temperature. If the sensor’s bias is affected by operating temperature, the results revealed by a graph of sensed value versus temperature will be uneven. Part of the measured data shown in Figure 5 demonstrates a liner relationship between temperature and bias. Table 1 shows the result of analysis in which the biases of all the sensors are sensitive to changes in operating temperature.

B.2 Misalignment

The misalignment of prototype’s gyros is measured by collecting the output of the prototype fixed on a turntable which rotates at a constant speed, and analyzing this data. Figure 6 shows a photograph of the prototype and the turning table.

We compute the miaslignment of gyros by the following scheme. First, we introduce some notations. We describe an unit vector on the rotation detector, and the scale factor of the X-axis gyro as u⃗_{x} and K_{x}, respectively. An unit vector that is orthogonal to an attachment surface signified A is described as u⃗_{0A}. The output of the X-axis gyro when surface A is the reference surface is expressed as a⃗_{xA}.

Then, when we measure outputs to surface A, B and C, there is the following relation:

[ \begin{matrix}\frac{a⃗_{xA}}{K_{x}} & \frac{a⃗_{yA}}{K_{y}} & \frac{a⃗_{zA}}{K_{z}} \\ \frac{a⃗_{xB}}{K_{x}} & \frac{a⃗_{yB}}{K_{y}} & \frac{a⃗_{zB}}{K_{z}} \\ \frac{a⃗_{xC}}{K_{x}} & \frac{a⃗_{yC}}{K_{y}} & \frac{a⃗_{zC}}{K_{z}} \end{matrix} ] = [ \begin{matrix} & u_{0A}^{T} \\ & u_{0B}^{T} \\ & u_{0C}^{T} \end{matrix}] [u⃗_{x} u⃗_{y} u⃗_{z}]. (38)

This equation shows that three surfaces whose u⃗_{0A} etc. are already known, we can compute the misalignment as u⃗_{x} and the scale factor as K_{x} by the unit condition ||u⃗_{x}|| = ||u⃗_{y}|| = ||u⃗_{z}|| = 1.

The result shown in Table. 2. Measuring the misalignment of the prototype’s accelerometer is omitted, because It contains three axes in a single package and is factory calibrated.

C. Experiment

We compared the output of the prototype with that of GAIA in order to evaluate the precision of the prototype. GAIA is a high-precision INS/GPS device with an absolute position error of under 1m, which is sufficiently reliable enough as the reference. The experiment was carried out iduring the flight of an experimental aircraft, the MuPAL-α owned by JAXA, and horizontal straight flight, steady turning flight, and so on are maneuvered with the prototype system and GAIA installed.

Figures 7-9 show a comparison of position, velocity, and attitude between the prototype and GAIA, respectively. In the result, the difference of mounting positions is considered and cancelled. We can recognize that the prototype’s output is almost equal to GAIA’s. Additionally, Table 3 shows statistical summary of the results. This summary is computed based on values from the time that the error covariance matrix P of the EKF is sufficiently converged, i.e., at the GPS time of 3.57 × 10^{8} milliseconds. According to the statistical summary, in consideration of the mean and the standard deviation, the precision achieved by the prototype is un-

17/1  Naruoka, M.

der 10 meters in regrad to position, about 1 m/sin velocity, under 2 degrees in roll and pitch, and over 10 degrees in heading.

D. Discussion

According to the experimental results, the margin of error of our system is about several meters in regard to position and more than ten degrees regrading heading, which is the area of lowest performance in light of the standard deviation. We consider that our configured INS/GPS is precise enough for the general-purpose controll and monitoring of moving objects. In addition, the result shows that we have built an effective navigation system through integration of a MEMS INS, whose precision is very poor when used alone, and a GPS.

When looking closely at the experimental results, we notice that the accuracy of heading information is much worse than information regrading roll and pitch. We consider this a reflection of the poor performance of the MEMS gyros. That is to say, roll and pitch can be compensated by the earth’s gravitation obtained by accelerometers, because it is much larger than the target’s acceleration derived from the movement. Meanwhile, absolute heading cannot be augmented by the acceleration, but only by the earth’s rotation rate that is very small and cannot be measured with low S/N gyros such as MEMS ones. Thus, the precision of heading is most reflected gyro’s performance, and we conclude that the deterioration of the precision is especially derived from the MEMS gyros.

Based on the above discussion, in order to increase the precision of the suggested system, we have two approaches. The one is the hardware approach. It is worth to integrate another aiding system that compensates for attitude, which is related to the performance of gyros. For example, a magnetic compass is available. And the other is the software approach. If we analyze the MEMS gyro’s error and obtain the mathematical model more properly, the system performance will be improved to take into account the model.

V. Conclusion

We have shown that the suggested prototype INS/GPS system is small, light and low cost enough for general-purpose usage. As well, the flight experiment indicated that our INS/GPS configuration is sufficiently precise for the controll and monitoring of moving objects.

Further clues are presented for improving the system’s precision. According to the experimental results, a relationship apparently exists between system accuracy and the MEMS gyro’s performance. In a future study, we will analyze the relationship.

VI. Ackknowledgements

It is noted that the flight tests using MuPAL-α were carried out in collaboration with JAXA. We would also like to thank Mitsubishi Electric Co.Ltd. for lending the instruments used in the calibration.

References

[1] S. Winkler, M. Buschmann, L. Kruger, H. Schulz and P. Vörsmann, “State Estimation by Multi-Sensor Fusion for Autonoumus Mini and Micro Aerial Vehicles”, Paper 2005-5840 at AIAA Guidance, Navigation, and Control Conference and Exhibit, 2005.

[2] J. Liu, R. Li, X. Niu, and L. Qiao, “MEMS-Based Inertial Integrated Navigation Technology for Micro Air Vehicles ”, Papaer 2006-6547 at AIAA Guidance, Navigation, and Control Conference and Exhibit, 2006.

[3] 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)

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

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

[6] R.E.Kalman, “A New Approach to Linear Filtering and Prediction Problems”, Transactions of the ASME–Journal of Basic Engineering, Vol.82, D, pp.35-45, 1960.

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

[8] D.Simon, “Optimal State Estimation”, ISBN 0-471-70858-5, 2006.

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

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

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

Caption List

Fig. 1 Coordinate Systems Fig. 2 INS/GPS Algorithm Fig. 3 Photograph of the prototype Fig. 4 Block diagram of the prototype Fig. 5 Temperature characteristics of the X-axis gyro bias Fig. 6 Misalignment measurement Fig. 7 Position history Fig. 8 Velocity history Fig. 9 Attitude history Table. 1 List of temperature characteristics Table. 2 Gyro misalignment Table. 3 Differences between the results pf the prototype and those of GAIA

Fig. 1 Coordinate Systems Fig. 2 INS/GPS Algorithm Fig. 3 Photograph of the prototype Fig. 4 Block diagram of the prototype Fig. 5 Temperature characteristics of the X-axis gyro bias Fig. 6 Misalignment measurement Fig. 7 Position history Fig. 8 Velocity history Fig. 9 Attitude history

Table. 1 List of temperature characteristics

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

Table. 2 Gyro misalignment

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

Misalignment [deg]

0.547  0.868  0.731

Table. 3 Difference between the results of the prototype and those of 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