MIEM #873 project (https://cabinet.miem.hse.ru/#/project/873/) Robotics algs Class1 & DistBug
Инструкция по запуску алгоритмов Bug1 и Bug2
Необходимые преустановленные файлы и пакеты:
-
Установленная система для работы с ROS Noetic и созданный workspace(http://wiki.ros.org/ROS/Tutorials)
-
Пакеты для работы с turtlebot3 https://emanual.robotis.com/docs/en/platform/turtlebot3/quick-start/
3.Пакеты для работы в gazebo с turtlebot3(все туториалы должны быть для ros noetic) https://emanual.robotis.com/docs/en/platform/turtlebot3/simulation/#gazebo-simulation https://emanual.robotis.com/docs/en/platform/turtlebot3/quick-start/
- Python3 для запуска скриптов, написаных на нём
Далее я предлагаю два способа установки пакета с алгоритмами:
Первый (предпочтительный)
https://drive.google.com/drive/folders/1DUjp2fUDPwOOscECeC9iXsU4qcShlL1Q?usp=sharing
-
Скачать архив с пакетом bug_alg с google disk
-
Разархивировать его в catkin_ws/src (вместо catkin_ws должно быть название Вашего воркспейса)
3.Проверить, что все файлы в установленном пакете executable
Для этого заходим в scripts и в Properties/permissions ставим галочку около allow executing file as program Аналогично повторяем с CMAKE, xml, setup.py файлами в самом пакете, bug_alg, launch файлами в launch и файлом по адресу ~/catkin_ws/src/bug_alg/src/bug_alg/init.py
- Открываем terminal и пишем команды
cd ~/catkin_ws/
catkin_make
source devel/setup.bash
- Иногда возникают проблемы с catkin_make и приходится повторять 4 шаг несколько раз
Второй способ установки алгоритмов
- Следуя tutorials на http://wiki.ros.org/ROS/Tutorials создать собственные пакеты для работы с ROS
Вручную или с помощью команд create_pkg не влияет на результат
Далее добавляя файлы проверяйте, что они executable
Для этого в Properties/permissions ставим галочку около allow executing file as program для каждого конкретного файла
-
После создания пакета заменяем в нём файлы CMAKE и xml и добавляем setup.py
-
Добавляем папку launch и перемещаем туда launch файл нужного алгоритма
-
Добавляем папку scripts и перемещаем в неё необходимые для алгоритма скрипты
-
Добавляем папку src, в неё папку bug_alg в неё переносим файл init.py
-
Открываем terminal и пишем команды
cd ~/catkin_ws/
catkin_make
source devel/setup.bash
- Иногда возникают проблемы с catkin_make и приходится повторять 6 шаг несколько раз
Средства работы с мирами Газебо Для миров из папки со средами запуска достаточно будет переместить launch файл в ~/catkin_ws/src/turtlebot3_simulations/turtlebot3_gazebo/launch и заменить .world в самом файле на расположение мира газебо у себя в системе
Проверьте, что после скачивание папки адрес dae файла внутри файла world совпадает с расположение соответствующего dae файла в системе
Для этого нам понадобится заранее установленный пакет для работы в gazebo с turtlebot3
-
Заходим в папку ~/catkin_ws/src/turtlebot3_simulations/turtlebot3_gazebo/launch
-
Создаём файл .launch Копируем туда код, заменив .world на расположение мира газебо у себя в системе
//
//Изменяя аргументы в этих трёх строчках можно менять координаты спавна робота
ВАЖНО: Проверьте, что после скачивания world файла адрес соответствующего dae файла внутри совпадает с расположением этого же dae файла в системе
- Откройте терминал и напишите export TURTLEBOT3_MODEL=burger
Затем roslaunch turtlebot3_gazebo .launch
После этого загрузится Ваш собственный мир газебо
Запуск алгоритмов
- Открыть консоль и прописать roslaunch bug_alg bug1.launch des_x:=6 des_y:=6 или roslaunch bug_alg bug2.launch des_x:=6 des_y:=6
в зависимости от желаемого алгоритма
Меняя значения des_x и des_y можно изменять координаты точки, до которой необходмио будет доехать роботу