Обновление 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):

Обновление прошивки системной платы робота

Для поддержки управления роботом через 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. Для этого необходимо на компьютере:

  1. Скачать .xml файл:
wget https://raw.githubusercontent.com/voltbro/turtlebro2/master/extra/fastdds_supeclient.xml
  1. Поменять настройки адреса подключения в скаченном файле:
<udpv4>
    <address>127.0.0.1</address>
    <port>11811</port>
</udpv4>

Вместо 127.0.0.1 необходимо указать IP-адрес робота.

  1. Установить переменную окружения, указав месторасположения файла:
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

results matching ""

    No results matching ""