-
Notifications
You must be signed in to change notification settings - Fork 9
Setup
Setting up RTKLIB Tools and dependencies
##Installation Notes Before we can use RTKLIB-Tools, we will first need to set up the dependencies in environment variables required. RTKLIB-Tools is a Python oriented tool kit, and is thus a a set of interpreted scrpts, with dependencies involving other Python libraries. Some of RTKLIB-Tools' dependencies however, such as RTKLIB, are binary files that must be compiled from original source code. This setup tutorial will step through installing and configuring a UNIX-based environment, however is entirely reliant upon open source code that should be freely available for alternate operating systems.
RTKLIB is the open source project used by RTKLIB-Tools. This project is maintained by Tomoji Takasu and is hosted at:
Current developmtn code can also be found at the project's github repo:
https://github.com/tomojitakasu/RTKLIB
Once we have downloaded the available source code, we will then need to compile into executable binary file which can later be called upon for batch operations using RTKLIB-Tools. Its also required to install some additional required C compiler and Linear Algebra packs in order to compile RTKLIB from source. These can be installed using the package, for example:
sudo apt-get install build-essential
sudo apt-get install automake
sudo apt-get install checkinstall
sudo apt-get install liblapack3gf
sudo apt-get install libblas3gf
Once we have install the necessary dependencies and downloaded the original source code, we can simply enter the source code's /app directory and execute the makefile script:
cd app/
sudo bash makeall.sh
The compiled binary file will simply be generated within /app/<name>/gcc
, where <name>
is the name for the function. RTKLIB-Tools currently only utilizes the available CUI APs available in RTKLIB, such as CONVBIN
, RNX2RTKP
, and RTKRCV
. Modifying the file permissions may be necessary to allow the file to be executable:
chmod +x <executable name>
RTKLIB-Tools uses a host of other python resorses including but not limited to:
Python 3.3
Setting up each python dependencies mentioned above can be tedious, if not repetitive. An easy alternative is to use a Python distribution tool, perhaps one intended for large-scale data processing, predictive analytics, and scientific computing. This is what Continuum provides for free with:
Anaconda: a convenient python distribution tool
Download the installation file for linux and simply run shell script using this as seen here:
bash <downloaded file>
Further documentation can be found at the Conda Into Page
The RTKLIB-Tools project can be downloaded from this git repo:
https://github.com/ruffsl/RTKLIB-Tools
Or can be directly cloned using git useing this command:
git clone https://github.com/ruffsl/RTKLIB-Tools
This project is sorted into severial folders. In the "Code" folder, within the root directory, is located the three main Ipython notebooks that provide examples using the various subroutines used with in processing and correcting Ron GPS measurements.
Load Data.ipynb
This notebook is used to convert raw observation data in the form of ublox\u2019s proprietary message format into industry standard RINEX v3.02 format. This is then used to calculate static and kinematic positional solution files.
Port Data.ipynb
Port data from positional solution files and combined batch solutions into a single usable database or .csv file. This will also perform some additional feature extraction using static position to calculate true error.
Fit Data.ipynb
This notebook is used to sit and train machine learning algorithms used to classify and predict the additional accuracy of positional solutions generated using differential GPS and RTKLIB methods.
scikit-learn: Is a friendly tools for data mining, data analysis and machine learning.
Anaconda comes with scikit-learn already, however as of writing this tutorial, scikit-learn comes only available for Python v2.7 from Anaconda. Although scikit-learn has not yet been completely ported to Python v3.3, fortunately elements used from this library within this project are already compatible. It is simply necessary to download, compile and install scikit-learn from the available source.
Download the package from:
http://pypi.python.org/pypi/scikit-learn/
Then unpack the sources and cd into the source directory.
This packages uses distutils, which is the default way of installing python modules. The install command is:
python3.3 setup.py install
PyEphem: Provides scientific-grade astronomical computations for the Python programming language.
This project is used to calculate the constellation positions or sky plot of of overheads GPS satellites with respect to the observer (or receiver antenna). Specifically this is used in multi path mitigation when determining candidate line of sight with perceived satellite measurements. Note that "ephem" is simply the name for the new Python v3.3 version of the PyEphem project.
Download the package from:
https://pypi.python.org/pypi/ephem/
Then unpack the sources and cd into the source directory.
This packages uses distutils, which is the default way of installing python modules. The install command is:
python3.3 setup.py install
geopy: Is a geocoding toolbox for Python
This project is used when calculating positions and distances using WGS-84 ellipsoid approximations, which is the most globally accurate for general applications. geopy is our small project hosted on a Google Code wiki.
Download the package from:
https://code.google.com/p/geopy/downloads/list
Then unpack the sources and cd into the source directory.
This packages uses distutils, which is the default way of installing python modules. The install command is:
python3.3 setup.py install
Congratulations!
Now you should be all set to ues RTKLIB-Tools and related toolkits.