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