Professional Documents
Culture Documents
Lecture UPC 3.v0.0
Lecture UPC 3.v0.0
Lecture 3
Position estimation with
pseudoranges
Contact: jaume.sanz@upc.edu
gAGE/UPC
Authorship statement
The authorship of this material and the Intellectual Property Rights are owned by
J. Sanz Subirana and J.M. Juan Zornoza.
This authorship statement must be kept intact and unchanged at all times.
24 April 2014
gAGE/UPC
Input:
- Pseudoranges (receiver-satellite j): P j
- Navigation message. In particular:
• satellite position when transmitting signal: r j = (x j , y j , z j )
• offsets of satellite clocks: dt j
(j = 1,2,…n) (n>=4)
gAGE/UPC
Unknowns:
- receiver position : r = (x , y, z)
- receiver clock offset: DT
sat sat
C1rec
Linearising ρ around an ‘a priori’ receiver position ( x0,rec , y0,rec , z0,rec )
where:
∆xrec =xrec − x0,rec ; ∆yrec =yrec − y0, rec ; ∆zrec = zrec − z0, rec
Prefit-residuals (Prefit)
x0,rec − x sat y0,rec − y sat z0,rec − z sat
sat
C1rec ∑δk
− ρ0,satrec + c dt sat −=
ρ sat
∆xrec +
ρ sat
∆yrec +
ρ sat
∆zrec + c dtrec
gAGE/UPC
22
− x sat 2 y0,rec − y sat 2 z0,rec − z sat 2 ∆y
Prefit
Prefit
0, rec
1 ∆yrec
rec
= ρ 0,satrec2 ρ0,satrec2 ρ0,satrec2
........
........ ∆∆zzrec
rec
..........
Prefit
Prefit nn
x ccdt
dtrec
rec
0, rec − x y0,rec − y sat n z0,rec − z sat n
sat n
1
ρ 0,satrecn ρ0,satrecn ρ0,satrecn
Observations Unknowns
(measured/computed)
Measurements modelling:
Prefit residual is the difference between measured and modeled
pseudorange:
=
Prefit rec C1rec [measured] − C1rec [modelled]
sat sat sat
where:
gAGE/UPC
sat
C1rec = ρ rec
[modelled] sat
,0 − c (
dt sat
+ ∆rel sat
) + Trop sat
rec + Ion sat
1rec + TGD sat
C1
sat
C1rec = ρ rec
[modelled] sat
,0 − c (
dt sat
+ ∆rel sat
) + Trop sat
rec + Ion sat
1rec + TGD sat
sat
C1rec = ρ rec
[modelled] sat
,0 − c (
dt sat
+ ∆rel sat
) + Trop sat
rec + Ion sat
1rec + TGD sat
ρ rec
sat
Of course, receiver coordinates are not known (is the target of this
gAGE/UPC
Of course, receiver coordinates ( xrec , yrec , zrec ) are not known (they are
the target of this problem). But, we can always assume that an
“approximate position ( x0,rec , y0,rec , z0,rec ) is known”.
C1 be
computed from the
time
navigation message
systemand
C1= c ∆t = c [trec(TR)-tems(TS)]
of Astronomy
tems(TS) = trec(TR)-C1/c
Emission time
gAGE/UPC
Distance ∆r
gAGE/UPC
ρ’
gAGE/UPC
sat
C1rec = ρ rec
[modelled] sat
,0 − c (
dt sat
+ ∆rel sat
) + Trop sat
rec + Ion sat
1rec + TGD sat
t0 a0 a1 a2
YY MM DD H M S
PRN
2000 km, with a sharp electron density maximum at around 350 km.
The ionosphere delays code and advances carrier by the same amount
The ionospheric delay depends on sat = 40.3 I
Ion1 rec
signal frequency as given by: f12
IPP
computational complexity.
Slant delay
• Minimum user computer storage
• Minimum number of coefficients
transmitted on satellite-user link
• At least 50% overall RMS ionospheric
error reduction worldwide.
Obliquity factor
• It is assumed that the electron IonSLANT = IonVERT m (elev)
content is concentrated in a thin R 2
−1/ 2
layer at 350 Km in height. ) 1 −
m (elev= E
cos (elev)
RE + h
• The slant delay is computed
from the vertical delay at the
ionospheric Pierce Point (IPP),
gAGE/UPC
POINTS (IPP)
IPP
) 1 −
m (elev= E
cos (elev)
RE + h
gAGE/UPC
Ionospheric Layer
(350 Km in height)
20 2π (t − Φ )
DC + A cos (day )
P
Amplitude IonVERT =
15 DC ; if 2π (t − Φ ) > π (night )
P 2
10
Being :
3 3
5
½*Period
=A
=
n
n 0=
∑=
α φ ; P ∑β φ
n
n
n
Dc=5ns n 0
φ = Geomagnetic Latitude
4 8 12 16 18 24
Local Time (hours) Where:
IonSLANT = IonVERT m (elev)
gAGE/UPC
DC= 5ns
−1/ 2
R
2
Φ= 14 (ctt. phase offset)
) 1 −
m (elev= E
cos (elev)
E R + h t = Local Time
elev, φ
0.957259887797D+00 0.241437500000D+03-0.167990552187D+01-0.823998608564D-08
0.174650132022D-09 0.100000000000D+01 0.100200000000D+04 0.000000000000D+00
0.320000000000D+02 0.000000000000D+00 0.465661287308D-09 0.191000000000D+03
0.172800000000D+06 0.000000000000D+00 0.000000000000D+00 0.000000000000D+00
Klobuchar model
STEC: I ON SLANT
TEC: I on VER T
gAGE/UPC
Trop sat
= (d dry + d wet ) ⋅ m(elev) d dry= 2.3exp(−0.116 ⋅10−3 H ) meters
rec
d wet = 0.1m ; [ H : heigh ] over the sea level
gAGE/UPC
1.001
m(elev) =
0.002001 + sin 2 (elev)
sat
C1Master
rec [modelled] =
of Science in GNSS ρ sat
0, rec − c (
dt sat
+ ∆rel sat
) + Trop sat
rec + Ion sat
1rec + TGD sat
@ J. Sanz & J.M. Juan
41
gAGE
research group of Astronomy and Geomatics
1.001
m(elev) =
0.002001 + sin 2 (elev)
gAGE/UPC
K=sat
1, rec K1,rec + TGD sat
f12
K= K 2,rec + 2 TGD sat
sat
2, rec
f2
sat
CMaster
1rec [modelled]
of = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
Science in GNSS
sat
+ Ion1rec
sat
+ TGD sat
@ J. Sanz & J.M. Juan
gAGE
research group of Astronomy and Geomatics
gAGE/UPC Range variation: Instrumental delays (TGD)
Antispoofing (A/S):
The code P is encrypted to Y. Wavelength σ noise Main
Only theGPS
code Csignal
at (chip-length) (1% of λ) [*] characteristics
frequency L1 is available.
Code measurements
C1 300 m 3m
Unambiguous
P1 (Y1): encrypted 30 m 30 cm
but noisier
P2 (Y2): encrypted 30 m 30 cm
Phase measurements
L1 19.05 cm 2 mm Precise
L2 24.45 cm 2 mm but ambiguous
[*] codes may be smoothed with the phases in order to reduce noise
gAGE/UPC
Butterfly shape
Same environment!
gAGE/UPC
sat
C1rec = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
[modelled] sat
+ Ion1rec
sat
+ TGD sat
Master of Science in GNSS @ J. Sanz & J.M. Juan
56
gAGE
Transmission time:
979 208818 10h 0m 18s
PRN
14 98 10 13 12 0 0 +5.65452501178E-06 +9.09494701773E-13 +0.000000000000E+00
+1.28000000000E+02 -6.10000000000E+01 +4.38125402624E-09 +8.198042513605E-01
-3.31364572048E-06 +1.09227513894E-03 +5.67547976971E-06 +5.153795101166E+03
+2.16000000000E+05 -6.33299350738E-08 +1.00409621952E+00 -3.725290298462E-09
+9.73658001335E-01 +2.74031250000E+02
GPS week
+2.66122811383E+00 -8.081050495434E-09
s for PRN14:
PRN t0 a0 a1 a2
14 98 10 13 12 0 0 +5.65452501178E-06 +9.09494701773E-13 +0.000000000000E+00
+1.28000000000E+02 -6.10000000000E+01 +4.38125402624E-09 +8.198042513605E-01
-3.31364572048E-06 +1.09227513894E-03 +5.67547976971E-06 +5.153795101166E+03
+2.16000000000E+05 -6.33299350738E-08 +1.00409621952E+00 -3.725290298462E-09
+9.73658001335E-01 +2.74031250000E+02 +2.66122811383E+00 -8.081050495434E-09
-1.45720352451E-10 +1.00000000000E+00 +9.79000000000E+02 +0.000000000000E+00
+3.20000000000E+01 +0.00000000000E+00 -2.32830643654E-09 +1.280000000000E+02
+2.08818000000E+05 +0.00000000000E+00 +0.00000000000E+00 +0.000000000000E+00
t = 38230 sec
t0= 12h 0m 0s= 43200 s
sat
C1rec = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
[modelled] sat
+ Ion1rec
sat
+ TGD sat
Master of Science in GNSS @ J. Sanz & J.M. Juan
58
gAGE
3. Satellite-receiver geometric range computation:
Use the following values (4789031, 176612, 4195008) as
research group of Astronomy and Geomatics
approximate coordinates.
PRN 14
t = 38230 sec= 10h 37m 10s
4 L1 L2 C1 P2 # / TYPES OF OBSERV
Thence:
gAGE/UPC
T[emission]= Y= 122468524.004
38229.921 sec
Orbit.f Z= 8245076.145
CTS [emission]
Use the selected
ephemeris for PRN14
(from file brdc2860.98n)
sat
CMaster
1rec [modelled] = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
of Science in GNSS
sat
+ Ion
@
1rec + TGD
sat sat
J. Sanz & J.M. Juan
63
gAGE 4. Satellite Instrumental delay (TGD): From file
brdc2860.98n, compute the Total Group Delay for PRN14:
research group of Astronomy and Geomatics
sat
C1rec = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
[modelled] sat
+ Ion1rec
sat
+ TGD sat
Master of Science in GNSS @ J. Sanz & J.M. Juan
64
gAGE5. Relativistic clock correction:
PRN e sqrt(a)
research group of Astronomy and Geomatics
µa =µ 3.986005 ⋅1014 m3 s −2
∆rel sat =
−2 −2.3 ⋅10−10 s
e sin( E ) =
c2 c = 299792458 m s −1
gAGE/UPC
sat
C1rec = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
[modelled] sat
+ Ion1rec
sat
+ TGD sat
Master of Science in GNSS @ J. Sanz & J.M. Juan
65
gAGE
6. Tropospheric correction
sat
Troprec = 6.76m
−0.116⋅10−3 H
d dry = 2.3m
2.3e
See klob.f
d wet = 0.1m
1.001 π
m(elev) = =elev =
20.57 0.359rad
0.002001 + sin (elev)
2 180
H = 160m (heigh over the ellipsoid )
sat
C1rec = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
[modelled] sat
+ Ion1rec
sat
+ TGD sat
Master of Science in GNSS @ J. Sanz & J.M. Juan
66
gAGE
7. Ionospheric correction
t = 38230sec
( x, y, z ) satellite = (11453350.2771, 22468589.7975, 8245076.1448)CTS [ reception ]
( x0 , y0 , z0 ) receiver = (4789031, 176612, 4195008)CTS [ reception ]
Approximate values for
receiver or satellite
gAGE/UPC
sat
C1rec = ρ0,satrec − c ( dt sat + ∆rel sat ) + Troprec
[modelled] sat
+ Ion1rec
sat
+ TGD sat
Master of Science in GNSS @ J. Sanz & J.M. Juan
67
gAGE
research group of Astronomy and Geomatics
7. Compute the modeled pseudorange.
sat
C1rec = ρ rec
[modelled] sat
,0 − c (
dt sat
+ ∆rel sat
) + Trop sat
rec + Ion sat
1rec + TGD sat
ρ0,satrec = 23616699.124 m
c dt sat =5.65 ⋅10-6 c =1693.828 m
c ∆rel sat =
−2.33 ⋅10-10 c =
−0.071m
rec [modelled] = 23615021.689m
sat
Trop sat
= 6.760 m C1
rec
sat
Ion1rec = 10.260 m
TGD sat = −0.698 m
gAGE/UPC
sat
Pref rec =C1rec
sat
− C1[mod]rec
sat
=ρ rec
sat
− ρ0,satrec + c dtrec + K1rec + ε
Previously calculated
gAGE/UPC
Input:
- Pseudoranges (receiver-satellite j): P j
- Navigation message. In particular:
• satellite position when transmitting signal: r j = (x j , y j , z j )
• offsets of satellite clocks: dt j
(j = 1,2,…n) (n>=4)
gAGE/UPC
Unknowns:
- receiver position : r = (x , y, z)
- receiver clock offset: DT
sat sat
C1rec
Linearising ρ around an ‘a priori’ receiver position ( x0,rec , y0,rec , z0,rec )
where:
∆xrec =xrec − x0,rec ; ∆yrec =yrec − y0, rec ; ∆zrec = zrec − z0, rec
Prefit-residuals (Prefit)
x0,rec − x sat y0,rec − y sat z0,rec − z sat
sat
C1rec ∑δk
− ρ0,satrec + c dt sat −=
ρ sat
∆xrec +
ρ sat
∆yrec +
ρ sat
∆zrec + c dtrec
gAGE/UPC
22
− x sat 2 y0,rec − y sat 2 z0,rec − z sat 2 ∆y
Prefit
Prefit
0, rec
1 ∆yrec
rec
= ρ 0,satrec2 ρ0,satrec2 ρ0,satrec2
........
........ ∆∆zzrec
rec
..........
Prefit
Prefit nn
x ccdt
dtrec
rec
0, rec − x y0,rec − y sat n z0,rec − z sat n
sat n
1
ρ 0,satrecn ρ0,satrecn ρ0,satrecn
T sat n
ρ0 rec
−
ρ0 sat
rec
n
ρ
ˆ 0 sat
gAGE/UPC
rec
sat n
ρT0 rec
ρˆ T0 rec
sat n
≡ Unitary Line-Of-Sight
ρ sat 1
0 rec vector from receiver
to satellite
Master of Science in GNSS @ J. Sanz & J.M. Juan
73
(x,y,z) coordinates
gAGE x0,rec − x sat1 y0,rec − y sat1 z0,rec − z sat1
1
ρ0,satrec1 ρ0,satrec1 ρ0,satrec1
Prefit
Prefit ∆∆xxrec
11
x rec
research group of Astronomy and Geomatics
22
− x sat 2 y0,rec − y sat 2 z0,rec − z sat 2 ∆y
Prefit
Prefit
0, rec
1 ∆yrec
rec
= ρ 0,satrec2 ρ0,satrec2 ρ0,satrec2
........
........ ∆∆zzrec
rec
..........
Prefit
Prefit nn
x ccdt
dtrec
rec
0, rec − x y0,rec − y sat n z0,rec − z sat n
sat n
1
ρ 0,satrecn ρ0,satrecn ρ0,satrecn
Prefit1 − cos el1 sin az1 − cos el1 cos az1 − sin el1 1 ∆erec
2
gAGE/UPC
∆n
− 2 2
− 2 2
− 2
=
Prefit cos el sin az cos el cos az sin el 1 rec
........ .......... ∆urec
Prefit − cos el sin az − cos el cos az − sin el 1 rec
n n n n n n
c dt
COMMENTS:
1
gAGE ρ0,satrec1 ρ sat1
0, rec ρ sat1
0, rec
Prefit1 x ∆xrec
2
− x sat 2 y0,rec − y sat 2
z0,rec − z sat 2 ∆y
0,rec 1
Prefit = ρ 0,satrec2 ρ0,satrec2 ρ0,satrec2 rec
........ ∆zrec
research group of Astronomy and Geomatics
..........
Prefit n x c dtrec
− x sat n y0,rec − y sat n z0,rec − z sat n
0,rec 1
ρ 0,satrecn ρ0,satrecn ρ0,satrecn
Of course, receiver coordinates ( xrec , yrec , zrec ) are not known (they are
the target of this problem). But, we can always assume that an
“approximate position ( x0,rec , y0,rec , z0,rec ) is known”.
Thence, as it will be shown in next lesson, the navigation problem will
consist on:
1.- To start from an approximate value for receiver position
( x0,rec , y0,rec , z0,rec )( e.g. the Earth’s centre ) to linearise the equations
2.- With the pseudorange measurements and the navigation
equations, compute the correction ( ∆xrec , ∆yrec , ∆zrec ) to have
improved estimates:= ( x , y , z ) ( x , y , z ) + ( ∆x , ∆y , ∆z )
gAGE/UPC
3.- Linearise the equations again, about the new improved estimates,
and iterate until the change in the solution estimates is sufficiently
small.
Master of Science in GNSS @ J. Sanz & J.M. Juan
76
gAGE For all sat. x0,rec − x sat1 y0,rec − y sat1 z0,rec − z sat1
in view
ρ0,satrec1 ρ0,satrec1 ρ0,satrec1
1
Prefit
Prefit ∆∆xxrec
11
x rec
research group of Astronomy and Geomatics
22
− x sat 2 y0,rec − y sat 2 z0,rec − z sat 2 ∆y
Prefit
Prefit
0, rec
1 ∆yrec
rec
= ρ 0,satrec2 ρ0,satrec2 ρ0,satrec2
........
........ ∆∆zzrec
rec
..........
Prefit
Prefit nn
x ccdt
dtrec
rec
0, rec − x y0,rec − y sat n z0,rec − z sat n
sat n
1
ρ 0,satrecn ρ0,satrecn ρ0,satrecn
yy = G x
gAGE/UPC
y1 m x1 + n y1 x1 1
y mx +n y x 1 m
2 2 2 +ε ⇒ y Gp+ε
=
gAGE/UPC
2
=
⇒
n
N ×1 N × 2 2 ×1
yN m xN + n yN N
x 1
Master of Science in GNSS @ J. Sanz & J.M. Juan
79
gAGE y1 m x1 + n y1 x1 1
y mx +n y x 1 m
2
=
⇒ 2 2 +ε ⇒ y Gp+ε
=
research group of Astronomy and Geomatics
2
n
N ×1 N × 2 2 ×1
yN m xN + n yN N
x 1
This is an over-determined (incompatible) system of equations
(due to the measurement noise ε).
It is evident that there is no straight line passing over all the data
points (red points). Thence, we have to look for a solution that
fits the measurements best in some sense.
y Note that, as G is not an squared
matrix (N>2), we cannot try:
y= G p ⇒ p= G −1y
But, GTG is a squared (N x N)
gAGE/UPC
yi
matrix, thence, we can try:
xi x G=
T
y GT G p ⇒
= pˆ (G T G ) −1 G T y
Master of Science in GNSS @ J. Sanz & J.M. Juan
80
gAGE
Results from Linear Algebra:
research group of Astronomy and Geomatics
N 2 Least Squares
=
2) p (G G ) G y ⇔ min=
ˆ T
y − y min ∑ ( yi − yi )
ˆ −1 T
ˆ
i =1 solution
where
yˆ = G pˆ
y − yˆ min ∑ ( yi − yˆi ) ?
min=
xi x i =1
y − yˆ min ∑ ( yi − yˆi ) ?
min=
i =1
yˆi
yi − yˆi
yi
gAGE/UPC
xi x
Master of Science in GNSS @ J. Sanz & J.M. Juan
82
The Least Squares solution gives the solution of equilibrium
gAGE
of the following physical system, in which the red dots (i.e. data
y points) are attached to the straight line by springs that can only
research group of Astronomy and Geomatics
yˆi
yi
N 2
min ∑ ( yi − yˆi )
i =1
gAGE/UPC
xi x
Master of Science in GNSS @ J. Sanz & J.M. Juan
83
Indeed, the equilibrium solution is reached when the Total
gAGE
Potential Energy of the system is the minimum. That is,
y assuming the same spring constant k: V = 1 k ∆y 2 = 1 k ( y − yˆ
i)
2
research group of Astronomy and Geomatics
i i i
2 2
1 N k
= k ∑ ( yi − yˆi )
2
VTOTAL
2 i =1 k
k
k
k
yˆi k k
k
yi
k
N 2
min (VTOTAL ) ⇒ min ∑ ( yi − yˆi )
i =1
gAGE/UPC
xi
N
x
min=
y − yˆ min ∑ ( y − yˆ )=
⇔ pˆ (G T G ) −1 G T y
2
i i
Master of Science in GNSS
i =1 @ J. Sanz & J.M. Juan
84
gAGE Let be the basic linearized GPS measurement equation:
y =Gx
research group of Astronomy and Geomatics
ˆ = ( G W G ) G Wy
−1 2
min = y − yˆ W min ∑ wi ( yi − yˆi )
2
t t
x i
yˆ = G xˆ
Master of Science in GNSS @ J. Sanz & J.M. Juan
85
Weighted Least Squares solution:
gAGE
y The same, but assuming different spring constants wi:
research group of Astronomy and Geomatics
1 1
Vi= wi ∆yi2= wi ( yi − yˆi )
2
2 2 wN
1 N
= ∑ wi ( yi − yˆi )
2
VTOTAL
2 i =1
yˆi w1 wj
wi
yi
w2
N 2
min (VTOTAL ) ⇒ min ∑ wi ( yi − yˆi )
i =1
gAGE/UPC
N xi 2 x
min= y − yˆ W min ∑ wi ( yi − =
yˆi ) ⇔ pˆ (G T WG ) −1 G T Wy
Master of Science in GNSS
i =1 @ J. Sanz & J.M. Juan
86
gAGE
Contents
research group of Astronomy and Geomatics
ˆ = ( G W G ) G Wy
−1 2
min = y − yˆ W min ∑ wi ( yi − yˆi )
2
t t
x i
yˆ = G xˆ
Master of Science in GNSS @ J. Sanz & J.M. Juan
88
Assuming that measurements Y have
gAGE random errors with zero mean and 1/ σ y21 0
variance σ2 , and assuming that error sources
for each satellite are uncorrelated with W=
research group of Astronomy and Geomatics
wi =
1
σ y2 ↑ ⇒ wi ↓
σ 2 i
− σ +σ
yi •- σ σ
greater error less weight σ •= 300Km= 1msec
•Dt
xˆ = ( G P G ) G t Py−1 y
t −1 −1
gAGE/UPC
Pxˆ = ( G P G)
And the error covariance matrix t −1 −1
for the estimation X is: y
1. Weighted average:
Let’s assume, that we have the
y ( n) = G ( n) x( n) prediction xˆ − (n) , with Pthence, −
−
ˆ (n)
x
−1
y ( n) G ( n) Py ( n ) 0
− = x( n) W=
0
Pxˆ − ( n )
xˆ ( n) I
Master of Science in GNSS
@ J. Sanz & J.M. Juan
94
gAGE −1
y ( n) G ( n) Py ( n ) 0
− = x( n) W=
0
Pxˆ − ( n )
research group of Astronomy and Geomatics
xˆ ( n) I
ˆ = ( G t Py−1 G ) G t Py−1 y
−1
x
Pxˆ = ( G P G)
t −1 −1
y
ˆ ( n)
x Pxˆ ( n ) G t ( n) Py−(1n ) y ( n) + Pxˆ−−1( n ) x
ˆ − ( n)
gAGE/UPC
−1
Pxˆ ( n ) G ( n ) P G ( n ) + P
t −1 −1
y(n) xˆ − ( n )
Master of Science in GNSS J. Sanz Subirana, JM. Juan Zornoza, M. Hernández-Pajares,
95
gAGE
research group of Astronomy and Geomatics
2.- Prediction
Scalar case:
xˆn− = φ xˆn −1
Thence, existing a linear relation between xˆn −1 and xˆn− , the
variance of the prediction will be: 2
σ xˆ − = φ 2 σ xˆ2n−1 + q 2
=
n
gAGE/UPC
xˆn− = φ xˆn −1
σ x2ˆ − φ 2 σ x2ˆn−1 + q 2
=
n
xn → x( n)
φ → Φ( n) Φ( n) : transition matrix
σ x2n
→ Px ( n ) Q( n) : process noise matrix
q 2
→ Q( n)
ˆ − ( n=
x ) Φ( n − 1) ⋅ x
ˆ ( n − 1)
gAGE/UPC
Pxˆ − ( n=
)
Φ ( n − 1) ⋅ Pxˆ ( n −1) ⋅ Φ t
( n − 1) + Q( n − 1)
ˆ − ( n)
x y ( n)
Pxˆ − ( n ) Py ( n )
Estimation
Prediction
−
(n) Φ xˆ (n − 1)
xˆ= Pxˆ ( n ) ⋅ G t Py−(1n ) y (n) + Pxˆ−−1( n ) xˆ − (n)
xˆ (n) =
−1
Pxˆ − ( n ) Φ Pxˆ ( n −1)Φt + Q
= = Pxˆ ( n ) G Py ( n ) G + Pxˆ − ( n )
t − 1 − 1
ˆ (0)
x
Pxˆ (0) ˆ ( n)
x
Pxˆ ( n )
gAGE/UPC
Initialization
ˆ − ( n)
x y ( n)
Pxˆ − ( n ) Py ( n )
Estimation
Prediction −1
−
xˆ (n) = xˆ − (n) + K (n) ⋅ y (n) − G (n) ⋅ xˆ − (n)
xˆ= (n) Φ xˆ (n − 1) −1
K (n) = Pxˆ − ( n ) ⋅ G (n) ⋅ G (n) ⋅ Pxˆ − ( n ) ⋅ G t (n) + Py ( n )
t
ˆ (0)
x
Pxˆ (0) ˆ ( n)
x
Pxˆ ( n )
gAGE/UPC
Initialization
ˆ − ( n=
) Φ( n − 1) ⋅ x
ˆ ( n − 1)
research group of Astronomy and Geomatics
x
Pxˆ − ( n ) =Φ ( n − 1) ⋅ Pxˆ ( n −1) ⋅ Φt ( n − 1) + Q( n − 1)
a) Static positioning:
State vector to be determined is X = (xrec , yrec , zrec , dtrec) where coordinates
(xrec , yrec , zrec) are considered constant (because receiver is fixed) and clock
offset dTrec is treated as white noise with zero mean and variance σ2Dt . In
these conditions, matrices have the form:
1 0
1 0
Φ( n) = Q( n) =
1 0
0 σ DT
2
gAGE/UPC
Being σ DT process noise associated to clock offset (in some way, the
2
* * *
Φ=1 x(n)=x(n-1)
Q=0 (no prediction error)
gAGE/UPC
-2σ
+σ
-σ
* * *
+σ
-σ
+2σ
Φ=0 x(n)=0 (zero mean)
Q=σ2 (prediction error noise)
gAGE/UPC
S/A=on
Master of Science in GNSS @ J. Sanz & J.M. Juan
105
gAGE
b) Kinematic positioning
research group of Astronomy and Geomatics
0 σ dx
2
0 σ dy
2
Φ( n) = Q( n) =
0 σ dz2
0 σ DT
2
2) In case of a slow moving vehicle, coordinates2 may be modeled as
random walk, process’ spectral density q = dσ , and the clock as a
dt
white noise:
1 qdx ∆t
1 qdy ∆t
Φ( n) = Q( n) =
gAGE/UPC
1 qdz ∆t
0 σ DT
2
dσ 2
∆t
dt
** *
ˆ − (=
x n) Φ(n - 1) ⋅ x
ˆ ( n − 1)
Pxˆ − ( n )= Φ(n - 1) ⋅ Pxˆ ( n −1) ⋅ Φ t (n - 1) + Q(n - 1)
gAGE/UPC
S/A=on
Master of Science in GNSS @ J. Sanz & J.M. Juan
109
Kinematic positioning: random walk noise coordinates and white noise clock
gAGE
research group of Astronomy and Geomatics
gAGE/UPC
S/A=on
Master of Science in GNSS @ J. Sanz & J.M. Juan
110
gAGE
research group of Astronomy and Geomatics
gAGE/UPC
S/A=on
Master of Science in GNSS @ J. Sanz & J.M. Juan
112
gAGE
research group of Astronomy and Geomatics
Thank you
gAGE/UPC