0% found this document useful (0 votes)
9 views94 pages

Gps Rtklib Seminor 1

The document outlines the agenda and content for a seminar on GNSS precise positioning using RTKLIB, held at Tokyo University of Marine Science and Technology in April 2011. It covers various topics including GPS/GNSS systems, signal structures, satellite constellations, and applications in military and civilian sectors. Additionally, it provides resources for RTKLIB packages and sample data for practical exercises.

Uploaded by

oscarlff
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)
9 views94 pages

Gps Rtklib Seminor 1

The document outlines the agenda and content for a seminar on GNSS precise positioning using RTKLIB, held at Tokyo University of Marine Science and Technology in April 2011. It covers various topics including GPS/GNSS systems, signal structures, satellite constellations, and applications in military and civilian sectors. Additionally, it provides resources for RTKLIB packages and sample data for practical exercises.

Uploaded by

oscarlff
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

測位航法学会 平成23年度全国⼤会 セミナー②

GNSS Precise Positioningg with RTKLIB


Part I

2011-4-25,26 @東京海洋⼤学品川 楽⽔会館 東京海洋⼤学 ⾼須 知⼆


Self Introduction

?
GpsTools 0.6.4 RTKLIB 2.4.0

2
Timetable
1.
1 GPS/GNSS
G S/G SS A il 25
April 9 30 10 40
9:30‐10:40
2. Signal and Receiver 10:50‐12:00
3. Standard Positioning 13:00‐15:10
4
4. RTKLIB 15:30‐16:40
15:30 16:40

5. RTK April 26 9:30‐10:40


6. PPP 10:50‐12:00
7
7. RTK System 13:00‐15:10
13:00 15:10
8. Advanced Topics 15:20‐16:20

3
0P
[Link]
ti

4
WiFi Connection:
SSID: ipntj_2011, PW: xxxxxxxx

RTKLIB Package:
[Link]
[Link] rtklib com/prog/rtklib 2 4 0 zip
[Link]
(23.0 MB, 26.1 MB)

S
Sample
l Data:
D
[Link]
(18.9MB)
5
1 GPS/GNSS
1.

6
GPS (Global Positioning System)
• NAVSTAR GPS
– Satellite navigation system developed by US DoD
– Operated by US Air Force GPS Directorate (GPS Wing, JPO)
• Historyy
– 1978/2 First satellite launch
– 1983 Freelyy available for civilian use
– 1993 Fully operational (FOC)
– 2000/5
/ S/A
/ Termination
– 2011/4 31 operational satellites (Test: PRN1=SVN49)

7
GNSS (Global Navigation Satellite System)
• GNSS (Global Navigation Satellite System)
– GPS (US)
– GLONASS (Russia)
– Galileo (EU)
– Compass (China)
• RNSS ((Regional
g Navigation
g Satellite System)
y )
– QZSS (Japan)
– IRNSS ((India))
• SBAS (Satellite Based Augmentation System)
– WAAS,
WAAS EGNOS,
EGNOS MSAS,
MSAS SDCM,
SDCM GAGAN
8
GPS/GNSS Applications
Military Applications: ...
Civill Applications:
l
Air Navigation Static positioning and timing
Nonprecision approach and landing Offshore resource exploration
Domestic en route Hydrographic surveying
Oceanic en route Aids to navigation
Terminal Time transfer
Remote areas Land surveying
Helicopter operations Geographical information systems
Aircraft attitude Space
Collision avoidance Launch
Air Traffic Control In‐flight/orbit
g
Land Navigation Reentry/landing
Vehicle monitoring Attitude measurement
Schedule improvement Search and Rescue
Minimal routingg Position reporting and monitoring
Law enforcement Rendezvous
Marine navigation Coordinated search
Oceanic Collision avoidance
Coastal ...
Harbor/approach ([Link], Introduction and Heritage of NAVSTAR, the
Inland waterways Global Positioning System, 1994)
9
GPS System
Space
p Segment
g
GPS
Satellites

Ranging Signal Command,


L1,L2,L5 Telemetry, Navigation Data
Ranging Signal
MSC (Master
Military Controll Station))
User Monitor
Stations
Ci il User
Civil U
Ground
Antennas
User Segment Control Segment
10
GPS Space Segment
• Satellite Constellation
– 6 Plane x 4 = 24 Satellites (Nominal)
– Altitude: 20,100km
– Inclination: 55°
– Period: 1/2 Sidereal Day (11h 58' 2")
GPS Block II Satellite Orbit Planes

([Link] ([Link]
11
GPS Satellites
1980 1990 2000
Block I

Block II

Block IIA

Block IIR

Block IIR‐M
Block IIF (2010‐), Block IIIA (2014‐)
12
GPS Signals
• Signals
– L1C/A : Block IIA, IIR
– L1C : Block IIIA ‐
– L1P(Y), L2P(Y) (military): Block IIA, IIR, ( ‐2020)
– L2C : Block IIR‐M ‐
– L1M, L2M (military) : Block IIR‐M ‐
– L5 : Block IIF ‐
• Multiplexing
p g
– CDMA (Code Division Multiple Access)

13
GPS Ground Segment

([Link], GPS Status and Modernization, 2009)


14
GLONASS (ГЛОНАСС)
• Development
– USSR and Russia
• Satellite Constellation
– 3 Plane x 8 = 24 Sats + 3 Spare
p ((FOC))
– Altitude: 19,100 km, Inclination: 64.5°
– GLONASS,, GLONASS‐M ((2003‐ ), GLONASS‐K ((2011‐ )
• Signals
– L1C/A
L1C/A, L1P (FDMA: 1602+n x 0.5625
0 5625 MHz)
– L2C/A, L2P (FDMA: 1246+n x 0.4375 MHz)
– L3 CDMA (GLONASS‐K‐
(GLONASS K )
15
Galileo
• Development
– EU and ESA
• Satellite Constellation
– 3 Plane x 9 = 27 Sats + 3 Spare
p ((FOC))
– Altitude: 23,200km, Inclination: 56°
– Test Sats: GIOVE‐A ((2005),
), GIOVE‐B ((2007))
– 2012 4 Sats (IOV), 2014/15 18 Sats, 2016/17 FOC
• Signals
– E5a (OS,CS), E5b (OS, SoL, CS)
– E6a (PRS)
(PRS), E6b/c (CS),
(CS) E1a (PRS),
(PRS) E1b/c (OS,
(OS SoL,
SoL CS)
16
(Beidou 2 北⽃)
Compass (Beidou‐2,
• Development
– China
• Satellite Constellation
[Link]
– Phase I ((‐2012):
) 3 Sats ((GEO))
– Phase II (‐2020): 14 Sats (5 GEO, 5 IGSO, 4 MEO)
– Phase III ((2020‐):
) 35 Sats ((5 GEO,, 3 IGSO,, 27 MEO))
– 2011/4: 8 Sats (4 GEO, 3 IGSO, 1 MEO), No ICD
• Signals
– Phase II: B1, B2, B3 (?)
– Phase III: B1,
B1 B2,
B2 B3 (L1C,
(L1C L5 GPS Compatible?)
17
QZSS (Quasi Zenith Satellite System)
QZSS Ground Track
• Development
– Japan, JAXA
• Satellite Constellation
– 1 Sat ((IOC),
) 4 or 7 Sats ((FOC))
– Altitude: ~36,000km, Inclination: 43°
– Eccentricity:
y 0.075 (IS‐QZSS
(IS Q SS 1.2)
. )
– 2010/9/11 First Sat "Michibiki" Launch “Michibiki”

• Signals
– L1C/A, L1C, L2C, L5: GPS Compatible
– L1‐SAIF,
L1 SAIF LEX: Augmentation ([Link]
18
SBAS (Satellite Based Augmentation System)
GEO Satellite
System Development Operation
PRN Name Location
135 Galaxy 15 133W
WAAS US, DOT, FAA 2003/7‐
138 Anik F1R 107 3W
107.3W

2009/10,‐ 120 Inmarsat‐3 AOR‐E 15.5W


ESA, EC,
EGNOS 2011/3‐ 124 Artemis 21.5E
Eurocontrol
(SoL) 126 Inmarsat‐3 IOR‐W 25E
129 MTSAT‐IR 140E
MSAS Japan, JCAB 2007/9‐
2007/9
137 MTSAT‐II 145E
? Luch‐5A 16E
SDCM Russia 2014
2014‐ ? Luch 5B
Luch‐5B 95E
? Luch‐4 167E
GAGAN India, AAI, ISRO 2011‐
2011 127 GSAT‐12
GSAT 12 ?

19
SBAS Coverage Map

(by GENEQ Inc.)

20
Satellite Launch (2010‐2011)
(2010 2011)
Date/Time (UTC) Satellite Orbit Launcher Launch Site Notes
2010/01/16 16:12 Compass (Beidou‐2) G2 GEO Long March 3C Xichang, China
2010/03/01 21:19 GLONASS‐M x 3 MEO Proton‐M Baikonur, Kazakhstan
2010/04/15 10:57 GSAT‐4 (GAGAN) GEO GSLV Satlsh Dhawan, India Failed
2010/05/28 03:00 GPS Block IIF‐1 MEO Delta‐IV Cape Canaveral, USA
2010/06/02 15:53 Compass (Beidou‐2) G3 GEO Long March 3C Xichang, China
2010/07/31 21:30 Compass (Beidou‐2) I1 IGSO Long March 3A Xichang, China
2010/09/02 00:53 GLONASS‐M x 3 MEO Proton‐M Baikonur, Kazakhstan
2010/09/11 11:17 QZSS‐1 "Michibiki" IGSO H‐IIA Tanegashima,
g Japan
p
2010/10/31 16:26 Compass (Beidou‐2) G4 GEO Long March 3C Xichang, China
2010/12/05 10:25 GLONASS‐M x 3 MEO Proton‐M Baikonur, Kazakhstan Failed
2010/12/17 20:20 Compass (Beidou‐2) I2 IGSO Long March 3A Xichang, China
2011/02/26 03:07 GLONASS‐K1 MEO Soyuz Pleasetsk, Russia
2011/04/09
/ / 20:47 Compass
p ((Beidou‐2)) I3 IGSO Longg March 3A Xichang,
g, China
Planned: 2011/5 GSAT‐12, 2011/6 GPS Block IIF‐2, 2011/7 GLONASS‐M x 3, 2011/8 Galileo IOV x 2
21
GNSS Constellation
Number of Planned GNSS Satellites
System 2010 2013 2016 2019
GPS 31 32 32 32
GLONASS 23 (+2) 24 (+3) 24 (+3) 24 (+3)
Galileo 0 4 18 27 (+3)
Compass 6 12 30 32 (+3)
QZSS
Q SS 1 1 7 7
IRNSS 0 7 7 7
SBAS 7 8 11 11
Total 68 88 129 140

L3 GNSS Signal Frequencies


L5/E5a E5b L2 L2 E6/LEX L1/E1 L1

([Link], COMPASS: View on Compatibility and Interoperability, 2009)


22
1. GPS/GNSS:
/
Exercise

23
Check Visible GNSS Satellites
RTKLIB ‐ RTKPLOT
• Objective
check visible GNSS satellites
• Program
...¥rtklib_2.4.0¥bin¥[Link]
…¥rtklib_2.4.1b¥bin¥[Link]
¥ tklib 2 4 1b¥bi ¥ tk l t
• Data
…¥seminar¥sample1¥
¥ i ¥ l 1¥
javad1_201102030000.obs
javad1 201102030000 nav
javad1_201102030000.nav
JAVAD DELTA Receiver
Acknowledgment:
Sample data were captured by JAVAD DELTA receiver provided by JAXA
24
Satellite Visibility

Tracking Data
|: Cycle‐Slip
|: Parity
Unknown
Satellite ID
Gnn: GPS
Rnn: GLO
Enn: GAL
Jnn: QZS
1nn: SBAS

Ephemeris
: Toe
Red:
unhealthy

25
Skyplot or # of Sats/DOP
Skyplot

# of Visible Satellites and DOP

26
RTKPLOT: Edit ‐ Options

OBS Data Options Solution Data Options Common Options

27
2 Signal
2. Si l and
d Receiver
R i

28
GNSS Signal Structure

Carrier
sin( 2ft   )
+1
Code
‐1
1
C (t )
+1
D t
Data
‐1
D (t )

Signal
i ( 2ft   )  
2 P C (t ) D (t ) sin(

29
GNSS Signal Specifications
Carrier Freq (MHz) Code Modulation Data Rate GNSS
50 bps GPS, QZSS
C/A BPSK (1)
250 bps QZSS (L1‐SAIF), SBAS
L1/E1
/ 1575.42 P(Y)
( ) BPSK ((10)) 50 bps
p GPS
L1C‐d/p MBOC (6,1,1/11) ‐/100 bps GPS (IIIA‐), Galileo
L1C‐d/p BOC (1,1) ‐/100 bps QZSS
L1 1602+0.5625K C/A
/ BPSK 50 bps GLONASS
P(Y) BPSK (10) 50 bps GPS
L2 1227.60
L2C BPSK (1) 25 bps GPS (IIRM‐), QZSS
L2 1246+0.4375K C/A BPSK 50 bps GLONASS
L5‐I/Q BPSK (10) ‐/100 bps GPS (IIF‐), QZSS
L5/E5a 1176.45
E5 I/Q
E5a‐I/Q BPSK (10) ‐/50
/50 bps
b G lil
Galileo
E5b 1207.14 E5b‐I/Q BPSK (10) ‐/250 bps Galileo
E6‐I/Q BPSK (5) ‐/1000 bps Galileo
E6/LEX 1278 75
1278.75
LEX BPSK (5) 2000 bps QZSS
30
PRN (Pseudo‐Random
(Pseudo Random Noise) Code
C/A Code Generator
G1 Generator
1 2 3 4 5 6 7 8 9 10

X1 Epoch PRN Selector


Reset C (t )
C/A
/10 1 2 3 4 5 6 7 8 9 10
10.23MHz
G2 Generator

Auto‐correlation function Cross‐correlation function


1 1

 (chip )  (chip )
‐1 1 0
T T
 
1 1
R ( )  C (t )C (t   )dt
i i
R ( )  C i (t )C j (t   )dt (i  j )
T 0 T 0

31
GPS Navigation Data
Subframe 30bits x 10words = 300 bits (50bps x 6 s)

1 GPS Week #, SV Accuracy and Health, SV Clock,...

2 Ephemeris
p

3 Ephemeris

4 Al
Almanac d Subframe
and H lth SV 425‐32,
Health 25 32 Iono/UTC,...
I /UTC P
Page 1 25
1‐25

5 AlmanacSubframe 4 SV 1‐24,...
and Health Page 1‐25

Preamble Subframe 24bits 6bits


TLM P HOW P P P P
P P P P P

TOW Count (x 6s) ID

32
SBAS Message
MT Message
RTCA/DO‐229C
RTCA/DO 229C 0 For WAAS Testing
i
Minimum Operational Performance 1 PRN Mask assignment
Standards for Global Positioning
2‐5 Fast Corrections
System/Wide Area Augmentation System
Airborne Equipment 6 Integrity Information
(Nov 28,2001) 7 Fast Correction Degration Factor
9 GEO Navigation Messages
SBAS Message Frame
10 Degradation Parameters
250 bits ‐ 1 Second
12 WAAS Network Time/UTC Offset
212‐bit Data Field 17 GEO Satellite Almanac

6‐bit Message Type ID (0‐63) 18 Ionospheric Grid Mask


8 bit Preamble
8‐bit 24 bit Parity
24‐bit 24 Mixed Fast/Long Term Satellite Correct.
Correct
25 Long Term Satellite Error Corrections
26 Ionospheric Delay Corrections
RTCA: Radio Technical Commission for
Aeronautics 27 WAAS Service Messages
33
GNSS Receivers
Receiver Products: $20 ‐ $30,000

SiRF, u‐blox, Garmin, Hemisphere, Trimble, Leica, Topcon, NovAtel, JAVAD, Magellan, ...

Handmade GPS receiver: $400

34
Receiver Architecture
Antenna Solution
Baseband Processor (NMEA)

L1 RF
Front‐End Navigation
Receiver Processor
Processor
L2 RF
Front‐End
Raw Data
(Pseudorange,
Carrier‐Phase,
Rcv Clock Ephemeris, SV
Reference Oscillator Clock)
l k)

35
RF Front‐End
Front End

Antenna
1st Down 2nd Down
Conversion Conversion

BPF BPF BPF AGC ADC

RF Baseband
Processing Frequency Processors
Synthesizer

Reference Oscillator

36
Baseband Processor
I and Q Sampling Correlators Accumulators
IE

IP
Front‐ 
end I0 IL

QE

Q0 QP

Ic Qc QL Receiver
 Processor
CE CP CL
Carrier Code E,P,L Reference
NCO NCO C d Generator
Code G

R Clock
Rcv Cl k
Reference Oscillator
37
Receiver/Navigation Processor
• Receiver Processor
– Acquisition : Search Doppler Shift and Code Phase
– Code Tracking : DLL (Delay Lock Loop)
– Carrier Tracking: FLL/PLL (Freq/Phase Lock Loop)
– Navigation Message Decode (Ephemeris, SV Clock, SBAS,...)
– Generate Pseudorange, Carrier‐Phase, Doppler‐Freq
• Navigation Processor
– Navigation
g Processingg ((Single
g Point,, DGPS,, SBAS,, RTK,, ...))
– XYZ to LLH, Geoid model, Code Smoothing
– Output NMEA
38
Carrier/Code Tracking
Baseband Processor
CH1
Δt,Δf
Code NCO
Range
DLL Pseudorange,
CE,P,L
E PL
Navi‐Data
CDφ CDφIF CDI,Q
Correlator
Correlator Σ
RF‐
Frontend φI,Q Carrier‐Phase,
PLL/FLL Doppler‐Freq
Local Carrier
Oscillator NCO Δφ,Δf

39
GPS Ephemeris
M 0 , n, e, A ,  0 , i0 ,  ,  , IDOT , Cuc , Cus , Crc , Crs , Cic , Cis , Toe

O bit l plane
Orbital l S t llit
Satellite
z
 e
rs
E  M  e sin E
M : Mean Anomaly r
r
E u u
 y
A Ae : Argument of 
: Semi‐ : Eccentricity
major Axis
Perigee i
x : Inclination

: Right Ascension of
Ascending Node
40
Satellite Position (XYZ‐ECEF)
(XYZ ECEF)
tk  t  toe

n   / A3  n
M  M 0  ntk tk
E  M  e sin E : Kepler Equation
t oe1 t oe 2 t t oe 3 TOW (s)
  ATAN 2( 1  e sin E , cos E  e)  
2

u      Cus Cuc  1

0 0 

      sin 2  R x ( )   0 cos  sin  
 r    A(1  e cos E )    Crs Crc   
 0  sin  cos  

 i   i  IDOT t   C   cos 2   cos  0  sin  
  0 k   is Cic  
R y ( )   0 1 0 

   0  (  e )tk  etoe 


 sin  0 cos  

 cos  sin  0 
r s (t )  Rz ( ) Rx (i )(r cos u , r sin u , 0)T 
R z ( )    sin  cos  0 

 0 1 
 0

41
GPS SV Clock Parameters
a f 0 , a f 1, a f 2 , TGD ,toc

Satellite Clock Bias

dT (t )  a f 0  a f 1 (t  toc )  a f 2 (t  toc ) 2  trel  tGD

Relativity Correction:
 2  Ae sin E
trel 
c2
Group
p Delayy Correction:
 TGD ( L1)

tGD    TGD ( L 2) (  f12 / f 2 2 )
 0
 ( LC )
42
2. Signal
g and Receiver:
Exercise

43
Monitor Receiver Output Data
RTKLIB ‐ RTKNAVI
• Objective
monitor receiver output data
• Program
...¥rtklib_2.4.0¥bin¥[Link]
...¥rtklib_2.4.1b¥bin¥[Link]
¥ tklib 2 4 1b¥bi ¥ tk i
• Data
…¥seminar¥sample2¥
¥ i ¥ l 2¥
ubx_20090515c.ubx (u‐blox)
oemv 2009515c gps (NovAtel)
oemv_2009515c.gps
u‐blox AEK‐4T NovAtel
(LEA‐4T) OEMV‐3G

44
Output of u‐blox
u blox

RTK
Monitor

NMEA0183:
$GPRMC : Recommended minimum
data for GPS
$GPGGA : Fix Information
$GPGSA : Overall Satellite Data
$GPGSV : Derailed Satellite Data
$GPGLL : Lat/Lon
L /L Data,
D ...

$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47
Time (UTC) Latitude Longitude # of Sats Altitude Geoid Height
Quality HDOP 45
Output of NovAtel
Raw OBS Data

GPS
Ephemeris

SBAS
M
Messages

46
3 Standard
3. St d d Positioning
P iti i

47
Pseudorange
Definition:
The pseudo‐range (PR) is the distance from the
Prs  c  c( tr  t s ) receiver antenna to the satellite antenna including
receiver and satellite clock offsets (and other
(m) biases, such as atmospheric delays) (RINEX 2.10)

At Satellite t s  tr   Ti
Time b Satellite
by S t llit Clock
Cl k (s)
()

At Receiver tr Time by Receiver Clock (s)

48
Pseudorange Model
(3) Satellite
Prs  c Clock Bias

 c( tr  t s ) (1) Geometric
Range
 c((tr  dt )  (t s  dT s ))   P
(4) Ionosphere
 c(tr  t s )  c( dtr  dT s )   P
 (  rs  I rs  Trs )  c( dtr  dT s )   P
(5) Troposphere
T h
   c( dtr  dT )  I  T   P
s
r
s s
r r
s

(1) (2) (3) (4) (5) (6) ((2)) Receiver


RCV
Clock Bias
(6) Multipath +
Receiver Noise + Other Errors
49
Geometric Range
SSignal
g a Transmitted
a s ed Signal
g Transmission Time
t s  tr  Prs / c  dT (t s )
r s (t s )
(1)
 rs  U (tr )rr (tr )  U (t s )r s (t s )

(2)
 rs  rr (tr )  Rz (e (tr  t s ))r s (t s )
Signal Received
Geometric (3)
rr (tr )
Range
 rs  rr (tr )  Rz (e  rs / c)r s (t s )
rs
(4)
e ( x s yr  y s xr )
 r  rr (tr )  r (t ) 
s s s
c
e Sagnac Effect Correction
50
LOS (Line‐of‐Sight)
(Line of Sight) Vector

LOS Vector:
V t U LOS
Vector
r s  rr W N
ers  , ers,enu  Eeceff enu ers  (ee , en , eu )
T
El
r  rr
s
Az

  sin  cos  0 
  S E
Eecef enu    sin  cos   sin  sin  cos  
 cos  cos  cos  sin  sin   N

Satellite Azimuth/Elevation Angle:


W E
Az  ATAN2(ee , en )
El  arcsin eu
S
51
Ellipsoid and Datum
Reference GRS 80 WGS 84
Ellipsoid: z rr  ( x, y , z )T a (m) 6378137 6378137

1/298.257222
1/298 257222 1/298.257223
1/298 257223
h f
101 563
b r
a (1  e )
2 GM 3986005.000 3986004.418
' N (m3/s2) x 108 x 108

x,y plane Lat/Lon/Height to X/Y/Z‐ECEF:
a
e2  f (2  f )
a
N
i 2
1  e 2 sin
 ( N  h) cos  cos  
 
 ' : Geocentric Latitude  : Longitude rr   ( N  h) cos  sin  
 : Geodetic Latitude  ( N (1  e 2 )  h) sin  
h : Ellipsoidal Height  
52
Geoid
H : Geodetic Height
Geopotential:

h
GM  
 n n
V (r , ' ,  )  
1 
a
  (CnmYnmc  S nmYnms )  Geoid
 n 2 m 0  
r  r 
Reference Ellipsoid

EGM96 Geoid Model (m)


53
Ionospheric Model
 0 ,1, 2 , 3 ,  0 , 1,  2 , 3
Klobuchar Model:
  0.0137 /( El  0.11)  0.022
i     cos Az Klobuchar

Verticaal Ionos Dellay


i     sin Az / cosi Model
m  i  0.064 cos(i  1.617)
t  4.32  104 i  t
F  1.0  16.0  (0.53  El )3
3
x  2 (t  50400) / 
n 0
 nm n
0 4 8 12 16 20 24
 Local Time (hr)
F  5  109 ( x  1.57)

I   4
 x 2 x 4  

 9
 F   5  10   n 
 nm  1 

 2

24 

( x  1.57)
 n 1
54
Troposphere Model
St d d Atmosphere:
Standard At h
p  1013.25  (1  2.2557  105 H )5.2568 Tropospheric Delay
T  15.0  6.5  103 H  273.15
17.15T  4684.0  hrel
e = 6.108  exp 
 T  38.45  100
p : Pressure (hPa)
H : Geopotential Height (m)
T : Temperature (K)
e : Partial Pressure of WV (hPa)
hrel : Relative Humidity (%)
hrel=50%,
=50% z=90
z=90°
Saastamoinen Model:
0.002277   1255  2 
Trs   p    0 .05  e  tan z ( z : Zenith Angle)
cos z   T  
55
LSE (Least Square Estimation)
Measurement Equation:
y : Measurement vector H : Design matrix
y  Hx  v v : Residual vector
x : Parameter vector
J LS  v12  v2 2  ...  vm 2  v T v  ( y  Hx )T ( y  Hx )
 yT y  yT Hx  x T H T y  x T H T Hx  min
J LS
 0 T  yT H  ( H T y )T  ( H T Hx )T  x T H T H
x
 2 y T H  2 x T H T H  0
Normal Equation (NEQ):
H T Hxˆ  H T y  xˆ  ( H T H ) 1 H T y
Weighted LSE:
xˆ  ( H T WH ) 1 H T Wy ( JWLS  v T Wv  min)
56
Non linear LSE
Non‐linear
Measurement Equation:
y  h( x )  v
h( x )  h( x0 )  H ( x  x0 )  ... : Taylor
T l Polynomial
P l i l

y  h( x 0 )  H ( x  x 0 )  v
 
y  h( x 0 )  H ( x  x 0 )  v  H  h( x ) 
 x 
H T H ( xˆ  x0 )  H T ( y  h( x0 ))  x  x0 
Partial Derivatives
xˆ  x0  ( H T H ) 1 H T ( y  h( x0 ))

Iterative Solution (Gauss‐Newton):


(Gauss Newton):
xˆ i 1  xˆ i  ( H T H ) 1 H T ( y  h( xˆ i ))
xˆ  limli xˆ i
i 
57
Navigation Processing
x  ( rr T , cdt )T , y  ( Prs1 , Prs2 , Prs3 ,..., Prsm )T

  rs1  cdˆt  cdT s1   s1 T 


  I rs1  Trs1    er 1
  rs2  cdˆt  cdT s2   s2 T 
 I rs2  Trs2   er 1
 
h( xˆ )    rs3  cdˆt  cdT s3  I rs3  Trs3  H    ers3 
T
1
  
 s    
  m  cdˆt  cdT sm  I rsm  Trsm   s T 
 r   er
m 1

xˆ 0  (0,0,0,0)T s3
s2
xˆ i 1  xˆ i  ( H T H ) 1 H T ( y  h( xˆ i ))
s1 sm
xˆ  lim xˆ  ( rˆ T , cdˆt )T
i r
i 

Single‐Point
Single Point Solution + Receiver Clock Bias r

58
Solution Convergence
E ti t d Parameters
Estimated P t in i LSE Iteration
It ti LoopL
i x (m) y (m) z (m) cdt (m)
(0) X= 0.0000000
0 0000000 0
0.0000000
0000000 0
0.0000000
0000000 0
0.0000000
0000000
(1) X=‐4739338.8790644 3968053.3426383 4470195.0681293 1290751.6350707
(2) X=‐3990084.5939062 3334559.7805777 3763444.6383541 50195.3310677
( ) X=‐3957255.7455862
(3) 3310242.1098583 3737755.6233736 510.7878812
(4) X=‐3957205.2229884 3310203.7001970 3737718.0508664 432.5789153
(5) X=‐3957205.1820501 3310203.6651692 3737718.0078941 432.4910365
(6) X=‐3957205.1820116 3310203.6651363 3737718.0078537 432.4909539
(7) X=‐3957205.1820116 3310203.6651363 3737718.0078536 432.4909538
(8) X=‐3957205.1820116 3310203.6651363 3737718.0078536 432.4909538
(9) X=‐3957205.1820116 3310203.6651363 3737718.0078536 432.4909538
(10)X=‐3957205.1820116 3310203.6651363 3737718.0078536 432.4909538
2001/1/1 0:00:00,
0:00:00 TKSB,
TKSB processed by RTKLIB 2.2.1,
2 2 1 n=8

59
Error Sources and DOP
• Error sources of Standard positioning
– Ephemeris/SV Clock Error
– Ionospheric Model Error
– Tropospheric Model Error
– Multipath
– Receiver Noise
– Other Errors
– S/A (Selective Availability)
• Satellites‐Receiver Geometry
– DOP (Dilution of Precision)
60
Ephemeris/SV Clock Error
2004/4/1‐4/7 (PRN08) Ephemeris Error 2009/4/1‐4/7 (PRN08)

SV Clock Parameter Error

61
GPS SIS URE

L S Steiner GPS Program Update to CGSIC 2010,


[Link], 2010 Sep 21,
21 2010

62
Ionospheric Model Error
Zenith Ionospheric
p Delayy ((L1)) at TSKB
2004/11/03‐11/09
15
Iono‐Delay (m)

10

0
10
Iono‐Delay Error (m)

5
0
‐5
‐10
11/3 11/4 11/5 11/6 11/7 11/8 11/9 11/10
Klobuchar Model IGS TEC Final

63
Tropospheric Model Error

ZTD (Zenith Total Delay) at TSKB


2009/1/1 2009/1/31
2009/1/1‐2009/1/31 2009/7/1 2009/7/31
2009/7/1‐2009/7/31

Saastamoinen Model Estimated by PPP

64
Multipath
Geodetic‐Grade Antenna
Signal
reflected by
a building
Directt
Di
Signal
NovAtel
GPS 702 GG
GPS‐702‐GG

Consumer‐Grade Antenna
GPS
Antenna

Signal
g
reflected by u‐blox ANN‐MS
the ground 65
DOP (Dilution of Precision)
GDOP PDOP,
GDOP, PDOP HDOP,
HDOP VDOP
GDOP  qee  qnn  quu  qtt  qee qet   s1 T 
qen qeu   er ,enu 1
   s T 
PDOP  qee  qnn  quu q qnn qnu qnt 
Q  ( H T H ) 1   ne H   e 1 
2
 
r ,enu
HDOP  qee  qnn q
 ue
qun quu qut
    
 qtt    ers,menu
T
VDOP  quu  qte qtn qtu
 1

# of satellites = 5 # of satellites = 7 # of satellites = 27

GDOP=33.4 PDOP=25.9 GDOP=2.5 PDOP=2.1 GDOP=1.2 PDOP=1.0


HDOP=8.1 VDOP=24.7 HDOP=1.2 VDOP=1.8 HDOP=0.5 VDOP=0.9
66
DGPS (Differential GPS)
• Differential GPS
– Fixed Reference Stations at Known Position
– Generate Correction Messages
– Broadcast Correction Messages to User
– Eliminate Most of Errors of Positioning
• Service of DGPS
– Space Based DGPS: OmniSTAR, SkyFix, StarFix
– Maritime DGPS: Marine Beacons
– National DGPS: VHF/FM‐band, Cellular Network, Internet

67
RTCM SC
SC‐104
104
RTCM 2.3 Messages RTCM 3.1 Messages
Type Message Type Message
1 Differential GPS Corrections 1001 L1‐Only GPS RTK Observables
3 GPS Reference Station Parameters 1002 Extended L1‐Only GPS RTK Observables
10 P‐Code Differential Corrections 1003 L1&L2 GPS RTK Observables
11 C/A‐Code L1, L2 Delta Corrections 1004 Extended L1&L2 GPS RTK Observables
17 GPS Ephemerides 1005 Stationary RTK Reference Station ARP
18 RTK Uncorrected Carrier Phase 1006 Stationary RTK Ref. Stn. ARP with Hgt.
19 RTK Uncorrected Pseudorange 1007 Antenna Descriptor
20 RTK Carrier Phase Corrections 1008 Antenna Descriptor & Serial Number
21 RTK Pseudorange Corrections 1013 System Parameters
22 Extended Reference Station Parameter 1014 Network Auxiliaryy Station Data
23 Antenna Type Definition Record 1015 GPS Ionospheric Correction Differences
24 Antenna Reference Point (ARP) 1016 GPS Geometric Correction Differences
59 Proprietary Messages 1019 GPS Ephemerides
RTCM: The Radio Technical Commission for Marine Service
68
Error Budget
DGPS
Error Source Single‐Point SBAS
(BL=100km)
Ephemeris Error 0.1 m
1.0 m 0.1 m
SV Clock
Cl k Param
P E
Error 00m
0.0
Ionospheric Error 1.5 m 0.2 m 0.2 m
Tropospheric Error 03m
0.3 01m
0.1 03m
0.3
Multipath 1.0 m 1.2 m 1.0 m
S/A 0.0 m 0.0 m 0.0 m
Rcv Tracking Noise 0.3 m 0.3 m 0.3 m
UERE 2.1 m 1.3 m 1.1 m
HDOP/VDOP 1.5 2.5 1.5 2.5 1.5 2.5
Horizontal/Vertical
32m
3.2 53m
5.3 20m
2.0 33m
3.3 17m
1.7 28m
2.8
RMS Error
69
Single Point Positioning
Single‐Point
1999/1/1 24hr, TSKB 2001/1/1 24hr, TSKB

RMS Error: RMS Error:


E: 21.51m E: 2.02m
N: 33.81m N: 4.10m
U: 59.65m U: 5.70m

100m 100m

2004/1/1 24hr, TSKB 2009/1/1 24hr, TSKB

RMS Error: RMS Error:


E: 1.73m E: 1.10m
N: 2.51m N: 1.44m
U: 4.24m U: 3.92m

10m 10m
70
SBAS DGPS Positioning
Single‐Point MSAS
RMS Error: RMS Error:
E: 1.02m N: 1.36m U: 4.00m E: 0.43m N: 0.57m U: 1.21m

((2007/10/16
/ / 24hr,h Antenna: NovAtell GPS‐702‐GG, Receiver: u‐blox
bl AEK‐4T (raw),
( )
Processing S/W: RTKLIB 2.1.0, All Corrections=ON, Ranging=ON)
71
Standard Data Format
• RINEX (Receiver Independent Echange)
– Text‐based Standard GNSS data file format
– Mainly for post‐processing
• RINEX Types
yp
– OBS: Observation data
– NAV: navigation
g data,, ((GNAV: GLONASS,, HNAV: SBAS))
– MET: Meteorological data
– CLK: Clock product
p
• RINEX Version
– ver.
ver 2 (2.10,
(2 10 2.11,
2 11 2.12),
2 12) ver.
ver 3 (3.00,
(3 00 ...))
72
RINEX OBS (Observation Data)
2.10 OBSERVATION DATA M (MIXED) RINEX VERSION / TYPE
RTKCONV 2.4.0 20110423 090647 UTC PGM / RUN BY / DATE
MARKER NAME
MARKER NUMBER
Receiver Time Tag OBSERVER / AGENCY
REC # / TYPE / VERS
ANT # / TYPE
0.0000 0.0000 0.0000 APPROX POSITION XYZ
0.0000 0.0000 0.0000 ANTENNA: DELTA H/E/N
1 1 WAVELENGTH FACT L1/2
8 C1 L1 D1 S1 P2 L2 D2 S2 # / TYPES OF OBSERV
2010 10 15 0 0 0.0000000 GPS TIME OF FIRST OBS
2010 10 15 2 28 54.0000000 GPS TIME OF LAST OBS
END OF HEADER Types of OBS
10 10 15 0 0 0.0000000 0 10G 6G23G16G19G21G13G 3G31S29S37 C,P*: Pseudorange
20849928.484 109567124.316 1939.684 45.000 20849930.125
85377001.480 1511.441 41.000 L*:
* Carrier‐phase
i h
22450960.859 117980618.953 1062.035 42.000 22450959.898
91932917.910 827.555 38.000 D*: Doppler Freq
20790247.117 109253470.496 334.336 45.000 20790246.844 S*: CN0 (dBHz)
85132587.789 260.520 41.000
24794846.031 130297776.969 3763.289 38.000 24794848.422
101530723 414
101530723.414 2932
2932.430
430 32
32.000
000
23378478.469 122854746.020 860.133 40.000 23378477.977 Satellite List
95730986.191 670.234 34.000
24155219.492 126936537.238 2611.234 35.000 24155223.109 nn, Gnn: GPS
98911564.082 2034.727 33.000 Rnn: GLONASS
21765068.656 114376223.133 3035.375 42.000 21765071.242
89124339 934
89124339.934 2365
2365.223
223 38
38.000
000 Jnn: QZSS
21044041.703 110587188.461 -1456.918 45.000 21044041.797
86171830.961 -1135.266 42.000 Enn: Galileo
37172827.633 195344531.559 2.965 38.000 Snn: SBAS
37203973.328 195508183.188 -0.992 39.000
10 10 15 0 0 1.0000000 0 10G 6G23G16G19G21G13G 3G31S29S37
20849559.430 109565184.891 1939.090 45.000 20849561.062

73
RINEX NAV (Navigation Data)
2.10 N: GPS NAV DATA RINEX VERSION / TYPE
RTKCONV 2.4.0 20110423 090647 UTC PGM / RUN BY / DATE
1.1176E-08 0.0000E+00 -5.9605E-08 0.0000E+00 ION ALPHA
9.0112E+04 0.0000E+00 -1.9661E+05 0.0000E+00 ION BETA
-.838190317154E-08 -.310862446895E-13 61440 1606 DELTA-UTC: A0,A1,T,W
15 LEAP SECONDS
END OF HEADER
31 10 10 15 2 0 0.0 -.724568963051E-06 .352429196937E-11 .000000000000E+00
.810000000000E+02 .105937500000E+02 .427089218552E-08
.427089218552E 08 -.148856857180E+01
.148856857180E+01
.571832060814E-06 .746127020102E-02 .472925603390E-05 .515378055573E+04
.439200000000E+06 -.176951289177E-06 .679765366385E-02 .540167093277E-07
.978380240916E+00 .300062500000E+03 -.105249752834E+01 -.819426989566E-08
.142863093678E-10 .100000000000E+01 .160500000000E+04 .000000000000E+00
.240000000000E+01 .000000000000E+00 -.130385160446E-07 .810000000000E+02
.432006000000E+06
432006000000E+06 .000000000000E+00
000000000000E+00
6 10 10 15 2 0 0.0 .455596484244E-03 -.140971678775E-10 .000000000000E+00
.230000000000E+02 -.352500000000E+02 .500699427569E-08 .227090783348E+01
-.185333192348E-05 .616293260828E-02 .853091478348E-05 .515365624428E+04
.439200000000E+06 .104308128357E-06 .204411629865E+01 .353902578354E-07
.934819176502E+00 .200625000000E+03 -.936257940341E+00 -.811783814054E-08
.169649923743E-09
169649923743E 09 .100000000000E+01
100000000000E+01 .160500000000E+04
160500000000E+04 .000000000000E+00
000000000000E+00
.240000000000E+01 .000000000000E+00 -.512227416039E-08 .230000000000E+02
.432006000000E+06 .000000000000E+00
...

PRN Toc SV_clock_bias SV_clock_drift SV_clock_drift_rate


IODE Crs Delta_n M0
Cuc e Cus sqrt(A)
Toe Cic OMEGA Cis
i0 Crc omega OMEGA_DOT
IDOT Codes_on_L2_ch GPS_Week_# L2_P_data_flag
SV_accuracyy SV_health TGD IODC
Trans_Time Fit_interval spare spare

74
3. Standard Positioning:
g
Exercise

75
Analysis by Standard Positioning
• Objective
Analysis by standard positioning
• Program
...¥rtklib_2.4.0¥bin¥[Link]
...¥rtklib_2.4.0¥bin¥[Link]
¥ tklib 2 4 0¥bi ¥ tk t RTKLIB ‐ RTKCONV
...¥rtklib_2.4.1b¥bin¥[Link]
...¥rtklib_2.4.1b¥bin¥[Link]
¥rtklib 2 4 1b¥bin¥rtkpost exe
• Data
…¥seminar¥sample3¥
¥seminar¥sample3¥
oemv_201010150000.gps
RTKLIB ‐ RTKPOST

76
RTKPOST ‐ Options

Setting1 Output

77
4 RTKLIB
4.

78
RTKLIB
• An Open
p Source Program
g
Package for GNSS Positioning
– Distributed under GPLv3
– Has been developed by the
author since 2006
– Latest version:
2.4.0 (formal), 2.4.1b (beta)
• Portable Library +
useful p
positioningg APs
– GUI APs on Windows
– CUI APs on Linux etc... [Link]

79
History
• 2006/4 vv.0.0.0
000 First version for RTK+C program lecture
• 2007/1 v.1.0.0 Simple post processing AP
• 2008/7 vv.2.1.0
210 Add APs
APs, support medium‐range
medium range
• 2009/1 v.2.2.0 Add real‐time AP, support NTRIP,
start to distribute as Open Source S/W
• 2009/5 v.2.2.1 Support RTCM, NRTK, many receivers
• 2009/12 vv.2.3.0
2 3 0 Support GLONASS,
GLONASS several receivers
• 2010/8 v.2.4.0 Support PPP Real‐time/Post‐processing
PPP and Long
Long‐baseline
baseline RTK (<1000 km)
• 2011/5(?) v.2.4.1 Support QZSS, JAVAD receiver
• 2011/12(?) vv.2.5.0
2 5 0 Support Galileo,
Galileo SDR
SDR‐receiver
receiver Front
Front‐End
End
80
Download
version 2.2.0 2.2.1 2.2.2 2.3.0 2.4.0
2009/1 4
2009/1‐4 733 ‐ ‐ ‐ ‐
2009/5 51 120 ‐ ‐ ‐
2009/6 31 141 ‐ ‐ ‐
2009/7 28 110 ‐ ‐ ‐
2009/8 43 168 ‐ ‐ ‐
2009/9 30 45 211 ‐ ‐
2009/10 25 18 190 ‐ ‐
2009/11 65 31 987 ‐ ‐
2009/12 46 22 218 1380 ‐
2010/01 47 15 25 471 ‐
2010/02 38 16 23 324 ‐
2010/03 40 10 13 1556 ‐
2010/04 30 9 17 775 ‐
2010/05 33 12 15 1007 ‐
2010/06 34 5 13 860 ‐
2010/07 28 2 3 916 ‐
2010/08 63 20 26 118 1245
2010/09 51 9 10 222 1356
2010/10 58 11 13 490 382
2010/11 62 20 39 48 484
2010/12 44 12 12 32 974
2011/01 43 18 12 42 400
2011/02 65 20 13 29 441
2011/03 53 9 10 21 861
Total 1741 843 1837 8291 6143
81
RTKLIB Features
• Standard and precise positioning algorithms with:
– GPS, GLONASS, SBAS, QZSS, (Galileo)
• Positioning mode for real‐time and post‐processing:
– Single,
g SBAS, DGPS, RTK, Static, Moving‐base
g and PPP
• Supports many formats/protocols and receivers:
– RINEX 2.2,
2 2 RINEX 3.0,
3 0 RTCM v.2,
v 2 RTCM v.3,
v 3 NTRIP 1.0,
10
NMEA0183, SP3, RINEX CLK, ANTEX, NGS PCV, …
– NovAtel,, Hemisphere,
p , u‐blox,, SkyTraq,
y q, JAVAD,, …
• External communication via:
– Serial,
Serial TCP/IP,
TCP/IP NTRIP and file streams
82
Package Structure
rtklib_<ver>.zip
/src : Source programs of RTKLIB libraries
/rcv : Source programs depending on GPS/GNSS receiv.
/bin : Executable binary APs and DLLs for Windows
/data : Sample data for APs
/app : Build environment for APs
/rtknavi : RTKNAVI (GUI)
/strsvr : STRSVR (GUI)
/rtkpost : RTKPOST (GUI)
/rtkpost_mkl
_ : RTKPOST_MKL
_ (GUI)
/rtkplot : RTKPLOT (GUI)
/rtkconv : RTKCONV (GUI)
/srctblbrows : NTRIP source table browser (GUI)
/rtkrcv : RTKRCV (console)
/rnx2rtkp : RNX2RTKP (console)
/pos2kml : POS2KML (console)
/convbin : CONVBIN (console)
/str2str : STR2STR (console)
/appcmn : Common routines for GUI APs
/icon : Icon data for GUI APs
/mkl : Intel MKL libraries for Borland environment
/test : Test program and data
/util : Utilities
/doc : Document files

83
GUI APs on Windows
STRSVR RTKCONV NTRIPSRCBROWS

RTKNAVI
RTKPOST
RTKPLOT

84
CUI APs on Linux or Others
• RNX2RTKP (rnx2rtkp)
Post‐processing Positioning
• RTKRCV (rtkrcv)
Real‐time Positioning
• CONVBIN (convbin)
( b )
RINEX Translator
• STR2STR ((str2str)
t2t)
Stream Server
• POS2KML (pos2kml)
Google Earth Converter
CUI Command Reference

85
RTKLIB APIs
/* matrix and vector functions */
mat(),imat(),zeros(),eye(),dot(),norm(),matcpy(),matmul(),matinv(),solve(),lsq(),filter(),smoother(),matprint(),matfprint()
/* time and string functions */
str2num(),str2time(),time2str(),epoch2time(),time2epoch(),gpst2time(),time2gpst(),timeadd(),timediff(),gpst2utc(),utc2gpst(),
t 2 () t 2ti () ti 2 t () h2ti () ti 2 h() t2ti () ti 2 t() ti dd() ti diff() t2 t () t 2 t()
timeget(),time2doy(),adjgpsweek(),tickget(),sleepms()
/* coordinates functions */
ecef2pos(),pos2ecef(),ecef2enu(),enu2ecef(),covenu(),covecef(),xyz2enu(),geoidh(),loaddatump(),tokyo2jgd(),jgd2tokyo()
/* input/output functions */
readpcv(),readpos(),sortobs(),uniqeph(),screent()
/* positioning models */
eph2pos(),geph2pos(),satpos(),satposv(),satposiode(),satazel(),geodist(),dops(),ionmodel(),ionmapf(),tropmodel(),tropmapf(),
h2 () h2 () t () t () t i d () t l() di t() d () i d l() i f() t d l() t f()
antmodel(),csmooth()
/* single-point positioning */
pntpos(),pntvel()
/* rinex functions */
readrnx(),readrnxt(),outrnxobsh(),outrnxnavh(),outrnxnavb(),uncompress(),convrnx()
/* precise ephemeris functions */
readsp3() readsap() eph2posp() satposp()
readsp3(),readsap(),eph2posp(),satposp()
/* receiver raw data functions */
getbitu(),getbits(),crc32(),crc24q(),decode_word(),decode_frame(),init_raw(),free_raw(),input_raw(),input_rawf(),input_oem4(),
input_oem3(),input_ubx(),input_ss2(),input_cres(),input_oem4f(),input_oem3f(),input_ubxf(),input_ss2f(),input_cresf()
/* rtcm functions */
init_rtcm(),free_rtcm(),input_rtcm2(),input_rtcm3(),input_rtcm2f(),input_rtcm3f()
/* solution functions */
readsol() readsolt() outsolheads() outsols() outsolexs() outsolhead() outsol() outsolex() setsolopt() setsolformat()
readsol(),readsolt(),outsolheads(),outsols(),outsolexs(),outsolhead(),outsol(),outsolex(),setsolopt(),setsolformat(),
outnmea_rmc(),outnmea_gga(),outnmea_gsa(),outnmea_gsv(),
/* SBAS functions */
sbsreadmsg(),sbsreadmsgt(),sbsoutmsg(),sbsupdatestat(),sbsdecodemsg(),sbssatpos(),sbspntpos()
/* integer least-square estimation */
lambda()
/* realtime kinematic positioning */
rtkinit() rtkfree() rtkpos()
rtkinit(),rtkfree(),rtkpos()
/* post-processing positioning */
postpos(),postposopt(),readopts(),writeopts()
/* stream data input/output */
strinitcom(),strinit(),strlock(),strunlock(),stropen(),strclose(),strread(),strwrite(),strsync(),strstat(),strsum(), strsetopt(),
strgettime()
/* stream server functions */
strsvrinit() strsvrstart() strsvrstop() strsvrstat()
strsvrinit(),strsvrstart(),strsvrstop(),strsvrstat()
/* rtk server functions */
rtksvrinit(),rtksvrstart(),rtksvrstop(),rtksvrlock(),rtksvrunlock(),rtksvrostat(),rtksvrsstat() ...

86
Supported Receivers by RTKLIB
Data Message Types
Format GPS Raw GLONASS GPS GLONASS ION/UTC Antenna SBAS
Meas Data Raw Meas Ephemeris Others
p Ephemeris
p Parameters Info Messages
g
Type 1, 9,
RTCM v.2.3 Type 18, 19 Type 18, 19 Type 17 ‐ ‐ Type 3, 22 ‐ 14, 16
Type 1005,
Type 1002, Type 1010, SSR
RTCM v.3.1 Type 1019 Type 1020 ‐ 1006, 1007, ‐
1004 1012 corrections
1008 1033
1008,
NovAtel
OEM4/V, RANGEB, RANGEB, GLO‐ RAWWAAS‐
RANGECMPB RANGECMPB RAWEPHEMB EPHEMERISB IONUTCB ‐ ‐
FRAMEB
OEMStar
NovAtel RGEB, ‐ REPB ‐ IONB, UTCB ‐ FRMB ‐
OEM3 RGED
NovAtel ID#20,
ID#23 ‐ ID#22 ‐ ‐ ‐ ID#67
Superstar II #21
u‐blox
UBX UBX UBX UBX
LEA‐4T, RXM RAW
RXM‐RAW ‐ RXM SFRB
RXM‐SFRB ‐ RXM SFRB
RXM‐SFRB ‐ RXM SFRB
RXM‐SFRB ‐
LEA‐5T
Hemisphere
Crescent, bin 96 ‐ bin 95 ‐ bin 94 ‐ bin 80 ‐
Eclipse
SkyTraq msg 0xDD msg 0xE0 msg 0xE0 msg 0xDC
‐ ‐ ‐ ‐
S1315F (221) (224) (224) (220)
[R*],[r*],[*R], [R*],[r*],[*R], [~~],[::],[RD],
JAVAD [*r],[P*],[p*], [*r],[P*],[p*], [GE],[GD], [IO],[UO], [SI],[NN],[TC],
[NE],[LD] ‐ [WD]
(GRIL/GREIS) [*p],[D*],[*d], [*p],[D*],[*d], [gd] [GD] QZSS Data,
[E*],[*E],[F*] [E*],[*E],[F*] Galileo Data
Furuno msg 0x08 ‐ msg 0x24 ‐ msg 0x26 ‐ msg 0x03 msg 0x20
GW10 II

87
Portability
• Programming Language
– API, CUI AP : ANSI C (C89)
– GUI AP : C++
• Underlying
y g Libraries
– TCP/IP Stack : standard socket or WINSOCK
– Thread : POSIX (p
(pthread)) or WIN32 thread
– GUI Widgets : Borland VCL on Windows
• Build Environment
– CUI AP : GCC, MS VS, Borland C, ...
– GUI AP : Borland Turbo C++ 2006 on Windows
88
References

rtklib_<ver>/doc/manual_<ver>.pdf [Link]
89
4. RTKLIB:
Exercise

90
Build RTKLIB AP
• Objective
Build RTKLIB AP (RNX2RTKP)
• Programs
MS Visual Studio (VC++)
• Project File
…¥rtklib_2.4.0¥app
¥ 2 k ¥
¥rnx2rtkp¥msc¥[Link]
¥ j

MS Visual Studio 2008

91
rtklib h and AP Source
rtklib.h

#include "rtklib.h"

rtklib_<ver>/src/rtklib.h rtklib_<ver>/app/<app>/<app>.c
92
Library Source Files
…¥rtklib_<ver>¥src¥
convkml.c : Google Earth KML Converter rtkpos.c : Real‐time Positioning
convrnx.c : RINEX Converter rtksvr.c : RTK Server
datum.c : Datum Transformation sbas.c : SBAS Functions
ephemeris.c
h i : EEphemeris
h i Functions
F i solution.c
l ti : Solution
S l ti Functions
F ti
geoid.c : Geoid Functions stream.c : Stream I/O Functions
ionex.c : IONEX Functions streamsvr.c : Stream I/O Server
lambda c : Integer Ambiguity Resolution
lambda.c
options.c : Options Functions rcv/ : Receiver Dependant Func.
pntpos.c : Point Positioning rcv/crescent.c : Hemisphere
postpos c : Post‐Processing
postpos.c Post Processing Positioning rcv/gw10 c : Furuno GW 10
rcv/gw10.c
ppp.c : Precise Point Positioning rcv/javad.c : JAVAD GRIL/GREIS
preceph.c : Precise Ephemeris Functions rcv/novatel.c : NovAtel OEM3/OEMV
rcvraw c : Receiver Raw Data Functions
rcvraw.c rcv/skytraq c : SkyTraq S1315F
rcv/skytraq.c
rinex.c : RINEX Functions rcv/ss2.c : NovAtel SuperStar II
rtcm.c : RTCM Functions rcv/ublox.c : u‐blox LEA‐4T, 5T
rtkcmn.c : RTKLIB Common Functions

93
Test Execution
>d:
>cd <dir>¥rtklib_2.4.0¥app¥rnx2rtkp¥msc¥Release
>rnx2rtkp ..¥..¥..¥..¥test¥data¥07590920.05* ‐p 0 ‐o [Link]

94

You might also like