RTKLIB ver. 2.4.2 Manual
Contents
April 29, 2013
3
2.1
2.2
1 Overview .............................................................................................................................................................. 1
2 User Requirements .............................................................................................................................................. 3
System Requirements ................................................................................................................................. 3
License .......................................................................................................................................................... 4
Instructions .......................................................................................................................................................... 5
Installation and Uninstallation .................................................................................................................. 5
3.1
Real‐Time Positioning with RTKNAVI ..................................................................................................... 7
3.2
Configure Input, Output and Log Streams for RTKNAVI ................................................................... 22
3.3
Post‐Processing Analysis with RTKPOST .............................................................................................. 29
3.4
Configure Positioning Options for RTKNAVI and RTKPOST ............................................................ 34
3.5
Convert Receiver Raw Data to RINEX with RTKCONV ..................................................................... 50
3.6
View and Plot Solutions with RTKPLOT ............................................................................................... 55
3.7
3.8
View and Plot Observation Data with RTKPLOT ................................................................................. 69
3.9 Download GNSS Products and Data with RTKGET ............................................................................ 77
3.10 NTRIP Browser .......................................................................................................................................... 83
3.11 Use CUI APs of RTKLIB ........................................................................................................................... 86
4 Build APs or Develop User APs with RTKLIB .............................................................................................. 87
Rebuild GUI and CUI APs on Windows ................................................................................................ 87
4.1
Build CUI APs ............................................................................................................................................ 88
4.2
4.3 Develop and Link User APs with RTKLIB ............................................................................................. 89
Appendix A CUI Command References ........................................................................................................... 90
A.1 RTKRCV ..................................................................................................................................................... 90
A.2 RNX2RTKP ................................................................................................................................................. 93
A.3 POS2KML ................................................................................................................................................... 95
A.4 CONVBIN .................................................................................................................................................. 96
STR2STR ..................................................................................................................................................... 99
A.5
Copyright (C) 2007‐2013, T. Takasu. All rights reserved.
i
Appendix B
File Formats .................................................................................................................................. 101
Positioning Solution File ......................................................................................................................... 101
B.1
SBAS Log File ........................................................................................................................................... 104
B.2
B.3
Solution Status File .................................................................................................................................. 106
B.4 Configuration File ................................................................................................................................... 109
B.5 URL List File for GNSS Data .................................................................................................................. 112
Appendix C API References ............................................................................................................................. 114
Files and Messages ...................................................................................................................... 122
Appendix D
Supported RINEX Files ........................................................................................................................... 122
D.1
Supported Receiver Messages ............................................................................................................... 123
D.2
D.3
Supported Signal IDs/Observation Types ............................................................................................ 125
D.4 Default Priorities of Multiple Signals ................................................................................................... 127
D.5 Receiver Dependent Input Options ...................................................................................................... 128
Appendix E Models and Algorithms .............................................................................................................. 129
Time System ............................................................................................................................................. 131
E.1
E.2 Coordinates System ................................................................................................................................ 134
E.3 GNSS Signal Measurement Models ...................................................................................................... 137
E.4 GNSS Satellite Ephemerides and Clocks .............................................................................................. 142
Troposphere and Ionosphere Models ................................................................................................... 149
E.5
E.6
Single Point Positioning .......................................................................................................................... 154
E.7 Kinematic, Static and Moving‐Baseline ................................................................................................ 161
PPP (Precise Point Positioning) .............................................................................................................. 171
E.8
Appendix F GNSS Signal Specifications ........................................................................................................ 177
References ................................................................................................................................................................ 179
ii
RTKLIB ver. 2.4.2 Manual
1 Overview
RTKLIB is an open source program package for standard and precise positioning with GNSS (global
navigation satellite system). RTKLIB consists of a portable program library and several APs (application
programs) utilizing the library. The features of RTKLIB are:
(1) It supports standard and precise positioning algorithms with:
GPS [1][2][3], GLONASS [4], Galileo [5], QZSS [6], BeiDou [7] and SBAS [8]
(2) It supports various positioning modes with GNSS for both real‐time‐ and post‐processing:
Single, DGPS/DGNSS, Kinematic, Static, Moving‐Baseline, Fixed, PPP‐Kinematic, PPP‐Static and
PPP‐Fixed.
(3) It supports many standard formats and protocols for GNSS:
RINEX 2.10 [9], 2.11 [10], 2.12 [11] OBS/NAV/GNAV/HNAV/LNAV/QNAV, RINEX 3.00 [12], 3.01 [13], 3.02 [14]
OBS/NAV, RINEX 3.02 CLK [15], RTCM ver.2.3 [16], RTCM ver.3.1 (with amendment 1‐5) [17], RTCM
ver.3.2 [18], BINEX [19], NTRIP 1.0 [20], NMEA 0183 [21], SP3‐c [22], ANTEX 1.4 [23], IONEX 1.0 [24], NGS PCV
[25] and EMS 2.0 [26] (refer Appendix D.1 and D.2 for details).
(4) It supports several GNSS receiversʹ proprietary messages:
NovAtel [27]: OEM4/V/6, OEM3, OEMStar, Superstar II, Hemisphere [28]: Eclipse, Crescent, u‐blox [29]:
LEA‐4T/5T/6T, SkyTraq [30]: S1315F, JAVAD [31] GRIL/GREIS, Furuno [32] GW‐10‐II/III and NVS [33]
NV08C BINR (refer Appendix D.2 for details).
(5) It supports external communication via:
Serial, TCP/IP, NTRIP, local log file (record and playback) and FTP/HTTP (automatic download).
(6) It provides many library functions and APIs (application program interfaces):
Satellite and navigation system functions, matrix and vector functions, time and string functions,
coordinates transformation, input and output functions, debug trace functions, platform dependent
functions, positioning models, atmosphere models, antenna models, earth tides models, geoid models,
datum transformation, RINEX functions, ephemeris and clock functions, precise ephemeris and clock
functions, receiver raw data functions, RTCM functions, solution functions, Google Earth [34] KML
converter, SBAS functions, options functions, stream data input and output functions, integer
ambiguity resolution, standard positioning, precise positioning, post‐processing positioning, stream
server functions, RTK server functions, downloader functions.
(7) It includes the following GUI (graphical user interface) and CUI (command‐line user interface) APs. ()
shows the section describing the instruction for each AP in the manual.
1
RTKLIB ver. 2.4.2 Manual
Function
(a) AP Launcher
(b) Real‐Time Positioning
(c) Communication Server
(d) Post‐Processing Analysis
(e) RINEX Converter
(f)
(g)
Plot Solutions and
Observation Data
Downloader for GNSS
Products and Data
(h) NTRIP Browser
GUI AP
RTKLAUNCH
(3.1)
RTKNAVI
(3.2, 3.3, 3.5)
STRSVR,
(3.3)
RTKPOST
(3.4, 3.5)
RTKCONV
(3.6)
RTKPLOT
(3.7, 3.8)
RTKGET
(3.9)
SRCTBLBROWS
(3.10)
CUI AP
Notes
‐
RTKRCV
(3.11, A.1)
STR2STR
(3.11, A.5)
RNX2RTKP
(3.11, A.2)
CONVBIN
(3.11, A.4)
‐
‐
‐
(8) All of the executable binary APs for Windows are included in the package as well as whole source
programs of the library and the APs.
RTKLIB GUI APs on Windows 7
2
RTKLIB ver. 2.4.2 Manual
2
User Requirements
2.1 System Requirements
The executable binary GUI and CUI APs included in the package require Microsoft Windows [35]
environment. On the other OS or environment, you have to compile and build CUI APs by yourself.
All of the library functions and APIs were written in ANSI C (C89). The library internally uses winsock and
WIN32 thread for Windows with the compiler option ‐DWIN32 and the standard socket and pthread
(POSIX thread) for Linux/UNIX without any option. By setting the compiler option ‐DLAPACK or ‐DMKL,
the library uses LAPACK/BLAS [36] or Intel MKL [37] for fast matrix computation.
The CUI APs were also written in ANSI C. The library and CUI APs can be built on many environments like
gcc on Linux. The GUI APs were written in C++ and utilize Embarcadero/Borland VCL (visual component
library) [38] for GUI toolkits. All of the executable binary APs in the package were built by Embarcadero C++
builder XE2 Starter Edition on Windows 7.
The executable GUI APs were tested on Windows 7 (64bit). The CUI APs were also built and tested on
Ubuntu [39] 11.04 Linux and x86 CPU.
Notes: Previous versions of RTKLIB until ver. 2.4.1 were built by a free edition of Borland C++ (Turbo C++
2006). Turbo C++, however, is no longer supported in ver. 2.4.2 because of type incompatibility problem of
GUI strings between ver.2.4.2 and the previous ones.
3
RTKLIB ver. 2.4.2 Manual
2.2 License
The RTKLIB software package is distributed under the following BSD 2‐clause license [40] and additional
two exclusive clauses. Users are permitted to develop, produce or sell their own non‐commercial or
commercial products utilizing, linking or including RTKLIB as long as they comply with the license.
Notes: Previous versions of RTKLIB until ver. 2.4.1 had been distributed under GPLv3 [59] license.
‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐‐
Copyright (c) 2007‐2013, T. Takasu, All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided
that the following conditions are met:
Redistributions of source code must retain the above copyright notice, this list of conditions and the
following disclaimer.
Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
the following disclaimer in the documentation and/or other materials provided with the distribution.
The software package includes some companion executive binaries or shared libraries necessary to
execute APs on Windows. These licenses succeed to the original ones of these software.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ʺAS ISʺ AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4
RTKLIB ver. 2.4.2 Manual
3
Instructions
3.1
Installation and Uninstallation
(1) Extract the program package rtklib_.zip or rtklib__bin.zip to appropriate
directory ( indicates the version number). The RTKLIB directory structure is as
follows.
rtklib_
\src
\bin
\data
\app
\rcv
\rtknavi
\rtknavi_mkl
\strsvr
\rtkpost
\rtkpost_mkl
\rtkplot
\rtkconv
\srctblbrows
\rtkget
\rtklaunch
\rtkrcv
\rnx2rtkp
\pos2kml
\convbin
\str2str
\appcmn
\icon
\lib
\test
\util
\doc
: Source programs of RTKLIB library *
: Source programs depending on GPS/GNSS receivers *
: Executable binary APs and DLLs for Windows
: Sample data for APs
: Build environment for APs *
(GUI) *
: RTKNAVI
(GUI) *
: RTKNAVI_MKL
(GUI) *
: STRSVR
(GUI) *
: RTKPOST
: RTKPOST_MKL
(GUI) *
(GUI) *
: RTKPLOT
(GUI) *
: RTKCONV
: NTRIP Browser
(GUI) *
(GUI) *
: RTKGET
(GUI) *
: RTKLAUNCH
: RTKRCV
(CUI) *
(CUI) *
: RNX2RTKP
(CUI) *
: POS2KML
(CUI) *
: CONVBIN
: STR2STR
(CUI) *
: Common routines for GUI APs *
: Icon data for GUI APs *
: Libraries generation environment*
: Test program and data *
: Utilities *
: Document files
* Not included in the binary package rtklib__bin.zip
5
RTKLIB ver. 2.4.2 Manual
(2) Create the shot‐cuts of the GUI AP executable binaries in \rtklib_\bin. To
execute CUI APs, add \rtklib_\bin to the command path.
(3) The GUI and CUI APs in RTKLIB never utilize the Windows registry. To uninstall the package, simply
delete the whole files and directories in the installed directory.
(4) Optional settings for GUI APs are saved in INI files (*.ini) usually placed in the directory \rtklib_\bin. Note that the directory for the INI files is changed in ver. 2.4.2. To
succeed your optional settings for the previous version RTKLIB APs, please copy the INI files (*.ini) in
c:\Windows to the directory \rtklib_\bin.
(5) Some GUI APs (RTKCONV, RTKPOST, RTKNAVI, RTKGET and STRSVR) can be executed with the
command line option -i .ini to select an alternative INI file for another optional settings.
You can switch options for such APs by using the command line option as well as the option -t
to change the window title. So you can configure multiple short‐cuts for the same GUI AP
with different options by setting the properties of these short‐cuts.
(6) To use RTKPOST_MKL or RTKNAVI_MKL, which is the Intel‐MLK‐library‐linked version RTKPOST
or RTKNAVI for faster matrix computation on multiple‐core CPU or multiple‐processor PCs, please set
the Windows environment variable OMP_NUM_THREADS to 2, 4 or 8 according to the number of the
CPU cores. That enables multi‐threading matrix computation in order to shorten processing time.
(7) To execute GUI APs easily, an AP launcher application RTKLAUNCH is added in ver. 2.4.2. To run
RTKLAUNCH, execute \rtklib_\bin\rtklaunch.exe. You can click AP
icons in the RTKLAUNCH window or select pop‐up menus at the task‐tray‐icon in order to execute
RTKLIB APs. RTKLAUNCH accepts the option -mkl to launch RTKPOST_MKL and RTKNAVI_MKL
instead of RTKPOST and RTKNAVI, and the option -tray to start the launcher as a task‐tray‐icon.
RTKPLOT RTKCONV STRSVR
RTKPOST NTRIP Browser RTKNAVI RTKGET
Figure 3.1‐1 RTKLAUNCH window and launcher icons for APs
Button to iconize in
Windows Task Tray
6