Skip to main content

Сотрудничество

Проекту требуются любые специалисты, которым интересны наши направления исследований. Исследовательский характер работы предполагает применение передовых 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)
  2. Схемотехники для разработки цифро-аналоговых схем управления (KiCAD)
  3. Конструкторы печатных плат и другой оснастки (KiCAD, FreeCAD, Blender)
  4. DevOps. Для достижения целей приходится интегрировать много открытого софта из разных сфер (графика, инженерия, игровые движки, научные вычисления, робототехника), поэтому мы решили использовать nix как инструмент управления зависимостями - как для программ, так и для 3D-моделей/датасетов/логов-симуляции, так как там воспроизводимость и отслеживаемость изменений тоже важны. По мере внедрения в реальный сектор будет произодиться также и деплой ПО на базе NixOS. Помимо софта мы разрабатываем ещё и железо (самих роботов), поэтому есть желание использовать nix в перспективе как стандарт для публикации и интеграции исходников в open source hardware.
    • Требования:
      • любовь к open source, nix и функциональному программированию ^-^
      • интерес к предметной области - инженерия, ИИ, робототехника, аддитивное производство
      • желание разбираться в системах сборки различных языков программирования
      • будет плюсом желание собрать робота/мини-производство себе самому и стать в перспективе пользователем этой системы
    • Задачи:
      • ведение репозитория с nix-overlay для задач проекта
      • обеспечение разработчиков команды виртуальными средами с необходимыми зависимостями (40% Python, 30% C/C++, всё остальное)
      • опакечивание разнообразного ПО, актуализация существующих пакетов, исправление в них ошибок
      • (возможно) разработка кастомной библиотеки nix со специфическими для проекта функциями