Локализация — это определение роботом собственного положения (и ориентации) на карте окружающего пространства. Чтобы двигаться к цели и не сталкиваться с препятствиями, робот должен постоянно отвечать на вопрос «где я сейчас нахожусь». Локализация — базовая задача навигации любого мобильного робота: без неё построенная карта и проложенный маршрут бесполезны, потому что робот не знает, откуда стартовать и куда он уже пришёл.
Простейший способ оценить положение — одометрия: робот считает обороты колёс (через энкодеры) и по ним вычисляет пройденный путь и повороты. Но этот метод быстро накапливает ошибку: колёса проскальзывают, поверхности разные, и со временем расчётное положение всё сильнее расходится с реальным. Поэтому одометрию дополняют данными других датчиков.
Для точной локализации робот сопоставляет то, что «видят» его сенсоры, с картой:
- Лидар и камеры дают картину окружения, которую алгоритм сравнивает с уже известной картой и уточняет позицию.
- Инерциальный модуль (гироскоп + акселерометр) добавляет данные об ориентации и перемещении.
- Спутниковое позиционирование (GPS/RTK) применяют для локализации на открытом воздухе.
Данные разных источников объединяют (сенсорное слияние), а для оценки наиболее вероятного положения используют вероятностные методы — например, фильтр Калмана или фильтр частиц, которые сглаживают шум измерений.
Локализация тесно связана с картографированием и вместе с ним образует технологию SLAM (одновременная локализация и построение карты). При этом локализация может выполняться и по заранее готовой карте: тогда робот не строит её заново, а лишь определяет своё место на известном плане. Точная локализация — обязательное условие для складских AGV и AMR, сервисных роботов, беспилотного транспорта и дронов.
Источники:
- SLAM (метод) // Википедия. URL:https://ru.wikipedia.org/wiki/SLAM_(метод)
- Локализация и одометрия мобильного робота // МФТИ, Центр когнитивного моделирования. URL:https://cogmodel.mipt.ru/research-localization-odom