Arduino как издатель ROS

пример ROS publisher

Сегодня я начну изучение библиотеки rosserial, которая позволяет использовать Arduino в качестве узла ROS. Вместе с библиотекой идут многочисленные примеры, и, конечно же, первый из рассмотренных будет HelloWorld. Этот пример публикует используя Arduino тему ROS с фразой «hello world!».

В Arduino IDE открываем пример HelloWorld, найдя его в меню ФайлПримерыros_libHelloWorld. В открывшемся окошке перед нами предстает следующий код:

Частью каждой Arduino-программы, работающей совместно с ROS является заголовочный файл ros.h, а также заголовочные файлы сообщений, которые мы будем использовать

Далее, нам необходимо создать экземпляр обработчика узла, который позволяет нашей программе создавать издателей (publishers) и подписчиков (subscribers). Обработчик узла также заботится о передачи данных по последовательному порту.

Мы должны создать экземпляры издателей и подписчиков, которых мы будем использовать. Здесь мы создаем экземпляр Publisher с названием темы «chatter». Вторым параметром Publisher является ссылка на экземпляр сообщения, которое будет публиковаться.

В функции setup () нам необходимо инициализировать обработчик ROS для информирования о любых публикуемых темах, а также для подписки на темы.

Наконец, в функции loop () узел публикует «hello world!» и вызывает ros::spinOnce () в которой происходит обработка всех обратных вызовов для соединений.

Загружаем скетч в Arduino.

После того, как скетч успешно загрузится, открываем окно Терминала Linux и запускаем в нем ROS, выполнив

Далее, в новом окне или вкладке Терминала запускаем клиентское приложение rosserial, которое будет перенаправлять сообщения Arduino в ROS. Убедитесь, что указываете правильный последовательный порт:

Наконец, наблюдаем приветственное сообщение Arduino, выполнив опять же в новом окошке Терминала:

Я записал небольшое видео, в котором показал все вышеописанные шаги по использованию Arduino в качестве издателя ROS.

 

Как вы оцениваете эту публикацию? 1 звезда2 звезды3 звезды4 звезды5 звезд (3 голосов, средняя оценка: 5.00 из 5)
Loading ... Loading ...

Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

Оставить комментарий