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