You are on page 1of 6

GPS AIDED IMU FOR UNMANNED AIR

VEHICLES 1

J.F. Vasconcelos, J. Calvário, P. Oliveira,


C. Silvestre

Instituto Superior Técnico,


Institute for Systems and Robotics,
Lisboa, Portugal

Abstract: This paper presents the development of a strapdown navigation system


to determine the pose (position and attitude) of unmanned air vehicles, using GPS,
accelerometers, magnetometers and rate gyros triads. The current work resorts
to complementary filtering to implement a navigation system developed on Earth
coordinates and Euler angles. Special features include bias estimation and removal
in inertial sensors. An attitude aiding device, referred to as Magneto-Pendular
Sensor, is introduced and detailed. Multirate filter synthesis is outlined, and a
time-varying attitude transformation is briefly discussed. The navigation system
performance is evaluated in simulation using a typical model-scale helicopter
maneuver.

Keywords: Navigation Systems, Complementary Filters, Time-varying Systems,


Strapdown Systems

1. INTRODUCTION missions is the unavailability of low power, inex-


pensive and reliable onboard navigation systems
Recent Unmanned Air Vehicles (UAVs) exhibit capable of integrating the information from so-
a high degree of operational reliability in the phisticated sensor suites.
presence of dynamic, uncertain environments and
challenging scenarios. Among the many UAV con- This paper presents the development of a GPS
figurations available today, helicopters are one of aided Inertial Measurement Unit (IMU) using
the most maneuverable and versatile platforms. complementary filters that explicitly tackle the
They can takeoff and land without a runway problem of merging information provided by the
and can hover in place. These capabilities have vehicle sensor suite over distinct, yet complemen-
brought about the use of unmanned helicopters as tary frequency regions. In this design the IMU
highly maneuverable sensing platforms, allowing provides the platform’s pose (position and atti-
for the access to remote and confined locations tude). Fusion of these data with the linear position
without placing human lives at risk. available from a low cost GPS receiver produces
high rate, accurate position and attitude esti-
One of the major stumbling blocks that have mates that will be central to stabilize the plat-
prevented UAVs from successfully executing their form and support the implementation of reliable
trajectory tracking control strategies (Cunha et
1 This work was (partially) supported by the FCT Pro- al., 2003).
grama Operacional Sociedade de Informação (POSI) in
Due to physical constraints, the helicopter on-
the frame of QCA III and by the POSI/SRI/41938/2001
ALTICOPTER project. board sensors provide measurements at different

460
Rate Gyro
λ
λ̂ This paper is organized as follows. Section 2
Magnetometer
Attitude
Complementary Filter bˆgyros
briefly introduces the complementary filters, pro-
Magneto-Pendular
Sensor vides the attitude complementary filter equations
and develops the MPS attitude determination
⎡p
⎢ ⎥
ˆ⎤ method. Section 3 addresses implementation is-
⎣ vˆ ⎦
Accelerometer sues, presents the position filter equations and the
Position
Complementary Filter bˆaccel multirate filter that combines the low-rate GPS
GPS
readings with the high-rate information provided
by the remaining sensors. Section 4 presents and
Fig. 1. Complementary Filter Block Diagram discusses the overall navigation system simulation
results. Concluding remarks and future work are
sampling rates. A synthesis methodology to ex- pointed out in section 5.
plicitly address the system’s multirate nature is
used, endowing this setup with properties asso-
ciated to the single rate complementary filters
2. COMPLEMENTARY FILTERING.
(Pascoal et al., 2000). The resulting navigation ATTITUDE DETERMINATION
system is depicted in Fig. 1. The system pro-
duces estimates of the vehicle pose and removes
The complementary filter theory is deeply rooted
the sensor bias that is a common source of drift
in the work of Wiener (Wiener, 1949). An un-
error in navigation systems. The real time imple-
known signal can be estimated using corrupted
mentation in a DSP of the resulting filter struc-
measurements from one or more sensors whose in-
ture is straightforward. Nowadays several navi-
formation naturally stands in distinct and comple-
gation systems resort to Extended Kalman Fil-
mentary frequency bands (Brown, 1972), (Brown
tering (EKF) to integrate the position measure-
and Hwang, 1997). The minimum mean-square
ments available from a GPS receiver with the
estimation (MMSE criteria) error was first solved
position and attitude estimates given by the In-
by Wiener (Wiener, 1949), assuming that the
ertial Navigation System (INS). While a unified
unknown signal had noise-like characteristics,
error equations analysis for INS has been carried
which usually does not fit the signal description.
out in the literature (Britting, 1971), proposed
Complementary filtering explores redundancy to
navigation systems still differ due to the several
smooth measurement errors without prior knowl-
filtering architectures that may be used. Recent
edge about the signal.
work can be found in (Sukkarieh, 2000), (Gaylor,
2003), and (Whitmore et al., 1997). Sukkarieh Interestingly enough, the complementary filter
in (Sukkarieh, 2000) develops a general purpose, does not apply any distortion to the signal (dis-
high integrity navigation system for land vehicles, tortionless filtering), and can successfully reject
that uses an EKF to integrate the information the noise components. This approach proves to
provided by a GPS and an INS. In this work the be a very efficient time-invariant solution, whose
filter uses a simple vehicle dynamic model and parameters are defined according to sensor’s com-
a multi-path/signal blockage GPS error analysis plementary bandwidths descriptions. In the linear
is presented. Gaylor(Gaylor, 2003) also addresses time-invariant case the transfer function analysis
GPS error analysis for spaceship docking and ex- can be done using conventional Bode plots.
tends the sensor error correction by introducing
The loss of optimality in complementary filters
sensor bias estimation in the EKF. Both rely
due to ignoring noise stochastic description is very
on the assumption that an INS algorithm has
slight and can even be beneficial for special cases
been previously developed. Whitmore (Whitmore
where it is better to consider irregular measures
et al., 1997) present an INS algorithm based on
that occur out of the expected variance, as con-
exact attitude update using quaternion dynamics.
vincingly argued in (Brown, 1972). To meet addi-
The complementary filter structure, shown in tional constrains, the filter order can be increased,
Fig. 1, consists of an attitude filter and a posi- as seen in (Pascoal et al., 2000) where increasing
tion filter, both featuring bias removal. The at- the filter order enabled new degrees of freedom
titude filter entries are the rate gyro readings in the transfer function and enhanced the high
and an attitude-aiding sensor based on magnetic- frequency noise rejection without distorting the
field and gravitational readings, thus referred as signal.
Magneto-Pendular Sensor (MPS). The position
filter is based on the work presented in (Pascoal
et al., 2000), resorting to accelerometers readings 2.1 Attitude Filter
and to GPS. Since gravity must be removed from
accelerometers’ specific force, the position filter Euler angles are chosen as the state space repre-
uses the attitude estimates provided by the atti- sentation for the rigid body attitude filter, due to
tude filter. its simplicity. A nonlinear transformation must be

461
ω where bω is the bias term in angular rate space,
Q(λˆ ) assumed as time-invariant.
uλ k
The transformation Q(λ) applied on rate gyro
T yλ k biases bω issues a time-varying bias terms bλ (t) in
bˆλ k +1 bˆω k +1 bˆω k bˆλ k yˆ λ k
Euler angles, whose integration can not be directly
Q −1 (λˆ ) z-1 Q(λˆ ) T z-1 -
computed from the feedback term b̂λ k+1 = b̂λ k +
K2λ (yλ k − ŷλ k ).
K1
The problem of properly integrating biases is
K2
solved resorting to a nonlinear space transforma-
tion, as depicted in the dotted box in Fig. 2.
Stability and performance issues must be carefully
Fig. 2. Attitude Complementary Filter
examined in the near future to ensure reliability
applied to the rate gyros measurements to obtain for operational applications. Nevertheless, exhaus-
Euler angles derivatives. In the case where bias tive filter tests show no problems in the regular
terms are present in the sensor readings, time- operational conditions, where the yaw angle is
invariance is lost and a new methodology is pro- unconstrained and roll and pitch angles are not
posed to correctly estimate and compensate these close to the non-singular configurations.
sensor errors.
The complementary filter structure proposed re-
quires also an attitude reading that is not directly 2.2 Magneto-Pendular Sensor
available. To tackle this problem, a Magneto-
Pendular Sensor (MPS) concept is also proposed, An indirect attitude measurement can be ob-
which assumes the role of an attitude aiding sen- tained given two vector readings in both body
sor. and inertial frames. This problem was first in-
troduced by Wahba (Wahba, 1965) and several
Let λ = (ψ, θ, φ) and bλ = (bψ , bθ , bφ ) be the solutions have been proposed along time-spread
yaw, pitch and roll Euler angles, and the bias articles. In the current work, the proposed so-
in each of the three channels of the angular rate lution may be considered as a TRIAD-like ap-
sensors, respectively. Assuming the step invariant proach, see (Caruso, 1998). Earth’s gravitational
discrete time version of the attitude kinematics as field available from the onboard accelerometer
the underlying model for the filter design, the atti- triad measurements is used to determine pitch and
tude and biases estimates, λ̂ and b̂λ respectively, roll angles. The yaw angle is computed from the
can be written as Earth’s magnetic field measurements provided by
⎧    

⎪ λ̂k+1 I3×3 I3×3 T λ̂k a magnetometer triad.

⎪ =
0 I3×3
+

⎪ b̂λ k+1    b̂λ k
⎨ If the gravity vector coordinates are known on
I T K1λ
+ 3×3 uλ k + (yλ k − ŷλ k ) , (1) both body and Earth frames, it is possible to

⎪ 0 K

⎪   2λ determine pitch and roll angles resorting to the

⎪  λ̂k
⎩ ŷλ k = I3×3 0 rotation between both frames, as expressed by the
b̂k following relation
⎡ ⎤ ⎡ ⎤
where T represents the sampling interval, the ax −g sin θ
index k abbreviates the time instant t = kT , ⎣ ay ⎦ = R−1 g = ⎣ g cos θ sin φ ⎦ , (2)
uλ is the vector of angular rate measurements, az g cos θ cos φ
yλ is the vector of angular measurements and
K1λ = I3x3 k1λ , K2λ = I3x3 k2λ are the Euler where g = (0, 0, g) is the gravity vector in Earth
angles and biases estimation filter gain matrices, frame coordinates, a = (ax , ay , az ) is the gravity
respectively. The block diagram of the proposed vector expressed in body frame, g is the local
structure is shown in Fig. 2. Since rate gyros gravitational acceleration and R is the shorthand
directly measure angular rates of body frame with for the rotation matrix between body and Earth
respect to inertial frame expressed in the body B R(λ) . The pitch and roll angles can be
frames, E
coordinate system, denoted as ω, their readings computed as
must be converted to Euler angle rates using the φ = arctan (ay , az )
relation uλ = Q(λ) ω where ⎧ ay
⎨ θ = arctan 2(−ax , ), sin φ = 0
⎡ ⎤ sin φ , (3)
0 sin φ sec θ cos φ sec θ a
⎩ θ = arctan 2(−ax , z ), cos φ = 0
Q(λ) = ⎣0 cos φ − sin φ ⎦ . cos φ
1 sin φ tan θ cos φ tan θ
where the four quadrant arctan 2 was used. The
The same transformation Q(λ) is implicitly ap- yaw angle is determined by projecting the mag-
plied to the rate gyro bias terms bλ (t) = Q(λ)bω , netic field reading on the x-y plane of the Earth

462
uλ λ
λ̂
Rate Gyro

Attitude
Magnetometer
Magneto-Pendular yλ Complementary Filter bω
Centripetal aMPS Sensor
Acceleration
Removal

bP −
g
− p̂
uP
Accelerometer E
B ( )
R λˆ

Position
yP Complementary Filter bˆP
GPS

Fig. 3. Navigation System Architecture

frame according to Ea m = RY (θ)RX (φ)m, uP k


yP k

where m represents the Earth’s magnetic field 2


T
T2
2
T
in body frame, Ea m is the projection of the 2

Earth’s magnetic field, and RY (θ), RX (φ) are bˆP k +1 bˆP k +1 bˆP k bˆP k
E E
yˆ P k
B
E R (λˆ ) z-1 E
B R(λˆ ) T z-1 T z-1 -
pitch and roll elementary rotation matrices, re-
spectively. The yaw angle is computed using K1

ψ = arctan 2 −Ea my ,Ea mx − αdec where αdec is K2

Earth’s magnetic declination angle. This equation K3


relies solely on the Earth’s magnetic field projec-
tion Ea m and does not need any additional infor- Fig. 4. Position Complementary Filter
mation on the magnetic field vertical component.
The computation of pitch and roll angles can Using linear differential inclusions, the stability of
become erroneous if external accelerations are the resulting filters as well as their ”frequency-
present in the accelerometer readings, corrupting like” performance can be assessed using efficient
gravity vector estimation. Normal operating con- numerical analysis tools that borrow from con-
ditions seldom involve long time linear accelera- vex optimization techniques. The proposed posi-
tions, so these disturbances only occur at high tion complementary filter solution corresponds to
frequency, which is effectively removed due to the multirate version of the aforementioned filter,
the complementary filter lowpass characteristics. leading to the state model given by
⎧  ⎡ ⎤
Regarding the centripetal accelerations, which can
⎪ T2  
occur even in an uniform motion, they must be ⎪
⎪ p̂k+1 I3×3 I3×3 T I3×3 p̂k

⎪ =⎣ 2 ⎦
compensated according to the relation aM P S = ⎪

v̂k+1
0 I3×3 I3×3 T
v̂k +

⎪ b̂P k+1 b̂
a − ω̂ ×B v, where aM P S is the actual gravity ⎪
⎪ ⎤ 0 0 I3×3 P k
⎨ ⎡
⎪ T2 
reading fed to (3), ω̂ is the angular rate drawn I3×3 K1P
,
+⎣ 2 ⎦u K2P (yP k − ŷP k )
from the unbiased rate gyro measurement and B v ⎪
⎪ I3×3 T Pk +

⎪ K3P
is the vehicle’s velocity described in body frame, ⎪
⎪ 0  


which can be provided by a velocity sensor or ⎪
⎪  p̂k


⎩ ŷP k = I3×3 0 0
v̂k
by the complementary position filter’s velocity
b̂P k
estimate. (4)
where p̂ = (px , py , pz ) and v̂ = (vx , vy , vz ) are the
position and velocity estimates in Earth frame,
3. IMPLEMENTATION b̂P = (bx , by , bz ) is the bias estimate in each of the
three acceleration measurements axis, uP and yP
This section presents the overall navigation sys- are the acceleration and position measurements,
tem architecture as depicted in Fig. 3 and points respectively. K1P = I3x3 k1P , K2P = I3x3 k2P , and
out some implementation issues. K3P = I3x3 k3P are the gain matrices related to
p̂, v̂ and b̂P , respectively, resulting in the block
The attitude complementary filter and MPS
diagram shown in Fig. 4.
blocks have been described in the previous Sec-
tion. The problem of estimating the velocity and Position readings are available from a GPS re-
position of an autonomous vehicle in the con- ceiver and acceleration is provided by an ac-
tinuous time setup was dealt with in (Pascoal celerometer triad after gravitational term com-
et al., 2000) by resorting to time-varying filters. pensation, as depicted in Fig. 3. Furthermore,

463
an attitude estimate, provided by the attitude
20
filter, is required to determine the position in
Earth frame, since the strapdown mechanization 15

provides sensor readings only in body frame. 10

−Z (m)
The proposed position filter exhibits efficient bias 5

estimation and compensation, displaying bounded 0

position errors even in the presence of attitude


−5
estimation errors. As displayed in Fig. 3, attitude −50

bias estimate is used to directly provide unbiased 0

angular rate from rate gyros to the centripetal ac- 50 0


20
celeration removal block. A similar accelerometer 100 80
60
40

100
bias estimation feedback is unsuited since it leads Y (m) X (m)

to multiple equilibrium points for the underlying


difference equations, see (Stovall, 1997) for details. Fig. 5. Vehicle trajectory

Complementary filter gains were obtained resort- 100


Position

ing to Kalman filter theory. For a discrete time X est.


Y est.
Z est.
stationary Kalman filter, the optimal gains are X nom.
Y nom.
80
computed according to K = P CdT (Cd P CdT + Z nom.

R)−1 , where P is the error covariance matrix,


60
determined by the solution of the algebraic Riccati
equation P = Ad P ATd − Ad P CdT (Cd P CdT +
Position (m)

R)−1 Cd P ATd + Q, where the matrices Ad and Cd 40

are taken from the discrete state space kinematics


model and Q and R are weight matrices that act 20

as ”tuning knobs” for gain determination.


0
Since the GPS sampling rate is much lower than
the navigation system rate, the position filter is −20
0 20 40 60 80 100 120 140 160 180
a multirate or periodic estimator. The filter gains Time (s)

can be obtained using the methodology presented


in (Bittanti et al., 1990), resulting in an optimal Fig. 6. Real and estimated position
solution for the periodic estimator. For the cur-
rent position filter, calculations show that optimal presented in Table 2. Clearly, the position filter
periodic position gains are only non-zero when a performance improves the simulated GPS accu-
new GPS reading is available and, therefore, the racy and limits the IMU integration errors.
filter will work open loop between GPS readings.
Coordinate Mean Abs. Error
Moreover, position filter transfer function analysis E(|x − x̂|)
is not straightforward due to the periodic feature. Position Filter X, Y, Z 1.39 m
See (Oliveira, 2002) for a multirate filter channel Yaw 1.16 × 10−2 ◦
to channel frequency analysis methodology. Attitude Filter Pitch 1.68 × 10−1 ◦
Roll 1.01 × 10−1 ◦
Table 2. Filter Results
4. RESULTS
Attitude Error
The navigation system was tested using a typical 0.08
Est.
0.06 MPS
helicopter maneuver that is depicted in Fig. 5. The
Yaw Error(o)

0.04

trajectory starts with a straight path, followed by 0.02


0
an ascending helix. Inertial sensors and GPS up- −0.02
0 20 40 60 80 100 120 140 160 180
date rates were set to 50 Hz and 1 Hz, respectively. 0.8
Time (s)

The noise and bias characteristics of the sensors 0


Pitch Error(o)

are presented in Table 1. −0.8

−1.6 Est.
Sensor Bias Noise Variance (σ 2 ) MPS
−2.4
Rate Gyro 0.05 ◦ /s (0.02 ◦ /s)2 0 20 40 60 80 100
Time (s)
120 140 160 180

Accelerometer 10 mg (0.6 mg)2 0.5

(1 μG)2
Roll Error(o)

Magnetometer - 0

GPS - 10 m2 −0.5
Est.
Table 1. Sensor Errors −1
MPS

0 20 40 60 80 100 120 140 160 180


Time (s)

The navigation system position results are shown


in Fig. 6 and Mean Absolute Error values are Fig. 7. Attitude Error

464
0
Rate Gyro Bias Estimation
0.05
Accelerometer Bias Estimation should be extended beyond white noise model for
0 a more realistic approach. Due to its low-cost, low-

X(m/s2)
−0.05
power and high-performance characteristics the
p(o/s)

−0.05
−0.1
−0.15 proposed navigation system will be implemented
−0.1 −0.2
0 50 100
Time (s)
150 0 50 100
Time (s)
150 in a DSP and tested in a real vehicle in the near
0 0.05
future.
0

Y(m/s2)
−0.05
q(o/s)

−0.05
−0.1
−0.15
−0.1 −0.2 REFERENCES
0 50 100 150 0 50 100 150
Time (s) Time (s)
0 0.05
Bittanti, S., P. Colaneri and G. Nicolao (1990). An
0
Algebraic Riccati Equation for the Discrete-
Z(m/s2)

−0.05
r(o/s)

−0.05
−0.1
Time Periodic Prediction Problem. Systems
−0.15
−0.1 −0.2 & Control Letters pp. 71–78.
0 50 100 150 0 50 100 150
Time (s) Time (s) Britting, K.R. (1971). Inertial Navigation Systems
Analysis. John Wiley & Sons, Inc.
Fig. 8. Biases Estimation Brown, R.G. (1972). Integrated Navigation Sys-
The attitude filter errors, plotted in Fig. 7, are tems and Kalman Filtering: A Perspec-
also bounded. The lowpass characteristics of the tive. Journal of the Institute of Navigation
attitude complementary filter can be observed as 19(4), 355–362.
it smooths out the high-frequency acceleration Brown, R.G. and P.Y.C. Hwang (1997). Introduc-
components during the linear path and the start tion to Random Signals and Applied Kalman
of the loop (at 20 s). Due to these disturbances, Filtering. third ed.. John Wiley & Sons, Inc.
yaw errors are smaller than pitch and roll errors Caruso, M.J. (1998). Applications of Magnetore-
since these are affected by the vehicle acceleration. sistive Sensors in Navigation Systems. Tech-
nical report. Honeywell Inc.
The sensor biases are correctly estimated through Cunha, R., C. Silvestre and A. Pascoal (2003).
the high-pass filter rejection of low-frequency com- A Path Following Controller for Model-Scale
ponents in sensor measurements, as depicted in Helicopters. In: Proceedings of European Con-
Fig. 8. In real applications, it is advisable to per- trol Conference ECC 2003. EUCA. Cam-
form a careful calibration leading to good initial bridge, UK.
biases estimates. Since real biases have only small Gaylor, D.E. (2003). Integrated GPS/INS Nav-
variations due to sensor’s temperature changes igation System for Design for Autonomous
and aging, small bias estimation gains can be Spacecraft Rendezvous. PhD thesis. The Uni-
used. Simulating such case yields about 1.2 m vesity of Texas at Austin.
and (8.3 × 10−3 , 9.8 × 10−2 , 3.4 × 10−2 ) ◦ of mean Oliveira, P. (2002). Periodic and Non-Linear Es-
absolute error in position and in Yaw, Pitch and timators with Applications to the Navigation
Roll angles, respectively. of Ocean Vehicles. PhD thesis. Universidade
Técnica de Lisboa.
Pascoal, A., I. Kaminer and P. Oliveira (2000).
5. CONCLUSION Navigation System Design Using Time Vary-
ing Complementary Filters. IEEE Aerospace
This paper presented a navigation system for and Electronic Systems 36(4), 1099–1114.
an unmanned model-scale helicopter, based on Stovall, S. H. (1997). Basic Inertial Navigation.
complementary filtering. The navigation system Technical report. Naval Air Warfare Center
featured distortionless filtering and good noise Weapons Division.
rejection. Bias compensation is also performed, Sukkarieh, S. (2000). Low Cost, High Integrity,
further extending the typical IMU operation time. Aided Inertial Navigation Systems for Au-
The whole navigation system structure proved to tonomous Land Vehicles. PhD thesis. Univer-
be simple and intuitive through its stationary set- sity of Sydney.
ting, without resorting to more complex solution Wahba, G. (1965). A Least-Squares Estimate of
such as INS/EKF systems, providing good results Satellite Attitude. SIAM Review 7(3), 409
both in attitude and position for typical vehicle problem 65–1.
maneuvers. Whitmore, S.A., M. Fife and L. Brashear (1997).
Development of a Closed-Loop Strap Down
Future work involves the observability and sta- Attitude Systema for an Ultrahigh Altitude
bility issues related to the several feedback loops Flight Experiment. Technical report. NASA.
introduced in the proposed architecture. Addi- Wiener, N. (1949). Extrapolation, Interpolation
tionally, filter performance can be enhanced by and Smoothing of Stationary Time Series.
introducing new aiding sensors, such as a velocity John Wiley and Sons. New York.
sensor or a Laser Range Finder, and sensor errors

465

You might also like