mirror of
https://github.com/dptech-corp/Uni-Lab-OS.git
synced 2026-02-05 14:05:12 +00:00
update registry version & category
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
serial:
|
||||
category:
|
||||
- serial
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-handle_serial_request:
|
||||
@@ -76,6 +78,7 @@ serial:
|
||||
module: unilabos.ros.nodes.presets.serial_node:ROS2SerialNode
|
||||
status_types: {}
|
||||
type: ros2
|
||||
config_info: []
|
||||
description: Serial communication interface, used when sharing same serial port
|
||||
for multiple devices
|
||||
handles: []
|
||||
@@ -100,4 +103,4 @@ serial:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
camera:
|
||||
category:
|
||||
- camera
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-destroy_node:
|
||||
@@ -44,11 +46,10 @@ camera:
|
||||
module: unilabos.ros.nodes.presets.camera:VideoPublisher
|
||||
status_types: {}
|
||||
type: ros2
|
||||
config_info: []
|
||||
description: VideoPublisher摄像头设备节点,用于实时视频采集和流媒体发布。该设备通过OpenCV连接本地摄像头(如USB摄像头、内置摄像头等),定时采集视频帧并将其转换为ROS2的sensor_msgs/Image消息格式发布到视频话题。主要用于实验室自动化系统中的视觉监控、图像分析、实时观察等应用场景。支持可配置的摄像头索引、发布频率等参数。
|
||||
handles: []
|
||||
icon: ''
|
||||
category:
|
||||
- camera
|
||||
init_param_schema:
|
||||
config:
|
||||
properties:
|
||||
@@ -69,4 +70,4 @@ camera:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
hplc.agilent:
|
||||
category:
|
||||
- characterization_optic
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-check_status:
|
||||
@@ -176,6 +178,7 @@ hplc.agilent:
|
||||
status_text: str
|
||||
success: bool
|
||||
type: python
|
||||
config_info: []
|
||||
description: 安捷伦高效液相色谱(HPLC)分析设备,用于复杂化合物的分离、检测和定量分析。该设备通过UI自动化技术控制安捷伦ChemStation软件,实现全自动的样品分析流程。具备序列启动、设备状态监控、数据文件提取、结果处理等功能。支持多样品批量处理和实时状态反馈,适用于药物分析、环境检测、食品安全、化学研究等需要高精度色谱分析的实验室应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -215,8 +218,10 @@ hplc.agilent:
|
||||
- finish_status
|
||||
- data_file
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
raman_home_made:
|
||||
category:
|
||||
- characterization_optic
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-ccd_time:
|
||||
@@ -378,6 +383,7 @@ raman_home_made:
|
||||
module: unilabos.devices.raman_uv.home_made_raman:RamanObj
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: 拉曼光谱分析设备,用于物质的分子结构和化学成分表征。该设备集成激光器和CCD检测器,通过串口通信控制激光功率和光谱采集。具备背景扣除、多次平均、自动数据处理等功能,支持高精度的拉曼光谱测量。适用于材料表征、化学分析、质量控制、研究开发等需要分子指纹识别和结构分析的实验应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -402,4 +408,4 @@ raman_home_made:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
hotel.thermo_orbitor_rs2_hotel:
|
||||
category:
|
||||
- hotel
|
||||
class:
|
||||
action_value_mappings: {}
|
||||
module: unilabos.devices.resource_container.container:HotelContainer
|
||||
status_types:
|
||||
rotation: String
|
||||
type: python
|
||||
config_info: []
|
||||
description: Thermo Orbitor RS2 Hotel容器设备,用于实验室样品的存储和管理。该设备通过HotelContainer类实现容器的旋转控制和状态监控,主要用于存储实验样品、试剂瓶或其他实验器具,支持旋转功能以便于样品的自动化存取。适用于需要有序存储和快速访问大量样品的实验室自动化场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -29,4 +32,4 @@ hotel.thermo_orbitor_rs2_hotel:
|
||||
model:
|
||||
mesh: thermo_orbitor_rs2_hotel
|
||||
type: device
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
laiyu_add_solid:
|
||||
category:
|
||||
- laiyu_add_solid
|
||||
class:
|
||||
action_value_mappings:
|
||||
add_powder_tube:
|
||||
@@ -355,6 +357,7 @@ laiyu_add_solid:
|
||||
status_types:
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: 来渝固体粉末自动分装设备,用于实验室化学试剂的精确称量和分装。该设备通过Modbus RTU协议与控制系统通信,集成了精密天平、三轴运动平台、粉筒管理系统等组件。支持多种粉末试剂的自动拿取、精确称量、定点分装和归位操作。具备高精度称量、位置控制和批量处理能力,适用于化学合成、药物研发、材料制备等需要精确固体试剂配制的实验室应用场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -379,4 +382,4 @@ laiyu_add_solid:
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
liquid_handler:
|
||||
category:
|
||||
- liquid_handler
|
||||
class:
|
||||
action_value_mappings:
|
||||
add_liquid:
|
||||
@@ -4357,6 +4359,7 @@ liquid_handler:
|
||||
module: unilabos.devices.liquid_handling.liquid_handler_abstract:LiquidHandlerAbstract
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: Liquid handler device controlled by pylabrobot
|
||||
handles:
|
||||
input:
|
||||
@@ -4395,8 +4398,10 @@ liquid_handler:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
liquid_handler.biomek:
|
||||
category:
|
||||
- liquid_handler
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-create_resource:
|
||||
@@ -5361,6 +5366,7 @@ liquid_handler.biomek:
|
||||
status_types:
|
||||
success: String
|
||||
type: python
|
||||
config_info: []
|
||||
description: Biomek液体处理器设备,基于pylabrobot控制
|
||||
handles: []
|
||||
icon: icon_yiyezhan.webp
|
||||
@@ -5376,8 +5382,10 @@ liquid_handler.biomek:
|
||||
required:
|
||||
- success
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
liquid_handler.prcxi:
|
||||
category:
|
||||
- liquid_handler
|
||||
class:
|
||||
action_value_mappings:
|
||||
add_liquid:
|
||||
@@ -7928,6 +7936,7 @@ liquid_handler.prcxi:
|
||||
status_types:
|
||||
reset_ok: bool
|
||||
type: python
|
||||
config_info: []
|
||||
description: prcxi液体处理器设备,基于pylabrobot控制
|
||||
handles: []
|
||||
icon: icon_yiyezhan.webp
|
||||
@@ -7973,8 +7982,10 @@ liquid_handler.prcxi:
|
||||
required:
|
||||
- reset_ok
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
liquid_handler.revvity:
|
||||
category:
|
||||
- liquid_handler
|
||||
class:
|
||||
action_value_mappings:
|
||||
run:
|
||||
@@ -8130,6 +8141,7 @@ liquid_handler.revvity:
|
||||
status: str
|
||||
success: bool
|
||||
type: python
|
||||
config_info: []
|
||||
description: ''
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -8148,4 +8160,4 @@ liquid_handler.revvity:
|
||||
- success
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
mock_chiller:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
emergency_stop:
|
||||
@@ -325,6 +327,7 @@ mock_chiller:
|
||||
target_temperature: float
|
||||
vessel: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Chiller Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -364,8 +367,10 @@ mock_chiller:
|
||||
- purpose
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_filter:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-emergency_stop:
|
||||
@@ -743,6 +748,7 @@ mock_filter:
|
||||
temperature: float
|
||||
vessel: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Filter Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -803,8 +809,10 @@ mock_filter:
|
||||
- target_volume
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_heater:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-set_heating_power:
|
||||
@@ -1361,6 +1369,7 @@ mock_heater:
|
||||
target_temperature: float
|
||||
vessel: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Heater Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -1409,8 +1418,10 @@ mock_heater:
|
||||
- stir_speed
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_pump:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-emergency_stop:
|
||||
@@ -1887,6 +1898,7 @@ mock_pump:
|
||||
transfer_time: float
|
||||
transfer_volume: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Pump Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -1968,8 +1980,10 @@ mock_pump:
|
||||
- time_remaining
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_rotavap:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-emergency_stop:
|
||||
@@ -2296,6 +2310,7 @@ mock_rotavap:
|
||||
temperature: float
|
||||
vacuum_level: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Rotavap Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -2341,8 +2356,10 @@ mock_rotavap:
|
||||
- target_temperature
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_separator:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
separate:
|
||||
@@ -3247,6 +3264,7 @@ mock_separator:
|
||||
valve_state: str
|
||||
waste_phase_to_vessel: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Simplified Mock Separator Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -3325,8 +3343,10 @@ mock_separator:
|
||||
- time_remaining
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_solenoid_valve:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-is_closed:
|
||||
@@ -3481,6 +3501,7 @@ mock_solenoid_valve:
|
||||
status: str
|
||||
valve_status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Solenoid Valve Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -3502,8 +3523,10 @@ mock_solenoid_valve:
|
||||
- status
|
||||
- valve_status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_stirrer:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-emergency_stop:
|
||||
@@ -3749,6 +3772,7 @@ mock_stirrer:
|
||||
target_temperature: float
|
||||
temperature: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Stirrer Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -3797,8 +3821,10 @@ mock_stirrer:
|
||||
- max_temperature
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_stirrer_new:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
start_stir:
|
||||
@@ -4279,6 +4305,7 @@ mock_stirrer_new:
|
||||
target_stir_speed: float
|
||||
vessel: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Stirrer Device (Copy Version)
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -4327,8 +4354,10 @@ mock_stirrer_new:
|
||||
- progress
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
mock_vacuum:
|
||||
category:
|
||||
- mock_devices
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-emergency_stop:
|
||||
@@ -4610,6 +4639,7 @@ mock_vacuum:
|
||||
target_vacuum: float
|
||||
vacuum_level: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Mock Vacuum Pump Device
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -4652,4 +4682,4 @@ mock_vacuum:
|
||||
- max_pump_speed
|
||||
- status_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
moveit.arm_slider:
|
||||
category:
|
||||
- moveit_config
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-check_tf_update_actions:
|
||||
@@ -321,6 +323,7 @@ moveit.arm_slider:
|
||||
module: unilabos.devices.ros_dev.moveit_interface:MoveitInterface
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: 机械臂与滑块运动系统,基于MoveIt2运动规划框架的多自由度机械臂控制设备。该系统集成机械臂和线性滑块,通过ROS2和MoveIt2实现精确的轨迹规划和协调运动控制。支持笛卡尔空间和关节空间的运动规划、碰撞检测、逆运动学求解等功能。适用于复杂的pick-and-place操作、精密装配、多工位协作等需要高精度多轴协调运动的实验室自动化应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -346,8 +349,10 @@ moveit.arm_slider:
|
||||
model:
|
||||
mesh: arm_slider
|
||||
type: device
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
moveit.toyo_xyz:
|
||||
category:
|
||||
- moveit_config
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-check_tf_update_actions:
|
||||
@@ -670,6 +675,7 @@ moveit.toyo_xyz:
|
||||
module: unilabos.devices.ros_dev.moveit_interface:MoveitInterface
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: 东洋XYZ三轴运动平台,基于MoveIt2运动规划框架的精密定位设备。该设备通过ROS2和MoveIt2实现三维空间的精确运动控制,支持复杂轨迹规划、多点定位、速度控制等功能。具备高精度定位、平稳运动、实时轨迹监控等特性。适用于精密加工、样品定位、检测扫描、自动化装配等需要高精度三维运动控制的实验室和工业应用场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -695,4 +701,4 @@ moveit.toyo_xyz:
|
||||
model:
|
||||
mesh: toyo_xyz
|
||||
type: device
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
rotavap.one:
|
||||
category:
|
||||
- organic_miscellaneous
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cmd_write:
|
||||
@@ -140,6 +142,7 @@ rotavap.one:
|
||||
module: unilabos.devices.rotavap.rotavap_one:RotavapOne
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: 旋转蒸发仪设备,用于有机化学实验中的溶剂回收和浓缩操作。该设备通过串口通信控制,集成旋转和真空泵功能,支持定时控制和自动化操作。具备旋转速度调节、真空度控制、温度管理等功能,实现高效的溶剂蒸发和回收。适用于有机合成、天然产物提取、药物制备等需要溶剂去除和浓缩的实验室应用场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -158,8 +161,10 @@ rotavap.one:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
separator.homemade:
|
||||
category:
|
||||
- organic_miscellaneous
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-read_sensor_loop:
|
||||
@@ -446,6 +451,7 @@ separator.homemade:
|
||||
module: unilabos.devices.separator.homemade_grbl_conductivity:SeparatorController
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: 液-液分离器设备,基于自制Grbl控制器的自动化分离系统。该设备集成搅拌、沉降、阀门控制和电导率传感器,通过串口通信实现精确的分离操作控制。支持自动搅拌、分层沉降、基于传感器反馈的智能分液等功能。适用于有机化学中的萃取分离、相分离、液-液提取等需要精确分离控制的实验应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -470,4 +476,4 @@ separator.homemade:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
solenoid_valve:
|
||||
category:
|
||||
- pump_and_valve
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-close:
|
||||
@@ -170,6 +172,7 @@ solenoid_valve:
|
||||
status: str
|
||||
valve_position: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: 电磁阀控制设备,用于精确的流体路径控制和开关操作。该设备通过串口通信控制电磁阀的开关状态,支持远程操作和状态监测。具备快速响应、可靠密封、状态反馈等特性,广泛应用于流体输送、样品进样、路径切换等需要精确流体控制的实验室自动化应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -191,8 +194,10 @@ solenoid_valve:
|
||||
- status
|
||||
- valve_position
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
solenoid_valve.mock:
|
||||
category:
|
||||
- pump_and_valve
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-is_closed:
|
||||
@@ -328,6 +333,7 @@ solenoid_valve.mock:
|
||||
status: str
|
||||
valve_position: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: 模拟电磁阀设备,用于系统测试和开发调试。该设备模拟真实电磁阀的开关操作和状态变化,提供与实际设备相同的控制接口和反馈机制。支持流体路径的虚拟控制,便于在没有实际硬件的情况下进行流体系统的集成测试和算法验证。适用于系统开发、流程调试和培训演示等场景。
|
||||
handles:
|
||||
- data_type: fluid
|
||||
@@ -359,8 +365,10 @@ solenoid_valve.mock:
|
||||
- status
|
||||
- valve_position
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
syringe_pump_with_valve.runze:
|
||||
category:
|
||||
- pump_and_valve
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-close:
|
||||
@@ -754,6 +762,7 @@ syringe_pump_with_valve.runze:
|
||||
velocity_grade: String
|
||||
velocity_init: String
|
||||
type: python
|
||||
config_info: []
|
||||
description: 润泽精密注射泵设备,集成阀门控制的高精度流体输送系统。该设备通过串口通信控制,支持多种运行模式和精确的体积控制。具备可变速度控制、精密定位、阀门切换、实时状态监控等功能。适用于微量液体输送、精密进样、流速控制、化学反应进料等需要高精度流体操作的实验室自动化应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -804,4 +813,4 @@ syringe_pump_with_valve.runze:
|
||||
- position
|
||||
- plunger_position
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
agv.SEER:
|
||||
category:
|
||||
- robot_agv
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-send:
|
||||
@@ -82,6 +84,7 @@ agv.SEER:
|
||||
pose: list
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: SEER AGV自动导引车设备,用于实验室内物料和设备的自主移动运输。该AGV通过TCP socket与导航系统通信,具备精确的定位和路径规划能力。支持实时位置监控、状态查询和导航任务执行,可在预设的实验室环境中自主移动至指定位置。适用于样品运输、设备转移、多工位协作等实验室自动化物流场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -103,4 +106,4 @@ agv.SEER:
|
||||
- pose
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
robotic_arm.UR:
|
||||
category:
|
||||
- robot_arm
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-arm_init:
|
||||
@@ -140,6 +142,7 @@ robotic_arm.UR:
|
||||
gripper_pose: float
|
||||
gripper_status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Universal Robots机械臂设备,用于实验室精密操作和自动化作业。该设备集成了UR机械臂本体、Robotiq夹爪和RTDE通信接口,支持六自由度精确运动控制和力觉反馈。具备实时位置监控、状态反馈、轨迹规划等功能,可执行复杂的多点位运动任务。适用于样品抓取、精密装配、实验器具操作等需要高精度和高重复性的实验室自动化场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -170,4 +173,4 @@ robotic_arm.UR:
|
||||
- arm_status
|
||||
- gripper_status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
gripper.misumi_rz:
|
||||
category:
|
||||
- robot_gripper
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-data_loop:
|
||||
@@ -417,6 +419,7 @@ gripper.misumi_rz:
|
||||
status_types:
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Misumi RZ系列电子夹爪设备,集成旋转和抓取双重功能的精密夹爪系统。该设备通过Modbus RTU协议与控制系统通信,支持位置、速度、力矩的精确控制。具备高精度的位置反馈、实时状态监控和故障检测功能。适用于需要精密抓取和旋转操作的实验室自动化场景,如样品管理、精密装配、器件操作等应用。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -444,8 +447,10 @@ gripper.misumi_rz:
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
gripper.mock:
|
||||
category:
|
||||
- robot_gripper
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-edit_id:
|
||||
@@ -563,6 +568,7 @@ gripper.mock:
|
||||
torque: float
|
||||
velocity: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: 模拟夹爪设备,用于系统测试和开发调试。该设备模拟真实夹爪的位置、速度、力矩等物理特性,支持虚拟的抓取和移动操作。提供与真实夹爪相同的接口和状态反馈,便于在没有实际硬件的情况下进行系统集成测试和算法验证。适用于软件开发、系统调试和培训演示等场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -587,4 +593,4 @@ gripper.mock:
|
||||
- torque
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
linear_motion.grbl:
|
||||
category:
|
||||
- robot_linear_motion
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-initialize:
|
||||
@@ -430,6 +432,7 @@ linear_motion.grbl:
|
||||
spindle_speed: float
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Grbl数控机床(CNC)设备,用于实验室精密加工和三轴定位操作。该设备基于Grbl固件,通过串口通信控制步进电机实现X、Y、Z三轴的精确运动。支持绝对定位、轨迹规划、主轴控制和实时状态监控。具备安全限位保护和运动平滑控制功能。适用于精密钻孔、铣削、雕刻、样品制备等需要高精度定位和加工的实验室应用场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -466,8 +469,10 @@ linear_motion.grbl:
|
||||
- position
|
||||
- spindle_speed
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
motor.iCL42:
|
||||
category:
|
||||
- robot_linear_motion
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-execute_run_motor:
|
||||
@@ -604,6 +609,7 @@ motor.iCL42:
|
||||
motor_position: int
|
||||
success: bool
|
||||
type: python
|
||||
config_info: []
|
||||
description: iCL42步进电机驱动器,用于实验室设备的精密线性运动控制。该设备通过串口通信控制iCL42型步进电机驱动器,支持多种运动模式和精确的位置、速度控制。具备位置反馈、运行状态监控和故障检测功能。适用于自动进样器、样品传送、精密定位平台等需要准确线性运动控制的实验室自动化设备。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -631,4 +637,4 @@ motor.iCL42:
|
||||
- is_executing_run
|
||||
- success
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
lh_joint_publisher:
|
||||
category:
|
||||
- sim_nodes
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-check_tf_update_actions:
|
||||
@@ -285,6 +287,7 @@ lh_joint_publisher:
|
||||
module: unilabos.devices.ros_dev.liquid_handler_joint_publisher:LiquidHandlerJointPublisher
|
||||
status_types: {}
|
||||
type: ros2
|
||||
config_info: []
|
||||
description: 液体处理器关节发布器,用于ROS2仿真系统中的液体处理设备运动控制。该节点通过发布关节状态驱动仿真模型中的机械臂运动,支持三维坐标到关节空间的逆运动学转换、多关节协调控制、资源跟踪和TF变换。具备精确的位置控制、速度调节、pick-and-place操作等功能。适用于液体处理系统的虚拟仿真、运动规划验证、系统集成测试等应用场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -309,4 +312,4 @@ lh_joint_publisher:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
chiller:
|
||||
category:
|
||||
- temperature
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-build_modbus_frame:
|
||||
@@ -156,6 +158,7 @@ chiller:
|
||||
module: unilabos.devices.temperature.chiller:Chiller
|
||||
status_types: {}
|
||||
type: python
|
||||
config_info: []
|
||||
description: 实验室制冷设备,用于精确的温度控制和冷却操作。该设备通过Modbus RTU协议与控制系统通信,支持精确的温度设定和监控。具备快速降温、恒温控制和温度保持功能,广泛应用于需要低温环境的化学反应、样品保存、结晶操作等实验场景。提供稳定可靠的冷却性能,确保实验过程的温度精度。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -174,8 +177,10 @@ chiller:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
heaterstirrer.dalong:
|
||||
category:
|
||||
- temperature
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-close:
|
||||
@@ -523,6 +528,7 @@ heaterstirrer.dalong:
|
||||
temp_target: float
|
||||
temp_warning: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: 大龙加热搅拌器,集成加热和搅拌双重功能的实验室设备。该设备通过串口通信控制,支持精确的温度调节、搅拌速度控制和安全保护功能。具备实时温度监测、目标温度设定、安全温度报警等特性。适用于化学合成、样品制备、反应控制等需要同时进行加热和搅拌的实验操作,提供稳定均匀的反应环境。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -559,8 +565,10 @@ heaterstirrer.dalong:
|
||||
- temp_warning
|
||||
- temp_target
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
tempsensor:
|
||||
category:
|
||||
- temperature
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-build_modbus_request:
|
||||
@@ -719,6 +727,7 @@ tempsensor:
|
||||
status_types:
|
||||
value: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: 高精度温度传感器设备,用于实验室环境和设备的温度监测。该传感器通过Modbus RTU协议与控制系统通信,提供实时准确的温度数据。具备高精度测量、报警温度设定、数据稳定性好等特点。适用于反应器监控、环境温度监测、设备保护等需要精确温度测量的实验场景,为实验安全和数据可靠性提供保障。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -746,4 +755,4 @@ tempsensor:
|
||||
required:
|
||||
- value
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
gas_source.mock:
|
||||
category:
|
||||
- vacuum_and_purge
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-is_closed:
|
||||
@@ -149,6 +151,7 @@ gas_source.mock:
|
||||
status_types:
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: 模拟气体源设备,用于系统测试和开发调试。该设备模拟真实气体源的开关控制和状态监测功能,支持气体供应的启停操作。提供与真实气体源相同的接口和状态反馈,便于在没有实际硬件的情况下进行系统集成测试和算法验证。适用于气路系统调试、软件开发和实验流程验证等场景。
|
||||
handles:
|
||||
- data_key: fluid_out
|
||||
@@ -173,8 +176,10 @@ gas_source.mock:
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
vacuum_pump.mock:
|
||||
category:
|
||||
- vacuum_and_purge
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-is_closed:
|
||||
@@ -325,6 +330,7 @@ vacuum_pump.mock:
|
||||
status_types:
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: 模拟真空泵设备,用于系统测试和开发调试。该设备模拟真实真空泵的抽气功能和状态控制,支持真空系统的启停操作和状态监测。提供与真实真空泵相同的接口和控制逻辑,便于在没有实际硬件的情况下进行真空系统的集成测试。适用于真空工艺调试、软件开发和实验流程验证等场景。
|
||||
handles:
|
||||
- data_key: fluid_in
|
||||
@@ -349,4 +355,4 @@ vacuum_pump.mock:
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
virtual_centrifuge:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -222,6 +224,7 @@ virtual_centrifuge:
|
||||
target_temp: float
|
||||
time_remaining: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Centrifuge for CentrifugeProtocol Testing
|
||||
handles:
|
||||
- data_key: vessel
|
||||
@@ -282,8 +285,10 @@ virtual_centrifuge:
|
||||
- progress
|
||||
- message
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_column:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -609,6 +614,7 @@ virtual_column:
|
||||
progress: float
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Column Chromatography Device for RunColumn Protocol Testing
|
||||
handles:
|
||||
- data_key: from_vessel
|
||||
@@ -674,8 +680,10 @@ virtual_column:
|
||||
- current_phase
|
||||
- final_volume
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_filter:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -1002,6 +1010,7 @@ virtual_filter:
|
||||
progress: float
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Filter for FilterProtocol Testing
|
||||
handles:
|
||||
- data_key: vessel_in
|
||||
@@ -1069,8 +1078,10 @@ virtual_filter:
|
||||
- max_stir_speed
|
||||
- max_volume
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_gas_source:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -1261,6 +1272,7 @@ virtual_gas_source:
|
||||
status_types:
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual gas source
|
||||
handles:
|
||||
- data_key: fluid_out
|
||||
@@ -1288,8 +1300,10 @@ virtual_gas_source:
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_heatchill:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -1803,6 +1817,7 @@ virtual_heatchill:
|
||||
status: str
|
||||
stir_speed: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual HeatChill for HeatChillProtocol Testing
|
||||
handles:
|
||||
- data_key: vessel
|
||||
@@ -1854,8 +1869,10 @@ virtual_heatchill:
|
||||
- min_temp
|
||||
- max_stir_speed
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_multiway_valve:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-close:
|
||||
@@ -2155,6 +2172,7 @@ virtual_multiway_valve:
|
||||
valve_position: int
|
||||
valve_state: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual 8-Way Valve for flow direction control
|
||||
handles:
|
||||
- data_key: fluid_in
|
||||
@@ -2275,8 +2293,10 @@ virtual_multiway_valve:
|
||||
- flow_path
|
||||
- info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_pump:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-clean_vessel:
|
||||
@@ -2741,6 +2761,7 @@ virtual_pump:
|
||||
transferred_volume: float
|
||||
valve_position: int
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Pump for PumpTransferProtocol Testing
|
||||
handles:
|
||||
- data_key: fluid_in
|
||||
@@ -2794,8 +2815,10 @@ virtual_pump:
|
||||
- transferred_volume
|
||||
- current_status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_rotavap:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -3048,6 +3071,7 @@ virtual_rotavap:
|
||||
status: str
|
||||
vacuum_pressure: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Rotary Evaporator for EvaporateProtocol Testing
|
||||
handles:
|
||||
- data_key: vessel_in
|
||||
@@ -3121,8 +3145,10 @@ virtual_rotavap:
|
||||
- max_rotation_speed
|
||||
- remaining_time
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_separator:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -3938,6 +3964,7 @@ virtual_separator:
|
||||
stir_speed: float
|
||||
volume: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Separator for SeparateProtocol Testing
|
||||
handles:
|
||||
- data_key: from_vessel
|
||||
@@ -4013,8 +4040,10 @@ virtual_separator:
|
||||
- progress
|
||||
- message
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_solenoid_valve:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -4277,6 +4306,7 @@ virtual_solenoid_valve:
|
||||
valve_position: str
|
||||
valve_state: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Solenoid Valve for simple on/off flow control
|
||||
handles:
|
||||
- data_key: fluid_port_in
|
||||
@@ -4324,8 +4354,10 @@ virtual_solenoid_valve:
|
||||
- valve_position
|
||||
- state
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_solid_dispenser:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
add_solid:
|
||||
@@ -4656,6 +4688,7 @@ virtual_solid_dispenser:
|
||||
status: str
|
||||
total_operations: int
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Solid Dispenser for Add Protocol Testing - supports mass and
|
||||
molar additions
|
||||
handles:
|
||||
@@ -4704,8 +4737,10 @@ virtual_solid_dispenser:
|
||||
- total_operations
|
||||
- device_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_stirrer:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -5219,6 +5254,7 @@ virtual_stirrer:
|
||||
remaining_time: float
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Stirrer for StirProtocol Testing
|
||||
handles:
|
||||
- data_key: vessel
|
||||
@@ -5270,8 +5306,10 @@ virtual_stirrer:
|
||||
- min_speed
|
||||
- device_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_transfer_pump:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-aspirate:
|
||||
@@ -5728,6 +5766,7 @@ virtual_transfer_pump:
|
||||
status: str
|
||||
transfer_rate: float
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual Transfer Pump for TransferProtocol Testing (Syringe-style)
|
||||
handles:
|
||||
- data_key: fluid_port
|
||||
@@ -5773,8 +5812,10 @@ virtual_transfer_pump:
|
||||
- remaining_capacity
|
||||
- pump_info
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
virtual_vacuum_pump:
|
||||
category:
|
||||
- virtual_device
|
||||
class:
|
||||
action_value_mappings:
|
||||
auto-cleanup:
|
||||
@@ -5965,6 +6006,7 @@ virtual_vacuum_pump:
|
||||
status_types:
|
||||
status: str
|
||||
type: python
|
||||
config_info: []
|
||||
description: Virtual vacuum pump
|
||||
handles:
|
||||
- data_key: fluid_in
|
||||
@@ -5992,4 +6034,4 @@ virtual_vacuum_pump:
|
||||
required:
|
||||
- status
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
workstation:
|
||||
category:
|
||||
- work_station
|
||||
class:
|
||||
action_value_mappings:
|
||||
AGVTransferProtocol:
|
||||
@@ -6033,6 +6035,7 @@ workstation:
|
||||
module: unilabos.ros.nodes.presets.protocol_node:ROS2ProtocolNode
|
||||
status_types: {}
|
||||
type: ros2
|
||||
config_info: []
|
||||
description: Workstation
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -6057,4 +6060,4 @@ workstation:
|
||||
properties: {}
|
||||
required: []
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
zhida_hplc:
|
||||
category:
|
||||
- zhida_hplc
|
||||
class:
|
||||
action_value_mappings:
|
||||
abort:
|
||||
@@ -150,6 +152,7 @@ zhida_hplc:
|
||||
methods: dict
|
||||
status: dict
|
||||
type: python
|
||||
config_info: []
|
||||
description: 智达高效液相色谱(HPLC)分析设备,用于实验室样品的分离、检测和定量分析。该设备通过TCP socket与HPLC控制系统通信,支持远程控制和状态监控。具备自动进样、梯度洗脱、多检测器数据采集等功能,可执行复杂的色谱分析方法。适用于化学分析、药物检测、环境监测、生物样品分析等需要高精度分离分析的实验室应用场景。
|
||||
handles: []
|
||||
icon: ''
|
||||
@@ -177,4 +180,4 @@ zhida_hplc:
|
||||
- status
|
||||
- methods
|
||||
type: object
|
||||
version: 0.0.1
|
||||
version: 1.0.0
|
||||
|
||||
@@ -12,7 +12,7 @@ import yaml
|
||||
from unilabos.ros.msgs.message_converter import msg_converter_manager, ros_action_to_json_schema, String
|
||||
from unilabos.utils import logger
|
||||
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
|
||||
|
||||
DEFAULT_PATHS = [Path(__file__).absolute().parent]
|
||||
@@ -119,7 +119,7 @@ class Registry:
|
||||
},
|
||||
},
|
||||
},
|
||||
"version": "0.0.1",
|
||||
"version": "1.0.0",
|
||||
"icon": "icon_device.webp",
|
||||
"registry_type": "device",
|
||||
"handles": [],
|
||||
@@ -153,14 +153,29 @@ class Registry:
|
||||
# 为每个资源添加文件路径信息
|
||||
for resource_id, resource_info in data.items():
|
||||
resource_info["file_path"] = str(file.absolute()).replace("\\", "/")
|
||||
if "description" not in resource_info:
|
||||
resource_info["description"] = ""
|
||||
if "version" not in resource_info:
|
||||
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:
|
||||
resource_info["icon"] = ""
|
||||
if "handles" not in resource_info:
|
||||
resource_info["handles"] = []
|
||||
if "init_param_schema" not in resource_info:
|
||||
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"
|
||||
self.resource_type_registry.update(data)
|
||||
logger.debug(
|
||||
@@ -345,7 +360,7 @@ class Registry:
|
||||
}
|
||||
|
||||
def load_device_types(self, path: os.PathLike, complete_registry: bool):
|
||||
return
|
||||
# return
|
||||
abs_path = Path(path).absolute()
|
||||
devices_path = abs_path / "devices"
|
||||
device_comms_path = abs_path / "device_comms"
|
||||
@@ -371,7 +386,13 @@ class Registry:
|
||||
for device_id, device_config in data.items():
|
||||
# 添加文件路径信息 - 使用规范化的完整文件路径
|
||||
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:
|
||||
device_config["description"] = ""
|
||||
if "icon" not in device_config:
|
||||
|
||||
Reference in New Issue
Block a user