4-Introduction To GNSS and GNSS Data Processing4
4-Introduction To GNSS and GNSS Data Processing4
Slide : 1
What is GNSS?
L5/E5/B2/L3 L2 L6/E6/B3 L1/E1/B1
• GNSS or Global Navigation Satellite System is an acronym used to represent
all navigation satellite systems such as
✓ GPS and GLONASS have signals for civilian and military usage
❖ Military signals are encrypted and not available for civilian use
✓ Galileo and BeiDou also have Open and Restricted Signals
✓ All civilian signals are freely available
✓ Technical information for civilian signals are made public
❖ Its called ICD (Interface Control Document) or IS (Interface
Specification)
❖ Provides necessary information to develop a GNSS receiver
https://gssc.esa.int/navipedia/images/c/cf/GNSS_All_Signals.png
Slide : 2
Systems Related with Navigation
Navigation Satellite Systems Augmentation Systems
GPS, GLONASS, Galileo, BeiDou, QZSS, NavIC SBAS or GBAS
ICAO defines regulations related to the use of GNSS and SBAS for aviation
Slide : 3
Satellite Based Augmentation System (SBAS)
• Satellite Based Augmentation System (SBAS) are used to augment GNSS Data
• Provide Higher Accuracy and Integrity
• Correction data for satellite orbit errors, satellite clock errors, atmospheric correction
data and satellite health status are broadcasted from satellites
• SBAS Service Providers
• WAAS, USA (131,133,135,138)
• MSAS, Japan (129,137)
• EGNOS, Europe (120,121,123,124,126,136)
• BDSBAS, China (130,143,144)
• GAGAN, India (127,128,132)
• SDCM, Russia (125,140,141)
• KASS, Korea (134), Also Navigation System (KPS)
• AUS-NZ, Australia (122)
• NSAS, Nigeria, (147)
• ASAL, Algeria (148)
* PRN ID are given in the bracket
Slide : 4
GNSS Signals received
by a receiver
Altitude
Slide : 5
GNSS Signals received
by a receiver
Slide : 6
Raw data necessary to
compute position
Altitude
Slide : 7
JAKARTA BANGKOK MANILA
We do not have BeiDou data in Kualalumpur and Ho Chi Minh stations because of license limitation in the receiver Slide : 8
GPS Skyplots: Tokyo, Jakarta and Maputo
Tokyo Base-Station Jakarta Base-Station Maputo Base-Station
Slide : 9
GNSS Signal Visibility: Skyplot
Antartica_DUMG00ATA Antartica_MAW100ATA Gabon_NKLG00GAB
Slide : 10
QZSS (Japanese version of GPS)
Slide : 11
QZSS 1st Satellite was Launched on 11th SEP 2010 and
Declared Operational on 1st NOV 2018
Slide : 12
QZSS Signals and PRN ID: Current Status
Launch Date Launch Date
PRN SVN Satellite Orbit Positioning Signals PRN SVN Satellite Orbit Positioning Signals
(UTC) (UTC)
193 L1C/A, L1C, L2C, L5 196 L1C/A, L1C, L2C, L5
183 J001 QZS-1 2010/9/11 QZO L1S 186 L1S
J005 QZS-1R 2021/10/26 QZO
193 L6 186 L5S
194 L1C/A, L1C, L2C, L5 196 L6
184 L1S
J002 QZS-2 2017/6/1 QZO
196 L5S
194 L6
199 L1C/A, L1C, L2C, L5
189 L1S
197 L5S
J003 QZS-3 2017/8/19 GEO
137 L1Sb
199 L6
- Sr/Sf
195 L1C/A, L1C, L2C, L5
185 L1S
J004 QZS-4 2017/10/9 QZO
200 L5S
195 L6
Source: https://qzss.go.jp/technical/satellites/index.html
Slide : 13
QZSS Special Application Signals
Signal Signal Convergence
Purpose Accuracy Availability Remarks
Name Band Time
CLAS High Accuracy L6D 2 – 5 cm Few minutes Japan only
10 – 20 QZSS Visible Convergence time can be reduced by
MADOCA High Accuracy L6E 10 – 20 cm using local correction data
minutes Area
Disaster Crisis Not Applicable Also called Early Warning Message.
Not QZSS Visible Basically for Japan.
DC Report (DC) Report L1S (Available Additional Message Types are
Applicable Area
during disasters every 3 sec) defined for other countries as well.
2-Way
Not QZSS Visible
Q-Anpi communication S Not Applicable
Applicable Area
during disasters
Not Applicable Authenticates QZSS, GPS and
Signal L1, L5, Not (TTFA, TBA QZSS Visible Galileo signals
SAS
Authentication L6 Applicable See QZSS IS Area LNAV, CNAV. CNAV-2, I/NAV and
Document) F/NAV Messages
Slide : 14
QZSS Constellation Plan
Equator
QZO: Quasi-zenith Orbit / GEO: Geosynchronous Orbit / QGO: Quasi-geostationary Orbit Source: MGA 2019, Mitsubishi
Slide : 15
This slide is taken from presentation slides of S. Kogure, Introduction to Michibiki and EWS, presented on 13th July 2021
Slide : 16
Characteristics of QZSS
• QZSS signal is designed in such a way that it is interoperable with GPS
• QZSS is visible near zenith; improves visibility & DOP in dense urban area
• Provides Orbit Data of other GNSS signals
• Provides Augmentation Data for Sub-meter and Centimeter level position accuracy
• Provides Messaging System during Disasters
http://qzss.go.jp/en/overview/services/sv04_pnt.html
Slide : 17
Merits of QZSS
• Disaster and Crisis Management • Sub-Meter Level Augmentation • High-Accuracy Positioning Services
• Short Message broadcast during Service (SLAS) • CLAS and MADOCA
Disaster
http://qzss.go.jp/en/overview/services/sv04_pnt.html
Slide : 18
QZSS Launch Schedule
https://qzss.go.jp/overview/intro/index.html
Slide : 19
How does a GPS/GNSS Receiver Work?
Slide : 20
GPS L1C/A Signal Structure
• Carrier Signal
• It defines the frequency of the signal
• For example:
• GPS L1 is 1575.42MHz, L2 is 1227.60MHz and L5 is 1176.45MHz
• PRN Code
• Necessary to modulate carrier signal
• Used to identify satellite ID in the signal
• Should have good auto-correlation and cross-correlation properties
• Navigation Data
• Includes satellite orbit related data (ephemeris and almanac data)
• Includes satellite clock related information (clock errors etc.)
• Includes satellite health information
Slide : 21
GPS L1C/A Signal Structure (Satellite Side)
x154
x1, Clock
x1/10
10.23Mhz
PRN Code, 1.023Mhz
Atomic Clock
Rb or Cs Clocks • Spread Spectrum Modulation
• Identify each satellite
Receiver
Clock x1/10
10.23Mhz PRN Code, 1.023Mhz Signal Processing
PRN Code
• Identify visible satellites
• Compute pseudorange, code-phase Visible Satellites
Acquisition
Code-Phase
Slide : 23
Generation of GPS L1C/A PRN Code
G2 Polynomial: [2,3,6,8,9,10]
Slide : 24
PRN Code Output #1
Slide : 25
Block Diagram of GPS Receiver
GPS Antenna f = 1575.42Mhz Front-End
AGC
fs = 16.368Mhz
Pre-Amp
Down Converter A/D Converter Acquisition Tracking
LNA
f0 = 1554.0Mhz
fc = 10Mhz
Navigation Data
Oscillator Frequency Replica Signal
(Clock) Generator Generator
Position Output
Slide : 26
How does GPS Signal Look Like?
Time Domain Plot of IF Data Frequency Domain Plot of IF Data Histogram of IF Data
Time-domainFile:Plot of GPS IF Signal
JAX_LIV.dat
Frequency-domain
File: JAX_LIV.dat
Plot of HistogramFile:ofJAX_LIV.dat
GPS IF Signal
6
Tracking Output (I and Q Channels)
5 15 GPS IF Signal (Fourier Transform) 16000
4 10
14000
Magnitude, dB
0
Amplitude
1 10000
-5
0 8000
-10
-1
6000
-15
-2
4000
-3 -20
2000
-4 -25
-5 0
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0 2 4 6 8 10 12 -5 -4 -3 -2 -1 0 1 2 3 4 5
Time (ms) Frequency (MHz) Bin Value
Acquisition of GPS L1C/A Signal with Low Noise Acquisition of GPS L1C/A Signal with Higher Noise
Slide : 27
GNSS: How does it work?
Determine the Distance using Radio Wave
0ms
Assume that the Satellite Transmits Signal at 0ms.
0ms
50ms
Satellite with a known position
transmits a regular time signal.
75ms 25ms
50ms
Slide : 28
Pseudorange (Code-Phase Measurement) - 1
Transmission Pseudorange = (Reception Time – Transmission time) x Speed of Light
Time
Reception
About 20,000 km Time
Transit time
Slide : 29
GNSS: How does it work?
Principle of Satellite-based Navigation
(xk, yk, zk)
Receiver generates its own GPS signal similar to the signal
coming from the satellite for each satellite
➔Its called Replica Signal
➔The Replica Signal includes PRN Code and Carrier Signal
➔This Replica Signal is moved forward and backward to
match with the incoming signal
2 2 2
𝜌𝑘 = 𝑥0 − 𝑥𝑠𝑘 + 𝑦0 − 𝑦𝑠𝑘 + 𝑧0 − 𝑧𝑠𝑘 +𝜀
(x0,y0,z0)
If k ≥ 4, solve for x, y, z and errors including clock bias 𝜀 ∆t Correlation between Incoming Signal and
Receiver Generated Signal
Slide : 30
Error sources
Satellite Orbit Error
V = 4km/s
Satellite Clock Error
Ionospheric Delay
50 – 200Km
Tropospheric Delay
10Km
Multipath
Thermal Noise
Slide : 31
Pseudorange equation
Ideal Case: 𝜌0 = 𝑐 𝑡𝑟 − 𝑡𝑠
Tropospheric Delay
Satellite Clock Error
Ionospheric Delay
Slide : 32
Pseudorange model
Satellite
𝜌= 𝑥 − 𝑥𝑠 2 + 𝑦 − 𝑦𝑠 2 + 𝑧 − 𝑧𝑠 2 + 𝑐 𝛿𝑡𝑟 − 𝛿𝑡𝑠 + 𝜀 𝑥𝑠 , 𝑦𝑠 , 𝑧𝑠
𝜌0 𝜌0
Where:
x, y, z : Unknown receiver position
delta tr: Unknown receiver clock error
epsilon : minimize this error by finding an optimal solution 𝑥, 𝑦, 𝑧
Receiver
Slide : 33
PRN (Pseudo Random Noise) Code
• PRN Code is a sequence of randomly distributed zeros and ones that is one millisecond long.
• This random distribution follows a specific code generation pattern called Gold Code.
• There are 1023 zeros and ones in one millisecond.
• Each GPS satellite transmits a unique PRN Code.
• GPS receiver identifies satellites by its unique PRN code or ID.
• It continually repeats every millisecond
• The receiver can detect where the PRN code terminated or repeated.
• A unique sequence of bits indicates start of a PRN code.
• It helps to measure signal transit time and compute pseudorange between the receiver and the satellite
• Its also called C/A (Coarse Acquisition) code in GPS
1ms / 1023
1ms
Slide : 34
Pseudorange (Code-Phase Measurement) - 2
Slide : 35
Carrier-Phase Measurement – 1
• Carrier-Phase measurement is done by counting the number of cycles coming from the satellite to the
receiver.
• However, there are many complexities in measuring total number of cycles (N) from the satellite to the
receiver.
• This is called integer ambiguity
• This is due to the fact that all cycles are the same and there are no headers to tell the receiver when a new cycle has
arrived after number of cycles as in PRN code.
• A PRN code has a header to tell the receiver that this is the beginning of the PRN code that is 1023 chips long.
• There are algorithms to solve this problem of ambiguity resolution.
• One complete cycle for GPS L1 band is 19cm long.
• Thus, if we can measure one wavelength, we can get 19cm accuracy
• If we can measure 1/10th of a cycle, we get about 2cm accuracy.
• Thus, Carrier-Phase measurement can provide centimeter level accuracy.
2cm
19cm
Slide : 36
Code-Phase (PRN Code) vs. Carrier-Phase Measurement
21,000
000
010
020
300
PRN Code
Carrier Signal
19cm
Measuring distance between the satellite and the receiver with a tape
Measuring distance between the satellite and the receiver with a tape
that has distance markings but distance values are not written.
that has distance markings as well as distance values written. So that we
We only know that each distance marker is 19cm apart. So, we need to
can measure correct distance.
count at certain point the number of cycles separately that’s coming to
the receiver.
Slide : 37
How to Improve GPS Accuracy?
Slide : 38
GPS Position Accuracy
How to achieve accuracy from few meters to few centimeters?
meter centimeter
SPP (Single Point Position) DGPS (Differential GPS) RTK (Real Time Kinematic)
Code-phase observation Carrier-phase observation
Slide : 39
Error sources
Satellite Orbit Error
V = 4km/s
Satellite Clock Error
Ionospheric Delay
50 – 200Km
Tropospheric Delay
10Km
Multipath
Thermal Noise
Slide : 40
Errors in GPS Observation (L1C/A Signal)
One-Sigma Error , m
Error Sources Comments
Total DGPS
Satellite Orbit 2.0 0.0
Common errors are removed
Satellite Clock 2.0 0.0
Ionosphere Error 4.0 0.4
Common errors are reduced
Troposphere Error 0.7 0.2
Multipath 1.4 1.4
Receiver Circuits 0.5 0.5
If we can remove common errors, position accuracy can be increased.
Common errors are: Satellite Orbit Errors, Satellite Clock Errors and Atmospheric Errors (within few km)
Values in the Table are just for illustrative purpose, not the exact measured values.
Table Source : http://www.edu-observatory.org/gps/gps_accuracy.html#Multipath
Slide : 41
How to Improve Accuracy?
Slide : 42
Observation Methods for High-Accuracy
Slide : 43
Which Method: DGPS, SBAS, RTK, PPP?
http://www.novatel.com/an-introduction-to-gnss/chapter-5-resolving-errors/
Slide : 44
How to Improve Accuracy?
Use Differential Correction (DGPS / RTK)
30
GPS
Slide : 46
Data Formats:
Standard Formats: NMEA, RINEX, RTCM, BINEX
Proprietary Data Formats: UBX, SBF, JPS, Txx/Rxx etc.
References: https://www.nmea.org/
Slide : 47
National Marine Electronics Association (NMEA) Format
References: https://www.nmea.org/
Slide : 48
NMEA Data Format
GGA - Fix data which provide 3D location and accuracy data.
$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47
Where: GGA Global Positioning System Fix Data
123519 Fix taken at 12:35:19 UTC
4807.038, N Latitude 48 deg 07.038' N
(do not read it as four thousand eight hundred seven…
Read it as 48 degrees, 07.038 minutes)
01131.000, E Longitude 11 deg 31.000' E
1 Fix quality:
0 = invalid ,
1 = GPS fix (SPS),
2 = DGPS fix,
3 = PPS fix,
4 = Real Time Kinematic (RTK FIX)
5 = RTK Float
6 = estimated (dead reckoning) (2.3 feature)
7 = Manual input mode
8 = Simulation mode
08 Number of satellites being tracked
0.9 Horizontal dilution of position
545.4,M Altitude, Meters, above mean sea level
46.9,M Height of geoid (mean sea level) above WGS84 ellipsoid
(empty field) time in seconds since last DGPS update (empty field) DGPS station ID number
*47 the checksum data, always begins with *
Slide : 49
RINEX Data Format
• RINEX: Receiver Independent Exchange Format is a data exchange format for raw satellite data
among different types of receivers.
• Different types of receivers may output position and raw data in proprietary formats
• For post-processing of data using DGPS or RTK it is necessary to use data from different types of
receivers. A common data format is necessary for this purpose.
• Example: How to post process data from Trimble, Novatel and Septenrtio receivers to compute a
position?
• RINEX only provides Raw Data. It does not provide position output.
• User has to post-process RINEX data to compute position
• Raw data consists of Pseudorage, Carrierphase, Doppler, SNR
• RINEX basically consists of two data types
• “*.*N” file for Satellite and Ephemeris Related data.
• Also called Navigation Data
• “*.*O” file for Signal Observation Data like Pseudorange, Carrier Phase, Doppler, SNR
• Also called Observation Data
• The latest RINEX version is 3.04, 23 NOV 2018
• Note: Not all the software and receivers are yet compatible with the latest version
• Make sure which version of RINEX works the best with your software
Slide : 50
RINEX “N” File for GPS
Slide : 51
RINEX “O” File GPS, GLONASS, GALILEO, QZSS, SBAS
Slide : 52
RINEX “O” File, Continued from previous slide
Slide : 53
BINEX: Binary Exchange Data Format
• BINEX is a data format to exchange GNSS raw data between the receivers for systems
• Defined by Record IDs
• Record 0x00 = 0 for site/monument/marker/reference point/setup metadata
• Record 0x01 = 1 for GNSS navigation information
• Record 0x02 = 2 for generalized GNSS
• Record 0x03 = 3 for generalized ancillary site data
• Record 0x04 = 4 for receiver internal state data
• Record 0x05 = 5 for processed results, e.g. PVT
• Record 0x7d = 125 for receiver internal state data prototyping
• Record 0x7e = 126 for ancillary site data prototyping
• Record 0x7f = 127 for GNSS data prototyping
• Records may have Sub-Record IDs
Slide : 54
RTCM
Slide : 55
RTCM
• MT 1- 100 : Experimental Messages
• MT 1001 – 1230 : GNSS Messages
• MT 4001 – 4095 : Proprietary Messages
• Example: Observation Messages
• GPS L1 MT: 1001, 1002
• GPS L1/L2 MT: 1003, 1004
• GLONASS L1 MT: 1009, 1010
• GLONASS L1/L2 MT: 1011, 1012
• Station Coordinates MT: 1005,1006
• Antenna Description MT: 1007,1008
• Example: MT1004
• Extended L1&L2 GPS RTK Observables
• This GPS message type is the most common observational message type, with L1/L2/SNR content.
Slide : 56
Coordinate Systems
Slide : 57
Geodetic Coordinate System
Satellite
Pole
Semi Minor Axis
User at P (Latitude, Longitude, Height)
Geodetic Longitude at P
Slide : 58
ECEF (Earth Centered, Earth Fixed)
ECEF Coordinate System is expressed by assuming the center of the earth coordinate as (0, 0, 0)
P (X, Y, Z)
(0, 0, 0)
Equator
Slide : 59
Coordinate Conversion from
ECEF to Geodetic and vice versa
ECEF (X, Y, Z) to
Geodetic Latitude, Longitude & Height to Geodetic Latitude, Longitude & Height
ECEF (X, Y, Z)
𝑍+𝑒 2 𝑏 𝑠𝑖𝑛3 𝜃
𝜑=atan
𝑝−𝑒 2 𝑎𝑐𝑜𝑠 3 𝜃
𝑋 = 𝑁 + ℎ cos 𝜑 cos 𝜆
𝜆=atan2 𝑦, 𝑥
𝑌 = 𝑁 + ℎ cos 𝜑 sin 𝜆 𝑃
ℎ= −N 𝜑
cos 𝜑
Z = 𝑁 1 − 𝑒 2 + ℎ sin 𝜑
𝑃= 𝑥2 + 𝑦2
𝜑 = 𝐿𝑎𝑡𝑖𝑡𝑢𝑑𝑒
𝜆 = 𝐿𝑜𝑛𝑔𝑖𝑡𝑢𝑑𝑒 𝑍𝑎
𝜃 = 𝑎𝑡𝑎𝑛
h = Height above Ellipsoid 𝑃𝑏
𝑎
𝑁 𝜑 =
1−𝑒 2 𝑠𝑖𝑛2 𝜑
a = semi-major axis
b = semi-minor axis
e^2 = 1 – (b^2/a^2)
Slide : 60
Geodetic Datum: Geometric Earth Model
Pole GPS uses WGS-84 Datum
But, topographic maps and many other maps use different
Semi-Minor Axis, b
datum. Before using GPS data on these maps, its necessary
to convert GPS coordinates from WGS-84 to local
coordinate system and datum. Many GPS software have
this tool. Also, GPS receivers have built-in datum selection
capabilities.
Semi-Major Axis, a Check your receiver settings before using.
Equator
WGS-84 Geodetic Datum Ellipsoidal Parameters
Semi-Minor Axis, b = 6356752.3142m
Semi-Major Axis, a = 6378137.0m
Flattening, f = (a-b)/a
= 1/298.257223563
First Eccentricity Square = e^2 = 2f-f^2
= 0.00669437999013
Slide : 61
Ellipsoid, Geoid and Mean Sea Level (MSL)
Mountain Peak
1 Ellipsoidal height (h)
h MSL Height, H
N
N
Sea
Land, Mountains, Valleys
Sea
MSL Height (H) = Ellipsoidal height (h) – Geoid height (N) Example at point (1) : h = 1200m, N = -30m Example at point (2) : h = 300m, N = +15m
Geoid Height is negative if its below Ellipsoidal height H = h – N = 1200 – (-30) = 1200 + 30 = 1230m H = h – N = 300 – 15 = 285m
Slide : 62
Height Data Output in u-blox Receiver, NMEA Sentence, $GNGGA Sentence
MSL (Altitude) Geoid Separation
$GNVTG,,T,,M,0.010,N,0.018,K,D*30 Geoid Height
$GNGGA,012039.00,3554.18235,N,13956.35867,E,2,12,0.48,54.4,M,39.6,M,0.0,0000*5D
$GNGSA,A,3,03,04,06,09,17,19,22,28,194,195,02,,0.92,0.48,0.78,1*06
$GNGSA,A,3,11,12,04,24,19,31,33,,,,,,0.92,0.48,0.78,3*00
$GNGSA,A,3,30,01,03,14,08,28,33,04,02,07,10,13,0.92,0.48,0.78,4*08
$GPGSV,5,1,17,01,18,076,,02,04,279,36,03,43,045,43,04,34,109,41,1*6C
$GPGSV,5,2,17,06,38,295,43,09,26,152,40,11,02,107,29,17,74,330,47,1*67
$GPGSV,5,3,17,19,53,320,45,22,22,048,39,28,36,213,43,41,18,249,39,1*6D
$GPGSV,5,4,17,50,46,201,40,193,52,172,43,194,16,193,40,195,85,163,46,1*5E
$GPGSV,5,5,17,199,46,201,37,1*66
$GAGSV,2,1,07,04,25,175,40,11,28,299,37,12,65,007,43,19,50,105,40,7*72
The NMEA sentences in this figure are from u-blox receiver.
$GAGSV,2,2,07,24,27,245,41,31,09,198,36,33,33,082,42,7*43 NMEA format uses “Mean Sea Level” for height data (shown in blue texts).
Also it provides Geoid Height (Geoid Separation) value.
$GBGSV,4,1,15,01,48,172,43,02,19,248,36,03,39,225,43,04,44,148,42,1*7C GPS by default is Ellipsoidal height and this height is converted to Mean Sea Level height
using the geoid Height (shown in red texts) .
$GBGSV,4,2,15,06,00,185,29,07,39,214,41,08,53,305,43,10,44,248,42,1*7C This means, u-blox receiver uses a built-in database of Geoid Height.
$GBGSV,4,3,15,13,33,283,42,14,23,043,38,27,55,323,48,28,61,092,48,1*71 U-blox also outputs Ellipsoidal height in proprietary message $PUBX,00 (marked as altRef)
$PUBX,00,time,lat,NS,long,EW,altRef,navStat,hAcc,vAcc,SOG,COG,vVel,diffAge,HDOP,VDO
$GBGSV,4,4,15,30,05,306,36,32,17,206,42,33,48,055,46,1*4F
P,TDOP,numSvs,reserved,DR,*cs<CR><LF>
$GNGLL,3554.18235,N,13956.35867,E,012039.00,A,D*76 altRef ➔ Altitude above user datum ellipsoid
Slide : 63
Points to Be Careful in GPS Survey
• Datum
• Which Datum is used for GPS Survey?
• By default, GPS uses WGS-84
• But, your Map may be using different datum like Everest
• Make Sure that Your Map and Your Coordinates from the GPS are in the same Datum, if
not, datum conversion is necessary
• You can get necessary transformation parameters from your country’s survey
department
• Height
• Which Height is used?
• By default GPS uses Ellipsoidal Height
• But, your Map may be using Mean Sea Level (MSL or Topographic) Height
• You need to convert from Ellipsoidal Height into MSL Height
• Use Ellipsoidal and Geoid height Difference Data for your survey region
• You can get it from your country’s survey office
Slide : 64
GNSS Errors
Slide : 65
Background Information: Accuracy vs. Precision
• Accuracy
• Capable of providing a correct measurement
• Measurement is compared with true value
• Affected by systematic error
• Precision
• Capable of providing repeatable and reliable measurement
• Statistical analysis of measurement provides the precision
• Measure of random error
• Systematic error has no effect
Neither Precise nor Accurate Precise but Not Accurate Accurate but Not Precise? Precise and Accurate
Slide : 66
GNSS Measurement Errors
Measure Abbreviation Definition
Root Mean Square RMS The square root of the average of the squared errors
Twice Distance RMS 2D RMS Twice the RMS of the horizontal errors
A circle's radius, centered at the true antenna position,
Circular Error Probable CEP
containing 50% of the points in the horizontal scatter plot
Horizontal 95% A circle's radius, centered at the true antenna position,
R95
Accuracy containing 95% of the points in the horizontal scatter plot
A sphere’s radius centered at the true antenna position,
Spherical Error Probable SEP containing 50% of the points in the three dimensional scatter
plot
Source: GPS Accuracy: Lies, Damn Lies, and Statistics, GPS World, JAN 1998
https://www.gpsworld.com/gps-accuracy-lies-damn-lies-and-statistics/
Slide : 67
Commonly Used GNSS Performance Measurements
• TTFF
• True Time to First Fix
• Parameter: Cold Start, Warm Start, Hot Start
• Standard Accuracy
• Accuracy attainable without any correction techniques
• DGPS Accuracy
• Accuracy attainable by differential correction data
• Code-phase correction
• RTK Accuracy
• Accuracy attainable by differential correction data
• Use both Code-Phase and Carrier Phase correction
Slide : 68
TTFF and Typical Example Values
• TTFF
• Cold Start : < 36 seconds
• Time required to output first position data since the receiver power is on
• No reference data like time or almanac are available
• Warm Start : < 6 seconds
• Time required to output first position data since the receiver power is on
with the latest satellite almanac data in the receiver’s memory
• Time and almanac related reference data are already known
• Hot Start : < 1 second
• Receiver has already output position data
• Time to reacquire an already tracked satellite due to temporary blockage
by buildings or trees
Slide : 69
Performance Measurement of RTK Accuracy
• A fix error and a variable error with respect to base-length is given
• Such as : x cm + y ppm
• Example: 2cm + 1ppm
• There is a fix error of 2cm plus 1ppm error due to base-length between the Base and Rover
• 1ppm ➔ 1 parts per million
• ➔ 1cm of error in 1 million centimeter distance between the Base and the Rover
• ➔ 1cm of error in 1000000 centimeter distance between the Base and the Rover
• ➔ 1cm of error in 10000 meter distance between the Base and the Rover
• ➔ 1cm of error in 10 kilometer distance between the Base and the Rover
• ➔ 1cm of error for every 10Km of distance between the Base and the Rover
• ➔ 4cm of error for 40Km of distance between the Base and the Rover
• Thus the total error is : 2cm + 4cm due to 40Km of base length
• The longer the base-length, the larger the error
• Do not assume that this error is linear
• And it may not be valid for longer base-lines
• Normally the recommended base-length for RTK for a Geodetic Receiver is 40Km
Slide : 70
Low-Cost High-Accuracy Receiver Systems
RTKDROID, MADROID, MAD-WIN, MAD-π
Slide : 71
Objectives
• Develop Low-Cost High-Accuracy Positioning Systems (L-CHAPS)
• System Integration of commercially available receiver or module
• For RTK and MADOCA
• Avoid use of computer to minimize the cost
• Use Single Board Computer (SBC)
• RaspberryPi, Arduino, Spresense
$100 System PPK
• Use Tablet or Smart-Phone
• Android devices are quite flexible and easier to use PC
Slide : 72
How to Make a Low-Cost GNSS Receiver System?
External
Memory Hard Disk
Memory Device
Arduino
RaspberryPi
GNSS Module
or Receiver
Micro-Controller
Single Board
or
Computer
Micro-Processor
Sony, Spresense A smart-phone has
everything that we
need
• CPU
• Memory
WiFi, BT, • External
External Interface
Interface Ethernet, MQTT,
Low-Cost SDR Device • GNSS Receiver
IoT links • Sensors
$30 ESP32 is a powerful Micro-
controller with WiFi/BT
• Note: We use these modules for high accuracy positioning system based on RTK and MADOCA PPP or other GNSS/QZSS special applications.
• There are many other GNSS modules as well. We have no intention of any purpose to name some of the makers here.
Slide : 73
Low-Cost High-Accuracy Receiver system Development Cycle
Target
Type Current Cost Description Difficulties
Cost
Single or Dual Frequency Receiver
RTK $100 $300 - $600 Dual Frequency Antenna
RaspberryPi Device
Cost
Dual Frequency GNSS Receiver Low-cost MADOCA module is not
MADOCA $300 $500 - $1,000 Triple Frequency GNSS Antenna yet available off-the-shelf
RaspberryPi Device Cost factor of Antenna
• Cost of accessories, cables, connectors and power supply unit are not included
Slide : 75
High-End Survey Grade Receivers
L5/E5/B2/L3 L2 L6/E6/B3 L1/E1/B1
• Multi-frequency
• GPS : L1/L2/L5
• GLONASS : L1/L2/L3
• GALILEO : E1/E5/E6
• BDS : B1/B2/B3
• QZSS : L1/L2/L5/L6
• NAVIC : L5/S
• Multi-system
• GPS, GLONASS, GALILEO, BeiDou, QZSS,
NAVIC, SBAS etc
• Price varies from $1, 000 to $30,000 or
more
Slide : 76
Low-Cost Receivers
L1/E1/B1*
• Multi-System
• GPS, GLONASS, GALILEO, BeiDou, QZSS, SBAS etc
• Basically Single Frequency
• L1/E1/B1-Band
• Very soon: Multi-System, Multi Frequency, L1/L2 or L1/L5
• Future trend for Mass Market System will be L1/L5
• Some chip makers have already announced Multi-System, Multi-
Frequency GNSS Chips for Mass Market
• Low Cost:
• Less than $300 (Multi-GNSS, L1 Only) including Antenna and all
necessary Hardware, Software
• Our target is within $100 including everything.
*Note: Only one signal type from each system is processed
e.g. GPS has L1C/A and L1C in L1, ,but only L1C/A is used in Low-Cost Receiver
Slide : 77
Low-Cost RTK Receiver System
TYPE R1 Type A: Low-Cost, High-Accuracy Receiver System TYPE R2 Type B: Low-Cost, High-Accuracy Receiver System
Real-Time and Post-Processing, Base and Rover Mode For Post-Processing & Rover Mode Only
Tablet
GNSS Antenna Rover RasPi
APP
GNSS Antenna Rover
Ver. : 1.0
BT
Raspberry Pi Zero w/WiFi&BT
GNSS Raspberry Pi 3B
Receiver GNSS
internet Receiver
RTCM for NTRIP
RTK Caster
TYPE A1 Type C: Low-Cost, High-Accuracy Receiver System Type D: Low-Cost, High-Accuracy Receiver System
TYPE MA
Real-Time and Post-Processing, Rover Mode Only Real-Time and Post-Processing, Rover Mode Only
Slide : 78
Type – A1: GNSS Receiver with Android Device
RTCM for
Android
GNSS Device
Real-time
Receiver RTKDROID RTK
Ver. : 1.0
WiFi
NTRIP
Caster
Type A1:
Rover Mode
Real-Time and Post-Processing RTK
Based on RTKLIB Engine
Real-time processing in Android Device GNSS Receiver Module
APP: RTKDroid
Slide : 79
MADOCA System: Direct from QZSS or Online Correction Data
QZSS QZSS
GNSS Signals
GNSS Signals
Antenna Antenna
GNSS /
MADOCA PPP Position GNSS MADOCA PPP Position
MADOCA
Processor Output Receiver Processor Output
Receiver
Online MADOCA
Correction Data
Slide : 80
MADOCA PPP Receiver System
65
Antenna
F9P GNSS Receiver
50 COM Port: 1
L1/L2/E5B
GNSS Data
GNSS Antenna
Slide : 81
Screen Shots of RTKDROID and MADROID
Connect GNSS receiver to
Android device
(1) RTKDROID :
For RTK or PPK
(2) MADROID:
for MADOCA-PPP,
MADOCA-PPP/AR (future)
Slide : 82
MAD-WIN / MAD-PI / MADROID
Slide : 83
MAD-WIN / MAD-PI / MADROID Software Specifications
MAD-WIN MAD-π MADROID
System Architecture
Slide : 84
New MAD-WIN / MAD-PI / MADROID Software Specifications
New MAD-WIN New MAD-π New MADROID (Not Released yet)
System Architecture
Slide : 85
MAD-WIN / MAD-PI User Interface
Log Files:
1. Solution: MADOCA PPP Solution in NEMA format
2. Rover: Rover RAW Data in receiver’s proprietary format
Can be used for PPK (Post-Processing Kinematic) Solution or
Post-Processing PPP
3. Correction: MADOCA PPP Correction Data in receiver’s
proprietary format
Can be used for Post-Processing MADOCA
Slide : 86
MAD-WIN Data Observation
Receiver: Online receiver access in Kashiwa / Correction Data: MADOCA Receiver in Bali
Slide : 87
MAD-PI:MADOCA with RaspberryPi Device
• MAD-Pi has been tested with RaspberryPi-3B device
• It also works with RaspberryPi-4B
• If the device does not work, please try with a different USB port
• Do not remove and insert SD Card several times. It may get
damaged.
• Observation data can be logged to an external USB memory
disk. Memory drive of upto 64GB is supported.
• Files are created at 6-hour interval with Date/Time based filename.
• Ras-Pi 4 device consumes more power than Ras-Pi 3 device.
Continuous operation of the device will generate heat. Keep
the device in well ventilated area
• Do not keep the device in a closed box
• We have set both Ras-Pi 3 and Ras-Pi 4 devices with touch
screens for easy operation.
• Mouse and External keyboard can be connected either via BT or USB ports
• Ras-Pi device can be connected by an Android device using BT