From 3b32dcf06694cd2ba76acf15f6872043fa967405 Mon Sep 17 00:00:00 2001 From: KCFeng425 <2100011801@stu.pku.edu.cn> Date: Sat, 14 Jun 2025 15:48:56 +0800 Subject: [PATCH] Update virtual_device.yaml --- unilabos/registry/devices/virtual_device.yaml | 189 +++++++++++++++++- 1 file changed, 187 insertions(+), 2 deletions(-) diff --git a/unilabos/registry/devices/virtual_device.yaml b/unilabos/registry/devices/virtual_device.yaml index f92baf2..da8f700 100644 --- a/unilabos/registry/devices/virtual_device.yaml +++ b/unilabos/registry/devices/virtual_device.yaml @@ -35,6 +35,24 @@ virtual_pump: status: status result: success: success + # 虚拟泵节点配置 - 具有多通道阀门特性,根据valve_position可连接多个容器 + handles: + input: + - handler_key: pump-inlet + label: Pump Inlet + data_type: fluid + io_type: target + data_source: handle + data_key: fluid_in + description: "泵的进液口,连接源容器" + output: + - handler_key: pump-outlet-1 + label: Outlet Port 1 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_out_1 + description: "阀门位置1的出液口" schema: type: object properties: @@ -82,6 +100,24 @@ virtual_stirrer: status: status result: success: success + # 虚拟搅拌器节点配置 - 只有一个连接点,用于连接需要搅拌的容器 + handles: + input: + - handler_key: stirrer-vessel + label: Vessel Connection + data_type: resource + io_type: target + data_source: handle + data_key: vessel + description: "搅拌器连接的反应容器,提供机械搅拌功能" + output: + - handler_key: stirrer-vessel-out + label: Stirred Vessel + data_type: resource + io_type: source + data_source: executor + data_key: vessel + description: "经过搅拌处理的反应容器" schema: type: object properties: @@ -127,6 +163,66 @@ virtual_valve: feedback: {} result: success: success + # 虚拟阀门节点配置 - 6通阀门,1个输入口,6个输出口,可切换流向 + handles: + input: + - handler_key: valve-inlet + label: Valve Inlet + data_type: fluid + io_type: target + data_source: handle + data_key: fluid_in + description: "阀门进液口,接收来源流体" + output: + - handler_key: valve-port-1 + label: Port 1 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_1 + description: "阀门端口1,position=1时流体从此口流出" + - handler_key: valve-port-2 + label: Port 2 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_2 + description: "阀门端口2,position=2时流体从此口流出" + - handler_key: valve-port-3 + label: Port 3 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_3 + description: "阀门端口3,position=3时流体从此口流出" + - handler_key: valve-port-4 + label: Port 4 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_4 + description: "阀门端口4,position=4时流体从此口流出" + - handler_key: valve-port-5 + label: Port 5 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_5 + description: "阀门端口5,position=5时流体从此口流出" + - handler_key: valve-port-6 + label: Port 6 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_6 + description: "阀门端口6,position=6时流体从此口流出" + - handler_key: valve-port-7 + label: Port 7 + data_type: fluid + io_type: source + data_source: executor + data_key: fluid_port_6 + description: "阀门端口7,position=6时流体从此口流出" schema: type: object properties: @@ -135,7 +231,7 @@ virtual_valve: default: "VIRTUAL" positions: type: integer - default: 6 + default: 7 additionalProperties: false virtual_centrifuge: @@ -170,6 +266,24 @@ virtual_centrifuge: result: success: success message: message + # 虚拟离心机节点配置 - 单个样品处理设备,输入输出都是同一个样品容器 + handles: + input: + - handler_key: centrifuge-sample + label: Sample Input + data_type: resource + io_type: target + data_source: handle + data_key: vessel + description: "需要离心的样品容器" + output: + - handler_key: centrifuge-sample-out + label: Centrifuged Sample + data_type: resource + io_type: source + data_source: executor + data_key: vessel + description: "经过离心处理的样品容器" schema: type: object properties: @@ -222,6 +336,31 @@ virtual_filter: result: success: success message: message + # 虚拟过滤器节点配置 - 分离设备,1个输入(原始样品),2个输出(滤液和滤渣) + handles: + input: + - handler_key: filter-sample-in + label: Sample Input + data_type: resource + io_type: target + data_source: handle + data_key: vessel + description: "需要过滤的原始样品容器" + output: + - handler_key: filter-filtrate-out + label: Filtrate Output + data_type: resource + io_type: source + data_source: executor + data_key: filtrate_vessel + description: "过滤后的滤液容器" + - handler_key: filter-residue-out + label: Filter Residue + data_type: resource + io_type: source + data_source: executor + data_key: residue_vessel + description: "过滤后的滤渣(固体残留物)" schema: type: object properties: @@ -275,6 +414,24 @@ virtual_heatchill: status: status result: success: success + # 虚拟加热/冷却器节点配置 - 温控设备,单一连接点用于放置容器 + handles: + input: + - handler_key: heatchill-vessel + label: Vessel Connection + data_type: resource + io_type: target + data_source: handle + data_key: vessel + description: "放置在加热/冷却台上的反应容器" + output: + - handler_key: heatchill-vessel-out + label: Temperature Controlled Vessel + data_type: resource + io_type: source + data_source: executor + data_key: vessel + description: "经过温度控制处理的反应容器" schema: type: object properties: @@ -293,7 +450,7 @@ virtual_heatchill: additionalProperties: false virtual_transfer_pump: - description: Virtual Transfer Pump for TransferProtocol Testing + description: Virtual Transfer Pump for TransferProtocol Testing (Syringe-style) class: module: unilabos.devices.virtual.virtual_transferpump:VirtualTransferPump type: python @@ -328,6 +485,16 @@ virtual_transfer_pump: result: success: success message: message + # 注射器式转移泵节点配置 - 只有一个双向连接口,可吸入和排出液体 + handles: + bidirectional: + - handler_key: syringe-port + label: Syringe Port + data_type: fluid + io_type: bidirectional + data_source: handle + data_key: fluid_port + description: "注射器式转移泵的唯一连接口,通过阀门切换实现吸入和排出" schema: type: object properties: @@ -370,6 +537,24 @@ virtual_column: result: success: success message: message + # 虚拟色谱柱节点配置 - 分离纯化设备,1个样品输入口,1个纯化产物输出口 + handles: + input: + - handler_key: column-sample-inlet + label: Sample Input + data_type: resource + io_type: target + data_source: handle + data_key: from_vessel + description: "需要纯化的样品输入口" + output: + - handler_key: column-product-outlet + label: Purified Product + data_type: resource + io_type: source + data_source: executor + data_key: to_vessel + description: "经过色谱柱纯化的产物输出口" schema: type: object properties: