8.4 Построение карты с использованием gmapping package

Теперь, когда мы понимаем, как использовать move_base, мы можем заменить пустую карту реальной картой окружающей среды робота. Карта в ROS - это просто растровое изображение, представляющее сетку занятости, где белые пиксели обозначают свободное пространство, черные пиксели обозначают препятствия, а серые - «неизвестно». Поэтому вы можете нарисовать карту самостоятельно в любой графической программе или использовать карту, созданную кем-то другим. Однако, если ваш робот оснащен лазерным сканером или встроенной камерой, робот может создавать свою собственную карту, перемещаясь вокруг целевой области. Если у вашего робота нет ни одного из этих компонентов оборудования, вы можете использовать тестовую карту, включенную в rbx1_nav / maps. В этом случае вы можете перейти непосредственно к следующей главе, посвященной локализации с использованием существующей карты.

ROS gmapping содержит slam_gmapping, который выполняет работу по объединению данных лазерного сканирования и одометрии в карту занятости. Обычная стратегия заключается в том, чтобы вначале дистанционно управлять роботом вокруг области во время записи данных лазера и одометрии в файл rosbag. Затем мы запускаем slam_gmapping вместо записывания данных для создания карты. Преимущество записи данных в первую очередь состоит в том, что вы можете генерировать любое количество тестовых карт позже, используя те же данные, но с разными параметрами для отображения. Фактически, поскольку нам больше не нужен робот, вы можете проводить это тестирование везде, где у вас есть компьютер с ROS и вашими данными rosbag.

Давайте рассмотрим каждый из этих шагов по очереди.

Last updated