Обновление ROS2
Данный документ носит временный статус, создан для тестирование прошивки ROS2 и платформы turtlebro первой версии.
Инструкция по работе с ROS2 и находиться на странице https://ros2.turtlebro.ru
Обновление образа microSD-карты Raspberry Pi
Образ SD-карты с ROS2 создан на основе дистрибутива ROS2 jazzy. В качестве базовой ОС используется Ubuntu Server 24.04 LTS
Образ ROS2 проверен на микрокомпьютерах:
Raspberry Pi 4 - 2 ГбRaspberry Pi 5 - 2 Гб
При подключении Raspberry Pi 5 к роботу TurtleBro1, Raspberry Pi 5 может не хватать питания. Поэтому мы не рекомендуем обновлять микрокомпьютер, а использовать Raspberry Pi 5 только на плате TurtleBro2
Образ SD-карты, можно скачать по ссылке: latest
Инструкция по обновлению образа
Просмотреть видеоинструкция по обновлению образа.
В образе уже установлены дополнительные пользовательские пакеты (аналоги старых пакетов ROS1):
- turtlebro https://github.com/voltbro/turtlebro2
- turtlebro_navigation https://github.com/voltbro/turtlebro2_navigation/
- turtlebro_web https://github.com/voltbro/turtlebro2_web
Обновление прошивки системной платы робота
Для поддержки управления роботом через Raspberry необходимо обновить ПО платы Turtleboard. Новая прошивка создана на базе фреймворка microROS (https://micro.ros.org), являющегося "идейным" продолжением библиотеки rosserial. Все системные топики управления платформой работают на микроконтроллере.
Прошивку для робота TurtleBro1 и microROS можно скачать по ссылке: latest
Внимание Файлы прошивки для "желтой" и "синей" плат отличаются. Если вы обновляете "синюю" плату (робот TurtleBro1), убедитесь, что имя файла прошивки начинается с "TB1".
Инструкция по обновлению МК (необходим USB-UART переходник или программатор ST-LINK V2)
Запуск и подключение к роботу
После обновления SD-карты и прошивки - робот готов для работе.
При включении, робот попытается подключиться к Wi-Fi сети согласно настройкам сети.
Имя робота после установки нового образа: turtlebro01
SSH подключение согласно страницы (пользователь pi, пароль brobro)
Все необходимые сервисы и пакеты запускаются при включения робота.
Настройка работа после загрузки
Образ был оптимизирован для платы TurtleBro2 а не TurtleBro1. Для корректного функционирования робота с новым образом, необходимо внести изменения в конфигурационный файл.
Для этого в файле /home/pi/.ros_params следует модифицировать переменную окружения BOARD_VERSION, установив её значение на 5.
Веб-интерфейс
Для быстрой проверки работоспособности доступен старый Веб-интерфейс.
Подключение к ROS на роботе
После подключения к роботу по SSH, работают все ros2 команды.
Робот настроен для работы в режиме Discovery-Server. Работа в режиме Simple Discovery в условиях работы по Wi-Fi и множества аналогичных устройств в сети показала себя более запутанной и не надежной.
Робот запускает fastdds server с настройками -l 127.0.0.1 -p 11811
Управление fastdds через systemd
sudo systemctl start fastdds
sudo systemctl stop fastdds
Для настройки компьютера для подключению к ROS2 необходимо провести настройки в режим super_client. Для этого необходимо на компьютере:
- Скачать .xml файл:
wget https://raw.githubusercontent.com/voltbro/turtlebro2/master/extra/fastdds_supeclient.xml
- Поменять настройки адреса подключения в скаченном файле:
<udpv4>
<address>127.0.0.1</address>
<port>11811</port>
</udpv4>
Вместо 127.0.0.1 необходимо указать IP-адрес робота.
- Установить переменную окружения, указав месторасположения файла:
export FASTRTPS_DEFAULT_PROFILES_FILE=./fastdds_supeclient.xml
После завершения настроек, при выполнении команды ros2 topic list вы увидите топики вашего робота.
Доступные сервисы
Основной сервис необходимый для работы робота turtlebro
sudo systemctl start turtlebro
sudo systemctl stop turtlebro
При выполнении запуска сервиса запускается launch файл пакета turtlebro turtlebro.xml
Сервис-агент для работы microros
sudo systemctl start microros
sudo systemctl stop microros