reachy-mini 1.2.5rc1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (479) hide show
  1. reachy_mini/__init__.py +4 -0
  2. reachy_mini/apps/__init__.py +25 -0
  3. reachy_mini/apps/app.py +258 -0
  4. reachy_mini/apps/assistant.py +787 -0
  5. reachy_mini/apps/manager.py +312 -0
  6. reachy_mini/apps/sources/__init__.py +4 -0
  7. reachy_mini/apps/sources/hf_space.py +106 -0
  8. reachy_mini/apps/sources/local_common_venv.py +567 -0
  9. reachy_mini/apps/templates/README.md.j2 +12 -0
  10. reachy_mini/apps/templates/gitignore.j2 +3 -0
  11. reachy_mini/apps/templates/index.html.j2 +40 -0
  12. reachy_mini/apps/templates/main.py.j2 +74 -0
  13. reachy_mini/apps/templates/pyproject.toml.j2 +28 -0
  14. reachy_mini/apps/templates/static/index.html.j2 +27 -0
  15. reachy_mini/apps/templates/static/main.js.j2 +47 -0
  16. reachy_mini/apps/templates/static/style.css.j2 +25 -0
  17. reachy_mini/apps/templates/style.css.j2 +411 -0
  18. reachy_mini/apps/utils.py +30 -0
  19. reachy_mini/assets/config/hardware_config.yaml +164 -0
  20. reachy_mini/assets/confused1.wav +0 -0
  21. reachy_mini/assets/count.wav +0 -0
  22. reachy_mini/assets/dance1.wav +0 -0
  23. reachy_mini/assets/firmware/CHANGELOG.md +15 -0
  24. reachy_mini/assets/firmware/reachymini_ua_io16_lin_v2.1.2.bin +0 -0
  25. reachy_mini/assets/firmware/reachymini_ua_io16_lin_v2.1.3.bin +0 -0
  26. reachy_mini/assets/firmware/update.sh +9 -0
  27. reachy_mini/assets/go_sleep.wav +0 -0
  28. reachy_mini/assets/impatient1.wav +0 -0
  29. reachy_mini/assets/kinematics_data.json +253 -0
  30. reachy_mini/assets/models/fknetwork.dynamic.onnx +0 -0
  31. reachy_mini/assets/models/fknetwork.onnx +0 -0
  32. reachy_mini/assets/models/fknetwork_int8.onnx +0 -0
  33. reachy_mini/assets/models/iknetwork.onnx +0 -0
  34. reachy_mini/assets/wake_up.wav +0 -0
  35. reachy_mini/daemon/__init__.py +1 -0
  36. reachy_mini/daemon/app/__init__.py +1 -0
  37. reachy_mini/daemon/app/bg_job_register.py +142 -0
  38. reachy_mini/daemon/app/dashboard/static/assets/KO-cartoon-static.svg +40 -0
  39. reachy_mini/daemon/app/dashboard/static/assets/awake-cartoon-static.svg +42 -0
  40. reachy_mini/daemon/app/dashboard/static/assets/awake-cartoon.svg +6 -0
  41. reachy_mini/daemon/app/dashboard/static/assets/go-to-sleep-cartoon.svg +6 -0
  42. reachy_mini/daemon/app/dashboard/static/assets/no-wifi-cartoon-static.svg +50 -0
  43. reachy_mini/daemon/app/dashboard/static/assets/no-wifi-cartoon.svg +6 -0
  44. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-awake.svg +18 -0
  45. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-connection-lost-animation.svg +6 -0
  46. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-go-to-sleep-animation.svg +6 -0
  47. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-ko-animation.svg +6 -0
  48. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-ko.svg +22 -0
  49. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-sleeping-static.svg +41 -0
  50. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-sleeping.svg +18 -0
  51. reachy_mini/daemon/app/dashboard/static/assets/reachy-mini-wake-up-animation.svg +6 -0
  52. reachy_mini/daemon/app/dashboard/static/css/app.css +1433 -0
  53. reachy_mini/daemon/app/dashboard/static/fonts/Archivo-Italic-VariableFont_wdth,wght.ttf +0 -0
  54. reachy_mini/daemon/app/dashboard/static/fonts/Archivo-VariableFont_wdth,wght.ttf +0 -0
  55. reachy_mini/daemon/app/dashboard/static/fonts/Asap-Italic-VariableFont_wdth,wght.ttf +0 -0
  56. reachy_mini/daemon/app/dashboard/static/fonts/Asap-VariableFont_wdth,wght.ttf +0 -0
  57. reachy_mini/daemon/app/dashboard/static/js/3rdparty/gstwebrtc-api-2.0.0.min.js +5 -0
  58. reachy_mini/daemon/app/dashboard/static/js/apps.js +323 -0
  59. reachy_mini/daemon/app/dashboard/static/js/appstore.js +167 -0
  60. reachy_mini/daemon/app/dashboard/static/js/daemon.js +169 -0
  61. reachy_mini/daemon/app/dashboard/static/js/health_check.js +9 -0
  62. reachy_mini/daemon/app/dashboard/static/js/move_player.js +132 -0
  63. reachy_mini/daemon/app/dashboard/static/js/notification.js +41 -0
  64. reachy_mini/daemon/app/dashboard/static/js/update.js +132 -0
  65. reachy_mini/daemon/app/dashboard/static/js/volume_control.js +252 -0
  66. reachy_mini/daemon/app/dashboard/static/js/wifi.js +176 -0
  67. reachy_mini/daemon/app/dashboard/tailwindcss/README.md +15 -0
  68. reachy_mini/daemon/app/dashboard/tailwindcss/package-lock.json +1127 -0
  69. reachy_mini/daemon/app/dashboard/tailwindcss/package.json +6 -0
  70. reachy_mini/daemon/app/dashboard/tailwindcss/pnpm-lock.yaml +608 -0
  71. reachy_mini/daemon/app/dashboard/tailwindcss/postcss.config.js +6 -0
  72. reachy_mini/daemon/app/dashboard/tailwindcss/styles/app.css +185 -0
  73. reachy_mini/daemon/app/dashboard/tailwindcss/tailwind.config.js +11 -0
  74. reachy_mini/daemon/app/dashboard/templates/base.html +21 -0
  75. reachy_mini/daemon/app/dashboard/templates/index.html +20 -0
  76. reachy_mini/daemon/app/dashboard/templates/sections/apps.html +8 -0
  77. reachy_mini/daemon/app/dashboard/templates/sections/appstore.html +35 -0
  78. reachy_mini/daemon/app/dashboard/templates/sections/daemon.html +45 -0
  79. reachy_mini/daemon/app/dashboard/templates/sections/move_player.html +121 -0
  80. reachy_mini/daemon/app/dashboard/templates/sections/notification.html +19 -0
  81. reachy_mini/daemon/app/dashboard/templates/sections/update.html +54 -0
  82. reachy_mini/daemon/app/dashboard/templates/sections/wifi.html +46 -0
  83. reachy_mini/daemon/app/dashboard/templates/settings.html +14 -0
  84. reachy_mini/daemon/app/dependencies.py +41 -0
  85. reachy_mini/daemon/app/main.py +469 -0
  86. reachy_mini/daemon/app/models.py +149 -0
  87. reachy_mini/daemon/app/routers/apps.py +114 -0
  88. reachy_mini/daemon/app/routers/daemon.py +85 -0
  89. reachy_mini/daemon/app/routers/kinematics.py +57 -0
  90. reachy_mini/daemon/app/routers/motors.py +41 -0
  91. reachy_mini/daemon/app/routers/move.py +265 -0
  92. reachy_mini/daemon/app/routers/state.py +146 -0
  93. reachy_mini/daemon/app/routers/update.py +86 -0
  94. reachy_mini/daemon/app/routers/volume.py +423 -0
  95. reachy_mini/daemon/app/routers/wifi_config.py +219 -0
  96. reachy_mini/daemon/app/services/__init__.py +1 -0
  97. reachy_mini/daemon/app/services/bluetooth/bluetooth_service.py +796 -0
  98. reachy_mini/daemon/app/services/bluetooth/commands/HOTSPOT.sh +7 -0
  99. reachy_mini/daemon/app/services/bluetooth/commands/RESTART_DAEMON.sh +4 -0
  100. reachy_mini/daemon/app/services/bluetooth/commands/SOFTWARE_RESET.sh +7 -0
  101. reachy_mini/daemon/app/services/bluetooth/install_service_bluetooth.sh +39 -0
  102. reachy_mini/daemon/app/services/gpio_shutdown/__init__.py +1 -0
  103. reachy_mini/daemon/app/services/gpio_shutdown/install_service.sh +33 -0
  104. reachy_mini/daemon/app/services/gpio_shutdown/launcher.sh +3 -0
  105. reachy_mini/daemon/app/services/gpio_shutdown/shutdown_monitor.py +28 -0
  106. reachy_mini/daemon/app/services/wireless/generate_asoundrc.sh +70 -0
  107. reachy_mini/daemon/app/services/wireless/install_service.sh +33 -0
  108. reachy_mini/daemon/app/services/wireless/launcher.sh +5 -0
  109. reachy_mini/daemon/backend/__init__.py +1 -0
  110. reachy_mini/daemon/backend/abstract.py +815 -0
  111. reachy_mini/daemon/backend/mujoco/__init__.py +36 -0
  112. reachy_mini/daemon/backend/mujoco/backend.py +395 -0
  113. reachy_mini/daemon/backend/mujoco/utils.py +59 -0
  114. reachy_mini/daemon/backend/mujoco/video_udp.py +57 -0
  115. reachy_mini/daemon/backend/robot/__init__.py +8 -0
  116. reachy_mini/daemon/backend/robot/backend.py +597 -0
  117. reachy_mini/daemon/daemon.py +651 -0
  118. reachy_mini/daemon/utils.py +116 -0
  119. reachy_mini/descriptions/reachy_mini/mjcf/additional.xml +6 -0
  120. reachy_mini/descriptions/reachy_mini/mjcf/assets/5w_speaker.part +13 -0
  121. reachy_mini/descriptions/reachy_mini/mjcf/assets/5w_speaker.stl +0 -0
  122. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna.part +13 -0
  123. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna.stl +0 -0
  124. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_body_3dprint.part +13 -0
  125. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_body_3dprint.stl +0 -0
  126. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_holder_l_3dprint.part +13 -0
  127. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_holder_l_3dprint.stl +0 -0
  128. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_holder_r_3dprint.part +13 -0
  129. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_holder_r_3dprint.stl +0 -0
  130. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_interface_3dprint.part +13 -0
  131. reachy_mini/descriptions/reachy_mini/mjcf/assets/antenna_interface_3dprint.stl +0 -0
  132. reachy_mini/descriptions/reachy_mini/mjcf/assets/arducam.part +13 -0
  133. reachy_mini/descriptions/reachy_mini/mjcf/assets/arducam.stl +0 -0
  134. reachy_mini/descriptions/reachy_mini/mjcf/assets/b3b_eh.part +13 -0
  135. reachy_mini/descriptions/reachy_mini/mjcf/assets/b3b_eh.stl +0 -0
  136. reachy_mini/descriptions/reachy_mini/mjcf/assets/b3b_eh_1.part +13 -0
  137. reachy_mini/descriptions/reachy_mini/mjcf/assets/b3b_eh_1.stl +0 -0
  138. reachy_mini/descriptions/reachy_mini/mjcf/assets/bearing_85x110x13.part +13 -0
  139. reachy_mini/descriptions/reachy_mini/mjcf/assets/bearing_85x110x13.stl +0 -0
  140. reachy_mini/descriptions/reachy_mini/mjcf/assets/big_lens_d40.part +13 -0
  141. reachy_mini/descriptions/reachy_mini/mjcf/assets/big_lens_d40.stl +0 -0
  142. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_down_3dprint.part +13 -0
  143. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_down_3dprint.stl +0 -0
  144. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_foot_3dprint.part +13 -0
  145. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_foot_3dprint.stl +0 -0
  146. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_top_3dprint.part +13 -0
  147. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_top_3dprint.stl +0 -0
  148. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_turning_3dprint.part +13 -0
  149. reachy_mini/descriptions/reachy_mini/mjcf/assets/body_turning_3dprint.stl +0 -0
  150. reachy_mini/descriptions/reachy_mini/mjcf/assets/bts2_m2_6x8.part +13 -0
  151. reachy_mini/descriptions/reachy_mini/mjcf/assets/bts2_m2_6x8.stl +0 -0
  152. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/README.m +1 -0
  153. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_back_0.stl +0 -0
  154. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_back_1.stl +0 -0
  155. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_back_2.stl +0 -0
  156. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_back_3.stl +0 -0
  157. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_front_0.stl +0 -0
  158. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_front_1.stl +0 -0
  159. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/body_top_3dprint_collider_front_2.stl +0 -0
  160. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/coarse/head_one_3dprint_collider_0.stl +0 -0
  161. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_back_0.stl +0 -0
  162. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_back_1.stl +0 -0
  163. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_back_2.stl +0 -0
  164. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_back_3.stl +0 -0
  165. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_front_0.stl +0 -0
  166. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_front_1.stl +0 -0
  167. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/body_top_3dprint_collider_front_2.stl +0 -0
  168. reachy_mini/descriptions/reachy_mini/mjcf/assets/collision/fine/head_one_3dprint_collider_0.stl +0 -0
  169. reachy_mini/descriptions/reachy_mini/mjcf/assets/croissant_1k.blend/croissant_1k.obj +5021 -0
  170. reachy_mini/descriptions/reachy_mini/mjcf/assets/croissant_1k.blend/textures/croissant_diff_1k.png +0 -0
  171. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_case_b_dummy.part +13 -0
  172. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_case_b_dummy.stl +0 -0
  173. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_case_f_dummy.part +13 -0
  174. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_case_f_dummy.stl +0 -0
  175. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_case_m_dummy.part +13 -0
  176. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_case_m_dummy.stl +0 -0
  177. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_horn_dummy.part +13 -0
  178. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_horn_dummy.stl +0 -0
  179. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_led_cap2_dummy.part +13 -0
  180. reachy_mini/descriptions/reachy_mini/mjcf/assets/dc15_a01_led_cap2_dummy.stl +0 -0
  181. reachy_mini/descriptions/reachy_mini/mjcf/assets/food_apple_01_1k.blend/food_apple_01_1k.obj +18045 -0
  182. reachy_mini/descriptions/reachy_mini/mjcf/assets/food_apple_01_1k.blend/textures/food_apple_01_diff_1k.png +0 -0
  183. reachy_mini/descriptions/reachy_mini/mjcf/assets/glasses_dolder_3dprint.part +13 -0
  184. reachy_mini/descriptions/reachy_mini/mjcf/assets/glasses_dolder_3dprint.stl +0 -0
  185. reachy_mini/descriptions/reachy_mini/mjcf/assets/head_back_3dprint.part +13 -0
  186. reachy_mini/descriptions/reachy_mini/mjcf/assets/head_back_3dprint.stl +0 -0
  187. reachy_mini/descriptions/reachy_mini/mjcf/assets/head_front_3dprint.part +13 -0
  188. reachy_mini/descriptions/reachy_mini/mjcf/assets/head_front_3dprint.stl +0 -0
  189. reachy_mini/descriptions/reachy_mini/mjcf/assets/head_mic_3dprint.part +13 -0
  190. reachy_mini/descriptions/reachy_mini/mjcf/assets/head_mic_3dprint.stl +0 -0
  191. reachy_mini/descriptions/reachy_mini/mjcf/assets/lens_cap_d30_3dprint.part +13 -0
  192. reachy_mini/descriptions/reachy_mini/mjcf/assets/lens_cap_d30_3dprint.stl +0 -0
  193. reachy_mini/descriptions/reachy_mini/mjcf/assets/lens_cap_d40_3dprint.part +13 -0
  194. reachy_mini/descriptions/reachy_mini/mjcf/assets/lens_cap_d40_3dprint.stl +0 -0
  195. reachy_mini/descriptions/reachy_mini/mjcf/assets/m12_fisheye_lens_1_8mm.part +13 -0
  196. reachy_mini/descriptions/reachy_mini/mjcf/assets/m12_fisheye_lens_1_8mm.stl +0 -0
  197. reachy_mini/descriptions/reachy_mini/mjcf/assets/mp01062_stewart_arm_3.part +13 -0
  198. reachy_mini/descriptions/reachy_mini/mjcf/assets/mp01062_stewart_arm_3.stl +0 -0
  199. reachy_mini/descriptions/reachy_mini/mjcf/assets/neck_reference_3dprint.part +13 -0
  200. reachy_mini/descriptions/reachy_mini/mjcf/assets/neck_reference_3dprint.stl +0 -0
  201. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10.part +13 -0
  202. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10.stl +0 -0
  203. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10_1.part +13 -0
  204. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10_1.stl +0 -0
  205. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10_2.part +13 -0
  206. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10_2.stl +0 -0
  207. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10_3.part +13 -0
  208. reachy_mini/descriptions/reachy_mini/mjcf/assets/phs_1_7x20_5_dc10_3.stl +0 -0
  209. reachy_mini/descriptions/reachy_mini/mjcf/assets/pp01102_arducam_carter.part +13 -0
  210. reachy_mini/descriptions/reachy_mini/mjcf/assets/pp01102_arducam_carter.stl +0 -0
  211. reachy_mini/descriptions/reachy_mini/mjcf/assets/rubber_duck_toy_1k.blend/rubber_duck_toy_1k.obj +8940 -0
  212. reachy_mini/descriptions/reachy_mini/mjcf/assets/rubber_duck_toy_1k.blend/textures/rubber_duck_toy_diff_1k.png +0 -0
  213. reachy_mini/descriptions/reachy_mini/mjcf/assets/small_lens_d30.part +13 -0
  214. reachy_mini/descriptions/reachy_mini/mjcf/assets/small_lens_d30.stl +0 -0
  215. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_link_ball.part +13 -0
  216. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_link_ball.stl +0 -0
  217. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_link_ball__2.part +13 -0
  218. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_link_ball__2.stl +0 -0
  219. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_link_rod.part +13 -0
  220. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_link_rod.stl +0 -0
  221. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_main_plate_3dprint.part +13 -0
  222. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_main_plate_3dprint.stl +0 -0
  223. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_tricap_3dprint.part +13 -0
  224. reachy_mini/descriptions/reachy_mini/mjcf/assets/stewart_tricap_3dprint.stl +0 -0
  225. reachy_mini/descriptions/reachy_mini/mjcf/assets/wooden_table_02_1k.blend/textures/wooden_table_02_diff_1k.png +0 -0
  226. reachy_mini/descriptions/reachy_mini/mjcf/assets/wooden_table_02_1k.blend/wooden_table_02_1k.obj +485 -0
  227. reachy_mini/descriptions/reachy_mini/mjcf/config.json +21 -0
  228. reachy_mini/descriptions/reachy_mini/mjcf/joints_properties.xml +29 -0
  229. reachy_mini/descriptions/reachy_mini/mjcf/reachy_mini.xml +642 -0
  230. reachy_mini/descriptions/reachy_mini/mjcf/reachy_mini.xml.bak +442 -0
  231. reachy_mini/descriptions/reachy_mini/mjcf/scene.xml +24 -0
  232. reachy_mini/descriptions/reachy_mini/mjcf/scenes/empty.xml +27 -0
  233. reachy_mini/descriptions/reachy_mini/mjcf/scenes/minimal.xml +132 -0
  234. reachy_mini/descriptions/reachy_mini/urdf/assets/5w_speaker.part +13 -0
  235. reachy_mini/descriptions/reachy_mini/urdf/assets/5w_speaker.stl +0 -0
  236. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna.part +13 -0
  237. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna.stl +0 -0
  238. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_body_3dprint.part +13 -0
  239. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_body_3dprint.stl +0 -0
  240. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_holder_l_3dprint.part +13 -0
  241. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_holder_l_3dprint.stl +0 -0
  242. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_holder_r_3dprint.part +13 -0
  243. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_holder_r_3dprint.stl +0 -0
  244. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_interface_3dprint.part +13 -0
  245. reachy_mini/descriptions/reachy_mini/urdf/assets/antenna_interface_3dprint.stl +0 -0
  246. reachy_mini/descriptions/reachy_mini/urdf/assets/arducam.part +13 -0
  247. reachy_mini/descriptions/reachy_mini/urdf/assets/arducam.stl +0 -0
  248. reachy_mini/descriptions/reachy_mini/urdf/assets/arm.part +13 -0
  249. reachy_mini/descriptions/reachy_mini/urdf/assets/arm.stl +0 -0
  250. reachy_mini/descriptions/reachy_mini/urdf/assets/b3b_eh.part +13 -0
  251. reachy_mini/descriptions/reachy_mini/urdf/assets/b3b_eh.stl +0 -0
  252. reachy_mini/descriptions/reachy_mini/urdf/assets/b3b_eh_1.part +13 -0
  253. reachy_mini/descriptions/reachy_mini/urdf/assets/b3b_eh_1.stl +0 -0
  254. reachy_mini/descriptions/reachy_mini/urdf/assets/ball.part +13 -0
  255. reachy_mini/descriptions/reachy_mini/urdf/assets/ball.stl +0 -0
  256. reachy_mini/descriptions/reachy_mini/urdf/assets/bearing_85x110x13.part +13 -0
  257. reachy_mini/descriptions/reachy_mini/urdf/assets/bearing_85x110x13.stl +0 -0
  258. reachy_mini/descriptions/reachy_mini/urdf/assets/big_lens.part +13 -0
  259. reachy_mini/descriptions/reachy_mini/urdf/assets/big_lens.stl +0 -0
  260. reachy_mini/descriptions/reachy_mini/urdf/assets/big_lens_d40.part +13 -0
  261. reachy_mini/descriptions/reachy_mini/urdf/assets/big_lens_d40.stl +0 -0
  262. reachy_mini/descriptions/reachy_mini/urdf/assets/body_down_3dprint.part +13 -0
  263. reachy_mini/descriptions/reachy_mini/urdf/assets/body_down_3dprint.stl +0 -0
  264. reachy_mini/descriptions/reachy_mini/urdf/assets/body_foot_3dprint.part +13 -0
  265. reachy_mini/descriptions/reachy_mini/urdf/assets/body_foot_3dprint.stl +0 -0
  266. reachy_mini/descriptions/reachy_mini/urdf/assets/body_top_3dprint.part +13 -0
  267. reachy_mini/descriptions/reachy_mini/urdf/assets/body_top_3dprint.stl +0 -0
  268. reachy_mini/descriptions/reachy_mini/urdf/assets/body_turning_3dprint.part +13 -0
  269. reachy_mini/descriptions/reachy_mini/urdf/assets/body_turning_3dprint.stl +0 -0
  270. reachy_mini/descriptions/reachy_mini/urdf/assets/bottom_body.part +13 -0
  271. reachy_mini/descriptions/reachy_mini/urdf/assets/bottom_body.stl +0 -0
  272. reachy_mini/descriptions/reachy_mini/urdf/assets/bts2_m2_6x8.part +13 -0
  273. reachy_mini/descriptions/reachy_mini/urdf/assets/bts2_m2_6x8.stl +0 -0
  274. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/README.m +1 -0
  275. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_back_0.stl +0 -0
  276. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_back_1.stl +0 -0
  277. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_back_2.stl +0 -0
  278. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_back_3.stl +0 -0
  279. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_front_0.stl +0 -0
  280. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_front_1.stl +0 -0
  281. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/body_top_3dprint_collider_front_2.stl +0 -0
  282. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/coarse/head_one_3dprint_collider_0.stl +0 -0
  283. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_back_0.stl +0 -0
  284. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_back_1.stl +0 -0
  285. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_back_2.stl +0 -0
  286. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_back_3.stl +0 -0
  287. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_front_0.stl +0 -0
  288. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_front_1.stl +0 -0
  289. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/body_top_3dprint_collider_front_2.stl +0 -0
  290. reachy_mini/descriptions/reachy_mini/urdf/assets/collision/fine/head_one_3dprint_collider_0.stl +0 -0
  291. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_case_b_dummy.part +13 -0
  292. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_case_b_dummy.stl +0 -0
  293. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_case_f_dummy.part +13 -0
  294. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_case_f_dummy.stl +0 -0
  295. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_case_m_dummy.part +13 -0
  296. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_case_m_dummy.stl +0 -0
  297. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_horn_dummy.part +13 -0
  298. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_horn_dummy.stl +0 -0
  299. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_led_cap2_dummy.part +13 -0
  300. reachy_mini/descriptions/reachy_mini/urdf/assets/dc15_a01_led_cap2_dummy.stl +0 -0
  301. reachy_mini/descriptions/reachy_mini/urdf/assets/drive_palonier__configuration_default.part +14 -0
  302. reachy_mini/descriptions/reachy_mini/urdf/assets/drive_palonier__configuration_default.stl +0 -0
  303. reachy_mini/descriptions/reachy_mini/urdf/assets/drive_palonier__configuration_simple_axe.part +14 -0
  304. reachy_mini/descriptions/reachy_mini/urdf/assets/drive_palonier__configuration_simple_axe.stl +0 -0
  305. reachy_mini/descriptions/reachy_mini/urdf/assets/eye_support.part +13 -0
  306. reachy_mini/descriptions/reachy_mini/urdf/assets/eye_support.stl +0 -0
  307. reachy_mini/descriptions/reachy_mini/urdf/assets/foot.part +13 -0
  308. reachy_mini/descriptions/reachy_mini/urdf/assets/foot.stl +0 -0
  309. reachy_mini/descriptions/reachy_mini/urdf/assets/glasses_dolder_3dprint.part +13 -0
  310. reachy_mini/descriptions/reachy_mini/urdf/assets/glasses_dolder_3dprint.stl +0 -0
  311. reachy_mini/descriptions/reachy_mini/urdf/assets/head_back_3dprint.part +13 -0
  312. reachy_mini/descriptions/reachy_mini/urdf/assets/head_back_3dprint.stl +0 -0
  313. reachy_mini/descriptions/reachy_mini/urdf/assets/head_front_3dprint.part +13 -0
  314. reachy_mini/descriptions/reachy_mini/urdf/assets/head_front_3dprint.stl +0 -0
  315. reachy_mini/descriptions/reachy_mini/urdf/assets/head_head_back.part +13 -0
  316. reachy_mini/descriptions/reachy_mini/urdf/assets/head_head_back.stl +0 -0
  317. reachy_mini/descriptions/reachy_mini/urdf/assets/head_interface.part +13 -0
  318. reachy_mini/descriptions/reachy_mini/urdf/assets/head_interface.stl +0 -0
  319. reachy_mini/descriptions/reachy_mini/urdf/assets/head_mic_3dprint.part +13 -0
  320. reachy_mini/descriptions/reachy_mini/urdf/assets/head_mic_3dprint.stl +0 -0
  321. reachy_mini/descriptions/reachy_mini/urdf/assets/head_shell_front.part +13 -0
  322. reachy_mini/descriptions/reachy_mini/urdf/assets/head_shell_front.stl +0 -0
  323. reachy_mini/descriptions/reachy_mini/urdf/assets/lens_cap_d30_3dprint.part +13 -0
  324. reachy_mini/descriptions/reachy_mini/urdf/assets/lens_cap_d30_3dprint.stl +0 -0
  325. reachy_mini/descriptions/reachy_mini/urdf/assets/lens_cap_d40_3dprint.part +13 -0
  326. reachy_mini/descriptions/reachy_mini/urdf/assets/lens_cap_d40_3dprint.stl +0 -0
  327. reachy_mini/descriptions/reachy_mini/urdf/assets/m12_fisheye_lens_1_8mm.part +13 -0
  328. reachy_mini/descriptions/reachy_mini/urdf/assets/m12_fisheye_lens_1_8mm.stl +0 -0
  329. reachy_mini/descriptions/reachy_mini/urdf/assets/m12_lens.part +13 -0
  330. reachy_mini/descriptions/reachy_mini/urdf/assets/m12_lens.stl +0 -0
  331. reachy_mini/descriptions/reachy_mini/urdf/assets/main_plate.part +13 -0
  332. reachy_mini/descriptions/reachy_mini/urdf/assets/main_plate.stl +0 -0
  333. reachy_mini/descriptions/reachy_mini/urdf/assets/mid_plate.part +13 -0
  334. reachy_mini/descriptions/reachy_mini/urdf/assets/mid_plate.stl +0 -0
  335. reachy_mini/descriptions/reachy_mini/urdf/assets/mp01062_stewart_arm_3.part +13 -0
  336. reachy_mini/descriptions/reachy_mini/urdf/assets/mp01062_stewart_arm_3.stl +0 -0
  337. reachy_mini/descriptions/reachy_mini/urdf/assets/neck_reference_3dprint.part +13 -0
  338. reachy_mini/descriptions/reachy_mini/urdf/assets/neck_reference_3dprint.stl +0 -0
  339. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10.part +13 -0
  340. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10.stl +0 -0
  341. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10_1.part +13 -0
  342. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10_1.stl +0 -0
  343. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10_2.part +13 -0
  344. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10_2.stl +0 -0
  345. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10_3.part +13 -0
  346. reachy_mini/descriptions/reachy_mini/urdf/assets/phs_1_7x20_5_dc10_3.stl +0 -0
  347. reachy_mini/descriptions/reachy_mini/urdf/assets/plateform.part +13 -0
  348. reachy_mini/descriptions/reachy_mini/urdf/assets/plateform.stl +0 -0
  349. reachy_mini/descriptions/reachy_mini/urdf/assets/pp00xxx_stewart_rod.part +13 -0
  350. reachy_mini/descriptions/reachy_mini/urdf/assets/pp00xxx_stewart_rod.stl +0 -0
  351. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01062_stewart_arm.part +13 -0
  352. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01062_stewart_arm.stl +0 -0
  353. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01063_stewart_plateform.part +13 -0
  354. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01063_stewart_plateform.stl +0 -0
  355. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01064_stewart_main_plate.part +13 -0
  356. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01064_stewart_main_plate.stl +0 -0
  357. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01065_stewart_side_plate.part +13 -0
  358. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01065_stewart_side_plate.stl +0 -0
  359. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01066_stewart_mid_plate.part +13 -0
  360. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01066_stewart_mid_plate.stl +0 -0
  361. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01067_bottom_body.part +13 -0
  362. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01067_bottom_body.stl +0 -0
  363. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01068_top_body.part +13 -0
  364. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01068_top_body.stl +0 -0
  365. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01069_head_shell_front.part +13 -0
  366. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01069_head_shell_front.stl +0 -0
  367. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01070_head_head_back.part +13 -0
  368. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01070_head_head_back.stl +0 -0
  369. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01071_turning_bowl.part +13 -0
  370. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01071_turning_bowl.stl +0 -0
  371. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01072_turning_end.part +13 -0
  372. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01072_turning_end.stl +0 -0
  373. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01078_glasses.part +13 -0
  374. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01078_glasses.stl +0 -0
  375. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01079_back_big_eye.part +13 -0
  376. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01079_back_big_eye.stl +0 -0
  377. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01080_back_small_eye.part +13 -0
  378. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01080_back_small_eye.stl +0 -0
  379. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01102_arducam_carter.part +13 -0
  380. reachy_mini/descriptions/reachy_mini/urdf/assets/pp01102_arducam_carter.stl +0 -0
  381. reachy_mini/descriptions/reachy_mini/urdf/assets/rod.part +13 -0
  382. reachy_mini/descriptions/reachy_mini/urdf/assets/rod.stl +0 -0
  383. reachy_mini/descriptions/reachy_mini/urdf/assets/shape.part +13 -0
  384. reachy_mini/descriptions/reachy_mini/urdf/assets/shape.stl +0 -0
  385. reachy_mini/descriptions/reachy_mini/urdf/assets/side_plate.part +13 -0
  386. reachy_mini/descriptions/reachy_mini/urdf/assets/side_plate.stl +0 -0
  387. reachy_mini/descriptions/reachy_mini/urdf/assets/small_lens.part +13 -0
  388. reachy_mini/descriptions/reachy_mini/urdf/assets/small_lens.stl +0 -0
  389. reachy_mini/descriptions/reachy_mini/urdf/assets/small_lens_d30.part +13 -0
  390. reachy_mini/descriptions/reachy_mini/urdf/assets/small_lens_d30.stl +0 -0
  391. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_link_ball.part +13 -0
  392. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_link_ball.stl +0 -0
  393. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_link_ball__2.part +13 -0
  394. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_link_ball__2.stl +0 -0
  395. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_link_rod.part +13 -0
  396. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_link_rod.stl +0 -0
  397. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_main_plate_3dprint.part +13 -0
  398. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_main_plate_3dprint.stl +0 -0
  399. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_tricap_3dprint.part +13 -0
  400. reachy_mini/descriptions/reachy_mini/urdf/assets/stewart_tricap_3dprint.stl +0 -0
  401. reachy_mini/descriptions/reachy_mini/urdf/assets/test_antenna.part +13 -0
  402. reachy_mini/descriptions/reachy_mini/urdf/assets/test_antenna.stl +0 -0
  403. reachy_mini/descriptions/reachy_mini/urdf/assets/test_antenna_body.part +13 -0
  404. reachy_mini/descriptions/reachy_mini/urdf/assets/test_antenna_body.stl +0 -0
  405. reachy_mini/descriptions/reachy_mini/urdf/assets/top_body.part +13 -0
  406. reachy_mini/descriptions/reachy_mini/urdf/assets/top_body.stl +0 -0
  407. reachy_mini/descriptions/reachy_mini/urdf/assets/turning_bowl.part +13 -0
  408. reachy_mini/descriptions/reachy_mini/urdf/assets/turning_bowl.stl +0 -0
  409. reachy_mini/descriptions/reachy_mini/urdf/assets/uc_a37_rev_a_step.part +13 -0
  410. reachy_mini/descriptions/reachy_mini/urdf/assets/uc_a37_rev_a_step.stl +0 -0
  411. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0122topcabinetcase_95__configuration_default.part +14 -0
  412. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0122topcabinetcase_95__configuration_default.stl +0 -0
  413. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0122topcabinetcase_95__configuration_simple_axe.part +14 -0
  414. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0122topcabinetcase_95__configuration_simple_axe.stl +0 -0
  415. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0123middlecase_56__configuration_default.part +14 -0
  416. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0123middlecase_56__configuration_default.stl +0 -0
  417. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0123middlecase_56__configuration_simple_axe.part +14 -0
  418. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0123middlecase_56__configuration_simple_axe.stl +0 -0
  419. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0124bottomcase_45__configuration_default.part +14 -0
  420. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0124bottomcase_45__configuration_default.stl +0 -0
  421. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0124bottomcase_45__configuration_simple_axe.part +14 -0
  422. reachy_mini/descriptions/reachy_mini/urdf/assets/wj_wk00_0124bottomcase_45__configuration_simple_axe.stl +0 -0
  423. reachy_mini/descriptions/reachy_mini/urdf/config.json +18 -0
  424. reachy_mini/descriptions/reachy_mini/urdf/robot.urdf +3281 -0
  425. reachy_mini/descriptions/reachy_mini/urdf/robot.urdf.bak +3282 -0
  426. reachy_mini/descriptions/reachy_mini/urdf/robot_no_collision.urdf +2316 -0
  427. reachy_mini/descriptions/reachy_mini/urdf/robot_simple_collision.urdf +2399 -0
  428. reachy_mini/io/__init__.py +15 -0
  429. reachy_mini/io/abstract.py +70 -0
  430. reachy_mini/io/audio_ws.py +242 -0
  431. reachy_mini/io/protocol.py +44 -0
  432. reachy_mini/io/video_ws.py +135 -0
  433. reachy_mini/io/ws_controller.py +120 -0
  434. reachy_mini/io/zenoh_client.py +273 -0
  435. reachy_mini/io/zenoh_server.py +230 -0
  436. reachy_mini/kinematics/__init__.py +68 -0
  437. reachy_mini/kinematics/analytical_kinematics.py +151 -0
  438. reachy_mini/kinematics/nn_kinematics.py +109 -0
  439. reachy_mini/kinematics/placo_kinematics.py +656 -0
  440. reachy_mini/media/__init__.py +1 -0
  441. reachy_mini/media/audio_base.py +111 -0
  442. reachy_mini/media/audio_control_utils.py +455 -0
  443. reachy_mini/media/audio_gstreamer.py +272 -0
  444. reachy_mini/media/audio_sounddevice.py +321 -0
  445. reachy_mini/media/audio_utils.py +114 -0
  446. reachy_mini/media/camera_base.py +100 -0
  447. reachy_mini/media/camera_constants.py +152 -0
  448. reachy_mini/media/camera_gstreamer.py +231 -0
  449. reachy_mini/media/camera_opencv.py +89 -0
  450. reachy_mini/media/camera_utils.py +111 -0
  451. reachy_mini/media/media_manager.py +281 -0
  452. reachy_mini/media/webrtc_client_gstreamer.py +288 -0
  453. reachy_mini/media/webrtc_daemon.py +334 -0
  454. reachy_mini/motion/__init__.py +4 -0
  455. reachy_mini/motion/goto.py +71 -0
  456. reachy_mini/motion/move.py +43 -0
  457. reachy_mini/motion/recorded_move.py +146 -0
  458. reachy_mini/reachy_mini.py +753 -0
  459. reachy_mini/tools/reflash_motors.py +116 -0
  460. reachy_mini/tools/setup_motor.py +422 -0
  461. reachy_mini/tools/setup_motor_rpi.py +108 -0
  462. reachy_mini/utils/__init__.py +46 -0
  463. reachy_mini/utils/constants.py +9 -0
  464. reachy_mini/utils/hardware_config/__init__.py +1 -0
  465. reachy_mini/utils/hardware_config/parser.py +65 -0
  466. reachy_mini/utils/interpolation.py +227 -0
  467. reachy_mini/utils/parse_urdf_for_kinematics.py +110 -0
  468. reachy_mini/utils/rerun.py +320 -0
  469. reachy_mini/utils/wireless_version/__init__.py +1 -0
  470. reachy_mini/utils/wireless_version/startup_check.py +144 -0
  471. reachy_mini/utils/wireless_version/update.py +20 -0
  472. reachy_mini/utils/wireless_version/update_available.py +61 -0
  473. reachy_mini/utils/wireless_version/utils.py +39 -0
  474. reachy_mini-1.2.5rc1.dist-info/METADATA +161 -0
  475. reachy_mini-1.2.5rc1.dist-info/RECORD +479 -0
  476. reachy_mini-1.2.5rc1.dist-info/WHEEL +5 -0
  477. reachy_mini-1.2.5rc1.dist-info/entry_points.txt +4 -0
  478. reachy_mini-1.2.5rc1.dist-info/licenses/LICENSE +201 -0
  479. reachy_mini-1.2.5rc1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,3282 @@
1
+ <?xml version="1.0" ?>
2
+ <!-- Generated using onshape-to-robot -->
3
+ <!-- Onshape https://cad.onshape.com/documents/7836ed39be931c6ece17e007/w/39d557f31a0ba179c9e7bd5b/e/c82436d68c7d00e142abc581 -->
4
+ <robot name="robot">
5
+ <!-- Link body_foot_3dprint -->
6
+ <link name="body_foot_3dprint">
7
+ <inertial>
8
+ <origin xyz="0.00290221 0.000112574 0.0132607" rpy="0 0 0"/>
9
+ <mass value="0.0617881"/>
10
+ <inertia ixx="6.91521e-05" ixy="-1.98794e-07" ixz="-4.91678e-08" iyy="6.07324e-05" iyz="-3.02441e-08" izz="0.000110345"/>
11
+ </inertial>
12
+ <!-- Part body_foot_3dprint -->
13
+ <visual>
14
+ <origin xyz="-2.45997e-07 6.93889e-18 0.2298" rpy="6.12323e-17 -2.07076e-30 1.5708"/>
15
+ <geometry>
16
+ <mesh filename="package://assets/body_foot_3dprint.stl"/>
17
+ </geometry>
18
+ <material name="body_foot_3dprint_material">
19
+ <color rgba="0.301961 0.301961 0.301961 1"/>
20
+ </material>
21
+ </visual>
22
+ <collision>
23
+ <origin xyz="-2.45997e-07 6.93889e-18 0.2298" rpy="6.12323e-17 -2.07076e-30 1.5708"/>
24
+ <geometry>
25
+ <mesh filename="package://assets/body_foot_3dprint.stl"/>
26
+ </geometry>
27
+ </collision>
28
+ <!-- Part dc15_a01_horn_dummy -->
29
+ <visual>
30
+ <origin xyz="-2.45997e-07 0 0.0413" rpy="-1.5708 6.01506e-30 -1.5708"/>
31
+ <geometry>
32
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
33
+ </geometry>
34
+ <material name="dc15_a01_horn_dummy_material">
35
+ <color rgba="0.262745 0.282353 0.301961 1"/>
36
+ </material>
37
+ </visual>
38
+ <collision>
39
+ <origin xyz="-2.45997e-07 0 0.0413" rpy="-1.5708 6.01506e-30 -1.5708"/>
40
+ <geometry>
41
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
42
+ </geometry>
43
+ </collision>
44
+ <!-- Part body_turning_3dprint -->
45
+ <visual>
46
+ <origin xyz="-2.45997e-07 6.93889e-18 0.2298" rpy="6.12323e-17 -2.91879e-28 1.5708"/>
47
+ <geometry>
48
+ <mesh filename="package://assets/body_turning_3dprint.stl"/>
49
+ </geometry>
50
+ <material name="body_turning_3dprint_material">
51
+ <color rgba="0.301961 0.301961 0.301961 1"/>
52
+ </material>
53
+ </visual>
54
+ <collision>
55
+ <origin xyz="-2.45997e-07 6.93889e-18 0.2298" rpy="6.12323e-17 -2.91879e-28 1.5708"/>
56
+ <geometry>
57
+ <mesh filename="package://assets/body_turning_3dprint.stl"/>
58
+ </geometry>
59
+ </collision>
60
+ </link>
61
+ <!-- Link body_down_3dprint -->
62
+ <link name="body_down_3dprint">
63
+ <inertial>
64
+ <origin xyz="2.19196e-06 -0.000620543 -0.0201687" rpy="0 0 0"/>
65
+ <mass value="0.78209"/>
66
+ <inertia ixx="0.00233791" ixy="-1.10376e-07" ixz="1.41892e-07" iyy="0.00224458" iyz="-4.46122e-05" izz="0.00254424"/>
67
+ </inertial>
68
+ <!-- Part body_down_3dprint -->
69
+ <visual>
70
+ <origin xyz="2.66839e-15 1.02459e-18 -0.195" rpy="3.14159 8.38165e-31 3.14159"/>
71
+ <geometry>
72
+ <mesh filename="package://assets/body_down_3dprint.stl"/>
73
+ </geometry>
74
+ <material name="body_down_3dprint_material">
75
+ <color rgba="1 1 1 1"/>
76
+ </material>
77
+ </visual>
78
+ <collision>
79
+ <origin xyz="2.66839e-15 1.02459e-18 -0.195" rpy="3.14159 8.38165e-31 3.14159"/>
80
+ <geometry>
81
+ <mesh filename="package://assets/body_down_3dprint.stl"/>
82
+ </geometry>
83
+ </collision>
84
+ <!-- Part stewart_tricap_3dprint -->
85
+ <visual>
86
+ <origin xyz="2.33359e-15 -6.99337e-16 -0.195" rpy="3.14159 2.41589e-30 3.14159"/>
87
+ <geometry>
88
+ <mesh filename="package://assets/stewart_tricap_3dprint.stl"/>
89
+ </geometry>
90
+ <material name="stewart_tricap_3dprint_material">
91
+ <color rgba="0.301961 0.301961 0.301961 1"/>
92
+ </material>
93
+ </visual>
94
+ <collision>
95
+ <origin xyz="2.33359e-15 -6.99337e-16 -0.195" rpy="3.14159 2.41589e-30 3.14159"/>
96
+ <geometry>
97
+ <mesh filename="package://assets/stewart_tricap_3dprint.stl"/>
98
+ </geometry>
99
+ </collision>
100
+ <!-- Part 5w_speaker -->
101
+ <visual>
102
+ <origin xyz="4.70951e-16 0.005 -0.0535833" rpy="-1.5708 8.38165e-31 3.14159"/>
103
+ <geometry>
104
+ <mesh filename="package://assets/5w_speaker.stl"/>
105
+ </geometry>
106
+ <material name="5w_speaker_material">
107
+ <color rgba="0.196078 0.196078 0.196078 1"/>
108
+ </material>
109
+ </visual>
110
+ <collision>
111
+ <origin xyz="4.70951e-16 0.005 -0.0535833" rpy="-1.5708 8.38165e-31 3.14159"/>
112
+ <geometry>
113
+ <mesh filename="package://assets/5w_speaker.stl"/>
114
+ </geometry>
115
+ </collision>
116
+ <!-- Part bearing_85x110x13 -->
117
+ <visual>
118
+ <origin xyz="-1.17129e-16 1.02459e-18 0.0115" rpy="-1.5708 8.99281e-15 -1.5708"/>
119
+ <geometry>
120
+ <mesh filename="package://assets/bearing_85x110x13.stl"/>
121
+ </geometry>
122
+ <material name="bearing_85x110x13_material">
123
+ <color rgba="0.768627 0.886275 0.952941 1"/>
124
+ </material>
125
+ </visual>
126
+ <collision>
127
+ <origin xyz="-1.17129e-16 1.02459e-18 0.0115" rpy="-1.5708 8.99281e-15 -1.5708"/>
128
+ <geometry>
129
+ <mesh filename="package://assets/bearing_85x110x13.stl"/>
130
+ </geometry>
131
+ </collision>
132
+ <!-- Part body_top_3dprint -->
133
+ <visual>
134
+ <origin xyz="2.88162e-15 -3.35435e-16 -0.195" rpy="3.14159 -7.39557e-31 3.14159"/>
135
+ <geometry>
136
+ <mesh filename="package://assets/body_top_3dprint.stl"/>
137
+ </geometry>
138
+ <material name="body_top_3dprint_material">
139
+ <color rgba="1 1 1 1"/>
140
+ </material>
141
+ </visual>
142
+ <collision>
143
+ <origin xyz="2.88162e-15 -3.35435e-16 -0.195" rpy="3.14159 -7.39557e-31 3.14159"/>
144
+ <geometry>
145
+ <mesh filename="package://assets/body_top_3dprint.stl"/>
146
+ </geometry>
147
+ </collision>
148
+ <!-- Part stewart_main_plate_3dprint -->
149
+ <visual>
150
+ <origin xyz="2.6304e-15 0 -0.195" rpy="3.14159 8.38165e-31 3.14159"/>
151
+ <geometry>
152
+ <mesh filename="package://assets/stewart_main_plate_3dprint.stl"/>
153
+ </geometry>
154
+ <material name="stewart_main_plate_3dprint_material">
155
+ <color rgba="0.301961 0.301961 0.301961 1"/>
156
+ </material>
157
+ </visual>
158
+ <collision>
159
+ <origin xyz="2.6304e-15 0 -0.195" rpy="3.14159 8.38165e-31 3.14159"/>
160
+ <geometry>
161
+ <mesh filename="package://assets/stewart_main_plate_3dprint.stl"/>
162
+ </geometry>
163
+ </collision>
164
+ <!-- Part phs_1_7x20_5_dc10_2 -->
165
+ <visual>
166
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
167
+ <geometry>
168
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
169
+ </geometry>
170
+ <material name="phs_1_7x20_5_dc10_2_material">
171
+ <color rgba="0.262745 0.282353 0.301961 1"/>
172
+ </material>
173
+ </visual>
174
+ <collision>
175
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
176
+ <geometry>
177
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
178
+ </geometry>
179
+ </collision>
180
+ <!-- Part dc15_a01_case_b_dummy -->
181
+ <visual>
182
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
183
+ <geometry>
184
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
185
+ </geometry>
186
+ <material name="dc15_a01_case_b_dummy_material">
187
+ <color rgba="0.262745 0.282353 0.301961 1"/>
188
+ </material>
189
+ </visual>
190
+ <collision>
191
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
192
+ <geometry>
193
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
194
+ </geometry>
195
+ </collision>
196
+ <!-- Part dc15_a01_case_m_dummy -->
197
+ <visual>
198
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
199
+ <geometry>
200
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
201
+ </geometry>
202
+ <material name="dc15_a01_case_m_dummy_material">
203
+ <color rgba="0.262745 0.282353 0.301961 1"/>
204
+ </material>
205
+ </visual>
206
+ <collision>
207
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
208
+ <geometry>
209
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
210
+ </geometry>
211
+ </collision>
212
+ <!-- Part dc15_a01_led_cap2_dummy -->
213
+ <visual>
214
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
215
+ <geometry>
216
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
217
+ </geometry>
218
+ <material name="dc15_a01_led_cap2_dummy_material">
219
+ <color rgba="0.87451 0.447059 0.317647 1"/>
220
+ </material>
221
+ </visual>
222
+ <collision>
223
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
224
+ <geometry>
225
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
226
+ </geometry>
227
+ </collision>
228
+ <!-- Part bts2_m2_6x8 -->
229
+ <visual>
230
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
231
+ <geometry>
232
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
233
+ </geometry>
234
+ <material name="bts2_m2_6x8_material">
235
+ <color rgba="0.262745 0.282353 0.301961 1"/>
236
+ </material>
237
+ </visual>
238
+ <collision>
239
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
240
+ <geometry>
241
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
242
+ </geometry>
243
+ </collision>
244
+ <!-- Part dc15_a01_case_f_dummy -->
245
+ <visual>
246
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
247
+ <geometry>
248
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
249
+ </geometry>
250
+ <material name="dc15_a01_case_f_dummy_material">
251
+ <color rgba="0.262745 0.282353 0.301961 1"/>
252
+ </material>
253
+ </visual>
254
+ <collision>
255
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
256
+ <geometry>
257
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
258
+ </geometry>
259
+ </collision>
260
+ <!-- Part b3b_eh_1 -->
261
+ <visual>
262
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
263
+ <geometry>
264
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
265
+ </geometry>
266
+ <material name="b3b_eh_1_material">
267
+ <color rgba="0.262745 0.282353 0.301961 1"/>
268
+ </material>
269
+ </visual>
270
+ <collision>
271
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
272
+ <geometry>
273
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
274
+ </geometry>
275
+ </collision>
276
+ <!-- Part b3b_eh -->
277
+ <visual>
278
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
279
+ <geometry>
280
+ <mesh filename="package://assets/b3b_eh.stl"/>
281
+ </geometry>
282
+ <material name="b3b_eh_material">
283
+ <color rgba="0.262745 0.282353 0.301961 1"/>
284
+ </material>
285
+ </visual>
286
+ <collision>
287
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
288
+ <geometry>
289
+ <mesh filename="package://assets/b3b_eh.stl"/>
290
+ </geometry>
291
+ </collision>
292
+ <!-- Part phs_1_7x20_5_dc10_3 -->
293
+ <visual>
294
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
295
+ <geometry>
296
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
297
+ </geometry>
298
+ <material name="phs_1_7x20_5_dc10_3_material">
299
+ <color rgba="0.262745 0.282353 0.301961 1"/>
300
+ </material>
301
+ </visual>
302
+ <collision>
303
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
304
+ <geometry>
305
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
306
+ </geometry>
307
+ </collision>
308
+ <!-- Part phs_1_7x20_5_dc10_1 -->
309
+ <visual>
310
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
311
+ <geometry>
312
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
313
+ </geometry>
314
+ <material name="phs_1_7x20_5_dc10_1_material">
315
+ <color rgba="0.262745 0.282353 0.301961 1"/>
316
+ </material>
317
+ </visual>
318
+ <collision>
319
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
320
+ <geometry>
321
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
322
+ </geometry>
323
+ </collision>
324
+ <!-- Part phs_1_7x20_5_dc10 -->
325
+ <visual>
326
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
327
+ <geometry>
328
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
329
+ </geometry>
330
+ <material name="phs_1_7x20_5_dc10_material">
331
+ <color rgba="0.262745 0.282353 0.301961 1"/>
332
+ </material>
333
+ </visual>
334
+ <collision>
335
+ <origin xyz="-0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 1.63452e-15 -3.14159"/>
336
+ <geometry>
337
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
338
+ </geometry>
339
+ </collision>
340
+ <!-- Part phs_1_7x20_5_dc10_2_2 -->
341
+ <visual>
342
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
343
+ <geometry>
344
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
345
+ </geometry>
346
+ <material name="phs_1_7x20_5_dc10_2_2_material">
347
+ <color rgba="0.262745 0.282353 0.301961 1"/>
348
+ </material>
349
+ </visual>
350
+ <collision>
351
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
352
+ <geometry>
353
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
354
+ </geometry>
355
+ </collision>
356
+ <!-- Part dc15_a01_case_b_dummy_2 -->
357
+ <visual>
358
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
359
+ <geometry>
360
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
361
+ </geometry>
362
+ <material name="dc15_a01_case_b_dummy_2_material">
363
+ <color rgba="0.262745 0.282353 0.301961 1"/>
364
+ </material>
365
+ </visual>
366
+ <collision>
367
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
368
+ <geometry>
369
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
370
+ </geometry>
371
+ </collision>
372
+ <!-- Part dc15_a01_case_m_dummy_2 -->
373
+ <visual>
374
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
375
+ <geometry>
376
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
377
+ </geometry>
378
+ <material name="dc15_a01_case_m_dummy_2_material">
379
+ <color rgba="0.262745 0.282353 0.301961 1"/>
380
+ </material>
381
+ </visual>
382
+ <collision>
383
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
384
+ <geometry>
385
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
386
+ </geometry>
387
+ </collision>
388
+ <!-- Part dc15_a01_led_cap2_dummy_2 -->
389
+ <visual>
390
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
391
+ <geometry>
392
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
393
+ </geometry>
394
+ <material name="dc15_a01_led_cap2_dummy_2_material">
395
+ <color rgba="0.87451 0.447059 0.317647 1"/>
396
+ </material>
397
+ </visual>
398
+ <collision>
399
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
400
+ <geometry>
401
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
402
+ </geometry>
403
+ </collision>
404
+ <!-- Part bts2_m2_6x8_2 -->
405
+ <visual>
406
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
407
+ <geometry>
408
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
409
+ </geometry>
410
+ <material name="bts2_m2_6x8_2_material">
411
+ <color rgba="0.262745 0.282353 0.301961 1"/>
412
+ </material>
413
+ </visual>
414
+ <collision>
415
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
416
+ <geometry>
417
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
418
+ </geometry>
419
+ </collision>
420
+ <!-- Part dc15_a01_case_f_dummy_2 -->
421
+ <visual>
422
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
423
+ <geometry>
424
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
425
+ </geometry>
426
+ <material name="dc15_a01_case_f_dummy_2_material">
427
+ <color rgba="0.262745 0.282353 0.301961 1"/>
428
+ </material>
429
+ </visual>
430
+ <collision>
431
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
432
+ <geometry>
433
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
434
+ </geometry>
435
+ </collision>
436
+ <!-- Part b3b_eh_1_2 -->
437
+ <visual>
438
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
439
+ <geometry>
440
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
441
+ </geometry>
442
+ <material name="b3b_eh_1_2_material">
443
+ <color rgba="0.262745 0.282353 0.301961 1"/>
444
+ </material>
445
+ </visual>
446
+ <collision>
447
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
448
+ <geometry>
449
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
450
+ </geometry>
451
+ </collision>
452
+ <!-- Part b3b_eh_2 -->
453
+ <visual>
454
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
455
+ <geometry>
456
+ <mesh filename="package://assets/b3b_eh.stl"/>
457
+ </geometry>
458
+ <material name="b3b_eh_2_material">
459
+ <color rgba="0.262745 0.282353 0.301961 1"/>
460
+ </material>
461
+ </visual>
462
+ <collision>
463
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
464
+ <geometry>
465
+ <mesh filename="package://assets/b3b_eh.stl"/>
466
+ </geometry>
467
+ </collision>
468
+ <!-- Part phs_1_7x20_5_dc10_3_2 -->
469
+ <visual>
470
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
471
+ <geometry>
472
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
473
+ </geometry>
474
+ <material name="phs_1_7x20_5_dc10_3_2_material">
475
+ <color rgba="0.262745 0.282353 0.301961 1"/>
476
+ </material>
477
+ </visual>
478
+ <collision>
479
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
480
+ <geometry>
481
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
482
+ </geometry>
483
+ </collision>
484
+ <!-- Part phs_1_7x20_5_dc10_1_2 -->
485
+ <visual>
486
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
487
+ <geometry>
488
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
489
+ </geometry>
490
+ <material name="phs_1_7x20_5_dc10_1_2_material">
491
+ <color rgba="0.262745 0.282353 0.301961 1"/>
492
+ </material>
493
+ </visual>
494
+ <collision>
495
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
496
+ <geometry>
497
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
498
+ </geometry>
499
+ </collision>
500
+ <!-- Part phs_1_7x20_5_dc10_2 -->
501
+ <visual>
502
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
503
+ <geometry>
504
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
505
+ </geometry>
506
+ <material name="phs_1_7x20_5_dc10_2_material">
507
+ <color rgba="0.262745 0.282353 0.301961 1"/>
508
+ </material>
509
+ </visual>
510
+ <collision>
511
+ <origin xyz="-0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 9.42252e-15 -1.0472"/>
512
+ <geometry>
513
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
514
+ </geometry>
515
+ </collision>
516
+ <!-- Part phs_1_7x20_5_dc10_2_3 -->
517
+ <visual>
518
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
519
+ <geometry>
520
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
521
+ </geometry>
522
+ <material name="phs_1_7x20_5_dc10_2_3_material">
523
+ <color rgba="0.262745 0.282353 0.301961 1"/>
524
+ </material>
525
+ </visual>
526
+ <collision>
527
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
528
+ <geometry>
529
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
530
+ </geometry>
531
+ </collision>
532
+ <!-- Part dc15_a01_case_b_dummy_3 -->
533
+ <visual>
534
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
535
+ <geometry>
536
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
537
+ </geometry>
538
+ <material name="dc15_a01_case_b_dummy_3_material">
539
+ <color rgba="0.262745 0.282353 0.301961 1"/>
540
+ </material>
541
+ </visual>
542
+ <collision>
543
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
544
+ <geometry>
545
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
546
+ </geometry>
547
+ </collision>
548
+ <!-- Part dc15_a01_case_m_dummy_3 -->
549
+ <visual>
550
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
551
+ <geometry>
552
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
553
+ </geometry>
554
+ <material name="dc15_a01_case_m_dummy_3_material">
555
+ <color rgba="0.262745 0.282353 0.301961 1"/>
556
+ </material>
557
+ </visual>
558
+ <collision>
559
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
560
+ <geometry>
561
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
562
+ </geometry>
563
+ </collision>
564
+ <!-- Part dc15_a01_led_cap2_dummy_3 -->
565
+ <visual>
566
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
567
+ <geometry>
568
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
569
+ </geometry>
570
+ <material name="dc15_a01_led_cap2_dummy_3_material">
571
+ <color rgba="0.87451 0.447059 0.317647 1"/>
572
+ </material>
573
+ </visual>
574
+ <collision>
575
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
576
+ <geometry>
577
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
578
+ </geometry>
579
+ </collision>
580
+ <!-- Part bts2_m2_6x8_3 -->
581
+ <visual>
582
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
583
+ <geometry>
584
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
585
+ </geometry>
586
+ <material name="bts2_m2_6x8_3_material">
587
+ <color rgba="0.262745 0.282353 0.301961 1"/>
588
+ </material>
589
+ </visual>
590
+ <collision>
591
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
592
+ <geometry>
593
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
594
+ </geometry>
595
+ </collision>
596
+ <!-- Part dc15_a01_case_f_dummy_3 -->
597
+ <visual>
598
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
599
+ <geometry>
600
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
601
+ </geometry>
602
+ <material name="dc15_a01_case_f_dummy_3_material">
603
+ <color rgba="0.262745 0.282353 0.301961 1"/>
604
+ </material>
605
+ </visual>
606
+ <collision>
607
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
608
+ <geometry>
609
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
610
+ </geometry>
611
+ </collision>
612
+ <!-- Part b3b_eh_1_3 -->
613
+ <visual>
614
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
615
+ <geometry>
616
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
617
+ </geometry>
618
+ <material name="b3b_eh_1_3_material">
619
+ <color rgba="0.262745 0.282353 0.301961 1"/>
620
+ </material>
621
+ </visual>
622
+ <collision>
623
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
624
+ <geometry>
625
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
626
+ </geometry>
627
+ </collision>
628
+ <!-- Part b3b_eh_3 -->
629
+ <visual>
630
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
631
+ <geometry>
632
+ <mesh filename="package://assets/b3b_eh.stl"/>
633
+ </geometry>
634
+ <material name="b3b_eh_3_material">
635
+ <color rgba="0.262745 0.282353 0.301961 1"/>
636
+ </material>
637
+ </visual>
638
+ <collision>
639
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
640
+ <geometry>
641
+ <mesh filename="package://assets/b3b_eh.stl"/>
642
+ </geometry>
643
+ </collision>
644
+ <!-- Part phs_1_7x20_5_dc10_3_3 -->
645
+ <visual>
646
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
647
+ <geometry>
648
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
649
+ </geometry>
650
+ <material name="phs_1_7x20_5_dc10_3_3_material">
651
+ <color rgba="0.262745 0.282353 0.301961 1"/>
652
+ </material>
653
+ </visual>
654
+ <collision>
655
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
656
+ <geometry>
657
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
658
+ </geometry>
659
+ </collision>
660
+ <!-- Part phs_1_7x20_5_dc10_1_3 -->
661
+ <visual>
662
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
663
+ <geometry>
664
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
665
+ </geometry>
666
+ <material name="phs_1_7x20_5_dc10_1_3_material">
667
+ <color rgba="0.262745 0.282353 0.301961 1"/>
668
+ </material>
669
+ </visual>
670
+ <collision>
671
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
672
+ <geometry>
673
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
674
+ </geometry>
675
+ </collision>
676
+ <!-- Part phs_1_7x20_5_dc10_3 -->
677
+ <visual>
678
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
679
+ <geometry>
680
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
681
+ </geometry>
682
+ <material name="phs_1_7x20_5_dc10_3_material">
683
+ <color rgba="0.262745 0.282353 0.301961 1"/>
684
+ </material>
685
+ </visual>
686
+ <collision>
687
+ <origin xyz="1.54074e-33 0 -0.0065" rpy="1.5708 7.39557e-31 -1.41748e-30"/>
688
+ <geometry>
689
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
690
+ </geometry>
691
+ </collision>
692
+ <!-- Part phs_1_7x20_5_dc10_2_4 -->
693
+ <visual>
694
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
695
+ <geometry>
696
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
697
+ </geometry>
698
+ <material name="phs_1_7x20_5_dc10_2_4_material">
699
+ <color rgba="0.262745 0.282353 0.301961 1"/>
700
+ </material>
701
+ </visual>
702
+ <collision>
703
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
704
+ <geometry>
705
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
706
+ </geometry>
707
+ </collision>
708
+ <!-- Part dc15_a01_case_b_dummy_4 -->
709
+ <visual>
710
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
711
+ <geometry>
712
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
713
+ </geometry>
714
+ <material name="dc15_a01_case_b_dummy_4_material">
715
+ <color rgba="0.262745 0.282353 0.301961 1"/>
716
+ </material>
717
+ </visual>
718
+ <collision>
719
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
720
+ <geometry>
721
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
722
+ </geometry>
723
+ </collision>
724
+ <!-- Part dc15_a01_case_m_dummy_4 -->
725
+ <visual>
726
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
727
+ <geometry>
728
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
729
+ </geometry>
730
+ <material name="dc15_a01_case_m_dummy_4_material">
731
+ <color rgba="0.262745 0.282353 0.301961 1"/>
732
+ </material>
733
+ </visual>
734
+ <collision>
735
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
736
+ <geometry>
737
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
738
+ </geometry>
739
+ </collision>
740
+ <!-- Part dc15_a01_led_cap2_dummy_4 -->
741
+ <visual>
742
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
743
+ <geometry>
744
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
745
+ </geometry>
746
+ <material name="dc15_a01_led_cap2_dummy_4_material">
747
+ <color rgba="0.87451 0.447059 0.317647 1"/>
748
+ </material>
749
+ </visual>
750
+ <collision>
751
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
752
+ <geometry>
753
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
754
+ </geometry>
755
+ </collision>
756
+ <!-- Part bts2_m2_6x8_4 -->
757
+ <visual>
758
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
759
+ <geometry>
760
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
761
+ </geometry>
762
+ <material name="bts2_m2_6x8_4_material">
763
+ <color rgba="0.262745 0.282353 0.301961 1"/>
764
+ </material>
765
+ </visual>
766
+ <collision>
767
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
768
+ <geometry>
769
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
770
+ </geometry>
771
+ </collision>
772
+ <!-- Part dc15_a01_case_f_dummy_4 -->
773
+ <visual>
774
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
775
+ <geometry>
776
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
777
+ </geometry>
778
+ <material name="dc15_a01_case_f_dummy_4_material">
779
+ <color rgba="0.262745 0.282353 0.301961 1"/>
780
+ </material>
781
+ </visual>
782
+ <collision>
783
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
784
+ <geometry>
785
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
786
+ </geometry>
787
+ </collision>
788
+ <!-- Part b3b_eh_1_4 -->
789
+ <visual>
790
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
791
+ <geometry>
792
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
793
+ </geometry>
794
+ <material name="b3b_eh_1_4_material">
795
+ <color rgba="0.262745 0.282353 0.301961 1"/>
796
+ </material>
797
+ </visual>
798
+ <collision>
799
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
800
+ <geometry>
801
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
802
+ </geometry>
803
+ </collision>
804
+ <!-- Part b3b_eh_4 -->
805
+ <visual>
806
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
807
+ <geometry>
808
+ <mesh filename="package://assets/b3b_eh.stl"/>
809
+ </geometry>
810
+ <material name="b3b_eh_4_material">
811
+ <color rgba="0.262745 0.282353 0.301961 1"/>
812
+ </material>
813
+ </visual>
814
+ <collision>
815
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
816
+ <geometry>
817
+ <mesh filename="package://assets/b3b_eh.stl"/>
818
+ </geometry>
819
+ </collision>
820
+ <!-- Part phs_1_7x20_5_dc10_3_4 -->
821
+ <visual>
822
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
823
+ <geometry>
824
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
825
+ </geometry>
826
+ <material name="phs_1_7x20_5_dc10_3_4_material">
827
+ <color rgba="0.262745 0.282353 0.301961 1"/>
828
+ </material>
829
+ </visual>
830
+ <collision>
831
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
832
+ <geometry>
833
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
834
+ </geometry>
835
+ </collision>
836
+ <!-- Part phs_1_7x20_5_dc10_1_4 -->
837
+ <visual>
838
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
839
+ <geometry>
840
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
841
+ </geometry>
842
+ <material name="phs_1_7x20_5_dc10_1_4_material">
843
+ <color rgba="0.262745 0.282353 0.301961 1"/>
844
+ </material>
845
+ </visual>
846
+ <collision>
847
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
848
+ <geometry>
849
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
850
+ </geometry>
851
+ </collision>
852
+ <!-- Part phs_1_7x20_5_dc10_4 -->
853
+ <visual>
854
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
855
+ <geometry>
856
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
857
+ </geometry>
858
+ <material name="phs_1_7x20_5_dc10_4_material">
859
+ <color rgba="0.262745 0.282353 0.301961 1"/>
860
+ </material>
861
+ </visual>
862
+ <collision>
863
+ <origin xyz="0.0384404 -0.0337406 -0.0418333" rpy="5.44009e-15 -9.42252e-15 1.0472"/>
864
+ <geometry>
865
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
866
+ </geometry>
867
+ </collision>
868
+ <!-- Part phs_1_7x20_5_dc10_2_5 -->
869
+ <visual>
870
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
871
+ <geometry>
872
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
873
+ </geometry>
874
+ <material name="phs_1_7x20_5_dc10_2_5_material">
875
+ <color rgba="0.262745 0.282353 0.301961 1"/>
876
+ </material>
877
+ </visual>
878
+ <collision>
879
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
880
+ <geometry>
881
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
882
+ </geometry>
883
+ </collision>
884
+ <!-- Part dc15_a01_case_b_dummy_5 -->
885
+ <visual>
886
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
887
+ <geometry>
888
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
889
+ </geometry>
890
+ <material name="dc15_a01_case_b_dummy_5_material">
891
+ <color rgba="0.262745 0.282353 0.301961 1"/>
892
+ </material>
893
+ </visual>
894
+ <collision>
895
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
896
+ <geometry>
897
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
898
+ </geometry>
899
+ </collision>
900
+ <!-- Part dc15_a01_case_m_dummy_5 -->
901
+ <visual>
902
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
903
+ <geometry>
904
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
905
+ </geometry>
906
+ <material name="dc15_a01_case_m_dummy_5_material">
907
+ <color rgba="0.262745 0.282353 0.301961 1"/>
908
+ </material>
909
+ </visual>
910
+ <collision>
911
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
912
+ <geometry>
913
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
914
+ </geometry>
915
+ </collision>
916
+ <!-- Part dc15_a01_led_cap2_dummy_5 -->
917
+ <visual>
918
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
919
+ <geometry>
920
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
921
+ </geometry>
922
+ <material name="dc15_a01_led_cap2_dummy_5_material">
923
+ <color rgba="0.87451 0.447059 0.317647 1"/>
924
+ </material>
925
+ </visual>
926
+ <collision>
927
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
928
+ <geometry>
929
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
930
+ </geometry>
931
+ </collision>
932
+ <!-- Part bts2_m2_6x8_5 -->
933
+ <visual>
934
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
935
+ <geometry>
936
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
937
+ </geometry>
938
+ <material name="bts2_m2_6x8_5_material">
939
+ <color rgba="0.262745 0.282353 0.301961 1"/>
940
+ </material>
941
+ </visual>
942
+ <collision>
943
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
944
+ <geometry>
945
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
946
+ </geometry>
947
+ </collision>
948
+ <!-- Part dc15_a01_case_f_dummy_5 -->
949
+ <visual>
950
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
951
+ <geometry>
952
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
953
+ </geometry>
954
+ <material name="dc15_a01_case_f_dummy_5_material">
955
+ <color rgba="0.262745 0.282353 0.301961 1"/>
956
+ </material>
957
+ </visual>
958
+ <collision>
959
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
960
+ <geometry>
961
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
962
+ </geometry>
963
+ </collision>
964
+ <!-- Part b3b_eh_1_5 -->
965
+ <visual>
966
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
967
+ <geometry>
968
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
969
+ </geometry>
970
+ <material name="b3b_eh_1_5_material">
971
+ <color rgba="0.262745 0.282353 0.301961 1"/>
972
+ </material>
973
+ </visual>
974
+ <collision>
975
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
976
+ <geometry>
977
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
978
+ </geometry>
979
+ </collision>
980
+ <!-- Part b3b_eh_5 -->
981
+ <visual>
982
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
983
+ <geometry>
984
+ <mesh filename="package://assets/b3b_eh.stl"/>
985
+ </geometry>
986
+ <material name="b3b_eh_5_material">
987
+ <color rgba="0.262745 0.282353 0.301961 1"/>
988
+ </material>
989
+ </visual>
990
+ <collision>
991
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
992
+ <geometry>
993
+ <mesh filename="package://assets/b3b_eh.stl"/>
994
+ </geometry>
995
+ </collision>
996
+ <!-- Part phs_1_7x20_5_dc10_3_5 -->
997
+ <visual>
998
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
999
+ <geometry>
1000
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
1001
+ </geometry>
1002
+ <material name="phs_1_7x20_5_dc10_3_5_material">
1003
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1004
+ </material>
1005
+ </visual>
1006
+ <collision>
1007
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
1008
+ <geometry>
1009
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
1010
+ </geometry>
1011
+ </collision>
1012
+ <!-- Part phs_1_7x20_5_dc10_1_5 -->
1013
+ <visual>
1014
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
1015
+ <geometry>
1016
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
1017
+ </geometry>
1018
+ <material name="phs_1_7x20_5_dc10_1_5_material">
1019
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1020
+ </material>
1021
+ </visual>
1022
+ <collision>
1023
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
1024
+ <geometry>
1025
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
1026
+ </geometry>
1027
+ </collision>
1028
+ <!-- Part phs_1_7x20_5_dc10_5 -->
1029
+ <visual>
1030
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
1031
+ <geometry>
1032
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
1033
+ </geometry>
1034
+ <material name="phs_1_7x20_5_dc10_5_material">
1035
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1036
+ </material>
1037
+ </visual>
1038
+ <collision>
1039
+ <origin xyz="0.01 0.0501606 -0.0418333" rpy="-8.04912e-15 -1.63452e-15 3.14159"/>
1040
+ <geometry>
1041
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
1042
+ </geometry>
1043
+ </collision>
1044
+ <!-- Part phs_1_7x20_5_dc10_2_6 -->
1045
+ <visual>
1046
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1047
+ <geometry>
1048
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
1049
+ </geometry>
1050
+ <material name="phs_1_7x20_5_dc10_2_6_material">
1051
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1052
+ </material>
1053
+ </visual>
1054
+ <collision>
1055
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1056
+ <geometry>
1057
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
1058
+ </geometry>
1059
+ </collision>
1060
+ <!-- Part dc15_a01_case_b_dummy_6 -->
1061
+ <visual>
1062
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1063
+ <geometry>
1064
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
1065
+ </geometry>
1066
+ <material name="dc15_a01_case_b_dummy_6_material">
1067
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1068
+ </material>
1069
+ </visual>
1070
+ <collision>
1071
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1072
+ <geometry>
1073
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
1074
+ </geometry>
1075
+ </collision>
1076
+ <!-- Part dc15_a01_case_m_dummy_6 -->
1077
+ <visual>
1078
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1079
+ <geometry>
1080
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
1081
+ </geometry>
1082
+ <material name="dc15_a01_case_m_dummy_6_material">
1083
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1084
+ </material>
1085
+ </visual>
1086
+ <collision>
1087
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1088
+ <geometry>
1089
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
1090
+ </geometry>
1091
+ </collision>
1092
+ <!-- Part dc15_a01_led_cap2_dummy_6 -->
1093
+ <visual>
1094
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1095
+ <geometry>
1096
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
1097
+ </geometry>
1098
+ <material name="dc15_a01_led_cap2_dummy_6_material">
1099
+ <color rgba="0.87451 0.447059 0.317647 1"/>
1100
+ </material>
1101
+ </visual>
1102
+ <collision>
1103
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1104
+ <geometry>
1105
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
1106
+ </geometry>
1107
+ </collision>
1108
+ <!-- Part bts2_m2_6x8_6 -->
1109
+ <visual>
1110
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1111
+ <geometry>
1112
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
1113
+ </geometry>
1114
+ <material name="bts2_m2_6x8_6_material">
1115
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1116
+ </material>
1117
+ </visual>
1118
+ <collision>
1119
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1120
+ <geometry>
1121
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
1122
+ </geometry>
1123
+ </collision>
1124
+ <!-- Part dc15_a01_case_f_dummy_6 -->
1125
+ <visual>
1126
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1127
+ <geometry>
1128
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
1129
+ </geometry>
1130
+ <material name="dc15_a01_case_f_dummy_6_material">
1131
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1132
+ </material>
1133
+ </visual>
1134
+ <collision>
1135
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1136
+ <geometry>
1137
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
1138
+ </geometry>
1139
+ </collision>
1140
+ <!-- Part b3b_eh_1_6 -->
1141
+ <visual>
1142
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1143
+ <geometry>
1144
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
1145
+ </geometry>
1146
+ <material name="b3b_eh_1_6_material">
1147
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1148
+ </material>
1149
+ </visual>
1150
+ <collision>
1151
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1152
+ <geometry>
1153
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
1154
+ </geometry>
1155
+ </collision>
1156
+ <!-- Part b3b_eh_6 -->
1157
+ <visual>
1158
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1159
+ <geometry>
1160
+ <mesh filename="package://assets/b3b_eh.stl"/>
1161
+ </geometry>
1162
+ <material name="b3b_eh_6_material">
1163
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1164
+ </material>
1165
+ </visual>
1166
+ <collision>
1167
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1168
+ <geometry>
1169
+ <mesh filename="package://assets/b3b_eh.stl"/>
1170
+ </geometry>
1171
+ </collision>
1172
+ <!-- Part phs_1_7x20_5_dc10_3_6 -->
1173
+ <visual>
1174
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1175
+ <geometry>
1176
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
1177
+ </geometry>
1178
+ <material name="phs_1_7x20_5_dc10_3_6_material">
1179
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1180
+ </material>
1181
+ </visual>
1182
+ <collision>
1183
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1184
+ <geometry>
1185
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
1186
+ </geometry>
1187
+ </collision>
1188
+ <!-- Part phs_1_7x20_5_dc10_1_6 -->
1189
+ <visual>
1190
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1191
+ <geometry>
1192
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
1193
+ </geometry>
1194
+ <material name="phs_1_7x20_5_dc10_1_6_material">
1195
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1196
+ </material>
1197
+ </visual>
1198
+ <collision>
1199
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1200
+ <geometry>
1201
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
1202
+ </geometry>
1203
+ </collision>
1204
+ <!-- Part phs_1_7x20_5_dc10_6 -->
1205
+ <visual>
1206
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1207
+ <geometry>
1208
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
1209
+ </geometry>
1210
+ <material name="phs_1_7x20_5_dc10_6_material">
1211
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1212
+ </material>
1213
+ </visual>
1214
+ <collision>
1215
+ <origin xyz="-0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 6.15348e-15 -1.0472"/>
1216
+ <geometry>
1217
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
1218
+ </geometry>
1219
+ </collision>
1220
+ <!-- Part phs_1_7x20_5_dc10_2_7 -->
1221
+ <visual>
1222
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1223
+ <geometry>
1224
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
1225
+ </geometry>
1226
+ <material name="phs_1_7x20_5_dc10_2_7_material">
1227
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1228
+ </material>
1229
+ </visual>
1230
+ <collision>
1231
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1232
+ <geometry>
1233
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
1234
+ </geometry>
1235
+ </collision>
1236
+ <!-- Part dc15_a01_case_b_dummy_7 -->
1237
+ <visual>
1238
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1239
+ <geometry>
1240
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
1241
+ </geometry>
1242
+ <material name="dc15_a01_case_b_dummy_7_material">
1243
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1244
+ </material>
1245
+ </visual>
1246
+ <collision>
1247
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1248
+ <geometry>
1249
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
1250
+ </geometry>
1251
+ </collision>
1252
+ <!-- Part dc15_a01_case_m_dummy_7 -->
1253
+ <visual>
1254
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1255
+ <geometry>
1256
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
1257
+ </geometry>
1258
+ <material name="dc15_a01_case_m_dummy_7_material">
1259
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1260
+ </material>
1261
+ </visual>
1262
+ <collision>
1263
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1264
+ <geometry>
1265
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
1266
+ </geometry>
1267
+ </collision>
1268
+ <!-- Part dc15_a01_led_cap2_dummy_7 -->
1269
+ <visual>
1270
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1271
+ <geometry>
1272
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
1273
+ </geometry>
1274
+ <material name="dc15_a01_led_cap2_dummy_7_material">
1275
+ <color rgba="0.87451 0.447059 0.317647 1"/>
1276
+ </material>
1277
+ </visual>
1278
+ <collision>
1279
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1280
+ <geometry>
1281
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
1282
+ </geometry>
1283
+ </collision>
1284
+ <!-- Part bts2_m2_6x8_7 -->
1285
+ <visual>
1286
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1287
+ <geometry>
1288
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
1289
+ </geometry>
1290
+ <material name="bts2_m2_6x8_7_material">
1291
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1292
+ </material>
1293
+ </visual>
1294
+ <collision>
1295
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1296
+ <geometry>
1297
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
1298
+ </geometry>
1299
+ </collision>
1300
+ <!-- Part dc15_a01_case_f_dummy_7 -->
1301
+ <visual>
1302
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1303
+ <geometry>
1304
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
1305
+ </geometry>
1306
+ <material name="dc15_a01_case_f_dummy_7_material">
1307
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1308
+ </material>
1309
+ </visual>
1310
+ <collision>
1311
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1312
+ <geometry>
1313
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
1314
+ </geometry>
1315
+ </collision>
1316
+ <!-- Part b3b_eh_1_7 -->
1317
+ <visual>
1318
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1319
+ <geometry>
1320
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
1321
+ </geometry>
1322
+ <material name="b3b_eh_1_7_material">
1323
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1324
+ </material>
1325
+ </visual>
1326
+ <collision>
1327
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1328
+ <geometry>
1329
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
1330
+ </geometry>
1331
+ </collision>
1332
+ <!-- Part b3b_eh_7 -->
1333
+ <visual>
1334
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1335
+ <geometry>
1336
+ <mesh filename="package://assets/b3b_eh.stl"/>
1337
+ </geometry>
1338
+ <material name="b3b_eh_7_material">
1339
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1340
+ </material>
1341
+ </visual>
1342
+ <collision>
1343
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1344
+ <geometry>
1345
+ <mesh filename="package://assets/b3b_eh.stl"/>
1346
+ </geometry>
1347
+ </collision>
1348
+ <!-- Part phs_1_7x20_5_dc10_3_7 -->
1349
+ <visual>
1350
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1351
+ <geometry>
1352
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
1353
+ </geometry>
1354
+ <material name="phs_1_7x20_5_dc10_3_7_material">
1355
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1356
+ </material>
1357
+ </visual>
1358
+ <collision>
1359
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1360
+ <geometry>
1361
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
1362
+ </geometry>
1363
+ </collision>
1364
+ <!-- Part phs_1_7x20_5_dc10_1_7 -->
1365
+ <visual>
1366
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1367
+ <geometry>
1368
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
1369
+ </geometry>
1370
+ <material name="phs_1_7x20_5_dc10_1_7_material">
1371
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1372
+ </material>
1373
+ </visual>
1374
+ <collision>
1375
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1376
+ <geometry>
1377
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
1378
+ </geometry>
1379
+ </collision>
1380
+ <!-- Part phs_1_7x20_5_dc10_7 -->
1381
+ <visual>
1382
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1383
+ <geometry>
1384
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
1385
+ </geometry>
1386
+ <material name="phs_1_7x20_5_dc10_7_material">
1387
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1388
+ </material>
1389
+ </visual>
1390
+ <collision>
1391
+ <origin xyz="0.0484404 -0.01642 -0.0418333" rpy="5.44009e-15 -6.15348e-15 1.0472"/>
1392
+ <geometry>
1393
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
1394
+ </geometry>
1395
+ </collision>
1396
+ </link>
1397
+ <!-- Link dc15_a01_horn_dummy -->
1398
+ <link name="dc15_a01_horn_dummy">
1399
+ <inertial>
1400
+ <origin xyz="0.0237505 1.13786e-09 0.00335838" rpy="0 0 0"/>
1401
+ <mass value="0.00366675"/>
1402
+ <inertia ixx="8.57063e-08" ixy="1.81822e-13" ixz="-1.93125e-07" iyy="1.28019e-06" iyz="1.09002e-14" izz="1.26546e-06"/>
1403
+ </inertial>
1404
+ <!-- Part dc15_a01_horn_dummy_2 -->
1405
+ <visual>
1406
+ <origin xyz="1.73472e-18 0 -0.0065" rpy="1.5708 3.66436e-29 -1.5708"/>
1407
+ <geometry>
1408
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1409
+ </geometry>
1410
+ <material name="dc15_a01_horn_dummy_2_material">
1411
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1412
+ </material>
1413
+ </visual>
1414
+ <collision>
1415
+ <origin xyz="1.73472e-18 0 -0.0065" rpy="1.5708 3.66436e-29 -1.5708"/>
1416
+ <geometry>
1417
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1418
+ </geometry>
1419
+ </collision>
1420
+ <!-- Part mp01062_stewart_arm_3 -->
1421
+ <visual>
1422
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1423
+ <geometry>
1424
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1425
+ </geometry>
1426
+ <material name="mp01062_stewart_arm_3_material">
1427
+ <color rgba="0.301961 0.301961 0.301961 1"/>
1428
+ </material>
1429
+ </visual>
1430
+ <collision>
1431
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1432
+ <geometry>
1433
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1434
+ </geometry>
1435
+ </collision>
1436
+ <!-- Part stewart_link_ball -->
1437
+ <visual>
1438
+ <origin xyz="0.0825 -1.6545e-10 0.007" rpy="1.03371e-14 -1.81902e-17 6.12323e-17"/>
1439
+ <geometry>
1440
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1441
+ </geometry>
1442
+ <material name="stewart_link_ball_material">
1443
+ <color rgba="0.439216 0.47451 0.501961 1"/>
1444
+ </material>
1445
+ </visual>
1446
+ <collision>
1447
+ <origin xyz="0.0825 -1.6545e-10 0.007" rpy="1.03371e-14 -1.81902e-17 6.12323e-17"/>
1448
+ <geometry>
1449
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1450
+ </geometry>
1451
+ </collision>
1452
+ </link>
1453
+ <!-- Link passive_1_link_x -->
1454
+ <link name="passive_1_link_x">
1455
+ <inertial>
1456
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1457
+ <mass value="1e-09"/>
1458
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1459
+ </inertial>
1460
+ </link>
1461
+ <!-- Link passive_1_link_y -->
1462
+ <link name="passive_1_link_y">
1463
+ <inertial>
1464
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1465
+ <mass value="1e-09"/>
1466
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1467
+ </inertial>
1468
+ </link>
1469
+ <!-- Link stewart_link_rod -->
1470
+ <link name="stewart_link_rod">
1471
+ <inertial>
1472
+ <origin xyz="0.0425001 8.43768e-11 -1.88428e-09" rpy="0 0 0"/>
1473
+ <mass value="0.00503424"/>
1474
+ <inertia ixx="2.63976e-08" ixy="-3.69517e-13" ixz="7.12534e-14" iyy="3.65211e-06" iyz="5.21041e-14" izz="3.66473e-06"/>
1475
+ </inertial>
1476
+ <!-- Part stewart_link_rod -->
1477
+ <visual>
1478
+ <origin xyz="0.0425 -1.38778e-17 -6.93889e-18" rpy="-1.1607e-16 3.42669e-17 4.62147e-17"/>
1479
+ <geometry>
1480
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1481
+ </geometry>
1482
+ <material name="stewart_link_rod_material">
1483
+ <color rgba="0.811765 0.858824 0.898039 1"/>
1484
+ </material>
1485
+ </visual>
1486
+ <collision>
1487
+ <origin xyz="0.0425 -1.38778e-17 -6.93889e-18" rpy="-1.1607e-16 3.42669e-17 4.62147e-17"/>
1488
+ <geometry>
1489
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1490
+ </geometry>
1491
+ </collision>
1492
+ </link>
1493
+ <!-- Frame closing_1_1 (dummy link + fixed joint) -->
1494
+ <link name="closing_1_1">
1495
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
1496
+ <inertial>
1497
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1498
+ <mass value="1e-9"/>
1499
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
1500
+ </inertial>
1501
+ </link>
1502
+ <joint name="closing_1_1_frame" type="fixed">
1503
+ <origin xyz="0.085 -1.38778e-17 -6.93889e-18" rpy="-1.1607e-16 3.42669e-17 4.62147e-17"/>
1504
+ <parent link="stewart_link_rod"/>
1505
+ <child link="closing_1_1"/>
1506
+ <axis xyz="0 0 0"/>
1507
+ </joint>
1508
+ <!-- Joint from passive_1_link_y to stewart_link_rod -->
1509
+ <joint name="passive_1_z" type="revolute">
1510
+ <origin xyz="-1.38778e-17 0 -6.93889e-18" rpy="-1.1607e-16 3.42669e-17 4.62147e-17"/>
1511
+ <parent link="passive_1_link_y"/>
1512
+ <child link="stewart_link_rod"/>
1513
+ <axis xyz="0 0 1"/>
1514
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1515
+ </joint>
1516
+ <!-- Joint from passive_1_link_x to passive_1_link_y -->
1517
+ <joint name="passive_1_y" type="revolute">
1518
+ <origin xyz="-1.38778e-17 0 -6.93889e-18" rpy="-1.1607e-16 3.42669e-17 4.62147e-17"/>
1519
+ <parent link="passive_1_link_x"/>
1520
+ <child link="passive_1_link_y"/>
1521
+ <axis xyz="0 1 0"/>
1522
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1523
+ </joint>
1524
+ <!-- Joint from dc15_a01_horn_dummy to passive_1_link_x -->
1525
+ <joint name="passive_1_x" type="revolute">
1526
+ <origin xyz="0.04 -1.6545e-10 0.007" rpy="-0.13754 -0.0882156 2.10349"/>
1527
+ <parent link="dc15_a01_horn_dummy"/>
1528
+ <child link="passive_1_link_x"/>
1529
+ <axis xyz="1 0 0"/>
1530
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1531
+ </joint>
1532
+ <!-- Joint from body_down_3dprint to dc15_a01_horn_dummy -->
1533
+ <joint name="stewart_1" type="revolute">
1534
+ <origin xyz="-0.0328112 -0.0304906 -0.0418333" rpy="-1.5708 3.50863e-13 -1.0472"/>
1535
+ <parent link="body_down_3dprint"/>
1536
+ <child link="dc15_a01_horn_dummy"/>
1537
+ <axis xyz="0 0 1"/>
1538
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
1539
+ </joint>
1540
+ <!-- Link dc15_a01_horn_dummy_2 -->
1541
+ <link name="dc15_a01_horn_dummy_2">
1542
+ <inertial>
1543
+ <origin xyz="0.0237505 1.27591e-09 0.00335838" rpy="0 0 0"/>
1544
+ <mass value="0.00366675"/>
1545
+ <inertia ixx="8.57063e-08" ixy="1.79436e-13" ixz="-1.93125e-07" iyy="1.28019e-06" iyz="1.03818e-14" izz="1.26546e-06"/>
1546
+ </inertial>
1547
+ <!-- Part stewart_link_ball_2 -->
1548
+ <visual>
1549
+ <origin xyz="-0.0025 8.32667e-17 0.007" rpy="1.05338e-14 -9.64904e-17 -3.14159"/>
1550
+ <geometry>
1551
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1552
+ </geometry>
1553
+ <material name="stewart_link_ball_2_material">
1554
+ <color rgba="0.439216 0.47451 0.501961 1"/>
1555
+ </material>
1556
+ </visual>
1557
+ <collision>
1558
+ <origin xyz="-0.0025 8.32667e-17 0.007" rpy="1.05338e-14 -9.64904e-17 -3.14159"/>
1559
+ <geometry>
1560
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1561
+ </geometry>
1562
+ </collision>
1563
+ <!-- Part dc15_a01_horn_dummy_3 -->
1564
+ <visual>
1565
+ <origin xyz="0 0 -0.0065" rpy="1.5708 1.57772e-30 -1.5708"/>
1566
+ <geometry>
1567
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1568
+ </geometry>
1569
+ <material name="dc15_a01_horn_dummy_3_material">
1570
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1571
+ </material>
1572
+ </visual>
1573
+ <collision>
1574
+ <origin xyz="0 0 -0.0065" rpy="1.5708 1.57772e-30 -1.5708"/>
1575
+ <geometry>
1576
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1577
+ </geometry>
1578
+ </collision>
1579
+ <!-- Part mp01062_stewart_arm_3_2 -->
1580
+ <visual>
1581
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1582
+ <geometry>
1583
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1584
+ </geometry>
1585
+ <material name="mp01062_stewart_arm_3_2_material">
1586
+ <color rgba="0.301961 0.301961 0.301961 1"/>
1587
+ </material>
1588
+ </visual>
1589
+ <collision>
1590
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1591
+ <geometry>
1592
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1593
+ </geometry>
1594
+ </collision>
1595
+ </link>
1596
+ <!-- Link passive_2_link_x -->
1597
+ <link name="passive_2_link_x">
1598
+ <inertial>
1599
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1600
+ <mass value="1e-09"/>
1601
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1602
+ </inertial>
1603
+ </link>
1604
+ <!-- Link passive_2_link_y -->
1605
+ <link name="passive_2_link_y">
1606
+ <inertial>
1607
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1608
+ <mass value="1e-09"/>
1609
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1610
+ </inertial>
1611
+ </link>
1612
+ <!-- Link stewart_link_rod_2 -->
1613
+ <link name="stewart_link_rod_2">
1614
+ <inertial>
1615
+ <origin xyz="0.0214999 -0.0364688 -0.00374429" rpy="0 0 0"/>
1616
+ <mass value="0.00503424"/>
1617
+ <inertia ixx="2.72424e-06" ixy="1.57393e-06" ixz="1.6134e-07" iyy="9.82586e-07" iyz="-2.75528e-07" izz="3.63642e-06"/>
1618
+ </inertial>
1619
+ <!-- Part stewart_link_rod_2 -->
1620
+ <visual>
1621
+ <origin xyz="0.0215 -0.0364689 -0.0037443" rpy="3.06617 -0.0882156 2.10349"/>
1622
+ <geometry>
1623
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1624
+ </geometry>
1625
+ <material name="stewart_link_rod_2_material">
1626
+ <color rgba="0.811765 0.858824 0.898039 1"/>
1627
+ </material>
1628
+ </visual>
1629
+ <collision>
1630
+ <origin xyz="0.0215 -0.0364689 -0.0037443" rpy="3.06617 -0.0882156 2.10349"/>
1631
+ <geometry>
1632
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1633
+ </geometry>
1634
+ </collision>
1635
+ </link>
1636
+ <!-- Frame closing_2_1 (dummy link + fixed joint) -->
1637
+ <link name="closing_2_1">
1638
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
1639
+ <inertial>
1640
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1641
+ <mass value="1e-9"/>
1642
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
1643
+ </inertial>
1644
+ </link>
1645
+ <joint name="closing_2_1_frame" type="fixed">
1646
+ <origin xyz="0.043 -0.0729378 -0.00748861" rpy="3.06617 -0.0882156 2.10349"/>
1647
+ <parent link="stewart_link_rod_2"/>
1648
+ <child link="closing_2_1"/>
1649
+ <axis xyz="0 0 0"/>
1650
+ </joint>
1651
+ <!-- Joint from passive_2_link_y to stewart_link_rod_2 -->
1652
+ <joint name="passive_2_z" type="revolute">
1653
+ <origin xyz="-6.93889e-18 0 6.93889e-18" rpy="-3.78524e-31 4.09793e-17 2.87272e-31"/>
1654
+ <parent link="passive_2_link_y"/>
1655
+ <child link="stewart_link_rod_2"/>
1656
+ <axis xyz="0 0 1"/>
1657
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1658
+ </joint>
1659
+ <!-- Joint from passive_2_link_x to passive_2_link_y -->
1660
+ <joint name="passive_2_y" type="revolute">
1661
+ <origin xyz="-6.93889e-18 0 6.93889e-18" rpy="-3.78524e-31 4.09793e-17 2.87272e-31"/>
1662
+ <parent link="passive_2_link_x"/>
1663
+ <child link="passive_2_link_y"/>
1664
+ <axis xyz="0 1 0"/>
1665
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1666
+ </joint>
1667
+ <!-- Joint from dc15_a01_horn_dummy_2 to passive_2_link_x -->
1668
+ <joint name="passive_2_x" type="revolute">
1669
+ <origin xyz="0.04 8.32667e-17 0.007" rpy="-3.14159 -9.64904e-17 -3.14159"/>
1670
+ <parent link="dc15_a01_horn_dummy_2"/>
1671
+ <child link="passive_2_link_x"/>
1672
+ <axis xyz="1 0 0"/>
1673
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1674
+ </joint>
1675
+ <!-- Joint from body_down_3dprint to dc15_a01_horn_dummy_2 -->
1676
+ <joint name="stewart_2" type="revolute">
1677
+ <origin xyz="-0.0428112 -0.01317 -0.0418333" rpy="1.5708 4.23181e-14 2.0944"/>
1678
+ <parent link="body_down_3dprint"/>
1679
+ <child link="dc15_a01_horn_dummy_2"/>
1680
+ <axis xyz="0 0 1"/>
1681
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
1682
+ </joint>
1683
+ <!-- Link dc15_a01_horn_dummy_3 -->
1684
+ <link name="dc15_a01_horn_dummy_3">
1685
+ <inertial>
1686
+ <origin xyz="0.0237505 1.27591e-09 0.00335838" rpy="0 0 0"/>
1687
+ <mass value="0.00366675"/>
1688
+ <inertia ixx="8.57063e-08" ixy="1.79436e-13" ixz="-1.93125e-07" iyy="1.28019e-06" iyz="1.03818e-14" izz="1.26546e-06"/>
1689
+ </inertial>
1690
+ <!-- Part dc15_a01_horn_dummy_4 -->
1691
+ <visual>
1692
+ <origin xyz="0 0 -0.0065" rpy="1.5708 7.53179e-31 -1.5708"/>
1693
+ <geometry>
1694
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1695
+ </geometry>
1696
+ <material name="dc15_a01_horn_dummy_4_material">
1697
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1698
+ </material>
1699
+ </visual>
1700
+ <collision>
1701
+ <origin xyz="0 0 -0.0065" rpy="1.5708 7.53179e-31 -1.5708"/>
1702
+ <geometry>
1703
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1704
+ </geometry>
1705
+ </collision>
1706
+ <!-- Part stewart_link_ball_3 -->
1707
+ <visual>
1708
+ <origin xyz="0.04 -0.0425 0.007" rpy="8.82627e-15 -9.58961e-15 -1.5708"/>
1709
+ <geometry>
1710
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1711
+ </geometry>
1712
+ <material name="stewart_link_ball_3_material">
1713
+ <color rgba="0.439216 0.47451 0.501961 1"/>
1714
+ </material>
1715
+ </visual>
1716
+ <collision>
1717
+ <origin xyz="0.04 -0.0425 0.007" rpy="8.82627e-15 -9.58961e-15 -1.5708"/>
1718
+ <geometry>
1719
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1720
+ </geometry>
1721
+ </collision>
1722
+ <!-- Part mp01062_stewart_arm_3_3 -->
1723
+ <visual>
1724
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1725
+ <geometry>
1726
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1727
+ </geometry>
1728
+ <material name="mp01062_stewart_arm_3_3_material">
1729
+ <color rgba="0.301961 0.301961 0.301961 1"/>
1730
+ </material>
1731
+ </visual>
1732
+ <collision>
1733
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1734
+ <geometry>
1735
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1736
+ </geometry>
1737
+ </collision>
1738
+ </link>
1739
+ <!-- Link passive_3_link_x -->
1740
+ <link name="passive_3_link_x">
1741
+ <inertial>
1742
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1743
+ <mass value="1e-09"/>
1744
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1745
+ </inertial>
1746
+ </link>
1747
+ <!-- Link passive_3_link_y -->
1748
+ <link name="passive_3_link_y">
1749
+ <inertial>
1750
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1751
+ <mass value="1e-09"/>
1752
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1753
+ </inertial>
1754
+ </link>
1755
+ <!-- Link stewart_link_rod_3 -->
1756
+ <link name="stewart_link_rod_3">
1757
+ <inertial>
1758
+ <origin xyz="-0.0424999 8.43768e-11 -1.88428e-09" rpy="0 0 0"/>
1759
+ <mass value="0.00503424"/>
1760
+ <inertia ixx="2.63976e-08" ixy="-3.69517e-13" ixz="7.12534e-14" iyy="3.65211e-06" iyz="5.21041e-14" izz="3.66473e-06"/>
1761
+ </inertial>
1762
+ <!-- Part stewart_link_rod_3 -->
1763
+ <visual>
1764
+ <origin xyz="-0.0425 0 -1.38778e-17" rpy="4.65239e-19 -4.2966e-17 1.0182e-17"/>
1765
+ <geometry>
1766
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1767
+ </geometry>
1768
+ <material name="stewart_link_rod_3_material">
1769
+ <color rgba="0.811765 0.858824 0.898039 1"/>
1770
+ </material>
1771
+ </visual>
1772
+ <collision>
1773
+ <origin xyz="-0.0425 0 -1.38778e-17" rpy="4.65239e-19 -4.2966e-17 1.0182e-17"/>
1774
+ <geometry>
1775
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1776
+ </geometry>
1777
+ </collision>
1778
+ </link>
1779
+ <!-- Frame closing_3_1 (dummy link + fixed joint) -->
1780
+ <link name="closing_3_1">
1781
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
1782
+ <inertial>
1783
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1784
+ <mass value="1e-9"/>
1785
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
1786
+ </inertial>
1787
+ </link>
1788
+ <joint name="closing_3_1_frame" type="fixed">
1789
+ <origin xyz="-0.085 0 -1.38778e-17" rpy="4.65239e-19 -4.2966e-17 1.0182e-17"/>
1790
+ <parent link="stewart_link_rod_3"/>
1791
+ <child link="closing_3_1"/>
1792
+ <axis xyz="0 0 0"/>
1793
+ </joint>
1794
+ <!-- Joint from passive_3_link_y to stewart_link_rod_3 -->
1795
+ <joint name="passive_3_z" type="revolute">
1796
+ <origin xyz="6.93889e-18 0 -1.38778e-17" rpy="4.65239e-19 -4.2966e-17 1.0182e-17"/>
1797
+ <parent link="passive_3_link_y"/>
1798
+ <child link="stewart_link_rod_3"/>
1799
+ <axis xyz="0 0 1"/>
1800
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1801
+ </joint>
1802
+ <!-- Joint from passive_3_link_x to passive_3_link_y -->
1803
+ <joint name="passive_3_y" type="revolute">
1804
+ <origin xyz="6.93889e-18 0 -1.38778e-17" rpy="4.65239e-19 -4.2966e-17 1.0182e-17"/>
1805
+ <parent link="passive_3_link_x"/>
1806
+ <child link="passive_3_link_y"/>
1807
+ <axis xyz="0 1 0"/>
1808
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1809
+ </joint>
1810
+ <!-- Joint from dc15_a01_horn_dummy_3 to passive_3_link_x -->
1811
+ <joint name="passive_3_x" type="revolute">
1812
+ <origin xyz="0.04 8.32667e-17 0.007" rpy="0.373569 0.0882156 -1.0381"/>
1813
+ <parent link="dc15_a01_horn_dummy_3"/>
1814
+ <child link="passive_3_link_x"/>
1815
+ <axis xyz="1 0 0"/>
1816
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1817
+ </joint>
1818
+ <!-- Joint from body_down_3dprint to dc15_a01_horn_dummy_3 -->
1819
+ <joint name="stewart_3" type="revolute">
1820
+ <origin xyz="-0.01 0.0436606 -0.0418333" rpy="-1.5708 -2.70151e-14 -3.14159"/>
1821
+ <parent link="body_down_3dprint"/>
1822
+ <child link="dc15_a01_horn_dummy_3"/>
1823
+ <axis xyz="0 0 1"/>
1824
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
1825
+ </joint>
1826
+ <!-- Link dc15_a01_horn_dummy_4 -->
1827
+ <link name="dc15_a01_horn_dummy_4">
1828
+ <inertial>
1829
+ <origin xyz="0.0237505 1.27591e-09 0.00335838" rpy="0 0 0"/>
1830
+ <mass value="0.00366675"/>
1831
+ <inertia ixx="8.57063e-08" ixy="1.79436e-13" ixz="-1.93125e-07" iyy="1.28019e-06" iyz="1.03818e-14" izz="1.26546e-06"/>
1832
+ </inertial>
1833
+ <!-- Part stewart_link_ball_4 -->
1834
+ <visual>
1835
+ <origin xyz="0.04 0.0425 0.007" rpy="2.4824e-15 -1.35999e-14 1.5708"/>
1836
+ <geometry>
1837
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1838
+ </geometry>
1839
+ <material name="stewart_link_ball_4_material">
1840
+ <color rgba="0.439216 0.47451 0.501961 1"/>
1841
+ </material>
1842
+ </visual>
1843
+ <collision>
1844
+ <origin xyz="0.04 0.0425 0.007" rpy="2.4824e-15 -1.35999e-14 1.5708"/>
1845
+ <geometry>
1846
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1847
+ </geometry>
1848
+ </collision>
1849
+ <!-- Part mp01062_stewart_arm_3_4 -->
1850
+ <visual>
1851
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1852
+ <geometry>
1853
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1854
+ </geometry>
1855
+ <material name="mp01062_stewart_arm_3_4_material">
1856
+ <color rgba="0.301961 0.301961 0.301961 1"/>
1857
+ </material>
1858
+ </visual>
1859
+ <collision>
1860
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1861
+ <geometry>
1862
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1863
+ </geometry>
1864
+ </collision>
1865
+ <!-- Part dc15_a01_horn_dummy_5 -->
1866
+ <visual>
1867
+ <origin xyz="0 1.38778e-17 -0.0065" rpy="1.5708 7.39557e-32 -1.5708"/>
1868
+ <geometry>
1869
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1870
+ </geometry>
1871
+ <material name="dc15_a01_horn_dummy_5_material">
1872
+ <color rgba="0.262745 0.282353 0.301961 1"/>
1873
+ </material>
1874
+ </visual>
1875
+ <collision>
1876
+ <origin xyz="0 1.38778e-17 -0.0065" rpy="1.5708 7.39557e-32 -1.5708"/>
1877
+ <geometry>
1878
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
1879
+ </geometry>
1880
+ </collision>
1881
+ </link>
1882
+ <!-- Link passive_4_link_x -->
1883
+ <link name="passive_4_link_x">
1884
+ <inertial>
1885
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1886
+ <mass value="1e-09"/>
1887
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1888
+ </inertial>
1889
+ </link>
1890
+ <!-- Link passive_4_link_y -->
1891
+ <link name="passive_4_link_y">
1892
+ <inertial>
1893
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1894
+ <mass value="1e-09"/>
1895
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
1896
+ </inertial>
1897
+ </link>
1898
+ <!-- Link stewart_link_rod_4 -->
1899
+ <link name="stewart_link_rod_4">
1900
+ <inertial>
1901
+ <origin xyz="-0.0424999 8.43768e-11 -1.88428e-09" rpy="0 0 0"/>
1902
+ <mass value="0.00503424"/>
1903
+ <inertia ixx="2.63976e-08" ixy="-3.69517e-13" ixz="7.12534e-14" iyy="3.65211e-06" iyz="5.21041e-14" izz="3.66473e-06"/>
1904
+ </inertial>
1905
+ <!-- Part stewart_link_rod_4 -->
1906
+ <visual>
1907
+ <origin xyz="-0.0425 0 0" rpy="2.88217e-18 2.28461e-18 -8.3094e-17"/>
1908
+ <geometry>
1909
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1910
+ </geometry>
1911
+ <material name="stewart_link_rod_4_material">
1912
+ <color rgba="0.811765 0.858824 0.898039 1"/>
1913
+ </material>
1914
+ </visual>
1915
+ <collision>
1916
+ <origin xyz="-0.0425 0 0" rpy="2.88217e-18 2.28461e-18 -8.3094e-17"/>
1917
+ <geometry>
1918
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
1919
+ </geometry>
1920
+ </collision>
1921
+ </link>
1922
+ <!-- Frame closing_4_1 (dummy link + fixed joint) -->
1923
+ <link name="closing_4_1">
1924
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
1925
+ <inertial>
1926
+ <origin xyz="0 0 0" rpy="0 0 0"/>
1927
+ <mass value="1e-9"/>
1928
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
1929
+ </inertial>
1930
+ </link>
1931
+ <joint name="closing_4_1_frame" type="fixed">
1932
+ <origin xyz="-0.085 -1.38778e-17 0" rpy="2.88217e-18 2.28461e-18 -8.3094e-17"/>
1933
+ <parent link="stewart_link_rod_4"/>
1934
+ <child link="closing_4_1"/>
1935
+ <axis xyz="0 0 0"/>
1936
+ </joint>
1937
+ <!-- Joint from passive_4_link_y to stewart_link_rod_4 -->
1938
+ <joint name="passive_4_z" type="revolute">
1939
+ <origin xyz="1.38778e-17 0 0" rpy="2.88217e-18 2.28461e-18 -8.3094e-17"/>
1940
+ <parent link="passive_4_link_y"/>
1941
+ <child link="stewart_link_rod_4"/>
1942
+ <axis xyz="0 0 1"/>
1943
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1944
+ </joint>
1945
+ <!-- Joint from passive_4_link_x to passive_4_link_y -->
1946
+ <joint name="passive_4_y" type="revolute">
1947
+ <origin xyz="1.38778e-17 0 0" rpy="2.88217e-18 2.28461e-18 -8.3094e-17"/>
1948
+ <parent link="passive_4_link_x"/>
1949
+ <child link="passive_4_link_y"/>
1950
+ <axis xyz="0 1 0"/>
1951
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1952
+ </joint>
1953
+ <!-- Joint from dc15_a01_horn_dummy_4 to passive_4_link_x -->
1954
+ <joint name="passive_4_x" type="revolute">
1955
+ <origin xyz="0.04 1.38778e-17 0.007" rpy="-0.0860846 0.0882156 1.0381"/>
1956
+ <parent link="dc15_a01_horn_dummy_4"/>
1957
+ <child link="passive_4_link_x"/>
1958
+ <axis xyz="1 0 0"/>
1959
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
1960
+ </joint>
1961
+ <!-- Joint from body_down_3dprint to dc15_a01_horn_dummy_4 -->
1962
+ <joint name="stewart_4" type="revolute">
1963
+ <origin xyz="0.01 0.0436606 -0.0418333" rpy="1.5708 -5.41904e-14 -3.32512e-14"/>
1964
+ <parent link="body_down_3dprint"/>
1965
+ <child link="dc15_a01_horn_dummy_4"/>
1966
+ <axis xyz="0 0 1"/>
1967
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
1968
+ </joint>
1969
+ <!-- Link dc15_a01_horn_dummy_5 -->
1970
+ <link name="dc15_a01_horn_dummy_5">
1971
+ <inertial>
1972
+ <origin xyz="0.0237505 1.27591e-09 0.00335838" rpy="0 0 0"/>
1973
+ <mass value="0.00366675"/>
1974
+ <inertia ixx="8.57063e-08" ixy="1.79436e-13" ixz="-1.93125e-07" iyy="1.28019e-06" iyz="1.03818e-14" izz="1.26546e-06"/>
1975
+ </inertial>
1976
+ <!-- Part mp01062_stewart_arm_3_5 -->
1977
+ <visual>
1978
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1979
+ <geometry>
1980
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1981
+ </geometry>
1982
+ <material name="mp01062_stewart_arm_3_5_material">
1983
+ <color rgba="0.301961 0.301961 0.301961 1"/>
1984
+ </material>
1985
+ </visual>
1986
+ <collision>
1987
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
1988
+ <geometry>
1989
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
1990
+ </geometry>
1991
+ </collision>
1992
+ <!-- Part stewart_link_ball_5 -->
1993
+ <visual>
1994
+ <origin xyz="-0.0025 6.93889e-17 0.007" rpy="-2.89112e-14 -1.24941e-14 -3.14159"/>
1995
+ <geometry>
1996
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
1997
+ </geometry>
1998
+ <material name="stewart_link_ball_5_material">
1999
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2000
+ </material>
2001
+ </visual>
2002
+ <collision>
2003
+ <origin xyz="-0.0025 6.93889e-17 0.007" rpy="-2.89112e-14 -1.24941e-14 -3.14159"/>
2004
+ <geometry>
2005
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
2006
+ </geometry>
2007
+ </collision>
2008
+ <!-- Part dc15_a01_horn_dummy_6 -->
2009
+ <visual>
2010
+ <origin xyz="1.73472e-18 0 -0.0065" rpy="1.5708 2.62814e-30 -1.5708"/>
2011
+ <geometry>
2012
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
2013
+ </geometry>
2014
+ <material name="dc15_a01_horn_dummy_6_material">
2015
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2016
+ </material>
2017
+ </visual>
2018
+ <collision>
2019
+ <origin xyz="1.73472e-18 0 -0.0065" rpy="1.5708 2.62814e-30 -1.5708"/>
2020
+ <geometry>
2021
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
2022
+ </geometry>
2023
+ </collision>
2024
+ </link>
2025
+ <!-- Link passive_5_link_x -->
2026
+ <link name="passive_5_link_x">
2027
+ <inertial>
2028
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2029
+ <mass value="1e-09"/>
2030
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
2031
+ </inertial>
2032
+ </link>
2033
+ <!-- Link passive_5_link_y -->
2034
+ <link name="passive_5_link_y">
2035
+ <inertial>
2036
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2037
+ <mass value="1e-09"/>
2038
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
2039
+ </inertial>
2040
+ </link>
2041
+ <!-- Link stewart_link_rod_5 -->
2042
+ <link name="stewart_link_rod_5">
2043
+ <inertial>
2044
+ <origin xyz="-0.0424999 8.43768e-11 -1.88428e-09" rpy="0 0 0"/>
2045
+ <mass value="0.00503424"/>
2046
+ <inertia ixx="2.63976e-08" ixy="-3.69517e-13" ixz="7.12534e-14" iyy="3.65211e-06" iyz="5.21041e-14" izz="3.66473e-06"/>
2047
+ </inertial>
2048
+ <!-- Part stewart_link_rod_5 -->
2049
+ <visual>
2050
+ <origin xyz="-0.0425 -1.38778e-17 6.93889e-18" rpy="-1.54617e-17 2.86037e-17 -1.44876e-17"/>
2051
+ <geometry>
2052
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
2053
+ </geometry>
2054
+ <material name="stewart_link_rod_5_material">
2055
+ <color rgba="0.811765 0.858824 0.898039 1"/>
2056
+ </material>
2057
+ </visual>
2058
+ <collision>
2059
+ <origin xyz="-0.0425 -1.38778e-17 6.93889e-18" rpy="-1.54617e-17 2.86037e-17 -1.44876e-17"/>
2060
+ <geometry>
2061
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
2062
+ </geometry>
2063
+ </collision>
2064
+ </link>
2065
+ <!-- Frame closing_5_1 (dummy link + fixed joint) -->
2066
+ <link name="closing_5_1">
2067
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2068
+ <inertial>
2069
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2070
+ <mass value="1e-9"/>
2071
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
2072
+ </inertial>
2073
+ </link>
2074
+ <joint name="closing_5_1_frame" type="fixed">
2075
+ <origin xyz="-0.085 -2.77556e-17 1.38778e-17" rpy="-1.54617e-17 2.86037e-17 -1.44876e-17"/>
2076
+ <parent link="stewart_link_rod_5"/>
2077
+ <child link="closing_5_1"/>
2078
+ <axis xyz="0 0 0"/>
2079
+ </joint>
2080
+ <!-- Joint from passive_5_link_y to stewart_link_rod_5 -->
2081
+ <joint name="passive_5_z" type="revolute">
2082
+ <origin xyz="-1.38778e-17 -1.38778e-17 6.93889e-18" rpy="-1.54617e-17 2.86037e-17 -1.44876e-17"/>
2083
+ <parent link="passive_5_link_y"/>
2084
+ <child link="stewart_link_rod_5"/>
2085
+ <axis xyz="0 0 1"/>
2086
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
2087
+ </joint>
2088
+ <!-- Joint from passive_5_link_x to passive_5_link_y -->
2089
+ <joint name="passive_5_y" type="revolute">
2090
+ <origin xyz="-1.38778e-17 -1.38778e-17 6.93889e-18" rpy="-1.54617e-17 2.86037e-17 -1.44876e-17"/>
2091
+ <parent link="passive_5_link_x"/>
2092
+ <child link="passive_5_link_y"/>
2093
+ <axis xyz="0 1 0"/>
2094
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
2095
+ </joint>
2096
+ <!-- Joint from dc15_a01_horn_dummy_5 to passive_5_link_x -->
2097
+ <joint name="passive_5_x" type="revolute">
2098
+ <origin xyz="0.04 6.93889e-17 0.007" rpy="0.123977 0.0882156 -1.0381"/>
2099
+ <parent link="dc15_a01_horn_dummy_5"/>
2100
+ <child link="passive_5_link_x"/>
2101
+ <axis xyz="1 0 0"/>
2102
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
2103
+ </joint>
2104
+ <!-- Joint from body_down_3dprint to dc15_a01_horn_dummy_5 -->
2105
+ <joint name="stewart_5" type="revolute">
2106
+ <origin xyz="0.0428112 -0.01317 -0.0418333" rpy="-1.5708 1.51498e-14 1.0472"/>
2107
+ <parent link="body_down_3dprint"/>
2108
+ <child link="dc15_a01_horn_dummy_5"/>
2109
+ <axis xyz="0 0 1"/>
2110
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
2111
+ </joint>
2112
+ <!-- Link dc15_a01_horn_dummy_6 -->
2113
+ <link name="dc15_a01_horn_dummy_6">
2114
+ <inertial>
2115
+ <origin xyz="0.0237505 1.27591e-09 0.00335838" rpy="0 0 0"/>
2116
+ <mass value="0.00366675"/>
2117
+ <inertia ixx="8.57063e-08" ixy="1.79436e-13" ixz="-1.93125e-07" iyy="1.28019e-06" iyz="1.03818e-14" izz="1.26546e-06"/>
2118
+ </inertial>
2119
+ <!-- Part dc15_a01_horn_dummy_7 -->
2120
+ <visual>
2121
+ <origin xyz="-6.93889e-18 1.38778e-17 -0.0065" rpy="1.5708 -5.62327e-30 -1.5708"/>
2122
+ <geometry>
2123
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
2124
+ </geometry>
2125
+ <material name="dc15_a01_horn_dummy_7_material">
2126
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2127
+ </material>
2128
+ </visual>
2129
+ <collision>
2130
+ <origin xyz="-6.93889e-18 1.38778e-17 -0.0065" rpy="1.5708 -5.62327e-30 -1.5708"/>
2131
+ <geometry>
2132
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
2133
+ </geometry>
2134
+ </collision>
2135
+ <!-- Part stewart_link_ball_6 -->
2136
+ <visual>
2137
+ <origin xyz="0.0825 6.93889e-17 0.007" rpy="-9.61352e-15 7.32207e-18 6.12323e-17"/>
2138
+ <geometry>
2139
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
2140
+ </geometry>
2141
+ <material name="stewart_link_ball_6_material">
2142
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2143
+ </material>
2144
+ </visual>
2145
+ <collision>
2146
+ <origin xyz="0.0825 6.93889e-17 0.007" rpy="-9.61352e-15 7.32207e-18 6.12323e-17"/>
2147
+ <geometry>
2148
+ <mesh filename="package://assets/stewart_link_ball.stl"/>
2149
+ </geometry>
2150
+ </collision>
2151
+ <!-- Part mp01062_stewart_arm_3_6 -->
2152
+ <visual>
2153
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
2154
+ <geometry>
2155
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
2156
+ </geometry>
2157
+ <material name="mp01062_stewart_arm_3_6_material">
2158
+ <color rgba="0.301961 0.301961 0.301961 1"/>
2159
+ </material>
2160
+ </visual>
2161
+ <collision>
2162
+ <origin xyz="-0.01 -0.153167 0.0436606" rpy="1.5708 -1.0472 6.12323e-17"/>
2163
+ <geometry>
2164
+ <mesh filename="package://assets/mp01062_stewart_arm_3.stl"/>
2165
+ </geometry>
2166
+ </collision>
2167
+ </link>
2168
+ <!-- Link passive_6_link_x -->
2169
+ <link name="passive_6_link_x">
2170
+ <inertial>
2171
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2172
+ <mass value="1e-09"/>
2173
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
2174
+ </inertial>
2175
+ </link>
2176
+ <!-- Link passive_6_link_y -->
2177
+ <link name="passive_6_link_y">
2178
+ <inertial>
2179
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2180
+ <mass value="1e-09"/>
2181
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
2182
+ </inertial>
2183
+ </link>
2184
+ <!-- Link stewart_link_rod_6 -->
2185
+ <link name="stewart_link_rod_6">
2186
+ <inertial>
2187
+ <origin xyz="-0.0424999 8.43768e-11 -1.88428e-09" rpy="0 0 0"/>
2188
+ <mass value="0.00503424"/>
2189
+ <inertia ixx="2.63976e-08" ixy="-3.69517e-13" ixz="7.12534e-14" iyy="3.65211e-06" iyz="5.21041e-14" izz="3.66473e-06"/>
2190
+ </inertial>
2191
+ <!-- Part stewart_link_rod_6 -->
2192
+ <visual>
2193
+ <origin xyz="-0.0425 0 0" rpy="-3.99045e-17 7.78637e-18 -7.13427e-17"/>
2194
+ <geometry>
2195
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
2196
+ </geometry>
2197
+ <material name="stewart_link_rod_6_material">
2198
+ <color rgba="0.811765 0.858824 0.898039 1"/>
2199
+ </material>
2200
+ </visual>
2201
+ <collision>
2202
+ <origin xyz="-0.0425 0 0" rpy="-3.99045e-17 7.78637e-18 -7.13427e-17"/>
2203
+ <geometry>
2204
+ <mesh filename="package://assets/stewart_link_rod.stl"/>
2205
+ </geometry>
2206
+ </collision>
2207
+ </link>
2208
+ <!-- Link passive_7_link_x -->
2209
+ <link name="passive_7_link_x">
2210
+ <inertial>
2211
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2212
+ <mass value="1e-09"/>
2213
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
2214
+ </inertial>
2215
+ </link>
2216
+ <!-- Link passive_7_link_y -->
2217
+ <link name="passive_7_link_y">
2218
+ <inertial>
2219
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2220
+ <mass value="1e-09"/>
2221
+ <inertia ixx="1e-09" ixy="0" ixz="0" iyy="1e-09" iyz="0" izz="1e-09"/>
2222
+ </inertial>
2223
+ </link>
2224
+ <!-- Link xl_330 -->
2225
+ <link name="xl_330">
2226
+ <inertial>
2227
+ <origin xyz="-0.0487051 -0.0237648 0.020658" rpy="0 0 0"/>
2228
+ <mass value="0.259259"/>
2229
+ <inertia ixx="0.000634651" ixy="3.65691e-05" ixz="-2.18087e-05" iyy="0.000587786" iyz="9.29467e-05" izz="0.000460283"/>
2230
+ </inertial>
2231
+ <!-- Part m12_fisheye_lens_1_8mm -->
2232
+ <visual>
2233
+ <origin xyz="-0.0387195 -0.0329451 -0.0240431" rpy="1.43435 -0.544115 2.16946"/>
2234
+ <geometry>
2235
+ <mesh filename="package://assets/m12_fisheye_lens_1_8mm.stl"/>
2236
+ </geometry>
2237
+ <material name="m12_fisheye_lens_1_8mm_material">
2238
+ <color rgba="0.498039 0.498039 0.498039 1"/>
2239
+ </material>
2240
+ </visual>
2241
+ <collision>
2242
+ <origin xyz="-0.0387195 -0.0329451 -0.0240431" rpy="1.43435 -0.544115 2.16946"/>
2243
+ <geometry>
2244
+ <mesh filename="package://assets/m12_fisheye_lens_1_8mm.stl"/>
2245
+ </geometry>
2246
+ </collision>
2247
+ <!-- Part stewart_link_ball_7 -->
2248
+ <visual>
2249
+ <origin xyz="0.0175286 0.0420772 0.0551172" rpy="-2.11906 0.116645 -2.61388"/>
2250
+ <geometry>
2251
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2252
+ </geometry>
2253
+ <material name="stewart_link_ball_7_material">
2254
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2255
+ </material>
2256
+ </visual>
2257
+ <collision>
2258
+ <origin xyz="0.0175286 0.0420772 0.0551172" rpy="-2.11906 0.116645 -2.61388"/>
2259
+ <geometry>
2260
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2261
+ </geometry>
2262
+ </collision>
2263
+ <!-- Part big_lens_d40 -->
2264
+ <visual>
2265
+ <origin xyz="-0.0262968 -0.0511554 -0.0373805" rpy="1.43435 -0.544115 2.16946"/>
2266
+ <geometry>
2267
+ <mesh filename="package://assets/big_lens_d40.stl"/>
2268
+ </geometry>
2269
+ <material name="big_lens_d40_material">
2270
+ <color rgba="0.439216 0.47451 0.501961 0.301961"/>
2271
+ </material>
2272
+ </visual>
2273
+ <collision>
2274
+ <origin xyz="-0.0262968 -0.0511554 -0.0373805" rpy="1.43435 -0.544115 2.16946"/>
2275
+ <geometry>
2276
+ <mesh filename="package://assets/big_lens_d40.stl"/>
2277
+ </geometry>
2278
+ </collision>
2279
+ <!-- Part neck_reference_3dprint -->
2280
+ <visual>
2281
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2282
+ <geometry>
2283
+ <mesh filename="package://assets/neck_reference_3dprint.stl"/>
2284
+ </geometry>
2285
+ <material name="neck_reference_3dprint_material">
2286
+ <color rgba="0.901961 0.901961 0.901961 1"/>
2287
+ </material>
2288
+ </visual>
2289
+ <collision>
2290
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2291
+ <geometry>
2292
+ <mesh filename="package://assets/neck_reference_3dprint.stl"/>
2293
+ </geometry>
2294
+ </collision>
2295
+ <!-- Part head_back_3dprint -->
2296
+ <visual>
2297
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2298
+ <geometry>
2299
+ <mesh filename="package://assets/head_back_3dprint.stl"/>
2300
+ </geometry>
2301
+ <material name="head_back_3dprint_material">
2302
+ <color rgba="1 1 1 1"/>
2303
+ </material>
2304
+ </visual>
2305
+ <collision>
2306
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2307
+ <geometry>
2308
+ <mesh filename="package://assets/head_back_3dprint.stl"/>
2309
+ </geometry>
2310
+ </collision>
2311
+ <!-- Part arducam -->
2312
+ <visual>
2313
+ <origin xyz="-0.045905 -0.0448628 -0.0036254" rpy="-1.79194 1.01151 1.9102"/>
2314
+ <geometry>
2315
+ <mesh filename="package://assets/arducam.stl"/>
2316
+ </geometry>
2317
+ <material name="arducam_material">
2318
+ <color rgba="0.498039 0.498039 0.498039 1"/>
2319
+ </material>
2320
+ </visual>
2321
+ <collision>
2322
+ <origin xyz="-0.045905 -0.0448628 -0.0036254" rpy="-1.79194 1.01151 1.9102"/>
2323
+ <geometry>
2324
+ <mesh filename="package://assets/arducam.stl"/>
2325
+ </geometry>
2326
+ </collision>
2327
+ <!-- Part pp01102_arducam_carter -->
2328
+ <visual>
2329
+ <origin xyz="-0.0311515 -0.0518836 0.00154345" rpy="1.79194 -1.01151 -1.23139"/>
2330
+ <geometry>
2331
+ <mesh filename="package://assets/pp01102_arducam_carter.stl"/>
2332
+ </geometry>
2333
+ <material name="pp01102_arducam_carter_material">
2334
+ <color rgba="0.301961 0.301961 0.301961 1"/>
2335
+ </material>
2336
+ </visual>
2337
+ <collision>
2338
+ <origin xyz="-0.0311515 -0.0518836 0.00154345" rpy="1.79194 -1.01151 -1.23139"/>
2339
+ <geometry>
2340
+ <mesh filename="package://assets/pp01102_arducam_carter.stl"/>
2341
+ </geometry>
2342
+ </collision>
2343
+ <!-- Part antenna_holder_l_3dprint -->
2344
+ <visual>
2345
+ <origin xyz="-0.0536682 -0.0188765 0.0257182" rpy="1.79194 -1.01151 -1.23139"/>
2346
+ <geometry>
2347
+ <mesh filename="package://assets/antenna_holder_l_3dprint.stl"/>
2348
+ </geometry>
2349
+ <material name="antenna_holder_l_3dprint_material">
2350
+ <color rgba="0.498039 0.498039 0.498039 1"/>
2351
+ </material>
2352
+ </visual>
2353
+ <collision>
2354
+ <origin xyz="-0.0536682 -0.0188765 0.0257182" rpy="1.79194 -1.01151 -1.23139"/>
2355
+ <geometry>
2356
+ <mesh filename="package://assets/antenna_holder_l_3dprint.stl"/>
2357
+ </geometry>
2358
+ </collision>
2359
+ <!-- Part stewart_link_ball_8 -->
2360
+ <visual>
2361
+ <origin xyz="-0.00630385 -0.00639493 0.0739606" rpy="-2.90143 1.05953 -0.832675"/>
2362
+ <geometry>
2363
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2364
+ </geometry>
2365
+ <material name="stewart_link_ball_8_material">
2366
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2367
+ </material>
2368
+ </visual>
2369
+ <collision>
2370
+ <origin xyz="-0.00630385 -0.00639493 0.0739606" rpy="-2.90143 1.05953 -0.832675"/>
2371
+ <geometry>
2372
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2373
+ </geometry>
2374
+ </collision>
2375
+ <!-- Part lens_cap_d30_3dprint -->
2376
+ <visual>
2377
+ <origin xyz="-0.0536562 -0.018894 0.0257054" rpy="1.79194 -1.01151 -1.23139"/>
2378
+ <geometry>
2379
+ <mesh filename="package://assets/lens_cap_d30_3dprint.stl"/>
2380
+ </geometry>
2381
+ <material name="lens_cap_d30_3dprint_material">
2382
+ <color rgba="0.0980392 0.0980392 0.0980392 1"/>
2383
+ </material>
2384
+ </visual>
2385
+ <collision>
2386
+ <origin xyz="-0.0536562 -0.018894 0.0257054" rpy="1.79194 -1.01151 -1.23139"/>
2387
+ <geometry>
2388
+ <mesh filename="package://assets/lens_cap_d30_3dprint.stl"/>
2389
+ </geometry>
2390
+ </collision>
2391
+ <!-- Part lens_cap_d40_3dprint -->
2392
+ <visual>
2393
+ <origin xyz="-0.0536391 -0.0189191 0.025687" rpy="1.79194 -1.01151 -1.23139"/>
2394
+ <geometry>
2395
+ <mesh filename="package://assets/lens_cap_d40_3dprint.stl"/>
2396
+ </geometry>
2397
+ <material name="lens_cap_d40_3dprint_material">
2398
+ <color rgba="0.0980392 0.0980392 0.0980392 1"/>
2399
+ </material>
2400
+ </visual>
2401
+ <collision>
2402
+ <origin xyz="-0.0536391 -0.0189191 0.025687" rpy="1.79194 -1.01151 -1.23139"/>
2403
+ <geometry>
2404
+ <mesh filename="package://assets/lens_cap_d40_3dprint.stl"/>
2405
+ </geometry>
2406
+ </collision>
2407
+ <!-- Part antenna_holder_r_3dprint -->
2408
+ <visual>
2409
+ <origin xyz="-0.0536682 -0.0188765 0.0257182" rpy="1.79194 -1.01151 -1.23139"/>
2410
+ <geometry>
2411
+ <mesh filename="package://assets/antenna_holder_r_3dprint.stl"/>
2412
+ </geometry>
2413
+ <material name="antenna_holder_r_3dprint_material">
2414
+ <color rgba="0.498039 0.498039 0.498039 1"/>
2415
+ </material>
2416
+ </visual>
2417
+ <collision>
2418
+ <origin xyz="-0.0536682 -0.0188765 0.0257182" rpy="1.79194 -1.01151 -1.23139"/>
2419
+ <geometry>
2420
+ <mesh filename="package://assets/antenna_holder_r_3dprint.stl"/>
2421
+ </geometry>
2422
+ </collision>
2423
+ <!-- Part stewart_link_ball_9 -->
2424
+ <visual>
2425
+ <origin xyz="0.0150556 0.0490816 0.0432504" rpy="-2.11906 0.116645 -2.61388"/>
2426
+ <geometry>
2427
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2428
+ </geometry>
2429
+ <material name="stewart_link_ball_9_material">
2430
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2431
+ </material>
2432
+ </visual>
2433
+ <collision>
2434
+ <origin xyz="0.0150556 0.0490816 0.0432504" rpy="-2.11906 0.116645 -2.61388"/>
2435
+ <geometry>
2436
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2437
+ </geometry>
2438
+ </collision>
2439
+ <!-- Part small_lens_d30 -->
2440
+ <visual>
2441
+ <origin xyz="-0.0244054 -0.0696173 0.0280123" rpy="1.43435 -0.544115 2.16946"/>
2442
+ <geometry>
2443
+ <mesh filename="package://assets/small_lens_d30.stl"/>
2444
+ </geometry>
2445
+ <material name="small_lens_d30_material">
2446
+ <color rgba="0.439216 0.47451 0.501961 0.301961"/>
2447
+ </material>
2448
+ </visual>
2449
+ <collision>
2450
+ <origin xyz="-0.0244054 -0.0696173 0.0280123" rpy="1.43435 -0.544115 2.16946"/>
2451
+ <geometry>
2452
+ <mesh filename="package://assets/small_lens_d30.stl"/>
2453
+ </geometry>
2454
+ </collision>
2455
+ <!-- Part stewart_link_ball_10 -->
2456
+ <visual>
2457
+ <origin xyz="-0.0109132 -0.00132777 0.0861703" rpy="-2.90143 1.05953 -0.832675"/>
2458
+ <geometry>
2459
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2460
+ </geometry>
2461
+ <material name="stewart_link_ball_10_material">
2462
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2463
+ </material>
2464
+ </visual>
2465
+ <collision>
2466
+ <origin xyz="-0.0109132 -0.00132777 0.0861703" rpy="-2.90143 1.05953 -0.832675"/>
2467
+ <geometry>
2468
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2469
+ </geometry>
2470
+ </collision>
2471
+ <!-- Part stewart_link_ball_11 -->
2472
+ <visual>
2473
+ <origin xyz="-0.0215 0.0366458 0.00104087" rpy="0.11668 0.0244934 -1.04022"/>
2474
+ <geometry>
2475
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2476
+ </geometry>
2477
+ <material name="stewart_link_ball_11_material">
2478
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2479
+ </material>
2480
+ </visual>
2481
+ <collision>
2482
+ <origin xyz="-0.0215 0.0366458 0.00104087" rpy="0.11668 0.0244934 -1.04022"/>
2483
+ <geometry>
2484
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2485
+ </geometry>
2486
+ </collision>
2487
+ <!-- Part glasses_dolder_3dprint -->
2488
+ <visual>
2489
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2490
+ <geometry>
2491
+ <mesh filename="package://assets/glasses_dolder_3dprint.stl"/>
2492
+ </geometry>
2493
+ <material name="glasses_dolder_3dprint_material">
2494
+ <color rgba="0.196078 0.196078 0.196078 1"/>
2495
+ </material>
2496
+ </visual>
2497
+ <collision>
2498
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2499
+ <geometry>
2500
+ <mesh filename="package://assets/glasses_dolder_3dprint.stl"/>
2501
+ </geometry>
2502
+ </collision>
2503
+ <!-- Part head_front_3dprint -->
2504
+ <visual>
2505
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2506
+ <geometry>
2507
+ <mesh filename="package://assets/head_front_3dprint.stl"/>
2508
+ </geometry>
2509
+ <material name="head_front_3dprint_material">
2510
+ <color rgba="1 1 1 1"/>
2511
+ </material>
2512
+ </visual>
2513
+ <collision>
2514
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2515
+ <geometry>
2516
+ <mesh filename="package://assets/head_front_3dprint.stl"/>
2517
+ </geometry>
2518
+ </collision>
2519
+ <!-- Part head_mic_3dprint -->
2520
+ <visual>
2521
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2522
+ <geometry>
2523
+ <mesh filename="package://assets/head_mic_3dprint.stl"/>
2524
+ </geometry>
2525
+ <material name="head_mic_3dprint_material">
2526
+ <color rgba="1 1 1 1"/>
2527
+ </material>
2528
+ </visual>
2529
+ <collision>
2530
+ <origin xyz="-0.0535717 -0.0190178 0.0256147" rpy="1.79194 -1.01151 -1.23139"/>
2531
+ <geometry>
2532
+ <mesh filename="package://assets/head_mic_3dprint.stl"/>
2533
+ </geometry>
2534
+ </collision>
2535
+ <!-- Part m12_fisheye_lens_1_8mm_2 -->
2536
+ <visual>
2537
+ <origin xyz="-0.0272066 -0.0655112 0.0310197" rpy="1.43435 -0.544115 2.16946"/>
2538
+ <geometry>
2539
+ <mesh filename="package://assets/m12_fisheye_lens_1_8mm.stl"/>
2540
+ </geometry>
2541
+ <material name="m12_fisheye_lens_1_8mm_2_material">
2542
+ <color rgba="0.498039 0.498039 0.498039 1"/>
2543
+ </material>
2544
+ </visual>
2545
+ <collision>
2546
+ <origin xyz="-0.0272066 -0.0655112 0.0310197" rpy="1.43435 -0.544115 2.16946"/>
2547
+ <geometry>
2548
+ <mesh filename="package://assets/m12_fisheye_lens_1_8mm.stl"/>
2549
+ </geometry>
2550
+ </collision>
2551
+ <!-- Part stewart_link_ball_12 -->
2552
+ <visual>
2553
+ <origin xyz="-0.0285824 0.0487174 0.00138374" rpy="0.11668 0.0244934 -1.04022"/>
2554
+ <geometry>
2555
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2556
+ </geometry>
2557
+ <material name="stewart_link_ball_12_material">
2558
+ <color rgba="0.439216 0.47451 0.501961 1"/>
2559
+ </material>
2560
+ </visual>
2561
+ <collision>
2562
+ <origin xyz="-0.0285824 0.0487174 0.00138374" rpy="0.11668 0.0244934 -1.04022"/>
2563
+ <geometry>
2564
+ <mesh filename="package://assets/stewart_link_ball__2.stl"/>
2565
+ </geometry>
2566
+ </collision>
2567
+ <!-- Part phs_1_7x20_5_dc10_2_8 -->
2568
+ <visual>
2569
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2570
+ <geometry>
2571
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
2572
+ </geometry>
2573
+ <material name="phs_1_7x20_5_dc10_2_8_material">
2574
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2575
+ </material>
2576
+ </visual>
2577
+ <collision>
2578
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2579
+ <geometry>
2580
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
2581
+ </geometry>
2582
+ </collision>
2583
+ <!-- Part dc15_a01_case_b_dummy_8 -->
2584
+ <visual>
2585
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2586
+ <geometry>
2587
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
2588
+ </geometry>
2589
+ <material name="dc15_a01_case_b_dummy_8_material">
2590
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2591
+ </material>
2592
+ </visual>
2593
+ <collision>
2594
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2595
+ <geometry>
2596
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
2597
+ </geometry>
2598
+ </collision>
2599
+ <!-- Part dc15_a01_case_m_dummy_8 -->
2600
+ <visual>
2601
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2602
+ <geometry>
2603
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
2604
+ </geometry>
2605
+ <material name="dc15_a01_case_m_dummy_8_material">
2606
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2607
+ </material>
2608
+ </visual>
2609
+ <collision>
2610
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2611
+ <geometry>
2612
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
2613
+ </geometry>
2614
+ </collision>
2615
+ <!-- Part dc15_a01_led_cap2_dummy_8 -->
2616
+ <visual>
2617
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2618
+ <geometry>
2619
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
2620
+ </geometry>
2621
+ <material name="dc15_a01_led_cap2_dummy_8_material">
2622
+ <color rgba="0.87451 0.447059 0.317647 1"/>
2623
+ </material>
2624
+ </visual>
2625
+ <collision>
2626
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2627
+ <geometry>
2628
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
2629
+ </geometry>
2630
+ </collision>
2631
+ <!-- Part bts2_m2_6x8_8 -->
2632
+ <visual>
2633
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2634
+ <geometry>
2635
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
2636
+ </geometry>
2637
+ <material name="bts2_m2_6x8_8_material">
2638
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2639
+ </material>
2640
+ </visual>
2641
+ <collision>
2642
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2643
+ <geometry>
2644
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
2645
+ </geometry>
2646
+ </collision>
2647
+ <!-- Part dc15_a01_case_f_dummy_8 -->
2648
+ <visual>
2649
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2650
+ <geometry>
2651
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
2652
+ </geometry>
2653
+ <material name="dc15_a01_case_f_dummy_8_material">
2654
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2655
+ </material>
2656
+ </visual>
2657
+ <collision>
2658
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2659
+ <geometry>
2660
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
2661
+ </geometry>
2662
+ </collision>
2663
+ <!-- Part b3b_eh_1_8 -->
2664
+ <visual>
2665
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2666
+ <geometry>
2667
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
2668
+ </geometry>
2669
+ <material name="b3b_eh_1_8_material">
2670
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2671
+ </material>
2672
+ </visual>
2673
+ <collision>
2674
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2675
+ <geometry>
2676
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
2677
+ </geometry>
2678
+ </collision>
2679
+ <!-- Part b3b_eh_8 -->
2680
+ <visual>
2681
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2682
+ <geometry>
2683
+ <mesh filename="package://assets/b3b_eh.stl"/>
2684
+ </geometry>
2685
+ <material name="b3b_eh_8_material">
2686
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2687
+ </material>
2688
+ </visual>
2689
+ <collision>
2690
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2691
+ <geometry>
2692
+ <mesh filename="package://assets/b3b_eh.stl"/>
2693
+ </geometry>
2694
+ </collision>
2695
+ <!-- Part phs_1_7x20_5_dc10_3_8 -->
2696
+ <visual>
2697
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2698
+ <geometry>
2699
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
2700
+ </geometry>
2701
+ <material name="phs_1_7x20_5_dc10_3_8_material">
2702
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2703
+ </material>
2704
+ </visual>
2705
+ <collision>
2706
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2707
+ <geometry>
2708
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
2709
+ </geometry>
2710
+ </collision>
2711
+ <!-- Part phs_1_7x20_5_dc10_1_8 -->
2712
+ <visual>
2713
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2714
+ <geometry>
2715
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
2716
+ </geometry>
2717
+ <material name="phs_1_7x20_5_dc10_1_8_material">
2718
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2719
+ </material>
2720
+ </visual>
2721
+ <collision>
2722
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2723
+ <geometry>
2724
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
2725
+ </geometry>
2726
+ </collision>
2727
+ <!-- Part phs_1_7x20_5_dc10_8 -->
2728
+ <visual>
2729
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2730
+ <geometry>
2731
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
2732
+ </geometry>
2733
+ <material name="phs_1_7x20_5_dc10_8_material">
2734
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2735
+ </material>
2736
+ </visual>
2737
+ <collision>
2738
+ <origin xyz="-0.0737021 -0.0344474 0.0784637" rpy="1.36569 0.508471 2.10225"/>
2739
+ <geometry>
2740
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
2741
+ </geometry>
2742
+ </collision>
2743
+ <!-- Part phs_1_7x20_5_dc10_2_9 -->
2744
+ <visual>
2745
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2746
+ <geometry>
2747
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
2748
+ </geometry>
2749
+ <material name="phs_1_7x20_5_dc10_2_9_material">
2750
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2751
+ </material>
2752
+ </visual>
2753
+ <collision>
2754
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2755
+ <geometry>
2756
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_2.stl"/>
2757
+ </geometry>
2758
+ </collision>
2759
+ <!-- Part dc15_a01_case_b_dummy_9 -->
2760
+ <visual>
2761
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2762
+ <geometry>
2763
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
2764
+ </geometry>
2765
+ <material name="dc15_a01_case_b_dummy_9_material">
2766
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2767
+ </material>
2768
+ </visual>
2769
+ <collision>
2770
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2771
+ <geometry>
2772
+ <mesh filename="package://assets/dc15_a01_case_b_dummy.stl"/>
2773
+ </geometry>
2774
+ </collision>
2775
+ <!-- Part dc15_a01_case_m_dummy_9 -->
2776
+ <visual>
2777
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2778
+ <geometry>
2779
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
2780
+ </geometry>
2781
+ <material name="dc15_a01_case_m_dummy_9_material">
2782
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2783
+ </material>
2784
+ </visual>
2785
+ <collision>
2786
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2787
+ <geometry>
2788
+ <mesh filename="package://assets/dc15_a01_case_m_dummy.stl"/>
2789
+ </geometry>
2790
+ </collision>
2791
+ <!-- Part dc15_a01_led_cap2_dummy_9 -->
2792
+ <visual>
2793
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2794
+ <geometry>
2795
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
2796
+ </geometry>
2797
+ <material name="dc15_a01_led_cap2_dummy_9_material">
2798
+ <color rgba="0.87451 0.447059 0.317647 1"/>
2799
+ </material>
2800
+ </visual>
2801
+ <collision>
2802
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2803
+ <geometry>
2804
+ <mesh filename="package://assets/dc15_a01_led_cap2_dummy.stl"/>
2805
+ </geometry>
2806
+ </collision>
2807
+ <!-- Part bts2_m2_6x8_9 -->
2808
+ <visual>
2809
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2810
+ <geometry>
2811
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
2812
+ </geometry>
2813
+ <material name="bts2_m2_6x8_9_material">
2814
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2815
+ </material>
2816
+ </visual>
2817
+ <collision>
2818
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2819
+ <geometry>
2820
+ <mesh filename="package://assets/bts2_m2_6x8.stl"/>
2821
+ </geometry>
2822
+ </collision>
2823
+ <!-- Part dc15_a01_case_f_dummy_9 -->
2824
+ <visual>
2825
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2826
+ <geometry>
2827
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
2828
+ </geometry>
2829
+ <material name="dc15_a01_case_f_dummy_9_material">
2830
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2831
+ </material>
2832
+ </visual>
2833
+ <collision>
2834
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2835
+ <geometry>
2836
+ <mesh filename="package://assets/dc15_a01_case_f_dummy.stl"/>
2837
+ </geometry>
2838
+ </collision>
2839
+ <!-- Part b3b_eh_1_9 -->
2840
+ <visual>
2841
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2842
+ <geometry>
2843
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
2844
+ </geometry>
2845
+ <material name="b3b_eh_1_9_material">
2846
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2847
+ </material>
2848
+ </visual>
2849
+ <collision>
2850
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2851
+ <geometry>
2852
+ <mesh filename="package://assets/b3b_eh_1.stl"/>
2853
+ </geometry>
2854
+ </collision>
2855
+ <!-- Part b3b_eh_9 -->
2856
+ <visual>
2857
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2858
+ <geometry>
2859
+ <mesh filename="package://assets/b3b_eh.stl"/>
2860
+ </geometry>
2861
+ <material name="b3b_eh_9_material">
2862
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2863
+ </material>
2864
+ </visual>
2865
+ <collision>
2866
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2867
+ <geometry>
2868
+ <mesh filename="package://assets/b3b_eh.stl"/>
2869
+ </geometry>
2870
+ </collision>
2871
+ <!-- Part phs_1_7x20_5_dc10_3_9 -->
2872
+ <visual>
2873
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2874
+ <geometry>
2875
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
2876
+ </geometry>
2877
+ <material name="phs_1_7x20_5_dc10_3_9_material">
2878
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2879
+ </material>
2880
+ </visual>
2881
+ <collision>
2882
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2883
+ <geometry>
2884
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_3.stl"/>
2885
+ </geometry>
2886
+ </collision>
2887
+ <!-- Part phs_1_7x20_5_dc10_1_9 -->
2888
+ <visual>
2889
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2890
+ <geometry>
2891
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
2892
+ </geometry>
2893
+ <material name="phs_1_7x20_5_dc10_1_9_material">
2894
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2895
+ </material>
2896
+ </visual>
2897
+ <collision>
2898
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2899
+ <geometry>
2900
+ <mesh filename="package://assets/phs_1_7x20_5_dc10_1.stl"/>
2901
+ </geometry>
2902
+ </collision>
2903
+ <!-- Part phs_1_7x20_5_dc10_9 -->
2904
+ <visual>
2905
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2906
+ <geometry>
2907
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
2908
+ </geometry>
2909
+ <material name="phs_1_7x20_5_dc10_9_material">
2910
+ <color rgba="0.262745 0.282353 0.301961 1"/>
2911
+ </material>
2912
+ </visual>
2913
+ <collision>
2914
+ <origin xyz="-0.0909991 0.0145437 -0.0045371" rpy="0.0684236 1.39152 0.701924"/>
2915
+ <geometry>
2916
+ <mesh filename="package://assets/phs_1_7x20_5_dc10.stl"/>
2917
+ </geometry>
2918
+ </collision>
2919
+ </link>
2920
+ <!-- Frame closing_1_2 (dummy link + fixed joint) -->
2921
+ <link name="closing_1_2">
2922
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2923
+ <inertial>
2924
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2925
+ <mass value="1e-9"/>
2926
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
2927
+ </inertial>
2928
+ </link>
2929
+ <joint name="closing_1_2_frame" type="fixed">
2930
+ <origin xyz="0.00768882 -0.0217774 0.0368953" rpy="-2.90143 1.05953 -0.832675"/>
2931
+ <parent link="xl_330"/>
2932
+ <child link="closing_1_2"/>
2933
+ <axis xyz="0 0 0"/>
2934
+ </joint>
2935
+ <!-- Frame closing_2_2 (dummy link + fixed joint) -->
2936
+ <link name="closing_2_2">
2937
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2938
+ <inertial>
2939
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2940
+ <mass value="1e-9"/>
2941
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
2942
+ </inertial>
2943
+ </link>
2944
+ <joint name="closing_2_2_frame" type="fixed">
2945
+ <origin xyz="0.00307947 -0.0167102 0.049105" rpy="-2.90143 1.05953 -0.832675"/>
2946
+ <parent link="xl_330"/>
2947
+ <child link="closing_2_2"/>
2948
+ <axis xyz="0 0 0"/>
2949
+ </joint>
2950
+ <!-- Frame closing_3_2 (dummy link + fixed joint) -->
2951
+ <link name="closing_3_2">
2952
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2953
+ <inertial>
2954
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2955
+ <mass value="1e-9"/>
2956
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
2957
+ </inertial>
2958
+ </link>
2959
+ <joint name="closing_3_2_frame" type="fixed">
2960
+ <origin xyz="-0.0189403 0.0208215 0.050171" rpy="-2.92045 -1.01151 -1.23139"/>
2961
+ <parent link="xl_330"/>
2962
+ <child link="closing_3_2"/>
2963
+ <axis xyz="0 0 0"/>
2964
+ </joint>
2965
+ <!-- Frame closing_4_2 (dummy link + fixed joint) -->
2966
+ <link name="closing_4_2">
2967
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2968
+ <inertial>
2969
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2970
+ <mass value="1e-9"/>
2971
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
2972
+ </inertial>
2973
+ </link>
2974
+ <joint name="closing_4_2_frame" type="fixed">
2975
+ <origin xyz="-0.0214133 0.0278259 0.0383042" rpy="-2.92045 -1.01151 -1.23139"/>
2976
+ <parent link="xl_330"/>
2977
+ <child link="closing_4_2"/>
2978
+ <axis xyz="0 0 0"/>
2979
+ </joint>
2980
+ <!-- Frame closing_5_2 (dummy link + fixed joint) -->
2981
+ <link name="closing_5_2">
2982
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2983
+ <inertial>
2984
+ <origin xyz="0 0 0" rpy="0 0 0"/>
2985
+ <mass value="1e-9"/>
2986
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
2987
+ </inertial>
2988
+ </link>
2989
+ <joint name="closing_5_2_frame" type="fixed">
2990
+ <origin xyz="-0.00708235 0.0120716 0.000342873" rpy="-3.11693 -0.116645 0.52771"/>
2991
+ <parent link="xl_330"/>
2992
+ <child link="closing_5_2"/>
2993
+ <axis xyz="0 0 0"/>
2994
+ </joint>
2995
+ <!-- Frame camera_optical (dummy link + fixed joint) -->
2996
+ <link name="camera_optical">
2997
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
2998
+ <inertial>
2999
+ <origin xyz="0 0 0" rpy="0 0 0"/>
3000
+ <mass value="1e-9"/>
3001
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
3002
+ </inertial>
3003
+ </link>
3004
+ <joint name="camera_optical_frame" type="fixed">
3005
+ <origin xyz="-0.0321159 -0.05047 0.00257878" rpy="2.92045 1.01151 1.9102"/>
3006
+ <parent link="xl_330"/>
3007
+ <child link="camera_optical"/>
3008
+ <axis xyz="0 0 0"/>
3009
+ </joint>
3010
+ <!-- Frame camera (dummy link + fixed joint) -->
3011
+ <link name="camera">
3012
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
3013
+ <inertial>
3014
+ <origin xyz="0 0 0" rpy="0 0 0"/>
3015
+ <mass value="1e-9"/>
3016
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
3017
+ </inertial>
3018
+ </link>
3019
+ <joint name="camera_frame" type="fixed">
3020
+ <origin xyz="-0.0321159 -0.05047 0.00257878" rpy="1.70724 0.544115 -0.97213"/>
3021
+ <parent link="xl_330"/>
3022
+ <child link="camera"/>
3023
+ <axis xyz="0 0 0"/>
3024
+ </joint>
3025
+ <!-- Frame head (dummy link + fixed joint) -->
3026
+ <link name="head">
3027
+ <origin xyz="0 0 0" rpy="0 -0 0"/>
3028
+ <inertial>
3029
+ <origin xyz="0 0 0" rpy="0 0 0"/>
3030
+ <mass value="1e-9"/>
3031
+ <inertia ixx="0" ixy="0" ixz="0" iyy="0" iyz="0" izz="0"/>
3032
+ </inertial>
3033
+ </link>
3034
+ <joint name="head_frame" type="fixed">
3035
+ <origin xyz="-0.00611127 0.00370522 0.0291364" rpy="1.70724 0.544115 -0.97213"/>
3036
+ <parent link="xl_330"/>
3037
+ <child link="head"/>
3038
+ <axis xyz="0 0 0"/>
3039
+ </joint>
3040
+ <!-- Link dc15_a01_horn_dummy_7 -->
3041
+ <link name="dc15_a01_horn_dummy_7">
3042
+ <inertial>
3043
+ <origin xyz="2.09613e-05 -0.0378463 -0.00866471" rpy="0 0 0"/>
3044
+ <mass value="0.0105926"/>
3045
+ <inertia ixx="2.69314e-05" ixy="2.22219e-09" ixz="3.62599e-10" iyy="2.98203e-07" iyz="-6.63107e-07" izz="2.68876e-05"/>
3046
+ </inertial>
3047
+ <!-- Part antenna -->
3048
+ <visual>
3049
+ <origin xyz="-5.62397e-15 -0.0588 -0.0103" rpy="2.61184e-15 -5.46098e-16 -1.00788e-13"/>
3050
+ <geometry>
3051
+ <mesh filename="package://assets/antenna.stl"/>
3052
+ </geometry>
3053
+ <material name="antenna_material">
3054
+ <color rgba="0 0 0 1"/>
3055
+ </material>
3056
+ </visual>
3057
+ <collision>
3058
+ <origin xyz="-5.62397e-15 -0.0588 -0.0103" rpy="2.61184e-15 -5.46098e-16 -1.00788e-13"/>
3059
+ <geometry>
3060
+ <mesh filename="package://assets/antenna.stl"/>
3061
+ </geometry>
3062
+ </collision>
3063
+ <!-- Part dc15_a01_horn_dummy_8 -->
3064
+ <visual>
3065
+ <origin xyz="6.93889e-18 5.55112e-17 0.0065" rpy="-1.5708 1.35984e-15 -9.89527e-14"/>
3066
+ <geometry>
3067
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
3068
+ </geometry>
3069
+ <material name="dc15_a01_horn_dummy_8_material">
3070
+ <color rgba="0.262745 0.282353 0.301961 1"/>
3071
+ </material>
3072
+ </visual>
3073
+ <collision>
3074
+ <origin xyz="6.93889e-18 5.55112e-17 0.0065" rpy="-1.5708 1.35984e-15 -9.89527e-14"/>
3075
+ <geometry>
3076
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
3077
+ </geometry>
3078
+ </collision>
3079
+ <!-- Part antenna_interface_3dprint -->
3080
+ <visual>
3081
+ <origin xyz="1.21431e-17 0 -1.38778e-17" rpy="-1.5708 -2.66339e-15 3.14159"/>
3082
+ <geometry>
3083
+ <mesh filename="package://assets/antenna_interface_3dprint.stl"/>
3084
+ </geometry>
3085
+ <material name="antenna_interface_3dprint_material">
3086
+ <color rgba="0.713725 0.760784 0.8 1"/>
3087
+ </material>
3088
+ </visual>
3089
+ <collision>
3090
+ <origin xyz="1.21431e-17 0 -1.38778e-17" rpy="-1.5708 -2.66339e-15 3.14159"/>
3091
+ <geometry>
3092
+ <mesh filename="package://assets/antenna_interface_3dprint.stl"/>
3093
+ </geometry>
3094
+ </collision>
3095
+ <!-- Part antenna_body_3dprint -->
3096
+ <visual>
3097
+ <origin xyz="6.245e-17 5.55112e-17 -0.0028" rpy="-1.5708 -8.22849e-16 3.14159"/>
3098
+ <geometry>
3099
+ <mesh filename="package://assets/antenna_body_3dprint.stl"/>
3100
+ </geometry>
3101
+ <material name="antenna_body_3dprint_material">
3102
+ <color rgba="1 1 1 1"/>
3103
+ </material>
3104
+ </visual>
3105
+ <collision>
3106
+ <origin xyz="6.245e-17 5.55112e-17 -0.0028" rpy="-1.5708 -8.22849e-16 3.14159"/>
3107
+ <geometry>
3108
+ <mesh filename="package://assets/antenna_body_3dprint.stl"/>
3109
+ </geometry>
3110
+ </collision>
3111
+ </link>
3112
+ <!-- Joint from xl_330 to dc15_a01_horn_dummy_7 -->
3113
+ <joint name="right_antenna" type="revolute">
3114
+ <origin xyz="-0.0948524 0.0197779 -0.00445785" rpy="1.63922 1.39152 0.701924"/>
3115
+ <parent link="xl_330"/>
3116
+ <child link="dc15_a01_horn_dummy_7"/>
3117
+ <axis xyz="0 0 1"/>
3118
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
3119
+ </joint>
3120
+ <!-- Link dc15_a01_horn_dummy_8 -->
3121
+ <link name="dc15_a01_horn_dummy_8">
3122
+ <inertial>
3123
+ <origin xyz="2.09613e-05 -0.0378463 -0.00866471" rpy="0 0 0"/>
3124
+ <mass value="0.0105926"/>
3125
+ <inertia ixx="2.69314e-05" ixy="2.22219e-09" ixz="3.62599e-10" iyy="2.98203e-07" iyz="-6.63107e-07" izz="2.68876e-05"/>
3126
+ </inertial>
3127
+ <!-- Part dc15_a01_horn_dummy_9 -->
3128
+ <visual>
3129
+ <origin xyz="-3.46945e-18 0 0.0065" rpy="-1.5708 1.64947e-14 -2.17184e-13"/>
3130
+ <geometry>
3131
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
3132
+ </geometry>
3133
+ <material name="dc15_a01_horn_dummy_9_material">
3134
+ <color rgba="0.262745 0.282353 0.301961 1"/>
3135
+ </material>
3136
+ </visual>
3137
+ <collision>
3138
+ <origin xyz="-3.46945e-18 0 0.0065" rpy="-1.5708 1.64947e-14 -2.17184e-13"/>
3139
+ <geometry>
3140
+ <mesh filename="package://assets/dc15_a01_horn_dummy.stl"/>
3141
+ </geometry>
3142
+ </collision>
3143
+ <!-- Part antenna_body_3dprint_2 -->
3144
+ <visual>
3145
+ <origin xyz="4.68375e-17 2.77556e-17 -0.0028" rpy="-1.5708 4.94257e-15 3.14159"/>
3146
+ <geometry>
3147
+ <mesh filename="package://assets/antenna_body_3dprint.stl"/>
3148
+ </geometry>
3149
+ <material name="antenna_body_3dprint_2_material">
3150
+ <color rgba="1 1 1 1"/>
3151
+ </material>
3152
+ </visual>
3153
+ <collision>
3154
+ <origin xyz="4.68375e-17 2.77556e-17 -0.0028" rpy="-1.5708 4.94257e-15 3.14159"/>
3155
+ <geometry>
3156
+ <mesh filename="package://assets/antenna_body_3dprint.stl"/>
3157
+ </geometry>
3158
+ </collision>
3159
+ <!-- Part antenna_interface_3dprint_2 -->
3160
+ <visual>
3161
+ <origin xyz="-3.46945e-18 2.77556e-17 0" rpy="-1.5708 -1.91052e-14 3.14159"/>
3162
+ <geometry>
3163
+ <mesh filename="package://assets/antenna_interface_3dprint.stl"/>
3164
+ </geometry>
3165
+ <material name="antenna_interface_3dprint_2_material">
3166
+ <color rgba="0.713725 0.760784 0.8 1"/>
3167
+ </material>
3168
+ </visual>
3169
+ <collision>
3170
+ <origin xyz="-3.46945e-18 2.77556e-17 0" rpy="-1.5708 -1.91052e-14 3.14159"/>
3171
+ <geometry>
3172
+ <mesh filename="package://assets/antenna_interface_3dprint.stl"/>
3173
+ </geometry>
3174
+ </collision>
3175
+ <!-- Part antenna_2 -->
3176
+ <visual>
3177
+ <origin xyz="-1.27225e-14 -0.0588 -0.0103" rpy="1.38183e-15 -5.04473e-15 -2.17387e-13"/>
3178
+ <geometry>
3179
+ <mesh filename="package://assets/antenna.stl"/>
3180
+ </geometry>
3181
+ <material name="antenna_2_material">
3182
+ <color rgba="0 0 0 1"/>
3183
+ </material>
3184
+ </visual>
3185
+ <collision>
3186
+ <origin xyz="-1.27225e-14 -0.0588 -0.0103" rpy="1.38183e-15 -5.04473e-15 -2.17387e-13"/>
3187
+ <geometry>
3188
+ <mesh filename="package://assets/antenna.stl"/>
3189
+ </geometry>
3190
+ </collision>
3191
+ </link>
3192
+ <!-- Joint from xl_330 to dc15_a01_horn_dummy_8 -->
3193
+ <joint name="left_antenna" type="revolute">
3194
+ <origin xyz="-0.0764135 -0.0324475 0.0840224" rpy="2.93649 0.508471 2.10225"/>
3195
+ <parent link="xl_330"/>
3196
+ <child link="dc15_a01_horn_dummy_8"/>
3197
+ <axis xyz="0 0 1"/>
3198
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
3199
+ </joint>
3200
+ <!-- Joint from passive_7_link_y to xl_330 -->
3201
+ <joint name="passive_7_z" type="revolute">
3202
+ <origin xyz="0 0 0" rpy="-3.99045e-17 -7.78637e-18 7.13427e-17"/>
3203
+ <parent link="passive_7_link_y"/>
3204
+ <child link="xl_330"/>
3205
+ <axis xyz="0 0 1"/>
3206
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
3207
+ </joint>
3208
+ <!-- Joint from passive_7_link_x to passive_7_link_y -->
3209
+ <joint name="passive_7_y" type="revolute">
3210
+ <origin xyz="0 0 0" rpy="-3.99045e-17 -7.78637e-18 7.13427e-17"/>
3211
+ <parent link="passive_7_link_x"/>
3212
+ <child link="passive_7_link_y"/>
3213
+ <axis xyz="0 1 0"/>
3214
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
3215
+ </joint>
3216
+ <!-- Joint from stewart_link_rod_6 to passive_7_link_x -->
3217
+ <joint name="passive_7_x" type="revolute">
3218
+ <origin xyz="-0.085 1.38778e-17 6.93889e-18" rpy="3.14159 7.78637e-18 -7.13427e-17"/>
3219
+ <parent link="stewart_link_rod_6"/>
3220
+ <child link="passive_7_link_x"/>
3221
+ <axis xyz="1 0 0"/>
3222
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
3223
+ </joint>
3224
+ <!-- Joint from passive_6_link_y to stewart_link_rod_6 -->
3225
+ <joint name="passive_6_z" type="revolute">
3226
+ <origin xyz="6.93889e-18 0 6.93889e-18" rpy="-3.99045e-17 7.78637e-18 -7.13427e-17"/>
3227
+ <parent link="passive_6_link_y"/>
3228
+ <child link="stewart_link_rod_6"/>
3229
+ <axis xyz="0 0 1"/>
3230
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
3231
+ </joint>
3232
+ <!-- Joint from passive_6_link_x to passive_6_link_y -->
3233
+ <joint name="passive_6_y" type="revolute">
3234
+ <origin xyz="6.93889e-18 0 6.93889e-18" rpy="-3.99045e-17 7.78637e-18 -7.13427e-17"/>
3235
+ <parent link="passive_6_link_x"/>
3236
+ <child link="passive_6_link_y"/>
3237
+ <axis xyz="0 1 0"/>
3238
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
3239
+ </joint>
3240
+ <!-- Joint from dc15_a01_horn_dummy_6 to passive_6_link_x -->
3241
+ <joint name="passive_6_x" type="revolute">
3242
+ <origin xyz="0.04 5.55112e-17 0.007" rpy="3.0613 0.0882156 1.0381"/>
3243
+ <parent link="dc15_a01_horn_dummy_6"/>
3244
+ <child link="passive_6_link_x"/>
3245
+ <axis xyz="1 0 0"/>
3246
+ <limit effort="10" velocity="1e+08" lower="-3.141592653589793" upper="3.141592653589793"/>
3247
+ </joint>
3248
+ <!-- Joint from body_down_3dprint to dc15_a01_horn_dummy_6 -->
3249
+ <joint name="stewart_6" type="revolute">
3250
+ <origin xyz="0.0328112 -0.0304906 -0.0418333" rpy="1.5708 2.23981e-14 -2.0944"/>
3251
+ <parent link="body_down_3dprint"/>
3252
+ <child link="dc15_a01_horn_dummy_6"/>
3253
+ <axis xyz="0 0 1"/>
3254
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
3255
+ </joint>
3256
+ <!-- Joint from body_foot_3dprint to body_down_3dprint -->
3257
+ <joint name="yaw_body" type="revolute">
3258
+ <origin xyz="-2.45997e-07 6.93889e-18 0.0348" rpy="3.14159 1.34892e-14 -1.5708"/>
3259
+ <parent link="body_foot_3dprint"/>
3260
+ <child link="body_down_3dprint"/>
3261
+ <axis xyz="0 0 1"/>
3262
+ <limit effort="10" velocity="8" lower="-3.141592653589793" upper="3.141592653589793"/>
3263
+ </joint>
3264
+ <!-- Dummy Link head_oriented_yaw used for constraint setting in placo-kinematics -->
3265
+ <link name="dummy_torso_yaw">
3266
+ <visual>
3267
+ <geometry>
3268
+ <box size="0 0 0"/>
3269
+ </geometry>
3270
+ <material name="blue"/>
3271
+ </visual>
3272
+ </link>
3273
+ <!-- Joint from pp01071_turning_bowl to dc15_a01_case_b_dummy -->
3274
+ <joint name="dummy_yaw" type="fixed">
3275
+ <origin xyz="0 0 0" rpy="3.14 0 -1.57"/>
3276
+ <!-- <origin xyz="4.85723e-17 -5.60663e-19 0.0339" rpy="3.14159 -2.22045e-16 1.5708"/> -->
3277
+ <parent link="body_down_3dprint"/>
3278
+ <!-- <parent link="dc15_a01_case_b_dummy"/> -->
3279
+ <child link="dummy_torso_yaw"/>
3280
+ <axis xyz="0 0 1"/>
3281
+ </joint>
3282
+ </robot>