Add robot config

This commit is contained in:
Igor Brylev 2024-08-16 13:36:23 +00:00
parent 531190b4a1
commit dd551f8344

View file

@ -2,7 +2,7 @@
Имеем доску, две модели фигур - коня и пешку, робота, камеру. Задачей будет из фигур в наличии расставить шахматы на доску в начальную позицию.
### Создаём проект
## Создаём проект
* Projects
```json
{
@ -12,7 +12,7 @@
}
```
### Добавляем модели твёрдых тел (фигур и доски) в библиотеку проекта
## Добавляем модели твёрдых тел (фигур и доски) в библиотеку проекта
Сначала добавляются пакеты:
* Packages
@ -56,12 +56,9 @@
Затем при запуске "get_interface.py" для каждого пакета, получаем json со структурой:
```json
{
"parts": [{"properties1": "value1", "propertiesN": "valueN"}],
"cameras": [{"properties1": "value1", "propertiesN": "valueN"}],
"robots": [{"properties1": "value1", "propertiesN": "valueN"}],
"topics": [{"properties1": "value1", "propertiesN": "valueN"}],
"datasets": [{"properties1": "value1", "propertiesN": "valueN"}],
"weights": [{"properties1": "value1", "propertiesN": "valueN"}],
"...": ""
}
```
@ -83,6 +80,7 @@
}
}
```
```json
{
"sid": 2,
@ -97,6 +95,7 @@
}
}
```
```json
{
"sid": 3,
@ -113,12 +112,13 @@
```
Note. Кроме "sid" и "packages" все остальные поля заполняются из массива [{"properties1": "value1", "propertiesN": "valueN"}].
### Добавляем пакет с моделью камеры в библиотеку проекта
* Packages
# Пример: цифровой двойник "Камера"
## Добавляем пакет с моделью камеры в библиотеку проекта
```json
{
"sid": 3,
"project": 1,
"type": "digital_twin",
"entity": "CAMERA",
"description": "ROS Wrapper for Intel RealSense Cameras",
@ -128,14 +128,18 @@ Note. Кроме "sid" и "packages" все остальные поля запо
"args": {
"camera_namespace": \${NAME:string:""},
"camera_name": \${NAME:string:""},
... // + всё, что сейчас в модели данных в коде
},
"interfaces": {
"cmd": "python ros2_topic_to_json.py"
}
}
```
### Добавляем экземпляр камеры в сцену (Scene Builder)
## Добавляем экземпляр камеры в сцену (Scene Builder)
При этом запускаем "get_interface.py" и получаем json со структурой, описанной выше, но в данном случае в результате будет
```json
{
"cameras": [
@ -187,7 +191,28 @@ Note. Кроме "sid" и "packages" все остальные поля запо
}
```
### Робот добавляется аналогично камере.
## Робот добавляется аналогично камере
Модель робота
```json
{
"sid": 3,
"type": "digital_twin",
"entity": "ROBOT",
"description": "Robossembler Arm",
"command": "ros2 launch",
"package": "rbs_bringup",
"executable": "single_robot.launch.py",
"args": {
"robot_name": \${NAME:string:""},
"dof": \${NAME:number:""},
... // + всё, что сейчас в модели данных в коде
},
"interfaces": {
"cmd": "python ros2_topic_to_json.py"
}
}
```
* Topics
```json
@ -207,7 +232,8 @@ Note. Кроме "sid" и "packages" все остальные поля запо
}
```
### Добавляем пакет навыка Pose Estimation DOPE в библиотеку проекта
## Добавляем пакет навыка Pose Estimation DOPE в библиотеку проекта
* Packages
```json
{
@ -244,7 +270,7 @@ Note. Кроме "sid" и "packages" все остальные поля запо
}
```
### Запускаем "get_interfaces.py"
## Запускаем "get_interfaces.py"
* Topics
```json
{