Files
Uni-Lab-OS/unilabos/registry/devices/virtual_device.yaml
Xuwznln 4224008a92 注册表自动补全 & Action自动注册 (#57)
* add biomek.py demo implementation

* 更新LiquidHandlerBiomek类,添加资源创建功能,优化协议创建方法,修复部分代码格式问题,更新YAML配置以支持新功能。

* Test

* fix biomek success type

* Convert LH action to biomek.

* Update biomek.py

* 注册表上报handle和schema (param input)

* 修复biomek缺少的字段

* delete 's'

* Remove warnings

* Update biomek.py

* Biomek test

* Update biomek.py

* 新增transfer_biomek的msg

* New transfer_biomek

* Updated transfer_biomek

* 更新transfer_biomek的msg

* 更新transfer_biomek的msg

* 支持Biomek创建

* new action

* fix key name typo

* New parameter for biomek to run.

* Refine

* Update

* new actions

* new actions

* 1

* registry

* fix biomek startup
add action handles

* fix handles not as default entry

* biomek_test.py

biomek_test.py是最新的版本,运行它会生成complete_biomek_protocol.json

* Update biomek.py

* biomek_test.py

* fix liquid_handler.biomek handles

* host node新增resource add时间统计
create_resource新增handle
bump version to 0.9.2

* 修正物料上传时间
改用biomek_test
增加ResultInfoEncoder
支持返回结果上传

* 正确发送return_info结果

* 同步执行状态信息

* 取消raiseValueError提示

* Update biomek_test.py

* 0608 DONE

* 同步了Biomek.py 现在应可用

* biomek switch back to non-test

* temp disable initialize resource

* 37-biomek-i5i7 (#40)

* add biomek.py demo implementation

* 更新LiquidHandlerBiomek类,添加资源创建功能,优化协议创建方法,修复部分代码格式问题,更新YAML配置以支持新功能。

* Test

* fix biomek success type

* Convert LH action to biomek.

* Update biomek.py

* 注册表上报handle和schema (param input)

* 修复biomek缺少的字段

* delete 's'

* Remove warnings

* Update biomek.py

* Biomek test

* Update biomek.py

* 新增transfer_biomek的msg

* New transfer_biomek

* Updated transfer_biomek

* 更新transfer_biomek的msg

* 更新transfer_biomek的msg

* 支持Biomek创建

* new action

* fix key name typo

* New parameter for biomek to run.

* Refine

* Update

* new actions

* new actions

* 1

* registry

* fix biomek startup
add action handles

* fix handles not as default entry

* biomek_test.py

biomek_test.py是最新的版本,运行它会生成complete_biomek_protocol.json

* Update biomek.py

* biomek_test.py

* fix liquid_handler.biomek handles

* host node新增resource add时间统计
create_resource新增handle
bump version to 0.9.2

* 修正物料上传时间
改用biomek_test
增加ResultInfoEncoder
支持返回结果上传

* 正确发送return_info结果

* 同步执行状态信息

* 取消raiseValueError提示

* Update biomek_test.py

* 0608 DONE

* 同步了Biomek.py 现在应可用

* biomek switch back to non-test

* temp disable initialize resource

* Refine biomek

* Refine copy issue

* Refine

---------

Co-authored-by: Junhan Chang <changjh@pku.edu.cn>
Co-authored-by: Guangxin Zhang <guangxin.zhang.bio@gmail.com>
Co-authored-by: qxw138 <qxw@stu.pku.edu.cn>

* Device visualization (#39)

* Update README and MQTTClient for installation instructions and code improvements

* feat: 支持local_config启动
add: 增加对crt path的说明,为传入config.py的相对路径
move: web component

* add: registry description

* add 3d visualization

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

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

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

* 完成TF发布

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

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

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

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

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

* feat: node_info_update srv
fix: OTDeck cant create

* close #12
feat: slave node registry

* feat: show machine name
fix: host node registry not uploaded

* feat: add hplc registry

* feat: add hplc registry

* fix: hplc status typo

* fix: devices/

* 完成启动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

* fix: device.class possible null

* fix: HPLC additions with online service

* fix: slave mode spin not working

* fix: slave mode spin not working

* 修复rviz位置问题,

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

* feat: 多ProtocolNode 允许子设备ID相同
feat: 上报发现的ActionClient
feat: Host重启动,通过discover机制要求slaveNode重新注册,实现信息及时上报

* feat: 支持env设置config

* fix: running logic

* fix: running logic

* fix: missing ot

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

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

* 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>

* fix: missing hostname in devices_names
fix: upload_file for model file

* fix: missing paho-mqtt package
bump version to 0.9.0

* fix startup
add ResourceCreateFromOuter.action

* fix type hint

* update actions

* update actions

* host node add_resource_from_outer
fix cmake list

* pass device config to device class

* add: bind_parent_ids to resource create action
fix: message convert string

* fix: host node should not be re_discovered

* feat: resource tracker support dict

* feat: add more necessary params

* feat: fix boolean null in registry action data

* feat: add outer resource

* 编写mesh添加action

* feat: append resource

* add action

* feat: vis 2d for plr

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

* Device visualization (#22)

* 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中

* 编写mesh添加action

* add action

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

---------

Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>

* fix: multi channel

* fix: aspirate

* fix: aspirate

* fix: aspirate

* fix: aspirate

* 提交

* fix: jobadd

* fix: jobadd

* fix: msg converter

* tijiao

* add resource creat easy action

* identify debug msg

* mq client id

* 提取lh的joint发布

* unify liquid_handler definition

* 修改物料跟随与物料添加逻辑

修改物料跟随与物料添加逻辑
将joint_publisher类移出lh的backends,但仍需要对lh的backends进行一些改写

* Revert "修改物料跟随与物料添加逻辑"

This reverts commit 498c997ad7.

* Reapply "修改物料跟随与物料添加逻辑"

This reverts commit 3a60d2ae81.

* Revert "Merge remote-tracking branch 'upstream/dev' into device_visualization"

This reverts commit fa727220af, reversing
changes made to 498c997ad7.

* 修改物料放下时的方法,如果选择

修改物料放下时的方法,
如果选择drop_trash,则删除物料显示
如果选择drop,则让其解除连接

* add biomek.py demo implementation

* 更新LiquidHandlerBiomek类,添加资源创建功能,优化协议创建方法,修复部分代码格式问题,更新YAML配置以支持新功能。

* Test

* fix biomek success type

* Convert LH action to biomek.

* Update biomek.py

* 注册表上报handle和schema (param input)

* 修复biomek缺少的字段

* delete 's'

* Remove warnings

* Update biomek.py

* Biomek test

* Update biomek.py

* 新增transfer_biomek的msg

* New transfer_biomek

* Updated transfer_biomek

* 更新transfer_biomek的msg

* 更新transfer_biomek的msg

* 支持Biomek创建

* new action

* fix key name typo

* New parameter for biomek to run.

* Refine

* Update

* new actions

* new actions

* 1

* registry

* fix biomek startup
add action handles

* fix handles not as default entry

* unilab添加moveit启动

1,整合所有moveit节点到一个move_group中,并整合所有的controller依次激活
2,添加pymoveit2的节点,使用json可直接启动
3,修改机械臂规划方式,添加约束,让冗余关节不会进行过多移动

* biomek_test.py

biomek_test.py是最新的版本,运行它会生成complete_biomek_protocol.json

* Update biomek.py

* biomek_test.py

* fix liquid_handler.biomek handles

* 修改物体attach时,多次赋值当前时间导致卡顿问题,

* Revert "修改物体attach时,多次赋值当前时间导致卡顿问题,"

This reverts commit 56d45b94f5.

* Reapply "修改物体attach时,多次赋值当前时间导致卡顿问题,"

This reverts commit 07d9db20c3.

* 添加缺少物料:"plate_well_G12",

* host node新增resource add时间统计
create_resource新增handle
bump version to 0.9.2

* 修正物料上传时间
改用biomek_test
增加ResultInfoEncoder
支持返回结果上传

* 正确发送return_info结果

* 同步执行状态信息

* 取消raiseValueError提示

* Update biomek_test.py

* 0608 DONE

* 同步了Biomek.py 现在应可用

* biomek switch back to non-test

* temp disable initialize resource

* add

* fix tip resource data

* liquid states

* change to debug level

* Revert "change to debug level"

This reverts commit 5d9953c3e5.

* Reapply "change to debug level"

This reverts commit 2487bb6ffc.

* fix tip resource data

* add full device

* add moveit yaml

* 修复moveit
增加post_init阶段,给予ros_node反向

* remove necessary node

* fix moveit action client

* remove necessary imports

* Update moveit_interface.py

* fix handler_key uppercase

* json add liquids

* fix setup

* add

* change to "sources" and "targets" for lh

* bump version

* remove parent's parent link

---------

Co-authored-by: Harvey Que <Q-Query@outlook.com>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>
Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: Junhan Chang <changjh@pku.edu.cn>
Co-authored-by: Guangxin Zhang <guangxin.zhang.bio@gmail.com>
Co-authored-by: qxw138 <qxw@stu.pku.edu.cn>

* Device visualization (#41)

* Update README and MQTTClient for installation instructions and code improvements

* feat: 支持local_config启动
add: 增加对crt path的说明,为传入config.py的相对路径
move: web component

* add: registry description

* add 3d visualization

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

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

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

* 完成TF发布

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

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

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

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

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

* feat: node_info_update srv
fix: OTDeck cant create

* close #12
feat: slave node registry

* feat: show machine name
fix: host node registry not uploaded

* feat: add hplc registry

* feat: add hplc registry

* fix: hplc status typo

* fix: devices/

* 完成启动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

* fix: device.class possible null

* fix: HPLC additions with online service

* fix: slave mode spin not working

* fix: slave mode spin not working

* 修复rviz位置问题,

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

* feat: 多ProtocolNode 允许子设备ID相同
feat: 上报发现的ActionClient
feat: Host重启动,通过discover机制要求slaveNode重新注册,实现信息及时上报

* feat: 支持env设置config

* fix: running logic

* fix: running logic

* fix: missing ot

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

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

* 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>

* fix: missing hostname in devices_names
fix: upload_file for model file

* fix: missing paho-mqtt package
bump version to 0.9.0

* fix startup
add ResourceCreateFromOuter.action

* fix type hint

* update actions

* update actions

* host node add_resource_from_outer
fix cmake list

* pass device config to device class

* add: bind_parent_ids to resource create action
fix: message convert string

* fix: host node should not be re_discovered

* feat: resource tracker support dict

* feat: add more necessary params

* feat: fix boolean null in registry action data

* feat: add outer resource

* 编写mesh添加action

* feat: append resource

* add action

* feat: vis 2d for plr

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

* Device visualization (#22)

* 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中

* 编写mesh添加action

* add action

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

---------

Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>

* fix: multi channel

* fix: aspirate

* fix: aspirate

* fix: aspirate

* fix: aspirate

* 提交

* fix: jobadd

* fix: jobadd

* fix: msg converter

* tijiao

* add resource creat easy action

* identify debug msg

* mq client id

* 提取lh的joint发布

* unify liquid_handler definition

* 修改物料跟随与物料添加逻辑

修改物料跟随与物料添加逻辑
将joint_publisher类移出lh的backends,但仍需要对lh的backends进行一些改写

* Revert "修改物料跟随与物料添加逻辑"

This reverts commit 498c997ad7.

* Reapply "修改物料跟随与物料添加逻辑"

This reverts commit 3a60d2ae81.

* Revert "Merge remote-tracking branch 'upstream/dev' into device_visualization"

This reverts commit fa727220af, reversing
changes made to 498c997ad7.

* 修改物料放下时的方法,如果选择

修改物料放下时的方法,
如果选择drop_trash,则删除物料显示
如果选择drop,则让其解除连接

* add biomek.py demo implementation

* 更新LiquidHandlerBiomek类,添加资源创建功能,优化协议创建方法,修复部分代码格式问题,更新YAML配置以支持新功能。

* Test

* fix biomek success type

* Convert LH action to biomek.

* Update biomek.py

* 注册表上报handle和schema (param input)

* 修复biomek缺少的字段

* delete 's'

* Remove warnings

* Update biomek.py

* Biomek test

* Update biomek.py

* 新增transfer_biomek的msg

* New transfer_biomek

* Updated transfer_biomek

* 更新transfer_biomek的msg

* 更新transfer_biomek的msg

* 支持Biomek创建

* new action

* fix key name typo

* New parameter for biomek to run.

* Refine

* Update

* new actions

* new actions

* 1

* registry

* fix biomek startup
add action handles

* fix handles not as default entry

* unilab添加moveit启动

1,整合所有moveit节点到一个move_group中,并整合所有的controller依次激活
2,添加pymoveit2的节点,使用json可直接启动
3,修改机械臂规划方式,添加约束,让冗余关节不会进行过多移动

* biomek_test.py

biomek_test.py是最新的版本,运行它会生成complete_biomek_protocol.json

* Update biomek.py

* biomek_test.py

* fix liquid_handler.biomek handles

* 修改物体attach时,多次赋值当前时间导致卡顿问题,

* Revert "修改物体attach时,多次赋值当前时间导致卡顿问题,"

This reverts commit 56d45b94f5.

* Reapply "修改物体attach时,多次赋值当前时间导致卡顿问题,"

This reverts commit 07d9db20c3.

* 添加缺少物料:"plate_well_G12",

* host node新增resource add时间统计
create_resource新增handle
bump version to 0.9.2

* 修正物料上传时间
改用biomek_test
增加ResultInfoEncoder
支持返回结果上传

* 正确发送return_info结果

* 同步执行状态信息

* 取消raiseValueError提示

* Update biomek_test.py

* 0608 DONE

* 同步了Biomek.py 现在应可用

* biomek switch back to non-test

* temp disable initialize resource

* add

* fix tip resource data

* liquid states

* change to debug level

* Revert "change to debug level"

This reverts commit 5d9953c3e5.

* Reapply "change to debug level"

This reverts commit 2487bb6ffc.

* fix tip resource data

* add full device

* add moveit yaml

* 修复moveit
增加post_init阶段,给予ros_node反向

* remove necessary node

* fix moveit action client

* remove necessary imports

* Update moveit_interface.py

* fix handler_key uppercase

* json add liquids

* fix setup

* add

* change to "sources" and "targets" for lh

* bump version

* remove parent's parent link

* change arm's name

* change name

---------

Co-authored-by: Harvey Que <Q-Query@outlook.com>
Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: q434343 <73513873+q434343@users.noreply.github.com>
Co-authored-by: Junhan Chang <changjh@pku.edu.cn>
Co-authored-by: Guangxin Zhang <guangxin.zhang.bio@gmail.com>
Co-authored-by: qxw138 <qxw@stu.pku.edu.cn>

* fix move it

* fix move it

* create_resource

* bump ver
modify slot type

* 增加modbus支持
调整protocol node以更好支持多种类型的read和write

* 调整protocol node以更好支持多种类型的read和write

* 补充日志

* Device visualization (#42)

* Update README and MQTTClient for installation instructions and code improvements

* feat: 支持local_config启动
add: 增加对crt path的说明,为传入config.py的相对路径
move: web component

* add: registry description

* add 3d visualization

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

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

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

* 完成TF发布

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

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

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

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

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

* feat: node_info_update srv
fix: OTDeck cant create

* close #12
feat: slave node registry

* feat: show machine name
fix: host node registry not uploaded

* feat: add hplc registry

* feat: add hplc registry

* fix: hplc status typo

* fix: devices/

* 完成启动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

* fix: device.class possible null

* fix: HPLC additions with online service

* fix: slave mode spin not working

* fix: slave mode spin not working

* 修复rviz位置问题,

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

* feat: 多ProtocolNode 允许子设备ID相同
feat: 上报发现的ActionClient
feat: Host重启动,通过discover机制要求slaveNode重新注册,实现信息及时上报

* feat: 支持env设置config

* fix: running logic

* fix: running logic

* fix: missing ot

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

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

* 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>

* fix: missing hostname in devices_names
fix: upload_file for model file

* fix: missing paho-mqtt package
bump version to 0.9.0

* fix startup
add ResourceCreateFromOuter.action

* fix type hint

* update actions

* update actions

* host node add_resource_from_outer
fix cmake list

* pass device config to device class

* add: bind_parent_ids to resource create action
fix: message convert string

* fix: host node should not be re_discovered

* feat: resource tracker support dict

* feat: add more necessary params

* feat: fix boolean null in registry action data

* feat: add outer resource

* 编写mesh添加action

* feat: append resource

* add action

* feat: vis 2d for plr

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

* Device visualization (#22)

* 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中

* 编写mesh添加action

* add action

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

---------

Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>

* fix: multi channel

* fix: aspirate

* fix: aspirate

* fix: aspirate

* fix: aspirate

* 提交

* fix: jobadd

* fix: jobadd

* fix: msg converter

* tijiao

* add resource creat easy action

* identify debug msg

* mq client id

* 提取lh的joint发布

* unify liquid_handler definition

* 修改物料跟随与物料添加逻辑

修改物料跟随与物料添加逻辑
将joint_publisher类移出lh的backends,但仍需要对lh的backends进行一些改写

* Revert "修改物料跟随与物料添加逻辑"

This reverts commit 498c997ad7.

* Reapply "修改物料跟随与物料添加逻辑"

This reverts commit 3a60d2ae81.

* Revert "Merge remote-tracking branch 'upstream/dev' into device_visualization"

This reverts commit fa727220af, reversing
changes made to 498c997ad7.

* 修改物料放下时的方法,如果选择

修改物料放下时的方法,
如果选择drop_trash,则删除物料显示
如果选择drop,则让其解除连接

* unilab添加moveit启动

1,整合所有moveit节点到一个move_group中,并整合所有的controller依次激活
2,添加pymoveit2的节点,使用json可直接启动
3,修改机械臂规划方式,添加约束,让冗余关节不会进行过多移动

* 修改物体attach时,多次赋值当前时间导致卡顿问题,

* Revert "修改物体attach时,多次赋值当前时间导致卡顿问题,"

This reverts commit 56d45b94f5.

* Reapply "修改物体attach时,多次赋值当前时间导致卡顿问题,"

This reverts commit 07d9db20c3.

* 添加缺少物料:"plate_well_G12",

* add

* fix tip resource data

* liquid states

* change to debug level

* Revert "change to debug level"

This reverts commit 5d9953c3e5.

* Reapply "change to debug level"

This reverts commit 2487bb6ffc.

* fix tip resource data

* add full device

* add moveit yaml

* 修复moveit
增加post_init阶段,给予ros_node反向

* remove necessary node

* fix moveit action client

* remove necessary imports

* Update moveit_interface.py

* fix handler_key uppercase

* json add liquids

* fix setup

* add

* change to "sources" and "targets" for lh

* bump version

* remove parent's parent link

* change arm's name

* change name

* fix ik error

---------

Co-authored-by: Harvey Que <Q-Query@outlook.com>
Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: q434343 <73513873+q434343@users.noreply.github.com>
Co-authored-by: Junhan Chang <changjh@pku.edu.cn>

* Add Mock Device for Organic Synthesis\添加有机合成的虚拟仪器和Protocol (#43)

* Add Device MockChiller

Add device MockChiller

* Add Device MockFilter

* Add Device MockPump

* Add Device MockRotavap

* Add Device MockSeparator

* Add Device MockStirrer

* Add Device MockHeater

* Add Device MockVacuum

* Add Device MockSolenoidValve

* Add Device Mock \_init_.py

* 规范模拟设备代码与注册表信息

* 更改Mock大写文件夹名

* 删除大写目录

* Edited Mock device json

* Match mock device with action

* Edit mock device yaml

* Add new action

* Add Virtual Device, Action, YAML, Protocol for Organic Syn

* 单独分类测试的protocol文件夹

* 更名Action

---------

Co-authored-by: Xuwznln <18435084+Xuwznln@users.noreply.github.com>

* bump version & protocol fix

* hotfix: Add macos_sdk_config (#46)

Co-authored-by: quehh <scienceol@outlook.com>

* include device_mesh when pip install

* 测试自动构建

* try build fix

* try build

* test artifacts

* hotfix: Add .certs in .gitignore

* create container

* container 添加和更新完成

* Device registry port (#49)

* Update README and MQTTClient for installation instructions and code improvements

* feat: 支持local_config启动
add: 增加对crt path的说明,为传入config.py的相对路径
move: web component

* add: registry description

* add 3d visualization

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

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

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

* 完成TF发布

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

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

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

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

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

* feat: node_info_update srv
fix: OTDeck cant create

* close #12
feat: slave node registry

* feat: show machine name
fix: host node registry not uploaded

* feat: add hplc registry

* feat: add hplc registry

* fix: hplc status typo

* fix: devices/

* 完成启动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

* fix: device.class possible null

* fix: HPLC additions with online service

* fix: slave mode spin not working

* fix: slave mode spin not working

* 修复rviz位置问题,

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

* feat: 多ProtocolNode 允许子设备ID相同
feat: 上报发现的ActionClient
feat: Host重启动,通过discover机制要求slaveNode重新注册,实现信息及时上报

* feat: 支持env设置config

* fix: running logic

* fix: running logic

* fix: missing ot

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

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

* 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>

* fix: missing hostname in devices_names
fix: upload_file for model file

* fix: missing paho-mqtt package
bump version to 0.9.0

* fix startup
add ResourceCreateFromOuter.action

* fix type hint

* update actions

* update actions

* host node add_resource_from_outer
fix cmake list

* pass device config to device class

* add: bind_parent_ids to resource create action
fix: message convert string

* fix: host node should not be re_discovered

* feat: resource tracker support dict

* feat: add more necessary params

* feat: fix boolean null in registry action data

* feat: add outer resource

* 编写mesh添加action

* feat: append resource

* add action

* feat: vis 2d for plr

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

* Device visualization (#22)

* 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中

* 编写mesh添加action

* add action

* fix

* fix: browser on rviz

* fix: cloud bridge error fallback to local

* fix: salve auto run rviz

* 初始化两个plate

---------

Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>

* fix: multi channel

* fix: aspirate

* fix: aspirate

* fix: aspirate

* fix: aspirate

* 提交

* fix: jobadd

* fix: jobadd

* fix: msg converter

* tijiao

* add resource creat easy action

* identify debug msg

* mq client id

* unify liquid_handler definition

* Update virtual_device.yaml

* 更正了stir和heater的连接方式

* 区分了虚拟仪器中的八通阀和电磁阀,添加了两个阀门的驱动

* 修改了add protocol

* 修复了阀门更新版的bug

* 修复了添加protocol前缀导致的不能启动的bug

* Fix handles

* bump version to 0.9.6

* add resource edge upload

* update container registry and handles

* add virtual_separator virtual_rotavap
fix transfer_pump

* fix container value
add parent_name to edge device id

* 大图的问题都修复好了,添加了gassource和vacuum pump的驱动以及注册表

* default resource upload mode is false

* 添加了icon的文件名在注册表里面

* 修改了json图中link的格式

* fix resource and edge upload

* fix device ports

* Fix edge id

* 移除device的父节点关联

* separate registry sync and resource_add

* 默认不进行注册表报送,通过命令unilabos-register或者增加启动参数

* 完善tip

* protocol node不再嵌套显示

* bump version to 0.9.7  新增一个测试PumpTransferProtocol的teststation,亲测可以运行,将八通阀们和转移泵与pump_protocol适配

* protocol node 执行action不应携带自身device id

* 添加了一套简易双八通阀工作站JSON,亲测能跑

* 修复了很多protocol,亲测能跑

* 添加了run column和filter through的protocol,亲测能跑

* fix mock_reactor

* 修改了大图和小图的json,但是在前端上没看到改变

---------

Co-authored-by: Harvey Que <Q-Query@outlook.com>
Co-authored-by: wznln <18435084+Xuwznln@users.noreply.github.com>
Co-authored-by: zhangshixiang <@zhangshixiang>
Co-authored-by: q434343 <73513873+q434343@users.noreply.github.com>
Co-authored-by: Junhan Chang <changjh@pku.edu.cn>

* 更新workstation注册表

* 添加了两个protocol的检索功能 (#51)

* 添加了两个protocol的检索liquid type功能

* fix workstation registry

* 修复了没连接的几个仪器的link,添加了container的icon

* 修改了json和注册表,现在大图全部的device都链接上了

* 修复了小图的json图,线全部连上了

* add work_station protocol handles (ports)

* fix workstation action handle

---------

Co-authored-by: Xuwznln <18435084+Xuwznln@users.noreply.github.com>
Co-authored-by: Junhan Chang <changjh@dp.tech>

* 新增注册表补全功能,修复Protocol执行失败

* 支持通过导入方式补全注册表,新增工作流unilabos_device_id字段

* 修复不启用注册表补充就无法启动的bug

* 修复部分识别error

* 修复静态方法识别get status,注册表支持python类型

* status types对于嵌套类型返回的对象,暂时处理成字符串,无法直接进行转换

* 支持通过list[int],list[float]进行Int64MultiArray,Float64MultiArray的替换

* 成功动态导入的不再需要使用静态导入

* Fix handle names (#55)

* fix handle names

* improve evacuateAndRefill gas source finding

* add camera and dependency (#56)

* 修复auto-的Action在protocol node下错误注册

---------

Co-authored-by: Junhan Chang <changjh@pku.edu.cn>
Co-authored-by: Guangxin Zhang <guangxin.zhang.bio@gmail.com>
Co-authored-by: qxw138 <qxw@stu.pku.edu.cn>
Co-authored-by: q434343 <73513873+q434343@users.noreply.github.com>
Co-authored-by: Harvey Que <Q-Query@outlook.com>
Co-authored-by: Kongchang Feng <2100011801@stu.pku.edu.cn>
Co-authored-by: hh. <103566763+Mile-Away@users.noreply.github.com>
Co-authored-by: quehh <scienceol@outlook.com>
Co-authored-by: Harvey Que <quehaohui@dp.tech>
Co-authored-by: Junhan Chang <changjh@dp.tech>
2025-06-29 19:18:25 +08:00

4528 lines
126 KiB
YAML

virtual_centrifuge:
class:
action_value_mappings:
auto-centrifuge:
feedback: {}
goal: {}
goal_default:
speed: null
temp: 25.0
time: null
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand centrifuge 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand centrifuge 的参数schema
properties:
speed:
description: '参数: speed'
type: number
temp:
default: 25.0
description: '参数: temp'
type: number
time:
description: '参数: time'
type: number
vessel:
description: '参数: vessel'
type: string
required:
- vessel
- speed
- time
type: object
result: {}
required:
- goal
title: centrifuge 命令参数
type: object
type: UniLabJsonCommandAsync
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
centrifuge:
feedback:
current_speed: current_speed
current_status: status
current_temp: current_temp
progress: progress
goal:
speed: speed
temp: temp
time: time
vessel: vessel
goal_default:
speed: 0.0
temp: 0.0
time: 0.0
vessel: ''
handles: []
result:
message: message
success: success
schema:
description: ROS Action Centrifuge 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_speed:
type: number
current_status:
type: string
current_temp:
type: number
progress:
type: number
required:
- progress
- current_speed
- current_temp
- current_status
title: Centrifuge_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
speed:
type: number
temp:
type: number
time:
type: number
vessel:
type: string
required:
- vessel
- speed
- time
- temp
title: Centrifuge_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- success
- message
- return_info
title: Centrifuge_Result
type: object
required:
- goal
title: Centrifuge
type: object
type: Centrifuge
module: unilabos.devices.virtual.virtual_centrifuge:VirtualCentrifuge
status_types:
centrifuge_state: str
current_speed: float
current_temp: float
max_speed: float
max_temp: float
message: str
min_temp: float
progress: float
status: str
target_speed: float
target_temp: float
time_remaining: float
type: python
description: Virtual Centrifuge for CentrifugeProtocol Testing
handles:
- data_key: vessel
data_source: handle
data_type: transport
description: 需要离心的样品容器
handler_key: centrifuge
io_type: target
label: centrifuge
side: NORTH
icon: ''
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: string
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_column:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-run_column:
feedback: {}
goal: {}
goal_default:
column: null
from_vessel: null
to_vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand run_column 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand run_column 的参数schema
properties:
column:
description: '参数: column'
type: string
from_vessel:
description: '参数: from_vessel'
type: string
to_vessel:
description: '参数: to_vessel'
type: string
required:
- from_vessel
- to_vessel
- column
type: object
result: {}
required:
- goal
title: run_column 命令参数
type: object
type: UniLabJsonCommandAsync
run_column:
feedback:
current_status: current_status
processed_volume: processed_volume
progress: progress
goal:
column: column
from_vessel: from_vessel
to_vessel: to_vessel
goal_default:
column: ''
from_vessel: ''
to_vessel: ''
handles: []
result:
message: current_status
return_info: current_status
success: success
schema:
description: ROS Action RunColumn 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
progress:
type: number
status:
type: string
required:
- status
- progress
title: RunColumn_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
column:
type: string
from_vessel:
type: string
to_vessel:
type: string
required:
- from_vessel
- to_vessel
- column
title: RunColumn_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- success
- message
- return_info
title: RunColumn_Result
type: object
required:
- goal
title: RunColumn
type: object
type: RunColumn
module: unilabos.devices.virtual.virtual_column:VirtualColumn
status_types:
column_diameter: float
column_length: float
column_state: str
current_flow_rate: float
current_status: str
max_flow_rate: float
processed_volume: float
progress: float
status: str
type: python
description: Virtual Column Chromatography Device for RunColumn Protocol Testing
handles:
- data_key: from_vessel
data_source: handle
data_type: transport
description: 样品输入口
handler_key: columnin
io_type: target
label: columnin
side: WEST
- data_key: to_vessel
data_source: handle
data_type: transport
description: 产物输出口
handler_key: columnout
io_type: source
label: columnout
side: EAST
icon: ''
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: object
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_filter:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-filter:
feedback: {}
goal: {}
goal_default:
continue_heatchill: false
filtrate_vessel: ''
stir: false
stir_speed: 300.0
temp: 25.0
vessel: null
volume: 0.0
handles: []
result: {}
schema:
description: UniLabJsonCommand filter 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand filter 的参数schema
properties:
continue_heatchill:
default: false
description: '参数: continue_heatchill'
type: boolean
filtrate_vessel:
default: ''
description: '参数: filtrate_vessel'
type: string
stir:
default: false
description: '参数: stir'
type: boolean
stir_speed:
default: 300.0
description: '参数: stir_speed'
type: number
temp:
default: 25.0
description: '参数: temp'
type: number
vessel:
description: '参数: vessel'
type: string
volume:
default: 0.0
description: '参数: volume'
type: number
required:
- vessel
type: object
result: {}
required:
- goal
title: filter 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
filter:
feedback:
current_status: current_status
current_temp: current_temp
filtered_volume: filtered_volume
progress: progress
goal:
continue_heatchill: continue_heatchill
filtrate_vessel: filtrate_vessel
stir: stir
stir_speed: stir_speed
temp: temp
vessel: vessel
volume: volume
goal_default:
continue_heatchill: false
filtrate_vessel: ''
stir: false
stir_speed: 0.0
temp: 0.0
vessel: ''
volume: 0.0
handles: []
result:
message: message
return_info: message
success: success
schema:
description: ROS Action Filter 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_status:
type: string
current_temp:
type: number
filtered_volume:
type: number
progress:
type: number
required:
- progress
- current_temp
- filtered_volume
- current_status
title: Filter_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
continue_heatchill:
type: boolean
filtrate_vessel:
type: string
stir:
type: boolean
stir_speed:
type: number
temp:
type: number
vessel:
type: string
volume:
type: number
required:
- vessel
- filtrate_vessel
- stir
- stir_speed
- temp
- continue_heatchill
- volume
title: Filter_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- success
- message
- return_info
title: Filter_Result
type: object
required:
- goal
title: Filter
type: object
type: Filter
module: unilabos.devices.virtual.virtual_filter:VirtualFilter
status_types:
current_status: str
current_temp: float
filtered_volume: float
max_stir_speed: float
max_temp: float
max_volume: float
message: str
progress: float
status: str
type: python
description: Virtual Filter for FilterProtocol Testing
handles:
- data_key: vessel_in
data_source: handle
data_type: transport
description: 需要过滤的样品容器
handler_key: filterin
io_type: target
label: filter_in
side: NORTH
- data_key: filtrate_out
data_source: handle
data_type: transport
description: 滤液出口
handler_key: filtrateout
io_type: source
label: filtrate_out
side: SOUTH
- data_key: retentate_out
data_source: handle
data_type: transport
description: 滤渣/固体出口
handler_key: retentateout
io_type: source
label: retentate_out
side: EAST
icon: ''
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: string
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_gas_source:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-close:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand close 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand close 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: close 命令参数
type: object
type: UniLabJsonCommand
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-is_closed:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_closed 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_closed 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_closed 命令参数
type: object
type: UniLabJsonCommand
auto-is_open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_open 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_open 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_open 命令参数
type: object
type: UniLabJsonCommand
auto-open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand open 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand open 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: open 命令参数
type: object
type: UniLabJsonCommand
auto-set_status:
feedback: {}
goal: {}
goal_default:
string: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_status 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_status 的参数schema
properties:
string:
description: '参数: string'
type: string
required:
- string
type: object
result: {}
required:
- goal
title: set_status 命令参数
type: object
type: UniLabJsonCommand
close:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: ROS Action EmptyIn 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: EmptyIn_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties: {}
required: []
title: EmptyIn_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
required:
- return_info
title: EmptyIn_Result
type: object
required:
- goal
title: EmptyIn
type: object
type: EmptyIn
open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: ROS Action EmptyIn 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: EmptyIn_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties: {}
required: []
title: EmptyIn_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
required:
- return_info
title: EmptyIn_Result
type: object
required:
- goal
title: EmptyIn
type: object
type: EmptyIn
set_status:
feedback: {}
goal:
string: string
goal_default:
string: ''
handles: []
result: {}
schema:
description: ROS Action StrSingleInput 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: StrSingleInput_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
string:
type: string
required:
- string
title: StrSingleInput_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: StrSingleInput_Result
type: object
required:
- goal
title: StrSingleInput
type: object
type: StrSingleInput
module: unilabos.devices.virtual.virtual_gas_source:VirtualGasSource
status_types:
status: str
type: python
description: Virtual gas source
handles:
- data_key: fluid_out
data_source: executor
data_type: fluid
description: 气源出气口
handler_key: gassource
io_type: source
label: gassource
side: SOUTH
icon: ''
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: string
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_heatchill:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-heat_chill:
feedback: {}
goal: {}
goal_default:
purpose: null
stir: null
stir_speed: null
temp: null
time: null
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand heat_chill 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand heat_chill 的参数schema
properties:
purpose:
description: '参数: purpose'
type: string
stir:
description: '参数: stir'
type: boolean
stir_speed:
description: '参数: stir_speed'
type: number
temp:
description: '参数: temp'
type: number
time:
description: '参数: time'
type: number
vessel:
description: '参数: vessel'
type: string
required:
- vessel
- temp
- time
- stir
- stir_speed
- purpose
type: object
result: {}
required:
- goal
title: heat_chill 命令参数
type: object
type: UniLabJsonCommandAsync
auto-heat_chill_start:
feedback: {}
goal: {}
goal_default:
purpose: null
temp: null
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand heat_chill_start 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand heat_chill_start 的参数schema
properties:
purpose:
description: '参数: purpose'
type: string
temp:
description: '参数: temp'
type: number
vessel:
description: '参数: vessel'
type: string
required:
- vessel
- temp
- purpose
type: object
result: {}
required:
- goal
title: heat_chill_start 命令参数
type: object
type: UniLabJsonCommandAsync
auto-heat_chill_stop:
feedback: {}
goal: {}
goal_default:
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand heat_chill_stop 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand heat_chill_stop 的参数schema
properties:
vessel:
description: '参数: vessel'
type: string
required:
- vessel
type: object
result: {}
required:
- goal
title: heat_chill_stop 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
heat_chill:
feedback:
status: status
goal:
purpose: purpose
stir: stir
stir_speed: stir_speed
temp: temp
time: time
vessel: vessel
goal_default:
purpose: ''
stir: false
stir_speed: 0.0
temp: 0.0
time: 0.0
vessel: ''
handles: []
result:
success: success
schema:
description: ROS Action HeatChill 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: HeatChill_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
purpose:
type: string
stir:
type: boolean
stir_speed:
type: number
temp:
type: number
time:
type: number
vessel:
type: string
required:
- vessel
- temp
- time
- stir
- stir_speed
- purpose
title: HeatChill_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: HeatChill_Result
type: object
required:
- goal
title: HeatChill
type: object
type: HeatChill
heat_chill_start:
feedback:
status: status
goal:
purpose: purpose
temp: temp
vessel: vessel
goal_default:
purpose: ''
temp: 0.0
vessel: ''
handles: []
result:
success: success
schema:
description: ROS Action HeatChillStart 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: HeatChillStart_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
purpose:
type: string
temp:
type: number
vessel:
type: string
required:
- vessel
- temp
- purpose
title: HeatChillStart_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: HeatChillStart_Result
type: object
required:
- goal
title: HeatChillStart
type: object
type: HeatChillStart
heat_chill_stop:
feedback:
status: status
goal:
vessel: vessel
goal_default:
vessel: ''
handles: []
result:
success: success
schema:
description: ROS Action HeatChillStop 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: HeatChillStop_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
vessel:
type: string
required:
- vessel
title: HeatChillStop_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: HeatChillStop_Result
type: object
required:
- goal
title: HeatChillStop
type: object
type: HeatChillStop
module: unilabos.devices.virtual.virtual_heatchill:VirtualHeatChill
status_types:
is_stirring: bool
operation_mode: str
remaining_time: float
status: str
stir_speed: float
type: python
description: Virtual HeatChill for HeatChillProtocol Testing
handles:
- data_key: vessel
data_source: handle
data_type: mechanical
description: 加热/冷却器的物理连接口
handler_key: heatchill
io_type: source
label: heatchill
side: NORTH
icon: Heater.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: object
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_multiway_valve:
class:
action_value_mappings:
auto-close:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand close 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand close 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: close 命令参数
type: object
type: UniLabJsonCommand
auto-is_at_port:
feedback: {}
goal: {}
goal_default:
port_number: null
handles: []
result: {}
schema:
description: UniLabJsonCommand is_at_port 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_at_port 的参数schema
properties:
port_number:
description: '参数: port_number'
type: integer
required:
- port_number
type: object
result: {}
required:
- goal
title: is_at_port 命令参数
type: object
type: UniLabJsonCommand
auto-is_at_position:
feedback: {}
goal: {}
goal_default:
position: null
handles: []
result: {}
schema:
description: UniLabJsonCommand is_at_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_at_position 的参数schema
properties:
position:
description: '参数: position'
type: integer
required:
- position
type: object
result: {}
required:
- goal
title: is_at_position 命令参数
type: object
type: UniLabJsonCommand
auto-is_at_pump_position:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_at_pump_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_at_pump_position 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_at_pump_position 命令参数
type: object
type: UniLabJsonCommand
auto-open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand open 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand open 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: open 命令参数
type: object
type: UniLabJsonCommand
auto-reset:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand reset 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand reset 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: reset 命令参数
type: object
type: UniLabJsonCommand
auto-set_position:
feedback: {}
goal: {}
goal_default:
command: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_position 的参数schema
properties:
command:
description: '参数: command'
type: string
required:
- command
type: object
result: {}
required:
- goal
title: set_position 命令参数
type: object
type: UniLabJsonCommand
auto-set_to_port:
feedback: {}
goal: {}
goal_default:
port_number: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_to_port 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_to_port 的参数schema
properties:
port_number:
description: '参数: port_number'
type: integer
required:
- port_number
type: object
result: {}
required:
- goal
title: set_to_port 命令参数
type: object
type: UniLabJsonCommand
auto-set_to_pump_position:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand set_to_pump_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_to_pump_position 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: set_to_pump_position 命令参数
type: object
type: UniLabJsonCommand
auto-set_valve_position:
feedback: {}
goal: {}
goal_default:
command: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_valve_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_valve_position 的参数schema
properties:
command:
description: '参数: command'
type: string
required:
- command
type: object
result: {}
required:
- goal
title: set_valve_position 命令参数
type: object
type: UniLabJsonCommand
auto-switch_between_pump_and_port:
feedback: {}
goal: {}
goal_default:
port_number: null
handles: []
result: {}
schema:
description: UniLabJsonCommand switch_between_pump_and_port 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand switch_between_pump_and_port 的参数schema
properties:
port_number:
description: '参数: port_number'
type: integer
required:
- port_number
type: object
result: {}
required:
- goal
title: switch_between_pump_and_port 命令参数
type: object
type: UniLabJsonCommand
set_position:
feedback: {}
goal:
command: command
goal_default:
command: ''
handles: []
result:
success: success
schema:
description: ROS Action SendCmd 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: SendCmd_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
command:
type: string
required:
- command
title: SendCmd_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: SendCmd_Result
type: object
required:
- goal
title: SendCmd
type: object
type: SendCmd
set_valve_position:
feedback: {}
goal:
command: command
goal_default:
command: ''
handles: []
result:
success: success
schema:
description: ROS Action SendCmd 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: SendCmd_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
command:
type: string
required:
- command
title: SendCmd_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: SendCmd_Result
type: object
required:
- goal
title: SendCmd
type: object
type: SendCmd
module: unilabos.devices.virtual.virtual_multiway_valve:VirtualMultiwayValve
status_types:
available_ports: dict
available_positions: list
current_port: str
current_position: int
flow_path: str
info: dict
status: str
target_position: int
valve_position: int
valve_state: str
type: python
description: Virtual 8-Way Valve for flow direction control
handles:
- data_key: fluid_in
data_source: handle
data_type: fluid
description: 八通阀门进液口
handler_key: transferpump
io_type: target
label: transferpump
side: NORTH
- data_key: fluid_port_1
data_source: executor
data_type: fluid
description: 八通阀门端口1
handler_key: 1
io_type: source
label: 1
side: NORTH
- data_key: fluid_port_2
data_source: executor
data_type: fluid
description: 八通阀门端口2
handler_key: 2
io_type: source
label: 2
side: EAST
- data_key: fluid_port_3
data_source: executor
data_type: fluid
description: 八通阀门端口3
handler_key: 3
io_type: source
label: 3
side: EAST
- data_key: fluid_port_4
data_source: executor
data_type: fluid
description: 八通阀门端口4
handler_key: 4
io_type: source
label: 4
side: SOUTH
- data_key: fluid_port_5
data_source: executor
data_type: fluid
description: 八通阀门端口5
handler_key: 5
io_type: source
label: 5
side: SOUTH
- data_key: fluid_port_6
data_source: executor
data_type: fluid
description: 八通阀门端口6
handler_key: 6
io_type: source
label: 6
side: WEST
- data_key: fluid_port_7
data_source: executor
data_type: fluid
description: 八通阀门端口7
handler_key: 7
io_type: source
label: 7
side: WEST
- data_key: fluid_port_8
data_source: executor
data_type: fluid
description: 八通阀门端口8
handler_key: 8
io_type: source
label: 8
side: NORTH
icon: EightPipeline.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
port:
default: VIRTUAL
description: '参数: port'
type: string
positions:
default: 8
description: '参数: positions'
type: integer
required: []
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_pump:
class:
action_value_mappings:
auto-clean_vessel:
feedback: {}
goal: {}
goal_default:
repeats: 1
solvent: null
temp: null
vessel: null
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand clean_vessel 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand clean_vessel 的参数schema
properties:
repeats:
default: 1
description: '参数: repeats'
type: integer
solvent:
description: '参数: solvent'
type: string
temp:
description: '参数: temp'
type: number
vessel:
description: '参数: vessel'
type: string
volume:
description: '参数: volume'
type: number
required:
- vessel
- solvent
- volume
- temp
type: object
result: {}
required:
- goal
title: clean_vessel 命令参数
type: object
type: UniLabJsonCommandAsync
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-transfer:
feedback: {}
goal: {}
goal_default:
amount: ''
from_vessel: null
rinsing_repeats: 0
rinsing_solvent: ''
rinsing_volume: 0.0
solid: false
time: 0.0
to_vessel: null
viscous: false
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand transfer 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand transfer 的参数schema
properties:
amount:
default: ''
description: '参数: amount'
type: string
from_vessel:
description: '参数: from_vessel'
type: string
rinsing_repeats:
default: 0
description: '参数: rinsing_repeats'
type: integer
rinsing_solvent:
default: ''
description: '参数: rinsing_solvent'
type: string
rinsing_volume:
default: 0.0
description: '参数: rinsing_volume'
type: number
solid:
default: false
description: '参数: solid'
type: boolean
time:
default: 0.0
description: '参数: time'
type: number
to_vessel:
description: '参数: to_vessel'
type: string
viscous:
default: false
description: '参数: viscous'
type: boolean
volume:
description: '参数: volume'
type: number
required:
- from_vessel
- to_vessel
- volume
type: object
result: {}
required:
- goal
title: transfer 命令参数
type: object
type: UniLabJsonCommandAsync
set_valve_position:
feedback:
status: status
goal:
float_in: valve_position
goal_default:
float_in: 0.0
handles: []
result:
success: success
schema:
description: ROS Action FloatSingleInput 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: FloatSingleInput_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
float_in:
type: number
required:
- float_in
title: FloatSingleInput_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: FloatSingleInput_Result
type: object
required:
- goal
title: FloatSingleInput
type: object
type: FloatSingleInput
transfer:
feedback:
status: status
goal:
amount: amount
from_vessel: from_vessel
rinsing_repeats: rinsing_repeats
rinsing_solvent: rinsing_solvent
rinsing_volume: rinsing_volume
solid: solid
time: time
to_vessel: to_vessel
viscous: viscous
volume: volume
goal_default:
amount: ''
from_vessel: ''
rinsing_repeats: 0
rinsing_solvent: ''
rinsing_volume: 0.0
solid: false
time: 0.0
to_vessel: ''
viscous: false
volume: 0.0
handles: []
result:
success: success
schema:
description: ROS Action PumpTransfer 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_device:
type: string
status:
type: string
time_remaining:
properties:
nanosec:
maximum: 4294967295
minimum: 0
type: integer
sec:
maximum: 2147483647
minimum: -2147483648
type: integer
required:
- sec
- nanosec
title: Duration
type: object
time_spent:
properties:
nanosec:
maximum: 4294967295
minimum: 0
type: integer
sec:
maximum: 2147483647
minimum: -2147483648
type: integer
required:
- sec
- nanosec
title: Duration
type: object
required:
- status
- current_device
- time_spent
- time_remaining
title: PumpTransfer_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
amount:
type: string
from_vessel:
type: string
rinsing_repeats:
maximum: 2147483647
minimum: -2147483648
type: integer
rinsing_solvent:
type: string
rinsing_volume:
type: number
solid:
type: boolean
time:
type: number
to_vessel:
type: string
viscous:
type: boolean
volume:
type: number
required:
- from_vessel
- to_vessel
- volume
- amount
- time
- viscous
- rinsing_solvent
- rinsing_volume
- rinsing_repeats
- solid
title: PumpTransfer_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: PumpTransfer_Result
type: object
required:
- goal
title: PumpTransfer
type: object
type: PumpTransfer
module: unilabos.devices.virtual.virtual_pump:VirtualPump
status_types:
current_status: str
current_volume: float
from_vessel: str
max_volume: float
progress: float
status: str
to_vessel: str
transfer_rate: float
transferred_volume: float
valve_position: int
type: python
description: Virtual Pump for PumpTransferProtocol Testing
handles:
- data_key: fluid_in
data_source: handle
data_type: fluid
description: 泵的输出口
handler_key: pumpio
io_type: source
label: pumpio
icon: ''
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: object
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_rotavap:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-evaporate:
feedback: {}
goal: {}
goal_default:
pressure: 0.1
stir_speed: 100.0
temp: 60.0
time: 1800.0
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand evaporate 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand evaporate 的参数schema
properties:
pressure:
default: 0.1
description: '参数: pressure'
type: number
stir_speed:
default: 100.0
description: '参数: stir_speed'
type: number
temp:
default: 60.0
description: '参数: temp'
type: number
time:
default: 1800.0
description: '参数: time'
type: number
vessel:
description: '参数: vessel'
type: string
required:
- vessel
type: object
result: {}
required:
- goal
title: evaporate 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
evaporate:
feedback:
current_temp: current_temp
evaporated_volume: evaporated_volume
progress: progress
status: status
goal:
pressure: pressure
stir_speed: stir_speed
temp: temp
time: time
vessel: vessel
goal_default:
pressure: 0.0
stir_speed: 0.0
temp: 0.0
time: 0.0
vessel: ''
handles: []
result:
message: message
success: success
schema:
description: ROS Action Evaporate 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_device:
type: string
status:
type: string
time_remaining:
properties:
nanosec:
maximum: 4294967295
minimum: 0
type: integer
sec:
maximum: 2147483647
minimum: -2147483648
type: integer
required:
- sec
- nanosec
title: Duration
type: object
time_spent:
properties:
nanosec:
maximum: 4294967295
minimum: 0
type: integer
sec:
maximum: 2147483647
minimum: -2147483648
type: integer
required:
- sec
- nanosec
title: Duration
type: object
required:
- status
- current_device
- time_spent
- time_remaining
title: Evaporate_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
pressure:
type: number
stir_speed:
type: number
temp:
type: number
time:
type: number
vessel:
type: string
required:
- vessel
- pressure
- temp
- time
- stir_speed
title: Evaporate_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: Evaporate_Result
type: object
required:
- goal
title: Evaporate
type: object
type: Evaporate
module: unilabos.devices.virtual.virtual_rotavap:VirtualRotavap
status_types:
current_temp: float
evaporated_volume: float
max_rotation_speed: float
max_temp: float
message: str
progress: float
remaining_time: float
rotation_speed: float
rotavap_state: str
status: str
vacuum_pressure: float
type: python
description: Virtual Rotary Evaporator for EvaporateProtocol Testing
handles:
- data_key: vessel_in
data_source: handle
data_type: fluid
description: 样品连接口
handler_key: samplein
io_type: target
label: sample_in
side: NORTH
- data_key: product_out
data_source: handle
data_type: fluid
description: 浓缩产物出口
handler_key: productout
io_type: source
label: product_out
side: SOUTH
- data_key: solvent_out
data_source: handle
data_type: fluid
description: 冷凝溶剂出口
handler_key: solventout
io_type: source
label: solvent_out
side: EAST
icon: Rotaryevaporator.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: string
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_separator:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-separate:
feedback: {}
goal: {}
goal_default:
from_vessel: null
product_phase: null
purpose: null
repeats: 1
separation_vessel: null
settling_time: 300.0
solvent: ''
solvent_volume: 50.0
stir_speed: 300.0
stir_time: 30.0
through: ''
to_vessel: null
waste_phase_to_vessel: ''
handles: []
result: {}
schema:
description: UniLabJsonCommand separate 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand separate 的参数schema
properties:
from_vessel:
description: '参数: from_vessel'
type: string
product_phase:
description: '参数: product_phase'
type: string
purpose:
description: '参数: purpose'
type: string
repeats:
default: 1
description: '参数: repeats'
type: integer
separation_vessel:
description: '参数: separation_vessel'
type: string
settling_time:
default: 300.0
description: '参数: settling_time'
type: number
solvent:
default: ''
description: '参数: solvent'
type: string
solvent_volume:
default: 50.0
description: '参数: solvent_volume'
type: number
stir_speed:
default: 300.0
description: '参数: stir_speed'
type: number
stir_time:
default: 30.0
description: '参数: stir_time'
type: number
through:
default: ''
description: '参数: through'
type: string
to_vessel:
description: '参数: to_vessel'
type: string
waste_phase_to_vessel:
default: ''
description: '参数: waste_phase_to_vessel'
type: string
required:
- purpose
- product_phase
- from_vessel
- separation_vessel
- to_vessel
type: object
result: {}
required:
- goal
title: separate 命令参数
type: object
type: UniLabJsonCommandAsync
separate:
feedback:
current_status: status
progress: progress
goal:
from_vessel: from_vessel
product_phase: product_phase
purpose: purpose
repeats: repeats
separation_vessel: separation_vessel
settling_time: settling_time
solvent: solvent
solvent_volume: solvent_volume
stir_speed: stir_speed
stir_time: stir_time
through: through
to_vessel: to_vessel
waste_phase_to_vessel: waste_phase_to_vessel
goal_default:
from_vessel: ''
product_phase: ''
purpose: ''
repeats: 0
separation_vessel: ''
settling_time: 0.0
solvent: ''
solvent_volume: 0.0
stir_speed: 0.0
stir_time: 0.0
through: ''
to_vessel: ''
waste_phase_to_vessel: ''
handles: []
result:
message: message
success: success
schema:
description: ROS Action Separate 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_device:
type: string
status:
type: string
time_remaining:
properties:
nanosec:
maximum: 4294967295
minimum: 0
type: integer
sec:
maximum: 2147483647
minimum: -2147483648
type: integer
required:
- sec
- nanosec
title: Duration
type: object
time_spent:
properties:
nanosec:
maximum: 4294967295
minimum: 0
type: integer
sec:
maximum: 2147483647
minimum: -2147483648
type: integer
required:
- sec
- nanosec
title: Duration
type: object
required:
- status
- current_device
- time_spent
- time_remaining
title: Separate_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
from_vessel:
type: string
product_phase:
type: string
purpose:
type: string
repeats:
maximum: 2147483647
minimum: -2147483648
type: integer
separation_vessel:
type: string
settling_time:
type: number
solvent:
type: string
solvent_volume:
type: number
stir_speed:
type: number
stir_time:
type: number
through:
type: string
to_vessel:
type: string
waste_phase_to_vessel:
type: string
required:
- purpose
- product_phase
- from_vessel
- separation_vessel
- to_vessel
- waste_phase_to_vessel
- solvent
- solvent_volume
- through
- repeats
- stir_time
- stir_speed
- settling_time
title: Separate_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: Separate_Result
type: object
required:
- goal
title: Separate
type: object
type: Separate
module: unilabos.devices.virtual.virtual_separator:VirtualSeparator
status_types:
has_phases: bool
message: str
phase_separation: bool
progress: float
separator_state: str
settling_time: float
status: str
stir_speed: float
volume: float
type: python
description: Virtual Separator for SeparateProtocol Testing
handles:
- data_key: from_vessel
data_source: handle
data_type: fluid
description: 需要分离的混合液体输入口
handler_key: separatorin
io_type: target
label: separator_in
side: NORTH
- data_key: bottom_outlet
data_source: executor
data_type: fluid
description: 下相(重相)液体输出口
handler_key: bottomphaseout
io_type: source
label: bottom_phase_out
side: SOUTH
- data_key: top_outlet
data_source: executor
data_type: fluid
description: 上相(轻相)液体输出口
handler_key: topphaseout
io_type: source
label: top_phase_out
side: EAST
- data_key: mechanical_port
data_source: handle
data_type: mechanical
description: 用于连接搅拌器等机械设备的接口
handler_key: bind
io_type: target
label: bind
side: WEST
icon: Separator.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: string
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_solenoid_valve:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-close:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand close 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand close 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: close 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-is_closed:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_closed 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_closed 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_closed 命令参数
type: object
type: UniLabJsonCommand
auto-open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand open 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand open 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: open 命令参数
type: object
type: UniLabJsonCommandAsync
auto-reset:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand reset 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand reset 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: reset 命令参数
type: object
type: UniLabJsonCommandAsync
auto-set_state:
feedback: {}
goal: {}
goal_default:
command: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_state 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_state 的参数schema
properties:
command:
description: '参数: command'
type: string
required:
- command
type: object
result: {}
required:
- goal
title: set_state 命令参数
type: object
type: UniLabJsonCommandAsync
auto-set_valve_position:
feedback: {}
goal: {}
goal_default:
command: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_valve_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_valve_position 的参数schema
properties:
command:
description: '参数: command'
type: string
required: []
type: object
result: {}
required:
- goal
title: set_valve_position 命令参数
type: object
type: UniLabJsonCommandAsync
auto-toggle:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand toggle 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand toggle 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: toggle 命令参数
type: object
type: UniLabJsonCommand
close:
feedback: {}
goal:
command: CLOSED
goal_default:
command: ''
handles: []
result:
success: success
schema:
description: ROS Action SendCmd 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: SendCmd_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
command:
type: string
required:
- command
title: SendCmd_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: SendCmd_Result
type: object
required:
- goal
title: SendCmd
type: object
type: SendCmd
open:
feedback: {}
goal:
command: OPEN
goal_default:
command: ''
handles: []
result:
success: success
schema:
description: ROS Action SendCmd 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: SendCmd_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
command:
type: string
required:
- command
title: SendCmd_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: SendCmd_Result
type: object
required:
- goal
title: SendCmd
type: object
type: SendCmd
set_state:
feedback: {}
goal:
command: command
goal_default:
command: ''
handles: []
result:
success: success
schema:
description: ROS Action SendCmd 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: SendCmd_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
command:
type: string
required:
- command
title: SendCmd_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: SendCmd_Result
type: object
required:
- goal
title: SendCmd
type: object
type: SendCmd
set_valve_position:
feedback: {}
goal:
command: command
goal_default:
command: ''
handles: []
result:
success: success
schema:
description: ROS Action SendCmd 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: SendCmd_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
command:
type: string
required:
- command
title: SendCmd_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: SendCmd_Result
type: object
required:
- goal
title: SendCmd
type: object
type: SendCmd
module: unilabos.devices.virtual.virtual_solenoid_valve:VirtualSolenoidValve
status_types:
is_open: bool
state: dict
status: str
valve_position: str
valve_state: str
type: python
description: Virtual Solenoid Valve for simple on/off flow control
handles:
- data_key: fluid_port_in
data_source: handle
data_type: fluid
description: 电磁阀的进液口
handler_key: in
io_type: target
label: in
side: NORTH
- data_key: fluid_port_out
data_source: handle
data_type: fluid
description: 电磁阀的出液口
handler_key: out
io_type: source
label: out
side: SOUTH
icon: ''
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: object
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_stirrer:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-start_stir:
feedback: {}
goal: {}
goal_default:
purpose: null
stir_speed: null
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand start_stir 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand start_stir 的参数schema
properties:
purpose:
description: '参数: purpose'
type: string
stir_speed:
description: '参数: stir_speed'
type: number
vessel:
description: '参数: vessel'
type: string
required:
- vessel
- stir_speed
- purpose
type: object
result: {}
required:
- goal
title: start_stir 命令参数
type: object
type: UniLabJsonCommandAsync
auto-stir:
feedback: {}
goal: {}
goal_default:
settling_time: null
stir_speed: null
stir_time: null
handles: []
result: {}
schema:
description: UniLabJsonCommand stir 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand stir 的参数schema
properties:
settling_time:
description: '参数: settling_time'
type: number
stir_speed:
description: '参数: stir_speed'
type: number
stir_time:
description: '参数: stir_time'
type: number
required:
- stir_time
- stir_speed
- settling_time
type: object
result: {}
required:
- goal
title: stir 命令参数
type: object
type: UniLabJsonCommandAsync
auto-stop_stir:
feedback: {}
goal: {}
goal_default:
vessel: null
handles: []
result: {}
schema:
description: UniLabJsonCommand stop_stir 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand stop_stir 的参数schema
properties:
vessel:
description: '参数: vessel'
type: string
required:
- vessel
type: object
result: {}
required:
- goal
title: stop_stir 命令参数
type: object
type: UniLabJsonCommandAsync
start_stir:
feedback:
status: status
goal:
purpose: purpose
stir_speed: stir_speed
vessel: vessel
goal_default:
purpose: ''
stir_speed: 0.0
vessel: ''
handles: []
result:
success: success
schema:
description: ROS Action StartStir 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_speed:
type: number
current_status:
type: string
progress:
type: number
required:
- progress
- current_speed
- current_status
title: StartStir_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
purpose:
type: string
stir_speed:
type: number
vessel:
type: string
required:
- vessel
- stir_speed
- purpose
title: StartStir_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- success
- message
- return_info
title: StartStir_Result
type: object
required:
- goal
title: StartStir
type: object
type: StartStir
stir:
feedback:
status: status
goal:
settling_time: settling_time
stir_speed: stir_speed
stir_time: stir_time
goal_default:
settling_time: 0.0
stir_speed: 0.0
stir_time: 0.0
handles: []
result:
success: success
schema:
description: ROS Action Stir 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
status:
type: string
required:
- status
title: Stir_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
settling_time:
type: number
stir_speed:
type: number
stir_time:
type: number
required:
- stir_time
- stir_speed
- settling_time
title: Stir_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: Stir_Result
type: object
required:
- goal
title: Stir
type: object
type: Stir
stop_stir:
feedback:
status: status
goal:
vessel: vessel
goal_default:
vessel: ''
handles: []
result:
success: success
schema:
description: ROS Action StopStir 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_status:
type: string
progress:
type: number
required:
- progress
- current_status
title: StopStir_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
vessel:
type: string
required:
- vessel
title: StopStir_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- success
- message
- return_info
title: StopStir_Result
type: object
required:
- goal
title: StopStir
type: object
type: StopStir
module: unilabos.devices.virtual.virtual_stirrer:VirtualStirrer
status_types:
current_speed: float
current_vessel: str
is_stirring: bool
operation_mode: str
remaining_time: float
status: str
type: python
description: Virtual Stirrer for StirProtocol Testing
handles:
- data_key: vessel
data_source: handle
data_type: mechanical
description: 搅拌器的机械连接口
handler_key: stirrer
io_type: source
label: stirrer
side: NORTH
icon: Stirrer.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: object
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_transfer_pump:
class:
action_value_mappings:
auto-aspirate:
feedback: {}
goal: {}
goal_default:
velocity: null
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand aspirate 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand aspirate 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
volume:
description: '参数: volume'
type: number
required:
- volume
type: object
result: {}
required:
- goal
title: aspirate 命令参数
type: object
type: UniLabJsonCommandAsync
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-dispense:
feedback: {}
goal: {}
goal_default:
velocity: null
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand dispense 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand dispense 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
volume:
description: '参数: volume'
type: number
required:
- volume
type: object
result: {}
required:
- goal
title: dispense 命令参数
type: object
type: UniLabJsonCommandAsync
auto-empty_syringe:
feedback: {}
goal: {}
goal_default:
velocity: null
handles: []
result: {}
schema:
description: UniLabJsonCommand empty_syringe 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand empty_syringe 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
required: []
type: object
result: {}
required:
- goal
title: empty_syringe 命令参数
type: object
type: UniLabJsonCommandAsync
auto-fill_syringe:
feedback: {}
goal: {}
goal_default:
velocity: null
handles: []
result: {}
schema:
description: UniLabJsonCommand fill_syringe 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand fill_syringe 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
required: []
type: object
result: {}
required:
- goal
title: fill_syringe 命令参数
type: object
type: UniLabJsonCommandAsync
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-is_empty:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_empty 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_empty 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_empty 命令参数
type: object
type: UniLabJsonCommand
auto-is_full:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_full 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_full 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_full 命令参数
type: object
type: UniLabJsonCommand
auto-pull_plunger:
feedback: {}
goal: {}
goal_default:
velocity: null
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand pull_plunger 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand pull_plunger 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
volume:
description: '参数: volume'
type: number
required:
- volume
type: object
result: {}
required:
- goal
title: pull_plunger 命令参数
type: object
type: UniLabJsonCommandAsync
auto-push_plunger:
feedback: {}
goal: {}
goal_default:
velocity: null
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand push_plunger 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand push_plunger 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
volume:
description: '参数: volume'
type: number
required:
- volume
type: object
result: {}
required:
- goal
title: push_plunger 命令参数
type: object
type: UniLabJsonCommandAsync
auto-set_max_velocity:
feedback: {}
goal: {}
goal_default:
velocity: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_max_velocity 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_max_velocity 的参数schema
properties:
velocity:
description: '参数: velocity'
type: number
required:
- velocity
type: object
result: {}
required:
- goal
title: set_max_velocity 命令参数
type: object
type: UniLabJsonCommand
auto-set_position:
feedback: {}
goal: {}
goal_default:
max_velocity: null
position: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_position 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_position 的参数schema
properties:
max_velocity:
description: '参数: max_velocity'
type: number
position:
description: '参数: position'
type: number
required:
- position
type: object
result: {}
required:
- goal
title: set_position 命令参数
type: object
type: UniLabJsonCommandAsync
auto-stop_operation:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand stop_operation 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand stop_operation 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: stop_operation 命令参数
type: object
type: UniLabJsonCommandAsync
auto-transfer:
feedback: {}
goal: {}
goal_default:
aspirate_velocity: null
dispense_velocity: null
volume: null
handles: []
result: {}
schema:
description: UniLabJsonCommand transfer 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand transfer 的参数schema
properties:
aspirate_velocity:
description: '参数: aspirate_velocity'
type: number
dispense_velocity:
description: '参数: dispense_velocity'
type: number
volume:
description: '参数: volume'
type: number
required:
- volume
type: object
result: {}
required:
- goal
title: transfer 命令参数
type: object
type: UniLabJsonCommandAsync
set_position:
feedback:
current_position: current_position
progress: progress
status: status
goal:
max_velocity: max_velocity
position: position
goal_default:
max_velocity: 0.0
position: 0.0
handles: []
result:
message: message
success: success
schema:
description: ROS Action SetPumpPosition 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_position:
type: number
progress:
type: number
status:
type: string
required:
- status
- current_position
- progress
title: SetPumpPosition_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
max_velocity:
type: number
position:
type: number
required:
- position
- max_velocity
title: SetPumpPosition_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
- message
title: SetPumpPosition_Result
type: object
required:
- goal
title: SetPumpPosition
type: object
type: SetPumpPosition
transfer:
feedback:
current_status: current_status
progress: progress
transferred_volume: transferred_volume
goal:
amount: amount
from_vessel: from_vessel
rinsing_repeats: rinsing_repeats
rinsing_solvent: rinsing_solvent
rinsing_volume: rinsing_volume
solid: solid
time: time
to_vessel: to_vessel
viscous: viscous
volume: volume
goal_default:
amount: ''
from_vessel: ''
rinsing_repeats: 0
rinsing_solvent: ''
rinsing_volume: 0.0
solid: false
time: 0.0
to_vessel: ''
viscous: false
volume: 0.0
handles: []
result:
message: message
success: success
schema:
description: ROS Action Transfer 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties:
current_status:
type: string
progress:
type: number
transferred_volume:
type: number
required:
- progress
- transferred_volume
- current_status
title: Transfer_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
amount:
type: string
from_vessel:
type: string
rinsing_repeats:
maximum: 2147483647
minimum: -2147483648
type: integer
rinsing_solvent:
type: string
rinsing_volume:
type: number
solid:
type: boolean
time:
type: number
to_vessel:
type: string
viscous:
type: boolean
volume:
type: number
required:
- from_vessel
- to_vessel
- volume
- amount
- time
- viscous
- rinsing_solvent
- rinsing_volume
- rinsing_repeats
- solid
title: Transfer_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
message:
type: string
return_info:
type: string
success:
type: boolean
required:
- success
- message
- return_info
title: Transfer_Result
type: object
required:
- goal
title: Transfer
type: object
type: Transfer
module: unilabos.devices.virtual.virtual_transferpump:VirtualTransferPump
status_types:
current_volume: float
max_velocity: float
position: float
pump_info: dict
remaining_capacity: float
status: str
transfer_rate: float
type: python
description: Virtual Transfer Pump for TransferProtocol Testing (Syringe-style)
handles:
- data_key: fluid_port
data_source: handle
data_type: fluid
description: 注射器式转移泵的连接口
handler_key: transferpump
io_type: source
label: transferpump
side: SOUTH
icon: Pump.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: object
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object
virtual_vacuum_pump:
class:
action_value_mappings:
auto-cleanup:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand cleanup 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand cleanup 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: cleanup 命令参数
type: object
type: UniLabJsonCommandAsync
auto-close:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand close 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand close 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: close 命令参数
type: object
type: UniLabJsonCommand
auto-initialize:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand initialize 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand initialize 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: initialize 命令参数
type: object
type: UniLabJsonCommandAsync
auto-is_closed:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_closed 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_closed 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_closed 命令参数
type: object
type: UniLabJsonCommand
auto-is_open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand is_open 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand is_open 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: is_open 命令参数
type: object
type: UniLabJsonCommand
auto-open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: UniLabJsonCommand open 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand open 的参数schema
properties: {}
required: []
type: object
result: {}
required:
- goal
title: open 命令参数
type: object
type: UniLabJsonCommand
auto-set_status:
feedback: {}
goal: {}
goal_default:
string: null
handles: []
result: {}
schema:
description: UniLabJsonCommand set_status 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand set_status 的参数schema
properties:
string:
description: '参数: string'
type: string
required:
- string
type: object
result: {}
required:
- goal
title: set_status 命令参数
type: object
type: UniLabJsonCommand
close:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: ROS Action EmptyIn 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: EmptyIn_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties: {}
required: []
title: EmptyIn_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
required:
- return_info
title: EmptyIn_Result
type: object
required:
- goal
title: EmptyIn
type: object
type: EmptyIn
open:
feedback: {}
goal: {}
goal_default: {}
handles: []
result: {}
schema:
description: ROS Action EmptyIn 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: EmptyIn_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties: {}
required: []
title: EmptyIn_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
required:
- return_info
title: EmptyIn_Result
type: object
required:
- goal
title: EmptyIn
type: object
type: EmptyIn
set_status:
feedback: {}
goal:
string: string
goal_default:
string: ''
handles: []
result: {}
schema:
description: ROS Action StrSingleInput 的 JSON Schema
properties:
feedback:
description: Action 反馈 - 执行过程中从服务器发送到客户端
properties: {}
required: []
title: StrSingleInput_Feedback
type: object
goal:
description: Action 目标 - 从客户端发送到服务器
properties:
string:
type: string
required:
- string
title: StrSingleInput_Goal
type: object
result:
description: Action 结果 - 完成后从服务器发送到客户端
properties:
return_info:
type: string
success:
type: boolean
required:
- return_info
- success
title: StrSingleInput_Result
type: object
required:
- goal
title: StrSingleInput
type: object
type: StrSingleInput
module: unilabos.devices.virtual.virtual_vacuum_pump:VirtualVacuumPump
status_types:
status: str
type: python
description: Virtual vacuum pump
handles:
- data_key: fluid_in
data_source: handle
data_type: fluid
description: 真空泵进气口
handler_key: vacuumpump
io_type: source
label: vacuumpump
side: SOUTH
icon: Vacuum.webp
init_param_schema:
description: UniLabJsonCommand __init__ 的参数schema
properties:
feedback: {}
goal:
description: UniLabJsonCommand __init__ 的参数schema
properties:
config:
description: '参数: config'
type: string
device_id:
description: '参数: device_id'
type: string
kwargs:
description: '参数: kwargs'
type: string
required:
- kwargs
type: object
result: {}
required:
- goal
title: __init__ 命令参数
type: object