Инструменты9 августа 2026 г., 11:46 МСК🤖 Auto

Превратите смартфон в контроллер робота: новый open-source teleop

SpesRobotics выпустила библиотеку teleop, позволяющую управлять манипуляторами через WebXR. Поддержка ROS 2, инверсной кинематики и симуляторов без сложной настройки.

Баннер новости 5385

Смартфон как джойстик для робота

Команда SpesRobotics представила проект teleop — инструмент, превращающий любой современный смартфон в устройство для телеуправления роботизированными манипуляторами. Решение использует WebXR API для отслеживания ориентации и положения устройства в 3D-пространстве, передавая данные на сервер, который управляет роботом.

Процесс настройки занимает три шага: установка сервера на ПК, открытие URL на телефоне и нажатие кнопки Start. Для iPhone требуется использование браузеров XR Browser или WebXR Viewer, так как Safari не поддерживает WebXR напрямую.

Ключевые возможности и интеграция

Библиотека поддерживает несколько сценариев использования, от простых прототипов до интеграции в ROS 2. Особое внимание уделено работе с инверсной кинематикой (IK) через утилиты JacobiRobot (на базе Pinocchio) и JacobiRobotROS.

Проект включает готовые интерфейсы для манипуляторов xArm (включая Lite 6) и симулятора Webots (для UR5e). Для ROS 2 публикуются топы target_frame (целевая поза) и tf (трансформация для визуализации), подписываясь на current_pose.

Сравнение интерфейсов и частот

Качество управления напрямую зависит от частоты обновления данных. Смартфоны обеспечивают около 30 FPS, что может требовать фильтрации, тогда как VR-джойстики выдают 90 FPS, обеспечивая более плавное управление без дополнительных фильтров.

Интерфейс Назначение Ключевые особенности
Basic Отладка и тесты Вывод данных в консоль, нет фильтрации
xArm Управление xArm (Lite 6) Простая интеграция, требует высокой частоты источника
ROS 2 Интеграция с MoveIt Servo / cartesian_controllers Работа с топиками geometry_msgs, tf2_msgs
ROS 2 IK Управление через инверсную кинематику Использует JacobiRobot, поддержка joint_trajectory_controller

Техническая реализация

Для продвинутых пользователей доступна установка в режиме редактирования (pip install -e) и запуск тестов через pytest. Библиотека позволяет создавать кастомные интерфейсы, подписываясь на колбэки с 4x4 матрицами трансформации конца манипулятора. Установка дополнительных утилит для кинематики осуществляется командой pip install teleop[utils].

Источник: Github ↗