Centimeter Precision GPS/GNSS - RTK Explained
Introduction to centimeter level GPS/GNSS
Think about the GPS/GNSS receiver in your mobile phone or in your car: this is what is called Standard GPS (or GNSS*) receiver. Standard GNSS receivers available in the market today, have an accuracy between 2 and 10 meters, and only in outdoor conditions. This accuracy depends on the product quality of the product and if the view of the sky is not blocked by any object or building. Under perfect conditions, the best you can achieve is an absolute accuracy of around 2 meters.
*GNSS stands for Global Navigation Satellite Systems, and it’s a word to include not only GPS but also other satellite based positioning systems like GLONASS, BEIDOU, Galileo, QZSS…
Interestingly, if we take 2 GNSS receivers and place them next to each other in an open field, both will have the same 2 meters error mentioned above, and in the same direction! This error is known as the standard GNSS error. Thanks to this peculiarity, it is possible to calculate with 1 centimeter accuracy the relative distance between them. So we still have an absolute error of 2 meters, but a relative accuracy of just 1 centimeter.
Imagine now we install one of the two GNSS receivers in a fixed known location with centimetric precision. We now have both absolute accuracy of 1 centimeter and relative accuracy of 1 centimeter in the second unit! Check out this very good 2 minutes video introduction to centimeter position from u-blox.
But this technique is not new. This is a very old technology called Differential GNSS or RTK GNSS (Real-Time Kinematic), and for more than 20 years it has allowed civil applications to have 1 centimeter accuracy (RTK position). In RTK wording, the static unit is called “Base Station” and the moving unit is called “Rover”.
“So what is new? I also heard it’s a very expensive technology, and that you need to receive a training to use it right?”
“Not anymore :)”
At ArduSimple we try to make GNSS RTK technology simple, affordable and accessible to everyone. With a series of starter kits, tutorials and OEM products, we allow our customers to:
- Test the technology and believe it is possible to achieve centimeter-level precision at affordable cost.
- Accelerate their projects and products, thanks to our plug and play development boards and starter kits.
- Create products and solutions, thanks to our support, turnkey services and pre-configured OEM products.
“So how can I start?”
The GNSS RTK receiver
First we need a GNSS receiver that can calculate RTK positions, like simpleRTK2B board. A standard GNSS receiver doesn’t have enough calculation power for RTK.
Second we need a very good GNSS antenna, like simpleANT2B. We cannot use a traditional “cheap” GNSS antenna, because we need to receive a high quality signal, so we can really measure the GNSS errors. Additionally, we need to forget about using the RTK GNSS in our pocket or next to the window: RTK GNSS only works with unobstructed sky view. Installation of the antenna also becomes an important topic. We recommend having a look at our RTK GNSS antennas installation guide.
Now that we know the 2 basic elements of an RTK receiver, you also know the reason why we launched our Basic Starter Kit:
But actually, we will need 2 sets of RTK receiver + RTK antenna, so one of the sets can be used as “Base Station” and the second one as “Rover”. This brings us to the topic of RTK corrections.
RTK corrections are the information sent by the “Base Station” to the “Rover”, so the “Rover” can calculate its RTK position. The language/protocol used to send this information is called RTCM. So you will read about RTK corrections and RTCM corrections, it’s basically the same. In order to calculate this RTK position, both receivers need to see more or less the same satellites. For this reason the RTCM corrections are only valid up to a distance of 35km from the Base Station (some people say 25km, some people 50km, the exact number will depend on the antenna and receiver quality). It is also useful to know, that the corrections from one base station can be used by as many rovers as possible, as long as they are within this 35km range from the Base Station. This would be a multirover setup.
What happens when you go beyond this 35km from the base station? That it’s not possible to have 1 centimeter accuracy anymore, and accuracy degrades very fast to standard 2 meters.
Sending RTK corrections
RTCM/RTK corrections are sent usually one time per second. And can be sent via a wired serial communication, a wireless link or an IP network. Let’s check the differences more in detail.
For units which are very close to each other, we can use cables to connect them. A serial port (TTL, RS232) is enough.
To cover longer distances we will need a wireless serial communication. For this reason we added a socket (we call it XBee socket) to our RTK receivers, so adding wired or wireless communication between base and rover would be an almost plug-and-play task.
To make it even simpler, we developed a few starter kits to test this setup:
- Up to 10 meters between base and rover, you can do with 2x Basic Starter Kits.The GNSS antennas included in the kit have 5 meter cables. Additionally you can extend this distance to up to 20 meters (10 meters each side) by adding our low loss RF cables.
- Up to few hundred meters, 1x Medium Range (MR) kit. This kit only allows one rover for each base station.
- Up to few kilometers, 1x Long Range (LR) kit with multirover capability.
- Up to 50 kilometers, 1x eXtra Long Range (XLR) kit also with multirover capability.
MR and LR radio links need RF line of sight between base and rover in order to work. Have a look at our post about visual line of sight vs RF line of sight to understand this concept.
If you want to have multiple base stations to cover a larger area, or have problems to guarantee line-of-sight between the base and the rovers, the above point to multi-point radio communication is not an option for you. In this case, or if you just happen to have IP access available in both base and rover locations (internet or local network), RTK corrections can also be sent over IP communication.
Through an IP network
In many occasions, an IP network is available (WiFi, Ethernet, 4G). For this cases, a protocol has been developed distribute RTK corrections. We will have a look at this into more detail in the next chapter.
What is NTRIP?
NTRIP is a language/protocol to distribute RTK corrections over internet/local network data IP packets. This allows to expand RTK networks with infinite bases and infinite rovers. A network with several NTRIP devices it’s called a NTRIP network. There are 3 possible elements in a NTRIP network:
- NTRIP caster. It’s a server that collects RTK corrections from one or several base stations, and distributes them among Rovers.
- NTRIP server. It’s a single physical RTK base station. It’s role is to send RTK corrections to a NTRIP Caster, so the Caster can distribute them to other clients. In networks with only one base station, it’s quite common to have an NTRIP server+caster together. In this case only the caster function is configured.
- NTRIP client. An RTK receiver that wants to receive RTK corrections. RTK Rovers are NTRIP clients.
Our simpleRTK2B boards don’t have IP interfaces (ethernet, wifi, etc) and don’t understand NTRIP protocol. They need someone outside to convert from NTRIP to RTCM and viceversa. For this reason we developed a series of accessories to enable NTRIP in our boards:
- Bluetooth: connect your simpleRTK2B board to your mobile phone via bluetooth. Your phone can now act as NTRIP client (but also as server or caster).
- WiFi: with a WiFi network available in your area, plug the WiFi NTRIP Master accessory and use your board as NTRIP client (but also as server or even server+caster).
- 4G NTRIP Client: let your simpleRTK2B board become an NTRIP client anywhere where there is cell coverage.
Alternatively you can also connect your simpleRTK2B board to a PC or mobile phone via USB and use an application in your PC or mobile phone to do this conversion. Check out our tutorial to learn how to connect to a NTRIP caster.
RTK correction services
In some countries, the local authorities have already installed a network of base stations with their corresponding NTRIP servers, and they offer access to an NTRIP caster for free with almost national coverage. In these cases, usually only a basic registration process is required.
There is also the www.rtk2go.com community of users that share for free their base stations online, without quality of service. You can check the list here: http://monitor.use-snip.com/?hostUrl=rtk2go.com&port=2101
If you are fortunate to have a RTK correction service in your area, you are one of the lucky persons that needs minimum setup to use RTK. You only need our Basic Starter Kit and a PC and connect to one of the above NTRIP Casters, following our tutorial on how to connect to a NTRIP caster.
There are also paid RTK correction services, in some countries at reasonable prices, in some others at very high price.
Receivers with integrated RTK-SSR corrections
Base-Rover setups and traditional RTK correction services (also called OSR) have a limitation that you need a base station at maximum 35km distance from the rover. This is also why it’s so expensive to offer a RTK correction service with a large and good coverage. There is an alternative technology for calculation of real time RTK position that removes this limitation and still allows to have 2 to 4 centimeters accuracy in all coverage area. It is called SSR technology (Space State Representations).
Traditionally having access to this technology was complex and only available for large companies buying thousands of units. For this reason at ArduSimple we decided to launch simpleSSR receiver to make this technology available to everyone: An accessory for simpleRTK2B boards which integrates SSR correction services.
simpleSSR accessories remove the hassle of installing a base station or getting a contract for an RTK correction service, and enable literally plug and play RTK: just power the RTK receiver with simpleSSR accessory, wait 1-2 minutes and enjoy centimeter level accuracy in all the coverage area.
We hope this has helped you understand better what we do and what you need to start using RTK. If you want to read more, you might be interested in checking out our tutorials, or our Q&A forum. If you couldn’t find what you were looking for, and you still have any questions, do not hesitate to contact us, we always answer!