Precise GPS-based position, velocity and acceleration determination: algorithms and tools
Authors:   , Salazar Hernández Dagoberto José 
Published: October 2023

Esta tesis doctoral llevó a cabo el estudio, desarrollo e implementación de algoritmos para la navegación con
sistemas globales de navegación por satélite (GNSS), enfocándose en la determinación precisa de la posición,
velocidad y aceleración usando GPS, en modo post-procesado y lejos de estaciones de referencia.
Uno de los objetivos era desarrollar herramientas en esta área y hacerlas disponibles a la comunidad GNSS. Por ello
el desarrollo se hizo dentro del marco del proyecto preexistente de software libre llamado GPS Toolkit (GPSTk). Una
de las primeras tareas realizadas fue la validación de las capacidades de la GPSTk para el procesado del
pseudorango, realizando comparaciones con una herramienta de procesamiento de datos probada (BRUS).
La gestión de datos GNSS demostró ser un asunto importante cuando se intentó extender las capacidades de la
GPSTk al procesamiento de datos obtenidos de las fases de la señal GPS. Por ello se desarrollaron las Estructuras
de Datos GNSS (GDS), que combinadas con su paradigma de procesamiento aceleran el proceso de desarrollo de
software y reducen errores.
La extensión de la GPSTk a los algoritmos de procesado en fase se hizo mediante la ayuda de las GDS,
proporcionándose importantes clases accesorias que facilitan el trabajo. Se implementó el procesado de datos
Precise Point Positioning (PPP) con ejemplos relativamente simples basados en las GDS, y al comparar sus
resultados con otras aplicaciones de reputación ya establecida, se encontró que destacan entre los mejores.
También se estudió cómo obtener la posición precisa, en post-proceso, de un receptor GPS a cientos de kilómetros
de la estación de referencia más cercana y usando tasas de datos arbitrarias (una limitación del método PPP). Las
ventajas aportadas por las GDS permitieron la implementación de un procesado semejante a un PPP cinemático
basado en una red de estaciones de referencia, estrategia bautizada como Precise Orbits Positioning (POP) porque
sólo necesita órbitas precisas para trabajar y es independiente de la información de los relojes de los satélites GPS.
Los resultados de este enfoque fueron muy similares a los del método PPP cinemático estándar, pero
proporcionando soluciones de posición con una tasa mayor y de manera más robusta.
La última parte se enfocó en la implementación y mejora de algoritmos para determinar con precisión la velocidad y
aceleración de un receptor GPS. Se hizo énfasis en el método de las fases de Kennedy debido a su buen
rendimiento, desarrollando una implementación de referencia y demostrando la existencia de una falla en el
procedimiento propuesto originalmente para el cálculo de las velocidades de los satélites. Se propuso entonces una
modificación relativamente sencilla que redujo en un factor mayor que 35 el RMS de los errores 3D en velocidad.
Tomando ideas de los métodos Kennedy y POP se desarrolló e implementó un nuevo procedimiento de
determinación de velocidad y aceleración que extiende el alcance. Este método fue llamado Extended Velocity and
Acceleration determination (EVA). Un experimento usando una aeronave ligera volando sobre los Pirineos mostró
que tanto el método de Kennedy (modificado) como el método EVA son capaces de responder ante la dinámica de
este tipo de vuelos.
Finalmente, tanto el método de Kennedy modificado como el método EVA fueron aplicados a una red en la zona
ecuatorial de Sur América con líneas de base mayores a 1770 km. En este escenario el método EVA mostró una
clara ventaja tanto en los promedios como en las desviaciones estándar para todas las componentes de la velocidad
y la aceleración.

This Ph.D. Thesis focuses on the development of algorithms and tools for precise GPS-based position, velocity and
acceleration determination very far from reference stations in post-process mode.
One of the goals of this thesis was to develop a set of state-of-the-art GNSS data processing tools, and make them
available for the research community. Therefore, the software development effort was done within the frame of a
preexistent open source project called the GPSTk. Therefore, validation of the GPSTk pseudorange-based processing
capabilities with a trusted GPS data processing tool was one of the initial task carried out in this work.
GNSS data management proved to be an important issue when trying to extend GPSTk capabilities to carrier phasebased
data processing algorithms. In order to tackle this problem the GNSS Data Structures (GDS) and their
associated processing paradigm were developed. With this approach the GNSS data processing becomes like an
assembly line, providing an easy and straightforward way to write clean, simple to read and use software that speeds
up development and reduces errors.
The extension of GPSTk capabilities to carrier phase-based data processing algorithms was carried out with the help
of the GDS, adding important accessory classes necessary for this kind of data processing and providing reference
implementations. The performance comparison of these relatively simple GDS-based source code examples with
other state-of-the art Precise Point Positioning (PPP) suites demonstrated that their results are among the best.
Furthermore, given that the GDS design is based on data abstraction, it allows a very flexible handling of concepts
beyond mere data encapsulation, including programmable general solvers, among others.
The problem of post-process precise positioning of GPS receivers hundreds of kilometers away from nearest
reference station at arbitrary data rates was dealt with, overcoming an important limitation of classical post-processing
strategies like PPP. The advantages of GDS data abstraction regarding solvers were used to implement a kinematic
PPP-like processing based on a network of stations. This procedure was named Precise Orbits Positioning (POP)
because it is independent of precise clock information and it only needs precise orbits to work. The results from this
approach were very similar (as expected) to the standard kinematic PPP processing strategy, but yielding a higher
positioning rate. Also, the network-based processing of POP seems to provide additional robustness to the results,
even for receivers outside the network area.
The last part of this thesis focused on implementing, improving and testing algorithms for the precise determination of
velocity and acceleration hundreds of kilometers away from nearest reference station. Special emphasis was done on
the Kennedy method because of its good performance. A reference implementation of Kennedy method was
developed, and several experiments were carried out. Experiments done with very short baselines showed a flaw in
the way satellite velocities were computed, introducing biases in the velocity solution. A relatively simple modification
was proposed, and it reduced the RMS of 5-min average velocity 3D errors by a factor of over 35.
Then, borrowing ideas from Kennedy method and the POP method, a new velocity and acceleration determination
procedure named EVA was developed and implemented that greatly extends the effective range. An experiment using
a light aircraft flying over the Pyrenees showed that both the modified-Kennedy and EVA methods were able to cope
with the dynamics of this type of flight. Finally, both modified-Kennedy and EVA method were applied to a challenging
scenario in equatorial South America, with baselines over 1770 km, where EVA method showed a clear advantage in
both averages and standard deviations for all components of velocity and acceleration.
Lloc i