Antti Lehtinen Doppler Positioning with GPS

TAMPERE UNIVERSITY OF TECHNOLOGY
Department of Electrical Engineering
Antti Lehtinen
Doppler Positioning with GPS
Master of Science Thesis
Subject approved by the Department Council on 17.10.2001
Examiners: Prof. Keijo Ruohonen (TUT)
M.Sc. Paula Syrjärinne (Nokia Mobile Phones)
Preface
This Master of Science thesis is the result of my research on Doppler positioning with the GPS. The thesis has been written at the Tampere University of
Technology between the autumn of 2001 and February of 2002.
I began my work on the GPS field at the Institute of Mathematics in November
2000. My very first task was to do a literature survey and find out if Doppler
measurements can be used to positioning with the GPS. It turned out that the
field was unexplored, which gave me a possibility to develop new algorithms and
theory.
I would like to thank professor Keijo Ruohonen for his mathematical assistance
and other help he has given throughout the work. In addition, I express my
gratitude to Paula Syrjärinne, who has provided me with GPS related advice,
measurement data and excellent remarks on the contents of the thesis. Nokia
Mobile Phones deserves my thanks for funding the project. Moreover, many
Nokia employees have given me valuable feedback at the workshops. I would
also like to thank the personnel of the Institute of Mathematics, especially Niilo
Sirola, who has helped me a lot by proofreading the thesis, giving me new ideas
and sharing his Matlab functions.
Furthermore, I am indebted to all the people who have given me the joy of living
that helped me to complete the thesis. Especially Marjo Matikainen deserves
thanks for her support during the work.
Tampere, 26th February 2002
Antti Lehtinen
Iidesranta 3 A 4
33100 Tampere
Tel. 040-7291388
i
Contents
Abstract
v
Tiivistelmä
vi
Abbreviations and Acronyms
viii
Symbols
ix
1 Introduction
1
2 The Doppler Effect
3
2.1
Physical Background and Applications . . . . . . . . . . . . . . .
3
2.2
History of Doppler Navigation . . . . . . . . . . . . . . . . . . . .
5
3 The Global Positioning System
7
3.1
History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7
3.2
The Basic Concepts . . . . . . . . . . . . . . . . . . . . . . . . . .
8
3.2.1
Reference Coordinate Systems . . . . . . . . . . . . . . . .
8
3.2.2
Range Positioning . . . . . . . . . . . . . . . . . . . . . . .
8
3.2.3
GPS Signal Structure . . . . . . . . . . . . . . . . . . . . .
9
3.2.4
Pseudorange and Delta Range . . . . . . . . . . . . . . . .
10
Pseudorange Positioning . . . . . . . . . . . . . . . . . . . . . . .
11
3.3.1
Problem Formulation . . . . . . . . . . . . . . . . . . . . .
11
3.3.2
Solution Procedure . . . . . . . . . . . . . . . . . . . . . .
12
3.3
ii
3.4
Positioning Error Analysis . . . . . . . . . . . . . . . . . . . . . .
13
3.5
Limitations of the GPS . . . . . . . . . . . . . . . . . . . . . . . .
14
4 Doppler Positioning with the GPS
16
4.1
Need for Doppler Positioning . . . . . . . . . . . . . . . . . . . . .
16
4.2
Comparison between GPS and Transit . . . . . . . . . . . . . . .
17
4.3
The Governing Equations . . . . . . . . . . . . . . . . . . . . . .
18
4.3.1
The Doppler Shift Equation . . . . . . . . . . . . . . . . .
18
4.3.2
The Clock Drift Error . . . . . . . . . . . . . . . . . . . .
20
4.3.3
Mathematical Problem Formulation . . . . . . . . . . . . .
21
Symbolic Methods . . . . . . . . . . . . . . . . . . . . . . . . . .
23
4.4.1
Solving the Receiver Position . . . . . . . . . . . . . . . .
23
4.4.2
Existence and Uniqueness Considerations . . . . . . . . . .
23
Standard Numerical Methods . . . . . . . . . . . . . . . . . . . .
24
4.5.1
Problem Formulation . . . . . . . . . . . . . . . . . . . . .
24
4.5.2
The Newton Method . . . . . . . . . . . . . . . . . . . . .
25
4.5.3
The Gauss-Newton Method . . . . . . . . . . . . . . . . .
26
4.5.4
Calculating the Derivative Matrix . . . . . . . . . . . . . .
27
Problem Specific Iterative Methods . . . . . . . . . . . . . . . . .
30
4.4
4.5
4.6
5 Positioning Performance
5.1
5.2
31
Measurement Noise . . . . . . . . . . . . . . . . . . . . . . . . . .
31
5.1.1
Ionospheric Effects . . . . . . . . . . . . . . . . . . . . . .
31
5.1.2
Receiver Noise . . . . . . . . . . . . . . . . . . . . . . . . .
32
5.1.3
Unknown User Velocity . . . . . . . . . . . . . . . . . . . .
32
5.1.4
Biased Time Estimate . . . . . . . . . . . . . . . . . . . .
34
Positioning Accuracy . . . . . . . . . . . . . . . . . . . . . . . . .
35
5.2.1
Effect of Measurement Errors on Positioning Solution . . .
35
5.2.2
Doppler Dilution of Precision . . . . . . . . . . . . . . . .
36
iii
5.2.3
5.3
Applications of the Doppler Dilution of Precision Concept
Case of Normally Distributed Measurement Noise . . . . . . . . .
6 Numerical Results
39
40
43
6.1
Measurement Data . . . . . . . . . . . . . . . . . . . . . . . . . .
43
6.2
Properties of the Measurement Noise . . . . . . . . . . . . . . . .
44
6.2.1
Hypothesis of the Properties of the Measurement Errors .
44
6.2.2
Numerical Testing of Normality . . . . . . . . . . . . . . .
45
6.2.3
Numerical Testing of Correlation . . . . . . . . . . . . . .
45
6.2.4
Magnitude of Errors . . . . . . . . . . . . . . . . . . . . .
47
6.2.5
Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . .
48
Positioning Performance with Real Data . . . . . . . . . . . . . .
48
6.3.1
Positioning Accuracy . . . . . . . . . . . . . . . . . . . . .
48
6.3.2
Convergence . . . . . . . . . . . . . . . . . . . . . . . . . .
50
Positioning Performance with Simulated
Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
6.4.1
Positioning Accuracy . . . . . . . . . . . . . . . . . . . . .
51
6.4.2
The Distribution of DPDOP Values . . . . . . . . . . . . .
51
6.3
6.4
7 Conclusions
53
iv
Abstract
TAMPERE UNIVERSITY OF TECHNOLOGY
Department of Electrical Engineering
Institute of Mathematics
Lehtinen, Antti: Doppler Positioning with GPS
Master of Science thesis, 58 pages
Examiners: Prof. Keijo Ruohonen and M.Sc. Paula Syrjärinne
Funding: Nokia Mobile Phones
March 2002
Satellite positioning is expected to have hundreds of millions of users in the near
future. There is a huge commercial potential in personal positioning. The standard positioning system nowadays is the Global Positioning System (GPS). The
GPS is very accurate in good conditions. In indoors and urban areas, however,
the standard GPS positioning usually fails. This decreases suitability of the GPS
for personal positioning.
The objective of this thesis was to examine a new GPS positioning method based
on Doppler measurements. Doppler positioning with the GPS has generally been
overlooked because it provides worse accuracy than the standard method. However, the Doppler measurements can be obtained even in very bad conditions.
Thus, when combined with cellular network assistance, the method may prove
valuable.
In this thesis, a new positioning algorithm is developed. The algorithm needs only
the Doppler measurements from at least four GPS satellites, the GPS satellite
orbital parameters and the current time. A general theory for estimating errors
in GPS Doppler positioning is also developed. Numerical results are compared
with the measurements and the accuracy of the algorithm is assessed.
v
Tiivistelmä
TAMPEREEN TEKNILLINEN KORKEAKOULU
Sähkötekniikan osasto
Matematiikan laitos
Lehtinen, Antti: Doppler-paikannus GPS:llä
Diplomityö, 58 sivua
Tarkastajat: Prof. Keijo Ruohonen ja DI Paula Syrjärinne
Rahoitus: Nokia Mobile Phones
Maaliskuu 2002
Satelliittipaikannuksella uskotaan lähitulevaisuudessa olevan satoja miljoonia
käyttäjiä. Henkilökohtainen paikannus tarjoaa suuria kaupallisia mahdollisuuksia. Tärkein paikannusjärjestelmä on nykyään Global Positioning System (GPS).
Hyvissä olosuhteissa GPS on erittäin tarkka. Ongelmia aiheutuu kuitenkin siitä,
että perinteinen GPS-paikannusmenetelmä ei usein toimi sisätiloissa tai kaupunkialueilla. Tämä luonnollisesti heikentää GPS:n soveltuvuutta henkilökohtaiseen
paikannukseen.
Tämän diplomityön tarkoituksena oli tutkia satelliittisignaalien kantoaalloista
tehtävien Doppler-mittausten käyttömahdollisuutta GPS:ssä. Doppler-ilmiöön
perustuvaa paikannusta on menestyksekkäästi käytetty esimerkiksi GPS:n edeltäjässä, Transit-järjestelmässä. GPS:n yhteydessä Doppler-mittausten käyttöä paikan selvittämiseen ei kuitenkaan ole käytetty, sillä paikannustarkkuuden on oletettu olevan huonompi kuin perinteisellä vale-etäisyyksiin perustuvalla menetelmällä. Vale-etäisyyksien selvittämiseksi GPS-vastaanottimen on kuitenkin kyettävä demoduloimaan satelliittien lähettämä navigointisanoma. Sen sijaan Dopplermittauksia pystytään useimmiten tekemään vaikka signaali olisikin niin vääristynyt ettei navigointisanomaa saada.
Tässä diplomityössä esitetään uusi GPS-paikannusmenetelmä, jolla voidaan ratkaista vastaanottimen sijainti mittaamalla vähintään neljän GPS-satelliitin kantoaaltojen Doppler-siirtymät yhtäaikaisesti. Menetelmässä ei tarvita navigointisignaalia, joten paikannus voidaan suorittaa myös huonoissa signaaliolosuhteisvi
sa. Satelliittien ratatiedot ja aikatieto pitää kuitenkin olla saatavilla. Mikäli navigointisanomaa ei saada, pitää vastaanottimen siis olla yhteydessä esimerkiksi
matkapuhelintukiasemaan.
Työssa kehitetään myös yleinen teoriapohja Doppler-paikannuksen virhetarkastelulle. Teoria on täysin uusi, mutta perustuu samoihin käsitteisiin, joita käytetään
perinteisessä GPS-paikannuksessa. Teorian mukaan paikannusvirhettä estimoitaessa tarkastelu voidaan eriyttää kahteen toisistaan riippumattomaan osaan:
mittausvirheiden arvioimiseen ja satelliittigeometrian vaikutuksen laskemiseen.
Työssä esitetään myös paikannusvirheteorian käyttomahdollisuuksia esimerkiksi numeerisen laskennan keventämiseksi. Lisäksi arvioidaan Doppler–mittauksiin
vaikuttavia virhetekijöitä sekä niiden suuruuksia.
Diplomityön numeerisessa osassa uuden paikannusmenetelmän toimivuutta kokeillaan todellisen mittausaineiston avulla. Paikallaanolevalle vastaanottimelle
jolla on tarkka aikatieto saadaan paikannusvirheen arvioksi 100–200 metriä. Virheen havaitaan kuitenkin riippuvan hyvin voimakkaasti satelliittien sijainnista
sekä saatavilla olevien satelliittisignaalien määrästä. Huonoimmissa tapauksissa
menetelmä osoittautuu antavan paikkaestimaatteja, jotka ovat miljoonien kilometrien päässä todellisesta vastaanottimen sijainnista. Hyvänä puolena on se,
että työssä kehitetyn virhetarkasteluteorian avulla kyseiset tilanteet kyetään havaitsemaan. Teoria osoittautui toimivaksi myös numeeristen simulointien valossa.
Tässä diplomityössä esitetty paikannusmenetelmä voisi toimia varmistusmenetelmänä perinteisen GPS-paikannuksen epäonnistuessa. Paikannusvirheen havaittiin kuitenkin olevan suurempi kuin perinteisellä menetelmällä. Virhe voi olla
hyvinkin suuri silloin kun saatavilla on vain vähän satelliittisignaaleja. Lisäksi
teoreettisesti on odotettavissa, että vastaanottimen liike aiheuttaa hyvin merkittävän paikannusestimaatin heikkenemisen.
vii
Abbreviations and Acronyms
C/A
cm
DOD
DDDOP
DDOP
DHDOP
DGDOP
DGPS
DOP
DPDOP
DVDOP
ECEF
ECI
GDOP
GPS
Hz
m
Matlab
MHz
PRN
P(Y)
s
SA
coarse/acquisition code
centimetre
U.S. Department of Defence
Doppler drift dilution of precision
Doppler dilution of precision
Doppler horizontal dilution of precision
Doppler geometrical dilution of precision
differential GPS
dilution of precision
Doppler position dilution of precision
Doppler vertical dilution of precision
Earth-centred Earth-fixed coordinate system
Earth-centred inertial coordinate system
geometrical dilution of precision
Global Positioning System
hertz
metre
Matrix Laboratory, a mathematical software
megahertz
pseudorandom noise
precision code
second
selective availability
viii
Symbols
×
•
∂
α
f
n
t
ti
wu
x
ρ̇
ρi
ρ̇i
d
fi
ru
x
ν1 , ν 2
ω
ω
θ
ρ̇
ρ̂
ρ̇ˆ
ρi
ρ̇i
ρ̂i
ρ̇T
ρT i
ρ̇T i
σ
vector cross product
dot product, scalar product
euclidian norm, 2-norm, length of a vector
partial derivative
angle between satellite velocity and satellite-to-user vector
frequency measurement error caused by receiver clock drift
vector n estimate correction in an iterative algorithm
receiver time estimate bias
signal propagation time from the ith satellite
error in user velocity vector estimate
vector x estimate correction in an iterative algorithm
machine precision
delta range vector measurement noise
measurement noise of pseudorange from the ith satellite
measurement noise of delta range from the ith satellite
clock drift equivalent error
satellite i frequency measurement error
user position error
positioning error vector
degrees of freedom
transmitted frequency
received frequency
angle between relative velocity and wave propagation direction
delta range measurement vector
expected pseudorange vector
expected delta range vector
pseudorange measurement from the ith satellite
delta range measurement from the ith satellite
expected pseudorange from the ith satellite
true delta range vector
true pseudorange from the ith satellite
true delta range from the ith satellite
standard deviation
ix
σ2
a
ai
A
b
c
c
cov
d
dˆ
Di
E
f
f (x)
fi
g
G
H
I
i, j, k, l
L1
L2
n
n
n̂
p(x̂)
pi (x̂)
R
ri
ru
rˆu
T
tu
ṫu
v
vprop
vrel
vi
wi
wT u
wu
x
x
x̂
x0
variance, covariance
vector in R3
relative acceleration vector of the ith satellite with respect to the user
Doppler geometric dilution of precision matrix
vector in R3
speed of light
vector in R3
covariance operator
receiver clock drift equivalent, derivative
estimated receiver clock drift equivalent
Doppler shift from the ith satellite
expectation value operator
real valued function
probability distribution function of positioning error vector
measured frequency from satellite i
real valued function
Doppler geometry matrix
pseudorange geometry matrix
identity matrix
satellite indexes
GPS civil frequency 1575.42 MHz
GPS military frequency 1227.6 MHz
number of satellites used in the calculations
user position and time vector
estimated user position and time vector
delta range residuals function
ith component of delta range residuals function
set of real numbers
satellite i position vector
user position vector
estimated user position vector
matrix transpose
receiver clock bias
receiver clock drift
speed
wave propagation speed
transmitter relative speed with respect to the receiver
estimated satellite i relative velocity vector with respect to the user
satellite i velocity vector
true user velocity vector
estimated user velocity vector
wave transmitter position
user position and drift vector
estimated user position and drift vector
initial guess for user position and drift vector
x
xk
xu
xˆu
yu
yˆu
zu
zˆu
vector x estimate after k steps of an iterative algorithm
user x coordinate
estimated user x coordinate
user y coordinate
estimated user y coordinate
user z coordinate
estimated user z coordinate
xi
Chapter 1
Introduction
Satellite positioning has received much attention during the last 40 years. The
beginning era of satellite positioning research was focused on military applications. Now the focus has changed. Because of the huge commercial potential,
the objective of the current research is mainly to develop equipment for personal
positioning.
The Global Positioning System (GPS) is currently the only satellite positioning
system suitable for personal positioning. The GPS is funded by the United States.
A new system, called Galileo, is expected to be launched by the European Union
in 2008. The Galileo is very similar to the GPS.
The GPS has a very good accuracy in good conditions. However, problems arise
in indoors and urban areas. The standard GPS receiver needs to track at least
four satellites simultaneously. In addition, it needs to demodulate the navigation
message from the carrier signals. The demodulation is possible only if the signal
is not too noisy. When the demodulation fails, the position cannot be solved.
This is a huge drawback for use of the GPS in personal positioning. Most of the
users of the positioning services live in urban areas.
During the last few years much effort has been put to solve the problem. Many
innovative solutions have been explored. They are mainly based on the idea of
the assisted GPS. This means that the GPS measurements are combined with
other data, which is available for example from cellular network.
In this thesis an entirely new algorithm based on Doppler measurements is presented. Doppler positioning has been earlier mentioned in the literature, but
its value has been overlooked. The reason for the bad reputation of the GPS
Doppler positioning is the fact that its accuracy is expected to be worse than
that of the standard positioning method. This may indeed be true, but no one
1
has seemed to consider the use of Doppler positioning in weak signal conditions.
The great benefit of the Doppler positioning is that the Doppler measurements
can be received even when the standard positioning fails. The Doppler measurements can be used to solve the receiver position even without demodulating the
navigation message. This requires that the satellite orbital parameters and the
current time are known from some other source. Thus, this thesis belongs to the
field of assisted GPS.
The discussion of the GPS Doppler positioning is started with the physical background of the Doppler effect in Chapter 2. The chapter also enlightens the applications of the Doppler effect in satellite positioning and other fields. Chapter 3 introduces the Global Positioning System, its standard positioning algorithm and its limitations. Chapter 4 begins by discussing the feasibility of GPS
Doppler positioning. Later in the chapter, the new Doppler positioning algorithm
is presented. Chapter 5 turns the attention to the important issue of positioning
accuracy. Possible error sources are discussed. In addition, a theory for estimating Doppler positioning accuracy is developed. The possible applications of
the theory are also covered. Chapter 6 begins with a numerical analysis of the
properties of the measurement noise. Later, the new theory is compared with the
numerical results. Furthermore, positioning results with real measurement data
are illustrated. Finally, Chapter 7 ends the thesis with conclusions.
2
Chapter 2
The Doppler Effect
In this chapter we will shortly discuss the Doppler effect as a physical phenomenon
and introduce some of its applications in modern technology. In addition, the
history of exploiting the Doppler effect in satellite navigation is considered.
2.1
Physical Background and Applications
The Doppler effect was first noticed by the Austrian physicist C.J. Doppler (18031853). The phenomenon was first noticed in sound, but it applies to every kind
of wave propagation. The Doppler effect is caused by a transmitter that is in
relative motion with respect to a receiver. When the transmitter approaches the
receiver, the transmitted signal is squeezed. This produces a rise in the frequency
of the transmitted signal. As explained in [Alonso & Finn, p. 706] and [Giancoli,
p. 321], the frequency experienced by the receiver can be modelled as
vrel cos θ
ω = 1−
ω
(2.1)
vprop
where ω is the received frequency, ω is the transmitted frequency, vrel is the magnitude of relative velocity of the transmitter with respect to the receiver, vprop is
the propagation speed of the wave and θ is the angle between the relative velocity
and the wave propagation direction. The equation 2.1 is a valid approximation
when vrel vprop . Figure 2.1 illustrates the squeezing of the signal when the
transmitter located at the point x is at motion with speed v.
The Doppler effect is still mostly known from acoustics. An example from everyday life is the shift in the tone of a car when it passes the listener. The Doppler
effect in acoustics is widely exploited in military applications. Assume that a
noisy object (eg. a helicopter) is travelling along a straight line with a constant
velocity. Then a stationary sensor receives a frequency that varies with time as
3
Signal magnitude
Frequency shift for a moving transmitter
x
v
Position
Figure 2.1: Doppler effect
Frequency
Frequency versus time for a passing single-pitch object
Time
Figure 2.2: Doppler curve
4
in Figure 2.2. The shape of the so called Doppler curve in Figure 2.2 can be used
to estimate the distance to the tracked object as well as its velocity. Numerically
this can be done with least squares curve fitting.
The applications of the Doppler effect are by no means limited to acoustics.
Perhaps the most used application of the Doppler effect is radar. The principle
of Doppler radar is explained in [Janza et al., p. 410]. In addition to radars,
the Doppler effect is also important in lidars (light detection and ranging). The
working principle of a lidar closely resembles that of a radar, but the lidar is
used at optical frequencies [Post & Cupp]. Doppler lidars are mainly used in
atmospheric measurements of small particles.
Another important application is the laser Doppler anemometry. The use of
laser Doppler anemometry (LDA) in fluid velocity field measurement is explained
in [Tropea]. The method is also sometimes called laser Doppler velocimetry
[Wang & Snyder]. Furthermore, Doppler ultrasound measurements are widely
used in medicine. Blood flow velocity, for example, is an important measurable
that can be measured with Doppler ultrasound [Bascom & Cobbold].
2.2
History of Doppler Navigation
The preceding section showed that there are numerous applications in different
fields that take advantage of the Doppler effect. The Doppler effect, by its nature,
is ideally suited for velocity measurement. However, it has already for long been
used in navigation. In this section, we will enlighten the history of satellite
Doppler navigation.
The idea of a satellite Doppler navigation system comes from Applied Physics
Laboratory of the John Hopkins University, United States. The invention was
made in 1958 and was publicised in 1960. The early development of the project
and a proof of feasibility of satellite Doppler navigation was presented in
[Guier & Weiffenbach]. The U.S. Navy Navigation Satellite System, also known
as Transit, was designed based on this idea. The system became operational
in 1964. Details of the system were released in 1967 by the U.S. government.
This was done in order to permit commercial manufacture and use of Transit
navigation equipment.
The Transit system provided intermittent position fix updates rather than continuous navigation information [Laurila, p. 463]. It consisted of satellites in circular,
polar orbits about 1075 kilometres high. The receiver only needed to track one
satellite to produce a navigation fix. In order to produce an accurate estimate,
5
the receiver needed to collect measurement data over several minutes. The actual
computation of the receiver position was based on the Doppler curve of a satellite
pass. Doppler curves of satellites are flatter than in Figure 2.2. This is because
they travel along circular orbits rather than straight lines. The position of the
receiver was determined by curve fitting. The latitude and longitude estimates
were optimised such that the computed Doppler curve fitted to the measured
data. The computational details can be found in [Laurila, p. 474]. The accuracy
of the Transit system was about half a kilometre.
In order to compute the Doppler curves, one also needs to know the position
and velocity vectors of the satellite. Thus, the Transit satellites transmitted
binary data by phase modulation. This data is called ephemeris. One was able
to compute the satellite position and velocity from the ephemeris. The Transit
satellites transmitted continuous wave signals on two distinct frequencies, namely
150 MHz and 400 MHz. The purpose of this was to eliminate the first order
ionospheric refraction and receiver frequency measurement errors. The accuracy
of the Transit system was about 100 meters for a stationary receiver, but was
severely worse for a receiver in unknown motion [Laurila, p. 476]. According
to [Parkinson & Spilker, p. 4], the Transit system is still operational, but new
satellites are not being launched.
6
Chapter 3
The Global Positioning System
In this chapter we will introduce the Global Positioning System. Its history and
general working principles will be covered. The accuracy considerations and the
limitations of the system are also discussed in short.
3.1
History
The history of the Global Positioning System (GPS) can be said to begin from
the year 1973. Until then, the U.S. Navy and the U.S. Air Forces had been
studying navigation separately. But in 1973 a Joint Program Office was formed
by the U.S. Department of Defence (DOD). The new system called GPS or
NAVSTAR, was planned. The first prototype satellites were launched in 1978
[Parkinson & Spilker, pp. 4-9]. The full operational capability was reached by
the end of year 1994.
Although the GPS has been a military project, it has been designed also for
the civil use. In the beginning the U.S. military feared that the GPS could be
effectively used by the enemy. A system called selective availability (SA) was
created. This meant that there were two different signals, one for the public and
one encrypted for the military only. The public signal was deliberately degraded
such that the accuracy for the civil users was an order of magnitude worse than
for the military.
As late as in May 2000 the SA was finally turned to zero. Technically the SA
may still be re-introduced in case a need for that arises. The reason for turning
SA off is partially the economic boost it was thought to give. Partially the reason
is, however, that the effects of the SA can be circumvented with the modern
technology. The mentioned modern technology involves carrier smoothing and so
called differential GPS (DGPS).
7
Recently, a project similar to the GPS has also been launched in the Europe. The
project is called Galileo. The Galileo satellite system is planned to be perfectly
compatible to the GPS. This is a benefit, because the same receivers can use
either or both of the systems. The main difference between Galileo and GPS
is that Galileo has not been planned to be used by the military. Galileo is a
completely civil project, which is funded by the European Union and various
European companies. The Galileo system is expected to be operational in 2008
[ESA].
3.2
3.2.1
The Basic Concepts
Reference Coordinate Systems
In every kind of navigation one needs some reference coordinate system. In GPS
this is an important issue, since the natural coordinate systems for the satellites’
positions and for the receiver’s position are different.
The Earth-centred inertial (ECI) coordinate system is particularly suitable for
determining the orbits of the satellites [Kaplan, p. 23]. The origin of the ECI
system is at the centre of mass of the Earth. The equations of motion of the GPS
satellites can be modelled as if the ECI system were unaccelerated.
For the purposes of computing the position of a GPS receiver, it is more convenient to use a coordinate system that rotates with the Earth. This coordinate
system is called Earth-centred Earth-fixed (ECEF) system. A stationary receiver
on the surface of the Earth is stationary also in the ECEF coordinate system.
Thus, the natural coordinate system for the satellites is ECI and that for the
receiver is ECEF. The normal procedure is to compute the satellite orbits in
the ECI system and then transform them to the ECEF system. Thereafter, the
receiver position is computed in the ECEF system. In this thesis, unless otherwise
specified, all the given coordinates will be in the ECEF coordinate system.
3.2.2
Range Positioning
GPS has been designed to be a time-of-arrival positioning system. This means
that the receiver’s position is determined by measuring the time that the GPS
signal uses to travel from the satellite to the receiver. With the knowledge that
the signal travels with the speed of light c, the satellite-to-receiver range can
be computed. When range measurements are simultaneously performed with
8
sufficiently many satellites, the receiver’s position can be solved. An example in
two dimensions is shown in Figure 3.1.
Satellite 1
Receiver
Satellite 2
Satellite 3
Figure 3.1: Principle of Range Positioning
When the user knows the positions of the satellites and the satellite-to-receiver
distances, he can draw a picture similar to Figure 3.1. In three dimensions the
circles around the satellites are naturally spheres. The radii of the spheres are
the distances to the satellites measured by the receiver. The receiver position can
be found from the intersection of the spheres.
3.2.3
GPS Signal Structure
The GPS satellites transmit two different signals. Coarse/acquisition (C/A) signal is transmitted at the frequency L1 (1575.42 MHz). The C/A signal is open to
be used by everyone. The precision (P(Y)) signal is transmitted at the frequency
L2 (1227.6 MHz). The P(Y) signal is encrypted and can be used only by the U.S.
military. The GPS receivers are totally passive in the sense that they need not
transmit anything. In order to conclude its position, the receiver only needs to
listen to the frequency L1 .
The satellite carrier signals are binary phase shift key modulated with pseudorandom noise (PRN) codes. The modulation frequency is 1.023 MHz. The code
repeats once in a millisecond. The PRN codes are binary sequences that appear
to be noise but are actually deterministic. Determinism is naturally necessary
because the receiver needs to demodulate the signal. The noise-like characteristic
9
of the PRN codes is crucial because all the satellites transmit at the same frequency. The PRN codes are used to differentiate the satellite signals from each
other. The PRN codes have been designed to have extremely low cross-correlation
[GPS 1995]. With their wide spectra and low cross-correlations, the PRN codes
are ideally suited for making the difference between the satellite signals. Systems
like the GPS, which transmit different data at the same frequency, are called code
division multiple access systems.
The satellites transmit also navigation data which is modulated to the C/A signal
at 50 Hz frequency. The navigation data is organised in superframes, frames and
subframes. The superframes, frames and subframes last 12.5 minutes, 30 seconds
and 6 seconds, respectively.
The navigation message contains for example the ephemeris. The ephemeris is a
set of time varying parameters that are used to calculate the position and velocity
of the satellite. The satellite positions can be computed accurately or approximated [Korvenoja & Piché]. The knowledge of satellite’s position is crucial for
the positioning, as can be seen from the Figure 3.1. If the satellite position is
biased, also the receiver position will be incorrectly determined. The ephemeris
contains also some correction terms that pass the user information for example
about the satellite clock drift.
One of the most important things that the navigation data contains, is the time.
The time in the navigation message is the time of transmission of the beginning
of each subframe. Thus, the time information is sent in the navigation message
once in 6 seconds.
3.2.4
Pseudorange and Delta Range
Above, the GPS was stated to be a time-of-arrival positioning system. The way
to measure the propagation times of the signals is based on the PRN codes.
The satellite PRN code is replicated in the receiver. Retarding the replica code
and performing a correlation process with the received signal yields ti , the
signal propagation time from the ith satellite. This can be obtained because the
user knows both the time of the beginning of each subframe from the navigation
message and the time of signal reception from the correlation process. The GPS
signals travel at the speed of light c. Thus, the satellite-to-user range can be
computed with
r i − r u = cti
(3.1)
where r i is the satellite position vector, r u is the receiver position vector, c is the
speed of light and ti is the signal propagation time.
10
The satellite signal is very accurate. However, the user clock is usually not
synchronised with the satellite clocks. This makes the exact measurement of the
range impossible. If the satellite clock is behind the system time, the measured
range shorter than the real range and vice versa. The measured range is called
pseudorange and can be modelled as
ρi = c (ti + tu ) = r i − r u + ctu + ρi
(3.2)
where tu is the receiver clock bias and ρi is the measurement error. The true
pseudorange is the pseudorange measurement with no error:
ρT i = r i − r u + ctu
(3.3)
The other significant measurable in GPS positioning is the delta range, or the
time derivative of the pseudorange. Let us find out an expression for the true
delta range by differentiating the equation 3.3:
ρ̇T i =
dρT i
ri − ru
d
=
(r i − r u + ctu ) = (wi − wu ) •
+ ct˙u
dt
dt
r i − r u (3.4)
where wi is the satellite velocity vector, wu is the receiver velocity vector and t˙u
is the receiver clock bias time derivative, or the receiver clock drift. More information about measuring pseudorange and delta range can be found in [Braasch].
The delta range measurements are further discussed in Chapter 4 and Chapter 5.
3.3
3.3.1
Pseudorange Positioning
Problem Formulation
The GPS receivers calculate their positions in a process called pseudorange positioning. Assume that the receiver measures pseudoranges to n satellites simultaneously. We can write the equation 3.2 for all the satellites simultaneously. We
achieve the following system of equations:

ρ1 = r 1 − r u + ctu



 ρ2 = r 2 − r u + ctu
(3.5)
..

.



ρn = r n − r u + ctu
All the pseudoranges ρi are known from the measurements and all the satellite
position vectors r i are known from the navigation data. It remains to solve for
the user position vector r u and the receiver clock bias tu . Since r u ∈ R3 , there
are four unknowns to be solved for. Thus, one needs at least four independent
11
equations in the system of equations 3.5. Physically this means pseudorange
measurements from at least four different satellites at the same time. If there
are more than four equations, the methods developed for solving overdetermined
systems of equations may be applied.
3.3.2
Solution Procedure
There are numerous methods for solving the system of equations 3.5. Both closedform and iterative solutions have been extensively studied. A good overview of
different methods is provided in [Korvenoja, pp. 31-50]. Here we will introduce
the most commonly used method, namely the iterative least squares algorithm.
For notational simplicity, let us denote the user position and time vector as
n = [xu yu zu ctu ]T where xu , yu , zu are the user x, y, z coordinates, respectively, c is the speed of light and tu is the user clock bias.
Moreover,T let us
denote the estimated user position and time vector as n̂ = xˆu yˆu zˆu ctˆu . The
expected pseudorange is denoted by ρ̂i and is the theoretical pseudorange calculated assuming n = n̂. With the pseudorange model 3.2 one has the expected
pseudorange as a function of n̂
ρ̂i = ρ̂i (n̂) = r i − rˆu + ctˆu
(3.6)
Using the vector notation, we have the pseudorange measurement vector ρ =
[ρ1 ρ2 . . . ρn ]T and the expected pseudorange vector ρ̂ = [ρˆ1 ρˆ2 . . . ρˆn ]T
Using the first order Taylor series, one can approximate the theoretical pseudorange vector ρ̂ at any point n̂ + n:
∂ ρ̂
n
(3.7)
∂ n̂
where n is the linearization point and n is an arbitrary vector. Naturally, the
approximation 3.7 is most accurate when n is small.
ρ̂ (n̂ + n) = ρ̂ (n̂) +
Obviously, the ultimate purpose of the algorithm is to find the receiver’s position.
Thus, the user needs to find a correction term n such that the theoretical
pseudoranges match the measured ones. This can be achieved by setting the
right hand side of the equation 3.7 to equal ρ:
∂ ρ̂
n = ρ
(3.8)
∂ n̂
Now the equation 3.8 can be solved. According to [Kaplan, p. 521], the least
squares solution for the correction term is
−1 T
T
∂ ρ̂
∂ ρ̂
∂ ρ̂
n = −
(ρ̂ − ρ)
(3.9)
∂ n̂
∂ n̂
∂ n̂
ρ̂ (n̂) +
12
The estimated position and time vector n̂ can be updated by adding the correction
term n to the estimate n̂. Thereafter, the expected pseudorange vector ρ̂ and
∂ ρ̂
can be calculated again. This allows one to re-use
the derivative matrix
∂ n̂
the equation 3.9 to find a new correction term n. Thus, the iteration can
be continued, until a satisfactory accuracy for the position and time estimate is
reached.
3.4
Positioning Error Analysis
The preceding section introduced an algorithm that is capable of finding a navigation solution. However, the navigation solution is not necessarily the same as
the real receiver position and time. This results from measurement errors.
It is highly desirable to be able to estimate the accuracy of the navigation solution, no matter which method is used. The standard method used in the GPS
pseudorange positioning will be introduced here. It appears that the derivative
∂ ρ̂
matrix
has an important role in error estimation. For simplicity, let us use
∂ n̂
∂ ρ̂
∂ ρ̂
the notation H =
. Note that some books operate with the matrix −
∂ n̂
∂ n̂
∂ ρ̂
[Kaplan, p. 51], while others define the geometry matrix as
like we do. The
∂ n̂
matrix H will here be called the pseudorange geometry matrix. The purpose
of this is to distinguish the matrix from another geometry matrix which will be
introduced later in this thesis.
With the new notations, let us rewrite the expression for the correction term in
the equation 3.9:
−1 T
n = − H T H
H (ρ̂ − ρ)
(3.10)
Let us assume that the pseudorange measurements have errors that are uncorrelated and have equal variances σρ2 . Following [Parkinson & Spilker, p. 414], one
achieves an expression for the positioning error covariance matrix:
−1
cov(n) = E nnT = σρ2 H T H
(3.11)
−1
is called geometrical dilution of precision matrix or GDOP
The matrix H T H
matrix. It contains the information about the quality of the satellite geometry.
If one has an estimate for the measurement error variance σρ2 , one can calculate
the positioning variance cov(n) with the help of the GDOP matrix.
However, it is not very convenient to have the positioning error as a form of
4 × 4 covariance matrix cov(n). Actually the matrix cov(n) contains much
information that is not always needed by the user. The effect of the satellite
13
geometry can be reduced to a single real number. The geometrical dilution of
precision value (GDOP) is defined as
−1 (3.12)
GDOP = trace H T H
where trace means the summation along the main diagonal of the matrix. The
GDOP value can be used for estimating the magnitude of the positioning error,
as follows:
σn = GDOP × σρ
(3.13)
where σn is a combined standard deviation of the solution x, y, z and ctu components, while σρ is the pseudorange measurement standard error. Besides of
the GDOP, there are other useful values that can be computed from the GDOP
matrix. These include position DOP, horizontal DOP, vertical DOP and time
DOP [Parkinson & Spilker, p. 414].
The pseudorange positioning error with a particular satellite geometry can be
estimated with the formula 3.13. According to [Kaplan, p. 262], the standard
error σρ in pseudorange measurements is about 8 meters. According to [Kaplan,
p. 270], the GDOP value is on average below 3. The equation 3.13 now shows
that the positioning error is usually below 25 meters. Thus, the positioning
performance with the GPS pseudorange positioning is far better than with the
Transit Doppler positioning system.
3.5
Limitations of the GPS
In the previous section it was stated that the GPS has a very good positioning
performance. The theory for the pseudorange positioning is well developed and
relatively easy. Still, the GPS has its limitations. One of the most severe is the
satellite availability. The standard GPS receivers need to measure pseudoranges
to at least four satellites simultaneously, in order to solve for the position estimate.
In theory, at least four satellites should be available nearly always nearly everywhere [Kaplan, p. 287]. In practise, however, there are problems. The problems usually arise in weak signal conditions. Sometimes the receiver should have
many satellites in sight but there is some barrier that prevents the GPS signal
from reaching the receiver. This occurs frequently in urban areas and indoors
[Syrjärinne, p. 22]. Usually the signal is received, but it is too much attenuated
for the pseudorange positioning purposes.
Recently, some effort has been put to resolve the satellite availability problem.
Novel methods have been developed for enhancing the positioning performance
14
in weak signal conditions. The key for the solution seems to be the assisted GPS.
This means that the receiver gains some extra information, for example through
a cellular network. This helps when the receiver has not been able to demodulate
the navigation message from the attenuated GPS signal. With assisGPS, also
the attenuated signals can be exploited in the positioning determination. More
details about these methods can be found in [Syrjärinne] and [Sirola].
15
Chapter 4
Doppler Positioning with the
GPS
In this chapter, the possibility of using the Doppler measurements in GPS will
be discussed. The theory for positioning based on simultaneous Doppler measurements will be developed. In addition, an iterative algorithm suitable for the
positioning is presented.
4.1
Need for Doppler Positioning
The Global Positioning System was developed for pseudorange positioning. There
is no doubt that using the pseudorange measurements is the most accurate way
to find a position estimate for the receiver. However, the end of the preceding
chapter gave a glimpse of the difficulties that frequently arise in pseudorange
positioning.
Very often it happens, that there are several attenuated GPS satellite signals
available. The signals are so noisy that the demodulation of the navigation message is impossible. Thus, the pseudorange measurements cannot be performed.
However, the signals are sufficiently good so that the signals can be recognised
according to the PRN codes. In addition, the received signal frequencies can be
measured. The frequency differences are mainly caused by the Doppler effect. In
this chapter it will be shown that the frequency shifts can be used for positioning
without knowledge of the pseudoranges. This kind of positioning will be referred
to as GPS Doppler positioning.
In pseudorange positioning the user needs to know the satellite positions. In
GPS Doppler positioning the same applies, but the user also needs to know the
satellite velocities. The usual way to achieve this information is to demodulate the
16
navigation message. Here, however, we assumed that the signals are so attenuated
that this is impossible. The solution is the assisted GPS. We will assume that
the satellite orbital parameters and the current time is received from somewhere
out of the GPS system. Typically this means that the receiver is connected to a
cellular network.
It is evident that the ability to perform the positioning using only Doppler measurements would be of great use in many situations. Even if the positioning
estimate would not be as accurate as in pseudorange positioning, the Doppler
positioning would still make sense. As was written above, the pseudorange positioning is not always possible. More good news is that carrying out the Doppler
measurements does not require any hardware modifications to the receiver. Actually, the state of the art receivers are doing the Doppler measurements all the
time as a by-product of satellite tracking.
4.2
Comparison between GPS and Transit
In Chapter 2 the basic principles of the historical Transit Doppler positioning
satellite system were enlightened. The Chapter 3, by contrast, introduced the
modern GPS pseudorange positioning. There is no doubt that GPS pseudorange
positioning is much more accurate than the Transit Doppler positioning. But let
us now assume that the GPS is used in Doppler positioning mode. Naturally, before going on to designing algorithms for GPS Doppler positioning, it is desirable
to know if the positioning has any chances to succeed. We know that the Transit
positioning was possible with about 500 meters accuracy. Let us now compare
Transit and GPS Doppler positioning to see if the GPS can be expected to beat
the Transit.
Let us first consider the bad sides of the GPS when compared to the Transit.
First of all, the GPS only has one available civil frequency. In Transit there were
two separate frequencies. This is a big benefit allowing the user to eliminate
all the first order errors in measurements. Thus, most of the atmospheric and
receiver measurement errors can be eliminated in the Transit. In addition, the
Transit satellites were at lower orbits and travelled at a higher velocity. This
produces benefits in Doppler positioning, because the Doppler shifts are larger.
Furthermore, the positioning geometry is better when the satellites are at lower
orbits. In other words, the positioning error for the same Doppler measurement
error is smaller for low orbit satellites [Hill].
However, there are also good things in the GPS when compared to the Transit.
The biggest advantage of using the GPS for Doppler positioning in stead of the
Transit is the satellite availability. There are much more satellites in the GPS. In
17
the Transit, the receiver was lucky to be able to track even one satellite. Most of
the time there were no satellites in the view. On the contrary, there are usually
several GPS satellites in the view at the same time. Even if the receiver is indoors,
most of the GPS signals can be received, although attenuated. The high number
of satellites allows a GPS receiver to have simultaneous Doppler measurements
from several satellites. This is a huge increase in the amount of information that
can be used for the positioning.
In addition, the GPS frequency is much higher than the Transit frequencies.
This is a benefit, because relative frequency measurement errors become smaller.
Furthermore, the higher frequency causes smaller atmospheric errors. As a conclusion, it cannot be said which is better: the Transit or the GPS Doppler positioning. Both have their advantages and drawbacks. A summary of these is
shown in Table 4.1. After all, one can say that the GPS Doppler positioning
may well be of at least the same accuracy as the Transit. Thus, there is a reason
for further GPS Doppler positioning research. More thorough positioning error
analysis will be provided in Chapter 5.
Table 4.1: Comparison between GPS Doppler positioning and Transit
GPS
Transit
+Better satellite availability +Two different frequencies
+Higher frequency
+Higher satellite velocities
+Lower satellite orbits
4.3
The Governing Equations
Let us now begin to build a physical model for the GPS Doppler positioning. This
will eventually lead to an algorithm, that can be used in position estimation.
4.3.1
The Doppler Shift Equation
The frequency of the received GPS signal differs from the frequency transmitted
by the satellite. This easily measurable frequency offset is mainly due to the
Doppler effect. The Doppler effect is caused by the relative motion of the transmitting satellite with respect to the receiver. The Doppler Shift can be modelled
with the dot product equation
ri − ru
wi − wu
Di = −
•
L1
(4.1)
c
r i − r u 18
where wi is the satellite velocity, wu is the receiver velocity, c is the speed of
light, r i is the satellite location, r u is the receiver location and L1 is the frequency
transmitted by the satellite.
The Doppler shift equation 4.1 can be modified to achieve a range rate equation.
For notational simplicity let us define the satellite’s relative velocity with the
following equation:
v i = wi − wu
(4.2)
After algebraic manipulation one obtains
vi •
ru − ri
Di c
=
r u − r i L1
(4.3)
We notice that the left hand side of the equation 4.3 is the rate at which the
satellite is approaching the user. Thus, the equation can also be written as a
range rate equation as
Di c
d
(4.4)
− r u − r i =
dt
L1
Assume that the user knows the current time as well as his own velocity exactly,
and that he has the valid ephemeris. Consequently he can calculate satellites’
position vectors r i and relative velocities v i . Also assume that the receiver knows
the speed of light constant c, the real transmitted frequency L1 and the real
Doppler shift Di .
With preceding assumptions, the only unknown in the equation 4.3 is the user
position vector r u . Interpreting the dot product geometrically with the formula
ru − ri
a • b = a · b · cos ∠(a, b) and noticing that the vector
is of unit
r u − r i length, the equation 4.3 can be written as
v i · cos α =
Di c
L1
(4.5)
where α = ∠(v i , r u − r i ) is the angle between the relative satellite velocity v i
and the satellite-to-user vector r u − r i . Solving for the angle α in the equation
4.5 gives us
Di c
(4.6)
α = arccos
L1 v i Thus the receiver must be located such that the satellite-to-user vector r u − r i
forms an angle α with the satellite relative velocity vector v i . The possible
receiver positions r u form a surface of a right circular cone whose vertex is at
the satellite position r i . The cone is shown in Figure 4.1. The cone has a semiinfinite axis in the direction of the satellite velocity v i when the Doppler shift
Di is positive and in the direction opposite to v i when Di is negative. The angle
between the surface of the cone and the satellite relative velocity vector v i is
19
Di c
α = arccos
. As a special case of equation 4.6 when the Doppler shift
L1 v i Di equals zero the receiver must be located on a plane that is orthogonal to v i
and passes through r i .
vi ✛
α
ri
v i · cos α
ru
Figure 4.1: Doppler effect in satellite positioning
If we had three ideal Doppler measurements, we could solve for the three unknowns, namely the user position vector r u = [xu yu zu ]T . The user position
would be found at the intersection of the three different cones defined by the
equation 4.3. However, things are unfortunately not that simple. It is extremely
difficult to measure the Doppler shift with the precision required for the positioning.
4.3.2
The Clock Drift Error
In order to accurately measure the frequency of a signal, one must have a very
stable clock. The same applies also to accurately generating a desired frequency.
Satellite frequency generation is based on a highly accurate free running atomic
standard. The GPS control segment makes sure that the frequencies transmitted
by the satellites are very close to the nominal frequency L1 and adds correction
terms to the navigation messages when necessary [Kaplan, p. 50]. Thus, the
error in the transmitted frequency causes little harm for the receiver.
By contrast, the receiver very seldom has sufficiently good an oscillator to accurately estimate the Doppler shift of the received signal. Let us denote the time
derivative of the receiver clock bias, the receiver clock drift, by ṫu . If ṫu is positive,
20
the receiver clock is running fast and if ṫu is negative, it is running slow. The
error f in the estimate for the received frequency can be modelled as
f = −ṫu L1
(4.7)
It is important to notice that the error in the received frequency estimate in the
equation 4.7 is independent of the received frequency. Moreover, it is constant
in the sense that it has the same value for every signal if frequencies of multiple
signals are measured at the same time instant. However, the clock drift is not
generally constant in time.
4.3.3
Mathematical Problem Formulation
Let us denote the receiver’s estimate for the frequency of the received signal
from the satellite i by fi . Modelling the frequency offsets from the Doppler shift
(equation 4.1) and the receiver clock drift (equation 4.7) we obtain a model for
the total frequency offset:
vi
ri − ru
fi − L1 = Di + f + fi = −
(4.8)
•
L1 − ṫu L1 + fi
c r i − r u where fi is the unmodelled noise in the frequency measurement. Properties of
the measurement noise will be covered in Chapter 5.
Multiplying the equation 4.8 by − Lc1 yields
−
ri − ru
f c
fi − L1
c = vi •
+ cṫu − i
L1
r i − r u L1
(4.9)
f c
Using the equation 3.4 and denoting ρ̇i = − i the equation 4.8 can be rewritten
L1
as
fi − L1
−
c = ρ̇T i + ρ̇i
(4.10)
L1
where ρ̇T i is the true delta range and ρ̇i is the delta range measurement noise.
The delta range measurement ρ̇i is the true deltarange ρ̇T i disturbed by the noise
ρ̇i :
(4.11)
ρ̇i = ρ̇T i + ρ̇i
Combining the equations 4.10 and 4.11, one achieves the delta range measurement
model :
fi − L1
ρ̇i = −
c
(4.12)
L1
Analogously, combining the equations 3.4 and 4.11 yields the delta range physical
model :
ri − ru
ρ̇i = v i •
(4.13)
+ cṫu + ρ̇i
r i − r u 21
For notational simplicity let us denote cṫu , the effect of user clock drift to the
delta range measurement, by d. The new variable d has unit of velocity, that is
m/s. The true delta range can now be written in the form
ρ̇T i = v i •
ri − ru
+d
r i − r u (4.14)
Now approximate the true delta range ρ̇T i with the measured delta range ρ̇i . Using
the equation 4.14 we obtain the following equation with 4 unknowns, namely
r u ∈ R3 and d ∈ R:
ri − ru
(4.15)
vi •
+ d − ρ̇i = 0
r i − r u Assume we have simultaneous delta range measurements from n different satellites. Each measurement contributes one equation similar to 4.15. This yields us
the system of equations for multiple satellite Doppler positioning:

r1 − ru


+ d − ρ̇1 = 0
v1 •


r 1 − r u 


r2 − ru


+ d − ρ̇2 = 0
v2 •
r 2 − r u (4.16)
..



.



r
n − ru


+ d − ρ̇n = 0
 vn •
r n − r u where
• v i , i = 1..n are the satellite relative velocity vectors, assumed known
• r i , i = 1..n are the satellite position vectors, assumed known
• ρ̇i , i = 1..n are the delta range measurements, assumed known
• r u is the receiver position vector, unknown
• d is the receiver clock drift effect to the delta range measurement, unknown
Thus, there are four unknowns, namely xu , yu , zu and d. To simplify notations,
let us make the following definition:
Definition 1. The receiver position and drift vector
x=
ru
d


xu
 yu 
4

=
 zu  ∈ R
d
22
Let us now turn into our main goal, namely solving the positioning problem
defined by the system of equations 4.16. There are many different approaches
for solving the problem. These include symbolic methods, standard numerical
methods and problem specific iterative methods. It should be both mathematically
and physically clear that the system of equations 4.16 cannot be uniquely solved
unless the number of satellites n ≥ 4.
4.4
4.4.1
Symbolic Methods
Solving the Receiver Position
In pseudorange positioning there are several different ways to manipulate the
set of equations 3.5 such that one obtains closed-form solutions. It is naturally
beneficial to have a closed-form solution for a problem because then one needs
not resort to numerical iteration. A closed-form solution also produces valuable
geometrical insight into the problem. Different closed-form solutions for pseudorange positioning can be found for example from [Bancroft], [Fang], [Krause],
[Leva], [Hoshen] and [Lundberg].
Because of the success of the closed-form solutions in pseudorange positioning
there is also hope that similar solutions could be found in delta range positioning.
The system of equations 4.16, however, is far more complex than the pseudorange equations 3.5. Consequently, there are no common knowledge closed-form
solutions for the delta range equations. The main reason for the additional complexity of the delta range equations with respect to the pseudorange equations is
the influence of the satellites’ relative velocity vectors v i .
4.4.2
Existence and Uniqueness Considerations
Let us continue to consider the system of delta range equations 4.16. One cannot
be sure that there exists a solution variables r u and d such that the equations
hold. Actually, if n > 4 and the measurements are noisy, it is almost sure that a
solution does not exist. However, as we will see later in this chapter, satisfying
all the equations accurately is not necessary for a good positioning estimate.
Furthermore, we cannot be certain that there is only one pair of variables (r u , d)
that satisfy the equations 4.16. Probably, provided that a solution exists, there
are at least two solutions for the equations [Hill]. However, only one solution is
near the Earth and the other can be excluded.
23
4.5
Standard Numerical Methods
In this section, a new algorithm is developed for the GPS Doppler positioning.
The algorithm is based on well known ideas from the numerical analysis. However,
the method has not earlier been applied to the GPS Doppler positioning problem.
4.5.1
Problem Formulation
In the following, we will consider iterative methods that begin from an initial
guess for the solution and continue to gradually enhance the estimate.
Notation 1. The receiver position and drift estimate


xˆu
 yˆu 
rˆu
4

x̂ =
=
 zˆu  ∈ R
ˆ
d
dˆ
is the current estimate for the receiver position and drift vector x
Notation 2. The delta range measurement vector
ρ̇ = [ρ̇1 ρ̇2 . . . ρ̇n ]T
is a vector formed of the delta range measurements from the n satellites used in
the calculations.
The equation 4.13 gives a physical model for the delta range measurements. Assuming that the noise components ρ̇i are zero-mean gives rise to the following
definition:
Definition 2. The expected delta range vector


r 1 − rˆu
ˆ
+d
v •
 1 r 1 − rˆu 


r 2 − rˆu


ˆ
 v2 •
+d 
ˆ


r 2 − rˆu ρ̇ = 

..


.




r n − rˆu
vn •
+ dˆ
r n − rˆu is the expected delta range measurement vector assuming the receiver to be located
ˆ
at rˆu and the clock drift to be d.
The positioning solution procedure should aim at finding a point x̂ such that
the expected delta range measurement vector would be equal to the real delta
range measurement vector, that is ρ̇ˆ = ρ̇. In order to have the problem in a
mathematically standard form we will define the following helpful function:
24
Definition 3. Delta range residuals function

r 1 − rˆu
v •
+ dˆ − ρ̇1
 1 r 1 − rˆu 
r 2 − rˆu

 v2 •
+ dˆ − ρ̇2
r 2 − rˆu p(x̂) = ρ̇ˆ − ρ̇ = 

..

.


r n − rˆu
vn •
+ dˆ − ρ̇n
r n − rˆu 









is a vector valued function with the receiver position and drift estimate x̂ as an
argument. The components of the vector function are the differences between
the predicted delta ranges assuming x = x̂ and the measured delta ranges ρ̇i .
p(x̂) ∈ Rn , where n is the number of satellites used in the calculations.
From the system of equations 4.16 one immediately notices that if the estimate
x̂ is equal to the real position and drift vector x then the value of the function
p(x̂) must be a zero vector. Thus our hope for finding the real receiver position
and drift vector x lies in finding a zero of the function p(x̂). The problem can
be formulated by the following equation


r 1 − rˆu
ˆ
+ d − ρ̇1
v •
 1 r 1 − rˆu   
0


r 2 − rˆu

  
ˆ
 v2 •
+ d − ρ̇2   0 
= . 
r 2 − rˆu p(x̂) = 
(4.17)

  .. 
.


..


0


r n − rˆu
vn •
+ dˆ − ρ̇n
r n − rˆu 4.5.2
The Newton Method
As should be clear from Subsection 4.4.2, there is no guarantee that the system of
equations 4.16 has only one solution. Consequently, the equation 4.17 may well
have solutions other than x̂ = x. In the following we will assume that we have
an initial guess x0 that is sufficiently close to the real position and drift vector x.
Then our solution algorithm should converge to the correct zero of the function
p(x̂).
Here we will use the Newton method to find the solution. The solution procedure is based on the idea of linearly approximating the nonlinear function
[Kaleva2000, p. 25]. This has to be done because there are no general methods for
directly solving a nonlinear equation. The linear approximation is accurate only
in a small neighbourhood of the linearization point. However, as the linearization
procedure is repeated, the solution estimate becomes increasingly accurate. Let
25
us approximate the delta range residuals function p(x̂) by the first order Taylor
series at the estimated point xk :
∂p(x̂) p(xk + x) ≈ p(xk ) +
x
(4.18)
∂ x̂ x̂=xk
where x is a vector whose norm is relatively small.
For simplicity, we will use the following notation for the derivative matrix:
∂p(x̂) G(xk ) ≡
∂ x̂ x̂=xk
Now the approximate solution for the equation p(xk + x) = 0 can be found by
setting the right hand side of the approximate equation 4.18 to zero and solving
for x. Thus x needs to be solved from the equation
p(xk ) + G(xk )x = 0
(4.19)
Assuming that measurements from four satellites are used in the calculations
(p(x̂) ∈ R4 ) and that the derivative matrix G(xk ) is nonsingular, we obtain the
equation
x = −[G(xk )]−1 p(xk )
(4.20)
where x = xk+1 − xk is the difference between the new and the old estimated
position and drift vector.
4.5.3
The Gauss-Newton Method
It is not very practical to limit oneself to use only four satellites in the positioning.
There is always some noise present in the delta range measurements ρ̇i . Consequently, it is usually unwise to discard any available data. The Newton method
can be slightly modified so that it can be used for any number of satellites. We
want to use the equation 4.17 we have derived. Now when we may have more
than four satellites it is highly probable that the delta range residuals function
p(x̂) does not have a zero. Instead, we now seek the point for which p(x̂) is
closest to the zero point in the Euclidean norm sense.
The problem of the equation 4.17 is first reformulated as a nonlinear least squares
problem:
min p(x̂)2 : x̂ ∈ R4
(4.21)
It is easy to see that when the number of satellites n = 4, the equations 4.17
and 4.21 produce the same result x̂. The difference is that the latter can be
used always when n ≥ 4. When the equation 4.21 is solved by the Gauss-Newton
26
method [Fletcher, p. 110], [Kaleva1998, p. 92], the iteration step solution 4.20 is
replaced by the more general
−1
x = − [G(xk )]T [G(xk )]
[G(xk )]T p(xk )
(4.22)
One can easily see that if G(xk ) is a square matrix (G(xk ) ∈ R4×4 ) then the
equation 4.22 reduces to equation 4.20. Thus, the equation 4.22 can be used
without losing generality.
We end up with the following algorithm for searching the zero of the delta range
residuals function in the least squares sense:
1. Decide the initial guess x0 for the position and drift vector.
2. Given xk , calculate the delta range residuals function p(xk ) and the derivative matrix G(xk ).
3. Calculatethe correction term
−1x from the equation
T
[G(xk )]T p(xk )
x = − [G(xk )] [G(xk )]
4. Calculate the new estimate for position and drift vector with
xk+1 = xk + x
5. Continue from step 2 with the new estimate xk+1 until x is less than
the desired tolerance
4.5.4
Calculating the Derivative Matrix
As was seen in the preceding subsection the derivative matrix of the delta range
residuals function with respect to the estimated user position and drift vector is
vital for the Gauss-Newton method. Now we will focus on the matrix G in a
little more detail.
∂p(x̂)
, the matrix G has as many rows as the delta range residuals
∂ x̂
function p(x̂) and as many columns as the position and drift estimate x̂. Thus
G ∈ Rn×4 , where n is the number of satellites used in the calculations.
Since G =
The matrix G is very important for us because it appears in the equation 4.18
which is used to linearly approximate the delta range residuals function p(x̂).
27
Fortunately, finding the matrix G by algebraic differentiation of the function
p(x̂) is quite straightforward. Let us consider the differentiation in detail:


∂p1 ∂p1
 ∂ rˆu ∂ dˆ 


 ∂p2 ∂p2 


∂p
∂p
ˆ  ∈ Rn×4
ˆ
∂
r
G=
(4.23)
= u
=
∂
d
 .
.. 
∂ x̂
rˆu


.
. 
∂
 .
dˆ
 ∂pn ∂pn 
∂ rˆu ∂ dˆ
where pi are the components of the vector function p. Using the Definition 3,
one obtains an expression for a single component of the vector function p. This
can be written as
r i − rˆu
pi (x̂) = v i •
(4.24)
+ dˆ − ρ̇i
r i − rˆu Differentiating the ith component of the delta range residuals function p(x̂) partially with respect to the estimated receiver position rˆu yields
∂
r i − rˆu
∂pi
ˆ
vi •
(4.25)
=
+ d − ρ̇i
∂ rˆu
∂ rˆu
r i − rˆu In equation 4.25 v i , r i , dˆ and ρi are constants with respect to the estimated
receiver position rˆu . Applying the formula (f g) = f g + f g for differentiating
products gives us
∂pi
∂
v Ti
∂
1
= v i • (r i − rˆu )
(r i − rˆu )
+
∂ rˆu
∂ rˆu r i − rˆu r i − rˆu ∂ rˆu
1
v Ti
(r i − rˆu )T
= v i • (r i − rˆu )
−
I 3×3
r i − rˆu 2 r i − rˆu r i − rˆu vi
r i − rˆu
r i − rˆu
=
•
r i − rˆu r i − rˆu r i − rˆu T
r i − rˆu
vi
r i − rˆu
•
−
r i − rˆu r i − rˆu r i − rˆu (4.26)
where I 3×3 is 3 × 3 identity matrix.
The equation 4.26 gives the partial derivative of the delta range residuals function with respect to the receiver position estimate. The form of the equation is
satisfactory for numerical computation. However, the form is not very intuitive.
The right hand side of the equation 4.26 can be transformed into a geometrically
more illustrative form involving cross products. Making use of the vector triple
28
r i − rˆu
product formula a × (b × c) = (a • c)b − (a • b)c with a = c =
and
r i − rˆu vi
b=−
gives us
r i − rˆu ∂pi (x̂)
=
∂ rˆu
=
r i − rˆu
×
r i − rˆu r i − rˆu
×
r i − rˆu −v i
r i − rˆu
×
r i − rˆu r i − rˆu r i − rˆu
vi
×
r i − rˆu r i − rˆu T
T
(4.27)
The cross product of two vectors is always orthogonal to both vectors. Thus
∂pi
lies in the same plane with both the satellite relative
the partial derivative
∂ rˆu
velocity vector v i and the estimated receiver-to-satellite vector r i − rˆu . Moreover,
∂pi
is perpendicular to r i − rˆu . Figure 4.2 illustrates the situation. The negative
∂ rˆu
of the derivative vector is presented in the figure for graphical clarity.
r i − r u✯
ri
−

∂pi (x̂)
∂ rˆu
❄
vi
r i − rˆu ru
Figure 4.2: Derivative of the delta range difference function
To complete the symbolical calculation of the derivative matrix G we still need
to find the partial derivative of the delta range residuals function with respect to
the clock drift estimate. Fortunately, this problem is trivial. One can easily see
∂pi (x̂)
= 1. Now we know all the necessary partial
from the equation 4.24 that
∂ dˆ
derivatives of the components of the delta range residuals function in order to
form the matrix G in equation 4.23:
 
T
r 1 − rˆu
r 1 − rˆu
v1
1 
×
×

 r 1 − rˆu 
r 1 − rˆu r 1 − rˆu 

T


ˆ
ˆ
r2 − ru
r2 − ru
v2


1
×
×

ˆ
ˆ
ˆ
r
−
r
r
−
r
r
−
r
G(x̂) = 
2
u
2
u
2
u


.
.

..
.. 


T
 


r n − rˆu
r n − rˆu
vn
1
×
×
r n − rˆu r n − rˆu r n − rˆu 29
(4.28)
The matrix G(x), that is the derivative matrix calculated at the true position
and drift point x, is called Doppler geometry matrix. Sometimes the Doppler
geometry matrix G(x) will be written without the argument as G.
4.6
Problem Specific Iterative Methods
It would appear that the first algorithm for GPS Doppler positioning was invented
by Jonathan Hill. In his paper [Hill], presented in ION GPS 2001, he discusses the
feasibility of Doppler positioning. He describes an iterative algorithm that uses
least squares technique after an algebraic manipulation of the set of equations
4.16.
The Hill algorithm does not use the derivative matrix G at all. This has the
advantage of somewhat lighter computation. On the other hand, the derivative
matrix could be beneficial when analysing the positioning error, as will be shown
in the following chapter. There is no documented testing of the convergence
properties of the Hill algorithm.
Probably other iterative algorithms suitable for Doppler positioning can be found.
Deciding which algorithm to use requires extensive numerical testing and depends
on user’s needs. At least computational efficiency, reliability, convergence properties and error estimation have to be considered when choosing the algorithm.
30
Chapter 5
Positioning Performance
In the preceding chapter, it was shown that the receiver position can be estimated
using only the delta range measurements with the current ephemeris and time.
If the Doppler shift in the received frequency could be measured precisely, one
would achieve the accurate position. Unfortunately, there is always some noise
present in the measurements. In this chapter, we will discuss positioning accuracy
for GPS Doppler positioning and consider the things that affect it.
5.1
Measurement Noise
Theoretical analysis of the measurement noise is extremely difficult. This is
because the sources of the errors are numerous and depend on the receiver architecture as well as many other conditions. In this chapter we will only introduce
the main error sources and give some order of magnitude estimates for them.
The more detailed statistical properties of the measurement noise need to be determined with the help of measurement data. Some examples will be given in
Chapter 6.
There are several sources of errors in GPS Doppler positioning. In the following,
we will discuss the ionospheric effects, receiver noise, the effect of unknown user
velocity and the effect of biased time estimate.
5.1.1
Ionospheric Effects
The GPS signals are electromagnetic waves that travel at the speed of light in
vacuum. However, as a signal arrives to the ionosphere, its speed is slowed
down by ions. This causes errors both to pseudorange and delta range measurements. In delta range measurements, the error due to the ionosphere is
31
proportional to the rate of change of the total electron content of the ionosphere.
The upper limit for the frequency measurement error due to the ionosphere is
0.085 Hz. This value corresponds to the error of 1.6 cm/s in the delta range
measurement[Parkinson & Spilker, p. 495].
The frequency shift due to the ionosphere is a function of transmitted frequency.
Consequently, the users receiving two different frequencies can correct for the first
order ionospheric errors.
5.1.2
Receiver Noise
Even if the frequency of the GPS signal managed to penetrate the ionosphere
without disturbance, the actual measurement would still cause errors. The properties of the measurement errors depend heavily on the receiver architecture. The
largest receiver error in the frequency measurement is the clock drift error d. Its
effect on the delta range measurement can be of the order of 10 m/s. Fortunately,
the clock drift error can be taken as an extra variable that is solved for, as was
done in Chapter 4. The order of magnitude of the remaining receiver noise is
hard to estimate theoretically.
5.1.3
Unknown User Velocity
In Subsection 4.3.3 we assumed that the satellite relative velocity vectors v i are
known. With the equation 4.2, v i was defined as wi − wu , where wi is the
satellite velocity vector and wu is the user velocity vector. The satellite velocity
vector wi can be calculated from the current ephemeris if one knows the current
time. By contrast, the user velocity vector wu is unknown unless one has some
extra information. The most common form of extra information is probably the
knowledge that the user is stationary.
Taking the vector wu as a variable to be solved for means that we have three
more unknowns, since wu ∈ R3 . Thus, the number of required satellites for the
positioning increases from four to the usually unrealistic number of seven. Solving
for wu is not considered any further here.
Let us consider the error that the unknown user velocity causes. Assume that
the user velocity wu is replaced by a biased user velocity estimate wu + wu .
Then, according to the equation 4.2, the satellite relative velocity vectors v i are
32
replaced by v i − wu . Let us rewrite the equations 4.24 and 4.13 here for the
simplicity of reference:
r i − rˆu
+ dˆ − ρ̇i
r i − rˆu (5.1)
ri − ru
+ cṫu + ρ̇i
r i − r u (5.2)
pi (x̂) = v i •
ρ̇i = v i •
From the equation 5.2, one sees that the ith component of the delta range residuals
r i − rˆu
. Using the equations 5.1
function, pi (x̂), is replaced by pi (x̂) − wu •
r i − rˆu and 5.2, one finally notices that error wu in the user velocity is equivalent
to additional error in the delta range measurement. Thus, the errors in the
user velocity estimate can be analysed similarly to the errors in the frequency
measurement. If the only error present is the error in the user velocity estimate,
we have
r i − rˆu
ρ̇i = wu •
(5.3)
r i − rˆu Furthermore, let us assume that the user position estimate rˆu is close to the real
r i − rˆu
ri − ru
user position r u . Now the unit vector
can be replaced by
.
r i − rˆu r i − r u Finally, we get the equation for the effect to the measurement:
ρ̇i = wu •
ri − ru
r i − r u (5.4)
✿
ri − ru
wu •
r i − r u ri
ru − ri
ru
❥
wu
Figure 5.1: Delta range measurement error caused by user velocity
Figure 5.1 shows the situation graphically. It is evident that the unknown user
velocity has most effect to the measurement when its direction is along the line-ofsight vector. On the contrary, the effect is zero if the unknown user velocity vector
is perpendicular to the line-of-sight vector. Usually, any direction of unknown
user velocity cannot be ruled out. Thus, the worst case situation is that the
effect to the delta range measurements is the speed of the receiver, or wu .
Apparently, even very slow velocities may have drastic effects on the positioning
accuracy. In the above it was stated that the ionospheric errors are not larger
that 1.6 cm/s. Now, if the receiver is experiencing an unknown motion of, say
1.6 m/s, the measurement error level would effectively be 100 times larger.
33
More bad news is that the user velocity is extremely hard to measure. A speedometer will not do, since it produces no information about the direction of the
velocity. And even if the user velocity vector could be determined, say with a
combination of gyroscopes and three-dimensional compasses, transforming the
vector into the ECEF coordinate system would complicate the computation.
5.1.4
Biased Time Estimate
In Chapter 4 we assumed that the ephemeris and an accurate time estimate were
available. In practise, however, the receiver only has an estimate for the current
time. In conditions where pseudorange measurements are unavailable the GPS
satellites cannot provide time information. Thus, the receiver time estimate is
probably biased. The consequence of the biased time estimate is that the satellite
positions and velocities are calculated wrong.
The biased time estimate effect can again be thought of as a measurement error. The positioning algorithms utilise the delta range difference function p(x̂).
According to Definition 3, we have
p(x̂) = ρ̇ˆ − ρ̇
(5.5)
Evidently, the biased time estimate causes error to the expected delta range vector
ˆ According to the equation 5.5, however, the effect is the same as if there were
ρ̇.
additional error in the delta range measurement vector ρ̇. The resulting error can
be accurately approximated by examining the differences of the expected delta
range vectors at time t and at the biased time t + t. When t is small we can
use the first order Taylor series:
ˆ
ˆ + t) − ρ̇(t)
ˆ = ∂ ρ̇ t
ρ̇(t
∂t
(5.6)
The symbolic differentiation of the ith component gives
∂ ˙ˆρi
ri − ru
2
•
v
×
(r
−
r
×
v
)
+
r
−
r
a
=
i
i
u
i
i
u
i
∂t
r i − r u 3
(5.7)
th
where
ai is the relative acceleration vector of the i satellite. Theoretical bounds
∂ ρ̇ˆ i
for are hard to derive from the equation 5.7. This is because the two vectors
∂t in the square brackets are pointing to nearly
directions. Numerical
opposite
∂ ρ̇ˆ i
simulations show that the maximum value of is about 15 cm/s2 . Applying
∂t the equation 5.6, wee see that for example a time bias error of 0.1 seconds may in
the worst case cause a positioning error similar to 1.5 cm/s measurement error.
34
Thus, the time bias effect to the positioning accuracy may easily be at least the
same order of magnitude as the ionospheric errors.
A solution for the time bias error might be iterating the time estimate. If the
time estimate is expected to be too much biased, one could take it as an unknown variable and solve it. This results in an additional column to the Doppler
geometry matrix G. The components of the column would be of the form of the
right hand side of the equation 5.7. This would also mean that a fifth satellite is
needed to produce more measurement information.
5.2
5.2.1
Positioning Accuracy
Effect of Measurement Errors on Positioning Solution
Let us now discuss the effect of the measurement noise on the position estimate.
In the following, we will consider the accuracy of the Gauss-Newton method.
Since the Gauss-Newton method is iterative, its error estimates are very difficult
to derive rigorously. However, with the help of a few simplifying assumptions this
can be done.
Let us assume that the initial guess is sufficiently close to the real receiver coordinates so that the Newton method converges towards the right minimum. Consider
the algorithm for positioning presented in Section 4.5.2. Now focus on the last
step of the iterative algorithm. The last step takes place just before ending criterion is fulfilled. According to the formula 4.22, the ultimate estimate x̂ for the
receiver position and drift vector is calculated from
−1
x̂ = xk − [G(xk )]T [G(xk )]
[G(xk )]T p(xk )
(5.8)
According to the Definition 3, we have p(x̂) = ρ̇ˆ − ρ̇. The delta range measurement vector ρ̇ can in turn be presented as a sum of the true delta range vector
ρ̇T and the measurement error vector ρ̇ as
ρ̇ = ρ̇T + ρ̇
(5.9)
Correspondingly, the position and drift estimate x̂ can be presented as a sum of
the true position and time x and the positioning error x:
x̂ = x + x
Thus, the equation 5.8 can be written as
−1
T
T
ˆ
[G(xk )] ρ̇T − ρ̇ + ρ̇
x − xk + x = [G(xk )] [G(xk )]
35
(5.10)
(5.11)
If the measurements and other data were ideal, the positioning solution would
also be perfect. Thus setting ρ̇ = 0 indicates that x = 0. Applying these for
the equation 5.11 gives us
−1
T
T
ˆ
x − xk = [G(xk )] [G(xk )]
[G(xk )] ρ̇T − ρ̇
(5.12)
Now subtracting the equation 5.12 from the equation 5.11 yields
−1
x = [G(xk )]T [G(xk )]
[G(xk )]T ρ̇
(5.13)
Let us simplify things by assuming the last linearization point xk to be very close
to the true position and drift x. Now the matrix G(xk ) can be approximated
by the Doppler geometry matrix G(x), which will be denoted G. Finally, we
have an equation that approximates the effect of the measurement errors on the
positioning solution:
−1 T
x = GT G
G ρ̇
(5.14)
5.2.2
Doppler Dilution of Precision
The equation 5.14 can be used to calculate the error in the positioning estimate
if the measurement error ρ̇ is known. Unfortunately, ρ̇ can never be known. If
the error was known it could be compensated and there would be no error at all.
However, one should thrive to achieve an estimate for the accuracy of the solution.
Otherwise, the user cannot really trust that the solution is even near the right
one. The positioning error can be estimated by statistical methods. For that
we need some knowledge or assumptions about the statistical properties of the
measurement error ρ̇. Let us assume the following:
• The measurement errors are zero mean, that is their expected values are
zero:
E {ρ̇} = 0
(5.15)
• The measurements from different satellites have uncorrelated errors and
equal variances σρ̇2 :



cov(ρ̇) = E ρ̇ρ̇T = σρ̇2 I n×n = 

36
σρ̇2 0 · · · 0
0 σρ̇2 · · · 0
.
..
.. . .
. ..
.
.
0 0 · · · σρ̇2





(5.16)
Let us first calculate the expected value of the positioning error. According
to elementary statistics the expectation operator E is linear. Manipulating the
equation 5.14 we obtain
−1 T −1 T
T
= GT G
E {x} = E G G
G ρ̇
G E(ρ̇)
(5.17)
T −1 T
=
G G
G 0
= 0
The equation 5.17 does not mean that the positioning error would always be
zero. It simply indicates that the errors of the xu , yu , zu and d components have
equal probability of being either negative or positive. To achieve more useful
information about the magnitude of the positioning error one needs to calculate
a second order statistical number, namely the covariance:
T
cov(x)
=
E (x − E {x}) (x − E {x})
!"
=
E xTx
eq.5.14
T −1 T T −1 T T
!"
G G
G ρ̇
G ρ̇
=
E
G G
T −1 T
−1 T
T
T
=
E G G
G ρ̇ρ̇ G G G
−1 T
T −1 T
T
G ρ̇ρ̇ G G G
=
E G G
−1
T −1 T G E ρ̇ρ̇T G GT G
=
G G
eq.5.16
−1
!" T −1 T 2
=
G G
G σρ̇ I n×n G GT G
T −1 2
=
G G
σρ̇
eq.5.17
(5.18)
The result is completely analogous
−1the pseudorange positioning error analysis
T to
in the equation 5.18 is very important to
[Kaplan, p. 262]. The matrix G G
us and deserves an own name:
Definition 4. The Doppler geometrical dilution of precision (DGDOP) matrix
−1
A = GT G
The equation 5.18 shows us how the positioning accuracy is dependent on the
DGDOP matrix A. One has to keep in mind that the result was derived using
the very strong assumptions 5.15 and 5.20.
Thus the effect of satellite geometry on the positioning performance can be presented as a matrix A ∈ R4×4 . This is considerable reduction of information
since the satellite geometry is dependent on several vectors, namely the receiver
position, satellite positions and satellite velocities. However, the matrix A still
37
contains 16 components whose meaning needs to be
its component form can be presented as follows:

A11 A12 A13 A14
 A21 A22 A23 A24
A=
 A31 A32 A33 A34
A41 A42 A43 A44
clarified. The matrix A in




(5.19)
The covariance of the positioning estimate can in turn be presented as follows:

 2
σxu σx2u yu σx2u zu σx2u d
 σx2 y
σy2u σy2u zu σy2u d 
u u

cov(x) = 
(5.20)
2
2

 σx2 z σy2 z
σ
σ
zu
zu d
u u
u u
σx2u d σy2u d σz2u d σd2
What really interests us are the variances σx2u , σy2u , σz2u and σd2 . Using 5.18, 5.19
and 5.20 one obtains expressions for the preceding variances:
σx2u = A11 × σρ̇2
σy2u
σz2u
σd2
= A22 ×
= A33 ×
= A44 ×
σρ̇2
σρ̇2
σρ̇2
(5.21)
(5.22)
(5.23)
(5.24)
When evaluating positioning performance it is more natural to use standard deviations σ rather than variances σ 2 because standard deviations are physically
much more intuitive. Mathematically transforming between the two does not
cause any problems since the standard deviation is naturally the square root of
the variance. Using the ratios of different positioning accuracy standard deviations and the measurement accuracy standard deviation we can define Doppler
dilution of precision (Doppler DOP, DDOP) measures. These measures indicate
the quality of the positioning geometry. They are defined as follows:
• Doppler position dilution of precision (DPDOP)
# 2
#
σxu + σy2u + σz2u
= DPDOP = A11 + A22 + A33
σρ̇
• Doppler horizontal dilution of precision (DHDOP)
# 2
#
σxu + σy2u
= DHDOP = A11 + A22
σρ̇
• Doppler vertical dilution of precision (DVDOP)
#
#
σz2u
= DVDOP = A33
σρ̇
38
(5.25)
(5.26)
(5.27)
• Doppler drift dilution of precision (DDDOP)
#
#
σd2
= DDDOP = A44
σρ̇
(5.28)
The definitions 5.25–5.28 are completely analogous to the pseudorange positioning
dilution of precision measures [Parkinson & Spilker, p.414], [Kaplan, p.268]. The
only difference is that there is no natural way of defining a combined dilution
measure for both position and drift. This measure is called geometric dilution
of precision in pseudorange positioning. The lack of this measure in Doppler
positioning is caused by the fact that the unit of position is meters whereas the
unit of the drift equivalent is meters per second. Obviously, variables of different
units cannot be summed up. The problem could be circumvented by scaling
the drift equivalent d in an appropriate way. However, there is no physically
intuitive way of expressing the drift in units of length. After all, one is usually
only interested in the positioning accuracy, not the accuracy of the drift estimate.
Thus, there is no actual need for a unified dilution measure.
5.2.3
Applications of the Doppler Dilution of Precision
Concept
In the preceding subsection, we defined different DDOP measures. Here we will
consider what they can be used for.
We still need to keep in mind the assumption 5.16 on measurement errors, which
are uncorrelated and have the same variances. With this assumption, we were
able to derive the equations 5.25–5.28. Now these equations can be used to
estimate the positioning error. It is easy to see that the following equations hold:
$
σx2u + σy2u + σz2u = DPDOP × σρ̇
$
σx2u + σy2u = DHDOP × σρ̇
(5.29)
(5.30)
σzu = DVDOP × σρ̇
(5.31)
σd = DDDOP × σρ̇
(5.32)
The Doppler dilution of precision values are relatively easy to compute. Now if we
have an estimate for the delta range measurement standard error σρ̇ we can easily
achieve estimates for the position estimate standard deviation using the equations
5.29–5.32. Estimate for the positioning error is naturally of great value. The
position estimate achieved by using the algorithm presented in Subsection 4.5.2
would be of little value if its error could not be estimated.
39
The DDOP concept is extremely beneficial both theoretically and practically. It
allows one to consider the positioning error as a product of two independent factors, namely the delta range measurement error and the quality of the satellite
constellation. If the measurement standard error can be estimated then the positioning standard error can also be estimated theoretically without numerical
simulation or building a positioning apparatus. This is important when assessing
the performance of Doppler positioning because GPS Doppler positioning apparatuses are not even known to exist. Theoretical analysis is also in many ways
more reliable than experimenting with real hardware. In the latter, the effects
of the measurement errors cannot be separated from the effect of the satellite
constellation. Of course, all this applies only if our assumptions on the nature of
the measurement errors are valid.
Another benefit of the Doppler dilution of precision concept is the qualitative
information it gives. Different satellite geometries can easily be compared and
the user can be informed when the DDOP measures are high and the results are
not reliable. Using the DDOP values, one can also easily select the best visible
satellites. Using only part of the satellites in computations reduces computational
costs and power consumption. When using all the visible satellites, the DDOP
values are always on their lowest. Sometimes, however, the user does not want
to use all the satellites but selects only a smaller amount of them. This could
be for example in order to avoid the heavy computations needed to process all
the visible satellites. The DDOP values are of great importance in this kind of
situations. The difference between the positioning errors when using the four
best satellites and when using the four worst satellites could be several orders of
magnitude.
The probability distribution of the DDOP values is almost impossible to achieve
theoretically. Chapter 6 will discuss numerically obtained values for DDOP and
positioning error. As a rule of thumb one can say that the order of magnitude of
a normal DPDOP value is about 2 × 104 seconds. Now assume that the effective
measurement error is 1 cm/s. According to the theory presented in this chapter,
the order of magnitude of the positioning error should then be about 200 meters.
5.3
Case of Normally Distributed Measurement
Noise
In Section 5.2 we assumed that the measurement errors were zero-mean, uncorrelated and had equal variances. With these assumptions, we were able to derive
theoretical formulae for the standard errors and the covariances of the positioning
errors. We were not, however, able to conclude anything else about the distribution of the positioning errors.
40
Let us now make the even stronger assumption that the measurement error vector
ρ̇ has a multivariate normal distribution [Johnson & Wichern, p. 126]. Rewriting
the equation 5.14, we have
−1
x = [G(xk )]T [G(xk )]
[G(xk )]T ρ̇
(5.33)
We notice that on the right hand side of the equation 5.33, there is the multinormally distributed vector ρ̇ multiplied by the non-random matrix
−1
[G(xk )]T [G(xk )]
[G(xk )]T . The properties of the multivariate normal distribution propose that also the vector x now has multinormal distribution
[Pohjavirta, p. 78]. The normal distribution parameters, namely the expected
value and the covariance, can be found with the formulae presented already in
Section 5.2. From the equations 5.17 and 5.18 one has:
−1 T
E {x} = GT G
G E(ρ̇)
(5.34)
−1 T
−1
G cov(ρ̇)G GT G
cov(x) = GT G
(5.35)
If one can further assume that the measurement errors are zero-mean and have
equal variances σρ̇2 , the equations 5.17 and 5.18 are valid:
E {x} = 0
−1 2
cov(x) = GT G
σρ̇
(5.36)
(5.37)
In this case, the positioning error vector x has the following probability density
function:
exp − 12 (x − E(x))T cov(x)−1 (x − E(x))
#
f (x) =
(2π)dim(x )/2 det (cov(x))
−1 2 −1
T
1 T
σρ̇
x
exp − 2 x G G
=
−1 2 T
4/2
(2π)
det G G
σρ̇
$
det GT G exp − 2σ1 2 Tx GT G x
ρ̇
=
(5.38)
(2π)2 σρ̇4
$
T Gx2
det G G exp −
2σρ̇2
=
(2π)2 σρ̇4
where det means the determinant of a matrix, exp means the exponent function
ex and dim means the dimension of a vector.
With the help of the equation 5.38, one can further analyse the nature of the
positioning error. One can see that the probability density is large for x such
41
that Gx ≈ 0. Thus there are large positioning errors in the directions that
are orthogonal to the most of the row vectors in the Doppler geometry matrix
G. According to the equation 4.28, the row vectors in G are always orthogonal
to the respective user-to-satellite vectors r i − r u . One can expect that if there
are many satellites near the horizon then the up-direction position estimate has
relatively small errors. On the contrary, if all the satellites have high elevation
angles then the positioning error in the up-direction is expected to be relatively
high.
42
Chapter 6
Numerical Results
In Chapter 4, it was shown that the Doppler measurements from the GPS satellites can be used for solving the user position. Chapter 5, in turn, sets the
theoretical basis for GPS Doppler positioning error analysis. There is, however,
no way to prove that the Gauss-Newton algorithm converges. Similarly, we were
unable to derive theoretical model for the measurement noise in Chapter 5.
In this chapter, we will use numerical methods to obtain approximate results.
The effect of the initial guess on the convergence of our algorithm is discussed. In
addition, the positioning accuracy is explored and the validity of the theoretical
results presented in Chapter 5 is tested.
6.1
Measurement Data
In the analysis of the current chapter we will use both simulated data and real
measured data. The real measured data was collected during May 16th 2001.
The data was collected using an Avocet VLR10B,3V,R2 GPS receiver (Axiom
Navigation) connected to a HP 58504A GPS L1 1 HP 58509A GPS antenna.
The receiver reported the new pseudorange and delta range measurement values
at 1 Hz frequency. The receiver was stationary during the measurements and
its exact location in ECEF coordinates was known. The receiver was continuously solving the time with pseudorange positioning. Consequently, the current
time was known with a high accuracy. The integration time in the delta range
measurements was evidently one second.
43
6.2
Properties of the Measurement Noise
In Section 5.1, we introduced the main sources of errors in the GPS Doppler
positioning. These included the ionospheric effects, the receiver noise, the effect
of unknown user velocity and the effect of biased time estimate. In the current
chapter, we will only consider a stationary receiver with a time estimate of high
quality. Since the user velocity and the time are accurately known, they are not
additional error sources here. It should be borne in mind that the positioning
errors might be several orders of magnitude greater for a moving receiver. Similarly, the results would be significantly weaker, if the current time estimate were
biased.
6.2.1
Hypothesis of the Properties of the Measurement
Errors
In this subsection, we will state the hypothesis we have of the properties of the
measurement data. We will also discuss the methods with which the hypothesis
can be validated.
From the equations 4.13 and 4.14 we can see the nature of the measurements.
Our hypothesis is that the measurement data can be modelled with the following
system of equations:
ρ̇i (t) = v i (t) •
r i (t) − r u (t)
+ d(t) + ρ̇i (t)
r i (t) − r u (t)
(6.1)
where the vector ρ̇ = [ρ̇1 ρ̇2 . . . ρ̇n ]T has multivariate normal distribution and
its components are uncorrelated.
The difficulty of the testing of the hypothesis 6.1 is the unknown clock drift
term d(t). The problematic term can be eliminated by considering the differences
ij (t) = ρ̇i (t) − ρ̇j (t).
ri − ru
rj − ru
ij = ρ̇i − v i •
− ρ̇j − v j •
(6.2)
r i − r u r j − r u where the argument t for time has been left out for notational simplicity.
The right hand side of the equation 6.2 can be calculated from delta range measurements and the current ephemeris. In the measurement data there were 7
satellites that were visible during the whole period of 1274 seconds. Since the
receiver reported the measurement data at 1 Hz frequency, there were 1274 delta
range measurements from each of the 7 satellites. The sequences ij were formed
for all the different combinations i, j such that i < j and j ≤ 7.
44
6.2.2
Numerical Testing of Normality
The normality of the differences ij was tested with the Lilliefors test which
is implemented in the Matlab 6.1 Statistics Toolbox [Conover]. The level of
significance used in the test was 5 %. In three cases out of the 21 sequences the
test rejected the hypothesis of normally distributed data. In the figure 6.1 the
difference probabilities for one of the sequences ij are plotted.
Difference probabilities compared to normal distribution
0.999
0.99
Probability
0.95
0.75
0.50
0.25
0.05
0.01
Difference sequence
Normal distribution
0.001
−0.02 −0.015 −0.01 −0.005
0
0.005 0.01 0.015 0.02
Differences (m/s)
Figure 6.1: Normal Probability Plot
The Lilliefors test rejected the hypothesis that the sequence whose probabilities
are plotted in Figure 6.1 would be normally distributed. The reason, as can be
seen, are the large errors. There seem to be some outliers that do not fit to
the normal distribution. However, this applies only to a small fraction of the
data. Furthermore, the vast majority of the sequences could be from the normal
distribution, according to the Lilliefors test. We can conclude that the sequences
ij are not perfectly normally distributed, but the normal distribution is still a
good approximation for the data.
6.2.3
Numerical Testing of Correlation
Next, we will consider the correlation between the errors of the delta range measurements from different satellites. Again, the clock drift term prevents us from
testing the correlation between the delta range measurement errors ρ̇i . However,
we are able to measure the correlations between the difference sequences ij .
All the different combinations {ij , kl } were formed such that i < j, i < k <
l and l ≤ 7. This resulted in 105 different combinations of {i, j, k, l}. The
correlations between the sequences were calculated. The maximum absolute value
45
of correlation between any two difference sequences ij and kl was 7 %. The
histogram 6.2 shows the distribution of the correlations.
Difference sequence correlations
20
Count
15
10
5
0
−0.06
−0.04
−0.02
0
0.02
0.04
Correlation
Figure 6.2: Histogram of difference sequence correlations
Fisher’s distribution and F statistics
1
Probability
0.8
0.6
0.4
0.2
Theoretical Fisher’s distribution
Cumulative F values of correlations
0
0
1
2
3
4
F statistic
Figure 6.3: Correlation significance test plot
The small correlation values imply that the difference sequences are in reality
uncorrelated. The significance of the correlations is investigated calculating the
F statistics for the correlations [Walpole & Myers, p. 349]. In Figure 6.3 the
F statistics of the difference sequence correlations are plotted and compared to
the Fisher’s distribution with degrees of freedom ν1 = 2 and ν2 = 1272. The
figure 6.3 shows that the F statistics could well be from the Fisher’s distribution.
This implies that the correlations between the difference sequences ij are not a
statistically significant part of the total variance in the sequences. Thus, it can
be said that the difference sequences ij do not correlate.
46
6.2.4
Magnitude of Errors
The actual error in the delta range measurements could not be determined due
to the unknown clock drift error. However, the clock drift error was estimated
as an average of the differences between the measured delta ranges and expected
received frequencies at each instant of time:
ˆ =
d(t)
n %
i=1
r i (t) − r u (t)
ρ̇i (t) − v i (t) •
r i (t) − r u (t)
(6.3)
This estimate is unbiased and logical consequence of the equation 4.14.
The estimates for the measurement noise components ρ̇i were calculated with
the help of the equations 6.1 and 6.3. In Figure 6.4, the measurement noises of
Measurement noise of two satellites
Magnitude (m/s)
0.01
0.005
0
−0.005
−0.01
Satellite 1
Satellite 2
−0.015
500
1000
time (s)
Figure 6.4: Measurement noise
two satellites are plotted. As one can see from the figure, the average error level
contributes more to the error than does the time dependent noise. This holds
in every measurement analysed so far. The reason for this may well be that the
measurement period has been quite short, about 20 minutes. This is so short a
time that for example the ionospheric effects remain about the same during the
measurement. Since the ionosphere is the biggest source of errors, the nonzero
average of the measurement noise during a short period is what could have been
expected.
The standard errors for all the seven measurement sequences were calculated
using the estimate 6.3. The standard errors were in the range between 0.003 and
0.006 m/s.
47
6.2.5
Conclusions
In Subsection 6.2.2 it was shown that the difference sequences ij can be modelled
as normally distributed. This assumption is valid with relatively high accuracy.
In Subsection 6.2.3 it was illustrated that the difference sequences ij are uncorrelated. In Subsection 6.2.4 we analysed the magnitude of the measurement noise
and found out that its order of magnitude in this measurers was about 0.5 cm/s.
All our numerical testing was done with the difference sequences ij = ρ̇i − ρ̇j
because the measurement noise ρ̇i cannot be measured. It is difficult to state
anything about the nature of the measurement noise sequences ρ̇i . For our
purposes, we can model the measurement noise as having a multivariate normal
distribution without correlation between the different sequences. It has to be
borne in mind that the measurement noise cannot be modelled as white noise.
This is because the errors change very slowly with time as was explained in
Subsection 6.2.4.
6.3
Positioning Performance with Real Data
In this section, the positioning results with real measured data are given. The
positioning was carried out using Matlab. The used algorithm was presented in
Subsection 4.5.3. Since the algorithm is iterative, we need to investigate both its
accuracy and its convergence.
6.3.1
Positioning Accuracy
The Gauss-Newton algorithm was used to calculate the position estimates independently at each instant of time. The initial guess given for the algorithm
was the centre of the Earth. The iteration was continued until the norm of the
√
correction term x fell under , where the machine precision was 2.2e-16.
In Figure 6.5, the magnitudes of the positioning errors are demonstrated in the
case where seven satellites were used to form a position estimate once a second.
The standard positioning error is about 105 meters. The Doppler position dilution
of precision measures were calculated with the equation 5.25. The DPDOP value
changed very slightly during the measurements and was about 9700 seconds. The
good positioning accuracy and low DPDOP value were due to the usage of the
high number of seven satellites. According to the theory developed in Chapter 5
and using the equation 5.29, we get that the standard error in the delta range
measurements is about 1.0 cm/s.
48
Histogram of positioning errors with 7 satellites
300
250
Count
200
150
100
50
0
90
100
110
120
130
Error magnitude (m/s)
Figure 6.5: Positioning errors
Next, we will illustrate the effect of the satellite geometry on the positioning
accuracy. The positioning was now performed using only four of the seven visible
satellites in the calculations. All 35 different geometries involving four satellites
were tested. The DPDOP values were also calculated for the different geometries.
In Figure 6.6, the positioning error magnitudes are plotted versus the Doppler
position dilution of precision values. The positioning error magnitudes and the
DPDOP values have a correlation of 94 %, the slope of the fit line being 1.0 cm/s.
The result implies that the positioning errors and the DPDOP values actually
have a linear dependence on each other, as suggested in Chapter 5. In addition,
the result implies that the order of magnitude of the delta range errors in the
measurements is 1 cm/s. Figure 6.7 is the same plot with the logarithmic scale
on both axes. The purpose of this figure is to show that the linear fit predicts
the positioning error reasonably well even with smaller DPDOP values.
Positioning errors versus DPDOP values
Positioning error (m)
3500
3000
2500
2000
1500
1000
500
Data points
Linear fit
0
0
0.5
1
1.5
2
DPDOP (s)
2.5
3
5
x 10
Figure 6.6: Error dependence on geometry
49
Positioning error (m)
Positioning errors versus DPDOP values
3
10
2
10
Data points
Linear fit
4
5
10
10
DPDOP (s)
Figure 6.7: Error dependence on geometry, logarithmic plot
6.3.2
Convergence
Most of the algorithms in the numerical analysis, including the Gauss-Newton
method, are iterative. This means that the search for the solution is initiated
from an initial guess point, marked by x0 . A tremendously important question
is whether the algorithm will converge towards the correct solution independent
of x0 . The answer in most cases is no. If x0 is too far from the correct solution,
the iteration may get stuck in a local minimum or approach infinity. Any general
proofs for the area of convergence cannot be given. Consequently, the numerical
testing of convergence is vital.
Extensive testing was performed in order to achieve numerical results for the
convergence area. The results were very optimistic. The iteration converged in
all the cases where x0 was near the Earth. The first divergent case took place
only when the initial guess x0 was more than 17 000 kilometres biased from the
real receiver location. When the bias in x0 was more than 17 000 kilometres,
some of the iterations diverged. When the bias was more than 23 000 kilometres,
all the iterations diverged. We can conclude that the algorithm has a very large
convergence area. The iteration can be initiated from the centre of the Earth
without the fear of divergence.
6.4
Positioning Performance with Simulated
Data
Testing with the real data is naturally fruitful, but testing with simulated data
is also necessary. The algorithm can be tested very extensively with simulated
data because data collection causes no problems. Simulated data can also be
50
used for testing how the algorithm behaves in rare and unexpected situations.
In addition, the testing is more controlled since the magnitudes of the simulated
errors are known. Altogether, more than 140 000 simulations were performed with
different combinations of different simulated receiver locations, initial guesses,
noise magnitudes and numbers of satellites. The used satellite geometries were
taken from real ephemerides.
6.4.1
Positioning Accuracy
The positioning accuracy was now tested with the simulated data. Multinormally
distributed white noise was added to the theoretically calculated delta ranges.
Thereafter, the Gauss-Newton algorithm was used to compute the position estimate for the simulated receiver. In Figure 6.8, the position errors are plotted
versus DPDOP × σρ̇ , where σρ̇ is the standard deviation of the added noise. The
Positioning errors versus DPDOP × σρ̇
4
Positioning error (m)
2.5
x 10
2
1.5
1
0.5
0
0
0.5
1
1.5
2
DPDOP × σρ̇ (m)
2.5
3
4
x 10
Figure 6.8: Error dependence on geometry and noise
linear fit of the data points in Figure 6.8 gives an index of determination of 0.92.
This means that the positioning error can be estimated with a high accuracy as
the product of DPDOP and σρ̇ .
6.4.2
The Distribution of DPDOP Values
We have now seen that the positioning error can be easily estimated as a product
of DPDOP and magnitude of delta range measurement noise. The measurement
noise is hard to analyse and depends on the receiver. On the contrary, the DPDOP
values are easy to analyse. The DPDOP values are easy to compute, as was
explained in Chapter 5. In addition, the computation of DPDOP values requires
only knowledge of the current ephemeris, time and a reference position but no
measurements.
51
A big number of DPDOP values were computed using different ephemerides from
different days and choosing different satellite combinations. The satellites whose
elevation angle was less than five degrees were rejected. When using all the available satellites, the DPDOP values were most of the time below 10 000 seconds.
Furthermore, when using the four best satellites, the DPDOP values were most
of the time below 13 000 seconds. The importance of selecting the right satellites
is demonstrated by the fact that using the worst four satellites produced DPDOP
values as high as 1010 seconds. Figure 6.9 shows the variation of the best and the
worst four satellites’ DPDOP values at a single location. Note the logarithmic
scale. The total number of visible satellites was eight.
DPDOP values during 13 minutes
10
10
8
DPDOP (s)
10
6
10
4
10
Worst satellites
Best satellites
2
10
0
100
200
300
400
500
600
700
800
time (s)
Figure 6.9: DPDOP values with the best and worst 4 satellites
The lesson from Figure 6.9 is that positioning with low number of satellites is
risky. Sometimes the positioning results may be very good, the order of magnitude
being 100–200 meters. Sometimes, however, the positioning estimate may be
millions of kilometres biased. This all does not depend on measurement errors
but satellite geometry. Luckily, calculating the DPDOP values gives the user
information whether the positioning geometry is bad or not.
Still much more testing is required to be able to draw conclusions about the
general distribution of the DPDOP values. For example, it would be interesting
to know if some areas on Earth are more advantageous for Doppler positioning
than others. In addition, the dependence of the DPDOP value on the reference
position is also important.
52
Chapter 7
Conclusions
This thesis discussed the feasibility of using Doppler positioning with the GPS.
The predecessor of the GPS system, namely the Transit Doppler positioning system, was introduced. It was shown that the standard GPS positioning method
is very accurate, but it cannot be used in weak signal conditions. Thus, there is
need for new positioning techniques. A heuristic comparison between the GPS
and Transit Doppler positioning showed that the GPS might be at least as accurate as the Transit. This fact justifies further analysis.
The thesis continued by developing a new positioning algorithm, beginning from
the governing physical equations. The iterative algorithm uses Doppler shifts
from at least four simultaneously measured satellite signals. The Doppler shifts
are transformed into quantities called delta ranges. The algorithm does not need
to demodulate the navigation message of the satellite signals, provided that the
satellite orbital parameters and the current time are known from other sources.
Thus, the algorithm is ideally suitable for weak signal conditions, such as indoors
and urban areas.
Details affecting the accuracy of the GPS Doppler positioning were covered. It
was pointed out that for a stationary receiver with perfect time information, the
ionospheric effects are the main error source. But when the user is in motion or
if the time information is biased, the order of magnitude of the positioning error
is expected to rise substantially.
In addition, a new theory for estimating positioning errors was developed. According to the theory, the positioning error analysis can be divided into two
separate fields, namely measurement error analysis and satellite geometry analysis. The final positioning error estimate can then be achieved by multiplying
the two effect together. The result is essentially a modification of the dilution of
53
precision concept in standard GPS positioning. Furthermore, it was shown that
the new theory can be used in satellite selection as well as in error estimation.
The last part of the thesis concentrated on numerical results. Real measurement
data was used in the analysis. The properties of the measurement errors were
first analysed. The average error delta range level in the data set was found
to be about 0.6 cm/s. The result is in line with the literature, which estimates
the ionospheric error to be at most 1.6 cm/s. The measurements from different
satellites were found to be uncorrelated. The measurement errors were almost
normally distributed, but there was slight tendency for larger errors than the normal distribution fit expected. However, it was concluded that only a minor error
is done if the measurement errors are modelled with multinormal distribution.
A Matlab algorithm was used to perform positioning with the newly developed
algorithm. The algorithm was noticed to behave well and converge from an
initial estimate even thousands of kilometres away. The positioning results were
surprisingly good, the error being on average 105 meters when seven satellites
were used. Moreover, the positioning errors were found to be well in line with
the theory developed for estimating the errors.
Because of the limited measurement data set, also simulated data was used to test
the positioning performance. The positioning error estimation theory was further
tested and found to be valid. Variation of the satellite geometry was also studied.
It became evident that the satellite geometry affects the positioning error much
more than the ionospheric effect, because its variability is many orders of magnitude larger. With 4 satellites, for example, the positioning error estimate may
be well below 200 meters when the geometry happens to be good. However, the
worst case scenario with only four available satellites gives positioning estimates
that are millions of kilometres biased.
This thesis has shown that the Doppler positioning is a considerable option for a
rough positioning estimate if the standard GPS positioning fails. A positioning
estimate can be achieved with only four satellites. The navigation data need
not be demodulated if the satellite positions and velocities are achieved from
other sources. However, the accuracy of the method with only four satellites is
not guaranteed. Increasing the number of satellites diminishes the risk of a bad
positioning estimate.
The theory for estimating positioning errors turned out to be extremely useful.
Using the theory, bad satellite geometries are noticed and the user can be warned
about unreliable positioning results. The theory can also be used for selecting the
most suitable satellites when computational efficiency prevents one from using all
the visible satellites.
54
The positioning algorithm was developed assuming that the user is stationary
or that its velocity vector is known. The applicability of the method for mobile
devices is significantly diminished by the fact that even a slow receiver motion
weakens the positioning performance drastically. For example, a velocity of 1.0
m/s is expected to raise the magnitude of positioning errors by two orders of
magnitude. Thus, for a mobile receiver, a modification for the algorithm is necessary. The modified algorithm would solve for the receiver velocity as well as its
position. The modified algorithm would require at least seven satellites.
In addition, the accuracy is further weakened if the receiver does not have the
correct time information. However, this effect is not as devastating as that of the
user motion. Still, a bias of one second is expected to diminish the accuracy of
the positioning by one order of magnitude, when compared to a stationary user
with correct time information. The algorithm can also be modified to solve for
the time information. This modification requires an additional available satellite.
As a conclusion, the GPS Doppler positioning serves as a good alternative method
for a stationary user. However, additional research is still required concerning the
probability of occurrence of a bad positioning estimate. Moreover, the challenges
regarding a mobile user need to be solved before applying the method in practise.
55
Bibliography
[Alonso & Finn]
Alonso, Marcelo & Finn, Edward J. Fundamental University Physics Volume II. Addison-Wesley, 1967. 965 p.
[Bancroft]
Bancroft, S. An Algebraic Solution of the GPS Equations. IEEE Transactions on Aerospace and Electronic
Systems 21, 7(1985). pp. 56-59.
[Bascom & Cobbold]
Bascom, P.A. & Cobbold, R.S. Origin of the Doppler
Ultrasound Spectrum from Blood. IEEE Transactions on
Biomedical Engineering 43, 6(1996). pp. 562-569.
[Braasch]
Braasch, Michael S. & van Dierendonck, A. J. GPS Receiver Architectures and Measurements. Proceedings of
the IEEE 87, 1(1999). pp. 48-64.
[Conover]
Conover, W. J. Practical Nonparametric Statistics, 3rd
ed. John Wiley & Sons, 1998. 584 p.
[ESA]
European Satellite Agency
<http://www.esa.int>
[Fang]
Fang, B. Trilateration and Extension to Global Positioning System Navigation. Journal of Guidance, Control and
Dynamics 9, 6(1986). pp. 715-717.
[Fletcher]
Fletcher, R. Practical Methods of Optimization. John
Wiley & Sons, 1990. 436 p.
[Giancoli]
Giancoli, Douglas C. General Physics Volume I. Prentice
Hall, Inc, 1984. 458 p.
[GPS 1995]
GPS Standard Positioning Service signal specification,
2nd ed. June 2 1995. 51 p.
Internet
pages
at
[Guier & Weiffenbach] Guier, W.H. & Weiffenbach, G.C. A Satellite Doppler
Navigation System. Proceedings of the IRE 48, 4(1960).
pp. 507-516.
56
[Hill]
Hill, Jonathan. The Principle of a Snapshot Navigation
Solution Based on Doppler Shift. ION GPS 2001.
[Hoshen]
Hoshen, J. The GPS Equations and the Problem of Apollonius. IEEE Transactions on Aerospace and Electronic
Systems 32, 3(1996). pp. 1116-1124.
[Janza et al.]
Janza, Frank J. (Editor) et al. Manual of Remote Sensing
Volume I: Theory, Instruments and Techniques. American Society of Photogrammetry, 1975. 867 p.
[Johnson & Wichern]
Johnson, Richard A & Wichern, Dean W. Applied Multivariate Statistical Analysis, 3rd ed. Prentice-Hall, 1992.
642 p.
[Kaleva1998]
Kaleva, Osmo. Matemaattinen Optimointi 1. Tampereen
Teknillinen Korkeakoulu, 1998. 113 p.
[Kaleva2000]
Kaleva, Osmo. Numeerinen Analyysi 1. Tampereen
teknillinen korkeakoulu, 2000. 114 p.
[Kaplan]
Kaplan, Elliot D. (Editor). Understanding GPS: Principles and Applications. Artech House, Inc. 1996. 554 p.
[Korvenoja]
Korvenoja, Paula. Satellite Positioning Algorithms and
Their Numerical Properties, M. Sc. Thesis. Tampere University of Technology, 2000. 95 p.
[Korvenoja & Piché]
Korvenoja, Paula & Piché, Robert. Efficient Satellite Orbit Approximation. ION GPS 2000.
[Krause]
Krause, L. A Direct Solution to GPS-Type Navigation
Equations. IEEE Transactions on Aerospace and Electronic Systems 23, 2(1987). pp. 225-232.
[Laurila]
Laurila, Simo H. Electronic Surveying and Navigation.
John Wiley & Sons, 1976. 545 p.
[Leva]
Leva, Joseph L. An Alternative Closed-Form Solution
to the GPS Pseudo-Range Equations. IEEE Transactions on Aerospace and Electronic Systems 32, 4(1996).
pp. 1430-1439.
[Lundberg]
Lundberg, John B. Alternative algorithms for the GPS
static positioning solution. Applied Mathematics and
Computation 119(2001). pp. 21-34.
[Parkinson & Spilker]
Parkinson, B. (Editor) & Spilker, J. (Editor). Global Positioning System: Theory and Applications Volume I.
57
Cambridge, MA:Charles Stark Draper Laboratory, Inc.,
1996. 793 p.
[Pohjavirta]
Pohjavirta, Armo. Matematiikka 4: todennäköisyyslaskenta ja tilastomatematiikka. Tampereen teknillinen korkeakoulu, 1991. 175 p.
[Post & Cupp]
Post, M.J. & Cupp R.E. Optimizing a pulsed Doppler
lidar. Applied Optics 29(1990). pp. 4145-4158.
[Sirola]
Sirola, Niilo. A Method for GPS Positioning without
Current Navigation Data, M. Sc. Thesis. Tampere University of Technology, 2001. 52 p.
[Syrjärinne]
Syrjärinne, Jari. Studies of Modern Techniques for Personal Positioning. Tampere University of Technology,
2001. 95 p.
[Tropea]
Tropea, C. Laser Doppler anemometry: recent developments and future challenges. Meas. Sci. Technol. 6,
6(1995). pp. 605-619.
[Walpole & Myers]
Walpole, Ronald E. & Myers, Raymond H. Probability
and Statistics for Engineers and Scientists. The Macmillan Company, 1972. 506 p.
[Wang & Snyder]
Wang, C.P. & Snyder, D. Laser Doppler velocimetry: experimental study. Applied Optics 13, 1(1974). pp. 98-103.
58