Robossembler
В рамках проекта Robossembler проектируются свободные, масштабируемые и доступные робототехнические комплексы для автономного промышленного производства. Robossembler стремится преодолеть экономические и технические ограничения на пути к полной автоматизации рутинного труда и сделать робототехнику доступной для всех. Первой разработкой проекта стал не имеющий аналогов в мире свободный робот-манипулятор Robossembler Arm, спроектированный для автоматической сборки. Комплекс открытого ПО Robossembler Framework позволит сократить издержки на проектирование роботизированных систем.
Сотрудничество
Проекту требуются любые специалисты, которым интересны наши направления исследований. Исследовательский характер работы предполагает применение передовых Open Source технологий. Участвуя в проекте, Вы получаете возможность приобщиться к
- Robot Operating System 2 - стремительно развивающийся робототехнический программный фреймворк, адаптированный для реальных задач
- Robonomics - блокчейн-сеть на Polkadot/Ethereum для запуска приложений Robot As A Service
- Ignition Gazebo - набор библиотек для симуляции робототехнических систем, реализующий архитектуру Entity-Component-System
- Nix/NixOS - передовая система детерминированной сборки программных пакетов
- FreeCAD, Blender и другие open source системы проектирования.
Результаты работы публикуются под открытой лицензией и Вашим именем и станут общемировым общественным достоянием. Проект может быть интересен магистрантам/аспирантам в качестве материала для написания диссертаций по темам Assembly Sequence Planning/Generation, Task and Motion Planning, Light's Out Industrial Automation, Autonomous Multi-Agent Systems.
На данном этапе особенно нужны:
1. Программисты по направлениям
- встраиваемое ПО для управления двигателями, датчиками (C, С++, Rust)
- драйверы ROS2 для роботов манипуляторов - (C++)
- ПО для работы с 3D. Преобразование моделей CAD в сборочные графы, преобразование сборочных графов в планы исполнения (Python/C++)
- алгоритмы машинного обучения - применение обучения с подкреплением в области робототехники (Python)
- плагины для симулятора Ignition Gazebo - (C++)
- интерфейсное ПО для обеспечения работы с Robonomics, разработка контейнеров (Bash/Python/Docker/Nix)
3. Конструкторы печатных плат и другой оснастки (KiCAD, FreeCAD, Blender)
4. DevOps. Для достижения целей приходится интегрировать много открытого софта из разных сфер (графика, инженерия, игровые движки, научные вычисления, робототехника), поэтому мы решили использовать nix как инструмент управления зависимостями - как для программ, так и для 3D-моделей/датасетов/логов-симуляции, так как там воспроизводимость и отслеживаемость изменений тоже важны. По мере внедрения в реальный сектор будет произодиться также и деплой ПО на базе NixOS. Помимо софта мы разрабатываем ещё и железо (самих роботов), поэтому есть желание использовать nix в перспективе как стандарт для публикации и интеграции исходников в open source hardware.
Требования:
- любовь к open source, nix и функциональному программированию ^-^
- интерес к предметной области - инженерия, ИИ, робототехника, аддитивное производство
- желание разбираться в системах сборки различных языков программирования
- будет плюсом желание собрать робота/мини-производство себе самому и стать в перспективе пользователем этой системы
Задачи:
- ведение репозитория с nix-overlay для задач проекта
- обеспечение разработчиков команды виртуальными средами с необходимыми зависимостями (40% Python, 30% C/C++, всё остальное)
- опакечивание разнообразного ПО, актуализация существующих пакетов, исправление в них ошибок
- (возможно) разработка кастомной библиотеки nix со специфическими для проекта функциями
Контакты
Сайт https://robossembler.org/
Канал https://www.youtube.com/@robossembler
Сообщество t.me/robossembler_ru
Эл.почта igor-brilev@yandex.ru