Skip to content

Dual Antenna RTK

Pearl Lin edited this page Sep 22, 2024 · 1 revision

Overview: What is RTK?

image
Real time kinematic positioning (RTK) is a technique used for enhancing the accuracy of positional data from GPS's. Essentially, RTK works by comparing the phase of the carrier wave of the signals received from GPS satellites with a reference station that is known to have a precisely known location. This reference station is typically a fixed, known location with a high-precision GPS receiver. The difference between the phase of the carrier wave at the reference station and the phase observed by the mobile receiver is used to calculate very precise position information. By using this correction data from the reference station in real-time, the mobile receiver can achieve centimeter-level accuracy in its position determination.

Please watch these videos to gain a deeper understanding of RTK and how GPS's work.

Orientation with Dual Antennas

dual_antenna_orientation

Using 2 antennas on the rover allows us to gain further information on the rover's heading (and pitch, depending on the orientation of the antennas). This is an excellent source of orientation information as it is mathematically derived solely from the position of the 2 rover antennas in relation to each other, making it highly resistant to external factors that may affect other sensors. Obtaining heading information from a dual antenna RTK system is particularly desirable since the only other sensor that gives heading is the magnetometer, which becomes significantly less accurate in the presence of external magnetic fields (ex. an area with a high concentration of metals).

Dual antenna RTK not only allows us to achieve highly accurate positioning information, but attitude measurements as well. It can be enabled on dual GNSS receivers such as the simpleRTK3B Compass.

Goals and steps

Configure simpleRTK3BCompass and send RTCM messages from base to rover

The simpleRTK3BCompass dual antenna receiver has the ability to provide both position (< 1cm) and heading (< 0.14 deg) to a high degree of accuracy when provided with RTCM from a fixed basestation. RTCM messages contain pseudorange correction data for GPS satellites, which are applied by the rover RTK system to get a highly accurate position estimate. We currently have a node that publishes RTCM corrections from the basestation antenna to ROS. We are working on determining how to configure the receiver and send it corrections via USB. Please see the Unicore documentation for a detailed overview on the receiver's configurations.

Write custom GPS driver for dual antenna receiver

We are currently working on implementing our own gps driver for the dual antenna receiver, including custom reading and writing as library support is not provided for the simplyRTK3BCompass's Unicore module. After connecting to the receiver via serial, we want to send it RTCM corrections and parse outgoing RTK positioning data. The RTK status and positioning information in the form of a NavSatFix message should be published to /gps/fix.

Clone this wiki locally