This work is implemented on MATLAB, and it solely uses raw pseudoranges and satellite ephemeris data as input, to calculate the receiver user position in ECEF, as well as the user clock bias.
This work is implemented on MATLAB R2015a, no extra toolbox is required to compile the calculation script.
Note: Requires the script config.m to be in the same folder directory.
Note: The data folder should be put in the project directory (relative path)
The scripts are coded in logical order as the pseudocode below:
calUserPosition.m
This file is the main file to parse the ephemeris data, calculate the estimated user position and user clock bias.
config.m
This file defines all GPS Constant variables
calSatPosition.m
This function calculates the XYZ positions for all valid satellites
calSatClockBias.m
This function output the satellite clock bias, Delta_t_SV only
formatEphData.m
This function reconstructs ephemeris data with indices for satellite positions calculation
This is the assignment work of course AAE6102 - Satellite Communication and Navigation, and not distributed for non-research usage.
Tse Kwai Wa Sky - kwai-wa.tse@connect.polyu.hk
Project Link: /~https://github.com/everskyrube/Receiver-position-calculation-with-GPS.git