This is my first post regarding geospatial technology. This will be one of the main subjects of the blog as I hope it will be a resource for people trying to learn more about the field.
RTKLib is an exciting project that brings the possibility of low-cost, high accuracy positioning using satellite navigation systems. RTKLib is capable of cm level accuracy which makes it very attractive for hobbyists and scientists who can't afford the hefty price tag of professional grade positioning systems.
This is part 1 of a 3 part introduction of using RTKLib software package in post processing mode. Part 1 will mainly focus on an overview of the software importing data and running a stand-alone positioning example with RTKLib. Part 2 will focus on processing RTK and while part 3 will use Precise Point Positioning (PPP).
RTKLib is an open source GNSS processing packaged developed and maintained by Tomoji Takasu from the Tokyo University of Marine Science and Technology in Japan. For those not familiar, RTK stands for real-time kinemtic, which is an algorithm for processing measurements made from satellite navigation systems such as the US's GPS. Although the name RTK implies "real-time" processing, many people use the term to refer to any differential positioning using carrier phase measurements, even if it is not performed in real-time.
The name RTKLib does not fully describe the package itself as there are many other tools included, for example:
- various other processing styles including single, DGNSS, kinematic, static,PPP and more.
- server communication
- analysis of raw data and results
- converting between binary and RINEX formats
- plotting solutions on Google earth
- downloading GNSS data
- browsing NTRIP sources.
Downloading and Installation
To download RTKLib you have two options. The more difficult option is to download the source files and compile them yourself. The easy way is to download the binaries shown below:
The Current release is v2.4.2, circled in red.Click the link to download the file and once you have downloaded the file, navigate to your downloads folder. Copy the file
rtklib_2.4.2_bin.zip to your Program Files folder and unzip it.
Double click the
rtklib_2.4.2 folder and the contents should be as follows:
rtklib_2.4.2/ |_____ bin/ |_____ data/ |_____ doc/ |_____ readme.txt
readme.txt contains an overview of the contents of the directories and the capabilities of the RTKlib applications, the
doc/ folder contains the user manual,
data/ contains some sample data and the actual applications are contained in the
To begin, double click the
bin folder. The main applications include:
- RTKPlot - this is pretty self-explanatory
- RTKConv - convert between raw data and RINEX formats.
- STRSVR - server communication
- RTKPost - Post processing: PPP/RTK/standalone
- NTRIP Browser - access NTRIP sources for streaming real-time data
- RTKNavi - real-time positioning in RTK mode
- RTKGet - Downloader for GNSS Products and Data
To start we will just run RTKLib in stand-alone positioning mode. Stand-alone positioning is similar to what is used for consumer handheld GPS units and does not rely on any external corrections. The accuracy of this method is usually around 2-5 meters.
You can download some sample data here. The sample data is taken from the IGS Tracking Network. Two RINEX files are included here that contain the raw pseudoranges and carrier phase observations, files ending in
o, along with a navigation file that contains the satellite positions and clock corrections, file ending in
n. We'll process file NRC1 in this example.
Setting up RTKPost
Double click on
RTKPost.exe. This will bring up the main dialog window:
The next step is to add the sample data. Click the button labelled
... besides (1) in the image above. Then, navigate to the location of the sample data folder and select the NRC1 file. Next click the
... besides (2) and add the
brdc0010.11n file. Finally, click
Once the process is finished you can click
View (4) to see the results. You can manipulate the view using the controls in the upper bar.
This plot does not show accuracy since we did not enter known values for the point. However, we can see that the majority of the points fall within a circle with a radius of about 2 meters. This indicates the precision of the solution.
So this tutorial describes the basics of RTKLib. In part 2 and part 3 We will test out the actual RTK algorithm and PPP algorithm. You can checkout part 2 here.