Files

12 KiB
Raw Permalink Blame History

Lightweight Cobot

Русский · English

Lightweight Cobot (LWC) — открытая система управления коллаборативным роботом KUKA LBR iiwa 7 R800 на базе ROS 2. Проект объединяет работу с физическим роботом через FRI и ros2_control, цифровой двойник в Webots, планирование движений MoveIt 2, визуализацию в RViz и Foxglove, а также REST API и MCP для внешних приложений и AI-агентов.

LBR IIWA 7 R800
LBR IIWA 7 R800

Какие задачи решает проект

  • Даёт единый программный стек для физического робота и симуляции без дублирования управляющего кода.
  • Подключает KUKA Sunrise Cabinet к ROS 2 через FRI и предоставляет стандартные интерфейсы ros2_control.
  • Выполняет суставные и декартовы движения с помощью MoveIt 2, OMPL и Pilz.
  • Упрощает установку, настройку, сборку и запуск через CLI cobot.
  • Хранит основные параметры робота, инструментов и сервисов в одном файле cobot-setting.yaml.
  • Предоставляет средства мониторинга и интеграции через RViz, Foxglove, HTTP/WebSocket API и MCP.

Возможности

Компонент Назначение
Физический робот Управление KUKA LBR iiwa 7 R800 через FRI и ServerFriRos2
Цифровой двойник Симуляция робота, инструментов и окружения в Webots
Планирование Суставные и декартовы траектории через MoveIt 2
Управление ros2_control, ROS 2 actions/services, REST API и MCP
Наблюдение RViz, Foxglove и состояние системы через веб-интерфейс
Инфраструктура Локальное окружение или Docker, единый CLI и централизованная конфигурация

Совместимость

Компонент Поддерживаемая версия
Операционная система Ubuntu 24.04 LTS — подтверждённая ОС для нативной установки
ROS 2 Jazzy
Webots 2025a
Python для CLI 3.11
KUKA Sunrise OS 1.16
KUKA FRI 1.16

Docker можно использовать как альтернативную среду на совместимом Linux-хосте. Полноценная работа проекта на Windows и macOS не заявлена. Sunrise Workbench используется отдельно для подготовки и синхронизации проекта контроллера KUKA.

Репозитории и документация

Ресурс Ссылка
Основной репозиторий GitVerse
Зеркало GitHub
Онлайн-документация GitVerse Pages
Зеркало документации GitHub Pages

Подробные инструкции начинаются со страницы «Обзор». Исходные тексты документации находятся в doc/lwc-doc/docs.

Быстрый старт

Требования

  • Ubuntu 24.04 LTS;
  • доступ в интернет;
  • права sudo;
  • физический KUKA LBR iiwa 7 R800 либо компьютер для работы только с симулятором.

Установка CLI

Запустите установщик:

curl -fsSL https://gitverse.ru/api/repos/daniel-robotics/lightweight-cobot/raw/branch/master/install.sh | bash

Установщик проверит базовые инструменты, установит Docker, uv и Python 3.11 при необходимости, склонирует проект в ~/.lwc и установит CLI cobot. Каталог можно изменить переменной COBOT_INSTALL_DIR.

Откройте новый терминал или обновите окружение оболочки, затем запустите мастер первоначальной настройки:

cobot setup

Мастер последовательно предложит запустить локальную документацию, настроить cobot-setting.yaml и выбрать среду сборки: нативный ROS 2 или Docker.

Только симуляция

Для работы в Webots физический робот и Sunrise Workbench не требуются. Выполните:

cobot run

Выберите локальную или Docker-среду, а затем пункт Симулятор Webots.

Физический робот

Перед первым запуском подготовьте контроллер и программу ServerFriRos2 по инструкции «Настройка SunriseWorkbench». Проверьте сеть KONI/KLI, IP-адреса, период FRI, выбранный инструмент и его Load Data.

После настройки запустите:

cobot run

Выберите локальную или Docker-среду, а затем пункт Физический контроллер. Подробное описание серверной программы приведено на странице ServerFriRos2.

Основные команды

Команда Назначение
cobot setup Первоначальная настройка документации, робота и среды сборки
cobot robot-setup Интерактивное изменение cobot-setting.yaml
cobot local-setup Установка ROS 2 Jazzy и локальная сборка workspace
cobot docker-setup Загрузка или сборка Docker-образов
cobot run Интерактивный выбор среды и запуск робота или Webots
cobot run local Запуск через нативный ROS 2 с последующим выбором робота или Webots
cobot run docker Запуск в Docker с последующим выбором робота или Webots
cobot rebuild Пересборка ROS 2 workspace
cobot clean Удаление артефактов build, install и log
cobot update Обновление проекта и переустановка CLI
cobot --help Полный список доступных команд

Документация локально

Для локального просмотра необходим Docker.

cobot doc-setup

По умолчанию сайт будет доступен по адресу http://localhost:8000. Исходные Markdown-файлы отслеживаются автоматически.

Команда Назначение
cobot doc-setup Запустить локальный сервер документации
cobot doc-setup build Собрать статический сайт и единый PDF в doc/lwc-doc/site
cobot doc-setup rebuild Пересобрать Docker-образ и перезапустить сервер
cobot doc-setup down Остановить локальный сервер

Онлайн-версия доступна на GitVerse Pages, зеркало — на GitHub Pages.

Пакеты

Пакет Описание
iiwa_bringup Launch-файлы: симуляция Webots, реальный робот через FRI, MoveIt и RViz
iiwa_config Конфигурационные файлы: MoveIt, контроллеры ros2_control, кинематика и общие параметры
iiwa_controller Hardware interface: управление суставами в реальном времени через FRI
iiwa_description URDF/XACRO описание робота и конфигурация мира Webots
iiwa_msgs ROS 2 интерфейсы: action-сообщения для движения по суставам и в декартовых координатах, сервисы именованных поз
iiwa_planning Планирование движения: C++ и Python узлы на базе MoveIt 2 (OMPL, Pilz, moveit_py)
iiwa_utils Утилиты системы: загрузка конфигурации, спавн объектов и камер в Webots, конвертация данных
iiwa_web REST API, WebSocket и MCP для мониторинга и внешнего управления

Java-программы для KUKA Sunrise Cabinet находятся отдельно в src/iiwa_sunrise и не входят в сборку colcon.

Безопасность

Перед отправкой команд на физический робот проверьте рабочую область, ограничения суставов, активный инструмент, модель нагрузки и выбранный режим управления. LWC не заменяет штатные средства безопасности KUKA, оценку рисков роботизированной ячейки и контроль оператора.

Лицензия

Проект распространяется по лицензии Apache License 2.0.

Цитирование

Если вы используете проект в исследовании или разработке, укажите ссылку на репозиторий:

@software{lightweight_cobot_2026,
  author  = {Грабарь, Даниил},
  title   = {Lightweight Cobot: ROS 2 stack for KUKA LBR IIWA 7},
  year    = {2026},
  url     = {https://gitverse.ru/daniel-robotics/lightweight-cobot}
}

Благодарности

Организация Примечание
Комсомольский-на-Амуре государственный университет Исследования проводились на базе КнАГУ
Российский научный фонд Работа выполнена при поддержке Российского научного фонда