В этом примере показано, как соединиться с TurtleBot ® с помощью интерфейса MATLAB ® ROS. Можно использовать этот интерфейс для подключения к широкой области значений поддерживаемого ROS оборудования от MATLAB. Если вы используете TurtleBot в Gazebo ®, обратитесь к примеру «Запуск с Gazebo» и моделируемому TurtleBot.
Следующие шаги используют платформу TurtleBot 3 Waffle Pi (https://www.turtlebot.com/). Комплект поставляется с Raspberry Pi, который имеет предустановленную копию ROS с соответствующим программным обеспечением TurtleBot. Эта процедура предполагает, что вы используете новый TurtleBot аналогичного строения. Если вы уже используете TurtleBot и общаетесь с ним через внешний компьютер, не выполняйте эту процедуру.
Распакуйте TurtleBot и убедитесь, что источник степени подключен.
Включите Raspberry Pi.
Убедитесь, что у вас есть сеть, настроенная для подключения хоста-компьютера (той, что с MATLAB) к Raspberry Pi на этом TurtleBot. Используйте беспроводной маршрутизатор или кабель Ethernet.
Откройте терминал на Raspberry Pi и запустите ifconfig
. Отображается IP-адрес, сопоставленный с сетью, к которой вы подключились.
Установите соответствующие переменные окружения на TurtleBot путем выполнения следующих команд. Выполните эту команду только один раз.
echo export ROS_IP=IP_OF_TURTLEBOT >> ~/.bashrc echo export ROS_MASTER_URI=http://IP_OF_TURTLEBOT:11311 >> ~/.bashrc sudo sh -c 'echo export ROS_IP=IP_OF_TURTLEBOT >> /etc/ros/setup.sh'
Убедитесь, что вы можете выполнить ping для хост-машины с Raspberry Pi:
ping IP_OF_HOST_COMPUTER
Успешное ping
показан слева. Неудачное ping
показан справа.
Примечание.Эти переменные окружения должны всегда иметь правильный IP-адрес, назначенный TurtleBot. Если IP-адрес TurtleBot Raspberry Pi изменяется, необходимо также изменить переменные окружения с помощью предыдущих команд.
Вот схема, иллюстрирующая правильное присвоение переменных окружения:
Введите следующие команды в отдельных клеммах на TurtleBot Raspberry Pi, чтобы запустить лИДАР и датчики камеры в TurtleBot 3:
roslaunch turtlebot3_bringup turtlebot3_core.launch roslaunch turtlebot3_bringup turtlebot3_lidar.launch roslaunch turtlebot3_bringup turtlebot3_rpicamera.launch
Возможный выход показан ниже.
Если у вас есть TurtleBot с другой настройкой, отличной от ранее описанной, прежде чем пытаться связаться через MATLAB, убедитесь, что следующая информация верна:
Вы настроили сеть так, чтобы можно было выполнить ping на хост-компьютере.
У вас есть доступ к следующим темам. На TurtleBot Raspberry Pi введите rostopic list
чтобы увидеть темы.
/odom /cmd_vel /reset /scan
В сети найдите IP-адрес своего хоста-компьютера. На компьютере с Windows ® в командной строке введите ipconfig
. На компьютере с Mac или Linux ® откройте терминал и введите ifconfig
. Вот пример ipconfig
:
Убедитесь, что вы можете выполнить пинг блокнота:
ping IP_OF_TURTLEBOT
Успешное ping
показан первым, за которым следует неудачная ping
.
Обратитесь к следующему примеру: Общайтесь с TurtleBot