Начало работы с Gazebo и моделируемым TurtleBot

В этом примере показано, как настроить механизм средства моделирования Gazebo®. Этот пример готовит вас к дальнейшему исследованию с Gazebo и также для исследования с симулированным TurtleBot®.

Gazebo является средством моделирования, которое позволяет вам тестировать и экспериментировать реалистично с физическими сценариями. Gazebo является полезным инструментом в робототехнике, потому что это позволяет вам создавать и запускать эксперименты быстро с физикой твердого тела и хорошей графикой. MATLAB® соединяется с Gazebo через интерфейс ROS.

Загрузите виртуальную машину

Можно загрузить изображение виртуальной машины, которому уже установили ROS и Gazebo. Эта виртуальная машина основана на Ubuntu® Linux® и предварительно сконфигурирована, чтобы поддержать примеры в ROS Toolbox™.

  • Загрузите и установите Виртуальную машину ROS

  • Запустите виртуальную машину

  • На рабочем столе Ubuntu вы видите несколько скриптов запуска мира Gazebo, а также другие служебные ярлыки. Для примеров TurtleBot® используйте "Пустой Gazebo", "Дом Gazebo", "Office Gazebo", или "Последователь Знака Gazebo ROS".

  • Нажмите Gazebo House. Мир открывается.

Примечание: Если экран Gazebo выглядит совершенно черным, обновите изображение путем минимизации его и затем максимизации его.

  • Откройте новый терминал в виртуальной машине Ubuntu.

  • Введите ifconfig и возвратитесь, чтобы видеть сетевую информацию для виртуальной машины.

  • Под eth0, inet addr отображает IP-адрес для виртуальной машины.

  • Две переменные окружения ROS должны собираться настроить сеть: ROS_MASTER_URI и ROS_IP. Если вы используете демонстрации с рабочего стола виртуальной машины Linux®, эти переменные обычно автоматически устанавливаются при запуске.

  • (Необязательно), Если вы используете свою собственную виртуальную машину, настраивает переменные путем выполнения следующих команд в терминале. Замените IP_OF_VM с IP-адресом, полученным через ifconfig):

echo export ROS_MASTER_URI=http://IP_OF_VM:11311 >> ~/.bashrc
echo export ROS_IP=IP_OF_VM >> ~/.bashrc
  • Проверяйте переменные окружения с помощью echo $ENV_VAR (заменяющий ENV_VAR на соответствующую переменную окружения). Можно закрыть и вновь открыть терминал для него, чтобы вступить в силу.

  • Следующая схема иллюстрирует правильные присвоения переменной окружения (с поддельными IP-адресами)

Свяжите с существующим средством моделирования Gazebo

Если вы уже имеете Gazebo, работающий на дистрибутиве Linux, настраиваете средство моделирования, аналогичное описанному здесь:

  • На веб-сайте ROS загрузите соответствующие пакеты для TurtleBot.

  • Следуйте инструкциям на веб-сайте ROS, чтобы получить TurtleBot, запускающийся в симулированной среде Gazebo.

  • Убедитесь, что переменные окружения соответственно установлены и что можно проверить с помощью ping-запросов назад и вперед между хостом - компьютером и компьютером Gazebo. Существует много способов настроить сеть. Подключение к примеру Сети ROS содержит советы о том, как проверить возможность соединения между устройствами в сети ROS.

  • Чтобы использовать любые команды ROS в терминалах машины Linux, терминальная среда должна собираться использовать соответствующую установку ROS. Получите соответствующий скрипт установки среды ROS в терминале прежде, чем запустить любые команды ROS. В VM команда: source /opt/ros/melodic/setup.bash

  • Убедитесь, что у вас есть доступ к следующим темам. В терминале на машине Linux введите rostopic list видеть, по крайней мере, эти доступные темы.

/clock
/cmd_vel
/imu
/odom
/scan
/tf

Setup хоста - компьютера

  • Найдите IP-адрес своего хоста - компьютера в сети. На машине Windows®, в командной строке, ipconfig типа. На машине Mac или Linux откройте терминал и введите ifconfig. Пример ipconfig показан.

Примечание: тип подключения может варьироваться в зависимости от того, как вы соединяетесь с ноутбуком. В этом случае вы используете Ethernet, однако, во многих случаях беспроводная связь (wlan) является соответствующей связью.

  • Проверьте с помощью ping-запросов машину средства моделирования ping IP_OF_VM. Успешный ping показывается сначала, сопровождается неудачным ping.

Следующие шаги