Добавлены 3д модели для второго эксперемнта и два мира для эксперемента
This commit is contained in:
+2
-3
@@ -16,14 +16,14 @@ digital_twin:
|
|||||||
max_linear_speed: 0.50 # верхний предел скорости TCP [м/с]
|
max_linear_speed: 0.50 # верхний предел скорости TCP [м/с]
|
||||||
max_angular_speed: 0.4 # скорость вращения TCP [рад/с]
|
max_angular_speed: 0.4 # скорость вращения TCP [рад/с]
|
||||||
webots:
|
webots:
|
||||||
world: pkg://iiwa_description/worlds/iiwa.wbt
|
world: pkg://iiwa_description/worlds/grant/body_hatch_installed.wbt
|
||||||
# world: pkg://iiwa_description/worlds/simple_world.wbt
|
# world: pkg://iiwa_description/worlds/simple_world.wbt
|
||||||
transform: "-0.25 0 0.79"
|
transform: "-0.25 0 0.79"
|
||||||
rotation: "0 0 1 0"
|
rotation: "0 0 1 0"
|
||||||
controller_timer: "50"
|
controller_timer: "50"
|
||||||
|
|
||||||
objects:
|
objects:
|
||||||
enabled: true
|
enabled: false
|
||||||
count: 5 # точное общее количество; модели могут повторяться
|
count: 5 # точное общее количество; модели могут повторяться
|
||||||
models:
|
models:
|
||||||
# - path: pkg://iiwa_description/objects/hammer/hammer1.obj
|
# - path: pkg://iiwa_description/objects/hammer/hammer1.obj
|
||||||
@@ -43,7 +43,6 @@ digital_twin:
|
|||||||
y: [-0.3, 0.3]
|
y: [-0.3, 0.3]
|
||||||
z: [0.1, 0.1] # высота нижней точки модели
|
z: [0.1, 0.1] # высота нижней точки модели
|
||||||
|
|
||||||
|
|
||||||
cameras:
|
cameras:
|
||||||
- pkg://iiwa_config/config/cameras/d455_top.yaml
|
- pkg://iiwa_config/config/cameras/d455_top.yaml
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,72 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Металл_|_оцинкованный
|
||||||
|
Ns 562.500000
|
||||||
|
Ka 0.820000 0.820000 0.820000
|
||||||
|
Kd 0.566810 0.612066 0.625345
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Металл_|_тёмный
|
||||||
|
Ns 462.399994
|
||||||
|
Ka 0.750000 0.750000 0.750000
|
||||||
|
Kd 0.151058 0.176774 0.186989
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Пластик_|_графит
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.039947 0.046149 0.052842
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_светло-серый
|
||||||
|
Ns 384.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.701169 0.708298 0.680020
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_серый
|
||||||
|
Ns 313.600006
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.425905 0.453456 0.442323
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_средне-серый
|
||||||
|
Ns 302.500000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.271577 0.293216 0.288816
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Резина_|_чёрная
|
||||||
|
Ns 102.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.002263 0.002932 0.003697
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,62 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Клеммник_|_синий_по_референсу
|
||||||
|
Ns 384.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.001963 0.133209 0.409826
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Металл_|_оцинкованный.001
|
||||||
|
Ns 562.500000
|
||||||
|
Ka 0.820000 0.820000 0.820000
|
||||||
|
Kd 0.566810 0.612066 0.625345
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Металл_|_тёмный.002
|
||||||
|
Ns 462.399994
|
||||||
|
Ka 0.750000 0.750000 0.750000
|
||||||
|
Kd 0.151058 0.176774 0.186989
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Пластик_|_графит.002
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.039947 0.046149 0.052842
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_тёмно-синий
|
||||||
|
Ns 313.600006
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.000805 0.071761 0.212044
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Резина_|_чёрная.002
|
||||||
|
Ns 102.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.002263 0.002932 0.003697
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Лотки_|_глубокий_синий
|
||||||
|
Ns 360.000000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.000805 0.042987 0.183549
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,32 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Платформа_|_текстурированная
|
||||||
|
Ns 48.400013
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.013473 0.016068 0.017936
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Разметка_|_жёлтая
|
||||||
|
Ns 360.000000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.804559 0.573159 0.000000
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Разметка_|_серая
|
||||||
|
Ns 250.000000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.344026 0.368591 0.378676
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,92 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Корпуса_|_серый_по_референсу.001
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.353741 0.383775 0.378676
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Металл_|_оцинкованный.002
|
||||||
|
Ns 562.500000
|
||||||
|
Ka 0.820000 0.820000 0.820000
|
||||||
|
Kd 0.566810 0.612066 0.625345
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Металл_|_тёмный.003
|
||||||
|
Ns 462.399994
|
||||||
|
Ka 0.750000 0.750000 0.750000
|
||||||
|
Kd 0.151058 0.176774 0.186989
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Панель_ПЛК_|_тёмный_графит
|
||||||
|
Ns 250.000000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.010398 0.013473 0.016988
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_графит.003
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.039947 0.046149 0.052842
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_светло-серый.002
|
||||||
|
Ns 384.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.701169 0.708298 0.680020
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_серый.001
|
||||||
|
Ns 313.600006
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.425905 0.453456 0.442323
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_средне-серый.002
|
||||||
|
Ns 302.500000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.271577 0.293216 0.288816
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Резина_|_чёрная.003
|
||||||
|
Ns 102.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.002263 0.002932 0.003697
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,72 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Индикатор_|_зелёный
|
||||||
|
Ns 608.399963
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.052842 0.573159 0.067725
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Корпуса_|_серый_по_референсу
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.353741 0.383775 0.378676
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Металл_|_тёмный.001
|
||||||
|
Ns 462.399994
|
||||||
|
Ka 0.750000 0.750000 0.750000
|
||||||
|
Kd 0.151058 0.176774 0.186989
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Пластик_|_графит.001
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.039947 0.046149 0.052842
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_светло-серый.001
|
||||||
|
Ns 384.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.701169 0.708298 0.680020
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_средне-серый.001
|
||||||
|
Ns 302.500000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.271577 0.293216 0.288816
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Резина_|_чёрная.001
|
||||||
|
Ns 102.399994
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.002263 0.002932 0.003697
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Корпуса_|_серый_по_референсу.002
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.353741 0.383775 0.378676
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,82 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Крышка_|_прозрачная_синяя
|
||||||
|
Ns 705.600098
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.056374 0.353741 0.535642
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 0.420000
|
||||||
|
illum 9
|
||||||
|
|
||||||
|
newmtl Крышка_|_синие_кромки
|
||||||
|
Ns 640.000000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.020951 0.173439 0.271577
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 0.650000
|
||||||
|
illum 9
|
||||||
|
|
||||||
|
newmtl Медь_|_катушка
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 0.320000 0.320000 0.320000
|
||||||
|
Kd 0.560499 0.275833 0.121986
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Металл_|_оцинкованный.003
|
||||||
|
Ns 562.500000
|
||||||
|
Ka 0.820000 0.820000 0.820000
|
||||||
|
Kd 0.566810 0.612066 0.625345
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Металл_|_тёмный.004
|
||||||
|
Ns 462.399994
|
||||||
|
Ka 0.750000 0.750000 0.750000
|
||||||
|
Kd 0.151058 0.176774 0.186989
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 3
|
||||||
|
|
||||||
|
newmtl Пластик_|_графит.004
|
||||||
|
Ns 291.599945
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.039947 0.046149 0.052842
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_средне-серый.003
|
||||||
|
Ns 302.500000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.271577 0.293216 0.288816
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
|
|
||||||
|
newmtl Пластик_|_тёмно-синий.001
|
||||||
|
Ns 313.600006
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.000805 0.071761 0.212044
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,12 @@
|
|||||||
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
|
# www.blender.org
|
||||||
|
|
||||||
|
newmtl Лотки_|_глубокий_синий.001
|
||||||
|
Ns 360.000000
|
||||||
|
Ka 1.000000 1.000000 1.000000
|
||||||
|
Kd 0.000805 0.042987 0.183549
|
||||||
|
Ks 0.500000 0.500000 0.500000
|
||||||
|
Ke 0.000000 0.000000 0.000000
|
||||||
|
Ni 1.500000
|
||||||
|
d 1.000000
|
||||||
|
illum 2
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
# Blender 5.2.1 LTS MTL File: 'None'
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
# www.blender.org
|
# www.blender.org
|
||||||
|
|
||||||
newmtl Dark_tool_steel.002
|
newmtl Dark_tool_steel.003
|
||||||
Ns 504.100067
|
Ns 504.100067
|
||||||
Ka 0.820000 0.820000 0.820000
|
Ka 0.820000 0.820000 0.820000
|
||||||
Kd 0.160000 0.180000 0.200000
|
Kd 0.160000 0.180000 0.200000
|
||||||
@@ -21,7 +21,7 @@ Ni 1.500000
|
|||||||
d 1.000000
|
d 1.000000
|
||||||
illum 3
|
illum 3
|
||||||
|
|
||||||
newmtl Satin_stainless_steel.002
|
newmtl Satin_stainless_steel.003
|
||||||
Ns 562.500000
|
Ns 562.500000
|
||||||
Ka 0.880000 0.880000 0.880000
|
Ka 0.880000 0.880000 0.880000
|
||||||
Kd 0.520000 0.560000 0.590000
|
Kd 0.520000 0.560000 0.590000
|
||||||
|
|||||||
+19553
-19537
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
# Blender 5.2.1 LTS MTL File: 'None'
|
# Blender 5.2.1 LTS MTL File: 'None'
|
||||||
# www.blender.org
|
# www.blender.org
|
||||||
|
|
||||||
newmtl Black_elastomer
|
newmtl Black_elastomer.001
|
||||||
Ns 193.600006
|
Ns 193.600006
|
||||||
Ka 1.000000 1.000000 1.000000
|
Ka 1.000000 1.000000 1.000000
|
||||||
Kd 0.012000 0.016000 0.019000
|
Kd 0.012000 0.016000 0.019000
|
||||||
@@ -11,7 +11,7 @@ Ni 1.500000
|
|||||||
d 1.000000
|
d 1.000000
|
||||||
illum 2
|
illum 2
|
||||||
|
|
||||||
newmtl Dark_tool_steel.001
|
newmtl Dark_tool_steel.005
|
||||||
Ns 504.100067
|
Ns 504.100067
|
||||||
Ka 0.820000 0.820000 0.820000
|
Ka 0.820000 0.820000 0.820000
|
||||||
Kd 0.160000 0.180000 0.200000
|
Kd 0.160000 0.180000 0.200000
|
||||||
@@ -21,7 +21,7 @@ Ni 1.500000
|
|||||||
d 1.000000
|
d 1.000000
|
||||||
illum 3
|
illum 3
|
||||||
|
|
||||||
newmtl Satin_stainless_steel.001
|
newmtl Satin_stainless_steel.005
|
||||||
Ns 562.500000
|
Ns 562.500000
|
||||||
Ka 0.880000 0.880000 0.880000
|
Ka 0.880000 0.880000 0.880000
|
||||||
Kd 0.520000 0.560000 0.590000
|
Kd 0.520000 0.560000 0.590000
|
||||||
@@ -31,7 +31,7 @@ Ni 1.500000
|
|||||||
d 1.000000
|
d 1.000000
|
||||||
illum 3
|
illum 3
|
||||||
|
|
||||||
newmtl Socket_recess.001
|
newmtl Socket_recess.004
|
||||||
Ns 250.000000
|
Ns 250.000000
|
||||||
Ka 0.100000 0.100000 0.100000
|
Ka 0.100000 0.100000 0.100000
|
||||||
Kd 0.006000 0.007000 0.008000
|
Kd 0.006000 0.007000 0.008000
|
||||||
|
|||||||
+32186
-32157
File diff suppressed because it is too large
Load Diff
+17105
-17092
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,122 @@
|
|||||||
|
#VRML_SIM R2025a utf8
|
||||||
|
|
||||||
|
# Original-size grant magazine. The sealant OBJ export is 10 times smaller
|
||||||
|
# than the other tool meshes, so scale only that tool visual.
|
||||||
|
# The OBJ meshes use Y as vertical; the default rotation maps Y to world Z.
|
||||||
|
PROTO GrantToolRack [
|
||||||
|
field SFVec3f translation 0 0 0
|
||||||
|
field SFRotation rotation 1 0 0 1.57079632679
|
||||||
|
]
|
||||||
|
{
|
||||||
|
Solid {
|
||||||
|
translation IS translation
|
||||||
|
rotation IS rotation
|
||||||
|
name "grant_tool_magazine"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.72 0.47 0.14
|
||||||
|
roughness 0.56
|
||||||
|
metalness 0.35
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/tool-magizine.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Solid {
|
||||||
|
translation -0.135 0.01 0
|
||||||
|
name "grant_vacuum_tool_docked"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.16 0.47 0.72
|
||||||
|
roughness 0.5
|
||||||
|
metalness 0.25
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/vacum-tool.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0.00054 0.07 0
|
||||||
|
children [ Box { size 0.0821 0.14 0.081 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Solid {
|
||||||
|
translation -0.045 0.01 0
|
||||||
|
name "grant_magnetic_tool_docked"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.43 0.30 0.65
|
||||||
|
roughness 0.4
|
||||||
|
metalness 0.45
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/magnit-tool.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.07 0
|
||||||
|
children [ Box { size 0.036 0.14 0.036 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Solid {
|
||||||
|
translation 0.045 0.01 0
|
||||||
|
name "grant_sealant_tool_docked"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Transform {
|
||||||
|
scale 10 10 10
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.23 0.57 0.31
|
||||||
|
roughness 0.6
|
||||||
|
metalness 0.15
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/germetic-tool.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.07 0
|
||||||
|
children [ Box { size 0.05608 0.14 0.05608 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Solid {
|
||||||
|
translation 0.135 0.01 0
|
||||||
|
name "grant_wrench_tool_docked"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.80 0.32 0.18
|
||||||
|
roughness 0.4
|
||||||
|
metalness 0.45
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/wranch-tool.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.07 0
|
||||||
|
children [ Box { size 0.049 0.14 0.049 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.005 0
|
||||||
|
children [ Box { size 0.42 0.01 0.14 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
Webots Project File version R2025a
|
||||||
|
perspectives: 000000ff00000000fd0000000300000000000001ca0000039ffc0200000001fb00000012005300630065006e0065005400720065006501000000000000039f0000000000000000000000010000023a00000390fc0200000001fb0000001400540065007800740045006400690074006f00720100000014000003900000003f00ffffff000000030000078000000039fc0100000002fb0000000e0043006f006e0073006f006c006501000001d0000005b00000000000000000fb0000001a0043006f006e0073006f006c00650041006c006c0041006c006c0100000000000007800000006900ffffff000005440000039000000004000000040000000100000008fc00000000
|
||||||
|
simulationViewPerspectives: 000000ff00000001000000020000016c000004a00100000002010000000101
|
||||||
|
sceneTreePerspectives: 000000ff00000001000000030000001c000002b2000000fa0100000002010000000201
|
||||||
|
maximizedDockId: -1
|
||||||
|
centralWidgetVisible: 1
|
||||||
|
orthographicViewHeight: 1
|
||||||
|
textFiles: -1
|
||||||
|
consoles: Console:All:All
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
Webots Project File version R2025a
|
||||||
|
perspectives: 000000ff00000000fd0000000300000000000001ca0000039ffc0200000001fb00000012005300630065006e0065005400720065006501000000000000039f0000000000000000000000010000023a00000390fc0200000001fb0000001400540065007800740045006400690074006f00720000000014000003900000003f00ffffff0000000300000780000000a0fc0100000002fb0000000e0043006f006e0073006f006c006501000001d0000005b00000000000000000fb0000001a0043006f006e0073006f006c00650041006c006c0041006c006c010000000000000780000000000000000000000780000003cb00000004000000040000000100000008fc00000000
|
||||||
|
simulationViewPerspectives: 000000ff00000001000000020000016c000004a00100000002010000000101
|
||||||
|
sceneTreePerspectives: 000000ff00000001000000030000001c000000c0000000fa0100000002010000000201
|
||||||
|
maximizedDockId: -1
|
||||||
|
centralWidgetVisible: 1
|
||||||
|
orthographicViewHeight: 1
|
||||||
|
textFiles: -1
|
||||||
@@ -0,0 +1,188 @@
|
|||||||
|
#VRML_SIM R2025a utf8
|
||||||
|
|
||||||
|
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2025a/projects/objects/backgrounds/protos/TexturedBackground.proto"
|
||||||
|
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2025a/projects/objects/backgrounds/protos/TexturedBackgroundLight.proto"
|
||||||
|
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2025a/projects/objects/floors/protos/RectangleArena.proto"
|
||||||
|
EXTERNPROTO "../../resource/protos/CollaborativeRobotTable.proto"
|
||||||
|
EXTERNPROTO "../../resource/protos/WorkspaceLimiter.proto"
|
||||||
|
EXTERNPROTO "../../resource/protos/GrantToolRack.proto"
|
||||||
|
|
||||||
|
# Based on ../iiwa.wbt. The robot is spawned by iiwa_bringup at
|
||||||
|
# (-0.25, 0, 0.79), facing world +X. All workpieces stay on the table
|
||||||
|
# in front of its base. The tabletop is at world Z = 0.793 m.
|
||||||
|
# The workpiece OBJ meshes use Y as their vertical axis. The shared axis-angle
|
||||||
|
# rotation first maps Y to world Z, then turns the workpieces 45 degrees
|
||||||
|
# around world Z. Coordinates and dimensions are metres.
|
||||||
|
#
|
||||||
|
# Base scene: the hatch lies separately on the tabletop for pickup and
|
||||||
|
# transfer. The robot starts without an attached tool; the magazine holds
|
||||||
|
# four static tools. For an already installed
|
||||||
|
# hatch, use body_hatch_installed.wbt. For experiment 02, offset
|
||||||
|
# BODY_HATCH_BODY by +0.003 m in X. Experiment 03 keeps an empty fixture;
|
||||||
|
# experiment 12 omits the hatch.
|
||||||
|
|
||||||
|
WorldInfo {
|
||||||
|
title "Body and hatch - grant experiments"
|
||||||
|
basicTimeStep 32
|
||||||
|
optimalThreadCount 4
|
||||||
|
contactProperties [
|
||||||
|
ContactProperties {
|
||||||
|
material1 "TableMaterial"
|
||||||
|
coulombFriction [ 0.6 ]
|
||||||
|
bounce 0
|
||||||
|
bounceVelocity 0
|
||||||
|
softERP 1
|
||||||
|
softCFM 0.0001
|
||||||
|
}
|
||||||
|
ContactProperties {
|
||||||
|
material1 "tool"
|
||||||
|
material2 "TableMaterial"
|
||||||
|
bounce 0
|
||||||
|
softCFM 0.002
|
||||||
|
maxContactJoints 100
|
||||||
|
}
|
||||||
|
ContactProperties {
|
||||||
|
material1 "default"
|
||||||
|
material2 "default"
|
||||||
|
maxContactJoints 20
|
||||||
|
bounce 0
|
||||||
|
softCFM 0.001
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Viewpoint {
|
||||||
|
orientation 0.19663259328507318 -0.09057124279298501 -0.9762850368805829 3.9867817928674034
|
||||||
|
position 1.75 -1.85 1.77
|
||||||
|
followType "Mounted Shot"
|
||||||
|
ambientOcclusionRadius 3
|
||||||
|
}
|
||||||
|
TexturedBackground {
|
||||||
|
}
|
||||||
|
TexturedBackgroundLight {
|
||||||
|
texture "noon_sunny_empty"
|
||||||
|
luminosity 2
|
||||||
|
}
|
||||||
|
RectangleArena {
|
||||||
|
name "Arena"
|
||||||
|
floorSize 12 12
|
||||||
|
wallHeight 2
|
||||||
|
}
|
||||||
|
CollaborativeRobotTable {
|
||||||
|
translation 0 0 -0.007
|
||||||
|
locked TRUE
|
||||||
|
showCabinet TRUE
|
||||||
|
}
|
||||||
|
DEF limiter Group {
|
||||||
|
children [
|
||||||
|
WorkspaceLimiter {
|
||||||
|
translation -1.56 -0.219999 1.01
|
||||||
|
rotation 0 0 1 1.5708
|
||||||
|
name "WorkspaceLimiter_back"
|
||||||
|
locked TRUE
|
||||||
|
scale 2.32 1 2
|
||||||
|
}
|
||||||
|
WorkspaceLimiter {
|
||||||
|
translation -0.04 1.18 1.01
|
||||||
|
name "WorkspaceLimiter_right"
|
||||||
|
locked TRUE
|
||||||
|
scale 2.43 1 2
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
DirectionalLight {
|
||||||
|
direction -0.1 0.1 0
|
||||||
|
intensity 2
|
||||||
|
}
|
||||||
|
|
||||||
|
# Fixture plate: bottom Y=-0.010 m rests on the tabletop. The two rails
|
||||||
|
# support the body at Y=+0.0161 m without intersecting its underside.
|
||||||
|
DEF BODY_HATCH_STAPEL Solid {
|
||||||
|
translation 0.30 0.12 0.803
|
||||||
|
rotation 0.862856209461 0.357406744337 0.357406744337 1.717771517458
|
||||||
|
name "body_hatch_stapel"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.30 0.34 0.39
|
||||||
|
roughness 0.55
|
||||||
|
metalness 0.55
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/stapel.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Group {
|
||||||
|
children [
|
||||||
|
Pose {
|
||||||
|
translation 0 -0.005 0
|
||||||
|
children [ Box { size 0.35 0.01 0.22 } ]
|
||||||
|
}
|
||||||
|
Pose {
|
||||||
|
translation -0.104 0.008 0
|
||||||
|
children [ Box { size 0.014 0.016 0.156 } ]
|
||||||
|
}
|
||||||
|
Pose {
|
||||||
|
translation 0.104 0.008 0
|
||||||
|
children [ Box { size 0.014 0.016 0.156 } ]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# The body shares the fixture centre. Its +0.020 m height puts the
|
||||||
|
# underside on top of the fixture rails.
|
||||||
|
DEF BODY_HATCH_BODY Solid {
|
||||||
|
translation 0.30 0.12 0.823
|
||||||
|
rotation 0.862856209461 0.357406744337 0.357406744337 1.717771517458
|
||||||
|
name "body_hatch_body"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.64 0.68 0.72
|
||||||
|
roughness 0.45
|
||||||
|
metalness 0.45
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/base-detail.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.000695 0
|
||||||
|
children [ Box { size 0.30 0.00915 0.17 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DEF BODY_HATCH_CAP Solid {
|
||||||
|
translation 0.35 -0.25 0.790667
|
||||||
|
rotation 0.862856209461 0.357406744337 0.357406744337 1.717771517458
|
||||||
|
name "body_hatch_cap"
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.78 0.82 0.86
|
||||||
|
roughness 0.35
|
||||||
|
metalness 0.55
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/cap.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.004165 0
|
||||||
|
children [ Box { size 0.1384 0.00367 0.0984 } ]
|
||||||
|
}
|
||||||
|
physics Physics {
|
||||||
|
mass 0.1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# The rack is in the front-left work area, clear of the loose hatch.
|
||||||
|
# Its 180-degree yaw faces the tool sockets toward the robot.
|
||||||
|
GrantToolRack {
|
||||||
|
translation 0.12 -0.42 0.793
|
||||||
|
rotation 0 0.70710678118 0.70710678118 3.14159265359
|
||||||
|
}
|
||||||
@@ -0,0 +1,182 @@
|
|||||||
|
#VRML_SIM R2025a utf8
|
||||||
|
|
||||||
|
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2025a/projects/objects/backgrounds/protos/TexturedBackground.proto"
|
||||||
|
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2025a/projects/objects/backgrounds/protos/TexturedBackgroundLight.proto"
|
||||||
|
EXTERNPROTO "https://raw.githubusercontent.com/cyberbotics/webots/R2025a/projects/objects/floors/protos/RectangleArena.proto"
|
||||||
|
EXTERNPROTO "../../resource/protos/CollaborativeRobotTable.proto"
|
||||||
|
EXTERNPROTO "../../resource/protos/WorkspaceLimiter.proto"
|
||||||
|
EXTERNPROTO "../../resource/protos/GrantToolRack.proto"
|
||||||
|
|
||||||
|
# Based on ../iiwa.wbt. The robot is spawned by iiwa_bringup at
|
||||||
|
# (-0.25, 0, 0.79), facing world +X. All workpieces stay on the table
|
||||||
|
# in front of its base. The tabletop is at world Z = 0.793 m.
|
||||||
|
# The workpiece OBJ meshes use Y as their vertical axis. The shared axis-angle
|
||||||
|
# rotation first maps Y to world Z, then turns the workpieces 45 degrees
|
||||||
|
# around world Z. Coordinates and dimensions are metres.
|
||||||
|
#
|
||||||
|
# Installed scene for experiments 04, 14 and 15: the hatch is fixed on
|
||||||
|
# the body surface. The magazine holds the four static tool models.
|
||||||
|
# For a loose hatch that the robot can pick up, use body_hatch.wbt.
|
||||||
|
|
||||||
|
WorldInfo {
|
||||||
|
title "Body with installed hatch and tool magazine"
|
||||||
|
basicTimeStep 32
|
||||||
|
optimalThreadCount 4
|
||||||
|
contactProperties [
|
||||||
|
ContactProperties {
|
||||||
|
material1 "TableMaterial"
|
||||||
|
coulombFriction [ 0.6 ]
|
||||||
|
bounce 0
|
||||||
|
bounceVelocity 0
|
||||||
|
softERP 1
|
||||||
|
softCFM 0.0001
|
||||||
|
}
|
||||||
|
ContactProperties {
|
||||||
|
material1 "tool"
|
||||||
|
material2 "TableMaterial"
|
||||||
|
bounce 0
|
||||||
|
softCFM 0.002
|
||||||
|
maxContactJoints 100
|
||||||
|
}
|
||||||
|
ContactProperties {
|
||||||
|
material1 "default"
|
||||||
|
material2 "default"
|
||||||
|
maxContactJoints 20
|
||||||
|
bounce 0
|
||||||
|
softCFM 0.001
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
Viewpoint {
|
||||||
|
orientation 0.19663259328507318 -0.09057124279298501 -0.9762850368805829 3.9867817928674034
|
||||||
|
position 1.75 -1.85 1.77
|
||||||
|
followType "Mounted Shot"
|
||||||
|
ambientOcclusionRadius 3
|
||||||
|
}
|
||||||
|
TexturedBackground {
|
||||||
|
}
|
||||||
|
TexturedBackgroundLight {
|
||||||
|
texture "noon_sunny_empty"
|
||||||
|
luminosity 2
|
||||||
|
}
|
||||||
|
RectangleArena {
|
||||||
|
name "Arena"
|
||||||
|
floorSize 12 12
|
||||||
|
wallHeight 2
|
||||||
|
}
|
||||||
|
CollaborativeRobotTable {
|
||||||
|
translation 0 0 -0.007
|
||||||
|
locked TRUE
|
||||||
|
showCabinet TRUE
|
||||||
|
}
|
||||||
|
DEF limiter Group {
|
||||||
|
children [
|
||||||
|
WorkspaceLimiter {
|
||||||
|
translation -1.56 -0.219999 1.01
|
||||||
|
rotation 0 0 1 1.5708
|
||||||
|
name "WorkspaceLimiter_back"
|
||||||
|
locked TRUE
|
||||||
|
scale 2.32 1 2
|
||||||
|
}
|
||||||
|
WorkspaceLimiter {
|
||||||
|
translation -0.04 1.18 1.01
|
||||||
|
name "WorkspaceLimiter_right"
|
||||||
|
locked TRUE
|
||||||
|
scale 2.43 1 2
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
DirectionalLight {
|
||||||
|
direction -0.1 0.1 0
|
||||||
|
intensity 2
|
||||||
|
}
|
||||||
|
|
||||||
|
# Fixture plate: bottom Y=-0.010 m rests on the tabletop. The two rails
|
||||||
|
# support the body at Y=+0.0161 m without intersecting its underside.
|
||||||
|
DEF BODY_HATCH_STAPEL Solid {
|
||||||
|
translation 0.30 0.12 0.803
|
||||||
|
rotation 0.862856209461 0.357406744337 0.357406744337 1.717771517458
|
||||||
|
name "body_hatch_stapel"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.30 0.34 0.39
|
||||||
|
roughness 0.55
|
||||||
|
metalness 0.55
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/stapel.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Group {
|
||||||
|
children [
|
||||||
|
Pose {
|
||||||
|
translation 0 -0.005 0
|
||||||
|
children [ Box { size 0.35 0.01 0.22 } ]
|
||||||
|
}
|
||||||
|
Pose {
|
||||||
|
translation -0.104 0.008 0
|
||||||
|
children [ Box { size 0.014 0.016 0.156 } ]
|
||||||
|
}
|
||||||
|
Pose {
|
||||||
|
translation 0.104 0.008 0
|
||||||
|
children [ Box { size 0.014 0.016 0.156 } ]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# The body shares the fixture centre. Its +0.020 m height puts the
|
||||||
|
# underside on top of the fixture rails.
|
||||||
|
DEF BODY_HATCH_BODY Solid {
|
||||||
|
translation 0.30 0.12 0.823
|
||||||
|
rotation 0.862856209461 0.357406744337 0.357406744337 1.717771517458
|
||||||
|
name "body_hatch_body"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.64 0.68 0.72
|
||||||
|
roughness 0.45
|
||||||
|
metalness 0.45
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/base-detail.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.000695 0
|
||||||
|
children [ Box { size 0.30 0.00915 0.17 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
DEF BODY_HATCH_CAP Solid {
|
||||||
|
translation 0.30 0.12 0.82594
|
||||||
|
rotation 0.862856209461 0.357406744337 0.357406744337 1.717771517458
|
||||||
|
name "body_hatch_cap"
|
||||||
|
locked TRUE
|
||||||
|
children [
|
||||||
|
Shape {
|
||||||
|
appearance PBRAppearance {
|
||||||
|
baseColor 0.78 0.82 0.86
|
||||||
|
roughness 0.35
|
||||||
|
metalness 0.55
|
||||||
|
}
|
||||||
|
geometry Mesh {
|
||||||
|
url [ "../../objects/grant/cap.obj" ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
boundingObject Pose {
|
||||||
|
translation 0 0.004165 0
|
||||||
|
children [ Box { size 0.1384 0.00367 0.0984 } ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# The rack is visible in the front-left work area, facing the robot.
|
||||||
|
GrantToolRack {
|
||||||
|
translation 0.12 -0.42 0.793
|
||||||
|
rotation 0 0.70710678118 0.70710678118 3.14159265359
|
||||||
|
}
|
||||||
@@ -0,0 +1,75 @@
|
|||||||
|
"""Both grant hatch worlds include the four-slot magazine and its tools."""
|
||||||
|
from pathlib import Path
|
||||||
|
import re
|
||||||
|
|
||||||
|
|
||||||
|
ROOT = Path(__file__).resolve().parents[2] / 'iiwa_description'
|
||||||
|
WORLDS = ROOT / 'worlds/grant'
|
||||||
|
RACK = ROOT / 'resource/protos/GrantToolRack.proto'
|
||||||
|
BRINGUP = ROOT.parent / 'iiwa_bringup/launch'
|
||||||
|
|
||||||
|
|
||||||
|
def pose(world: str, name: str):
|
||||||
|
match = re.search(rf'DEF {name} Solid \{{\s+translation ([^\n]+)', world)
|
||||||
|
assert match, name
|
||||||
|
return tuple(map(float, match.group(1).split()))
|
||||||
|
|
||||||
|
|
||||||
|
def test_both_worlds_have_magazine_next_to_work_zone():
|
||||||
|
for world_name in ('body_hatch.wbt', 'body_hatch_installed.wbt'):
|
||||||
|
world_path = WORLDS / world_name
|
||||||
|
world = world_path.read_text()
|
||||||
|
assert 'GrantToolRack {' in world
|
||||||
|
assert (world_path.parent / '../../resource/protos/GrantToolRack.proto').is_file()
|
||||||
|
rack = re.search(r'GrantToolRack \{\s+translation ([^\n]+)', world)
|
||||||
|
assert rack
|
||||||
|
x, y, z = map(float, rack.group(1).split())
|
||||||
|
assert x > -0.25 and abs(y) < 0.54 and abs(z - 0.793) < 1e-6
|
||||||
|
assert 'rotation 0 0.70710678118 0.70710678118 3.14159265359' in world
|
||||||
|
|
||||||
|
|
||||||
|
def test_magazine_contains_all_four_grant_tools():
|
||||||
|
text = RACK.read_text()
|
||||||
|
for asset in ('tool-magizine.obj', 'vacum-tool.obj', 'magnit-tool.obj',
|
||||||
|
'germetic-tool.obj', 'wranch-tool.obj'):
|
||||||
|
assert text.count(asset) == 1
|
||||||
|
assert (RACK.parent / '../../objects/grant' / asset).is_file()
|
||||||
|
for station in ('-0.135', '-0.045', '0.045', '0.135'):
|
||||||
|
assert f'translation {station} 0.01 0' in text
|
||||||
|
assert 'scale 4 4 4' not in text
|
||||||
|
assert text.count('scale 10 10 10') == 1
|
||||||
|
assert 'Box { size 0.42 0.01 0.14 }' in text
|
||||||
|
vacuum = (RACK.parent / '../../objects/grant/vacum-tool.obj').read_text()
|
||||||
|
assert 'Hollow_elastomer_vacuum_cup_OD_81.0_mm' in vacuum
|
||||||
|
assert 'Black_sealant_cartridge_body' not in vacuum
|
||||||
|
|
||||||
|
|
||||||
|
def test_installed_world_puts_hatch_on_body():
|
||||||
|
world = (WORLDS / 'body_hatch_installed.wbt').read_text()
|
||||||
|
body = pose(world, 'BODY_HATCH_BODY')
|
||||||
|
cap = pose(world, 'BODY_HATCH_CAP')
|
||||||
|
assert cap[:2] == body[:2]
|
||||||
|
assert abs(cap[2] + 0.002333 - (body[2] + 0.005273)) < 1e-6
|
||||||
|
cap_node = world.split('DEF BODY_HATCH_CAP Solid {', 1)[1].split('\n}', 1)[0]
|
||||||
|
assert 'locked TRUE' in cap_node
|
||||||
|
assert 'physics Physics {' not in cap_node
|
||||||
|
|
||||||
|
|
||||||
|
def test_robot_spawns_without_a_preinstalled_vacuum_tool():
|
||||||
|
main_launch = (BRINGUP / 'iiwa.launch.py').read_text()
|
||||||
|
controllers = (BRINGUP / 'supported/controllers.launch.py').read_text()
|
||||||
|
assert 'body_hatch_vacuum' not in main_launch
|
||||||
|
assert 'body_hatch_vacuum' not in controllers
|
||||||
|
assert 'body_hatch_robot_spawner' not in controllers
|
||||||
|
assert 'spawner_urdf = URDFSpawner(' in controllers
|
||||||
|
|
||||||
|
|
||||||
|
def test_loose_hatch_remains_separate_and_movable():
|
||||||
|
world = (WORLDS / 'body_hatch.wbt').read_text()
|
||||||
|
cap = world.split('DEF BODY_HATCH_CAP Solid {', 1)[1].split('\n}', 1)[0]
|
||||||
|
body = world.split('DEF BODY_HATCH_BODY Solid {', 1)[1].split('\n}', 1)[0]
|
||||||
|
cap_pose = re.search(r'translation ([^\n]+)', cap).group(1).split()
|
||||||
|
body_pose = re.search(r'translation ([^\n]+)', body).group(1).split()
|
||||||
|
assert abs(float(cap_pose[1]) - float(body_pose[1])) > 0.2
|
||||||
|
assert 'physics Physics {' in cap
|
||||||
|
assert 'locked TRUE' not in cap
|
||||||
Reference in New Issue
Block a user