Revo 3 SDK 1.x
Revo 3 SDK 1.x 适用于仍使用模块级函数和 DeviceContext 的既有项目。本文以公开示例仓库 release/1.x 分支使用的 SDK 1.5.1 为基线。新项目建议使用 SDK 2.x;升级既有项目时,请先阅读从 1.x 迁移到 2.x。
bc-revo3-sdk 是 Python 安装包名,不是公开源码仓库。公开代码仅包含示例,不包含 SDK 核心实现。
本页的 1.5.1 指 Revo 3 SDK 版本,与 Revo 1 基础版和 Revo 1 进阶版的产品型号名称无关。
版本与公开资源
| 内容 | 版本或入口 |
|---|---|
| SDK 1.x 基线 | 1.5.1 |
| Python 安装包 | bc-revo3-sdk==1.5.1 |
| 公开示例 | brainco-revo3-sdk 的 release/1.x 分支 |
| 2.x 升级说明 | 从 1.x 迁移到 2.x |
请在项目依赖中固定 SDK 包版本。release/1.x 是可更新分支;需要可复现构建时,还应固定示例仓库的提交或标签。
Python 安装
Python wheel 使用 Python 3.9 及以上版本的稳定 ABI。1.5.1 已发布以下平台包:
- macOS arm64(macOS 11 及以上)
- Linux x86_64(manylinux 2.31)
- Linux aarch64(manylinux 2.31)
- Windows x86_64
建议在虚拟环境中安装并核对实际加载的版本:
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install bc-revo3-sdk==1.5.1from bc_revo3_sdk import main_mod as sdk
print(sdk.get_sdk_version())Windows 激活虚拟环境时使用 .venv\Scripts\activate。
运行公开示例
git clone --branch release/1.x https://github.com/BrainCoTech/brainco-revo3-sdk.git
cd brainco-revo3-sdk/python
uv sync
uv run python revo3/auto_detect.py先运行 revo3/auto_detect.py 核对端口、协议和设备身份。revo3/hand_demo.py、revo3/hand_trajectory.py 等运动示例会控制真实设备;运行前应确认急停、机械限位和安全空间。
公开示例还包含固件升级和 GUI 演示。固件升级必须使用与设备型号匹配的正式固件,并保证通信和供电稳定。
C/C++ 示例
公开仓库提供 1.x 的 C/C++ 示例和按平台下载预编译库的脚本:
cd brainco-revo3-sdk
sh download-lib.sh
make -C c
./c/demo/auto_detect完成只读发现后,再按需运行 hand_demo、hand_trajectory 或 hand_dfu。头文件与动态库必须来自同一 SDK 版本,不能与 2.x 文件混用。
1.x API 定位
1.x Python 以 DeviceContext 和模块级函数为主。常用入口包括:
| 能力 | 1.x 入口 |
|---|---|
| 查询 SDK 版本 | get_sdk_version() |
| 自动发现 | revo3_auto_detect()、init_from_detected() |
| Modbus/RS-485 | modbus_open()、modbus_close() |
| CAN FD | init_socketcan_canfd() 或 init_zqwl_canfd() |
| 设备上下文 | DeviceContext |
| 连续状态与触觉采集 | DataCollector、状态与触觉 buffer |
安装包中的 bc_revo3_sdk/main_mod.pyi 是 Python 精确签名、枚举和返回类型的版本匹配参考。C/C++ 项目以同一分发包中的 revo3-sdk.h 为准。网站不单独复制完整 1.x API 手册,以免文档与已安装二进制版本不一致。
1.x 与 2.x 的对象模型、异步接口和 ABI 不兼容。升级时不要只替换动态库或 Python wheel;应按照迁移说明修改调用并重新验证连接、运动、触觉、错误恢复和资源关闭。