Картографирование — это построение роботом карты окружающего пространства. Робот, оснащённый датчиками, обследует помещение или территорию и создаёт её модель, по которой затем ориентируется, планирует маршруты и обходит препятствия. Без карты автономная навигация невозможна: роботу нужно «представление» о том, где стены, проходы, стеллажи и свободные зоны.
Строят карту по данным дальномерных сенсоров — прежде всего лидара, а также камер глубины, стереокамер и ультразвуковых датчиков. Робот перемещается, замеряет расстояния до окружающих объектов и постепенно наносит их на карту. Чтобы правильно «сшивать» отдельные замеры в единую картину, данные датчиков дополняют одометрией и показаниями инерциального модуля (IMU) — это помогает учитывать перемещение и повороты робота.
Наиболее распространённый формат — карта занятости (occupancy grid): пространство разбивается на ячейки-клетки, каждая из которых помечается как свободная, занятая (препятствие) или неизвестная. Такая карта проста для хранения и удобна для алгоритмов планирования пути. Карты бывают двумерными (план этажа, «вид сверху») и трёхмерными (объёмная модель окружения).
Картографирование тесно связано с локализацией: чтобы правильно наносить объекты на карту, робот должен знать своё положение, а чтобы определить положение — нужна карта. Обе задачи, решаемые одновременно в движении, и составляют технологию SLAM (одновременная локализация и построение карты). При этом картографирование не всегда идёт «на лету»: карту можно построить один раз (обследовав помещение), сохранить и затем многократно использовать — робот будет лишь определять на ней своё место.
Различают статическое картографирование (для стабильных помещений) и работу в динамической среде, где люди и техника постоянно перемещаются: тогда робот отделяет постоянные объекты (стены) от временных препятствий и регулярно обновляет карту. Качественное картографирование — основа надёжной работы складских AGV/AMR, роботов-пылесосов, сервисных и мобильных роботов.
Источники:
- SLAM (метод) // Википедия. URL:https://ru.wikipedia.org/wiki/SLAM_(метод)
- Картографирование и Hector SLAM // Wombat Robot Docs. URL:https://kb-avrora.github.io/wombat-robot-docs/docs/workmodes/autonomous/hector_slam.html