update registry version & category

This commit is contained in:
Xuwznln
2025-07-19 01:29:59 +08:00
parent 58bf6496b6
commit 73f33c82db
21 changed files with 247 additions and 63 deletions

View File

@@ -1,4 +1,6 @@
serial: serial:
category:
- serial
class: class:
action_value_mappings: action_value_mappings:
auto-handle_serial_request: auto-handle_serial_request:
@@ -76,6 +78,7 @@ serial:
module: unilabos.ros.nodes.presets.serial_node:ROS2SerialNode module: unilabos.ros.nodes.presets.serial_node:ROS2SerialNode
status_types: {} status_types: {}
type: ros2 type: ros2
config_info: []
description: Serial communication interface, used when sharing same serial port description: Serial communication interface, used when sharing same serial port
for multiple devices for multiple devices
handles: [] handles: []
@@ -100,4 +103,4 @@ serial:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
camera: camera:
category:
- camera
class: class:
action_value_mappings: action_value_mappings:
auto-destroy_node: auto-destroy_node:
@@ -44,11 +46,10 @@ camera:
module: unilabos.ros.nodes.presets.camera:VideoPublisher module: unilabos.ros.nodes.presets.camera:VideoPublisher
status_types: {} status_types: {}
type: ros2 type: ros2
config_info: []
description: VideoPublisher摄像头设备节点用于实时视频采集和流媒体发布。该设备通过OpenCV连接本地摄像头如USB摄像头、内置摄像头等定时采集视频帧并将其转换为ROS2的sensor_msgs/Image消息格式发布到视频话题。主要用于实验室自动化系统中的视觉监控、图像分析、实时观察等应用场景。支持可配置的摄像头索引、发布频率等参数。 description: VideoPublisher摄像头设备节点用于实时视频采集和流媒体发布。该设备通过OpenCV连接本地摄像头如USB摄像头、内置摄像头等定时采集视频帧并将其转换为ROS2的sensor_msgs/Image消息格式发布到视频话题。主要用于实验室自动化系统中的视觉监控、图像分析、实时观察等应用场景。支持可配置的摄像头索引、发布频率等参数。
handles: [] handles: []
icon: '' icon: ''
category:
- camera
init_param_schema: init_param_schema:
config: config:
properties: properties:
@@ -69,4 +70,4 @@ camera:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
hplc.agilent: hplc.agilent:
category:
- characterization_optic
class: class:
action_value_mappings: action_value_mappings:
auto-check_status: auto-check_status:
@@ -176,6 +178,7 @@ hplc.agilent:
status_text: str status_text: str
success: bool success: bool
type: python type: python
config_info: []
description: 安捷伦高效液相色谱HPLC分析设备用于复杂化合物的分离、检测和定量分析。该设备通过UI自动化技术控制安捷伦ChemStation软件实现全自动的样品分析流程。具备序列启动、设备状态监控、数据文件提取、结果处理等功能。支持多样品批量处理和实时状态反馈适用于药物分析、环境检测、食品安全、化学研究等需要高精度色谱分析的实验室应用。 description: 安捷伦高效液相色谱HPLC分析设备用于复杂化合物的分离、检测和定量分析。该设备通过UI自动化技术控制安捷伦ChemStation软件实现全自动的样品分析流程。具备序列启动、设备状态监控、数据文件提取、结果处理等功能。支持多样品批量处理和实时状态反馈适用于药物分析、环境检测、食品安全、化学研究等需要高精度色谱分析的实验室应用。
handles: [] handles: []
icon: '' icon: ''
@@ -215,8 +218,10 @@ hplc.agilent:
- finish_status - finish_status
- data_file - data_file
type: object type: object
version: 0.0.1 version: 1.0.0
raman_home_made: raman_home_made:
category:
- characterization_optic
class: class:
action_value_mappings: action_value_mappings:
auto-ccd_time: auto-ccd_time:
@@ -378,6 +383,7 @@ raman_home_made:
module: unilabos.devices.raman_uv.home_made_raman:RamanObj module: unilabos.devices.raman_uv.home_made_raman:RamanObj
status_types: {} status_types: {}
type: python type: python
config_info: []
description: 拉曼光谱分析设备用于物质的分子结构和化学成分表征。该设备集成激光器和CCD检测器通过串口通信控制激光功率和光谱采集。具备背景扣除、多次平均、自动数据处理等功能支持高精度的拉曼光谱测量。适用于材料表征、化学分析、质量控制、研究开发等需要分子指纹识别和结构分析的实验应用。 description: 拉曼光谱分析设备用于物质的分子结构和化学成分表征。该设备集成激光器和CCD检测器通过串口通信控制激光功率和光谱采集。具备背景扣除、多次平均、自动数据处理等功能支持高精度的拉曼光谱测量。适用于材料表征、化学分析、质量控制、研究开发等需要分子指纹识别和结构分析的实验应用。
handles: [] handles: []
icon: '' icon: ''
@@ -402,4 +408,4 @@ raman_home_made:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,10 +1,13 @@
hotel.thermo_orbitor_rs2_hotel: hotel.thermo_orbitor_rs2_hotel:
category:
- hotel
class: class:
action_value_mappings: {} action_value_mappings: {}
module: unilabos.devices.resource_container.container:HotelContainer module: unilabos.devices.resource_container.container:HotelContainer
status_types: status_types:
rotation: String rotation: String
type: python type: python
config_info: []
description: Thermo Orbitor RS2 Hotel容器设备用于实验室样品的存储和管理。该设备通过HotelContainer类实现容器的旋转控制和状态监控主要用于存储实验样品、试剂瓶或其他实验器具支持旋转功能以便于样品的自动化存取。适用于需要有序存储和快速访问大量样品的实验室自动化场景。 description: Thermo Orbitor RS2 Hotel容器设备用于实验室样品的存储和管理。该设备通过HotelContainer类实现容器的旋转控制和状态监控主要用于存储实验样品、试剂瓶或其他实验器具支持旋转功能以便于样品的自动化存取。适用于需要有序存储和快速访问大量样品的实验室自动化场景。
handles: [] handles: []
icon: '' icon: ''
@@ -29,4 +32,4 @@ hotel.thermo_orbitor_rs2_hotel:
model: model:
mesh: thermo_orbitor_rs2_hotel mesh: thermo_orbitor_rs2_hotel
type: device type: device
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
laiyu_add_solid: laiyu_add_solid:
category:
- laiyu_add_solid
class: class:
action_value_mappings: action_value_mappings:
add_powder_tube: add_powder_tube:
@@ -355,6 +357,7 @@ laiyu_add_solid:
status_types: status_types:
status: str status: str
type: python type: python
config_info: []
description: 来渝固体粉末自动分装设备用于实验室化学试剂的精确称量和分装。该设备通过Modbus RTU协议与控制系统通信集成了精密天平、三轴运动平台、粉筒管理系统等组件。支持多种粉末试剂的自动拿取、精确称量、定点分装和归位操作。具备高精度称量、位置控制和批量处理能力适用于化学合成、药物研发、材料制备等需要精确固体试剂配制的实验室应用场景。 description: 来渝固体粉末自动分装设备用于实验室化学试剂的精确称量和分装。该设备通过Modbus RTU协议与控制系统通信集成了精密天平、三轴运动平台、粉筒管理系统等组件。支持多种粉末试剂的自动拿取、精确称量、定点分装和归位操作。具备高精度称量、位置控制和批量处理能力适用于化学合成、药物研发、材料制备等需要精确固体试剂配制的实验室应用场景。
handles: [] handles: []
icon: '' icon: ''
@@ -379,4 +382,4 @@ laiyu_add_solid:
required: required:
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
liquid_handler: liquid_handler:
category:
- liquid_handler
class: class:
action_value_mappings: action_value_mappings:
add_liquid: add_liquid:
@@ -4357,6 +4359,7 @@ liquid_handler:
module: unilabos.devices.liquid_handling.liquid_handler_abstract:LiquidHandlerAbstract module: unilabos.devices.liquid_handling.liquid_handler_abstract:LiquidHandlerAbstract
status_types: {} status_types: {}
type: python type: python
config_info: []
description: Liquid handler device controlled by pylabrobot description: Liquid handler device controlled by pylabrobot
handles: handles:
input: input:
@@ -4395,8 +4398,10 @@ liquid_handler:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0
liquid_handler.biomek: liquid_handler.biomek:
category:
- liquid_handler
class: class:
action_value_mappings: action_value_mappings:
auto-create_resource: auto-create_resource:
@@ -5361,6 +5366,7 @@ liquid_handler.biomek:
status_types: status_types:
success: String success: String
type: python type: python
config_info: []
description: Biomek液体处理器设备基于pylabrobot控制 description: Biomek液体处理器设备基于pylabrobot控制
handles: [] handles: []
icon: icon_yiyezhan.webp icon: icon_yiyezhan.webp
@@ -5376,8 +5382,10 @@ liquid_handler.biomek:
required: required:
- success - success
type: object type: object
version: 0.0.1 version: 1.0.0
liquid_handler.prcxi: liquid_handler.prcxi:
category:
- liquid_handler
class: class:
action_value_mappings: action_value_mappings:
add_liquid: add_liquid:
@@ -7928,6 +7936,7 @@ liquid_handler.prcxi:
status_types: status_types:
reset_ok: bool reset_ok: bool
type: python type: python
config_info: []
description: prcxi液体处理器设备基于pylabrobot控制 description: prcxi液体处理器设备基于pylabrobot控制
handles: [] handles: []
icon: icon_yiyezhan.webp icon: icon_yiyezhan.webp
@@ -7973,8 +7982,10 @@ liquid_handler.prcxi:
required: required:
- reset_ok - reset_ok
type: object type: object
version: 0.0.1 version: 1.0.0
liquid_handler.revvity: liquid_handler.revvity:
category:
- liquid_handler
class: class:
action_value_mappings: action_value_mappings:
run: run:
@@ -8130,6 +8141,7 @@ liquid_handler.revvity:
status: str status: str
success: bool success: bool
type: python type: python
config_info: []
description: '' description: ''
handles: [] handles: []
icon: '' icon: ''
@@ -8148,4 +8160,4 @@ liquid_handler.revvity:
- success - success
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
mock_chiller: mock_chiller:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
emergency_stop: emergency_stop:
@@ -325,6 +327,7 @@ mock_chiller:
target_temperature: float target_temperature: float
vessel: str vessel: str
type: python type: python
config_info: []
description: Mock Chiller Device description: Mock Chiller Device
handles: [] handles: []
icon: '' icon: ''
@@ -364,8 +367,10 @@ mock_chiller:
- purpose - purpose
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_filter: mock_filter:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-emergency_stop: auto-emergency_stop:
@@ -743,6 +748,7 @@ mock_filter:
temperature: float temperature: float
vessel: str vessel: str
type: python type: python
config_info: []
description: Mock Filter Device description: Mock Filter Device
handles: [] handles: []
icon: '' icon: ''
@@ -803,8 +809,10 @@ mock_filter:
- target_volume - target_volume
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_heater: mock_heater:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-set_heating_power: auto-set_heating_power:
@@ -1361,6 +1369,7 @@ mock_heater:
target_temperature: float target_temperature: float
vessel: str vessel: str
type: python type: python
config_info: []
description: Mock Heater Device description: Mock Heater Device
handles: [] handles: []
icon: '' icon: ''
@@ -1409,8 +1418,10 @@ mock_heater:
- stir_speed - stir_speed
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_pump: mock_pump:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-emergency_stop: auto-emergency_stop:
@@ -1887,6 +1898,7 @@ mock_pump:
transfer_time: float transfer_time: float
transfer_volume: float transfer_volume: float
type: python type: python
config_info: []
description: Mock Pump Device description: Mock Pump Device
handles: [] handles: []
icon: '' icon: ''
@@ -1968,8 +1980,10 @@ mock_pump:
- time_remaining - time_remaining
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_rotavap: mock_rotavap:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-emergency_stop: auto-emergency_stop:
@@ -2296,6 +2310,7 @@ mock_rotavap:
temperature: float temperature: float
vacuum_level: float vacuum_level: float
type: python type: python
config_info: []
description: Mock Rotavap Device description: Mock Rotavap Device
handles: [] handles: []
icon: '' icon: ''
@@ -2341,8 +2356,10 @@ mock_rotavap:
- target_temperature - target_temperature
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_separator: mock_separator:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
separate: separate:
@@ -3247,6 +3264,7 @@ mock_separator:
valve_state: str valve_state: str
waste_phase_to_vessel: str waste_phase_to_vessel: str
type: python type: python
config_info: []
description: Simplified Mock Separator Device description: Simplified Mock Separator Device
handles: [] handles: []
icon: '' icon: ''
@@ -3325,8 +3343,10 @@ mock_separator:
- time_remaining - time_remaining
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_solenoid_valve: mock_solenoid_valve:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-is_closed: auto-is_closed:
@@ -3481,6 +3501,7 @@ mock_solenoid_valve:
status: str status: str
valve_status: str valve_status: str
type: python type: python
config_info: []
description: Mock Solenoid Valve Device description: Mock Solenoid Valve Device
handles: [] handles: []
icon: '' icon: ''
@@ -3502,8 +3523,10 @@ mock_solenoid_valve:
- status - status
- valve_status - valve_status
type: object type: object
version: 0.0.1 version: 1.0.0
mock_stirrer: mock_stirrer:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-emergency_stop: auto-emergency_stop:
@@ -3749,6 +3772,7 @@ mock_stirrer:
target_temperature: float target_temperature: float
temperature: float temperature: float
type: python type: python
config_info: []
description: Mock Stirrer Device description: Mock Stirrer Device
handles: [] handles: []
icon: '' icon: ''
@@ -3797,8 +3821,10 @@ mock_stirrer:
- max_temperature - max_temperature
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_stirrer_new: mock_stirrer_new:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
start_stir: start_stir:
@@ -4279,6 +4305,7 @@ mock_stirrer_new:
target_stir_speed: float target_stir_speed: float
vessel: str vessel: str
type: python type: python
config_info: []
description: Mock Stirrer Device (Copy Version) description: Mock Stirrer Device (Copy Version)
handles: [] handles: []
icon: '' icon: ''
@@ -4327,8 +4354,10 @@ mock_stirrer_new:
- progress - progress
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0
mock_vacuum: mock_vacuum:
category:
- mock_devices
class: class:
action_value_mappings: action_value_mappings:
auto-emergency_stop: auto-emergency_stop:
@@ -4610,6 +4639,7 @@ mock_vacuum:
target_vacuum: float target_vacuum: float
vacuum_level: float vacuum_level: float
type: python type: python
config_info: []
description: Mock Vacuum Pump Device description: Mock Vacuum Pump Device
handles: [] handles: []
icon: '' icon: ''
@@ -4652,4 +4682,4 @@ mock_vacuum:
- max_pump_speed - max_pump_speed
- status_info - status_info
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
moveit.arm_slider: moveit.arm_slider:
category:
- moveit_config
class: class:
action_value_mappings: action_value_mappings:
auto-check_tf_update_actions: auto-check_tf_update_actions:
@@ -321,6 +323,7 @@ moveit.arm_slider:
module: unilabos.devices.ros_dev.moveit_interface:MoveitInterface module: unilabos.devices.ros_dev.moveit_interface:MoveitInterface
status_types: {} status_types: {}
type: python type: python
config_info: []
description: 机械臂与滑块运动系统基于MoveIt2运动规划框架的多自由度机械臂控制设备。该系统集成机械臂和线性滑块通过ROS2和MoveIt2实现精确的轨迹规划和协调运动控制。支持笛卡尔空间和关节空间的运动规划、碰撞检测、逆运动学求解等功能。适用于复杂的pick-and-place操作、精密装配、多工位协作等需要高精度多轴协调运动的实验室自动化应用。 description: 机械臂与滑块运动系统基于MoveIt2运动规划框架的多自由度机械臂控制设备。该系统集成机械臂和线性滑块通过ROS2和MoveIt2实现精确的轨迹规划和协调运动控制。支持笛卡尔空间和关节空间的运动规划、碰撞检测、逆运动学求解等功能。适用于复杂的pick-and-place操作、精密装配、多工位协作等需要高精度多轴协调运动的实验室自动化应用。
handles: [] handles: []
icon: '' icon: ''
@@ -346,8 +349,10 @@ moveit.arm_slider:
model: model:
mesh: arm_slider mesh: arm_slider
type: device type: device
version: 0.0.1 version: 1.0.0
moveit.toyo_xyz: moveit.toyo_xyz:
category:
- moveit_config
class: class:
action_value_mappings: action_value_mappings:
auto-check_tf_update_actions: auto-check_tf_update_actions:
@@ -670,6 +675,7 @@ moveit.toyo_xyz:
module: unilabos.devices.ros_dev.moveit_interface:MoveitInterface module: unilabos.devices.ros_dev.moveit_interface:MoveitInterface
status_types: {} status_types: {}
type: python type: python
config_info: []
description: 东洋XYZ三轴运动平台基于MoveIt2运动规划框架的精密定位设备。该设备通过ROS2和MoveIt2实现三维空间的精确运动控制支持复杂轨迹规划、多点定位、速度控制等功能。具备高精度定位、平稳运动、实时轨迹监控等特性。适用于精密加工、样品定位、检测扫描、自动化装配等需要高精度三维运动控制的实验室和工业应用场景。 description: 东洋XYZ三轴运动平台基于MoveIt2运动规划框架的精密定位设备。该设备通过ROS2和MoveIt2实现三维空间的精确运动控制支持复杂轨迹规划、多点定位、速度控制等功能。具备高精度定位、平稳运动、实时轨迹监控等特性。适用于精密加工、样品定位、检测扫描、自动化装配等需要高精度三维运动控制的实验室和工业应用场景。
handles: [] handles: []
icon: '' icon: ''
@@ -695,4 +701,4 @@ moveit.toyo_xyz:
model: model:
mesh: toyo_xyz mesh: toyo_xyz
type: device type: device
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
rotavap.one: rotavap.one:
category:
- organic_miscellaneous
class: class:
action_value_mappings: action_value_mappings:
auto-cmd_write: auto-cmd_write:
@@ -140,6 +142,7 @@ rotavap.one:
module: unilabos.devices.rotavap.rotavap_one:RotavapOne module: unilabos.devices.rotavap.rotavap_one:RotavapOne
status_types: {} status_types: {}
type: python type: python
config_info: []
description: 旋转蒸发仪设备,用于有机化学实验中的溶剂回收和浓缩操作。该设备通过串口通信控制,集成旋转和真空泵功能,支持定时控制和自动化操作。具备旋转速度调节、真空度控制、温度管理等功能,实现高效的溶剂蒸发和回收。适用于有机合成、天然产物提取、药物制备等需要溶剂去除和浓缩的实验室应用场景。 description: 旋转蒸发仪设备,用于有机化学实验中的溶剂回收和浓缩操作。该设备通过串口通信控制,集成旋转和真空泵功能,支持定时控制和自动化操作。具备旋转速度调节、真空度控制、温度管理等功能,实现高效的溶剂蒸发和回收。适用于有机合成、天然产物提取、药物制备等需要溶剂去除和浓缩的实验室应用场景。
handles: [] handles: []
icon: '' icon: ''
@@ -158,8 +161,10 @@ rotavap.one:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0
separator.homemade: separator.homemade:
category:
- organic_miscellaneous
class: class:
action_value_mappings: action_value_mappings:
auto-read_sensor_loop: auto-read_sensor_loop:
@@ -446,6 +451,7 @@ separator.homemade:
module: unilabos.devices.separator.homemade_grbl_conductivity:SeparatorController module: unilabos.devices.separator.homemade_grbl_conductivity:SeparatorController
status_types: {} status_types: {}
type: python type: python
config_info: []
description: 液-液分离器设备基于自制Grbl控制器的自动化分离系统。该设备集成搅拌、沉降、阀门控制和电导率传感器通过串口通信实现精确的分离操作控制。支持自动搅拌、分层沉降、基于传感器反馈的智能分液等功能。适用于有机化学中的萃取分离、相分离、液-液提取等需要精确分离控制的实验应用。 description: 液-液分离器设备基于自制Grbl控制器的自动化分离系统。该设备集成搅拌、沉降、阀门控制和电导率传感器通过串口通信实现精确的分离操作控制。支持自动搅拌、分层沉降、基于传感器反馈的智能分液等功能。适用于有机化学中的萃取分离、相分离、液-液提取等需要精确分离控制的实验应用。
handles: [] handles: []
icon: '' icon: ''
@@ -470,4 +476,4 @@ separator.homemade:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
solenoid_valve: solenoid_valve:
category:
- pump_and_valve
class: class:
action_value_mappings: action_value_mappings:
auto-close: auto-close:
@@ -170,6 +172,7 @@ solenoid_valve:
status: str status: str
valve_position: str valve_position: str
type: python type: python
config_info: []
description: 电磁阀控制设备,用于精确的流体路径控制和开关操作。该设备通过串口通信控制电磁阀的开关状态,支持远程操作和状态监测。具备快速响应、可靠密封、状态反馈等特性,广泛应用于流体输送、样品进样、路径切换等需要精确流体控制的实验室自动化应用。 description: 电磁阀控制设备,用于精确的流体路径控制和开关操作。该设备通过串口通信控制电磁阀的开关状态,支持远程操作和状态监测。具备快速响应、可靠密封、状态反馈等特性,广泛应用于流体输送、样品进样、路径切换等需要精确流体控制的实验室自动化应用。
handles: [] handles: []
icon: '' icon: ''
@@ -191,8 +194,10 @@ solenoid_valve:
- status - status
- valve_position - valve_position
type: object type: object
version: 0.0.1 version: 1.0.0
solenoid_valve.mock: solenoid_valve.mock:
category:
- pump_and_valve
class: class:
action_value_mappings: action_value_mappings:
auto-is_closed: auto-is_closed:
@@ -328,6 +333,7 @@ solenoid_valve.mock:
status: str status: str
valve_position: str valve_position: str
type: python type: python
config_info: []
description: 模拟电磁阀设备,用于系统测试和开发调试。该设备模拟真实电磁阀的开关操作和状态变化,提供与实际设备相同的控制接口和反馈机制。支持流体路径的虚拟控制,便于在没有实际硬件的情况下进行流体系统的集成测试和算法验证。适用于系统开发、流程调试和培训演示等场景。 description: 模拟电磁阀设备,用于系统测试和开发调试。该设备模拟真实电磁阀的开关操作和状态变化,提供与实际设备相同的控制接口和反馈机制。支持流体路径的虚拟控制,便于在没有实际硬件的情况下进行流体系统的集成测试和算法验证。适用于系统开发、流程调试和培训演示等场景。
handles: handles:
- data_type: fluid - data_type: fluid
@@ -359,8 +365,10 @@ solenoid_valve.mock:
- status - status
- valve_position - valve_position
type: object type: object
version: 0.0.1 version: 1.0.0
syringe_pump_with_valve.runze: syringe_pump_with_valve.runze:
category:
- pump_and_valve
class: class:
action_value_mappings: action_value_mappings:
auto-close: auto-close:
@@ -754,6 +762,7 @@ syringe_pump_with_valve.runze:
velocity_grade: String velocity_grade: String
velocity_init: String velocity_init: String
type: python type: python
config_info: []
description: 润泽精密注射泵设备,集成阀门控制的高精度流体输送系统。该设备通过串口通信控制,支持多种运行模式和精确的体积控制。具备可变速度控制、精密定位、阀门切换、实时状态监控等功能。适用于微量液体输送、精密进样、流速控制、化学反应进料等需要高精度流体操作的实验室自动化应用。 description: 润泽精密注射泵设备,集成阀门控制的高精度流体输送系统。该设备通过串口通信控制,支持多种运行模式和精确的体积控制。具备可变速度控制、精密定位、阀门切换、实时状态监控等功能。适用于微量液体输送、精密进样、流速控制、化学反应进料等需要高精度流体操作的实验室自动化应用。
handles: [] handles: []
icon: '' icon: ''
@@ -804,4 +813,4 @@ syringe_pump_with_valve.runze:
- position - position
- plunger_position - plunger_position
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
agv.SEER: agv.SEER:
category:
- robot_agv
class: class:
action_value_mappings: action_value_mappings:
auto-send: auto-send:
@@ -82,6 +84,7 @@ agv.SEER:
pose: list pose: list
status: str status: str
type: python type: python
config_info: []
description: SEER AGV自动导引车设备用于实验室内物料和设备的自主移动运输。该AGV通过TCP socket与导航系统通信具备精确的定位和路径规划能力。支持实时位置监控、状态查询和导航任务执行可在预设的实验室环境中自主移动至指定位置。适用于样品运输、设备转移、多工位协作等实验室自动化物流场景。 description: SEER AGV自动导引车设备用于实验室内物料和设备的自主移动运输。该AGV通过TCP socket与导航系统通信具备精确的定位和路径规划能力。支持实时位置监控、状态查询和导航任务执行可在预设的实验室环境中自主移动至指定位置。适用于样品运输、设备转移、多工位协作等实验室自动化物流场景。
handles: [] handles: []
icon: '' icon: ''
@@ -103,4 +106,4 @@ agv.SEER:
- pose - pose
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
robotic_arm.UR: robotic_arm.UR:
category:
- robot_arm
class: class:
action_value_mappings: action_value_mappings:
auto-arm_init: auto-arm_init:
@@ -140,6 +142,7 @@ robotic_arm.UR:
gripper_pose: float gripper_pose: float
gripper_status: str gripper_status: str
type: python type: python
config_info: []
description: Universal Robots机械臂设备用于实验室精密操作和自动化作业。该设备集成了UR机械臂本体、Robotiq夹爪和RTDE通信接口支持六自由度精确运动控制和力觉反馈。具备实时位置监控、状态反馈、轨迹规划等功能可执行复杂的多点位运动任务。适用于样品抓取、精密装配、实验器具操作等需要高精度和高重复性的实验室自动化场景。 description: Universal Robots机械臂设备用于实验室精密操作和自动化作业。该设备集成了UR机械臂本体、Robotiq夹爪和RTDE通信接口支持六自由度精确运动控制和力觉反馈。具备实时位置监控、状态反馈、轨迹规划等功能可执行复杂的多点位运动任务。适用于样品抓取、精密装配、实验器具操作等需要高精度和高重复性的实验室自动化场景。
handles: [] handles: []
icon: '' icon: ''
@@ -170,4 +173,4 @@ robotic_arm.UR:
- arm_status - arm_status
- gripper_status - gripper_status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
gripper.misumi_rz: gripper.misumi_rz:
category:
- robot_gripper
class: class:
action_value_mappings: action_value_mappings:
auto-data_loop: auto-data_loop:
@@ -417,6 +419,7 @@ gripper.misumi_rz:
status_types: status_types:
status: str status: str
type: python type: python
config_info: []
description: Misumi RZ系列电子夹爪设备集成旋转和抓取双重功能的精密夹爪系统。该设备通过Modbus RTU协议与控制系统通信支持位置、速度、力矩的精确控制。具备高精度的位置反馈、实时状态监控和故障检测功能。适用于需要精密抓取和旋转操作的实验室自动化场景如样品管理、精密装配、器件操作等应用。 description: Misumi RZ系列电子夹爪设备集成旋转和抓取双重功能的精密夹爪系统。该设备通过Modbus RTU协议与控制系统通信支持位置、速度、力矩的精确控制。具备高精度的位置反馈、实时状态监控和故障检测功能。适用于需要精密抓取和旋转操作的实验室自动化场景如样品管理、精密装配、器件操作等应用。
handles: [] handles: []
icon: '' icon: ''
@@ -444,8 +447,10 @@ gripper.misumi_rz:
required: required:
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0
gripper.mock: gripper.mock:
category:
- robot_gripper
class: class:
action_value_mappings: action_value_mappings:
auto-edit_id: auto-edit_id:
@@ -563,6 +568,7 @@ gripper.mock:
torque: float torque: float
velocity: float velocity: float
type: python type: python
config_info: []
description: 模拟夹爪设备,用于系统测试和开发调试。该设备模拟真实夹爪的位置、速度、力矩等物理特性,支持虚拟的抓取和移动操作。提供与真实夹爪相同的接口和状态反馈,便于在没有实际硬件的情况下进行系统集成测试和算法验证。适用于软件开发、系统调试和培训演示等场景。 description: 模拟夹爪设备,用于系统测试和开发调试。该设备模拟真实夹爪的位置、速度、力矩等物理特性,支持虚拟的抓取和移动操作。提供与真实夹爪相同的接口和状态反馈,便于在没有实际硬件的情况下进行系统集成测试和算法验证。适用于软件开发、系统调试和培训演示等场景。
handles: [] handles: []
icon: '' icon: ''
@@ -587,4 +593,4 @@ gripper.mock:
- torque - torque
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
linear_motion.grbl: linear_motion.grbl:
category:
- robot_linear_motion
class: class:
action_value_mappings: action_value_mappings:
auto-initialize: auto-initialize:
@@ -430,6 +432,7 @@ linear_motion.grbl:
spindle_speed: float spindle_speed: float
status: str status: str
type: python type: python
config_info: []
description: Grbl数控机床CNC设备用于实验室精密加工和三轴定位操作。该设备基于Grbl固件通过串口通信控制步进电机实现X、Y、Z三轴的精确运动。支持绝对定位、轨迹规划、主轴控制和实时状态监控。具备安全限位保护和运动平滑控制功能。适用于精密钻孔、铣削、雕刻、样品制备等需要高精度定位和加工的实验室应用场景。 description: Grbl数控机床CNC设备用于实验室精密加工和三轴定位操作。该设备基于Grbl固件通过串口通信控制步进电机实现X、Y、Z三轴的精确运动。支持绝对定位、轨迹规划、主轴控制和实时状态监控。具备安全限位保护和运动平滑控制功能。适用于精密钻孔、铣削、雕刻、样品制备等需要高精度定位和加工的实验室应用场景。
handles: [] handles: []
icon: '' icon: ''
@@ -466,8 +469,10 @@ linear_motion.grbl:
- position - position
- spindle_speed - spindle_speed
type: object type: object
version: 0.0.1 version: 1.0.0
motor.iCL42: motor.iCL42:
category:
- robot_linear_motion
class: class:
action_value_mappings: action_value_mappings:
auto-execute_run_motor: auto-execute_run_motor:
@@ -604,6 +609,7 @@ motor.iCL42:
motor_position: int motor_position: int
success: bool success: bool
type: python type: python
config_info: []
description: iCL42步进电机驱动器用于实验室设备的精密线性运动控制。该设备通过串口通信控制iCL42型步进电机驱动器支持多种运动模式和精确的位置、速度控制。具备位置反馈、运行状态监控和故障检测功能。适用于自动进样器、样品传送、精密定位平台等需要准确线性运动控制的实验室自动化设备。 description: iCL42步进电机驱动器用于实验室设备的精密线性运动控制。该设备通过串口通信控制iCL42型步进电机驱动器支持多种运动模式和精确的位置、速度控制。具备位置反馈、运行状态监控和故障检测功能。适用于自动进样器、样品传送、精密定位平台等需要准确线性运动控制的实验室自动化设备。
handles: [] handles: []
icon: '' icon: ''
@@ -631,4 +637,4 @@ motor.iCL42:
- is_executing_run - is_executing_run
- success - success
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
lh_joint_publisher: lh_joint_publisher:
category:
- sim_nodes
class: class:
action_value_mappings: action_value_mappings:
auto-check_tf_update_actions: auto-check_tf_update_actions:
@@ -285,6 +287,7 @@ lh_joint_publisher:
module: unilabos.devices.ros_dev.liquid_handler_joint_publisher:LiquidHandlerJointPublisher module: unilabos.devices.ros_dev.liquid_handler_joint_publisher:LiquidHandlerJointPublisher
status_types: {} status_types: {}
type: ros2 type: ros2
config_info: []
description: 液体处理器关节发布器用于ROS2仿真系统中的液体处理设备运动控制。该节点通过发布关节状态驱动仿真模型中的机械臂运动支持三维坐标到关节空间的逆运动学转换、多关节协调控制、资源跟踪和TF变换。具备精确的位置控制、速度调节、pick-and-place操作等功能。适用于液体处理系统的虚拟仿真、运动规划验证、系统集成测试等应用场景。 description: 液体处理器关节发布器用于ROS2仿真系统中的液体处理设备运动控制。该节点通过发布关节状态驱动仿真模型中的机械臂运动支持三维坐标到关节空间的逆运动学转换、多关节协调控制、资源跟踪和TF变换。具备精确的位置控制、速度调节、pick-and-place操作等功能。适用于液体处理系统的虚拟仿真、运动规划验证、系统集成测试等应用场景。
handles: [] handles: []
icon: '' icon: ''
@@ -309,4 +312,4 @@ lh_joint_publisher:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
chiller: chiller:
category:
- temperature
class: class:
action_value_mappings: action_value_mappings:
auto-build_modbus_frame: auto-build_modbus_frame:
@@ -156,6 +158,7 @@ chiller:
module: unilabos.devices.temperature.chiller:Chiller module: unilabos.devices.temperature.chiller:Chiller
status_types: {} status_types: {}
type: python type: python
config_info: []
description: 实验室制冷设备用于精确的温度控制和冷却操作。该设备通过Modbus RTU协议与控制系统通信支持精确的温度设定和监控。具备快速降温、恒温控制和温度保持功能广泛应用于需要低温环境的化学反应、样品保存、结晶操作等实验场景。提供稳定可靠的冷却性能确保实验过程的温度精度。 description: 实验室制冷设备用于精确的温度控制和冷却操作。该设备通过Modbus RTU协议与控制系统通信支持精确的温度设定和监控。具备快速降温、恒温控制和温度保持功能广泛应用于需要低温环境的化学反应、样品保存、结晶操作等实验场景。提供稳定可靠的冷却性能确保实验过程的温度精度。
handles: [] handles: []
icon: '' icon: ''
@@ -174,8 +177,10 @@ chiller:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0
heaterstirrer.dalong: heaterstirrer.dalong:
category:
- temperature
class: class:
action_value_mappings: action_value_mappings:
auto-close: auto-close:
@@ -523,6 +528,7 @@ heaterstirrer.dalong:
temp_target: float temp_target: float
temp_warning: float temp_warning: float
type: python type: python
config_info: []
description: 大龙加热搅拌器,集成加热和搅拌双重功能的实验室设备。该设备通过串口通信控制,支持精确的温度调节、搅拌速度控制和安全保护功能。具备实时温度监测、目标温度设定、安全温度报警等特性。适用于化学合成、样品制备、反应控制等需要同时进行加热和搅拌的实验操作,提供稳定均匀的反应环境。 description: 大龙加热搅拌器,集成加热和搅拌双重功能的实验室设备。该设备通过串口通信控制,支持精确的温度调节、搅拌速度控制和安全保护功能。具备实时温度监测、目标温度设定、安全温度报警等特性。适用于化学合成、样品制备、反应控制等需要同时进行加热和搅拌的实验操作,提供稳定均匀的反应环境。
handles: [] handles: []
icon: '' icon: ''
@@ -559,8 +565,10 @@ heaterstirrer.dalong:
- temp_warning - temp_warning
- temp_target - temp_target
type: object type: object
version: 0.0.1 version: 1.0.0
tempsensor: tempsensor:
category:
- temperature
class: class:
action_value_mappings: action_value_mappings:
auto-build_modbus_request: auto-build_modbus_request:
@@ -719,6 +727,7 @@ tempsensor:
status_types: status_types:
value: float value: float
type: python type: python
config_info: []
description: 高精度温度传感器设备用于实验室环境和设备的温度监测。该传感器通过Modbus RTU协议与控制系统通信提供实时准确的温度数据。具备高精度测量、报警温度设定、数据稳定性好等特点。适用于反应器监控、环境温度监测、设备保护等需要精确温度测量的实验场景为实验安全和数据可靠性提供保障。 description: 高精度温度传感器设备用于实验室环境和设备的温度监测。该传感器通过Modbus RTU协议与控制系统通信提供实时准确的温度数据。具备高精度测量、报警温度设定、数据稳定性好等特点。适用于反应器监控、环境温度监测、设备保护等需要精确温度测量的实验场景为实验安全和数据可靠性提供保障。
handles: [] handles: []
icon: '' icon: ''
@@ -746,4 +755,4 @@ tempsensor:
required: required:
- value - value
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
gas_source.mock: gas_source.mock:
category:
- vacuum_and_purge
class: class:
action_value_mappings: action_value_mappings:
auto-is_closed: auto-is_closed:
@@ -149,6 +151,7 @@ gas_source.mock:
status_types: status_types:
status: str status: str
type: python type: python
config_info: []
description: 模拟气体源设备,用于系统测试和开发调试。该设备模拟真实气体源的开关控制和状态监测功能,支持气体供应的启停操作。提供与真实气体源相同的接口和状态反馈,便于在没有实际硬件的情况下进行系统集成测试和算法验证。适用于气路系统调试、软件开发和实验流程验证等场景。 description: 模拟气体源设备,用于系统测试和开发调试。该设备模拟真实气体源的开关控制和状态监测功能,支持气体供应的启停操作。提供与真实气体源相同的接口和状态反馈,便于在没有实际硬件的情况下进行系统集成测试和算法验证。适用于气路系统调试、软件开发和实验流程验证等场景。
handles: handles:
- data_key: fluid_out - data_key: fluid_out
@@ -173,8 +176,10 @@ gas_source.mock:
required: required:
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0
vacuum_pump.mock: vacuum_pump.mock:
category:
- vacuum_and_purge
class: class:
action_value_mappings: action_value_mappings:
auto-is_closed: auto-is_closed:
@@ -325,6 +330,7 @@ vacuum_pump.mock:
status_types: status_types:
status: str status: str
type: python type: python
config_info: []
description: 模拟真空泵设备,用于系统测试和开发调试。该设备模拟真实真空泵的抽气功能和状态控制,支持真空系统的启停操作和状态监测。提供与真实真空泵相同的接口和控制逻辑,便于在没有实际硬件的情况下进行真空系统的集成测试。适用于真空工艺调试、软件开发和实验流程验证等场景。 description: 模拟真空泵设备,用于系统测试和开发调试。该设备模拟真实真空泵的抽气功能和状态控制,支持真空系统的启停操作和状态监测。提供与真实真空泵相同的接口和控制逻辑,便于在没有实际硬件的情况下进行真空系统的集成测试。适用于真空工艺调试、软件开发和实验流程验证等场景。
handles: handles:
- data_key: fluid_in - data_key: fluid_in
@@ -349,4 +355,4 @@ vacuum_pump.mock:
required: required:
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
virtual_centrifuge: virtual_centrifuge:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -222,6 +224,7 @@ virtual_centrifuge:
target_temp: float target_temp: float
time_remaining: float time_remaining: float
type: python type: python
config_info: []
description: Virtual Centrifuge for CentrifugeProtocol Testing description: Virtual Centrifuge for CentrifugeProtocol Testing
handles: handles:
- data_key: vessel - data_key: vessel
@@ -282,8 +285,10 @@ virtual_centrifuge:
- progress - progress
- message - message
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_column: virtual_column:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -609,6 +614,7 @@ virtual_column:
progress: float progress: float
status: str status: str
type: python type: python
config_info: []
description: Virtual Column Chromatography Device for RunColumn Protocol Testing description: Virtual Column Chromatography Device for RunColumn Protocol Testing
handles: handles:
- data_key: from_vessel - data_key: from_vessel
@@ -674,8 +680,10 @@ virtual_column:
- current_phase - current_phase
- final_volume - final_volume
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_filter: virtual_filter:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -1002,6 +1010,7 @@ virtual_filter:
progress: float progress: float
status: str status: str
type: python type: python
config_info: []
description: Virtual Filter for FilterProtocol Testing description: Virtual Filter for FilterProtocol Testing
handles: handles:
- data_key: vessel_in - data_key: vessel_in
@@ -1069,8 +1078,10 @@ virtual_filter:
- max_stir_speed - max_stir_speed
- max_volume - max_volume
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_gas_source: virtual_gas_source:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -1261,6 +1272,7 @@ virtual_gas_source:
status_types: status_types:
status: str status: str
type: python type: python
config_info: []
description: Virtual gas source description: Virtual gas source
handles: handles:
- data_key: fluid_out - data_key: fluid_out
@@ -1288,8 +1300,10 @@ virtual_gas_source:
required: required:
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_heatchill: virtual_heatchill:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -1803,6 +1817,7 @@ virtual_heatchill:
status: str status: str
stir_speed: float stir_speed: float
type: python type: python
config_info: []
description: Virtual HeatChill for HeatChillProtocol Testing description: Virtual HeatChill for HeatChillProtocol Testing
handles: handles:
- data_key: vessel - data_key: vessel
@@ -1854,8 +1869,10 @@ virtual_heatchill:
- min_temp - min_temp
- max_stir_speed - max_stir_speed
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_multiway_valve: virtual_multiway_valve:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-close: auto-close:
@@ -2155,6 +2172,7 @@ virtual_multiway_valve:
valve_position: int valve_position: int
valve_state: str valve_state: str
type: python type: python
config_info: []
description: Virtual 8-Way Valve for flow direction control description: Virtual 8-Way Valve for flow direction control
handles: handles:
- data_key: fluid_in - data_key: fluid_in
@@ -2275,8 +2293,10 @@ virtual_multiway_valve:
- flow_path - flow_path
- info - info
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_pump: virtual_pump:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-clean_vessel: auto-clean_vessel:
@@ -2741,6 +2761,7 @@ virtual_pump:
transferred_volume: float transferred_volume: float
valve_position: int valve_position: int
type: python type: python
config_info: []
description: Virtual Pump for PumpTransferProtocol Testing description: Virtual Pump for PumpTransferProtocol Testing
handles: handles:
- data_key: fluid_in - data_key: fluid_in
@@ -2794,8 +2815,10 @@ virtual_pump:
- transferred_volume - transferred_volume
- current_status - current_status
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_rotavap: virtual_rotavap:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -3048,6 +3071,7 @@ virtual_rotavap:
status: str status: str
vacuum_pressure: float vacuum_pressure: float
type: python type: python
config_info: []
description: Virtual Rotary Evaporator for EvaporateProtocol Testing description: Virtual Rotary Evaporator for EvaporateProtocol Testing
handles: handles:
- data_key: vessel_in - data_key: vessel_in
@@ -3121,8 +3145,10 @@ virtual_rotavap:
- max_rotation_speed - max_rotation_speed
- remaining_time - remaining_time
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_separator: virtual_separator:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -3938,6 +3964,7 @@ virtual_separator:
stir_speed: float stir_speed: float
volume: float volume: float
type: python type: python
config_info: []
description: Virtual Separator for SeparateProtocol Testing description: Virtual Separator for SeparateProtocol Testing
handles: handles:
- data_key: from_vessel - data_key: from_vessel
@@ -4013,8 +4040,10 @@ virtual_separator:
- progress - progress
- message - message
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_solenoid_valve: virtual_solenoid_valve:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -4277,6 +4306,7 @@ virtual_solenoid_valve:
valve_position: str valve_position: str
valve_state: str valve_state: str
type: python type: python
config_info: []
description: Virtual Solenoid Valve for simple on/off flow control description: Virtual Solenoid Valve for simple on/off flow control
handles: handles:
- data_key: fluid_port_in - data_key: fluid_port_in
@@ -4324,8 +4354,10 @@ virtual_solenoid_valve:
- valve_position - valve_position
- state - state
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_solid_dispenser: virtual_solid_dispenser:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
add_solid: add_solid:
@@ -4656,6 +4688,7 @@ virtual_solid_dispenser:
status: str status: str
total_operations: int total_operations: int
type: python type: python
config_info: []
description: Virtual Solid Dispenser for Add Protocol Testing - supports mass and description: Virtual Solid Dispenser for Add Protocol Testing - supports mass and
molar additions molar additions
handles: handles:
@@ -4704,8 +4737,10 @@ virtual_solid_dispenser:
- total_operations - total_operations
- device_info - device_info
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_stirrer: virtual_stirrer:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -5219,6 +5254,7 @@ virtual_stirrer:
remaining_time: float remaining_time: float
status: str status: str
type: python type: python
config_info: []
description: Virtual Stirrer for StirProtocol Testing description: Virtual Stirrer for StirProtocol Testing
handles: handles:
- data_key: vessel - data_key: vessel
@@ -5270,8 +5306,10 @@ virtual_stirrer:
- min_speed - min_speed
- device_info - device_info
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_transfer_pump: virtual_transfer_pump:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-aspirate: auto-aspirate:
@@ -5728,6 +5766,7 @@ virtual_transfer_pump:
status: str status: str
transfer_rate: float transfer_rate: float
type: python type: python
config_info: []
description: Virtual Transfer Pump for TransferProtocol Testing (Syringe-style) description: Virtual Transfer Pump for TransferProtocol Testing (Syringe-style)
handles: handles:
- data_key: fluid_port - data_key: fluid_port
@@ -5773,8 +5812,10 @@ virtual_transfer_pump:
- remaining_capacity - remaining_capacity
- pump_info - pump_info
type: object type: object
version: 0.0.1 version: 1.0.0
virtual_vacuum_pump: virtual_vacuum_pump:
category:
- virtual_device
class: class:
action_value_mappings: action_value_mappings:
auto-cleanup: auto-cleanup:
@@ -5965,6 +6006,7 @@ virtual_vacuum_pump:
status_types: status_types:
status: str status: str
type: python type: python
config_info: []
description: Virtual vacuum pump description: Virtual vacuum pump
handles: handles:
- data_key: fluid_in - data_key: fluid_in
@@ -5992,4 +6034,4 @@ virtual_vacuum_pump:
required: required:
- status - status
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
workstation: workstation:
category:
- work_station
class: class:
action_value_mappings: action_value_mappings:
AGVTransferProtocol: AGVTransferProtocol:
@@ -6033,6 +6035,7 @@ workstation:
module: unilabos.ros.nodes.presets.protocol_node:ROS2ProtocolNode module: unilabos.ros.nodes.presets.protocol_node:ROS2ProtocolNode
status_types: {} status_types: {}
type: ros2 type: ros2
config_info: []
description: Workstation description: Workstation
handles: [] handles: []
icon: '' icon: ''
@@ -6057,4 +6060,4 @@ workstation:
properties: {} properties: {}
required: [] required: []
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -1,4 +1,6 @@
zhida_hplc: zhida_hplc:
category:
- zhida_hplc
class: class:
action_value_mappings: action_value_mappings:
abort: abort:
@@ -150,6 +152,7 @@ zhida_hplc:
methods: dict methods: dict
status: dict status: dict
type: python type: python
config_info: []
description: 智达高效液相色谱HPLC分析设备用于实验室样品的分离、检测和定量分析。该设备通过TCP socket与HPLC控制系统通信支持远程控制和状态监控。具备自动进样、梯度洗脱、多检测器数据采集等功能可执行复杂的色谱分析方法。适用于化学分析、药物检测、环境监测、生物样品分析等需要高精度分离分析的实验室应用场景。 description: 智达高效液相色谱HPLC分析设备用于实验室样品的分离、检测和定量分析。该设备通过TCP socket与HPLC控制系统通信支持远程控制和状态监控。具备自动进样、梯度洗脱、多检测器数据采集等功能可执行复杂的色谱分析方法。适用于化学分析、药物检测、环境监测、生物样品分析等需要高精度分离分析的实验室应用场景。
handles: [] handles: []
icon: '' icon: ''
@@ -177,4 +180,4 @@ zhida_hplc:
- status - status
- methods - methods
type: object type: object
version: 0.0.1 version: 1.0.0

View File

@@ -12,7 +12,7 @@ import yaml
from unilabos.ros.msgs.message_converter import msg_converter_manager, ros_action_to_json_schema, String from unilabos.ros.msgs.message_converter import msg_converter_manager, ros_action_to_json_schema, String
from unilabos.utils import logger from unilabos.utils import logger
from unilabos.utils.decorator import singleton from unilabos.utils.decorator import singleton
from unilabos.utils.import_manager import get_enhanced_class_info from unilabos.utils.import_manager import get_enhanced_class_info, get_class
from unilabos.utils.type_check import NoAliasDumper from unilabos.utils.type_check import NoAliasDumper
DEFAULT_PATHS = [Path(__file__).absolute().parent] DEFAULT_PATHS = [Path(__file__).absolute().parent]
@@ -119,7 +119,7 @@ class Registry:
}, },
}, },
}, },
"version": "0.0.1", "version": "1.0.0",
"icon": "icon_device.webp", "icon": "icon_device.webp",
"registry_type": "device", "registry_type": "device",
"handles": [], "handles": [],
@@ -153,14 +153,29 @@ class Registry:
# 为每个资源添加文件路径信息 # 为每个资源添加文件路径信息
for resource_id, resource_info in data.items(): for resource_id, resource_info in data.items():
resource_info["file_path"] = str(file.absolute()).replace("\\", "/") resource_info["file_path"] = str(file.absolute()).replace("\\", "/")
if "description" not in resource_info: if "version" not in resource_info:
resource_info["description"] = "" resource_info["version"] = "1.0.0"
if "category" not in resource_info:
resource_info["category"] = [file.stem]
elif file.stem not in resource_info["category"]:
resource_info["category"].append(file.stem)
if "config_info" not in resource_info:
resource_info["config_info"] = []
if "icon" not in resource_info: if "icon" not in resource_info:
resource_info["icon"] = "" resource_info["icon"] = ""
if "handles" not in resource_info: if "handles" not in resource_info:
resource_info["handles"] = [] resource_info["handles"] = []
if "init_param_schema" not in resource_info: if "init_param_schema" not in resource_info:
resource_info["init_param_schema"] = {} resource_info["init_param_schema"] = {}
if complete_registry:
class_info = resource_info.get("class", {})
if len(class_info) and "module" in class_info:
if class_info.get("type") == "pylabrobot":
res_class = get_class(class_info["module"])
if callable(res_class) and not isinstance(res_class, type): # 有的是类,有的是函数,这里暂时只登记函数类的
res_instance = res_class(res_class.__name__)
print(res_instance)
resource_info["registry_type"] = "resource" resource_info["registry_type"] = "resource"
self.resource_type_registry.update(data) self.resource_type_registry.update(data)
logger.debug( logger.debug(
@@ -345,7 +360,7 @@ class Registry:
} }
def load_device_types(self, path: os.PathLike, complete_registry: bool): def load_device_types(self, path: os.PathLike, complete_registry: bool):
return # return
abs_path = Path(path).absolute() abs_path = Path(path).absolute()
devices_path = abs_path / "devices" devices_path = abs_path / "devices"
device_comms_path = abs_path / "device_comms" device_comms_path = abs_path / "device_comms"
@@ -371,7 +386,13 @@ class Registry:
for device_id, device_config in data.items(): for device_id, device_config in data.items():
# 添加文件路径信息 - 使用规范化的完整文件路径 # 添加文件路径信息 - 使用规范化的完整文件路径
if "version" not in device_config: if "version" not in device_config:
device_config["version"] = "0.0.1" device_config["version"] = "1.0.0"
if "category" not in device_config:
device_config["category"] = [file.stem]
elif file.stem not in device_config["category"]:
device_config["category"].append(file.stem)
if "config_info" not in device_config:
device_config["config_info"] = []
if "description" not in device_config: if "description" not in device_config:
device_config["description"] = "" device_config["description"] = ""
if "icon" not in device_config: if "icon" not in device_config: