If you wish to contribute or participate in the discussions about articles you are invited to join Navipedia as a registered user

Code Based Positioning (SPS)

Jump to: navigation, search

Fundamentals
Title Code Based Positioning (SPS)
Author(s) J. Sanz Subirana, J.M. Juan Zornoza and M. Hernández-Pajares, Technical University of Catalonia, Spain.
Level Advanced
Year of Publication 2011

The target is to determine the receiver coordinates  and clock offset  from pseudorange measurements  of at least 4 satellites in view. The positioning principle is based on solving a geometric problem from the measured ranges to the satellites, with known coordinates. The satellite coordinates can be computed from the broadcast message, which also provides all necessary information for the measurements modelling for the Standard Positioning Service (SPS).

From the code pseudorange measurements  for, at least, four satellites (see GNSS Measurements Modelling and Instrumental Delay),



The following measurement equations system can be written, neglecting the multipath and receiver noise terms:



where the left side equations contain the measurements  and all modeled terms  (see Clock Modelling, Tropospheric Delay, Klobuchar Ionospheric Model, and Instrumental Delay).

The right side contains the four unknown parameters: The receiver coordinates  and the receiver clock offset .

The previous equation (2) defines a non linear system, which a usual resolution technique consists of linearising the geometric range  in the neighbourhood of a point  corresponding to an approximate receiver position.

Then, linearising the satellite-receiver geometric range



at the approximative solution , one obtains:



Substituting (4) into (2) we can rewrite the measurement equations as a linear system (where  can be whatever, smoothed or unsmoothed code):



The previous navigation equation system [footnotes 1] is written in matrix notation as:



In general, an over-dimensioned system is obtained (for ), which can be solved using the Least Squares adjustment.

After solving the equations system (6), the improved estimate of the receiver coordinates is:



The equations (2) can be linearised again about these new estimates (7) of the receiver position, and the solution can be iterated until the change between two consecutive iterations is under a given threshold. Typically, the iterations converge quickly, in few iterations, even if starting with , i.e., the earth's centre.

The equations (6) will be named Navigation Equation System and can be written in compact form as:



where the vectors and matrix involved can be defined as:

• Prefit-residuals: Y is a () vector containing the residuals between the measured and predicted pseudoranges, "before fitting" the parameters  to the linear model.
• Geometry matrix: G is a () matrix containing the receiver-satellite geometry [footnotes 2]. The first three elements of each row (j = 1,...,n) are the components of the unitary line-of-sight-vector .
• Unknown parameters: X is a () vector containing the deviation  between the approximated and the true coordinates and the receiver clock offset .

Figure 1: GNSS positioning geometric concept.

For more information, please go to the article

Notes

1. ^ Strictly speaking, this system corresponds to the case where satellite coordinates at emission time have been calculated using pseudorange algorithm described in Satellite Coordinates Computation. In case of using the purely geometric algorithm of Satellite Coordinates, the elements of the associated matrix (design matrix or Jacobian) varies slightly.
2. ^ The matrix  can be computed in the ENU coordinates instead of XYZ as in (6). In this local system the rows are , where  and  are the elevation and azimuth angle of the satellite  observed from the receiver position (please refer to Transformations between ECEF and ENU coordinates for further details)