Using Doppler Radar and MEMS Gyro to Augment DGPS for Land

Using Doppler Radar and MEMS Gyro to Augment DGPS for Land
Vehicle Navigation
Jussi Parviainen, Manuel A. Vázquez López, Olli Pekkalin,
Jani Hautamäki, Jussi Collin and Pavel Davidson
Abstract— This paper presents the development of a land
vehicle navigation system that provides accurate and uninterrupted positioning. Ground speed Doppler radar and one
MEMS gyroscope are used to augment differential GPS (DGPS)
and provide accurate navigation during DGPS outages. Using
Doppler radar has advantages of easy assembling and lowcost maintenance compared to wheel encoders. The Doppler
radar and gyro are calibrated when DGPS is available. Loosely
coupled Kalman filter gives optimally tuned navigation solution.
Field tests were carried out to evaluate the performance of the
system. The results show that position accuracy of 1.5 meters
can be achieved during 15 seconds DGPS outages.
I. I NTRODUCTION
Accurate navigation is a key task for automated ground
vehicle control. Using differential GPS (DGPS) and real
time kinematic (RTK) satellite navigation, the position of
a receiver can be determined with centimeter-level accuracy.
However, there are some instances when GPS performance
can be worse than expected. The satellite signals can be
masked by buildings and other reflecting surfaces. DGPS
performance degradation may also occur because of multipath. In order to overcome these difficulties some additional
sensors that are not affected by the external disturbances can
be used. The vehicle position during DGPS outages can be
estimated using heading and velocity measurements. In our
system ground speed from the Doppler radar and heading
rate from the gyro are used to perform the dead reckoning
(DR) computations. In this paper we propose an integrated
DGPS/DR system that provides accurate and uninterrupted
navigation even during DGPS outages. Our main contribution
is the calibration of Doppler radar which makes it suitable
for accurate land vehicle navigation.
There are different sensors such as accelerometers, wheel
encoders, Doppler radars that give information about a
vehicle translational motion. The conventional 6 degrees of
freedom (DOF) inertial navigation system (INS) consists of
three gyros and three accelerometers. The description of INS
and its performance can be found in numerous works, for
example [1], [2], [3], [4], [5]. The cost of INS depends
significantly on the required navigation performance during
DGPS outages. If we wanted to use INS for our application,
we would need a tactical grade INS with the gyro of
approximately 10 deg/h accuracy. Using DR implementation
Jussi Parviainen, Olli Pekkalin, Jani Hautamäki Jussi Collin and Pavel
Davidson are with with Department of Computer Systems, Tampere University of Technology. [email protected]
Manuel A. Vázquez López is with the Department of Mathematics,
Tampere University of Technology. [email protected]
with one gyro and a ground speed sensor can significantly
lower the cost of positioning system.
The possible choice for ground speed sensor is a wheel
encoder or Doppler radar. A wheel encoder provides information on the traveled curvilinear distance of a vehicle by
measuring the number of full and fractional rotations of the
vehicle wheels [6]. This is mainly done by an encoder that
outputs an integer number of pulses for each revolution of the
wheel. The number of pulses during a certain time period is
then converted to the traveled distance through multiplication
with a scale factor depending on the wheel radius. Many
previous works used wheel encoders to measure ground
speed [7]. However, there are several sources of inaccuracy
in the translation of the wheel encoder readings to traveled
distance or velocity of the vehicle. They are [8], [9]: wheel
slips, uneven road surfaces, skidding, and changes in wheel
diameter due to variations in temperature, pressure, tread
wear and speed. The first three error sources are terrain
dependent and occur in a non-systematic way. This makes
it difficult to predict and limit their detrimental effect on
the accuracy of the estimated traveled distance and velocity.
A non-contact speed sensor, such as a Doppler radar, can
overcome these difficulties. It is much more robust against
extreme environmental conditions such as mud and rain, its
output is not affected by wheel slip and is easy to maintain.
By combining the aforementioned gyroscope and Doppler
radar, we have developed a low-cost DR system to accurately
position a vehicle during short DGPS outages. Experimental
results show that less than 1.5 meters position error can be
achieved after 15 seconds of DGPS outage. A similar DR
system was proposed in [10], but no scale factor calibration
was considered, neither for the gyroscope nor for the Doppler
radar (the latter has a significant impact on the performance
of our proposed system).
Section II gives a brief overview of the Doppler radar, the
gyroscope and the DGPS receiver used in our system. The
algorithms are explained in detail in Section III. Our measurement setup is presented in IV-A. Finally, experimental
results are shown in Section IV.
II. I NSTRUMENTATION
A. Doppler Radar as Speed Sensor
Conventionally, land vehicles ground speed is measured
based on wheels rotation using wheel encoders. In these
cases measured speed is sensitive to wheel slip and pressure
of the tires. Also maintenance of wheel encoders can be
difficult and expensive. Therefore Doppler radar was used to
measure the speed of the vehicle. In our tests we used Dickey
John III radar [11]. The dynamic range of this radar is from
0.5 km/h to 107 km/h. Output of the Doppler radar is always
positive. Therefore the direction of vehicle movement cannot
be determined based on Doppler radar output. In addition to
this the Doppler radar is also insensitive to speed below 0.5
km/h. Fig. 1 illustrates the situation. Some studies have been
carried out to detect the direction as in [12], but this kind of
radar is still not commonly used and is expensive.
The output of Dickey John radar is a square wave whose
frequency is proportional to the speed of the vehicle. The
radar is attached to the vehicle at certain boresight angle,
which is approximately 35 degrees. The measured Doppler
shift frequency fd depends on speed as follows:
fd = 2v(f0 /c) cos(θ),
B. Gyroscope
Analog Devices ADIS16130 MEMS gyroscope was used
for heading rate measurements. Output of the gyro is digital
and can be read using serial peripheral interface (SPI)
communication. According to sensor datasheet [13] the gyro
has bias stability
of 0.0016◦ /s (1σ) and angle random walk
√
◦
is 0.56 / h (1σ).
The gyro was calibrated in laboratory for long term bias
and scale factor. The calibrated values for bias and SF
were found to be within specifications of data sheet. Bias
stability was also estimated using Allan variance plot (Fig.2).
From Allan variance plot it can be seen, that bias stability
is approximately 0.0013◦ /s. Calibration was done using
Velmex B5990TS rotary table.
Measured speed (km/h)
3
0.5
0
True speed (km/h)
Allan
deviation
(deg/s)
−2
10
Allan deviation = 0.001288
−3
10
−2
−1
10
(1)
where v, f0 , c and θ are the speed of vehicle, the transmitted
frequency of radar, speed of light and inclination angle of
radar. However, this angle θ can be slightly different from the
nominal boresight angle and that affects the calculation of
vehicle velocity. Thus the radar should be calibrated before
use. The calibration includes the estimation of unknown scale
factor (SF) error, which can be found using DGPS velocity.
Once the radar is calibrated it can be used for accurate
ground speed measurement.
Doppler radar speed
−1
10
10
Fig. 2.
0
10
1
10
tau (s)
2
10
3
10
4
10
Allan variance of ADIS16130 gyroscope
C. NovAtel DGPS receiver
In our tests, we used NovAtel DL-4+ dual frequency
DGPS receiver. The GPS antenna was mounted on the
roof of the car during tests. Accuracy of this receiver is
tens of centimeters in differential GPS mode, which makes
it suitable for reference position to evaluate the accuracy
of dead reckoning. It also provides synchronization pulses
to Doppler radar and gyro. When good GPS signals are
available the DGPS receiver is used to calibrate the Doppler
radar and the gyro.
III. NAVIGATION ALGORITHM
The data from the sensors is processed using three different Kalman filters. One estimates the scale factor of the
Doppler radar, another calibrates the gyro, and the Extended
Kalman filter (EKF) computes the position and heading.
Calibration of the Doppler radar and the gyro was performed
by two different filters to keep the design robust, i.e. possible
errors in other sensor do not affect to the calibration of both
sensors.
A. Doppler radar calibration
Velocity obtained from the Doppler radar output at the
time instant k is modelled as
(2)
vkD = 1 + SkD vk + nD
k
where vk is the true (unknown) velocity at k , SkD is the scale
factor error, and nD
k is a random variable (r.v.) of additive
white gaussian noise (AWGN) whose mean and variance are
known. Scale factor error is considered constant and, hence,
we can write
D
SkD = Sk−1
.
(3)
In order to estimate the scale factor error, horizontal
velocity given by DGPS is used. This is assumed to be the
true velocity distorted by AWGN,
-3
-3
Fig. 1.
-0.5
0.5
3
Doppler speed versus real speed
DGP S
with n
S
vkDGP S = vk + nDGP
,
k
2
∼ N 0, σDGP S .
(4)
Using (2) and (4) we calculate the difference between
Doppler radar and DGPS ground speed
Substituting (7) in (9) yields
Ψgk =
DGP S
zkD = vkD − vkDGP S = SkD vk + nD
.
k − nk
(5)
Equations (3) and (5) can be seen as the state equation
and observation equation, respectively, of a dynamic system
in state-space form. Since we are assuming that both nD
k
S
and nDGP
are gaussian and independent, Kalman filter
k
(KF) [14] can be applied to estimate the state, SkD . The
true velocity needed in (5) is not known, though, and DGPS
velocity will be used as an approximation in that equation.
Once an estimate of the scale factor error is available,
the true velocity is estimated using that obtained from the
Doppler radar as
v̂k =
=
k−1
X
i=0
k−1
X
(1 + S g ) wi + B g + ngi ∆t + Ψ0
wi ∆t +
i=0
k−1
X
+
k−1
X
1 + Ŝ D
(6)
B. Gyroscope calibration
Output of the gyroscope is heading rate and depends on
two parameters, the bias and the scale factor error, that must
be estimated every time the device is turned on. Typically,
this is modeled as
wkg = (1 + S g ) wk + B g + ngk
ngi ∆t + Ψ0
i=0
= Ψk + S g
k−1
X
S
nDGP
,
k
(8)
being Ψk the true heading of the vehicle at time k, and
S
nDGP
a r.v. of white gaussian noise whose variance,
k
2
σDGP S (v DGP S ), depends on velocity.
If the initial attitude, Ψ0 , is known, the current heading can
be obtained from the gyroscope by integrating the heading
rate, which in discrete-time amounts to
k−1
X
k−1
X
wi ∆t + B g k∆t +
ngi ∆t,
(10)
i=0
i=0
where it has been taken into account that
Ψk = Ψ0 +
k−1
X
wi ∆t.
(11)
Subtracting equation (10) from (8) we compute the difference between DGPS heading (our reference signal) and that
obtained from the gyroscope,
S
zkg = ΨDGP
− Ψgk = −B g k∆t − S g
k
−
k−1
X
wig ∆t + Ψ0 ,
(9)
i=0
with ∆t representing the sampling period or time interval
between two consecutive gyro measurements.
k−1
X
i=0
S
wi ∆t + nDGP
−
k
ngi ∆t,
(12)
i=0
which can be seen as the observation equation of a dynamic
system whose state comprises the bias and scale factor error.
These are assumed constant, and thus the equations that
govern the evolution of the system are simply:
(7)
where wk is the true heading rate of the vehicle at discrete
time k, S g is the scale factor error, B g is the bias, and ngk is
additive white gaussian noise, whose variance is known to
be σg2 .
The reference signal used to calibrate the gyroscope, i.e.,
to estimate the values of parameters Bkg and Skg , is the
S
heading given by DGPS, ΨDGP
. It is affected by noise
k
so that
Ψgk =
B g ∆t+
i=0
i=0
g
Bkg = Bk−1
(13)
g
.
Sk−1
(14)
Skg
= Ψk +
k−1
X
i=0
vkD
with Ŝ D being the final estimate of the Doppler radar scale
factor error given by the KF.
S
ΨDGP
k
S g wi ∆t +
=
Equation (12) (observation equation) involves the true
value of the variable we want to estimate, i.e., the true
heading rate, wi , in this case. This is solved by using the
heading rate from gyroscope, wig , as an approximation, in
which case we have
zkg = −Bkg k∆t − Skg
k−1
X
i=0
S
−
wig ∆t + nDGP
k
Bkg
k−1
X
ngi ∆t, (15)
i=0
where it has also been used that
= B and Skg = S g .
Pk−1 g
The term
i=0 ni ∆t in (15) is a random walk driven
by the gyroscope noise, and hence is a zero mean gaussian
r.v. [15] whose variance (which grows linearly over time) can
be computed from the gyroscope manufacturer specifications
(angle random walk). However, the corresponding stochastic
process is not white (its value at time k highly depends on its
value at time k − 1), and hence the KF cannot be applied to
estimate the gyroscope bias and scale factor in the dynamic
system given by equations (13), P
(14) and (15). In order to
k−1
overcome this difficulty, the term i=0 ngi ∆t, which will be
RW
denoted as δωk , is going to be modelled as an additional
state that needs to be estimated. It evolves according to the
equation
RW
RW
δωkRW = δωk−1
+ nδω
(16)
k
g
where nRW
= ngk ∆t is a r.v. of AWGN whose variance is
k
2
2
σg ∆t .
Using (16) the observation equation can be rewritten as
zkg = −Bkg k∆t − Skg
k−1
X
i=0
S
wig ∆t − δωkRW + nDGP
, (17)
k
and this along with equations (13), (14) and (16) define
a linear-gaussian dynamic system in state-space form that
allows for the KF to be applied in order to estimate the bias
and scale factor error. From those, and using equations (10)
and (11), the latter being rewritten as
S g Ψk = S g Ψ0 + S g
k−1
X
wi ∆t,
(18)
i=0
the compensated heading obtained from the gyroscope output
is
Pk−1 g
w ∆t − B̂ g k∆t
(19)
Ψ̂k = Ψ0 + i=0 i
1 + Ŝ g
Fig. 3. Doppler radar is attached at rear and GPS antenna is on the roof
of the car, gyro was mounted inside
being B̂ g and Ŝ g the final estimates of the gyroscope bias
and scale factor error, respectively, computed by the KF after
the calibration process.
z = Hx + η,
C. Position and heading estimation
Vehicle dead reckoning computations can be described by
the following equations

 P˙N = v cos(Ψ)
(20)
P˙ = v sin(Ψ)
 E
Ψ̇ = w,
where PN and PE are the north and east components of
vehicle position, Ψ is heading, v is ground speed (measured
by DGPS when it is available and Doppler radar during
DGPS outages) and w is gyro heading rate measurement.
The EKF is used to solve this non-linear estimation
problem. The augmented state vector for the EKF is
T
x = PN PE Ψ δv D δω g
,
(21)
where δω g and δv D are added to the EKF as additional
states in order to compensate for the residual non-white gyro
and Doppler radar errors, respectively, that remain after the
sensors are calibrated according to sections III-A and III-B.
These two states are modeled as first order Gauss Markov
process with time constants τg and τD .
The covariance propagation in the EKF is
Pk+1|k = Φk Pk|k ΦTk + Qk ,
(22)
where Φ is the discrete equivalent of the continuous transition matrix F and Q is the process noise matrix. In our case
we have the following transition matrix


0 0 −vD sin(Ψ) cos(Ψ)
0
 0 0 vD cos(Ψ) sin(Ψ)

0



 . (23)
0
0
0
0
1
F =

 0 0

0
−1/τD
0
0 0
0
0
−1/τg
The measurement equation is
where
(24)

0 0
0 0 
(25)
0 0
T
and z = PNDGP S PEDGP S ΨDGP S
(DGPS north
position, east position and course over ground (heading)
measurement, respectively) and η is zero mean white noise
with covariance matrix R. Since DGPS computes heading
using arctangent of north and east velocity components,
the standard deviation of heading is inversely proportional
to the ground speed. Therefore, accuracy of the heading
measurement ΨDGP S degrades as speed decreases [16], i.e.,
σ DGP S
(26)
σΨDGP S = v
v
where σΨDGP S and σvDGP S are the standard deviations of
DGPS heading and velocity errors.

1
H= 0
0
0 0
1 0
0 1
IV. E XPERIMENTAL RESULTS
A. Measurement setup
In order to assess the performance of the proposed DR
system, several experiments were done. Measurements were
taken using normal passenger car with Dickey-John III
Doppler radar attached to the rear and DGPS antenna placed
on the top of the roof as illustrated in Fig. 3. ADIS16130
gyro was securely fixed inside the vehicle. The gyro and
Doppler radar were connected to National Instruments NI
USB-8451 and NI USB-6525 devices.
Gyro was found out to be sensitive to fluctuations of the
supply voltage, and therefore a voltage regulating circuit with
5 V LM2940T-5.0 LDO regulator was used. Also, the analog
bandwidth of the gyro was reduced from 300 Hz to 52 Hz
using an external 100 nF capacitor.
Gyro communicated via serial peripheral interface (SPI)
bus, and Doppler radar used symmetrical square wave.
Laptop PC
(post processing)
5
Speed (m/s)
Position data
and
timestamps
USB bus
4
3
Doppler radar speed
GPS speed
2
1
Insensitivity zone
0
Timestamping pulse
National
Instruments
USB-8451
National
Instruments
USB-6525
SPI
bus
Novatel DGPS
Fig. 4.
Gyroscope
Pulse
Ground
speed
Doppler
radar
The measurement setup flowchart
The GPS receiver provided an edge-triggered timestamping
mechanism. The SPI communication with gyro was handled
by NI USB-8451 device, which acted as the bus master. The
device had also digital output, which was used to create
timestamp pulses for the GPS receiver. The frequency of
the square wave was measured using the capability of the
NI USB-6525 to count edges from an input signal.
The timestamping mechanism of the GPS receiver has,
however, a frequency upper limit of 20 Hz, which is less than
the system’s sampling rate of 100 Hz. Therefore, the final
synchronization of all gyro and edge counter measurements
to GPS system time was done in post-process phase by
interpolation. The flowchart of the measurement setup is
illustrated in Fig. 4.
B. Measurement Results
Our test vehicle was driven along several trajectories in
a parking lot while data delivered by the gyroscope and
the Doppler radar were recorded. DGPS was available all
the time and provided estimates of the vehicle position that
served two purposes: at first to calibrate both the Doppler
radar and the gyroscope (see Sections III-A and III-B,
respectively), and then to evaluate the accuracy of our DR
system.
In Fig. 5 the differences between 20 Hz output of DGPS
ground speed and Doppler radar speed are illustrated after
the calibration was done. When the vehicle starts moving,
large discrepancy between Doppler radar and DGPS speed
is explained by the insensitivity zone of the Doppler radar to
the speed below 0.5 km/h. Once speed is increased above this
threshold, Doppler error becomes smaller. From the upper
plot of Fig. 5 we can see that 20 Hz output of Doppler is
much more noisy compared to DGPS. The standard deviation
of Doppler radar ground speed error is approximately 0.20
m/s.
Examples of the test trajectories are presented in Figs.
6 and 7. The black dashed lines on these plots depict a
calculated DR trajectory during 15 second navigation without
GPSspeed −Radarspeed (m/s)
20
40
60
80
100
time (s)
0.5
0
−0.5
Insensitivity zone
10
20
30
40
50
60
70
80
90
100
time (s)
Fig. 5. Doppler radar speed versus DGPS speed and their difference in
trajectory 1.
10m
outage
start
DGPS
DR
Fig. 6. Trajectory 1 (solid line) driven with test vehicle. The dashed line
illustrates an example where dead reckoning was used for 15 seconds.
using DGPS data. The tests showed that we are able to
estimate horizontal position with the accuracy better than
1.5 meters in 99 percent of all tests. The position error was
calculated as the difference between DR and DGPS positions.
Since the outages are simulated the original DGPS data exist
also during simulated outages and the errors caused by DR
can be calculated.
Figs. 8 and 9 present the histograms of maximum alongtrack and cross-track errors during 15 seconds DGPS outage.
This data is based on 700 realizations. Fig. 10 presents the
histogram of maximum along-track and cross-track errors
during 30 seconds DGPS outage. We can see that a reasonable accuracy is also achieved during 30 seconds outage.
V. C ONCLUSION
In the paper we showed that Doppler radar with MEMS
gyro can be used as DR system to aid DGPS during signal
outages. This system is easy to mount and has low cost
compared to wheel encoder systems. Kalman filters were
2.5
cross−track
along−track
2
1.5
error (m)
outage
start
1
0.5
20m
DGPS
DR
0
0
20
40
60
80
100
%
Fig. 9. Histogram of maximum along-track and cross-track errors from
700 DR tests of trajectory 2 with 15 seconds DGPS outage.
Fig. 7. Trajectory 2 (solid line) driven with test vehicle. The black dashed
line illustrates an example where dead reckoning was used for 15 seconds.
4.5
cross−track
along−track
4
3.5
2.5
3
cross−track
along−track
2
2.5
error (m)
2
1.5
1.5
1
error (m)
0.5
1
0
0
0
20
40
60
80
100
%
0.5
0
20
40
60
80
100
Fig. 10. Histogram of maximum along-track and cross-track errors from
700 DR tests of trajectory 2 with 30 seconds DGPS outage.
%
Fig. 8. Histogram of maximum along-track and cross-track errors from
700 DR tests of trajectory 1 with 15 seconds DGPS outage.
implemented to estimate scale factor error for Doppler radar
speed sensor, and scale factor and bias for gyroscope. Also,
an extended Kalman filter was used to estimate initial heading and position for DR system. The measurement results
showed that that during 15 second outage, less than 1.5 meter
cross and along track errors could be achieved.
VI. ACKNOWLEDGMENTS
The work described in this paper was carried out in the
project Future GNSS Applications and Techniques (FUGAT)
funded by the Finnish Funding Agency for Technology and
Innovation (Tekes).
R EFERENCES
[1] J. Farrell and M. Barth, The Global Positioning System and Inertial
Navigation, 3rd ed. McGraw-Hill, 1999.
[2] D. Titterton and J. Weston, Strapdown Inertial Navigation Technology,
2nd ed. IEE, 2004.
[3] P. D. Groves, Principles of GNSS, Inertial, and Multisensor Integrated
Navigation Systems. Artech House Publishers, 2008.
[4] P. Savage, “Strapdown inertial navigation integration algorithm design, part 1: attitude algorithms,” Journal of Guidance, Control and
Dynamics, vol. 21, pp. 19–28, January 1998.
[5] ——, “Strapdown inertial navigation integration algorithm design, part
2: velocity and position algorithms,” Journal of Guidance, Control and
Dynamics, vol. 21, pp. 208–221, March 1998.
[6] E. Abbott and D. Powell, “Land-vehicle navigation using GPS,”
Proceedings of the IEEE, vol. 87, pp. 145–162, Januaury 1999.
[7] H. Chung, L. Ojeda, and J. Borenstein, “Accurate mobile robot deadreckoning with a precision-calibrated fiber-optic gyroscope,” IEEE
Transactions On Robotics And Automation, vol. 17, no. 1, February
2001.
[8] J. Borenstein and L. Feng, “Measurement and correction of systematic
odometry errors in mobile robots,” IEEE Trans. Robot. Automat,
vol. 12, pp. 869–880, December 1996.
[9] R. Carlson, J. Gerdes, and J. Powell, “Error sources when land vehicle
dead reckoning with differential wheelspeeds,” the Journal of The
Institute of Navigation, vol. 51, no. 1, pp. 12–27, December 2004.
[10] D. M. Bevly and B. Parkinson, “Cascaded Kalman filters for accurate
estimation of multiple biases, dead-reckoning navigation, and full state
feedback control of ground vehicles,” Control Systems Technology,
IEEE Transactions on, vol. 15, no. 2, pp. 199–208, March 2007.
[11] Dickey-John Radar III datasheet. [Online]. Available: www.
dickey-john.com/ media/11071-0313-200702 1.pdf
[12] R. Rasshofer and E. Biebl, “A direction sensitive, integrated, low
cost Doppler radar sensor for automotive applications,” Microwave
Symposium Digest, 1998 IEEE MTT-S International, vol. 2, pp. 1055–
1058 vol.2, June 1998.
[13] Analog Devices ADIS16130 Data sheet. [Online]. Available: http:
//www.analog.com/static/imported-files/data sheets/ADIS16130.pdf
[14] R. E. Kalman, “A new approach to linear filtering and prediction
problems,” Transactions of the ASME Journal of Basic Engineering,
pp. 35–45, 1960.
[15] W. Stockwell, “Angle random walk,” 2003. [Online]. Available: www.
xbow.com/support/support pdf files/anglerandomwalkappnote.pdf
[16] D. M. Bevly, “GPS: A low cost velocity sensor for correcting inertial
sensor errors on ground vehicles,” Journal of Dynamic Systems,
Measurement, and Control, vol. 126, no. 2, pp. 255–264, June 2004.