low-cost gps network positioning in urban …£o adicionarem erros à posição do recetor, uma vez...

73
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

Upload: lyhuong

Post on 07-Nov-2018

213 views

Category:

Documents


0 download

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.

12

Figure ‎2.3 - RR position with or without phase smoothing

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)

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.

42

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

58

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.