3.0 KiB
Uni-Lab 启动
安装完毕后,可以通过 unilab 命令行启动:
Start Uni-Lab Edge server.
options:
-h, --help show this help message and exit
-g GRAPH, --graph GRAPH
Physical setup graph.
-d DEVICES, --devices DEVICES
Devices config file.
-r RESOURCES, --resources RESOURCES
Resources config file.
-c CONTROLLERS, --controllers CONTROLLERS
Controllers config file.
--registry_path REGISTRY_PATH
Path to the registry
--backend {ros,simple,automancer}
Choose the backend to run with: 'ros', 'simple', or 'automancer'.
--app_bridges APP_BRIDGES [APP_BRIDGES ...]
Bridges to connect to. Now support 'mqtt' and 'fastapi'.
--without_host Run the backend as slave (without host).
--config CONFIG Configuration file path for system settings
使用配置文件
Uni-Lab支持使用Python格式的配置文件进行系统设置。通过 --config 参数指定配置文件路径:
# 使用配置文件启动
unilab --config path/to/your/config.py
配置文件包含MQTT、HTTP、ROS等系统设置。有关配置文件的详细信息,请参阅配置指南。
初始化信息来源
启动 Uni-Lab 时,可以选用两种方式之一配置实验室设备、耗材、通信、控制逻辑:
1. 组态&拓扑图
使用 -g 时,组态&拓扑图应包含实验室所有信息,详见{ref}graph。目前支持 graphml 和 node-link json 两种格式。格式可参照 tests/experiments 下的启动文件。
2. 分别指定设备、耗材、控制逻辑
分别使用 -d, -r, -c 依次传入设备组态配置、耗材列表、控制逻辑。
可参照 devices.json 和 resources.json。
不管使用哪一种初始化方式,设备/物料字典均需包含 class 属性,用于查找注册表信息。默认查找范围都是 Uni-Lab 内部注册表 unilabos/registry/{devices,device_comms,resources}。要添加额外的注册表路径,可以使用 --registry 加入 <your-registry-path>/{devices,device_comms,resources}。
通信中间件 --backend
目前 Uni-Lab 仅支持 ros2 作为通信中间件。
端云桥接 --app_bridges
目前 Uni-Lab 提供 FastAPI (http), MQTT 两种端云通信方式。其中默认 MQTT 负责端对云状态同步和云对端任务下发,FastAPI 负责端对云物料更新。
分布式组网
启动 Uni-Lab 时,加入 --without_host 将作为从站,不加将作为主站,主站 (host) 持有物料修改权以及对云端的通信。局域网内分别启动的 Uni-Lab 主站/从站将自动组网,互相能访问所有设备状态、传感器信息并发送指令。
完整启动示例
以下是一些常用的启动命令示例:
# 使用配置文件和组态图启动
unilab -g path/to/graph.json
# 使用配置文件和分离的设备/资源文件启动
unilab -d devices.json -r resources.json