Моделирование навигационного стека ROS (часть 3)

Материал из RoboWiki
Перейти к навигации Перейти к поиску

На данный момент мы создали модель робота с дифференциальным приводом, которая удовлетворяет необходимым условиям для автономной навигации: дерево преобразований, одометрия, лазерный сканер и базовый контроллер. Теперь мы готовы заставить нашего моделируемого робота передвигаться самостоятельно с помощью стека навигации ROS. В этом уроке мы собираемся:

  1. Подключить стек навигации ROS
  2. Создать карту
  3. Осуществить навигацию по карте

Как мы можем убедиться, эти шаги хорошо расписаны, поэтому мы просто соберем все это вместе для нашего робота.

Обзор: Использование стека навигации ROS

Цели: 1. Интегрировать навигационный стек ROS в модель нашего робота 2. Активировать автономную навигацию, чтобы нам не нужно было удаленно управлять нашим роботом

Ссылки:

Код репозитория (хранилища):

git clone -b navigation https://github.com/richardw05/mybot_ws.git

Видео-мануал

Картография и навигация: Turtlebot (необязательно)

Обучение организации автономному движению Turtlebot'а поможет усвоить базовые навыки. Есть три основных этапа: создание карты, сохранение карты и загрузка карты.

1. Создание карты Выполните команды, представленные ниже. Используйте teleop для перемещения робота, чтобы создать точную и полную карту. В Терминале 1 запустите среду Gazebo

roslaunch turtlebot_gazebo turtlebot_world.launch

В Терминале 2 запустите построение карты

roslaunch turtlebot_gazebo gmapping_demo.launch

В Терминале 3 запустите rviz и установите следующие параметры: Localmap/Costmap/Topic to/map Globalmap/Costmap/Topic to/map

roslaunch turtlebot_rviz_launchers view_navigation.launch

В Терминале 4 запустите teleop

roslaunch turtlebot_teleop keyboard_teleop.launch

2. Сохранение карты В Терминале 5 сохраните карту в какой нибудь файл, указав путь

rosrun map_server map_saver -f ~/mybot_ws/test_map

3. Загрузка карты Закройте все предыдущие терминалы и выполните команды, представленные ниже. После загрузки используйте rviz для установки навигационных точек, робот должен будет двигаться автономно. В Терминале 1 запустите среду Gazebo

roslaunch turtlebot_gazebo turtlebot_world.launch

В Терминале 2 запустите построение карты

roslaunch turtlebot_gazebo amcl_demo.launch map_file:=~/mybot_ws/test_map.yaml

В Терминале 3 запустите rviz

roslaunch turtlebot_rviz_launchers view_navigation.launch

Картография и навигация: Наш робот