Software & hardware components overview
This commit is contained in:
parent
cc8b8daccd
commit
098bd9d0bd
1 changed files with 37 additions and 16 deletions
|
@ -1,28 +1,19 @@
|
|||
---
|
||||
title: Рамки проекта
|
||||
title: Обзор проекта
|
||||
slug: /
|
||||
---
|
||||
|
||||
Цель проекта - создание ___симуляции___ автономной производственной линии, где роботы-манипуляторы собирают свои копии, осуществляют их наладку и ввод в эксплуатацию, чем достигается частичное самовоспроизводство. Проектирование _изначально автономной_ производственной системы позволит использовать материалы, технологии и условия эксплуатации, недопустимые для классических промышленных систем.
|
||||
|
||||
## Компоненты системы и их репозитории
|
||||
|
||||
### Робот-манипулятор с 6-ю степенями свободы
|
||||
## Аппаратные компоненты
|
||||
### Роботы-манипуляторы
|
||||
Роботы-манипуляторы Robossembler со сменными инструментами покрывают большой класс производственных задач. Они проектируются для автономной сборки и эксплуатации, поэтому к ним не предъявляются характерные для коллаборативных роботов требования безопасности, эстетичности и быстродействия.
|
||||
|
||||
В проекте разрабатываются два варианта исполнения манипулятора:
|
||||
- [Манипулятор](https://gitlab.com/robosphere/roboarm) для изготовления с помощью литья в [прессформе](https://gitlab.com/robosphere/cnc/roboarm-link-mold). Звено данного манипулятора состоит из двух оригинальных [сервоприводов](https://gitlab.com/robosphere/servo) и производится методом заливки компаундом, перестановкой оснастки на позицию будущего звена и дальнейшей закладкой приводов и кабелей. Данное технологические решение позволяет избавиться от крепёжных, кабельных и ременных соединений, а также необходимости отдельно производить корпус. Материал компаунда подбирается таким образом, чтобы обеспечить оптимальный теплоотвод, дешевизну, удобную утилизацию и повторную переработку компонентов манипулятора. Типы компаунда могут варьироваться в зависимости от нагрузок на конкретные разновидности звеньев.
|
||||
- [Манипулятор](https://gitlab.com/robosphere/roboarm-diy-version) для изготовления с помощью 3D-печати. Используются серийно изготавливаемые приводы GM6208 с оригинальным редуктором.
|
||||
- [Манипулятор](https://gitlab.com/robosphere/roboarm) с 6-ю степенями свободы для изготовления с помощью литья в [прессформе](https://gitlab.com/robosphere/cnc/roboarm-link-mold). Звено данного манипулятора состоит из двух оригинальных [сервоприводов](https://gitlab.com/robosphere/servo) и производится методом заливки компаундом, перестановкой оснастки на позицию будущего звена и дальнейшей закладкой приводов и кабелей. Данное технологические решение позволяет избавиться от крепёжных, кабельных и ременных соединений, а также необходимости отдельно производить корпус. Материал компаунда подбирается таким образом, чтобы обеспечить оптимальный теплоотвод, дешевизну, удобную утилизацию и повторную переработку компонентов манипулятора. Типы компаунда могут варьироваться в зависимости от нагрузок на конкретные разновидности звеньев.
|
||||
- [Манипулятор](https://gitlab.com/robosphere/roboarm-diy-version) с 6-ю степенями свободы для изготовления с помощью 3D-печати. Все детали манипулятора, кроме электрических плат, проводов и катушек индуктивности, изготавливаются с помощью технологии трёхмерной печати, но могут и отливаться в прессформах. Конструкция манипулятора адаптирована для автономной автоматической сборки.
|
||||
|
||||
### Рабочий стол
|
||||
Роботы-манипуляторы оснащаются [рабочими столами](https://gitlab.com/robosphere/cnc/roboarm-workspace) - местами, где будет осуществляться сборка и другие технологические операции. Рабочий стол имеет форму пчелиной соты и содержит в себе вычислительный узел для управления рабочим местом.
|
||||
Столы будут обеспечивать:
|
||||
1. Легкое подключение к ним манипуляторов с помощью специальных надёжных электрических разъемов;
|
||||
2. Электропитание и управление - рабочий стол будет включать в себя систему управления для всех подключаемых к нему манипуляторов;
|
||||
3. Подключение к себе других рабочих столов для создания связанной локальной сети и производственной линии.
|
||||
|
||||
|
||||
### Приспособления манипулятора
|
||||
### Приспособления для манипуляторов
|
||||
Все приспособления монтируются к манипулятору через [стыковочный интерфейс](https://gitlab.com/robosphere/arm-tools/connection-tool). Для смены и хранения двух и более приспособлений используется [Библиотека приспособлений](https://gitlab.com/robosphere/arm-tools/tools-library), к которой в дальнейшем будут присоединяться узлы подачи материалов.
|
||||
|
||||
Полный перечень приспособлений
|
||||
|
@ -34,4 +25,34 @@ slug: /
|
|||
- [Фрезерная и пост-обработка](https://gitlab.com/robosphere/arm-tools/post-processing-tool)
|
||||
- [Сканирование и съёмка](https://gitlab.com/robosphere/arm-tools/scan-tool)
|
||||
|
||||
Рабочий стол и подключённые к нему манипуляторы с приспособлениями формируют Автоматизированное рабочее место (АРМ), которое может быть объединено с другими рабочими местами, формируя сложные производственные комплексы. Конфигурация конкретного АРМ формируется исходя из требований к производственному процессу.
|
||||
Рабочий стол и подключённые к нему манипуляторы с приспособлениями формируют Автоматизированное рабочее место (АРМ), которое может быть объединено с другими рабочими местами, формируя сложные производственные комплексы. Конфигурация конкретного АРМ формируется исходя из требований к производственному процессу.
|
||||
|
||||
### Оборудование для формирования модульных рабочих пространств
|
||||
- [Шестигранные рабочие столы](https://gitlab.com/robosphere/cnc/roboarm-workspace). Роботы-манипуляторы оснащаются рабочими столами - местами, где будет осуществляться сборка и другие технологические операции. Рабочий стол имеет форму пчелиной соты и содержит в себе вычислительный узел для управления рабочим местом. Столы предполагают:
|
||||
- Легкое подключение к ним манипуляторов с помощью специальных надёжных электрических разъемов
|
||||
- Электропитание и управление - рабочий стол будет включать в себя систему управления для всех подключаемых к нему манипуляторов
|
||||
- Подключение к себе других рабочих столов для создания связанной локальной сети и производственной линии
|
||||
- Подключение к рабочим столам [транспортных модулей](https://gitlab.com/robosphere/transport-module) для превращения их в передвижные платформы.
|
||||
- [Модульный каркас для роботизированных ячеек](https://gitlab.com/robosphere/cnc/cubic-modular-workspace). Состоит из компонентов двух типов:
|
||||
- *Пластины* служат стыковочным интерфейсом для подключения роботов манипуляторов и их приспособлений. Также в них могут размещаться компоненты встраиваемой электроники для управления подключаемым оборудованием.
|
||||
- *Стойки* обеспечивают электрическое соединение между пластинами для передачи электронергии и управляющих сигналов. Модульная архитектура каркаса позволяет собирать разноообразные роботизированные ячейки под нужды технологического процесса и объединять их в производственные линии.
|
||||
|
||||
## Программные компоненты
|
||||
Все программные компоненты в совокупности составляют собой *фреймворк* для симуляции и отладки алгоритмов сборки сложных многосоставных изделий манипуляторами.
|
||||
|
||||
- [ARBench](https://gitlab.com/robosphere/forks/ARBench) - плагин для *FreeCAD*. Основные функции:
|
||||
- разметка CAD моделей изделий - геометрические фреймы, позиции захвата, материалы
|
||||
- парсинг моделей сборок CAD и представление их в виде моделей отдельных деталей и мета-информации об их взаимном расположении (матрица смежности или подобное представление)
|
||||
- преобразование моделей в последовательность сборки (*Assembly Sequence, AS*) с помощью *Assembly Sequence Planner*
|
||||
- формирование спецификации задачи в формате *Planning Domain Definition Language (PDDL)*
|
||||
- экспорт деталей и подсборок в виде пакетов формата *Simulation Description Format (SDF)* для загрузки в симулятор *Gazebo*
|
||||
* [Robossembler](https://gitlab.com/robosphere/robossembler-ros2) - набор пакетов для *ROS2*. Основные функции:
|
||||
- отслеживание событий в блокчейне *Robonomics* с помощью python-библиотеки *robonomics-interface*
|
||||
- загрузка данных из сети IPFS с помощью python-библиотеки *ipfshttpclient*
|
||||
- формирование плана исполнения (*Task Plan, TP*) в соответствии со спецификациями предметной области (*domain*) и задачи (*problem*) на языке PDDL
|
||||
- преобразование узлов TP в деревья поведения (*Behaviour Trees, BT*) с помощью *ROS2 Planning System*
|
||||
- преобразование узлов BT в управляющие программы планировщика движений (*Motion Planning, MP*) с помощью *MoveIt2*
|
||||
|
||||
Фреймворк позволяет изменять различные реализации алгоритмов для каждого из модулей. Например, существует несколько алгоритмов ASP и мы заранее не знаем какой из них будет наиболее эффективен для решения нашей задачи. Поэтому в фреймворке можно будет подключить разные ASP-алгоритмы и провести с ними симуляции. Те же рассуждения можно сделать и относительно других модулей фреймворка. То есть пользователь фреймворка будет выбирать AS/BT/MP алгоритмы.
|
||||
|
||||
Похожий подход был применён во фреймворке *gym-ignition*, целью которого было предоставление возможности пользователям создавать множественные воспроизводимые виртуальные среды для проведения симуляций и отладки Reinforcement Learning алгоритмов. Благодаря архитектуре *Entity-Component-System*, в фреймворке была реализована возможность заменять движки физики и рендеринга. При этом gym-ignition не ограничивает пользователя в отношении выбора методов решения задач, а лишь предоставляет API для взаимодейсвия с *Ignition Gazebo*.
|
Loading…
Add table
Add a link
Reference in a new issue