Сверхточное позиционирование на дороге

image


Навигация и локализация с помощью GNSS уже давно является стандартом в нашей повседневной жизни. Использование этой системы стало стандартном и для беспилотного автомобиля НПО СтарЛайн OSCAR. В то время как большинство людей пользуются простыми GPS приемниками в телефонах, OSCAR использует высокоточные GNSS решения. Но для начала, что вообще такое GNSS, и как она работает?

image


Что за GNSS?


GNSS расшифровывается как Global Navigation Satellite System (или Спутниковая Система Навигации) и используется как общий термин для спутниковой локализации с глобальным покрытием по всему земному шару. По состоянию на 2019 год, существует несколько основных спутниковых группировок:

  • GPS (США), 31 спутник
  • ГЛОНАСС (Россия), 24 спутника
  • Бэйдоу (Китай), 23 спутника
  • Галилео (Евросоюз), 26 спутников
  • NAVIC (Индия), 7 спутников
  • QZSS (Япония), 4 спутника


Как это все работает?


Возьмем для примера обычный GPS в нашем телефоне. В зоне видимости с Земли всегда есть как минимум четыре GPS-спутника. Каждый из этих GPS-спутников отправляет информацию о своей позиции и текущее время на GPS-приемники с фиксированным интервалом. Ну, а расстояние между GPS-приемником и спутником вычисляется путем нахождения разницы между временем отправки сигнала с GPS-спутника и временем получения сигнала GPS-приемником.

Как только приемник (например, ваш смартфон) получает сигнал хотя бы с трех спутников, вычисляется ваше местоположение (а точнее вашего телефона) с помощью трилатерации. GPS необходимо хотя бы три спутника для вычисления 2D-позиции (долгота и широта) и четыре спутника для 3D-позиции (долгота, широта, высота).

Почему GPS плохо работает в городских условиях?


И хотя под открытым небом GPS работает довольно неплохо, точность сильно падает в городских условиях (ошибка может быть 50 метров и более): высокие здания, провода, мосты и прочие объекты — все это ухудшает точность позиционирования.

image


Переотражение спутникового сигнала в городе. Фото Uber

Здания часто мешают прямой видимости спутников, и пока сигнал со спутника «летит» в ваш приемник, он успевает несколько раз отразиться от зданий и прийти с искажением. Из-за подобных переотражений точность позиционирования существенно снижается (бывает ± 500 метров). Вы, наверняка, сталкивались с такой ситуацией, когда при заказе такси ваше местоположение на карте отображалось неправильно.

Чтобы исключить эти проблемы, мы используем высокоточные GNSS-приемники, существенно повышающие точность позиционирования с помощью IMU (инерциальные измерительные модули), информации с CAN-шины автомобиля, RTK-поправок и еще немножко другой магии.

Повышение точности


Существует несколько основных способов повысить точность. Взглянем на самые популярные:

  • IMU (Инерциальный измерительный модуль) представляет собой набор акселерометров и гироскопов, обеспечивающих 3D-измерения. Сам по себе IMU не выдает данные о местоположение (позицию, высоту, скорость), но выдает полезную информацию для вычисления местоположения в местах, где GPS не «ловит» (тоннели, паркинги и пр.);
image


Типичный IMU

  • RTK-поправки существенно повышают точность местоположения до 1–2 сантиметров в реальном времени. Суть проста — по всему земному шару расположены так называемые базовые станции (base stations). Конкретная базовая станция знает погрешности в своей области и сообщает их приемнику, а последний, в свою очередь, учитывает эти корректировки и выдает более точное решение;
image


По большому счету, базовая станция — это GNSS-приемник в режиме «станция» + софт + радио/интернет канал

  • CAN-шина также полезна при расчете местоположения, так как автомобиль предоставляет полезные данные о скорости, оборотах колес и пр. характеристиках.


image


Вы знали, что в нашем OSCAR«e?

OSCAR и высокоточные GNSS-приемники


Сантиметровая точность необходима всем беспилотным автомобилям, не только OSCAR. Представьте на секунду, чтобы было бы, если бы беспилотник использовал обычный GPS с точностью ± 50 метров:

image


Такая низкая точность однозначно приведет к ДТП. Именно поэтому в процессе работы над OSCAR мы проводили исследования и испытывали ряд GNSS приемников, тестируя их в сложных условиях плотной городской застройки.

image


image


image


Автомобиль один, а GPS-треков несколько

В итоге, мы остановились на двух решениях:

  • NovAtel PwrPak 7D-E1
  • uBlox F9K


Оба приемника показали отличные результаты и были успешно интегрированы в нашу программно-аппаратную платформу.

В StarLine мы наслаждаемся тем, что делаем безопасный беспилотный автомобиль реальностью. Если тебе также интересна эта тема и ты хочешь строить беспилотное будущее с нами, то приглашаем в команду!

Проект StarLine OSCAR (Open Source Car) открыт для специалистов из Open Source Community, где все желающие могут поучаствовать в процессе разработки беспилотника на уровне кода, опробовать свои алгоритмы на реальном автомобиле, оснащенном дорогостоящим оборудованием.

Twitter: twitter.com/starline_oscar
Сайт: smartcar.starline.ru
GitLab: gitlab.com/starline/oscar

© Habrahabr.ru