Table of Contents

Sensor: GPS

Description

The GPS module replicates a GPS sensor to estimate the position of the object it may be attached to. The Sensor requires transmissions from surrounding GPS transmitter spacecraft to triangulate its own location.

Example Use Cases

  • Sensor Platform: The GPS sensor is used in the sensor platform amongst various other sensors to estimate the position of the spacecraft.

Module Implementation

Using the messages of the GPS transmitter, the distance of the sensor from the satellite is known as the pseudo-range as follows.

\[ \begin{equation}\rho(t)=c[t+\delta t_u(t)-(t-\tau+\delta t_s(t))]+\epsilon_\rho(t)=c\tau+c[\delta t_u(t)-\delta t_s(t)]\end{equation} \]

The transmission time from the satellite to the user is denoted by \(\tau\) and a common time reference (referred to as GPS Time (GPST)) by \(t\) . The receiver clock bias at time \(t\) is denoted by \(\delta t_u(t)\) and satellite clock bias at time \(t-\tau\) by \(\delta t_s(t-\tau)\) and the pseudo-range measured by the GPS is denoted by \(\rho(t)\).

The distance to the satellite at time \(t\) denoted by \(r(t,t-\tau)\) would be equal to \(c\tau\) ignoring the effects of Ionosphere and troposphere propagation effects \(I_p\) and \(T_p\).

\[ \begin{equation} c\tau=r(t,t-\tau)+I_p+T_p \end{equation} \]

Ignoring the propagation effects and combining equations (1) and (2)

\[ \begin{equation}\rho(t)=r(t,t-\tau)+c[\delta t_u(t)-\delta t_s(t)]+\epsilon_p(t)\end{equation} \]

The satellite clock bias is calculated as follows:

\[ \begin{equation}\Delta t_s=a_{f0}+a_{f1}(t-t_{toc})+a_{f2}(t-t_{oc})^2+\Delta r_r\end{equation} \]

where \(a_{f0}\), \(a_{f1}\) and \(a_{f2}\) are the polynomial coefficients for the correction factors on the GPS transmission message, \(t_{oc}\) is the clock data reference time in seconds, and \(\Delta t_r\) is the relativistic correction term (seconds) which is given by:

\[ \begin {equation}\Delta t_r=Fe\sqrt{A}\sin{E_k} \end {equation} \]

where:

\(F=\frac{-2\sqrt{\mu}}{c^2}\)

\(\mu:\) Earth's universal gravitational parameters

\(c:\) Speed of light

\(e:\) Eccentricity of orbit

\(A:\) Semi-major axis of orbit

\(E_k:\) Eccentric Anomaly

Once the satellite clock bias has been accounted for and all available corrections have been applied, the corrected pseudo-range measurement for satellite \(k\)  can be written as

\[ \begin{equation}\rho^k=r^k+c\delta t_u+\epsilon^k\end{equation} \]

assuming the position of the sensor in the Earth Centered Earth Fixed (ECEF) frame and position of a satellite \(k\) to be \(x\) and \(x^k\) respectively and \(b=c\delta t_u\)

\[ \begin {equation} \rho^k=||x^k-x||+b+\epsilon^k \end{equation} \]

\(x\) and \(b\) is to be determined such that \(\delta\rho^k=\rho^k-(||x^k-x||+b)\) is minimized for all satellites. This problem is solved using an iterative procedure by starting with an estimate of \(x\) and \(b\) of \(x_0,b_0\)  and finding the corrections that minimize the equation above. The true user position and the clock bias would be defined as \(x=x_0+\delta x\) and \(b=b_0+\delta b\) with the goal of minimizing \(\delta x\) and \(\delta b\)

\[ \begin {equation} \delta\rho^k=\rho^k-\rho_0^k =||x^k-x_0-\delta x||+b-||x^k-x_0||-b_0+\epsilon^k \end{equation} \]

Introducing \(\hat{x}_{uk}\) to be the unit vector from the sensor to satellite and using a Taylor series expansion of the vector norm to express the delta pseudo-range as a matrix multiplication between known and unknown quantities, the above can be converted to

\[ \begin{equation}\delta\rho^k=\left[{\begin{array}{ccc} -\hat{x}_{uk} & 1 \\ \end{array}}\right]\left[{\begin{array}{ccc} \delta x \\ \delta b \\ \end{array}}\right]+ \epsilon^k\end{equation} \]

Concatenating the linear equation developed above for  satellites,

\[ \begin{equation}\delta\rho=\left[{\begin{array}{ccc} \delta\rho^1\\\delta\rho^2\\\vdots\\\delta\rho^k \end{array}}\right]=\left[{\begin{array}{ccc}-\hat{x}_{u1}&1\\ -\hat{x}_{u2}&1\\\vdots&\vdots\\-\hat{x}_{uk}&1\\\end{array}}\right]\left[{\begin{array}{ccc}\delta x\\\delta b\end{array}}\right]+\epsilon\end{equation} \]

setting

\[ \begin{equation}G=\left[{\begin{array}{ccc}-\hat{x}_{u1}&1\\ -\hat{x}_{u2}&1\\\vdots&\vdots\\-\hat{x}_{uk}&1\\\end{array}}\right]\\\\\therefore \delta\rho=G\left[{\begin{array}{ccc}\delta x\\\delta b\end{array}}\right]+\epsilon\end{equation} \]

Using a method of least squares the solution would be defined as follows

\[ \begin{equation}\left[{\begin{array}{ccc}\delta \hat{x}\\\delta \hat{b}\end{array}}\right]=(G^TG)^{-1}G^T\delta\rho\end{equation} \]
Note

The hat in the equations represents numerical quantities and not analytical solutions.

Assumptions/Limitations

  • A minimum of four accessible GPS satellites required
  • Ionosphere and troposphere propagations neglected
  • Estimated Solutions using the least squares method

References

[1] Flores , A. (no date) Authority description date - GPS: The global positioning system. Available at: https://www.gps.gov/technical/icwg/IS-GPS-200M.pdf . (Pg 97:110)