0% found this document useful (0 votes)
114 views28 pages

GNSS Positioning Methods

The document discusses various GNSS positioning methods including single point positioning using code pseudoranges and carrier phases. It also examines differential GNSS techniques for relative positioning including static and kinematic models. Models for code-based and phase-based positioning are presented along with relationships between observables and parameters for single point and relative positioning.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
114 views28 pages

GNSS Positioning Methods

The document discusses various GNSS positioning methods including single point positioning using code pseudoranges and carrier phases. It also examines differential GNSS techniques for relative positioning including static and kinematic models. Models for code-based and phase-based positioning are presented along with relationships between observables and parameters for single point and relative positioning.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

GNSS Algorithms/Processing methods

1 GNSS positioning methods


(a) Single vs. Relative
(b) Static vs. Kinematic
(c) Real time vs. Post mission
2 GNSS ranging models and solutions
2.1 Model for positioning under code pseudoranges
2.2 Model for point positioning using carrier phases
3. Relationships amongst observables and parameters
3.1 Single Point Positioning (i) with code (ii) with phase
3.2 Relative positioning
(i) Static models
(a) Rank deficiency (b) Single difference (c) Double difference (d) Triple difference
(ii) Kinematic models
4. Correlation amongst observables: (a) Single difference (b) Double difference (c) Triple difference
5. Differential GNSS
5.1 Code-based differential GNSS
5.2 Phase-based differential GNSS 1

1. GNSS positioning methods


(a) Single versus Relative/Differential positioning
(i) Single Point Positioning (SPP)
 Primarily code based positioning is used
 Coordinates of a receiver at an unknown point are sought with respect to the
earth's reference frame by using the known positions of the GPS satellites being
tracked.
 Also referred to as absolute positioning, and often just as point positioning.

2
(ii) Relative Positioning
 Code and/or phase based positioning are used to compute the baseline
vector (X, Y, Z) from a point of known position to unknown position
thus enabling computation of coordinates of unknown point.
 Coordinates of a receiver at an unknown point are sought with respect to a
receiver at a known point.
 Term differential positioning is sometimes used interchangeably with relative
positioning. However, differential positioning is more often associated with
a specific type of relative positioning which applies corrections measured at
a known site to measurements at an unknown site.

Differential positioning (Sickle, 2001) 3

(b) Static versus Kinematic Positioning

• Static positioning
• a GPS receiver remains stationary

• Kinematic positioning
• a receiver collects GPS data while
moving.

• For kinematic relative positioning,


one receiver, referred to as a
monitor/master/base, is left stationary
on a known point while a second
receiver, referred to as a
slave/rover, is moved over the path
to be positioned.

GPS positioning methods


(GPS Guide) 4
(c) Real-time versus Post-mission processing
• Real-time processing
– positions are computed almost
instantaneously, on site.

• Post-mission processing
– data is combined and reduced after all
data collection has been completed.

• Real-time relative positioning


– requires a data link to transmit corrections
from a monitor receiver at a known point
to a rover receiver at an unknown point.

• Post-mission processing for relative


positioning
– requires physically bringing together the
data from all receivers after an observation
period.

• Real-time point positioning


Real time vs Post mission processing – for many GPS applications it is still
(GPS guide) necessary to download data and enter it in
a database specific to the user's
application.
5

Real-time processing
• No post-processing required
• Results are instantly available
• Two modes:
• Real-time Code RT-DGPS (Code based)
• Real-time Phase RTK (Phase based)

B
A
6
2. GNSS Ranging models and solutions
Two main types of GPS observables are generally used:
 Code pseudorange model
 Carrier phase model

Following positioning algorithms will now be considered:


• Point positioning
 Point positioning using code ranges
 Point positioning using carrier phases
• Differential positioning
• Relative positioning
 Static relative positioning
 Kinematic relative positioning

2.1 Model for Positioning with Code Pseudoranges


• Recall the following definitions:

t j = Satellite clock time at signal emission; offset from actual GPS time
ti = Receiver clock time at signal reception; offset from actual GPS time
 j = Satellite clock delay with respect to GPS time
 i = Receiver clock delay with respect to GPS time
t j*  Satellite clock time at signal emission; in GPS timeframe
ti*  Receiver clock time at signal reception; in GPS timeframe

• Time shift (t) or difference between time the signal was received and
time the signal was sent can be computed by:
t  t i  t j 

t i  t i*   i 

t j  t j*   j 

8


• Substituting different values, we get,

t   t i*   i   t j*   j  

  
 t i*  t j*   i   j 
 

j
 i


 t i*  t   i
j* j
 

• Code pseudorange and geometric range can be given as:

Pseudorange (P ) = ct  c(t i  t j ) 




  
 c t i*  t j*  c  i   j    c  i   j    

Geometric range ( )  P  c     i
j


Thus code pseudorange between receiver i and satellite j can be written as

Pseudorange ( P ij ) = ct  c(t i  t j )



 c t i*  t j*  c  i   j
  
  

j
c i j
i

   c i j
i
j

Thus code pseudorange between receiver i and satellite j at an epoch t can be


modeled as
P i (t )   i (t )  c i (t )
j j j

 i j (t )   i (t )   j (t )
Pi j (t )  c j (t )  i j (t )  c i (t )
True range between receiver at position i and satellite j, given as

X (t )  X i   Y j (t )  Yi    Z j (t )  Zi   f  X i , Yi , Zi 
2 2 2
 ij (t )  j

10
With approximate coordinates of the receiver, Xi0, Yi0, Zi0 X i  X i 0  X i
Yi  Yi 0  Yi
Z i  Z i 0  Z i

Expanding using Taylor series with


f ( X i 0, Y i 0, Z i 0) f ( X i 0, Y i 0, Z i 0) f ( X i 0, Y i 0, Z i 0)
f ( X i , Yi , Z i )  f ( X i 0 , Yi 0 , Z i 0 )  X i  Yi  Z i   
X i 0 Yi 0 Z i 0

f ( X i 0, Y i 0, Z i 0)  X j (t )  X i 0  
  
X i 0   i 0(t ) 
j

f ( X i 0, Y i 0, Z i 0)  j (t )   
   Y j Y i0  
Yi 0   i 0(t )  
f ( X i 0, Y i 0, Z i 0)  j (t )  
   Z j Z i0  
Z i 0   i 0(t )  

 X j (t )  X i 0   Y j (t )  Y i 0   Z j (t )  Z i 0 
 (t )   (t )  
j j
 X i    Yi    Z i
  i 0(t )    i 0(t )    i 0(t ) 
i i0 j j j

     
2 2 2
 ij0(t )  X j (t )  X i 0  X j (t )  X i 0  Y j (t ) Yi 0  Z j (t )  Zi 0  f ( X i 0 , Yi 0 , Zi 0 )
11

Hence, the pseudorange equation becomes

P i (t )   i (t )  c i (t )  c (t )
j j j

 X j (t )  X i 0   Y j (t )  Y i 0   Z j (t )  Z i 0 
  Z i  c i (t )  c (t )
j
P (t
i
j
)  i0 (t )   X
 i  Y
 i  j

  i 0(t ) 
j
  i 0(t ) 
j
  i 0(t ) 
j
     
a Xj aYj aZj
i i i

 X j (t )  X i 0   Y j (t )  Y i 0   Z j (t )  Z i 0 
i (t )   i 0 (t )  c (t )   
j
P
j j
  X i    Yi    Z i  c i (t )

  j
t    j
t    j
t

i ( ) i ( ) i ( )
li j  0
   0
   0

a Xj aYj aZj
i i i

In short hand notation:

l i j (t )  P i (t )  ij0(t )  c j (t ) 
j


 j
(t )    li1 (t )  a1X i X i  a1Yi Yi  a1Zi Z i  c i (t ) 
a Xj i    X j X i 0   
  i 0(t )   li (t )  a X i X i  a Yi Yi  a Zi Z i  c i (t ) 
2 2 2 2
 
 j
t    
aYji    Y j Y i 0 
( )
 li3 (t )  a 3X i X i  a Y3i Yi  a 3Zi Z i  c i (t ) 
  i 0(t )   
 Z j (t )  Z i 0 
 li (t )  a X i X i  a Yi Yi  a Zi Z i  c i (t ) 
4 4 4 4

aZ i   
j 
  12
  i 0(t ) 
j

 e  1
T
1
a 1
Xi a 1
Yi a 1
Zi 1  i
  X i   li1 (t )   P1i (t )   i 0(t ) c 1(t ) 
1
 2   
e  2   2 
T
1  
2  Y 
aX aY2i aZ2i i 1
 i  li (t )   P i (t )   i 0(t ) c 2(t ) 
2
A   3i   ; X   Z  ; L  l 3 (t )    3(t )
e 
T
  i 0(t ) c 3(t ) 
3
aXi aY3i aZ3i 1   1 Pi
3 i i
i   4   4 
a4 1   c i (t )  li (t )   P i (t )   i 0(t ) c 4(t ) 
4
aY4i aZ4i
 Xi
e 
T
 4
1
 i

V = AX- L
Where is the unit vector from vector drawn from receiver station i to
satellite j and is given as:

  X j (t )  X i 0  Y j (t )  Y i 0   Z j (t )  Z i 0  
T

ei  
j
, , 
  j
i0 (t )  j
i0 (t )  ij0(t ) 

 X j (t )  X i 0  , Y j (t )  Y i 0  ,  Z j (t )  Z i 0  
T


Xij  X0

13

2.2 Model for point positioning with Carrier Phases

i j (t )   ij (t )  c ij (t )   Ni j


  ij (t )  c  i (t )   j (t )   Ni j 
 ij (t )   ij (t )  c i (t )  c j (t )   N i j

 X j (t )  X i 0   Y j (t )  Y i 0   Z j (t )  Z i 0 
 (t )   (t )    Z i  c i (t )  c (t )   N i
j j
 X i    Yi  
j j
i i0
  i 0(t )    i 0(t )    i 0(t ) 
j j j

 j
(t )  X i 0   Y j (t )  Y i 0   Z j (t )  Z i 0 
 ij (t )  ij0(t )  c j (t )    X X
 i  Y
 i   Z i  c i (t )   N i
j

  i 0(t ) 
j
  i 0(t ) 
j
  i 0(t ) 
j

li j (t )  P i (t )  i 0(t )  c (t ) 
j j j

li1 (t )  a1XiXi  a1YiYi  a1ZiZi  c i(t )   Ni 


1

 X j (t )  X i 0   
aXi   
j
  2
  i 0(t )  li (t )  a XiXi  aYiYi  aZiZi  c i(t )   Ni
j 2 2 2 2

 
 Y j (t )  Y i 0   
aYi   
j
 
  i 0(t ) 
j

li3 (t )  a3XiXi  aY3iYi  a3Zi Zi  c i(t )   Ni3 
 
 (t ) 
j  4 
aZji    Z j Z i 0   li (t )  a XiXi  aYiYi  aZi Zi  c i(t )   Ni 
4 4 4 4
  (t )  
i0  14
 X i 
 Y 
 i 

 li1 (t )    1i (t )   i 0(t ) c 1(t ) 


1  a1X i aY1i a1Zi  0 0 0 1  Z i 
2   2   2   1 
l (t )  (t )   i 0(t ) c 2(t ) 
2
aXi aY2i aZ2i 0  0 0 1  Ni 
L   i3    i3 ; A   3 ; X   N2 
 li (t )    i (t )   i 0(t ) c 3(t ) 
3
0 
4   4  aXi aY3i aZ3i 0 0 1
 3 
i

li (t )   i (t )   i 0(t ) c (t ) 


4 4 a4 aY4i aZ4i 0 0 0  1  Ni 
 Xi
 N4 
 i 
c i (t ) 

• In above equation, there are eight unknowns and only four equations at
a given epoch t.
• Each additional epoch increases clock term unknown by one.

15

For three epochs, there will be 12 equation and 10 unknowns. The solution of
this over-determined system (at three epochs t1, t2, t3) can be performed by
the Least squares adjustment procedure (carefully see the order of
parameters and corresponding design matrix).

 a1X i (t1 ) aY1i (t1 ) a1Zi (t1 )  0 0 0 1 0 0


  (t1 ) 
1 1
(t1 )  c (t1 ) 
1  2 

i i0
  a X i (t1 ) a (t1 )
2
Yi a (t1 )
2
Zi 0  0 0 1 0 0
  (t1 ) 
2 2
(t1 )  c 2 (t1 )   3   X i 
0 
i i0
 a X i (t1 ) a (t1 ) a (t1 )
3 3
  (t1 )   0 0 1 0 0
3 3
(t1 )  c (t1 )
3 Yi Zi
 Y 
 i i0
  a 4 (t ) aY4i (t1 ) aZ4i (t1 ) 0 0 0  1 0 0  i 
  (t1 ) 
4
i
4
i0(t1 )  c 4 (t1 )   Xi 1   Z i 
  (t ) 
1 1
(t2 )  c 1 (t2 )   a1X i (t2 ) aY1i (t2 ) a1Zi (t2 )  0 0 0 0 1 0  1 
 i i0
  2   Ni 
2

 (t2 ) 
2 2
(t2 )  c 2 (t2 )   a X i (t2 ) aY2i (t2 ) aZ2i (t2 ) 0  0 0 0 1 0  N2 
L i i0
; A   3  ; X   i3 
  (t2 ) 
3 3
(t2 )  c 3 (t2 )   a X i (t2 ) aY3i (t2 ) aZ3i (t2 ) 0 0  0 0 1 0
i i0
 Ni 
 (t2 ) 
4
i
4
i0(t2 )  c (t2 ) 
4
 a 4 (t ) aY4i (t2 ) aZ4i (t2 ) 0 0 0  0 1 0   N4 
   Xi 2   i 
  (t3 ) 
1 1
(t3 )  c (t3 ) 
1
 a1X i (t3 ) a (t2 ) a (t3 )  0 0 0 1 c i (t1 ) 
1 1
i i0
Yi Zi 0 0
  (t3 ) 
2 2
(t3 )  c 2 (t3 )   2  c i (t2 ) 
 i i0
  a X i (t3 ) a (t2 ) a (t3 )
2
Yi
2
Zi 0  0 0 0 0 1 c i (t3 ) 
  (t3 ) 
3 3
(t3 )  c 3 (t3 )   3 

i i0
  a X i (t3 ) a (t3 ) a (t3 )
3 3
0 0  0 0 0 1
(t3 )  c (t3 ) 
Yi Zi
  (t3 ) 
4 4 4
i i0
 a 4 (t ) a (t3 ) a (t3 )
4 4
0 0 0  0 0 1 
 Xi 3 Yi Zi

16
Comparison of Code and Carrier Measurements
• Carrier wavelengths (19 cm for L1) are much shorter than the C/A code chip
length (293 m) and hence can be measured more accurately and used to achieve
much higher positional accuracies than code measurements.
• Best relative accuracies with code measurements are usually a few meters; with
carrier measurement usually a few centimeters.
• With code observations, a direct measure of the satellite-receiver range is
attained. With carrier observations, the ambiguity term (number of whole
cycles) must be estimated before one may take advantage of the carrier
accuracy.
• Ambiguity estimation leads to complexities in the use of carrier phase
observations which do not exist with code observations.

Comparison of Code and carrier measurements (GPS Positioning Guide, 1995)

Code Carrier
Advantage Non-ambiguous, simple High accuracy potential

Disadvantage Low accuracy More complex 17

3. Relationship amongst observables and parameters

I. Point Positioning
a) Point positioning with code pseudoranges
Considering only the receiver clock bias

P i (t )  c   (t )   i (t )  c   i (t ) 
j j j


n j  nt  3  nt 

In general, there will be (3  nt ) unknowns with  n j .nt  observations. To be a solvable system of

equations, one needs  n j .nt   (3  nt ) . Rewriting the equation gives nt 


3
. From this
n j 1
equation, it can be seen that we need at least two satellites (otherwise the denominator is 0). If
n j  2 , then nt  3 observation epochs are required. This is not acceptable. In general, n j  4 ,
then nt  1 observation epochs are preferred which suggests that if there are four unknowns,
one needs four observations.
18
Rank deficiency in GNSS models
• For SPP using carrier phases, number of observations = (nj. nt).
• Number of unknowns = 3 receiver coordinates + nj unknown ambiguities +
nt receiver clock biases
• Hence, one faces rank deficiency (more unknown parameters than
available observations). For observation equations methods, this implies
that design matrix A is not of full rank.
• Rank of design matrix = order of the largest non-singular matrix that can
be formed inside A (maximum number of linearly independent
rows/columns of matrix A is called rank of the matrix; denoted as rankA).
Linear dependence of two rows means that their linear combination yields
zero.
• For a quadratic matrix with m x m rows and columns, if the largest non-
singular matrix is the matrix A itself, the rank equals m (rankA = m) and
the matrix is regular, i.e., it may be inverted without troubles.

19

• However, if the largest non-singular matrix inside A is a matrix with,


e.g., (m − 2)×(m − 2) rows and columns, rank would be (m − 2) and
implies a rank deficiency of (m − rankA) which turns out to be m − (m−2)
= 2.
• Consequently, the singular system becomes regularly solvable if two
unknowns (or parameters) are arbitrarily chosen (called fixing of two
parameters). This is equivalent to transferring of two of the parameters to
the left side of the equation system comprising the measurements. This
transfer reduces the columns of the matrix on the right side by the
amount of the rank deficiency, i.e., by two in this example.
• In case of SPP with phases, one can arbitrarily choose a combination of
receiver clock biases or ambiguities as fixed and solve the system of
equations. We will see some of the examples of this now.

20
b) Point positioning with carrier phases
1 
 ij (t )    ij (t )  N ij  f j ij (t ) 


 ij (t )    ij (t )  N ij  f  i (t )   (t )  
1 j j

 
1 
 i (t )  f   (t )    i (t )  N i  f  i (t )
j j j j j j

 
n j nt  3  n j  nt 
For any single epoch, there are (3 + 1 + nj) unknowns: 3 coordinates, one time, and one
ambiguity for each satellite. In general, there will be (3 + nj + nt) unknowns with n j  nt

observations. To be a solvable system of equations, we need  n j .nt  3  n j  nt  . This can be

rewritten as  nj  3 
nt  
 n j – 1 
 
Solution for single epoch (nt = 1) is possible, when nj integer ambiguities are disregarded. In
this case, this model is equivalent to code pseudorange model. This also means that nj ≥ 4.
Thus phase model can also be used for kinematic applications provided ambiguities have been
resolved by initialization process. For static applications, one needs at least two satellites
(otherwise the denominator is 0) which requires minimum nt = 5. For practical applications,
however, nj = 4 gives reasonable results with nt = 3 observation epochs. 21

• For SPP with phase (with rank def = 1), 1 


 ij (t )  f   j (t )    ij (t )  N ij  f  i (t ) 
j j

 
n j  nt  3  n j   nt  1 

• There is an inherent rank deficiency of 1 which can be arbitrarily


resolved by assuming one of the receiver clock biases as known/fixed
(by choosing clock bias at one of the epochs as known). From the above
equation, we have with only 1 remaining receiver clock biases
 nj  2 
nt  
 n j – 1 
 
• Minimum number of satellites to get a solution is nj = 2 leading to nt ≥ 4
observation epochs. Another integer solution pair is nj = 4, nt ≥ 2.

22
(II) Relative positioning
• With help of simultaneous
observations at known and unknown
points determine baseline vector
between a known and unknown
point, where one does not solve
directly for coordinates of unknown
point.
• Subsequently, application of baseline
vector to known point gives
coordinates of unknown point.
• One can generally form single,
double, or triple differences of code
or phase observables.
• Typically take differences between
X B  X A  bAB
points (A and B) and between
 X B  X A   X AB  satellites (j and k)
bAB   YB  YA    YAB  • Can be done with code or phase
 Z B  Z A   Z AB  observables
• Can also take differences between
consecutive time epochs. 23

Differencing of observables
(i) Single Differences (SD)
• Can be:
• Inter-station difference (between station A and B) for a given satellite (j)
• Inter-satellite difference (j and k) for a given station (A)
• For receiver stations A and B with satellite j
• Used to reduce satellite clock and orbit errors, and localized atmospheric
errors.

Receiver clock bias is totally


removed. The accuracy
depends upon the accuracy
of input satellite clock bias
P2
P 1B
A
P1

SD between SD between
P1

station A and two satellites


B for a satellite for a given
station

24
Model for Single Difference (SD)
• For receiver stations A and B with satellite j, the phase equation can be
written as 1
 Aj (t )  f   j (t )    Aj (t )  N Aj  f   A (t )
j j


1
 Bj (t )  f   j (t ) 
j
  Bj (t )  N Bj  f j   B (t )

• Single difference equation is

1
 ABj (t )   Bj (t )   Aj (t )     Bj (t )   Aj (t )     NAj  f   B (t )   A(t ) 
j j
N B 
 
 AB (t )
j

 (t )
j
N AB
AB

• Important: A system of such equations would lead to a rank deficiency


even in the case of an arbitrarily large redundancy. This means that the
design matrix of the adjustment has linearly dependent columns and a
rank deficiency exists.

25

N AB  N B  N A
j j j
• Therefore, one can introduce the relative quantities as
 AB
j
(t )  Bj (t )   Aj (t )
 AB (t )   B (t )   A(t )
j
 ABj (t )   B (t )   A(t )
j

• Single difference shows that single difference removes satellite clock bias.

1
 AB
j
(t )    AB
j
(t )  N AB
j
 f j   AB (t )

26
Characteristics of error and biases for SD

27

(ii) Double Differences (DD)

• For two points A and B and two


i j satellites j and k, difference of two
single differences
• Used to reduce satellite clock and
orbit errors, localized
atmospheric errors, and receiver
clock errors.
B

B
A

• Usually adopted by the final


A
j
i

j
i

carrier phase GPS solution.


Relative GPS also uses this
approach.
Satellite and receiver
clock bias is totally
removed.

A B

28
Model for Double Difference (DD)

• Assuming two points A and B and two satellites j and k, two single
difference equations can be formed:
1
 AB (t )    AB
j j j
(t )  N AB
j
 f   AB (t )

1
 kAB (t )    kAB (t )  N kAB  f   AB (t )
k

• DD can be constructed by taking difference of these single differences.

29

Case I: same frequencies


• Assuming f = fj = fk. 
1
  kAB (t )   AB (t )   
AB (t )   AB (t ) 
k j j k
 N AB
N AB
j
 
     jk
 AB (t ) N AB
jk
 AB (t ) jk

• Using analogous shorthand expression for satellites j and k, the double


difference can be written as follows which shows that double difference
removes receiver clock biases under the assumption that simultaneous
observations have been considered with equal frequencies of the satellite signals.
 ABjk (t )   AB
k
(t )   AB
j
(t )  1
  AB
jk
(t )   AB
jk
(t )  N AB
jk

 
 AB
jk
(t )  kAB (t )   AB
j
(t ) 

N AB  N AB  N AB
jk k j


• Note that the above short-hand notations comprise four terms:


 ABjk (t )   AB
k
(t )   AB
j
(t )  Bk (t )   Ak (t )  Bj (t )   Aj (t )

 AB
jk
(t )  kAB (t )   AB
j
(t )   Bk (t )   Ak (t )   Bj (t )   Aj (t )

N AB  N AB  N AB  N B (t )  N A (t )  N B (t )  N A (t )
jk k j k k j j

30
Case II: different frequencies
• Assuming fj ≠ fk, the model equations for stations A and B can be written
1
 Aj (t )  f   j (t ) 
j
  Aj (t )  N Aj  f j   A (t )

1
 Bj (t )  f   j (t ) 
j
  Bj (t )  N Bj  f j   B (t )

• For phase converted to linear units (scaled values), we have ( λ )


j
B (t )
   Aj (t)    Bj (t )   Aj (t )    j  N Bj  N Aj   c   B (t )   A (t ) 

 j
  
j j
 (t ) j (t )
B A 

 AB (t )   AB (t )   N AB  c AB (t )
j j j j

• For two satellites j and k, we have.

 AB (t )   AB (t )   AB (t )    AB (t )   AB (t )    N AB   N AB 
jk k j k j k k j j

  AB
jk
(t )   k N AB
k
  j N AB
j


31

• Adding zero on RHS by rewriting


 AB (t )   AB (t )   N AB   N AB    k N AB   k N AB
jk jk k k j j j j

0

  (t )   N
jk
AB
k jk
AB N 
    
j
AB
k j

bSD

• Above equation differs from DD equation by single difference bias bSD.


• Unknown can be estimated by SPP with an accuracy of about 10 m
(corresponding to 50 cycle of approximately 20 cm wavelength).
• If the wavelength difference for two carriers corresponds to 0.000351 cycles
(which is typical for GLONASS carriers being separated by one carrier
number), then the result bSD = 0.02 cycles is obtained. Thus for small
frequency difference, bSD acts a nuisance parameter.
• For larger differences, iterative processing is proposed. In the first step, only
satellites with small wavelength differences are considered. Hence, the
double-differenced ambiguities of these satellites can be resolved and an
improved position is obtained leading to a more accurate estimation for .
The procedure is then continued and stepwise extended to all satellites until
all ambiguities have been resolved (Han et al., 1999; Habrich, et al., 1999)
32
Characteristics of error and biases for DD

33

(iii) Triple Differences (TD)

it1 it2
• Difference of DD at two
jt1 different epochs t1 and t2
jt2 • Difference between two
double differences from
measurements recorded at
subsequent epochs.
j (t2)
P iA (t1)

t2)

) 1
i (t
P Aj (

• Assuming no cycle slips, or


PB
PB

P B(t1)
)
t1

)
A(

)
loss of lock has occurred, this
P jB (t2
Pi

(t2
i

j
PA
eliminates the integer
ambiguity (canceling effect of
ambiguities i.e. immune to
ambiguity changes), hence
used to detect for cycle slips
Immune to Cycle slips
and loss of lock.
A B

34
Model for Triple Difference (TD)
• To eliminate time independent ambiguities, one can difference the DD
at two different epochs t1 and t2: 1 jk
 AB
jk
(t1 )   AB (t1 )  N AB
jk


1
 AB
jk
(t2 )   AB
jk
(t2 )  N AB
jk


• TD is given as
1  jk
(t1 ) 
jk
 AB
jk
(t2 )   AB
jk
(t1 )   (t )  
 AB 2 AB 
1
 AB
jk
(t12 )   AB
jk
(t12 )

• Note: It will be shown later that:
 variables from SD equations are uncorrelated
 variables from DDand TD equations are correlated

35

(b) Static relative positioning


• In static relative positioning for baseline vector between points A and B,
the two receivers must remain stationary throughout the observations.
Single, double and triple differences (for phase solution) can be
constructed as shown below:

(i) Single difference (SD) for phase

• SD can be expressed for each satellite and for each epoch

1
 AB   AB
j j j
(t )  (t )  N AB
j
 f   AB (t )

n j .nt  3  n j  nt

nt 
3  n  j

 n  1
j

• One satellite does not provide a solution since denominator will become
zero. With two satellites, nt  5, and for nj = 4, nt  7/3 (or 3)
36
(ii) Double difference (DD) for phase
• For DD, two satellites are needed. For nj satellites, therefore, (nj – 1) DD
are formed at each epoch. So total number of DD are (nj – 1) nt.

1
 AB
jk
(t )    AB
jk
(t )  N AB
jk


(n j  1).nt  3  (n j  1)

nt 
 n  2
j

 n 1
j

• With minimum nj = 2 satellites, nt  4, and for nj = 4, nt  2.


• To avoid linearly dependent equations when forming a DD, a reference
satellite is chosen, against which the measurements of other satellites are
differenced.
• For example, for satellite nos. 6, 9, 11, 12, and 16 with 6 as reference
satellite, the following DD are formed (9-6), (11-6), (12-6). Other DD (say
11-9 can be formed by subtracting 11-6 and 9-6) linear combinations and
thus linearly dependent. 37

(iii) Triple difference (TD) for phase


• For single TD, two epochs are needed. Hence, for nt epochs, (nt – 1)
linearly independent epoch combinations are possible. So total
number of TD are (nj – 1) (nt - 1). 1
 AB
jk
(t12 )    AB
jk
(t12 )

(n j  1).(nt  1)  3

nt 
 n  2
j

 n  1
j

• With minimum nj = 2 satellites, nt  4, and for nj = 4, nt  2.

38
(c) Kinematic case
• Geometric distance in static sense for point A (indicating time dependence) is
given as:  Aj (t )   X j (t )  X A (t )   Y j (t )  YA (t )    Z j (t )  Z A (t ) 
2 2 2

• In above model, there are nt unknown clock biases and 3nt unknown coordinates
for code-based measurements. To solvable system of equations, we need nj.nt ≥
4nt i.e. nj ≥ 4. i.e. if four satellites are tracked, a Kinematic point positioning
solution can be made

• For kinematic phase-based relative positioning, we can write SD, DD, and TD
equations as follows: SD : n j .nt  3nt  n j  nt 


DD : (n j  1).nt  3nt  (n j  1) 

TD : (n j  1).(nt  1)  3nt 

 None of the above models give useful solution for nt = 1. Solution is possible by
assuming known ambiguity parameters. If we ignore these in SD and DD, the modified
requirements for any nt are
SD : n j  4; DD : (n j  1)  4
 TD could be used if coordinates of roving receiver are known at reference epoch. In this
case: TD : (n j  1).(nt  1)  3(nt  1)  n j  4
39

Summary
Sr. Survey Type Formula
1 Absolute (Static)
Code SPP n j .nt  3  nt
3
nt 
n j 1
Phase SPP n j nt  3  n j  nt
 n  3
nt   j
 n j – 1 
 
2 Relative (Static)
Phase SD n j .nt  3  n j  nt
3  n 
nt 
 n  1
j
j
Data types (code/phase):
Phase DD ( n j  1).nt  3  ( n j  1)
2  n  j
• Zero order (raw code or phase)
nt 
 n  1j

Phase TD (n j  1).( nt  1)  3 • First order (single difference)


 n  2
j
nt 
 n  1
j
• Second order (double
3 Relative (Kinematic)
Code undifferenced nj.nt ≥ 4nt or nj ≥ 4
difference)
Phase SD SD : n j .nt  3nt  n j  nt

With SD ambiguity resolved:


• Third order (triple difference)
SD : n j  4
Phase DD DD : (n j  1).nt  3nt  ( n j  1)

With DD ambiguity resolved:


DD : ( n j  1)  4
Phase TD TD : (n j  1).( nt  1)  3nt

With coordinates of roving receiver


known at reference epoch
TD : ( n j  1).(nt  1)  3(nt  1)  n j  4
40
Observation equations for SD
• Basic equation
 AB
j
(t )   Bj (t )   Aj (t ) 

1 j 
    B (t )   A(t )    N B  N A   f   B (t )   A(t )   I B ,  I A,
j j j j j j

      


 AB
j
( t )
j
N AB  AB (t ) j
I AB , 

f 
 TB (t )  TA (t )   d AB , (t )   AB , (t )
j j j j

c     
j
TAB (t ) 

• A simplified phase point positioning equation can be written as

j
(t )  X i 0 j
(t )  j
(t ) 
 ij (t )   ij0(t )  c j (t )  i j   X X i  Y j Y i 0 Yi  Z j Z i 0 Z i  c i (t )   N i j   i j
 i 0(t )
j
 i 0(t )  i 0(t )

• Where i j   ri j  I i j  Ti j  TGDi j 

• Equations for base A and rover B


j
(t )  j
(t )  j
(t )  
Rover B :  Bj (t )   Bj 0(t )  c j (t )   Bj    X j X B 0 X B  Y j Y B 0 YB  Z j Z B 0 Z B  c B (t )   N Bj   Bj 
 B 0(t )  B 0(t )  B 0(t ) 

Base A :  A(t )   A0(t )  c j (t )   Aj   c A(t )   N Aj   Aj
j j

41 

• Features of previous equation:


 Left member corresponds to prefit-residuals (PR) and contains the modeled
part of the range errors.
 Term ε contains the non-modeled error part.
 Geometric range ρ has been linearized only for the rover, because the reference
station coordinates are known/fixed (∆ ∆ ∆ 0).
 Being a great part of the errors common to both receivers, the noise term
would have reduced considerably.
 One obtains linear equation system of the same kind for the absolute
positioning, with the clock offset to be estimated relative to the reference
receiver clock.


(t ) 
j
(t ) 
j
(t ) 
j
Rover : PRBj (t )   X j X B 0 X B  Y j Y B 0 YB  Z j Z B 0 Z B  c B (t )   N Bj   Bj 
 B 0(t )  B 0(t )  B 0(t ) 


Reference : PRA (t )  c A(t )   N A   A
j j j


         j 
j j j
t t t

 PRAB
j

(t )    X j X B 0  X B   Y j Y B 0  YB   Z j Z B 0  Z B  c   AB (t )    N AB
( )
 B 0(t ) 
( )
 B 0(t ) 
( )
 B 0(t ) 
j
  AB 
   
   
  

a Xj ( t )
B
aYj ( t )
B
aZj ( t )
B 
42
SD Observation equation


 PR
1
AB 
(t1 ) 



 PR
2
(
AB 1 t )

 a1X B (t1 )
 2
aY1B (t1 ) a1Z B (t1 )  0 0 0 1 0 0

 a X B (t1 ) a (t1 )
2
a (t1 )
2
0 


 PR
3
(
AB 1 t )
  3
YB ZB 0 0 1 0 0
  X B 
 a X B (t1 ) a (t1 )
3
a (t1 )
3
0 0  0 1 0 0  
  PR  YB ZB
4
( t )  YB 
 AB 1
  a 4 (t ) a (t1 )
4
a (t1 )
4
0 0 0  1 0 0
 XB 1 YB ZB
  Z B 

  PR
AB (t2 )
1

  a1X B (t2 ) aY1B (t2 ) a1Z B (t2 )  0 0 0 0 1 0 
N AB
1 
 2   

 PR 
AB (t2 ) 
2
 a X (t2 ) a (t2 ) a (t2 ) 0 
2 2
0 0 0 1 0  
L  
YB ZB N AB
2

 ; A   3B ; X   
  PR 
AB (t2 ) 
3
 a X B (t2 ) a (t2 ) a (t2 ) 0
3
YB
3
ZB 0  0 0 1 0  N AB
3

   a 4 (t )  0 1 0   
 PR  N AB
4
aY4B (t2 ) aZ4B (t2 ) 0 0 0
 AB (t2 )   
3
 XB 2 
   a1X B (t3 ) a (t2 ) a (t3 ) 
1 1
0 0 0 1 c   AB (t1 )  
 PR  YB ZB 0 0
 t c   AB (t2 )  
1
(
AB 3  )  2 
 a X B (t3 ) a (t2 ) a (t3 )
2 2
0  0 0 0 0 1 c  (t ) 
  AB 3  
 
 PR 
YB ZB
 t  3 
2
AB 3 
( )
 a X B (t3 ) aY3B (t3 ) aZ3 B (t3 ) 0 0  0 0 0 1
 
  PR
3
t
AB 3 
( )  a 4 (t )
 XB 3 a (t3 ) a (t3 )
4
YB
4
ZB 0 0 0  0 0 1 
 
   PR
4
(
BA 3t )

X B  X A  bAB
 X B  X A   X AB 
bAB   YB  YA    YAB 
 Z B  Z A   Z AB  43

Observation equations for DD


• DD Observable 1 1
 AB  kAB (t )  N AB , (t )   AB , (t )
jk
(t )  jk
 T AB
jk
(t )  d AB
jk jk

 
• Ignoring residual ionospheric and tropospheric terms since they are
expected to cancel over short baseline and the unknown carrier phase
multipath (it is treated as model error and ignored), we can write these
equations as:
1 jk jk 
 AB
jk
(t )   AB (t )  N AB 
 
jk jk 
LAB   AB (t )   AB (t )   N AB 
jk jk

 AB
jk
(t )    kAB (t )   AB
j
(t )    kB (t )   kA(t )   Bj (t )   Aj (t )

44
• Each of the above terms could be linearized like the point positioning
case as follows






 AB
jk
(t )   kB (t )   kA(t )   Bj (t )   Aj (t ) 

k
(t )  X B 0 k
(t )  Y B 0 k
(t )  Z B 0
   B 0(t ) 
k X X B  Y YB  Z Z B 
 B 0(t )
j
 B 0(t )
k
 B 0(t )
k 
 
 B (t ) 
k


X
j
(t )  X B 0 Y
j
(t )  Y B 0 Z
j
(t )  Z B 0 
  B 0(t )  X B  YB  Z B 
j

 B 0(t )
j
 B 0(t )

j
 B 0(t )
j

 B (t )
j 

X (t )  X A0 X  Y (t )  Y B 0 Y  Z (t )  Z B 0 Z 
k k k
  A0(t ) 
k
A A A 
 k
(t )  k
 
B 0 B 0 (t )  k
B 0 (t )
 A(t )
k


X
j
(t )  X A0 X  Y
j
( t )  Y A0 Y  Z
j
(t )  Z A0 Z 
  A0 (t ) 
j
A A A 
 A0(t )
j
 
j
A 0(t )  A0(t )
j
 
 A(t )
j
45 

• Substituting different values


l AB (t )   X (t )X A   Y (t )YA   Z (t )Z A   X (t )X B   Y (t )YB   Z (t )Z B   N AB
jk jk jk jk jk jk jk jk
A A A B B B

• Left side of equation comprise measurement terms and terms computed


from approximates quantities:
l AB (t )   AB (t )  A0(t )   B 0(t )   A0(t )   B 0(t )
jk jk j j k k

• where X
k
(t )  X A0 X j (t )  X A0 
 (t )   
jk

 Aj 0(t ) 
XA
 kA0(t )
Y (t )  Y A0  Y (t )  Y A0 
k j
 YA
jk
(t )   
 kA0(t )  Aj 0(t ) 
Z (t )  Z A0  Z (t )  Z A0 
k j
 Z A (t )  
jk

 kA0(t )  Aj 0(t ) 

X
k
(t )  X B 0 X (t )  X B 0 
j
 X B (t )   
jk

 kB 0(t )  Bj 0(t ) 

Y
k
(t )  Y B 0 Y j (t )  Y B 0 
 YB (t )   
jk

 kB 0(t )  Bj 0(t ) 

  Z B0 
k j
Z (t ) Z B0  Z (t )
 Z B (t )  
jk
j 46 
 B 0(t )
k
 B 0(t ) 
• In relative positioning, one of the coordinates should be known. This can
be provided by taking: X A  YA  Z A  0

• This will result in slight change in the left and right hand side of equation
as follows:

jk
LHS : l AB (t )   AB
jk
(t )  Aj (t )   Bj 0(t )   kA(t )   kB 0(t ) 

RHS :  XjkA (t )X A   YjkA (t )YA   ZjkA (t )Z A   XjkB (t )X B   YjkB (t )YB   ZjkB (t )Z B   N AB
jk

  XjkB (t )X B   YjkB (t )YB   ZjkB (t )Z B   N AB


jk

47

• With four satellites (j, k, l, m), and j as the reference satellite, and two
different epochs (t1, t2), the following system of double differenced
equations can be solved:
 l AB
jk
(t1 )   XjkB (t1 ) jk
 Y (t1 )
jk
 Z (t1 )  0 0  X B 
 jl   jl 
B B

0  0  Y 
 X B (t1 )  Y (t1 )  Z (t1 )
jl jl
 l AB (t1 )  B B  B
 l AB
jm
(t )   Xjm (t1 ) jm
 Y (t1 )
jm
 Z (t1 ) 0 0   Z B 
l   jk 1  ; A   jkB B B
 ; X   jk 
l AB (t2 )   X B (t2 )  Y (t2 )
jk
B
 Z (t2 )
jk
B
 0 0  N AB 
l AB (t ) 
jl  jl (t )  Y (t2 )
jl
 Z (t2 )
jl
0  0  N AB
jl 
 jm 2   XjmB 2 B B
  jm 
l AB (t2 )   X B (t2 )  Y (t2 )
jm
B
 Z (t2 )
jm
B
0 0    N AB 

48
4. Correlation amongst phase combinations
(i) Correlation for Single differences
• For two base lines A-B and A-C and for satellite j at epoch t, the two SDs
can be written as follows:
  Aj (t ) 
  AB
j
(t )   Bj (t )   Aj (t )   1 1 0   
SD   j   j  ;C    ;    Bj (t ) 
  (t )    (t )   (t ) j
 1 0 1
 AC   C   k 
 C (t ) 
A

• The matrix form of SD can be written as SD  CФ

• For two points A and B and satellite j and k at epoch t, we get


  Aj (t ) 
 j 
  AB
j
(t )   Bj (t )   Aj (t )   1 1 0 0   B (t ) 
SD   k   k  ; C    ;    k 
  (t )    (t )   k (t )   0 0 1 1
 AB   B A    A (t ) 
  k (t ) 
 B 
• For both SDs, it can be shown from covariance law   SD  C C T  C 2 IC T  2 2 I 

• Hence, SDs are uncorrelated. The dimension of the unit matrix


corresponds to the number of single differences at epoch t.

49

(ii) Correlation for Double differences


• Double difference with satellites j, k, l with j as the reference satellites at
epoch t can be formed as   AB
jk
(t )    AB
k
(t )   AB
j
(t ) 
DD   jl    l
  (t )    (t )   j (t ) 
 AB   AB AB 
  AB (t ) 
j

 1 1 0   k 
C  ; SD    AB (t ) 
 1 0 1  l 
  AB (t ) 
DD  C.( SD)
2 1
 DD  2 2  
1 2
• Thus the DD are correlated. The weight matrix P(t) is obtained from the
inverse of the covariance matrix (Hoffman-Wellenhoff, 2001):
1 1  2 1
P(t )   DD
1

2 2 3  1 2 

• Where two DD at one epoch are formed. With nDD as the number of DDs at
epoch t, the correlation matrix is given as
 4 1 1 1
 nDD 1 1  
 1 1 1  1 4 1 1
  P(t )   DD 
1
1 1  nDD
P(t )   1
 2 2 5  1 1 4 1
2 2  nDD  1  1 
DD
 
   1 1 1 4 
    nDD 
P for nDD = 4 50
(iii) Correlation for Triple differences
• For triple differences with satellites (j, k and l) at the same epochs (t2 and
t1) and sharing one satellite (j), for stations A and B, we have
 AB
jk
(t2 , t1 )   AB
jk
(t2 )   AB
jk
(t1 )
  kAB (t2 )   AB
j
(t2 )    kAB (t1 )   AB
j
(t1 )    AB
j
(t1 )   kAB (t1 )   AB
j
(t2 )   kAB (t2 )
 AB
jl
(t2 , t1 )   AB
jl
(t2 )   AB
jl
(t1 )
  lAB (t2 )   AB
j
(t2 )    lAB (t1 )   AB
j
(t1 )    AB
j
(t1 )   lAB (t1 )   AB
j
(t2 )   lAB (t2 )
  AB
j
(t1 ) 
 k 
  AB (t1 ) 
 l
  jk (t2 , t1 )   1 1 0 1 1 0    AB (t1 ) 
TD   AB  ; C    ; SD 
 jl  1 0 1 1 0 1   AB (t ) 
  AB (t2 , t1 ) 
j

 k 2 
  AB (t2 ) 
 l 
  AB (t2 ) 
TD  C.SD
• Triple difference are also correlated as we can see from the following
expressions T 2 T
TD  C  SD C  2 CC
 4 2
TD  2 2  
 2 4
51

5. Differential positioning
• Needs at least two receivers and improves accuracy of pseudoranges with
the help of reference and rover tracking the same satellite simultaneously:
 Reference (base) station at known location: Computes pseudorange correction
(PRC) and range rate correction (RRC) with known position information
 Remote receiver or rover: Located in same geographical area and receives PRC
and RRC and applies them to observations (in real-time to roving receivers using
a radio link, or may be applied in post-processing).
 Real-time DGPS is somewhat limited to near line-of-sight, whereas post-
processed DGPS can provide meter or sub-meter positions up to about 300 km
from the base station. DGPS is widely used to collect data for GIS applications.

52
5. 1 Code-based differential GNSS
• Code range at base station A to satellite j at epoch t0 can be given as

RAj (t0 )   Aj (t0 )   Aj (t0 )   j (t0 )   A (t0 )


  
PRC

True Geometric range (available from known reference station and satellite
coordinates)

Range bias depending on satellite and receiver (Radial orbital error, refraction effects)

Range bias (purely satellite dependent) (Satellite clock errors)


Receiver dependent range bias (Clock error, multipath)
PRC Pseudorange correction

PRC    Aj (t0 )  RAj (t0 )    Aj (t0 )   j (t0 )   A (t0 )

53

Pseudorange and range rate corrections (PRC)


• Pseudorange correction (PRC): Predicted PRC at station A for satellite j at
epoch t0 is j
PRC (t0 )   A (t0 )  RA (t0 )
j j

PRC j (t0 )     Aj (t0 )   j (t0 )   A (t0 ) 


Computed/geometric range (obtained from known position of
reference station and satellites
Measured range (an observed quantity)

• Range rate correction (RRC): Time derivative of range correction for an


epoch t with respect to reference epoch t0, it is calculated as
PRC j (t )  PRC j (t0 )  RRC j (t0 ) (t  t0 )

• is called Latency; Latency
• Higher accuracies if
• smaller variations of PRC and
• smaller latencies. 54
• At rover site B and epoch t RBj (t0 )   Bj (t0 )   Bj (t0 )   j (t0 )   A (t0 )
• Applying the correction gives
RBj (t )corrected  RBj (t )  PRC j (t )
  
measured pseudorange predicted pseudorange correction

RBj (t )corrected   Bj (t )    Bj (t )   Aj (t )     B (t )   A (t )    j (t )   j (t ) 
     
highly correlated satellite-receiver bias similar satellite bias = 0

 Satellite biases cancel as the observation is to the same satellite


 For small base-rover receiver separation, satellite-receiver specific biases are
highly correlated (radial orbital error and refraction); hence these are
significantly reduced j j
RB (t )corrected   B (t )   AB (t )

 AB (t )   B (t )   A (t )
 Assuming negligible multipath, is essentially combined receiver
clock bias:  AB (t )  c AB (t )  c B (t )  c A (t )
 With Zero latency, it is same as the SD of code ranges; thus differential
positioning converts to relative positioning; positioning at rover done with
55
corrected pseudorange to improve accuracy.

5. 2 Phase-based differential GNSS 1


• Using  ij (t )    ij (t )  N ij  f  ij (t )

j

• Phase at base station A at epoch t0 is given in an analogous manner to code


 Aj (t )   Aj (t0 )   Aj (t0 )   j (t0 )   A (t0 )   N Aj
• Phase correction at reference epoch t0
PRC j (t0 )   Aj (t0 )   Aj (t0 )

  Aj (t0 )   j (t0 )   A (t0 )   N Aj


• In absence of multipath, correction is reduced to mainly receiver clock
differences with = -  Bj (t )corrected   Bj (t )   AB (t )   N AB
j

 AB (t )   B (t )   A (t )

 c AB (t )  c B (t )  c A (t )
• Point positioning at the rover site B is performed with corrected phase
pseudoranges,
• Basic configuration for DGNSS with phase ranges is identical with that for
kinematic point positioning with phase ranges; also used for precise
kinematic surveys (OTF: On the Fly).
• DGNSS with phases having a latency of zero is called RTK survey.
56

You might also like