🛒 Arduino, ESP32 и модули
Arduino VENTUNO Q и RouterBridge: простой ввод‑вывод ROS 2
9 Ч НАЗАДArduino

Arduino VENTUNO Q и RouterBridge: простой ввод‑вывод ROS 2

Библиотека Arduino_RouterBridge_ROS позволяет писать ROS 2 ноды прямо в Arduino‑скетче на VENTUNO Q без самодельных сериал‑протоколов.

7 ноября 2026 г.2 мин чтения15 теги

В типичной архитектуре ROS 2 мощный Linux‑компьютер выполняет высокоуровневую навигацию, SLAM и планирование, а внешний микроконтроллер занимается детерминированным реальным временем: GPIO, датчики, драйверы моторов.

Связать эти два мира обычно означает кастомные serial‑протоколы, отдельные драйверы и тяжёлые bridge‑ноды. Плата Arduino® VENTUNO Q спроектирована, чтобы этот барьер убрать.

Две «головы» на одной плате

VENTUNO Q объединяет на одной плате Linux‑совместимый MPU и realtime‑MCU — настоящая двухпроцессорная архитектура. На ROSCon Global 2026 в Торонто и затем на ROSCon Italy Джованни Бруно представил новый open‑source инструмент для прямой интеграции с ROS 2 — библиотеку Arduino_RouterBridge_ROS.

В её основе лежит Arduino_RouterBridge, реализующая протокол RPC поверх MsgPackRPC. Linux‑часть (Python) и микроконтроллер (Arduino‑скетч на Zephyr) могут вызывать функции друг друга с помощью двух методов:

  • Bridge.provide() — зарегистрировать вызываемую функцию на одной стороне
  • Bridge.call() — вызвать её с другой стороны

Вместо самописного парсинга сериал‑пакетов вы просто вызываете функции через границу MPU/MCU, как будто это один поток.

ROS 2 ноды прямо в Arduino‑скетче

Поверх этого транспорта библиотека Arduino_RouterBridge_ROS добавляет лёгкий ROS 2 proxy, который подключает firmware микроконтроллера напрямую к графу ROS через пространство имён ros2ino:

  • Полный набор возможностей ноды: создание нод, publisher, subscriber, service и action на MCU
  • Независимость от RMW: работает с любым ROS Middleware на Linux
  • Нативный C++‑интерфейс: синтаксис повторяет привычные шаблоны rclcpp

Теперь realtime‑код может напрямую публиковать, например, IMU‑телеметрию в /imu/data или подписываться на команды скорости /cmd_vel без дополнительных bridge‑нод.

Если вы делаете автономный ровер, точный робот‑манипулятор или первый ROS‑робот, возьмите VENTUNO Q, откройте репозиторий Arduino_RouterBridge_ROS и следуйте гайдам “Getting Started with ROS 2 on UNO Q” и “First ROS 2 Project on UNO Q”.


Источник: Arduino Blog