Centimeter precision on the road

Ruslan Nigmatulin
OSCAR
Published in
4 min readJun 3, 2019

Navigation and localization with GNSS is deeply embedded in our daily lives, and is particularly crucial to OSCAR. While most of the people have the simplest GPS receivers within their phones, OSCAR utilizes the state-of-art GNSS technologies. But let’s talk for a while about how GNSS works.

What is GNSS?

GNSS stands for Global Navigation Satellite System, and is the standard generic term for satellite navigation systems that provide autonomous geo-spatial positioning with global coverage. As of 2019, there are different satellite constellations:

  • GPS (Unites States), 31 satellites
  • GLONASS (Russia), 24 satellites
  • BeiDou (China), 23 satellites
  • Galileo (European Union), 26 satellites
  • NAVIC (India), 7 satellites
  • QZSS (Japan), 4 satellites

How it works?

Let’s take GPS for example. There are always at least 4 GPS satellites in line of sight to a receiver on the earth. Each of these GPS satellites sends information about its position and the current time to the GPS receiver at fixed regular instants of time. This information is transmitted to the receiver in the form of signal which is then intercepted by the receiver devices. These signals are radio signals that travel with the speed of light. The distance between a GPS receiver and the satellite is calculated by finding the difference between the time the signal was sent from GPS satellite and the time the GPS receiver received the signal.

Once the receiver receives the signal from at least three satellites, the receiver then points its location using trilateration process. A GPS requires at least 3 satellites to calculate 2-D position(latitude and longitude on a map). In this case, the GPS receiver assumes that it is located at mean sea level. However, it requires at least 4 satellites to find receivers 3-D position(latitude, longitude, and altitude).

Why GNSS location is inaccurate in urban environments

While GPS works well under clear skies, its location estimates can be wildly inaccurate (with a margin of error of 50 meters or more) when we need it the most: in densely populated and highly built-up urban areas, where many of our users are located.

GNSS signal reflection causes accuracy degradation. Credits: Uber

Buildings often block the lines of sight to satellites, so the receiver frequently processes signals corresponding to strong reflections off of other buildings. The significant inaccuracy (positive offsets) in pseudoranges resulting from this phenomenon can lead to errors in position estimates that can be 50 meters or more in urban canyons. Most of us experienced these problems when ordered Uber/Yandex taxi.

To overcome this challenge, we use advanced GNSS-receivers which substantially improves location accuracy in urban environments via IMU, CAN bus information, RTK-corrections and other things.

Advanced solutions

There are multiple ways to precision improvements. Let’s take a quick look on the most popular:

  • IMU (Inertial Measurement Unit) is an integrated sensor package that combines multiple accelerometers and gyros to produce a three-dimensional measurement. The IMU by itself does not provide any kind of navigation solution (position, velocity, attitude), but it provide useful information for location calculation in case of GPS signal disappearance (e.g. tunnels, parking lots).
  • RTK-corrections are provided by RTK receivers which take in an RTCM correction stream (from ground base stations) and then calculates your location with 1–2cm accuracy in real time
  • CAN bus information is also useful for navigation solution improvement, as car can provide valuable data like speed, wheel tick information, etc.

OSCAR and high-precision GNSS-hardware

Centimetre precision required for any autonomous vehicle, not just OSCAR. Imagine for a second, that self-driving car uses regular GPS receiver proving +/- 50 metres precision:

Such deviations would cause traffic accident for sure. That’s why during the development of OSCAR we’ve made some researches and tested multiple GNSS receivers and have done dozens of test rides in different urban conditions.

One car, multiple GPS-tracks

In the end, we stuck with a couple of receivers:

  • NovAtel PwrPak 7D-E1
  • uBlox F9K

Both of them demonstrated brilliant accuracy for our needs and later were successfully integrated with our autonomous software stack.

At ScPA StarLine, we are excited about making self-driving cars a reality. If you share that feeling, check out our careers page. Join our team!

--

--