Device visualization (#14)

* add 3d visualization

* 完成在main中启动设备可视化

完成在main中启动设备可视化,并输出物料ID:mesh的对应关系resource_model

添加物料模型管理类,遍历物料与resource_model,完成TF数据收集

* 完成TF发布

* 修改模型方向,在yaml中添加变换属性

* 添加物料tf变化时,发送topic到前端

另外修改了物料初始化的方法,防止在tf还未发布时提前建立物料模型与发布话题

* 添加关节发布节点与物料可视化节点进入unilab

* 使用json启动plr与3D模型仿真

* 完成启动OT并联动rviz

* add 3d visualization

* 完成在main中启动设备可视化

完成在main中启动设备可视化,并输出物料ID:mesh的对应关系resource_model

添加物料模型管理类,遍历物料与resource_model,完成TF数据收集

* 完成TF发布

* 修改模型方向,在yaml中添加变换属性

* 添加物料tf变化时,发送topic到前端

另外修改了物料初始化的方法,防止在tf还未发布时提前建立物料模型与发布话题

* 添加关节发布节点与物料可视化节点进入unilab

* 使用json启动plr与3D模型仿真

* 完成启动OT并联动rviz

* 修复rviz位置问题,

修复rviz位置问题,
在无tf变动时减缓发送频率
在backend中添加物料跟随方法

* fix: running logic

* fix: running logic

* fix: missing ot

* 在main中直接初始化republisher和物料的mesh节点

* 将joint_republisher和resource_mesh_manager添加进 main_slave_run.py中

---------

Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>
This commit is contained in:
q434343
2025-05-06 09:37:57 +08:00
committed by GitHub
parent 752442cb37
commit a52133b7d0
53 changed files with 2654 additions and 25 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

View File

@@ -0,0 +1,22 @@
{
"fileName": "generic_labware_tube_10_75",
"related": [
"generic_labware_0.5ml_screw_cap_tube",
"generic_labware_0.5ml_tube_rack",
"generic_labware_12_well_plate",
"sarstedt_14x200mm_tube",
"sarstedt_18x200mm_tube",
"generic_labware_1ml_tube_rack",
"generic_labware_24_well_plate",
"generic_labware_2ml_screw_cap_tube",
"generic_labware_5ml_screw_cap_tube",
"generic_labware_6_well_plate",
"generic_labware_96_well_square",
"generic_labware_96_well_pcr_plate_round",
"generic_labware_framedtiprack",
"generic_labware_plate_lid",
"generic_labware_reservoir",
"generic_labware_tip_box",
"generic_labware_tube_10_75"
]
}

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" ?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="generic_labware_tube_10_75">
<link name='0_base_link'>
<visual name='visual'>
<geometry>
<mesh filename="meshes/0_base.stl"/>
</geometry>
<material name="clay" />
</visual>
</link>
</robot>

View File

@@ -0,0 +1,86 @@
{
"fileName": "tecan_nested_tip_rack",
"related": [
"tecan_techrom",
"tecan_holder_transfer_tool",
"tecan_fluent_9_grid_segment_cutout",
"tecan_fluent_centric_gripper",
"tecan_fluent_eccentric_gripper",
"tecan_evo100",
"tecan_fluent_mp_diti_nest_segment",
"tecan_fluent_4x100_trough",
"tecan_fluent_1080_extended",
"tecan_fluent_1_1_1000_trough",
"tecan_fluent_50ml_tube_runner_10_v2",
"tecan_fluent_15ml_tube_runner_16_v2",
"tecan_fluent_1_16_16_tube_runner",
"tecan_fluent_1.5ml_tube_runner_v2",
"tecan_fluent_1_24_10_tube_runner",
"tecan_fluent_1_24_13_tube_runner",
"tecan_fluent_3x320_reagent_trough_v2",
"tecan_fluent_32_tube_runner_v2",
"tecan_fluent_1_4_100_trough",
"tecan_fluent_2_grid_segment",
"tecan_fluent_2_4_100_trough_waste",
"tecan_fluent_3_grid_segment",
"tecan_fluent_nest_waste_segment_v2",
"tecan_fluent_320ml_reagent_trough",
"tecan_fluent_4_landscape_61mm_nest_segment",
"tecan_fluent_4_landscape_61mm_nest_segment_waste",
"tecan_fluent_4_landscape_7mm_nest_segment",
"tecan_fluent_4_landscape_7mm_nest_segment_waste",
"tecan_fluent_hotel_deck_4",
"tecan_fluent_480_extended",
"tecan_fluent_4x100_reagent_trough_v2",
"tecan_fluent_5_landscape_61mm_nest_segment",
"tecan_fluent_5_landscape_7mm_nest_segment",
"tecan_fluent_hotel_deck_5",
"tecan_fluent_6_grid_segment",
"tecan_fluent_nest_landscape_segment_v2",
"tecan_fluent_6_landscape_7mm_nest_segment",
"tecan_fluent_deck_segment_6_v2",
"tecan_fluent_fca_diti_segment_v2",
"tecan_fluent_6_nest_incubator",
"tecan_fluent_plate_nest",
"tecan_fluent_780_extended",
"tecan_fluent_plate_holder",
"tecan_fluent_8_grid_segment",
"tecan_fluent_8_grid_segment_evo",
"tecan_fluent_hotel_deck_9",
"tecan_carousel",
"tecan_carousel_stacker_10",
"tecan_carousel_stacker_25",
"tecan_carousel_stacker_6",
"tecan_fluent_coolheat_microplate_segment_v2",
"tecan_fluent_fca_diti_tray",
"tecan_fluent_trough_waste",
"tecan_fluent_id_left",
"tecan_fluent_id_middle",
"tecan_fluent_lower_6_grid_v2",
"tecan_fluent_mc384_nest",
"tecan_fluent_mca_44mm_nest",
"tecan_fluent_deck_segment_4_v2",
"tecan_fluent_mca_base_segment_384_v2",
"tecan_fluent_waste_module",
"tecan_fluent_reagent_block",
"tecan_fluent_tube_grippers",
"tecan_fluent_washstation_waste_v2",
"tecan_carrier_additive_trough_3_pce_max_100ml",
"tecan_carrier_384_well_mp_3_pos_accessible_roma",
"tecan_carrier_rack_3_diti_width_6",
"tecan_transport_box_diti_tray_1000ul",
"tecan_transport_box_diti_tray_200ul",
"tecan_magicprep_ngs_sample_deck",
"tecan_fluent_shelf_large",
"tecan_fluent_shelf_small",
"tecan_spacer_29_9_te_chrom",
"tecan_teshake_adapter_2",
"tecan_teshake_base",
"tecan_tevacs_base",
"tecan_tevacs_plate_park",
"tecan_tevacs_spacer",
"tecan_tevacs_vacuum",
"tecan_tip_box",
"tecan_nested_tip_rack"
]
}

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" ?>
<robot xmlns:xacro="http://www.ros.org/wiki/xacro" name="tecan_nested_tip_rack">
<link name='plate_link'>
<visual name='visual'>
<geometry>
<mesh filename="meshes/plate.stl"/>
</geometry>
<material name="clay" />
</visual>
</link>
</robot>

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB