Global Navigation Satellite System (GNSS) Data Processing

Second Semester - Spring

The course of Global Navigation Satellite System (GNSS) enters in detail in the study of the data and processing algorithms related to Galileo, GPS, GLONASS, and BeiDou constellations. The theoretical foundations are presented from a conceptual point of view and are complemented with guided exercises that conducted by a tool of software specifically designed for the processing and analysis of GNSS data known as the ESA / UPC GNSS - Lab Tool suite (gLAB). The training is intended to provide, from the first moment, operational capabilities in the use instrumental of the concepts and techniques for the treatment of data GNSS.


The course develops the contents of the GNSS Data processing book “Volume 1: Fundamentals and Algorithms” and “Volume 2: Laboratory Exercises”, edited by the European Space Agency (ESA), whose authors are the instructors of the course. The materials of the course include the mentioned book (in format PDF) and one booklet with all the slides of the course in format PDF), as well as the tools software that is used in the laboratory exercises (gLAB tool suite).

Theory Lectures


Lecture 1:  Introduction to GNSS (1h)

-        An Intuitive Approach to GNSS Positioning 

-        A Deeper Analysis of 2D Pseudorange-Based Positioning 

-        Translation to 3D GNSS Positioning


Lecture 2: GNSS Architecture (1h)

-  GNSS Segments 

          Space Segment

          Control Segment 

          User Segment

-   GNSS Signals 

         GPS Signals 

         GLONASS Signals

         Galileo Signals

         BeiDou Signals

-   Summary of GNSS Signals


Lecture 3: Overview of GNSS Positioning Techniques (3h)

-   Standalone Positioning 

-   Code based Differential Positioning




-   Carrier based Differential Positioning   

         RTK and NRTK 


-   Commercial Services


Lecture 4: GNSS Time Reference Systems and Frames (3h)

-  Time and Reference Frames


       Reference Systems and Frames

       GNSS Reference Frames

       Cartesian and Ellipsoidal Coordinates 

       Regional Datums and Map Projections 


Lecture 5: GNSS Measurements and Data Pre-processing (4h)

-  Combinations of GNSS Measurements 

       Combining Pairs of Signals

       Combining Trios of Signals

-  Measurement Features and Noise 

       Receiver Noise 


       Carrier Smoothing of Code Pseudoranges

-  Carrier Phase Cycle-Slip Detection

       Examples of Multi-Frequency Cycle-Slip Detectors

       Examples of Single-Frequency Cycle-Slip Detectors


Lecture 6: Satellite Orbits and Clocks (3h)

-  Satellite Orbits

       Keplerian Elements (Two-Body Problem)

       Perturbed Motion

       GNSS Broadcast Orbits

-  Computation of GNSS Satellite Coordinates and Clock Offsets

      Computation of GPS, Galileo and BeiDou Satellite Coordinates and Clocks

      Computation of GLONASS Satellite Coordinates and Clocks

      Computation of Precise GNSS Satellite Coordinates and Clocks

      Computation of Coordinates from Almanac Data


Lecture 7: Code Pseudorange Modelling (4h)

-  Linear Model and Prefit-Residuals

-  Code Measurements Modelling

        Geometric Range Modelling

        Relativistic Path Range Correction

        Relativistic Clock Correction

        Instrumental Delays

        Atmospheric Effects Modelling

-  Example of Computation of Modelled Pseudorange


Lecture 8:  Solving Navigation Equations (4h)

-  Linear Model: Navigation Equations

-  Least Squares Solution.

-  Weighted Least Squares and Minimum Variance Estimator

-  Kalman Filter

       Examples for Static and Kinematic Positioning


Lecture 9:  Precise Point Positioning (3h)

-  Additional Model Terms for PPP

       Carrier Phase Wind-up Effect

       Antenna Phase Centre Correction

       Earth Deformation Effects Modelling

-  Linear Observation Model for PPP

-  Parameter Estimation: Floating Ambiguities

-  Accelerating the Filter Convergence: Fast PPP


Practical Lectures

Tutorial 0. Introduction to gLAB Tool Suite (1h)

Tutorial 1. UNIX Environment Tools and Skills (1h)

Tutorial 2. Measurements Analysis and Error Budget (3h)

Tutorial 3. Model Components Analysis (3h)

Tutorial 4. Detailed Code Measurements Modelling (3h)

Tutorial 5. Solving Navigation Equations (3h)


Evaluation system: 

Students have the option to choose between:

-        Taking a single final exam (100% of the mark).

-        A course work (50% of the mark) and a reduced final exam (50%).