Skip to content
Surf Wiki
Save to docs
general/satellite-navigation

From Surf Wiki (app.surf) — the open knowledge base

Satellite navigation solution

Calculation of position based on satellite signal timing


Summary

Calculation of position based on satellite signal timing

Satellite navigation solution for the receiver's position (geopositioning) involves an algorithm. In essence, a GNSS receiver measures the transmitting time of GNSS signals emitted from four or more GNSS satellites (giving the pseudorange) and these measurements are used to obtain its position (i.e., spatial coordinates) and reception time. In essence, from each received satellite signal a single measured quantity is obtained (time of arrival of information from the satellite). Four quantities need to be computed: three spatial coordinates and the absolute time. Thus, it is necessary to receive signals from a minimum of four satellites in order to solve for the four unknowns. With more than four signals available, it is possible to use the extra information to check for consistency and to improve the accuracy of the position and time. --

The following are expressed in inertial-frame coordinates.

The solution illustrated

Image:Light cones.svg|Essentially, the solution shown in orange, \scriptstyle (\hat{\boldsymbol{r}}{\text{rec}},, \hat{t}{\text{rec}}), is the intersection of light cones. Image:Evolution light cones 0.gif|The posterior distribution of the solution is derived from the product of the distribution of propagating spherical surfaces. (See animation.)

Animation

The posterior distribution of the solution is derived from the product of the distribution of propagating spherical surfaces.

Calculation steps

  1. A global-navigation-satellite-system (GNSS) receiver measures the apparent transmitting time, \displaystyle \tilde{t}_i, or "phase", of GNSS signals emitted from four or more GNSS satellites (\displaystyle i ;=; 1,, 2,, 3,, 4,, ..,, n ), simultaneously.
  2. GNSS satellites broadcast the messages of satellites' ephemeris, \displaystyle \boldsymbol{r}i (t), and intrinsic clock bias (i.e., clock advance), \displaystyle\delta t{\text{clock,sv},i} (t) as the functions of (atomic) standard time, e.g., GPST.
  3. The transmitting time of GNSS satellite signals, \displaystyle t_i, is thus derived from the non-closed-form equations \displaystyle \tilde{t}i ;=; t_i ,+, \delta t{\text{clock},i} (t_i) and \displaystyle \delta t_{\text{clock},i} (t_i) ;=; \delta t_{\text{clock,sv},i} (t_i) ,+, \delta t_{\text{orbit-relativ},, i} (\boldsymbol{r}_i,, \dot{\boldsymbol{r}}i), where \displaystyle \delta t{\text{orbit-relativ},i} (\boldsymbol{r}_i,, \dot{\boldsymbol{r}}_i) is the relativistic clock bias, periodically risen from the satellite's orbital eccentricity and Earth's gravity field. The satellite's position and velocity are determined by \displaystyle t_i as follows: \displaystyle \boldsymbol{r}_i ;=; \boldsymbol{r}_i (t_i) and \displaystyle \dot{\boldsymbol{r}}_i ;=; \dot{\boldsymbol{r}}_i (t_i). \displaystyle \boldsymbol{r}_i ;=; \boldsymbol{r}_i (t_i). --
  4. In the field of GNSS, "geometric range", \displaystyle r(\boldsymbol{r}_A,, \boldsymbol{r}_B) , is defined as straight range, or 3-dimensional distance, from \displaystyle\boldsymbol{r}_A to \displaystyle\boldsymbol{r}_B in inertial frame (e.g., ECI one), not in rotating frame.\displaystyle r(\boldsymbol{r}_A,, \boldsymbol{r}_B) =\sqrt{(x_A-x_B)^2+(y_A-y_B)^2+(z_A-z_B)^2} where x_A, y_A, z_A, x_B, y_B, z_B are components of \boldsymbol{r}_A,\ and \boldsymbol{r}_B respectively expressed in ECI coordinates.--
  5. The receiver's position, \displaystyle \boldsymbol{r}{\text{rec}}, and reception time, \displaystyle t{\text{rec}}, satisfy the light-cone equation of \displaystyle r(\boldsymbol{r}i,, \boldsymbol{r}{\text{rec}}) / c ,+, (t_i - t_{\text{rec}}) ;=; 0 in inertial frame, where \displaystyle c is the speed of light. The signal time of flight from satellite to receiver is \displaystyle -(t_i ,-, t_{\text{rec}}).
  6. The above is extended to the satellite-navigation positioning equation, \displaystyle r(\boldsymbol{r}i,, \boldsymbol{r}{\text{rec}}) / c ,+, (t_i ,-, t_{\text{rec}}) ,+, \delta t_{\text{atmos},i} ,-, \delta t_{\text{meas-err},i} ;=; 0 , where \displaystyle \delta t_{\text{atmos},i} is atmospheric delay (= ionospheric delay + tropospheric delay) along signal path and \displaystyle \delta t_{\text{meas-err},i} is the measurement error.
  7. The Gauss–Newton method can be used to solve the nonlinear least-squares problem for the solution: \displaystyle (\hat{\boldsymbol{r}}{\text{rec}},, \hat{t}{\text{rec}}) ;=; \arg \min \phi ( \boldsymbol{r}{\text{rec}},, t{\text{rec}} ), where \displaystyle \phi ( \boldsymbol{r}{\text{rec}},, t{\text{rec}} ) ;=; \sum_{i=1}^n ( \delta t_{\text{meas-err},i} / \sigma_{\delta t_{\text{meas-err},i} } )^2 . Note that \displaystyle \delta t_{\text{meas-err},i} should be regarded as a function of \displaystyle \boldsymbol{r}{\text{rec}} and \displaystyle t{\text{rec}}. \displaystyle \delta t_{\text{meas-err},i} ( \boldsymbol{r}{\text{rec}},, t{\text{rec}} ) ;=; r(\boldsymbol{r}i,, \boldsymbol{r}{\text{rec}}) / c ,+, (t_i ,-, t_{\text{rec}}) ,+, \delta t_{\text{atmos},i} . -- \displaystyle \boldsymbol{r}{\text{rec}}, and reception time, \displaystyle t{\text{rec}}. --
  8. The posterior distribution of \displaystyle \boldsymbol{r}{\text{rec}} and \displaystyle t{\text{rec}} is proportional to \displaystyle \exp ( -\frac{1}{2} \phi ( \boldsymbol{r}{\text{rec}},, t{\text{rec}} ) ), whose mode is \displaystyle (\hat{\boldsymbol{r}}{\text{rec}},, \hat{t}{\text{rec}}). Their inference is formalized as maximum a posteriori estimation.
  9. The posterior distribution of \displaystyle \boldsymbol{r}{\text{rec}} is proportional to \displaystyle \int{-\infty}^\infty \exp ( -\frac{1}{2} \phi ( \boldsymbol{r}{\text{rec}},, t{\text{rec}} ) ) , d t_{\text{rec}}.

The GPS case

  • For Global Positioning System (GPS), the non-closed-form equations in step 3 result in \scriptstyle \Delta t_i (t_i,, E_i) ;\equiv; t_i ,+, \delta t_{\text{clock},i} (t_i,, E_i) ,-, \tilde{t}i ;=; 0 and \scriptstyle \Delta M_i (t_i,, E_i) ;\equiv; M_i (t_i) ,-, (E_i ,-, e_i \sin E_i) ;=; 0, -- : \scriptstyle \begin{cases} \scriptstyle \Delta t_i (t_i,, E_i) ;\triangleq; t_i ,+, \delta t{\text{clock},i} (t_i,, E_i) ,-, \tilde{t}i ;=; 0, \ \scriptstyle \Delta M_i (t_i,, E_i) ;\triangleq; M_i (t_i) ,-, (E_i ,-, e_i \sin E_i) ;=; 0, \end{cases} in which \scriptstyle E_i is the orbital eccentric anomaly of satellite i, \scriptstyle M_i is the mean anomaly, \scriptstyle e_i is the eccentricity, and \scriptstyle \delta t{\text{clock},i} (t_i,, E_i) ;=; \delta t_{\text{clock,sv},i} (t_i) ,+, \delta t_{\text{orbit-relativ},i} (E_i).
  • The above can be solved by using the bivariate Newton–Raphson method on \scriptstyle t_i and \scriptstyle E_i. Two times of iteration will be necessary and sufficient in most cases. Its iterative update will be described by using the approximated inverse of Jacobian matrix as follows: \scriptstyle \begin{pmatrix} t_i \ E_i \ \end{pmatrix} \leftarrow \begin{pmatrix} t_i \ E_i \ \end{pmatrix}

\begin{pmatrix} 1 && 0 \ \frac{\dot{M}_i (t_i)}{1 - e_i \cos E_i} && -\frac{1}{1 - e_i \cos E_i} \ \end{pmatrix} \begin{pmatrix} \Delta t_i \ \Delta M_i \ \end{pmatrix}

  • Tropospheric delay should not be ignored, while the Global Positioning System (GPS) specification doesn't provide its detailed description.

The GLONASS case

  • The GLONASS ephemerides don't provide clock biases \scriptstyle\delta t_{\text{clock,sv},i} (t), but \scriptstyle\delta t_{\text{clock},i} (t).

Notes

  • In the field of GNSS, \scriptstyle \tilde{r}i ;=; -c (\tilde{t}i ,-, \tilde{t}{\text{rec}}) is called pseudorange, where \scriptstyle \tilde{t}{\text{rec}} is a provisional reception time of the receiver. \scriptstyle \delta t_{\text{clock,rec}} ;=; \tilde{t}{\text{rec}} ,-, t{\text{rec}} is called receiver's clock bias (i.e., clock advance).
  • Standard GNSS receivers output \scriptstyle \tilde{r}i and \scriptstyle \tilde{t}{\text{rec}} per an observation epoch.
  • The temporal variation in the relativistic clock bias of satellite is linear if its orbit is circular (and thus its velocity is uniform in inertial frame).
  • The signal time of flight from satellite to receiver is expressed as \scriptstyle -(t_i - t_{\text{rec}}) ;=; \tilde{r}i/c ,+, \delta t{\text{clock},i} ,-, \delta t_{\text{clock,rec}}, whose right side is round-off-error resistive during calculation.
  • The geometric range is calculated as \scriptstyle r(\boldsymbol{r}i,, \boldsymbol{r}{\text{rec}}) ;=; | \Omega_{\text{E}} (t_i ,-, t_{\text{rec}}) \boldsymbol{r}{i,\text{ECEF}} ,-, \boldsymbol{r}{\text{rec,ECEF}} |, where the Earth-centred, Earth-fixed (ECEF) rotating frame (e.g., WGS84 or ITRF) is used in the right side and \scriptstyle \Omega_{\text{E}} is the Earth rotating matrix with the argument of the signal transit time. The matrix can be factorized as \scriptstyle \Omega_{\text{E}} (t_i ,-, t_{\text{rec}}) ;=; \Omega_{\text{E}} (\delta t_{\text{clock,rec}}) \Omega_{\text{E}} (-\tilde{r}i/c ,-, \delta t{\text{clock},i}) .
  • The line-of-sight unit vector of satellite observed at \scriptstyle \boldsymbol{r}{\text{rec,ECEF}} is described as: \scriptstyle \boldsymbol{e}{i, \text{rec,ECEF}} ;=; -\frac{\partial r(\boldsymbol{r}i,, \boldsymbol{r}{\text{rec}})}{\partial \boldsymbol{r}_{\text{rec,ECEF}}} .
  • The satellite-navigation positioning equation may be expressed by using the variables \scriptstyle \boldsymbol{r}{\text{rec,ECEF}} and \scriptstyle \delta t{\text{clock,rec}}.
  • The nonlinearity of the vertical dependency of tropospheric delay degrades the convergence efficiency in the Gauss–Newton iterations in step 7.
  • The above notation is different from that in the Wikipedia articles, 'Position calculation introduction' and 'Position calculation advanced', of Global Positioning System (GPS).

References

References

  1. Misra, P. and Enge, P., Global Positioning System: Signals, Measurements, and Performance, 2nd, Ganga-Jamuna Press, 2006.
  2. "The interface specification of NAVSTAR GLOBAL POSITIONING SYSTEM".
  3. 3-dimensional [[distance#Geometry. \boldsymbol{r}_A - \boldsymbol{r}_B
Wikipedia Source

This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page.

Want to explore this topic further?

Ask Mako anything about Satellite navigation solution — get instant answers, deeper analysis, and related topics.

Research with Mako

Free with your Surf account

Content sourced from Wikipedia, available under CC BY-SA 4.0.

This content may have been generated or modified by AI. CloudSurf Software LLC is not responsible for the accuracy, completeness, or reliability of AI-generated content. Always verify important information from primary sources.

Report