low-cost gps network positioning in urban …£o adicionarem erros à posição do recetor, uma vez...
TRANSCRIPT
Low-cost GPS Network Positioning in
Urban Environment
David Gabriel Ramos e Castro
Thesis to obtain the Master of Science Degree in
Engenharia Electrotécnica e de Computadores
Supervisors: Prof. José Eduardo Charters Ribeiro da Cunha Sanguino
Prof. António José Castelo Branco Rodrigues
Examination Committee
Chairperson: Prof. Adolfo da Visitação Tregeira Cartaxo
Supervisor: Prof. José Eduardo Charters Ribeiro da Cunha Sanguino
Member of the Committee: Prof. Fernando Duarte Nunes
November 2014
iii
ACKNOWLEDGEMENTS
This thesis is more than the final research for the conclusion of my degree; it is one of the most
important milestones of my life.
I did not get through this road alone, and there were some people that were very important for
the successful completion of this project.
Firstly, my acknowledgements are for my family, who has given me sustenance and values
throughout my entire life; in special, for my father, who has already left this world. I have learned
a lot from him, and to him I dedicate all my work.
I would also like to thank my colleagues, who I have met at university and, in particular, to Inês
Sampaio, Beatriz Féria, Tiago Simão, Leonor Gouveia, João Fernandes, Catarina Luís and,
with special emphasis, to João Ribas, whose help and support have made my journey much
easier.
To Professor José Sanguino, an example of dedication and happiness at work, who has helped
me not only with this thesis but also with some modules in which he was present.
To Catarina Rodrigues, who had the patience to stay with me and gave me the support to finish
my thesis.
Finally, to Edisoft S. A., a Thales Group Company, that has opened me the door to the
enterprise world, investing in me and in my education. This is proof that IST is preparing its
students at the highest level.
Thank you all
iv
ABSTRACT
The GPS (Global Positioning System) allows the estimation of the absolute position of a
receiver, via signals transmitted by satellites. However, this estimation is affected by errors,
especially those resulting from the atmospheric effects.
With the goal of minimizing the impact of these errors, it is, therefore, presented an innovative
solution for the determination of the position of a rover receiver, through its relative positioning
to a network of three fixed receivers, using double differences algorithms that eliminate major
errors.
All the receivers that were used are referred to as low-cost, acquire signals from one single
frequency, L1, and have the ability to acquire and to lock the phase signal data. The use of
these receivers was related to the fact that they are the most common in the civil community.
Therefore, this network can actually be a contribution to the improvement of the receivers'
position in urban scenario.
For a better estimation of the rover receiver, it is important that the fixed receivers are known
with high precision, since the estimation of its position is given by the relative positioning of the
fixed receivers.
The tests performed to evaluate the developed and implemented algorithms for this dissertation
showed that the designed network significantly decreased the existing GPS errors. In this way,
using only code signal data, the accuracy of the rover receiver's position was increased, in
comparison with the positions calculated by the stand-alone algorithm.
The GPS data needed to validate the proposed algorithm in this thesis was obtained using real
data and tested in MatLab.
Keywords: Baseline, Code Smooth, Double Differences, Least Square Method, Network
Algorithm
v
RESUMO
O sistema de GPS (Global Positioning System) permite a estimação da posição absoluta de um
recetor, através dos sinais emitidos por satélites. Contudo, esta estimação é afetada por erros,
principalmente aqueles que resultam dos efeitos atmosféricos.
Com o principal objetivo de minimizar o impacto destes erros, é apresentada uma solução
inovadora para a determinação da posição de um recetor móvel, através da sua posição
relativa a uma rede de três recetores fixos utilizando algoritmos de diferenças duplas que
eliminam os principais erros.
Todos os recetores utilizados são denominados low-cost, adquirem sinais de uma única
frequência, L1, e têm fraca capacidade de aquisição de dados de fase do GPS. A utilização
destes recetores prendeu-se com o facto de serem os mais comuns na comunidade civil,
podendo esta rede ser uma contribuição para a melhoria da estimação da posição de um
recetor móvel em cenário urbano.
Para uma melhor estimação do recetor móvel é importante que a rede seja precisa, ou seja,
que os recetores fixos que a constituem tenham a sua posição muito bem determinada para
não adicionarem erros à posição do recetor, uma vez que se trata de posição relativa.
Os testes realizados aos algoritmos desenvolvidos e implementados no âmbito desta
dissertação, demonstraram que a rede concebida diminui drasticamente os erros existentes no
sistema de GPS. Desta forma, aumentou-se a precisão da posição do recetor móvel em
comparação com as posições estimadas pelo algoritmo stand-alone, utilizando apenas os
dados do código de GPS.
Os dados de GPS necessários para a realização e verificação dos algoritmos propostos para
esta tese foram obtidos com recurso a dados reais e testados em MatLab.
Palavras-chave: Duplas diferenças, Filtragem do código, Vetor distância, Método dos mínimos
quadrados, Rede de GPS
vi
ACRONYMS
bps ......................................................................................................................... Bits Per Second
C/A ..................................................................................................................... Coarse/Acquisition
DGPS .................................................................................. Differential Global Positioning System
DoD .................................................................................................... U.S. Department of Defense
ECEF ................................................................................................... Earth-Centered Earth-Fixed
GNSS ....................................................................................... Global Navigation Satellite System
GPS ....................................................................................................... Global Positioning System
KF ............................................................................................................................... Kalman Filter
LoS .............................................................................................................................. Line-of-Sight
LS ............................................................................................................................. Least Squares
MCS ............................................................................................................ Master Control Station
MR ......................................................................................................................... Master Receiver
NRTK ............................................................................................... Network Real-Time Kinematic
ppp ............................................................................................................ precise point positioning
PR ............................................................................................................................. Pseudo-range
PRN ............................................................................................................... Pseudorandom noise
RR .......................................................................................................................... Rover Receiver
RTK ................................................................................................................ Real Time Kinematic
SA ................................................................................................................................ Stand-Alone
SV ............................................................................................................................. Space Vehicle
UERE ................................................................................................. User Equivalent Range Error
UTM ................................................................................................ Universal Transverse Mercator
WLS ..........................................................................................................Weighted Least Squares
SYMBOLS
c Speed of light
e Direction cosine
Error parameter
λ Carrier wavelength
ρ Geometric distance
Single difference
Double differences
vii
INDEX
1 INTRODUCTION ................................................................................................................... 1
1.1 Motivation ...................................................................................................................... 1
1.2 State of the Art ............................................................................................................... 2
1.3 Objectives and Structure ............................................................................................... 4
2 BASIC CONCEPTS ............................................................................................................... 5
2.1 Introduction .................................................................................................................... 5
2.2 Measurement errors ...................................................................................................... 7
2.2.1 Satellite Clock ........................................................................................................ 7
2.2.2 Ephemeris ............................................................................................................. 8
2.2.3 Ionospheric Effect .................................................................................................. 8
2.2.4 Tropospheric Delay ............................................................................................... 8
2.2.5 Receiver Noise ...................................................................................................... 9
2.2.6 Multipath ................................................................................................................ 9
2.2.7 User Equivalent Range Error ................................................................................ 9
2.3 Single Point Positioning ............................................................................................... 10
2.3.1 Code Observation ................................................................................................ 10
2.3.2 Phase Observation .............................................................................................. 11
3 RELATIVE POSITIONING .................................................................................................. 13
3.1 Introduction .................................................................................................................. 13
3.2 Single and Double Differences .................................................................................... 14
3.2.1 Single Differences ............................................................................................... 14
3.2.2 Double Differences .............................................................................................. 15
3.3 Observation Model ...................................................................................................... 15
3.4 Covariance Matrix........................................................................................................ 18
4 NETWORK SYSTEM RESOLUTION .................................................................................. 21
4.1 Introduction .................................................................................................................. 21
4.2 Float Solution ............................................................................................................... 21
4.3 Code Smoothing .......................................................................................................... 23
4.3.1 Kalman Filter Description .................................................................................... 23
4.3.2 Kalman Filter Application ..................................................................................... 25
4.4 Network Algorithm ....................................................................................................... 26
4.4.1 Network Position .................................................................................................. 26
4.4.2 UTM Projection .................................................................................................... 27
4.4.3 Receiver Position ................................................................................................. 29
4.5 Satellite Configuration Changes .................................................................................. 31
4.5.1 Variation in the Number of Satellites ................................................................... 31
viii
4.5.2 Pivot Change ....................................................................................................... 31
4.5.3 Cycle Slip ............................................................................................................. 31
5 SYSTEM DESIGN ............................................................................................................... 33
5.1 Introduction .................................................................................................................. 33
5.2 GPS Receiver .............................................................................................................. 33
5.3 Algorithm Overview ..................................................................................................... 34
5.4 Trials Description ......................................................................................................... 36
5.4.1 Single Baseline .................................................................................................... 36
5.4.2 Phase Stability ..................................................................................................... 37
5.4.3 Network Configuration ......................................................................................... 37
5.4.4 Multiple Baselines ................................................................................................ 40
5.4.5 Rover Receiver Position ...................................................................................... 40
6 RESULTS ............................................................................................................................ 43
6.1 Introduction .................................................................................................................. 43
6.2 Single Baseline Results ............................................................................................... 44
6.3 Phase Stability Results ................................................................................................ 45
6.4 Master Receivers’ position .......................................................................................... 46
6.5 Multiple Baselines Results .......................................................................................... 48
6.6 Rover Receiver’s position ............................................................................................ 49
7 CONCLUSION ..................................................................................................................... 59
REFERENCES ............................................................................................................................ 61
ix
LIST OF FIGURES
Figure 1.1 - GPS network .............................................................................................................. 1
Figure 2.1 - Signal demonstration [8] ............................................................................................ 5
Figure 2.2 - GPS errors ................................................................................................................. 7
Figure 2.3 - RR position with or without phase smoothing .......................................................... 12
Figure 3.1 - Double differences schematic .................................................................................. 13
Figure 3.2 - Baseline vector ........................................................................................................ 16
Figure 4.1 - Network representation ............................................................................................ 21
Figure 4.2 - Kalman Filter design ................................................................................................ 23
Figure 4.3 - Code smoothing design ........................................................................................... 25
Figure 4.4 - Network concept ...................................................................................................... 26
Figure 4.5 - Europe UTM Zones.................................................................................................. 28
Figure 4.6 – Cycle slip ................................................................................................................. 32
Figure 5.1 - EVK-6 kit .................................................................................................................. 33
Figure 5.2 – Proposed algorithm ................................................................................................. 34
Figure 5.3 - IT GNSS Monitoring Station .................................................................................... 36
Figure 5.4 - Antennas configuration ............................................................................................ 37
Figure 5.5 – MRs localization ...................................................................................................... 38
Figure 5.6 - Network 1 ................................................................................................................. 39
Figure 5.7- Network 2 .................................................................................................................. 39
Figure 5.8 – Precision vs. Accurately .......................................................................................... 40
Figure 5.9 – RR location .............................................................................................................. 40
Figure 6.1 - Single baseline test .................................................................................................. 44
Figure 6.2 – Phase stability results ............................................................................................. 45
Figure 6.3 – Multiple baselines result: points (1) & Google Earth (2) ......................................... 48
Figure 6.4 – Network 1 (blue triangle) and Network 2 (red triangle) Coverage Area .................. 49
Figure 6.5 - Real Route ............................................................................................................... 50
Figure 6.6 – RR route by NA ....................................................................................................... 50
Figure 6.7 - Number of baselines along the route ....................................................................... 51
Figure 6.8 – LoS Satellites example ........................................................................................... 52
Figure 6.9 – Shift between Real Route and the Network Estimated Route ................................ 53
Figure 6.10 – RR SA positions .................................................................................................... 54
Figure 6.11 – Network Algorithm (left) and SA Algorithm (right) ................................................. 54
Figure 6.12 - SA and Network algorithms with critical situations ................................................ 55
Figure 6.13 – RR crossing a tunnel ............................................................................................. 56
Figure 6.14 – RR in urban dense scenario ................................................................................. 56
Figure 6.15 – GPS algorithms response in urban scenario ........................................................ 57
Figure 6.16– Network algorithm with better response................................................................. 57
Figure 7.1 – Network Communication System ............................................................................ 59
x
LIST OF TABLES
Table 2.1 - PR error budget [5] ...................................................................................................... 9
Table 5.1 – MRs description ........................................................................................................ 38
Table 5.2 - Known MR position ................................................................................................... 39
Table 6.1 - Single baseline absolute error values ....................................................................... 44
Table 6.2 - MRs position ............................................................................................................. 47
Table 6.3 - MRs position ............................................................................................................. 47
Table 6.4 - Multiple baselines absolute error values ................................................................... 48
1
1 INTRODUCTION
1.1 Motivation
The Global Positioning System (GPS) is a powerful navigation tool that falls within the Global
Navigation Satellite System (GNSS).
This system was made to determine receiver positions, however, not in a precise manner from
civilian receivers. There are some techniques that can be used to minimize precision errors.
Differential GPS (DGPS), as shown in Figure 1.1, can be a good approach to get better and
more accurate positioning. By receiving real-time data coming from one or more master
receivers (MRs), rover receivers (RRs) are able to perform double differences that are thus
capable of correcting most of the bias associated to the stand-alone (SA) positioning. This
technique is described in chapter 3.
Figure 1.1 - GPS network
The latest efforts in technological advancement are gathering more and more computational
aptitudes, wireless connection tools and storage capacity for small devices, such as
smartphones and netbooks, most of which contain GPS chipsets embedded in them. These
embedded GPS chipsets are usually defined as low-cost in the geodetic community, compared
to the higher level and more costly professional receivers which generally provide accuracies
ranging from 1 meter (m) to some centimeters (cm) in real-time navigation, whilst low-cost
devices usually have an accuracy ranging from 10 m to 1 m. Other than the cost issue, the high-
level GPS receivers cannot be embedded in mobile devices due to their physical limitations,
usually requiring miniaturization, whilst high precision antennas are often bigger than the mobile
devices themselves. Therefore, in order to increase the localization accuracy of mobile devices,
the potential of low-cost receivers must be explored at its maximum extent.
2
1.2 State of the Art
GPS was created in the 1970s by the U.S. Department of Defense. Other GNSS, such as
GLONASS was created by Russia, GALILEO is being developed by the European Union (EU),
China is currently developing COMPASS or BEIDOU 2 [1].
GPS is composed of three parts: space segment, control segment and user segment. The
space segment is currently formed by a group of 32 satellites, all orbiting at an altitude of
approximately 20,000 kilometers (km) on six orbital planes, approximately tilted at 55 degrees in
relation to the Earth’s equatorial plane. The system was designed to always guarantee the
visibility of at least four satellites, minimum number to calculate the receiver position, from every
point on the Earth’s surface with a clear sky view. The control segment includes a Master
Control Station (MCS) located near Colorado Springs in the United States of America and other
monitoring stations located around the world. The purpose of the control segment is to
continuously monitor the satellite transmissions, to predict the satellite ephemerides, to calibrate
the satellite clocks and to periodically update the navigation information that the satellites carry
onboard. On the other hand, the user segment refers to the receivers which are used to acquire
the satellite signals and to compute positions [2].
Whilst initially GPS was used exclusively for military purposes, during the 1980s some GPS
signals became opened to civilian use – however, publicly available signals remained
intentionally restricted by the U.S. Department of Defense (DoD), i.e. selective availability for
strategic purposes [3], introducing errors of some tens of meters in the positioning of civilian
receivers. This situation induced civilian users, who promptly started to use GPS for research
and work purposes, to conceive new techniques to reduce the loss of accuracy due to selective
availability, which resulted in the first applications of DGPS positioning [4]. Throughout the ‘80s
and ‘90s the civilian use of GPS increased dramatically. The continuous improvements on the
GPS positioning theory and the advances in both electronic components and computer
technology, allowed for the development of smaller and more capable receivers, expanding the
pool of users from highly trained experts to professionals from various disciplines. Additionally,
the U.S. military was pressured to permanently disable selective availability throughout the ‘90s
and by 1 May 2000 this was fully enforced [5].
The use of GPS among professionals has been growing since the late ‘90s and up until now –
which is furthermore the case due to the improvements that have been made to professional
receivers, which are currently made more and more functional. Although the system remains
costly, it does, nevertheless, achieve much more precision and accuracy.
Over the last decade, a real revolution has occurred in the diffusion of GPS devices: they have
been getting both smaller and cheaper (at the expense of accuracy, dropping to some meters).
These devices, which are now widely available to the consumer market, are either wired or
wireless and are addressed as low-cost receivers.
3
Nowadays, miniaturized low-cost GPS receivers have reached the mass market, embedded in
car navigation equipments and various other kinds of palmtop devices, ranging from netbooks
to smartphones. These solutions are clearly challenging for both signal acquisition capabilities
and performances of receivers, but they are experiencing so much success and diffusion that
the efforts put into their development are immense [6].
There are two main techniques to improve the precision of the receiver’s position, the Kalman
filter and the double differences, both of them were used in this thesis. The first technique tries
to predict the next position using a filter that takes into account the previous information.
Therefore, it is a post-processing algorithm. The second ones uses a second fixed receiver with
a known position to minimize the GPS signal effects between satellites and receivers. For this, it
is calculated the distance vector, or baseline, between the master receiver (MR) and the rover
receiver (RR). This technique was used in this thesis and it is explained in section 3.2.
It is possible to combine multiple baselines using multiple receivers. The use of distributed
reference GPS stations to estimate a RR position using relative positioning is named Network
real-time kinematic (NRTK) GPS positioning. The main concept of this system is the creation of
a receivers’ constellation on Earth. This is the theory behind GPS; but instead of satellites, the
system uses fixed GPS receivers. With this method, the signal errors which are described in
section 2.2 are reduced. Another advantage of this technique is the use of an existing signal –
i.e., GPS signal – which is simple to use, to acquire and to process, and it is the only signal
which is free and available anywhere on Earth.
The data center of a NRTK GPS facility can provide mobile users with highly accurate and
timely corrections wirelessly through GSM/GPRS connections to increase positioning reliability,
continuity, productivity, accuracy and mobility.
4
1.3 Objectives and Structure
The purpose of this thesis is to provide a low-cost GPS network algorithm to improve the
estimation of a RR position. This solution shall use low-cost receivers and should result in a
better estimation of the RR’s positions compared to stand-alone algorithm. A new approach of
relative positioning is presented, and it consists in building a network with three fixed receivers,
using only L1 frequency. The proposed algorithm should be tested in urban scenario, where the
estimation of the RR’s position is a great challenge nowadays. This thesis follows a structure
that allows the understanding of fundamental concepts and deployment of important
implementations that aimed at the final goal of creating a GPS Network.
The Chapter 2 is the introduction of the basic concepts of GPS that are necessary to
understand before entering the goal of this thesis. The GPS errors are described in detail so
that it is possible to see how it is a decisive factor for the estimation of the receiver.
In Chapter 3, it is presented the relative positioning that is the cornerstone of this thesis. With
relative positioning, most of the errors described in Chapter 2 are cancelled, which improves the
estimation of the receiver’s position.
In Chapter 4, the main decisions that were made for the network algorithm are described. All
algorithms that are used in this thesis and the main situations that need more attention because
of the satellite configuration are presented in detail.
The implementation of the proposed system is presented in Chapter 5, with focus on the used
U-Blox GPS receivers and the description of the trials. These receivers are low-cost GPS, and
were used to validate the proposed algorithm.
In Chapter 6, the results of trials described in Chapter 5 are discussed, with main focus on the
network configuration and on the response of the RR in urban scenario. In the end of this
chapter, the main critical situations suffered by the RR are presented, as well as which of them
cause signal losses along the GPS acquisition.
Finally, the conclusions of the results depicted in Chapter 6 are presented in Chapter 7. Along
with the conclusions of this network, topics for future work regarding improvements to the used
techniques and possible applications are proposed.
5
2 BASIC CONCEPTS
2.1 Introduction
GPS positioning is based on the measurement of the distance between the receiver and the
satellites derived by the flight time of a signal which in turn is obtained by correlating the
received signal and an internal replica generated by the receiver itself. Of course satellite
positions have to be known, and they are computed from the available ephemerides.
All GPS satellites transmit at frequencies derived from the fundamental frequency of 10.23
MHz, made available by onboard atomic clocks. There are two main signals broadcasted by
satellites, the L1 carrier at 1575.42 MHz (154 x 10.23 MHz) and the L2 carrier at 1227.60 MHz
(120 x 10.23 MHz). Signals coming from different satellites can be distinguished because both
carriers are modulated by pseudorandom noise (PRN) sequences, which are different for each
satellite. Two binary sequences are used: Coarse/Acquisition (C/A) code with a chipping rate of
1.023 MHz and precision (P) code with a chipping rate of 10.23 MHz. The C/A codes belong to
the family of Gold codes, which characteristically have low cross-correlation between all
members of the family. This makes them particularly apt to distinguish the signals which are
received simultaneously from different satellites [7]. The L1 carrier is modulated by both codes,
whilst the L2 carrier is modulated just by the P code (Figure 2.1). The P code is often called
P(Y) because it can be encrypted to the Y code for U.S. military purposes.
There is also a navigation message, modulated on both carriers at a chipping rate of 50 bits per
second (bps), that contains information on the ephemerides of the satellites, GPS time, clock
behavior and system status messages. See Figure 2.1 for a schematic representation of the
signals.
Figure 2.1 - Signal demonstration [8]
6
To determinate the distance between the satellite and the receiver either codes or carrier
phases can be used. The code measurements have a higher noise level than phases, namely
about 1 m for a C/A code and 0.3 m for a P code, whilst for phases it is only a few millimeters,
although the corresponding PR is easily obtainable with one receiver acquiring the signal from
one satellite. The carrier measurements are the phase shift between the received signal and the
replica over the last cycle. These measurements require more complex solutions because there
is a new parameter that needs to be estimated: integer ambiguities. These ambiguities are the
total number of integer cycles, excluding the last one, and must be estimated, either as a float
or an integer value. Temporary loss of signal between the receiver and a satellite causes the
corresponding number of integer cycles to be lost, requiring their new estimation – this
occurrence is known as a cycle slip, which is described in section 4.5.3. Taking into account
that each additional satellite requires its own ambiguity to be solved, the resolution of
ambiguities requires multiple observations over multiple epochs.
Civilian receivers can be split into two main categories on the basis of which and how many
signals they are able to receive. Those that can receive both L1 and L2 phases (together with
C/A and P codes) are known as double frequency or geodetic receivers and, since their price
range is extremely costly, these are mainly used by professionals or for academic purposes.
These devices have high quality electronic components, which are not usually forced into small-
size designs, and allow for precise measurements of both codes and phases. This results in the
possibility of obtaining high accuracy positioning within the range of a few millimeters. Single
frequency receivers can only acquire the L1 phase (with C/A code) and are less expensive.
Receivers with lower cost electronics in particular are not capable of getting good phase
measurements because phases are more difficult to measure and correctly track than codes –
this generally leads to a lower accuracy compared to geodetic receivers [9].
7
2.2 Measurement errors
GPS is not a perfect system for the calculation of a receiver’s position due to the effects that the
signal is exposed to, as it is sent by satellites until it is received by the GPS receivers. The
errors which are considered to be of most significance are described in this section and are
represented in Figure 2.2.
Figure 2.2 - GPS errors
2.2.1 Satellite Clock
Satellites contain an atomic clock that controls all onboard timing operations, including
broadcast signal generation. Although these clocks are highly stable, the clock correction fields
in the navigation data message are sized in such a manner that the deviation between space
vehicle (SV) time and GPS time may be as large as 1 millisecond (ms) [5]. A drift of 1 ms in a
satellite clock leads to an error of 300 km (drift multiplied by the speed of light). The MCS
determines and transmits the clock correction parameters to the satellites which, in turn,
rebroadcast these in the navigation message that is implemented by the receiver using the
second-order polynomial.
8
2.2.2 Ephemeris
The gravitational and non-gravitational forces disturb the motion of the GPS satellites, causing
the orbits to deviate from a Keplerian ellipse in the inertial space [10]. The disturbances are
characterized by long-term, periodic and anomaly components, and must be continually
determined through the analysis of tracking data. To adequately describe the orbit of GPS
satellites during the interval of time for which the ephemeris information is transmitted. A
representation based on Keplerian elements plus perturbations is used. Estimates of
ephemerides for all satellites are computed and uplinked to the satellites with other navigation
data message parameters for rebroadcast to the user. Generally the satellite ephemerides are
broadcasted several hours in advance of the epoch for which their locations are calculated [5].
Although the Keplerian representation has physical meaning, additional parameters are
required to model the perturbations existing in the satellite orbit. These parameters are obtained
from a curve fit to the predicted satellite ephemeris. These elements do not constitute the
totality of the Keplerian elements, as they only describe the ephemeris over the interval of
applicability and not for the whole orbit.
2.2.3 Ionospheric Effect
The ionospheric effect is a dispersive medium located primarily in the atmosphere between 70
km and 1.000 km above the Earth’s surface. This layer is composed of ions and free electrons
that are originated from the sun’s ultraviolet rays. These free electrons influence
electromagnetic wave propagation that delays L1’s group velocity and advance the signal’s
carrier-phase.
Moreover, being a dispersive medium, L1’s group velocity is altered in a different amount of
L2’s, explaining why L1/L2 receivers correct ionospheric errors with a high accuracy (99.9%).
This delay depends on the area in which it is located, time of the day, day of the year and
elevation angle of the satellites. This error has an average 1-sigma (1-σ) value of 7 m [5].
Subsequently, single frequency receivers use the Klobuchar model [11] to remove an average
of 50% of the delay. The ionospheric effect is approximately equal to two receivers as long as it
is considered a short baseline, which means that with interferometric techniques (such as
differentiation), this effect can be cancelled [5].
2.2.4 Tropospheric Delay
The troposphere is the lower layer of the atmosphere and it is non-dispersive for the GPS
frequencies. The troposphere does have an impact on the group velocity, creating a delay due
the refraction, which is a function of the medium’s refractive index by Snell’s Law [12]. This
effect depends on local temperature, pressure and relative humidity. Other than this, the user’s
height and satellite elevation angle are also relevant. This error can also be almost completely
removed by differentiation.
9
2.2.5 Receiver Noise
Measurements are affected by the noise present in the signal acquisition process. This is mainly
due to thermal noise which is induced by the hardware and by the interference between the
GPS signal and other signals within the same band. Typically, the values of the error in the
code measurements are on the order of decimeter and the carrier phase measurements on the
order of millimeter [5].
2.2.6 Multipath
In real environments, multiple waves of the same signal reach the GPS receiver. Besides the
direct signal, which is the one that is received from the line-of-sight (LoS) path, there are
reflected versions (on natural or man-made surfaces) of this same signal reaching the antenna,
other versions that have longer paths than the direct one and smaller amplitudes. This
introduces errors in both code and carrier phase measurements. This phenomenon is highly
related to the scenario surrounding the receiving device. The urban scenario, which is the case
scenario of this thesis, is rich in multipath sources, since there are multiple surfaces that allow
the reflection of the GPS signal before reaching the antenna. Furthermore, the satellites’
elevation angle may also influence the multipath error since signals transmitted by satellites with
smaller elevation angles are more likely to be reflected. The multipath effect can be reduced by
applying specific techniques in the antenna design and in the signal processing of the GPS
signal, as described by [13].
2.2.7 User Equivalent Range Error
The User Equivalent Range Error (UERE) is an estimate of the PR error and is given by the
root-sum-squared between all error components. Thus, the 1-σ typical value for each error
source and the UERE are present in Table 2.1 .
Error source 1-σerror (m)
Satellite clock 1.1
Ephemeris 0.8
Ionospheric delay 7.0
Tropospheric delay 0.2
Receiver noise 0.1
Multipath 0.2
UERE 7.1
Table 2.1 - PR error budget [5]
10
2.3 Single Point Positioning
The estimation of the receiver’s position (i.e. its coordinates in an Earth-Centered Earth-Fixed
(ECEF) reference frame), solely based on the signals which are received from the satellites in
each epoch, with no addition of external information, is called single point positioning.
This positioning can be calculated by using code and/or carrier phase measurements.
2.3.1 Code Observation
Each satellite broadcasts a unique code PRN sequence that is used to identify it. When a
satellite signal is received, it is correlated with an internal replica of itself produced by the GPS
receiver.
The code observation equation is represented
( )
( 2.1)
where,
is the code measurement;
c is the speed of light;
and are the receiver and satellite clock offsets;
is the ionospheric delay;
( ) is the tropospheric delay;
is the measurement noise.
and the geometric distance as a function of satellite and receiver positions in Cartesian
coordinates is defined
√( ) ( ) ( ) ( 2.2)
Since the satellite position ( ) is assumed to be known from the ephemerides, the
satellite clock offset ( ) is modeled and sent in the navigation message and the atmospheric
delays and
are estimated from standard models, such as the Klobuchar ionospheric model
[11] and the tropospheric model [14]. There are four unknown variables to be calculated: the
receiver position coordinates ( ) and the receiver clock offset ( ). At each epoch of
measurements, point positioning can thus be performed by having data from at least four
satellites.
The system of code observation equation ( 2.2) is nonlinear; therefore, it is required to become
linear around an approximate value of the receiver in order to solve it. An approximation of the
receiver position can be computed by means of deterministic geometric approach such as the
Weighted Least Squares (WLS) algorithm [15] or Bancroft method [16].
11
2.3.2 Phase Observation
The phase observation is obtained by measuring the offset between the received carrier phase
and a sinusoid with the same frequency internally generated by the receiver. The phase
observation equation is defined
( )
( 2.3)
where,
is the integer number of cycles between the emission epoch and the reception
epoch;
is the phase measurement error.
Compared with the code observation equation ( 2.2), the phase observation equation ( 2.3)
contains one additional unknown variable, the initial phase ambiguity ( ). This term must be
estimated for each satellite in view. Therefore, it is necessary to increase the number of
observation epochs in order to solve the system with respect to the receiver coordinates.
As mentioned before, phase observation noise is much lower than that of the code, thus it
should provide higher accuracy results. Nevertheless, high quality receivers are needed in order
to correctly acquire the phase signal. Moreover, point positioning by phase observations is not
feasible in single epoch positioning.
Low-cost receivers are able to acquire the L1 phase, even if moderately degraded, as they
generally exploit this information by applying the phase-smoothed code positioning. This
technique is used to enhance code observations by updating them using the variation of phase
observations. In a single frequency case, the phase smoothing algorithm [17] is expressed by
( )
( ) ( )
( ) ( 2.4)
where ( ) is the smoothed PR at epoch t.
A sample result is exemplified in Figure 2.3.
13
3 RELATIVE POSITIONING
3.1 Introduction
GPS observations are affected by various errors described in section 2.2. Some of these errors
can be reduced or totally removed by using relative positioning techniques between two
receivers. By differentiating the observations of two receivers for the satellites that are visible for
both, as shown in Figure 3.1, it is possible to remove satellite and receiver clock errors as well
as to cancel the atmospheric errors – if the two receivers are close enough to consider the
atmospheric effect to be the same.
With regards to relative positioning within the context of this thesis, one of the two receivers was
in well-known coordinates, MR, whilst the other one was respectively static or moving, RR. The
equation that is used to calculate the RR position, ( ), using the vector between the two
receivers, baseline vector, ( ), and the known position of MR, ( ), is
demonstrated in equation ( 3.1).
( ) ( ) ( ) ( 3.1)
Figure 3.1 - Double differences schematic
14
Relative positioning can be applied either in post-processing or in real-time. The former requires
RR data to be collected on the field; where master data is downloaded afterwards and
processed together with the RR. The latter requires master data to be provided in real-time,
usually through the use of the Internet, so that the RR can acquire it and use it during the
survey. The MR can be either a single receiver or part of a network of receivers. In the second
case, it can be either a physical station (one of those belonging to the network, e.g. the nearest
one) or a Virtual Reference Station computed by the network control center to be as close as
possible to the RR [18]. When working in real-time, as it is the case for most navigation
applications, the MR can send either its own raw observations or differential corrections. The
former kind of positioning requires the RR to differentiate its own observations with respect to
those of the MR and it is addressed as Real-Time Kinematic (RTK); the latter requires the RR
just to correct its own absolute positioning with the corrections computed by the MR and it is
commonly addressed as DGPS [4].
3.2 Single and Double Differences
Single differences, which are the first step in the differentiation of GPS observations, involve the
simultaneous use of two receivers observing the same satellite. The differentiation can be
applied either to code or phase observations.
Let the two receivers be the RR, r, and the MR, m, both receiving signal from satellite s during
epoch t.
3.2.1 Single Differences
The differentiation of the two code observation equations yields at same epoch t,
( )
( ) ( )
( ) ( ) ( )
( ) ( )
( ) ( )
( ) ( 3.2)
The subscript rm indicates the difference operation between the same terms in relation to the
two receivers. The main advantage of applying single differences is that the most of the errors
related to the satellite are cancelled (e.g. the satellite clock error). However, the single
difference observation remains sensitive to both receiver clock errors ( ( )) .
Applying the same technique for phase observations yields
( )
( ) ( )
( ) ( )
( ) ( )
( ) ( )
( ) ( )
( ) ( )
( 3.3)
15
3.2.2 Double Differences
When two receivers, r and m, observe two satellites, s and q, at the same epoch, t, the following
double difference observation equations are obtained ( 3.4) and ( 3.5).
The differentiation of two single difference code observations yields
( )
( ) ( )
( ) ( ) ( 3.4)
in which the receiver clock errors are eliminated, as long as observations to satellites, s and q,
are taken at the same time and the receiver clock drifts between observation epochs are
negligible. The term ( ) is the measurement noise of code double differences: it contains
the propagation on double differences of the measurement noise of the single observations.
Double differences on phase observations are written as follows
( )
( ) ( )
( ) ( )
( ) ( 3.5)
where the term ( ) is the measurement noise of the phase double difference.
3.3 Observation Model
Now it is necessary to relate the double difference with the baseline, which is the vector
between the MR antenna and the RR antenna. The single differences can be calculated by the
inner product between the baseline vector, b, and direction cosine – the LoS unit vector – to the
used satellite, ,
(
‖ ‖
‖ ‖
‖ ‖) ( 3.6)
where
‖ ‖ √
( 3.7)
Recovering the situation with satellite s and receivers’ r and m, the respective equation is
( ) ( 3.8)
16
That is, the single difference corresponds to the projection of the baseline vector into the LoS to
the respective satellite, as depicted in Figure 3.2. It is assumed that the paths of propagation
between the satellite and the two receivers are parallel, due to the distance between them
(satellites are in orbit at a mean distance of 20,200 km [5], while the distance between antennas
is a meter level).
Figure 3.2 - Baseline vector
By subtracting equation ( 3.8) for satellites s and q, the double difference obtained will have the
form ( 3.9).
( ) ( 3.9)
The determination of the direction cosines, es and e
q, which are assumed to be equal for both
receivers due to the big difference between the baseline length and the satellite-receiver
distance, is done by computing the user position and the respective satellite position.
Combining ( 3.4) and ( 3.5) with ( 3.9), and expanding to a case with n satellites, one would obtain
the system
17
[
]
[
]
[
]
[
]
[
]
[
]
( 3.10)
Note that the superscript pivot, present in all differential terms, is the satellite with highest
elevation [19]. This definition of pivot is for the maximization of the constellation geometry and
stability. In order to calculate this double difference relative to the pivot satellite, one can use a
matrix form, M, to calculate, what is represented in equation ( 3.11) [20]. This equation is also
validated for double difference phase measurements.
[
]
[
] ( 3.11)
Where,
[
] ( 3.12)
and
[
]
( 3.13)
18
The system ( 3.10) can be reduced to the matrix form
( ) ( ) ( ) ( ) ( ) ( ) ( 3.14)
where the subscript represents the dimension of each matrix and,
y is the measured double difference’ vector;
B is the system matrix for the baseline coordinates, containing the differenced direction
cosines;
b is the baseline coordinates’ vector;
A is the system matrix for the ambiguity set, containing the carrier wavelength;
a is the aforementioned ambiguity set;
is the measurement noise vector.
In order to use the system defined in ( 3.9), one must define the covariance matrix of the
measurement error .
3.4 Covariance Matrix
Both carrier phase and code measurements noise is assumed to be Gaussian distributed, with
expected value zero and variance, and
respectively, and assumed to be equal for all
satellites.
Considering that measurements from different satellites are independent, this entails that those
measurements are uncorrelated. Hence, for a generic set of measurements, given by the
column vector z and with the disturbance column vector, , distributed like code and carrier
phase (with expected value zero and variance ), the respective covariance matrix is defined
by,
( ) {( ( ))( ( )) } { } ( 3.15)
for a constellation with n satellites and where represents the identity matrix.
By the definition of single difference ( 3.2) for receivers’ r and m, the derivation of the
corresponding covariance matrix is straightforward
( ) {( ( ))( ( )) } {( )( ) }
{
)
( 3.16)
19
The equation ( 3.16)) results in a diagonal matrix and this shows that the single differences are
uncorrelated.
The double differences’ vector, for n satellites, can be solved with matrix form the same way
that in equation ( 3.11).
( 3.17)
Finally, it is possible to determinate the double differences’ covariance matrix
( ) {( ( ))( ( )) } { }
[
] ( 3.18)
Since all double differences are generated for the same pivot, the double differences are
correlated.
To conclude, both carrier phase and code double differences have the following covariance
matrices, correspondingly,
( ) ( 3.19)
( ) ( 3.20)
21
4 NETWORK SYSTEM RESOLUTION
4.1 Introduction
To improve the position of the receiver it was proposed to create a GPS receivers Network,
Figure 4.1. The main concept of this network was to use three baselines between the RR and
each MR in order to calculate the RR position with Least Squares (LS) algorithm.
The first step for the resolution of the proposed network system was the determination of each
baseline between the RR and each MR. In this section, the float solution to get a baseline is
described, and one technique to improve the accuracy of the baseline with phase
measurements is presented. Once the baseline is determined, a proposed network algorithm is
used to improve the receiver’s position.
Figure 4.1 - Network representation
4.2 Float Solution
As aforementioned, the system ( 3.9) can be solved by a WLS algorithm [15] with the form
‖ ‖ ( 4.1)
where W is a weight matrix.
The minimization gives floating point solutions that are highly contaminated by code’s noise, as
aforementioned in section 2.3.2.
22
By defining the augmented system matrix , with dimension 2(n-1)x((n-1)+3), one would
have an augmented state vector [
], with dimension ((n-1)+3)x1. By analyzing the
augmented system it is possible to conclude that there are enough equations to estimate all the
states (i.e. baseline vector coordinates and the double differences integer ambiguities), if the full
rank of the augmented system matrix H is equal to the number of states, that is, equal to ((n-
1)+3). This equality is only verified when the constellation has, at least, four satellites, which
means n≥4.
For a generic system and with the weight matrix, the estimator is given by, [21] ,
( ) ( 4.2)
The weight matrix is given by the inverse of the measurements covariance matrices ( 3.15) and
( 3.16), that is
[ ( )
( )]
( 4.3)
Thus, our estimator should have the form
[ ] ( ) ( 4.4)
It is important to obtain the float solution estimation’s covariance matrix, since it will have an
important role on smooth solution determination. Defining the estimation error as and
using some mathematical manipulation, one should obtain
( ) ( 4.5)
where represents the double differences’ noise with covariance matrix W, as defined above.
The covariance matrix for the estimation error can be calculated with the form
{( ( )( ( )) } ( ) [
]
[
] ( 4.6)
23
4.3 Code Smoothing
In this section, a code smoothing technique to improve the accuracy of the float solution with
phase measurements is presented. For a better comprehension of this technique, the Kalman
Filter (KF) will be briefly described.
4.3.1 Kalman Filter Description
The KF, introduced by R. E. Kalman [22], is a recursive algorithm that provides a good
parametric estimation method for linear dynamic systems. This technique is widely used in real-
time navigation data processing because it does not base its estimations solely on single epoch
measurements, but it also exploits information about how the system is evolving over time (i.e.
past information contributes to the estimation of unknown parameters at the current epoch). All
the characteristics needed to completely describe the system as a function of time are used as
state variables. At each epoch the KF updates the state estimation by combining new
measurements with a predicted state estimation projected from the previous epoch. At the first
step the state variables must be initialized using reasonable values with their associated error
covariance matrix. The algorithm then gets the measurements (observations), updates the
predicted state estimations along with their error covariance on the basis of observation
equations, projects them to the next measurement time and proceeds iteratively (Figure 4.2).
Figure 4.2 - Kalman Filter design
24
The model of a generic linear discrete system, at time t, is represented by
( 4.7)
which has measurements in the form
( 4.8)
Both w and v are random variables, respectively the process and measurement noise, with zero
means normal probability distributions,
( ) ( ) ( 4.9)
( ) ( ) ( 4.10)
where Q is the process noise covariance and R is the measurement noise covariance.
The equations of the prediction step in KF are given by
( 4.11)
( 4.12)
The state at the previous instant, , is projected to the new instant, based on the system’s
dynamic. The same is done with the error covariance matrix . The state estimation and the
error covariance matrix at this step, and
are called the a priori estimates.
For the update step equations are defined as
(
) ( 4.13)
( ) ( 4.14)
( ) ( 4.15)
where is the Kalman gain obtained using ( 4.13). The residual – or innovation process – which
is calculated by the difference between the measurements and the a priori estimates, that is
, is weighted by the and is used to correct the a priori estimate, as represented in
equation ( 4.14). The new error covariance matrix is obtained in equation ( 4.15).
After these two steps (prediction and update), the process is repeated for a new instant, t+1,
using the previous estimated state, , and the estimation covariance matrix, , as inputs for
the new prediction step.
For linear systems, the KF ensures stability, reachability and observability, and converges to the
optimal solution, [23] and [24]. However, for non-linear systems the direct application of the
algorithm presented above is not possible.
25
4.3.2 Kalman Filter Application
Based on the KF, described in the previous section, it is now presented the technique used for
code smoothing [25]. This technique makes use of the combination between the noisy code
double differences and the less noisy carrier phase double differences with a complementary
KF. This technique uses the average of the noisier measurement to center the quieter one,
limiting the size of the integer ambiguity. Thus, the filter’s output, at instant, t, is a smoothed
(less noisier) code double difference, .
The prediction step for code smoothing is obtained with equations ( 4.16) and ( 4.17). The first
equation is using the same way that is described in section 2.3.2 but applying the double
differences. In this way, the integer ambiguity is cancelled, hence the propagated is
unambiguous. The error covariance matrix (4.8) is obtained by adding the new covariance
matrix of the carrier phase measurements to the previous error covariance.
( ) ( 4.16)
( ) ( 4.17)
For the update step, the Kalman gain is calculated as described in equation ( 4.18). In equation
( 4.19), the predicted smoothed code double differences are propagated with the weighted
residual between the measured code double differences and the smoothed code double
differences. To finalize the update, the estimation error covariance ( 4.20) is propagated to the
new instant, maintaining the balance between the unambiguous but noisier code measurements
and the ambiguous but smoother carrier phase measurements.
(
( ) ) ( 4.18)
( ) ( 4.19)
( )
( 4.20)
The schematic of this system is represented in Figure 4.3.
Figure 4.3 - Code smoothing design
26
4.4 Network Algorithm
The network algorithm is based on the LS algorithm using MRs’ known position and baselines
vector between the RR and each MR (Figure 4.4). The idea behind this algorithm is the same
that it is used in GPS system, but the distances are measured between the RR and each MR
(instead of the satellites).
Figure 4.4 - Network concept
4.4.1 Network Position
The network algorithm starts with the estimation of each MR.
The MRs need to be determined with high precision because the RR and the MRs’ positions are
correlated. Considering the equation ( 3.1), it is possible to represent the error present in RR
position, in equation ( 4.21) and understand how important the precision of MR’s position is
and how the error is propagated. To minimize the estimation error of the RR’s position, , it is
necessary to reduce the estimations’ error of the MR’s position, , and of the baseline vector,
.
( 4.21)
27
The estimation of each MR position can be calculated using one of the two topologies described
below.
The first topology consists in placing the MRs on a geodesic point where the position is known
with high precision. If it is only possible to use one MR on a geodesic point, the others should
be calculated with double differences between the known MR.
The second topology has less precision and the phase algorithm presented in section 2.3.2 is
used to separately calculate the position of each MR.
For a better MR signal measurement it is necessary that the GPS antennas are installed in
higher elevations without visible obstacles, for example, on top of buildings. With this
configuration, it is guaranteed that antennas can view (in LoS) a higher number of satellites and
the signals are acquired with less errors, for example, lower multipath.
For the calculation of RR position ( ) at least four baselines are needed [26]. Due to the
limitation of the equipment available in the IT GNSS Monitoring Station, this investigation could
only use three baselines. For this reason, it was required that the number of variables was less
than three, i.e., triangulation in 2D. The reference system coordinates of the MR are
transformed into UTM coordinates explained in next section 4.4.2. With this limitation, the
receiver’s elevation is neglected. This means that the vertical dilution of precision (VDOP) is not
considered, which is typically higher than horizontal dilution of precision (HDOP). Consequently,
there is less error with this limited configuration, but also less information [27].
The solution for this problem begins with finding the intersection of several circumferences
projected in UTM coordinates (E,N), since the technique proposed in this thesis is designed for
2D [26], [28] and [29]. The point of intersection of these circumferences is obtained by solving
the n nonlinear equations simultaneously to eliminate two coordinates, where n is the number of
MRs. Due to the non-linearity of these equations, if a solution of n-1 dimensions has to be
found, n equations are required; this is why in this case of 2D positioning, at least three MRs are
needed to determine each RR position.
4.4.2 UTM Projection
As mentioned before, it is necessary to do a projection of the proposed system. There are some
techniques to do that and the most common one is the Universal Transverse Mercator (UTM)
projection.
The UTM conformal projection uses a 2-dimensional Cartesian coordinate system (E,N) to give
locations on the surface of the Earth. It is a horizontal position representation, i.e. it is used to
identify locations on Earth independently of vertical position. It differs from the traditional
method of latitude and longitude in several aspects, being the principal one the fact that the
coordinates are in meters instead of degrees.
28
The UTM system is not a single map projection. Instead, the system divides the Earth into sixty
zones, each one with a six-degree band of longitude. Each zone uses a secant transverse
Mercator projection. In Figure 4.5, the UTM zones code for Europe are represented.
Figure 4.5 - Europe UTM Zones
The formulas in ( 4.24) are to convert latitude and longitude (φ, λ) into UTM coordinates
(Easting, Northing). These formulas are a truncated version of Transverse Mercator: flattening
series, which were originally derived by Johann Heinrich Louis Krüger in 1912 [30]. They are
accurate to around millimeter within 3,000 km of the central meridian [31].
The WGS 84 spatial reference system describes Earth as an oblate spheroid along north-south
axis with an equatorial radius of and an inverse flattening of ⁄
.
In the following formulas, the distances are in kilometers.
(
)
( 4.22)
29
Before calculating the UTM coordinates it is required to compute intermediate values:
( √
(
√
) )
(
( ))
( (( )
√ )
( 4.23)
The final formulas to obtain the (E,N) are:
( ∑ ( ) ( )
)
( ∑ ( ) ( )
)
( 4.24)
where,
( )
4.4.3 Receiver Position
The UTM coordinates (Ei, Ni) of each MRi and the calculated baselines are necessary to
calculate the receiver’s position.
Firstly, the system of equations must be made linear. The constraints are the equations of the
circles with radius r given by the norm of the baseline.
( ) ( )
( 4.25)
The constraint is used as a ‘linearizing’ tool [32]. Adding and subtracting and in ( 4.21)
which gives
( ) ( )
( 4.26)
with
30
Expanding and regrouping the terms, lead to
( )( ) ( )( )
[( )
( )
( )
( ) ( )
( ) ]
[
]
( 4.27)
where is the distance between two MRs ( 4.25).
√( ) ( )
( 4.28)
Applying the equation ( 4.25) for the three MRs’ known positions and the RR unknown position,
the linear system of (n-1) equations are ( 4.26) and ( 4.27).
( )( ) ( )( )
( 4.29)
( )( ) ( )( )
( 4.30)
Where the subscript 1, 2 and 3 are the identifiers of each MR.
This linear system can be simplified into a matrix from
( 4.31)
where
[
]
(
)
(
)
( 4.32)
Once the system has been made linear, the problem requires the determination of the unknown
variable, . Since it is assumed that the RR will be logically placed (not in a row or collinearly), it
means that is non-singular and well-conditioned. Therefore, the method used is the
equation (4.29) [33].
( ) ( 4.33)
31
4.5 Satellite Configuration Changes
The system described up till now can work seamlessly if events such as changes of the satellite
configuration and signal losses do not happen. Since this kind of events usually happen during
a navigation period, it is fundamental to introduce some techniques to manage it. In this section,
the procedures that handle partial and total satellite loss, satellite addition and pivot satellite
change are described. Finally, it is explained how cycle-slips are handled.
4.5.1 Variation in the Number of Satellites
During data acquisition in real environments the number of satellites used to compute the
baseline vector changes quite often due to the loss of signal or even loss of data in the
interface. Instead of resetting the code smoothing, the algorithm deletes the component relative
to the lost satellite until the number of satellites is higher than four. When this happens, the
algorithm uses the last estimation of the receiver’s position.
When a satellite 𝑠 that was not visible at time t−1 becomes visible at time , its contribution is
added automatically to the matrix (if the satellite elevation is higher than a fixed cut-off angle)
with very high variance values (
), since these values converge rapidly.
4.5.2 Pivot Change
As aforementioned, the pivot is the satellite with the highest elevation. However, during the
acquisition time the reference satellite may change, due to the variation of the elevation or to
the loss of the lock of the actual reference satellite.
To keep the algorithm valid even when this happens, the data of the previous epoch is saved.
With this data, the float solution of epoch t-1 with the new pivot is made, and in epoch t it is then
possible to make the code smoothing. This technique ensures the continuity of code smoothing,
which is more precise than float solution.
4.5.3 Cycle Slip
As aforementioned, cycle slip is a fundamental aspect to deal with when trying to achieve high
accuracy with low-cost GPS devices. Carrier phase measurements coming from this kind of
sensors are subject to various measurement errors, such as multipath, antenna phase center
variation, antenna being moved too fast and noise due to the lower quality of the electronic
components involved [34]. These errors sources, together with cycle slip occurrences, severely
deteriorate the achievable positional accuracy.
32
The phase measurements are used in a code smoothing algorithm, and this is a point which
warrants close attention. The detection of cycle slips is made with triple differences, this means
the cross of two double differences. The cycle slip occurs if the triple differences value is higher
that an empirical threshold value (e. g. 10 cycles). Looking at Figure 4.6, it is easy to detect the
cycle slip which occurred between epoch 60 and epoch 80. This visible discrepancy proves that
this method is enough for the detection of cycle slips.
Figure 4.6 – Cycle slip
If a cycle slip is detected, the corresponding satellite is treated as if it was added to the current
configuration at time t using the technique described in section 4.2.
If a cycle slip happens on the pivot satellite, the system is reset and the float solution is used
(the solution at time t will then be mostly based on code observations).
33
5 SYSTEM DESIGN
5.1 Introduction
After the description of the techniques used to determine the receiver’s position using a
network, it was necessary to address the practical aspects of this research.
The type of GPS receivers used was U-Blox 6 from EVK-6 kit [35] in Figure 5.1. Thus, it was
important to make a general description of the receiver and the antenna that were used. After
the introduction about the receivers, a flowchart and an explanation of the proposed algorithm
are presented. Finally, a description of the static and dynamic trials used to validate the
developed algorithm is made.
Figure 5.1 - EVK-6 kit
5.2 GPS Receiver
The U-Blox provides real-time positioning, velocity and time measurements, amongst other
significant information, through NMEA messages and binary messages containing raw
measurements, satellite ephemeris and ionospheric corrections. For this thesis, the GPS signal
was acquired at 1 Hz, which means that each epoch represents 1 second.
The U-Blox used an ANN-MS magnetic antenna that allows for more versatility in the set up.
Nevertheless, due to its reduced size, it is subject to higher levels of interference, multipath
errors, and cycle slips.
The communications with the receiver can be made by using the RS-232 interface or an USB
connection. The structure of the UBX messages is described in [35].
34
5.3 Algorithm Overview
The algorithm illustrated by the flowchart in Figure 5.2 was developed in MATLAB and
summarizes all the techniques presented so far in this thesis. The GPS data measurements
were acquired specifically for this thesis. This raw data was used in post-processing mode,
which is the simpler way to test and validate the algorithms without using a GPS. In order to run
in real time, it was necessary to implement a connection between all the receivers and send the
data of each epoch to a central server. This server was responsible for collecting all the
information and for computing the RR position with the proposed algorithm.
Figure 5.2 – Proposed algorithm
35
The first process, named “Data Acquisition”, regarded the acquisition of the previously stored
raw data. Afterwards, it was necessary to check if the RR had data regarding more than three
satellites. If the test logic value is “false”, the RR position will be the same as the previous one.
Once this test was complete, it was mandatory that measurements from different receivers were
synchronized with the RR, which was done by the “Data Synchronization” process. This process
was made by comparing the measured time of week of each MR with the RR. The time of week
represents the number of seconds passed since the beginning of the corresponding week
(beginning at the Saturday/Sunday transition) [6].
The “Double Differences Formation” process was responsible for the selection of satellites
which were common to the receivers that composed the baseline vector, and for computing the
double differences. For the satellite selection process, a default elevation mask of 10 degrees
was used. It neglected satellites with higher distances, as they have higher noise.
After computing the double differences, some tests should be performed. The first test was
made to verify whether there was any change in the number of satellites. If the output of this
test demonstrated the logic value to be “true”, the respective algorithm would correct this issue
by ignoring or adding the corresponding lost satellite in a smooth algorithm (section 4.3.2).
Once this correction was made, the algorithm continues to the node that would be reached if the
test turned out to be “false”.
The second test verified if there was a new pivot satellite. If the output of the test demonstrated
the logic to be “true”, the float solution had to be used, as stated in section 4.5.2.
The third and last test that was applied to the double differences was the verification of the cycle
slip. If a cycle slip was detected, the baseline should be obtained by the float solution algorithm;
if not, it should be obtained by the smooth solution algorithm, which is related with the phase
signal.
Once this process was complete for the RR and each pair of MRs, it was necessary to verify the
number of baselines that were calculated.
When the number of baselines is three, the Network algorithm is used where the coordinates
are converted to UTM, as aforementioned. When the number of baselines is one or two, the
single relative positioning is used. If the number of baselines is zero, the position in epoch t-1 is
used in epoch t.
This process was repeated for each epoch.
36
5.4 Trials Description
Along with the research development, some tests were needed in order to validate the
important steps of the presented algorithm. In this thesis are represented the essential tests that
demonstrate an accurate improvement of the proposed algorithm, compared to the UERE,
described in section 2.2.7.
As the proposed network algorithm was based on the baselines between each MR and the RR,
it was essential to start by confirming the baseline calculation. The more precise is the
calculation of the baselines, the more precise will be the position of the RR.
For this purpose, two fixed antennas with known distance were used, as it is described in next
section, 5.4.1.
For the network system trials, the system used three MRs placed in different parts of Lisbon to
determine the RR’s relative position in urban environment. At this stage, it was necessary to
confirm the availability of the phase data measurements and to find the best possible
configuration of the MRs. Finally, with the network available, the RR acquired data while moving
in urban scenario.
5.4.1 Single Baseline
The objective of this first test was to evaluate the performance evaluation of the float (section
4.2) and code smoothing (section 4.3) algorithms when calculating the baseline between a MR
and the RR. This was the first step to guarantee a better precision of RR’s position, compared
to the stand-alone algorithm.
For this test, it was used the equipment of IT GNSS Monitoring Station (Figure 5.3), placed on
the rooftop of the North Tower, at Instituto Superior Técnico [36].
Figure 5.3 - IT GNSS Monitoring Station
37
The antennas are Novatel 531 antennas with Chocke Ring. This specific type of antennas and
their high location enabled a scenario with very low levels of multipath.
For this configuration, RF2 and RF6 antennas were used, and the distance between the two
GPS antennas was 10.271 m [36].
Figure 5.4 - Antennas configuration
5.4.2 Phase Stability
The main purpose of this test was to analyze the stability of the phase signal in real situations
and to verify if it was possible to use the smooth algorithm in the network. This algorithm can
only be used if the phase measurements are correctly acquired while driving along the urban
scenario.
The stability requires not only the acquisition, but also the locking of the phase signal. This
means that the measurements should be acquired without losses along the intended time, in
order to prevent cycle slips, previously referred to in section 4.5.3.
This test was performed using just a fixed MR and a moving RR in urban scenario, i.e., using a
single baseline.
5.4.3 Network Configuration
The next step of this thesis was to build a network where the RR could move and where it would
be possible to calculate its position. It was essential to choose the best possible configuration in
order to obtain the best precision of RR’s position. The two different types of configuration used
are represented in Figure 5.6 and in Figure 5.7.
As previously mentioned, the more errors MR’s position has, the more errors are added to RR’s
position, as indicated in equation ( 4.21). Unfortunately, for this thesis it was impossible to have
three MR positions with high precision using geodesic mark or precise point positioning
38
algorithms (ppp). These algorithms were not contemplated in this thesis, but are available at IT
GNSS Monitoring Station.
Hence, in order to ensure the most accurate precision, it was necessary to use the smooth
algorithm between a known MR with a high precise position and the other MRs, before
calculating the RR’s position.
The network was composed of three MRs and three computers, used to save the data
acquisition of each MR. The MR antenna ought to be installed in high safety places, with power
supply for computers, as aforementioned in section 5.2. This constraint limited the range of
possible places where the network could be deployed. Consequently, the MRs were installed in
different sites, where good and different types of network configurations were found. These
places are represented in Figure 5.5.
Figure 5.5 – MRs localization
Local Localization
MR 1 IST, Lisbon
MR 2 S. Domingos de Rana, Cascais
MR 3 Tires, Cascais
MR 4 Rinchoa, Sintra
Table 5.1 – MRs description
39
For the first configuration, the MR’s known position was RF6, one of the antennas referred to in
section 5.4.1, and the other two MRs were calculated by code smoothing algorithm, using the
first antenna as reference. This algorithm ran until the estimations of the MR’s position were
stable.
Figure 5.6 - Network 1
Local Position
MR 1
38º 44’ 15.151’’ N
9º 8’ 18.65’’ W
Table 5.2 - Known MR position
The second configuration was designed to get a better distribution of the network. The only
modification on this system compared to the first one, consisted on changing the MR 3 to the
MR 4, located in Rinchoa, as shown in Figure 5.7. With this new network, the MRs became
equidistant, roughly forming an equilateral triangle, which ensured a better combination of the
baselines.
Figure 5.7- Network 2
40
5.4.4 Multiple Baselines
After testing the single baseline and calculating the MRs’ position, it was necessary to validate
the estimation of the RR’s position given by the network. As mentioned before, this network was
constituted by three MRs that estimate the RR’s position by using its calculated baselines.
The accuracy and the precision given by these multiple baselines were tested by fixing the RR
during 150 epochs. These results were then compared to stand-alone algorithm, having as
reference the results obtained in section 6.2.
A position is estimated with precision if its value has small oscillations over time, that is, if its
value has a small standard deviation, σ. Conversely, a position is accurately estimated if its
value is equally distributed around the correct value.
Figure 5.8 – Precision vs. Accurately
5.4.5 Rover Receiver Position
This test was decisive for the selection of the best network configuration defined in the section
5.4.3, and for verifying the behavior of the proposed network algorithm in urban environment.
The RR antenna was placed on the car roof – see Figure 5.9 –, taking advantage of its
magnetic capability. The RR was also connected to a laptop computer, used to record the raw
data along the designed route. This recording would only be able to start once the network was
fully operational, i.e., when all the MRs were already recording.
Figure 5.9 – RR location
41
The route was composed of local roads and highways, allowing the verification of the proposed
algorithm and its performance in different types of scenarios and velocities. The route was
contained into the triangular shape formed by the network. In this way, the distances between
the RR and the MRs were shorter, and the measurement errors were eliminated by double
differences, as mentioned before.
To compare and to evaluate the routes calculated by the different algorithms, a real route map
was drawn using Google Earth software.
For a better perception of the results, contrary to what is shown in the flowchart of section 5.3,
whenever the number of baselines was not enough, or the RR could not acquire the signal, the
RR estimate is not the same as the previous estimate. Instead, it was attributed a Not a Number
(NaN) to the corresponding epoch, making such occurrence visible.
43
6 RESULTS
6.1 Introduction
In this chapter, the results from the previously described trials are presented. Along with the
results, a critical discussion is made to evaluate the performance of the developed techniques.
The single baseline static trial was used to evaluate the two available solutions: the float and the
code smoothing algorithms. It was expected that the code smoothing algorithm would give a
better response since the signal is filtered by phase measurements and the signal variations are
smaller and more stable between the real values.
After confirming the response of the algorithms, it was crucial to verify the response of phase
acquisition in an urban scenario, which was the case study in this thesis. As GPS receivers
were low-cost, it was expected that their response to the phase lock signal would be lower. This
limitation prevented the use of the code smoothing algorithm because of the continuous cycle
slips, previously described in section 4.5.3.
There were two configurations available for this thesis because of the limitation of MR’s
locations, since power supply and high security were needed. The choice of the network
configuration was of high importance for the performance of the system.
Finally, the proposed algorithm was used in a real urban scenario for the best available network.
The result was then compared with the real route obtained by Google Earth software, taking into
consideration some critical situations, such as changes in velocity and different types of roads.
44
6.2 Single Baseline Results
For the Single Baseline test, two fixed antennas with known distance between them were used
in order to validate both float and smooth algorithms. With the view to compare the error
magnitude and to show the importance of these algorithms, the RR stand-alone estimation was
added.
The result is presented in Figure 6.1, and it compares the known distance with the different
estimation solutions during 900 epochs – as mentioned before, 900 seconds (15 minutes).
Figure 6.1 - Single baseline test
This result demonstrated that with double differences – the technique used in float and smooth
algorithms – it was possible to obtain a good and precise position and a lower absolute error
value than stand-alone estimation (Table 6.1). This was a good start for the definition of the
algorithm to be used in this research.
Algorithm Mean Error [m] Max Error [m] σ
Stand-alone 24.15 29.82 4.48
Float Solution 0.79 2.96 0.82
Smooth Solution 0.67 1.99 0.66
Table 6.1 - Single baseline absolute error values
45
According to section 2.2.7, where it was referred that the UERE is 7.1 m, and the values
obtained by stand-alone algorithm represented in Table 6.1, even the float solution algorithm
had a better response with 4.48 m as the maximum error.
As the MR position was known with high precision, the values represent the error that the
algorithms had in the prediction of the RR’s position. The fact that the antennas were fixed and
were a good model to acquire the GPS signal, helped to minimize the error.
The smooth solution ensures a higher stability of the signal than the other algorithms, as may
be verified in sigma value, which represents the variation of the signal. Another advantage –
and certainly the best one – is that the RR estimations are closer to the real value.
Conversely, the results demonstrated that the signal suffered some variations along data
acquisition. The principal one occurred in the initial epochs, where it is notorious that the
estimations are not stable and are converging to the real value. This situation could be avoided
by forcing the user to wait until the signal is stable.
6.3 Phase Stability Results
As mentioned before, the smooth algorithm needs a locked phase signal during time
acquisition. Therefore, the Phase Stability Test was one of the most important tests for the
development of this project. The obtained results changed not only the course of the research,
but also the range of possible algorithms to be used for the GPS Network. The bad response of
the phase signal in urban environment required the use of the float solution instead of the
smooth solution, because there were minor situations where it was possible to acquire stable
phase signal, as shown in Figure 6.2.
Figure 6.2 – Phase stability results
46
This result was the expected one for this type of environment. The system could only use the
smooth solution in 4.34% of the epoch. Every time the RR loses the phase signal, it needs at
least two consecutive epochs with phase measurement data to use the smooth solution. In the
first epoch the signal is locked, and only in the second epoch the system is able to use this
algorithm.
To improve the RR estimate, its equipment needs to be much better in the acquisition of the
phase signal and, moreover, it must have the capability to quickly recover the lost signal. The
urban scenario, the vehicle velocity, and the low-cost GPS were the main reasons for the
results that were obtained in this thesis.
When it comes to MRs, they can be low cost receivers once they are fixed. Therefore, it is
easier to acquire the phase signal without losses, ensuring a good estimation of their positions.
Because of the outcome of this test, the network will mostly use the float algorithm for the
estimation of the RR’s position.
6.4 Master Receivers’ position
Since MRs’ positions were not known with high precision, it was assumed that the error of its
estimation, calculated by code smooth algorithm, was identical to that shown in Table 6.1, with
an average value of 0.95m. This error was transposed to the calculation of RR’s position, since
the estimation is given with respect to MRs – i.e., there is a correlation between MRs’ position
and the estimation of the RR, as demonstrated in equation ( 4.21).
First Network
As aforementioned, the MRs’ positions were estimated using code smoothing algorithm
between the known MR in IST and the other MRs. This algorithm was the one that had better
estimations in Single Baseline Results, and it can only be used when it is possible to acquire the
phase signal in good conditions. In this case, the fact that MRs were fixed enabled the
acquisition and the lock of the phase signal. This algorithm should run until the unknown MR’s
position is stable. The results are presented in Table 6.2.
47
Local Position # Finish epoch
MR 1
38º 44’ 15.151’’ N
9º 8’ 18.65’’ W
-
MR 2
38º 42’ 11.232’’ N
9º 20’ 22.452’’ W
96
MR 3
38º 43’ 15.492’’ N
9º 20’ 42.9’’ W
107
Table 6.2 - MRs position
In order to set up a really precise network and, consequently, a better estimation of the RR’s
position, the ppp algorithm should be used to get a precise position of the MRs. This algorithm
needs the MR running the longest time possible before starting to estimate the position of the
RR. In such conditions, the MRs’ position and the acquisition measurements would be stable,
leading to fewer errors in the network.
Second Network
For this network, the location of MR 2 was the same than the one estimated in the first network.
It was necessary to estimate the position of MR 4, since it was the only that had changed, if
compared to the first network. The methodology used to calculate the position of MR 4 was the
same as the one used in the previous section.
Local Position # Finish epoch
MR 1
38º 44’ 15.151’’ N
9º 8’ 18.65’’ W
-
MR 4
38º 47’ 7.45’’ N
9º 19’ 9.03’’ W
86
Table 6.3 - MRs position
48
6.5 Multiple Baselines Results
For this test, the network 2 was used in order to validate the precision of the estimation of the
RR’s position using the network algorithm. In Figure 6.3 it is possible to see the approximate
local of the RR’s positioning, and the estimations given by both Network and SA algorithms.
As verifiable in Table 6.4, this network allowed for twice the accuracy, if compared to the results
obtained by the stand-alone algorithm. This value represents the best value obtained
throughout this study, proving that the proposed algorithm brings, undeniably, significant
upgrades to the estimation of the RR’s position.
As far as the precision is concerned, since the RR was installed in the car, it is easy to verify
(see Figure 6.3) that the network algorithm has provided a good precision. The error values in
Table 6.4 are merely a reference. To have a real classification of the precision of the network
algorithm it was necessary to put the RR in a known position with high precision to calculate the
error given by this algorithm — i.e., the same method used in Single Baseline.
The precision can be further enhanced not only by eventual improvements of the algorithm, but
also by the estimation of MRs’ position, as demonstrated in equation ( 4.21). Namely, this
estimation shall be calculated by high precision algorithms.
(1) (2)
Figure 6.3 – Multiple baselines result: points (1) & Google Earth (2)
Algorithm Mean Error [m] Max Error [m] σ
Stand-alone 25.22 26.54 0.80
Network Solution 3.82 5.73 0.41
Table 6.4 - Multiple baselines absolute error values
49
6.6 Rover Receiver’s position
Network configurations
Firstly, it was essential to choose which configuration was the most suitable for calculating the
RR position. The coverage area of each network composed by three MRs is presented in Figure
6.4. Each corner corresponds to the position of one MR, using the network configurations
presented in Figure 5.6 and Figure 5.7.
The MR coordinates used were calculated in the section 6.4.
Figure 6.4 – Network 1 (blue triangle) and Network 2 (red triangle) Coverage Area
For the first configuration, the proposed algorithm could not estimate the RR’s position in any
epoch. This happened because the distance between MR 2 and MR 3 was too small compared
to the distance between MR 1 and the others. The entries of the linear system, which were the
baselines between the RR and each MR, were not independent.
The choice of the MR’s position is very important for the success of this system, and the more
sparsely the network is distributed, the better the RR position is estimated.
For this reason, network 2 was used as the test case of the proposed network algorithm. The
test route was the way to verify the availability of the signal and the response of the proposed
algorithm in urban scenario, and it should be contained in the triangle formed by the three MRs
that composed this network.
The system is represented in Figure 5.7 and the route had approximately 38.2 km, as presented
in Figure 6.5. Both value and route were obtained using Google Earth, as aforementioned in
section 5.4.5.
50
Figure 6.5 - Real Route
As aforesaid, just MR 1 was known with high precision. So, the error of RR’s position was
increased by the error of MR 2 and MR 4 position estimations (see more in equation ( 4.21)).
Route calculation
After acquiring the RR data measurements along the route, the network algorithm was
processed, and the result of the RR estimate route is presented in Figure 6.6.
Figure 6.6 – RR route by NA
51
By examining the Figure 6.6, it is possible to verify that there are some parts of the route that
had signal losses. These parts, where the RR could not acquire GPS signal, were addressed as
“critical situations”.
A way to overcome such situations is using other algorithms that try to predict RR’s position
without GPS signal, taking into account the dynamics of the receiver – for example, the Kalman
Filter processing. Another technique to improve the RR estimation is merging the GPS data with
geographic information system (GIS) data, assuming that the vehicle remains on the road, with
the same velocity and direction.
The RR was enable for 2621 epochs (seconds) – which represents 43 minutes and 41 seconds
– however, the RR only acquired 2314 epochs – that represents 88.29% of the time. There was
a limited time of acquisition due to the laptop battery inside the vehicle. Nevertheless, it was
enough to get adequate data to analyse.
The RR signal losses arise from the density of the urban scenario where the RR navigated and
the number of baselines throughout the route, as presented in Figure 6.7.
Figure 6.7 - Number of baselines along the route
The number of RR positions calculated by the network algorithm was 2098 epochs, which
represents 74.55% of the total time acquisition. This means that 90.66% of the positions were
obtained with three baselines and the other 9.34% were obtained with a single available
baseline.
52
This value 9.34% is due to the fact that in these epochs, the RR saw more than three satellites.
However, they were different from the ones seen by other MRs. Thereby, it can be assumed
that MR 1 – and MR 1 only – had the best constellation of satellites available, since it was
located on an isolated top of the North Tower of IST. The other two antennas were placed on
roofs, thus covering one side of view of the receiver, as visible in the following illustration,
Figure 6.8.
Figure 6.8 – LoS Satellites example
This means that it is possible to create a better network with more receivers if they are installed
in good locations. With more MRs it is possible to obtain more accuracy in the estimate of RR’s
position, which can now be estimated in three coordinates (X, Y, Z). This is the basic principle of
satellites’ constellation: to ensure that at least four satellites are visible in the sky, from
anywhere on Earth.
In Figure 6.7, the number of baselines is zero whenever the RR did not acquire enough data
from at least 4 satellites. A way to improve this result is by changing the MRs’ position, the
scenario, and/or by using a lower speed.
53
Even though MRs’ positions were not calculated with precision, the shift between the real route
and the route obtained by the Network algorithm was lower, as it is possible to see in Figure
6.9.
Figure 6.9 – Shift between Real Route and the Network Estimated Route
Comparing the values obtained by the proposed algorithm with the RR SA positions, one would
expect that the values were lower. The RR was able to estimate in 2330 epochs, which
represents 88.90% of the positions along the route. It is possible to see in Figure 6.10 the RR
SA positions and the low resolution of the points. In the best of cases, the network algorithm
can have the same acquisition numbers as the SA. This happens when the MRs’ location is so
good that they can see the highest number of satellites. In the worst of cases, these satellites
shall be exactly the same as the ones viewed by the RR, along the route. This way, the network
algorithm can be used whenever the SA algorithm is used.
54
Figure 6.10 – RR SA positions
A comparison between the real route and the results from Network and SA algorithms are
presented in Figure 6.11. As the route was long, the differences between these algorithms are
not visible. Because of this, the critical situations are described below.
Figure 6.11 – Network Algorithm (left) and SA Algorithm (right)
The Network and the Stand-alone algorithms estimated with a high level of accuracy every time
that there was data to calculate positions. The most important is the accuracy that has been
achieved with the Network Algorithm, once MR’s positions were not calculated with high
precision.
55
Comparing the SA Algorithm with the Network Algorithm (see Figure 6.12), it is possible to find
some differences. As mentioned before, the SA algorithm could calculate more positions than
Network Algorithm and this is evident in Figure 6.12. The other difference is that the Network
Algorithm has a softer response than the SA, which means that the Network Algorithm performs
better to the signal variation caused by the GPS receiver and the multipath created by the urban
scenario.
Figure 6.12 - SA and Network algorithms with critical situations
Regarding Figure 6.12, the first highlight (image 1) shows the error that the SA had in the
estimation of the RR’s position when it was still parked. Network algorithm was much more
stable, and therefore it was less dispersive. In the second image (2), it possible to see that the
Network algorithm behaves better when there is a lot of noise in the GPS signal acquisition. In
the third image (3), it is represented a time period when the Network algorithm was unable to
estimate the RR’s position, due to lack of information.
56
Critical situations caused by Urban Scenario
The Google Earth software was used to analyze critical situations and to map the urban
scenario through images.
The main critical situations occurred when the RR could not acquire data from at least four
satellites. This can happen when the RR passes through obstacles that hide the LoS between
the RR and the satellites – for example, tunnels or bridges, as it is presented in Figure 6.13. In
these cases, it can be assumed that the RR moves in the same direction and it could be
possible to predict the next position by adding the step that it was taking.
Figure 6.13 – RR crossing a tunnel
The other critical situations occurred while driving in a dense urban scenario. In this context, the
receiver had low LoS GPS signal and the multipath was very high, which impaired the
acquisition of an appropriate signal. This context did not allow for the estimation of the RR’s
position because of the density of buildings and vegetation that surrounded the receiver (Figure
6.14).
Figure 6.14 – RR in urban dense scenario
57
As aforementioned, the Network Algorithm offered a better response to the multipath existing in
this type of scenario. The algorithm could reduce the errors, and the three MRs helped to better
predict the RR’s position. Figure 6.15 and Figure 6.16 represent the behavior of each algorithm
in a dense urban scenario and in a critical situation (tunnel), respectively.
Figure 6.15 – GPS algorithms response in urban scenario
Figure 6.16– Network algorithm with better response
59
7 CONCLUSION
The proposed algorithm obtained good results on estimating the RR's position, using only low-
cost receivers. The use of relative position algorithms significantly increased the estimation of
RR's position, even if it only used code measurements. Since the focus of this thesis was low-
cost GPS receivers, there was a limitation on the use of phase measurements, mainly because
the RR was moving in an urban scenario, making it difficult to acquire and to lock this signal.
Actually, this was a limitative factor for choosing the algorithm, which required a more careful
design and a more sensible selection of the techniques that could best estimate the position of
the RR, under the pre-defined circumstances.
Since it is not possible to increase the availability of the signal present in the RR, the algorithm
can only use that information to improve the estimation. To obtain more data one can increase
the information rate of the RR data rate since it was only used 1 Hz, in this thesis. This will not
improve the estimation of the position, but there would be more epochs to estimate the position
of the RR. A higher frequency would still not provide GPS data where the RR was unable to
acquire information, during the given route.
With the construction of a network of GPS receivers it was possible to increase the estimation of
RR's position using relative positioning. This structure was designed to be done in an easy and
quick way. The only requirements of this network are: a PC server with the algorithm running in
a web service, and a communication network between the network and the RR. Thus, the user
will have a better estimate of its position, as seen in the results of this thesis. The device will
have to be able, through an application, to send code measurements — and, if possible, phase
measurements — to the server, and then to receive the estimation of its position.
Figure 7.1 – Network Communication System
60
This GPS network has errors in the estimation of MR’s and RR's positions. The first error can be
reduced by ppp algorithms, which need the receivers to be continuously connected. Thus, the
server can continuously calculate their positions, improving the estimate of MRs' position.
The second type of error was the one that the proposed algorithm aimed to reduce. As the
receiver's position is an estimate, there is always possibility to minimize the error, in accordance
with the requirements of the situations in which this kind of signal is used — in this case, an
error of approximately 1 m is a good estimation for RR's position, while for MRs' position it is
unacceptable.
The main handicaps of this thesis are related to the location of MRs and the error made by the
estimation algorithm of the RR. Regarding the location of the MRs, they could have been better
fixed in order to have a higher number of visible satellites. This improvement would have
allowed the use of the proposed algorithm whenever the RR had GPS data, having always
three baselines.
On the other hand, the errors associated with the estimation of the RR's position could be
reduced by taking advantage of the Kalman filter. This filter should be applied after the
estimation of the RR through the proposed algorithm, taking into account its dynamics.
For future developments, this network may use a higher number of MRs and other type of
receivers, in order to compare the response of different types of RR.
Since it was not possible to use phase signal as an input parameter of the proposed algorithm,
a new type of receivers shall be used, changing the float solution to the smooth solution. These
type of receivers must have a good response in acquiring and locking the phase signal in the
given urban scenario. This way, it will be possible to use better algorithms, like Kalman filter,
which, in this thesis, was only used for the determination of the other MRs by the known MR’s
position.
Other developments can be made by using existing software or algorithms that integrate low-
cost sensors, for example odometers/gyroscopes.
61
REFERENCES
[1] S. Camacho-Lara, Current and Future GNSS and Their Augmentation Systems, Springer
New York, 2013.
[2] B. Hofmann-Wellenhof, H. Lichetenegger and J. Collins, GPS Theory and Practice, 5th
ed., Springer, 2001.
[3] C. Rocken and C. Meertens, "Monitoring selective availability dither frequencies and their
effect on GPS data," Journal of Geodesy, vol. 65(3), pp. 162-169, September 1991.
[4] A. Brown, "Extended differential GPS," NAVIGATION, Journal of the Institute of
Navigation, vol. 36(3), 1989.
[5] E. D. Kaplan and C. J. Hegarty, Understanding GPS: principles and applications, 2nd ed.
Artech House Publishers, 2006.
[6] C. d. Bits, "tek," Sapo, [Online]. Available:
http://tek.sapo.pt/noticias/telecomunicacoes/numero_de_smartphones_aumenta_em_port
ugal_e_v_1298095.html. [Accessed 21 Agost 2013].
[7] A. Leick, GPS satellite surveying, 2nd ed., New York: Wiley, 1995.
[8] Denelson, "wikipedia," 19 November 2006. [Online]. Available:
http://commons.wikimedia.org/wiki/File:GPS_signal_modulation_scheme.svg. [Accessed
26 August 2013].
[9] M. S. Grewal, A. P. Andrewss and C. G. Bartone, Global Navigation Satellite Systems,
Inertial Navigation, and Integration, John Wiley & Sons, 2013.
[10] W. George and C. II, The Foundations of Celestial Mechanics, Case Western Reserve
University, 2004.
[11] J. Klobuchar, Ionospheric Time-Delay Algorithms for Single-Frequency GPS Users, IEEE
Transactions on Aerospace and Electronic Systems, 1987.
[12] L. S. Lerner, Physics for Scientists and Engineers, vol. II, Jones & Bartlett Learning, 1997.
[13] P. Misra and P. Enge, Global Positioning System: Signals, Measurements and
Performance, 2nd ed., Ganga-Jamuna Press, 2006.
[14] B. W. Parkinson and J. J. Spliker, "Global Positioning System: Theory and Application," in
Progress in Astronautics and Aeronautics, vol. 163, 1996.
62
[15] Y. He and A. Bilgic, Iterative least squares method for global positioning system, Bochum:
Institute for Integrated Systems, Ruhr University Bochum, 2011.
[16] S. Bancroft, An algebraic solution of the GPS equations, vol. 21, IEEE Transactions on
Aerospace and Electronic, 1985.
[17] J. Westrop, M. Napier and V. Ashkenazi, The use of phase for kinematic positioning by
GPS, Proceedings of IAG Symposium on Global Positioning System: An overview, 1989.
[18] H. Landan, U. Vollath and X. Chen, "Virtual Reference Station Systems," Journal of Global
Positioning Systems, vol. I, no. 2, pp. 137-143, 2002.
[19] B. Wang, S. Wang, L. Miao and J. Shen, An Improved Satellite Selection Method in
Attitude Determination Using GPS, Department of Automatic Control, Beijing Institute of
Technology, 2009.
[20] J. M. M. Cóias, "Attitude Determination Using Multiple L1 GPS Receivers," Instituto
Superior Técnico, Lisbon, 2012.
[21] C. Strang and K. Borre, Linear algebra, geodesy, and GPS, Wellesley Cambridge Pr,
1997.
[22] R. E. Kalman, "A New Approach to Linear Filtering and Prediction Problems," Transactions
of the ASME - Journal of Basic Engineering, vol. 82, pp. 33-45, 1960.
[23] G. Welch and G. Bishop, An Introduction to the Kalman Filter, Chapel Hill: Department of
Computer Science University of North Carolina at Chapel Hill, 2006.
[24] D. Simon, Estimation: Kalman, H Infinity, and Nonlinear Approaches, Wiley-Interscience,
2006.
[25] F. V. Grass and Braasch, GPS Interferometric Attitude and Heading Determination: Initial
Flight Test Results, vol. IV, The Institute of Navigation, 1991, pp. 359-378.
[26] W. Murphy and W. Hereman, Determination of a position in three dimensions using
trilaterarion and approximate distances, Colorado: Department of Mathematical and
Computer Sciences, Colorado School of Mines, 1995.
[27] R. B. Langley, Dilution of Precision, University of New Brunswick, 1999.
[28] M. Z. Rahman, Beyond Trilaterition: GPS Positioning Geeometry and Analytical Accuracy,
University of Malaya, 2012.
[29] W. Murphy, Determination of a position using approximate distances and trilateration,
Colorado: Department of Mathematical and Computer Sciences, Colorado School of
63
Mines, 2007.
[30] L. Krüger, Konforme Abbildung des Erdellipsoids in der Ebene, Royal Prussian Geodetic
Institute, 1912.
[31] C. F. F. Karney, Transverse Mercator with an accuracy of a few nanometers, J. Geodesy,
2011, pp. 475-485.
[32] I. Fernán, M. Ciurana, F. Barceló, J. Paradells and E. Zola, "Performance evaluation of a
TOA-based trilateration method to locate terminals in WLAN," Data Networks Engineering
Department at the Technical University of Catalonia, Spain, 2005.
[33] G. Blewitt, Basics of the GPS Technique: Observation Equations, Newcastle: Department
of Geomatics, University of Newcastle, 1997.
[34] T. Takasu and A. Yasuda, "Evaluation of RTK-GPS performance with Low-cost Single-
frequency GPS Receivers," in International Symposium on GPS/GNSS, Tokyo, 2008.
[35] U-Blox, U-blox 6 Receiver Description, 2010.
[36] P. M. F. Silva, "Antenna Survey," Portuguese Foundation for the Science and Technology,
Lisbon, June 2013.