I setup a differential GPS system for my Raspberry Pi robot projects. I am using the RTK library for precise navigation. For the system, I need a base station and a mobile unit. The mobile unit is built into my home made robot Big Rob. My blog describes how the setup with a mobile unit, base station, two Raspberry Pi’s and the RTK library works.
The following picture shows the theoretical setup of my RTK solution.
On the left you see the robot car with the mobile unit. On the right you see the base station. Both, the robot and the base station are communicating to calculate their precise position. The GPS antennas I bought are using the USA-GPS signal, as well the Russian GLOSNOSS signal as a raw data stream.
I built the base station into a cheap lunch box which is waterproof, and could easily store a Raspberry Pi, power-bank and the GPS receiver. The box is inexpensive and easy to machine. The box needs to be waterproof because the whole setup is designed for an outdoor operation.
The next picture shows one Raspberry Pi with a GPS receiver module mounted on top. Depending on the RTK library configuration it could be a base station or the mobile unit. The GPS-receiver is a RasPiGNSS Aldebaran module which I got from an Austrian developer.
You could reach his website and online store via the following link: http://drfasching.com/
How the setup works is described on my blog. I also published a detailed description of the RTK library configuration. The setup is a little bit tricky, but I think with my guide and a little bit of Linux experience is feasible.
I wrote seven articles on how to setup the differential GPS solution for precise GNSS positioning. I am using for this setup for two Raspberry Pi's that are communicating via WIFI or a XBee module.
The introduction article is available here and will explain the basics: Precise GPS GNSS positioning with a Raspberry Pi and the RTKLIB – introduction.
The next article explains the theoretical setup of the system. Precise GPS GNSS positioning with a Raspberry Pi and the RTKLIB – theoretical setup.
Important are the antennas for this setup. With a good antenna configuration you will quickly get a fix and precise GPS position. Precise GPS GNSS positioning with a Raspberry Pi and the RTKLIB – GPS antenna setup.
After all the hardware related descriptions the following article describes how to install all the software you need. I used a normal Raspbian image and installed all the additional packages.
After installing the software like the RTK library, you have to configure your base station. This is explained in the following chapter. Precise GPS GNSS positioning with a Raspberry Pi and the RTKLIB – configuration RTKLIB base station.
To get a precise NMEA GPS coordination stream, you have to setup a mobile unit as well in your robot. How to setup the mobile unit and connect it with the base station is explained in the following post. Precise GPS GNSS positioning with a Raspberry Pi and the RTKLIB – configuration RTKLIB mobile unit.
WIFI is a signal for short distances. This is the reason why I bought a XBee pro module for connecting the base station with the robot. All you need to know about streaming the GPS data from the base station via the XBee modules to the robot is explained in the following how to guide.
Actually, I am developing my Big Rob robot. Big Rob is a Raspberry Pi powered robot for outdoor usage. The robot itself is the mobile unit that is now able to navigate very precisely.
The use for the robot is not yet defined. But with a precise navigation system on board, I could build a security robot, a lawnmower, or just a scary bot to protect my neighborhood.