mcpField
P
physicalai-runtime-adding-a-robot-integration

physicalai-runtime-adding-a-robot-integration

github.com/openvinotoolkit开发4083 次安装今天更新
代码仓库

关于 physicalai-runtime-adding-a-robot-integration

为 physicalai-runtime 添加机器人集成的开发技能,涵盖 Robot 协议、连接生命周期、观测与动作接口、测试和验证。

主要功能

  1. 01结构化 Robot 协议
  2. 02连接生命周期指南
  3. 03观测与动作要求
  4. 04模拟硬件测试指南
  5. 05验证与安全检查

适用场景

  1. 01添加新机器人支持
  2. 02检查连接与断开行为
  3. 03无硬件测试集成

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/openvinotoolkit/physicalai --skill physicalai-runtime-adding-a-robot-integration

安装后在 Claude Code 中输入/physicalai-runtime-adding-a-robot-integration确认已加载。

附带文件references/robot-protocol.md

详细介绍

添加机器人集成

机器人满足 src/physicalai/robot/interface.py 中的结构化 Robot 协议——无需继承基类。参考实现:src/physicalai/robot/so101/、src/physicalai/robot/trossen/(WidowX)。连接辅助函数:src/physicalai/robot/connect.py;验证:src/physicalai/robot/verify.py。

工作流

  1. 阅读 references/robot-protocol.md 和一个现有集成(串行舵机参考 SO-101,机械臂参考 WidowX)。
    • 完成标准:列出必需方法和观测数据形状。
  2. 实现连接生命周期:幂等的 connect()、disconnect()、is_connected()。
  3. 观测数据:返回一种具有 joint_positions、timestamp(time.monotonic())以及可选 sensor_data / images 的类型;当推理所需信息不止位置时,实现 state 属性。
  4. 动作:实现 send_action(action, *, goal_time=...),其中 action 的形状符合训练数据约定;通过 joint_names 记录关节顺序。
  5. 可选附加项:在 pyproject.toml 中设置(physicalai[so101]、physicalai[trossen]);延迟导入供应商 SDK。
  6. 导出:面向用户时,从 physicalai.robot 导出公共类。
  7. 测试:在 tests/unit/robot/ 下使用模拟硬件进行测试。
    • 完成标准:uv run pytest tests/unit/robot -k <name> 通过。
  8. 验证 CLI/文档——如果机器人支持自动检查,则接入 verify.py 中的模式。

必需检查

  • 运行时满足 isinstance(robot, Robot)(@runtime_checkable 协议)。
  • 断开连接时不发送动作。
  • 连接和断开连接期间,关节数量及 joint_names 保持稳定。
  • 安全性:验证用户提供的端口/路径字符串;不得使用未经清理的设备路径调用 shell。

参考资料

  • references/robot-protocol.md
  • docs/explanation/robots.md

评论

支持 Markdown