В этом примере показано, как соединиться с TurtleBot® с помощью интерфейса MATLAB® ROS. Можно использовать этот интерфейс, чтобы соединиться с широким спектром поддерживаемого оборудования ROS из MATLAB. Если вы используете TurtleBot в Gazebo®, обращаются к Запуску с Gazebo и Симулированным примером TurtleBot.
Следующие шаги используют платформу TurtleBot 2 с основой Kobuki (https://www.turtlebot.com/). Набор идет с ноутбуком, который имеет предварительно установленную копию ROS с соответствующим программным обеспечением TurtleBot. Эта процедура принимает, что вы используете новый TurtleBot подобной настройки. Если вы уже используете TurtleBot и связываетесь с ним через внешний компьютер, не выполняйте эту процедуру.
Распакуйте TurtleBot и полностью заряжайте блокнот.
Убедитесь, что основа TurtleBot полностью заряжена.
Включите основу TurtleBot.
Соедините блокнот с основой TurtleBot (через USB-кабель).
Включите блокнот (во многих случаях, именем пользователя является turtlebot
и паролем является turtlebot
, но это зависит от поставщика).
Убедитесь, что у вас есть сеть, настроенная, чтобы соединить хост - компьютер (тот с MATLAB) к блокноту. Используйте беспроводной маршрутизатор или кабель Ethernet.
Откройте терминал на блокноте и запустите ifconfig
. IP-адрес сопоставил с сетью, с которой вы соединились, отображен.
Установите соответствующие переменные окружения на TurtleBot путем выполнения следующих команд. Выполните их команда только однажды.
echo export ROS_HOSTNAME=IP_OF_TURTLEBOT >> ~/.bashrc echo export ROS_MASTER_URI=http://IP_OF_TURTLEBOT:11311 >> ~/.bashrc sudo sh -c 'echo export ROS_HOSTNAME=IP_OF_TURTLEBOT >> /etc/ros/setup.sh'
Убедитесь, что можно проверить с помощью ping-запросов хост-машину от блокнота:
ping IP_OF_HOST_COMPUTER
Успешный ping
показан слева. Неудачный ping
показан справа.
Примечание: Этим переменным окружения нужно было всегда присваивать правильный IP-адрес TurtleBot. Если IP-адрес изменений ноутбука TurtleBot, необходимо также изменить переменные окружения с помощью предыдущих команд.
Вот схема, иллюстрирующая соответствующее присвоение переменных окружения:
ROS должен работать на вашем TurtleBot теперь. Если это не вы, может перезапустить ноутбук TurtleBot. ROS запускается автоматически на перезагрузке, и робот будет щебетать. Можно также запустить ROS при помощи значка TurtleBot на правой стороне верхней панели навигации и выбирания опции, чтобы запустить TurtleBot.
Если ROS запускается, запустите Kinect®, который смонтирован на TurtleBot. Если вы используете Gazebo, введите следующую команду в терминале на ноутбуке TurtleBot:
roslaunch turtlebot_bringup 3dsensor.launch
Возможный выход показывают ниже.
Если у вас есть TurtleBot с различной настройкой от настройки, ранее описанной, прежде, чем попытаться связаться через MATLAB убеждаются, что следующая информация верна:
Вы настроили свою сеть так, чтобы можно было проверить с помощью ping-запросов хост-машину.
У вас есть доступ к следующим темам. На ноутбуке TurtleBot введите rostopic list
видеть темы.
/odom /mobile_base/commands/velocity /mobile_base/commands/sound /mobile_base/commands/reset_odometry /mobile_base/sensors/bumper_pointcloud /mobile_base/events/cliff /camera/rgb/image_color/compressed /scan
В сети найдите IP-адрес своего хоста - компьютера. На машине Windows®, в командной строке, ipconfig
типа. На Mac или машине Linux®, откройте терминал и введите
ifconfig
. Вот пример ipconfig
:
Убедитесь, что можно проверить с помощью ping-запросов блокнот:
ping IP_OF_TURTLEBOT
Успешный ping
показывается сначала, сопровождается неудачным ping
.
Пакет Поддержки Robotics System Toolbox для основанных на TurtleBot Роботов обеспечивает оптимизированный интерфейс к TurtleBot. Это позволяет:
Получите данные о датчике и отправьте команды управления, явным образом не вызывая команды ROS.
Свяжитесь прозрачно с симулированным роботом в Gazebo или с физическим TurtleBot.
Чтобы установить пакет поддержки, откройтесь, Дополнения> Получают Пакеты Аппаратной поддержки на вкладке MATLAB Home и выбирают основанных на ROS Toolbox Support Package for TurtleBot Роботов. В качестве альтернативы используйте rosAddons
команда.
Обратитесь к следующему примеру: Свяжитесь с TurtleBot