Добавлено описание функциональных модулей на русском

This commit is contained in:
Igor Brylyov 2023-01-24 13:53:35 +03:00
parent fff6800d3b
commit db14ac643e

View file

@ -1,28 +1,35 @@
![implementation preview](https://raw.githubusercontent.com/mahaarbo/ARBench/master/UI/icons/github_preview.png)
# Arbench
# Фреймворк Робосборщик
---___!!! USE WITH CAUTION! Plugin on heavy developement !!!___---
Фреймворк Робосборщик (Robossembler Framework) предназначен для автоматизации разработки управляющих программ для роботов-манипуляторов, их отладки в виртуальных средах и оценки производительности.
Annotation for robotics bench. A FreeCAD workbench for annotating frames of interest, exporting these w.r.t. the part frame, and exporting part information.
Фреймворк состоит из следующих функциональных модулей
1. __Модуль автоматической генерации последовательности сборки__ (`as_generator`) генерирует граф сборки из статической модели изделия с учётом дополнительных опций и ограничений.
2. __Модуль построения технологических карт__ (`pddl_configurator`) использует модели производственного оборудования (робот-манипулятор,3D-принтер) для формирования спецификаций задач в PDDL-совместимом формате для передачи в систему планирования совместно с последовательностью сборки.
3. __Модуль экспорта моделей в виртуальные среды__ (`env_exporter`) (игровые движки, движки физики, системы рендеринга, симуляторы) формирует т.н. ассеты, то есть модели, адаптированные для использования в виртуальных средах (тесселированные или подверженные ретопологии).
4. __Модуль генерации наборов данных__ (`dataset_generator`) аггрегирует данные симуляции для их последующей обработки и машинного обучения с целью развития навыков робота.
5. __Модуль исполнения планов__ управляет движениями и задачами робота в режиме реального времени. Совместимый со стандартом ROS2. Исходный код см. в репозитории [robossembler-ros2](https://gitlab.com/robossembler/robossembler-ros2)
6. __Модуль оценки производительности__ (`benchmark`) агрегирует информацию об эффективности методов получения навыков (вычислительная ресурсоёмкость, размер занимаемого дискового пространства) и эффективности самих навыков (скорость, точность).
7. __Модуль управления виртуальными средами__ управляет запуском подходящих отработки конкретных навыков виртуальных сред. Исходный код см. в репозитории [robossembler-ros2](https://gitlab.com/robossembler/robossembler-ros2)
# Installation instructions
This workbench supports versions of FreeCAD>0.16.
# Генератор последовательности сборки (ASP)
1. [Install FreeCAD](https://www.freecadweb.org/wiki/Installing)
2. If you're not on Ubuntu follow the [workbench installation instructions](https://www.freecadweb.org/wiki/How_to_install_additional_workbenches) or you can do the following on Ubuntu.
3. Custom workbenches are located in `.FreeCAD/Mod/` under your home directory
`cd ~/.FreeCAD/Mod/`
3. Either
- Clone the repository there `git clone https://gitlab.com/robossembler/framework ARBench`
- symlink the cloned repo in there (`ln -s ./ARBench ~/.FreeCAD/ARBench`)
4. Start the workbench by
1. Running FreeCAD
2. Open a STEP file
3. Open the `ARBench` workbench
Данный программный модуль(cad_parts_adjacency_matrix.py) предназначен для решения задачи планирования сборки. Он формирует граф сборки состоящий из И/ИЛИ и оценивает полученные там решения по набору из 4-ёх формальных правил для проверки сгенерированного графа, давая обратную связь для инженеров-конструкторов.
# Usage
Формальный правила называются предикатами. Модуль ASP предусматривает следующие разновидности предикатов:
- __Предикат геометрической осуществимости__. Верен для тех последовательностей сборки, которые удовлетворяют критерию геометрической осуществимости - когда все части графа сборки могут соприкосаться в определенной последовательности без каких либо столконовений.
- __Предикат механической осуществимость__. Верна для последовательности сборки, когда инструменты сборки могут осуществлять указанную операцию без каких либо коллизий с изделием.
- __Предикат стабильной осуществимости__. Верен для последовательности сборки, когда сборка на каждом из этапов приходит к стабильному состоянию.
- __Предикат степеней свободы__. Формируется на основе уже сгенерированных графов/графа сборки. В каких степенях свободы возможно перемещать деталь.
## Export meta-data for part's feature frames
# Верстак ARBench
Разметка моделей деталей и сборок для роботизированного производства.
## Установка
Поддерживается версия FreeCAD>0.16. Скопируйте содержимое репозитория в директорию `.FreeCAD/Mod/`.
## Экспорт мета-данных дeталей (en)
1. Click a small feature e.g. a circle
2. Press the feature frame creator (cone with a magnifying glass on it icon)
@ -34,9 +41,9 @@ This workbench supports versions of FreeCAD>0.16.
8. Use the json with whatever you want. E.g. [`arbench_part_publisher`](https://github.com/mahaarbo/arbench_part_publisher)
## Generate part's model packages for Gazebo simulator
## Генерация пакетов деталей для симулятора Gazebo
To generate SDF model packages from FreeCAD Document just press "Gazebo Export" button in ARBench UI. It will create folder for every `Solid` part in Document (`Compound` parts currently doesn't supported) with such structure
Для генерации SDF-пакета из документа FreeCAD выделите нужные детали и нажмите "Gazebo Export" в пользовательском интерфейсе верстака ARBench, после чего будет для каждого отдельного твёрдого тела (детали, `Solid`; `Compound` пока не поддерживаются) будет создана директория со следующей структурой
```
name_of_part
├── model.sdf
@ -45,14 +52,5 @@ name_of_part
└── model.config
```
This packages will placed by default in your FreeCAD Document's folder and could be moved to gazebo model's folder for using them in sumulator.
По умолчанию эти пакеты будут размещены в директории с документом FreeCAD. Чтобы добавить их в Gazebo нужно копировать сгенерированные директории в папку моделей (обычно `~/.gazebo/models`).
# Генератор последовательности сборки (ASP)
Данный программный модуль(cad_parts_adjacency_matrix.py) предназначен для решения задачи планирования сборки. Он формирует граф сборки состоящий из И/ИЛИ и оценивает полученные там решения по набору из 4-ёх формальных правил для проверки сгенерированного графа, давая обратную связь для инженеров-конструкторов.
Формальный правила называются предикатами. Модуль ASP предусматривает следующие разновидности предикатов:
- __Предикат геометрической осуществимости__. Верен для тех последовательностей сборки, которые удовлетворяют критерию геометрической осуществимости - когда все части графа сборки могут соприкосаться в определенной последовательности без каких либо столконовений.
- __Предикат механической осуществимость__. Верна для последовательности сборки, когда инструменты сборки могут осуществлять указанную операцию без каких либо коллизий с изделием.
- __Предикат стабильной осуществимости__. Верен для последовательности сборки, когда сборка на каждом из этапов приходит к стабильному состоянию.
- __Предикат степеней свободы__. Формируется на основе уже сгенерированных графов/графа сборки. В каких степенях свободы возможно перемещать деталь.