GNSS Solutions • May/June 2014
How do you compute a relative position using GNSS?Share via: Slashdot Technorati Twitter Facebook Q: How do you compute a relative position using GNSS? A: In many applications the absolute position of an object is less important than the relative position to other objects in the vicinity. An obvious example is a collision avoidance system, wherein the proximity of nearly vehicles is much more important than whether the vehicles are located on street “X” or “Y.” Although many sensors can be used for determining relative position — for example, radar, lidar, vision and ultrawideband — GNSS can also be used. In fact, as will be shown later, any form of differential GNSS processing is a form of relative positioning. This includes GNSS attitude determination, vehicletovehicle (V2V) and, vehicletoinfrastructure (V2I) applications.
Standalone Positioning The pseudorange to a satellite measured from receiver “a” is given by Ρ = ρ_{a} + b_{a} + ε_{a} (1) where ρ is the geometric range between the receiver and the satellite, b is the receiver clock bias, and ε is the composite measurement error. The geometric range term is a function of the position of the satellite, ⃗r_{s}, and receiver, ⃗r_{a}, and thus equation (1) can be written more explicitly as Ρ = ρ_{a}(⃗r_{s}, ⃗r_{a}) + b_{a} + ε_{a }(2)
The geometric range term is a nonlinear function of the desired receiver position, ⃗r_{a}, and can be approximated by linearizing around the current best estimates of the position, ⃗̂r_{a}, as follows ρ_{a}(⃗r_{s}, ⃗r_{a}) ≈ ρ_{a}(⃗r_{s}, ⃗̂r_{a) }+ ⃗u_{a}^{T}δ⃗r_{a} (3) where δ⃗r_{a} is the error in the current estimate of the receiver position such that ⃗r_{a} = ⃗̂ra + δ⃗r_{a}. The unit vector, ⃗u_{a}, is defined as Equation (4) (see inset photo, above right, for equations) Strictly speaking, this unit vector should be computed from the estimated position vector (i.e., replace ⃗r_{a} with ⃗̂ra), but given the large distances to the satellites and the typically small magnitude of δ⃗r_{a }(we will revisit this point later), the differences can be neglected and the simplified notation, adopted. Figure 1 (see inset photo, above right) illustrates the relationship between the relevant vectors. Substituting equation (3) into equation (2) and performing some simple algebra gives Equation (5) The matrix notation is included to illustrate how the lefthand side can be expressed as a function of the unknowns δ⃗r_{a} and b_{a} for a single satellite. However, by combining observations from multiple satellites, equation (5) forms the basis for computing a recursive leastsquares estimate of unknown parameters. Before moving on, it is worth noting that equation (5) is only a function of the absolute position (error) of the receiver. Correspondingly, standalone positioning is a form of absolute positioning. In the next section, we contrast this case with case of differential positioning.
Differential Positioning Assuming receivers a and b measure pseudoranges at the same time, the betweenreceiver single difference pseudorange can be written as
ΔΡ_{ab} = Ρ_{a} − Ρ_{b} where Δ(•) is the betweenreceiver single different operator. Using the expansion from equation (3) (with appropriate substitutions for the receiver subscript) and bringing the geometric range estimates to the lefthand side of the equation gives
δΔΡ_{ab = }ΔΡ_{ab} − [ρ_{a}(⃗r_{s}, ⃗̂r_{a}) − ρ_{b}(⃗r_{s}, ⃗̂r_{b})] With reference to equation (4) and Figure 2 (see inset photo, above right), the unit vector associated with receiver “b” can be written as Equation (8) where Δ⃗r_{ab} is the relative position vector between receivers “a” and “b.” Substituting this into equation (7) and rearranging gives Equation (9) where δΔ⃗r_{ab} is the error in the current best estimate of the relative receiver vector. In other words, differential processing provides a direct estimate of the relative position (error), not the absolute position.
Relative versus Absolute Differential Positioning δΔΡ_{ab} = ⃗u_{a}^{T}δ⃗r_{a} = Δb_{ab} + Δε_{ab} (10) which is similar to equation (5) in that the terms on the right hand side are only a function of the absolute position (error) of receiver “a.” The other differences are that we now estimate the relative clock error between the receivers (which is usually treated as a nuisance parameter) and the errors are reduced compared to the standalone case, which, of course, is the main motivation for differential processing. Most people will be familiar with this approach to differential processing and, not surprisingly, we frequently hear claims that “differential techniques are used to compute the absolute position.” However, the key point is that absolute positioning is a special case of relative positioning in which the base station coordinates are known in an absolute sense. However, scenarios exist in which the base station coordinates are not known. For such cases, we need to consider all terms in equation (9). To this end, the second term on the righthand side of equation (9) is effectively an additional error that arises if/when the base station coordinates are incorrect. In most cases, this error is negligible because the denominator is so large — roughly 20,000 kilometers — compared to the numerator. In particular, for applications such as V2V, V2I and GNSS attitude determination, the interreceiver distances are generally small, typically less than a few hundred meters. Furthermore, even if the base station position is determined using standalone positioning techniques, the resulting error will almost always be less than 100 meters. Even if one pessimistically assumes the base station error and the interreceiver distance are both one kilometer, the second term in equation (9) has a maximum possible value of about five centimeters [= (1 km)^{2} / 20,000 km], which is quite small (at least for pseudorange measurements). Where the effect of base station error can become a problem is when very large interreceiver distances are considered. A few examples of this are included in the M.Sc. thesis by C. Tang (“Accuracy and Reliability of Various DGPS Approaches”, May 1996, University of Calgary, UCGE Report No. 20095, available here).
Summary Another point worth noting is that although the foregoing mathematical development focused on the use of pseudorange measurements, the same development also applies to carrier phase data. The main difference in the latter case is that the carrier phase ambiguity terms need to be included. Also, because the carrier phase measurement errors are smaller than those of the pseudorange (in terms of noise and multipath), carrier phase processing is a bit more sensitive to base station positioning errors. We should also note that, even though carrier phase process often uses double differencing techniques, the betweensatellite difference does not negate any of the above development. Copyright © 2017 Gibbons Media & Research LLC, all rights reserved. 
