部署 Uni-Lab-OS 作为端侧开发环境(以 M 系列 Mac 为例)
Step 1: 获取源码及配置环境
由于使用 ROS2 作为后端,仅推荐使用 mamba
进行包及环境管理,如果你还没有安装,参考 Mamba Installation
- clone 项目
git clone https://github.com/dptech-corp/Uni-Lab-OS.git
- 抓取所有分支
cd Uni-Lab-OS && git fetch
- 切换到 dev
git switch dev
- 创建 unilab 虚拟环境
根据你的操作系统,选择对应的环境配置文件:
- Windows:
unilabos-win64.yaml
- Linux:
unilabos-linux-64.yaml
- 非 M 芯片系列 MacOS:
unilabos-osx-64.yaml
- M 芯片系列 MacOS:
unilabos-osx-arm64.yaml
mamba env create -f unilabos-osx-arm64.yaml
- 激活 unilab 虚拟环境
mamba activate unilab
Step 2: 安装 ros-humble-unilabos-msgs
包
你有两种方式安装此包:
-
从最新的 Releases 下载你的系统架构对应的二进制包。
-
使用 boa 本地编译此包,以下介绍本地这两种方法。
方法 1: 直接下载对应编译包
例如对于 M 系列芯片的 MacOS 电脑,应使用 osx-arm64
。然后使用 conda 安装:
conda install '/absolute/path/to/your/download/file'
这里推荐使用 conda 而不是 mamba,避免 mamba 去搜索无效的包索引。在安装 mamba 时已自动安装 conda
本地编译安装 ros-humble-unilabos-msgs
包
创建新的 mamba 环境来安装 boa,否则必然会导致原环境异常。
- 新建一个 boa 专用环境
mamba create -n boa
mamba activate boa
- 安装 boa
mamba install boa -c conda-forge
- 编译
boa build \
-m ./recipes/conda_build_config.yaml \
-m ./recipes/macos_sdk_config.yaml \
./recipes/ros-humble-unilabos-msgs
编译完成后,你将得到一个 **.tar.bz2
文件,通过在终端中搜索 tar.bz2 来得到其绝对路径
- 返回
unilab
环境
mamba activate unilab
- 安装刚刚编译的 tar.bz2 文件
mamba install /absolute/path/to/your/**.tar.bz2
Step 3: 启动 Uni-Lab-OS
-
在根目录执行
pip install .
将当前路径挂载为 unilab 包。 -
配置
config.py
文件。【详见附录1】
cp ./unilabos/config/config.py ./unilabos/config/local_config.py
- 启动 Uni-Lab-OS,你可以使用任何一个测试用例来启动 Uni-Lab-OS
# python ./unilabos/app/main.py 可被替换为 unilab
python ./unilabos/app/main.py \
-g ./test/experiments/mock_reactor.json \
--config ./unilabos/config/local_config.py \
--upload_registry \
--disable_browser
-g
指定测试文件用例--config
指定配置文件--upload_registry
上传实验室设备注册表到云端--disable_browser
禁用浏览器弹出
更多参数,可通过 -h
参数查看。
附录1:config.py
文件配置
请参考 unilabos/config/config.py
进行实现。