DimOS A1Z、Piper、OpenArm、A750机械臂支持:完整平台接入指南
【免费下载链接】dimosDimensional is the agentic operating system for physical space. Command humanoids, quadrupeds, drones, and other hardware platforms in natural language and build multi-agent systems that work seamlessly with physical input (cameras, lidar, actuators).项目地址: https://gitcode.com/GitHub_Trending/dimo/dimos
DimOS(Dimensional)是面向物理世界的 Agentic 操作系统,支持用自然语言指挥人形机器人、四足机器人、无人机以及各种机械臂。本文是一份面向新手的完整机械臂平台接入指南,覆盖 A1Z、Piper、OpenArm 双臂与 A750 四款手臂的硬件要求、接入步骤与常用命令,帮助你快速把手中的机械臂接入 DimOS 的多智能体框架。
🦾 为什么要把机械臂接入 DimOS
DimOS 的核心能力是多智能体 + 物理感知:相机、激光雷达、执行器统一接入后,你可以直接说"把那个杯子递给我",由 Agent 调度规划、抓取与运动控制模块。机械臂是其中最关键的操作执行器。
DimOS 通过统一的Adapter(适配器)+ Protocol 协议 + Blueprint(蓝图)架构屏蔽各家 SDK 差异:
- 驱动层(Driver):负责线程、控制循环、发布关节状态
- 适配层(Adapter):封装厂商 SDK、处理单位换算(如弧度 ↔ 千分度)
- 蓝图层(Blueprint):一条命令拉起协调器、规划器、遥操作等常用配置
相关设计说明见 dimos/hardware/manipulators/README.md,协议定义见 spec.py。
📊 四款机械臂支持一览
| 机械臂 | 自由度 | 通信接口 | 接入形态 | 官方文档 |
|---|---|---|---|---|
| Galaxea A1Z | 6-DOF | CAN(gs_usb) | 单臂 + 抓取 | a1z.md |
| Piper | 6-DOF + 夹爪 | CAN | 单臂,遥操作/笛卡尔控制 | piper_integration.md |
| OpenArm v2.0 | 双臂 2×(7-DOF + 夹爪) | 双路 CAN | 双臂全身模型 | openarm_integration.md |
| A-750 | 6/7-DOF | 串口(/dev/ttyACM0) | 协议脚手架(tracing stub) | a750.md |
所有适配器均统一为 SI 单位(弧度、米、牛·米),开发者无需关心厂商私有单位。
🚀 A1Z 机械臂接入指南
核心源码:dimos/hardware/manipulators/galaxea_a1z/adapter.py
A1Z 适配器基于厂商a1zSDK,其控制特性值得注意:
- SDK 内部运行250 Hz 控制线程(MIT PD + 重力补偿),并内置关节/速度/温度等安全看门狗,DimOS 向其下发指令而非直接驱动 CAN
- 提供示教模式(
teaching配置),使用厂商零重力启动,可选夹爪自由拖动 - 关节限位与速度上限均已内置,规划速度默认限制在安全范围内
⚠️ 安全注意事项
A1 机械臂没有抱闸:禁用电机(关闭、断连)时手臂会自由下垂,操作前务必先把手臂放低或托住。
快速上手
# 键盘遥操作(默认使用内存 mock 硬件,无需真实机械臂) dimos run keyboard-teleop-a1z # WebXR 遥操作 dimos run teleop-webxr-a1z # 规划协调器(接真机时指定 CAN 口,如 --can-port can0) dimos run a1z-planner-coordinatorCAN 接口要求 HHS 适配器已绑定 Linuxgs_usb驱动,否则启动时会给出清晰的错误提示。
🦾 Piper 机械臂接入指南
核心源码:dimos/hardware/manipulators/piper/adapter.py
Piper 是低成本机械臂的热门选择。适配器封装piper_sdk,自动完成厂商单位换算(0.001 度 → 弧度、毫米 → 米),夹爪最大开口 8 cm。
# 基础协调器 dimos run coordinator-piper # 键盘 / WebXR 遥操作 dimos run keyboard-teleop-piper dimos run teleop-webxr-piper # 笛卡尔 IK 遥操作(可搭配 XArm 混合使用:coordinator-piper-xarm) dimos run coordinator-cartesian-ik-piperPiper 还支持 WebXR 示教数据采集(learning-collect-webxr-piper),为模仿学习准备数据集,见 docs/development/ 周边文档。
🤖 OpenArm 双臂平台接入指南
核心源码:dimos/hardware/whole_body/openarm_damiao/adapter.py、dimos/robot/manipulators/openarm/config.py
OpenArm v2.0 是**双臂(2×7-DOF + 双夹爪)**平台,在 DimOS 中以"全身模型"方式接入:左右两臂 + 两个夹爪共 16 个关节统一建模,支持重力补偿与双臂运动规划。
要点:
- 每条 CAN 总线驱动一条手臂(
left_can_port/right_can_port需成对指定) - 默认使用内存 mock 硬件,不会隐式连接真机,新手可安全试玩
- 内置Pink IK 求解器(teleop_ik.py),专门针对 OpenArm 冗余构型调优
- 规划组配置见 planning_groups.md
# mock 硬件:双臂规划器 + 协调器 dimos run openarm-planner-coordinator # WebXR 双臂遥操作(mock 安全默认) dimos run teleop-webxr-openarm # 接真机:两条 CAN 总线成对传入 dimos run teleop-webxr-openarm --left-can-port can1 --right-can-port can0🔌 A750 机械臂接入说明
核心源码:dimos/hardware/manipulators/a750/adapter.py
A-750 通过串口(默认/dev/ttyACM0)通信,支持 6 或 7 自由度(6 关节手臂 + 1 个夹爪关节),依赖a750_controlSDK。当前版本提供与其他适配器完全一致的运行时接口(连接、使能、写关节位置、清错误等),方便验证设备路径与命令链路,后续可持续完善底层驱动:
dimos run keyboard-teleop-a750🛠️ 常见问题排查
| 问题 | 排查建议 |
|---|---|
| 找不到 CAN 口 | 确认 HHS 适配器已绑定gs_usb驱动,用--can-port显式指定 |
| 真机无响应 | 先用默认 mock 硬件跑通蓝图,再切换真机,隔离软硬件问题 |
| 单位异常 | 无需处理——适配层已统一为 SI 单位 |
| 想无硬件调试 | 所有蓝图默认 mock,注入MockAdapter即可单测,见 test_adapter_lifecycle.py |
想扩展一款新机械臂?实现 ManipulatorAdapter 协议 并在_registry.py中登记工厂即可,完整教程见 adding_a_custom_arm.md。
📚 相关资源
- 操作能力总览:docs/capabilities/manipulation/index.md
- 蓝图清单:dimos/robot/all_blueprints.py
- Python API 说明:python_api.md
- 抓取(XArm 示例):xarm-grasp.md
- 系统配置指南:docs/usage/configuration.md
【免费下载链接】dimosDimensional is the agentic operating system for physical space. Command humanoids, quadrupeds, drones, and other hardware platforms in natural language and build multi-agent systems that work seamlessly with physical input (cameras, lidar, actuators).项目地址: https://gitcode.com/GitHub_Trending/dimo/dimos
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考