08 · 后续路线
已完成(本仓库可直接运行)
| 能力 | 状态 |
|---|---|
| 仿真模型加载/驱动/渲染验证(3 份 MJCF) | ✅ |
| 键盘遥操(仿真 / 真机) | ✅ 实机验证 |
| 主动臂数字孪生(实体臂 → 仿真臂,含零点微调) | ✅ 实机验证 |
| 数据录制(真机 / 仿真)+ 回合控制 + 体检脚本 | ✅ 实机验证 |
| 数据回放(真机 / 仿真,官方机制) | ✅ 实机验证 |
自动化冒烟测试(无硬件 smoke_test.py) | ✅ 26 项通过 |
双相机视觉数据集 so101_sim_vision(5 回合 / 10610 帧 / 353.8s) | ✅ |
训练(ACT)与仿真策略部署(lerobot-train / lerobot-rollout) | ✅ 冒烟实测(见 09) |
下一步(按价值排序)
阶段 2 · 相机进场景(进行中)
已完成的:
- 支架(STEP→STL)与相机(按 HBVCAM-F2170HD V22 数据表 25×30×5.2mm 建的占位体)装配进仿真, 位姿经
adjust_mount.py/adjust_camera.py实机对照调整; <camera>元素接入(sim_cam,fovy 初值 49°),仿真视觉录制链路已打通:--robot.image_camera=sim_cam即产出observation.images.wrist视频数据集(冒烟测试 [5] 全过)。
2026-10-16 更新:相机瞄准/fovy 已调到满意(adjust_camera.py 新增 live view 实时画面窗口, 断点续调、窗口误关自动重开;并修复了 MuJoCo 相机取景方向=元素 −Z 导致的"镜头指向与画面反向"bug, 详见 07)。已用新标定主动臂正式录成视觉数据集(含 wrist 视频,跟随误差 ≤2 单位)✅; 旧的实验录制已于 2026-10-16 清理,正式数据集统一为 so101_sim_vision(双相机)。 同日仿真机器人迁移到 mujoco_menagerie 的 SO-ARM100 模型(2026-10-16):原教程模型爪无法夹取, 新模型爪部为真机 CAD 碰撞、实测可稳定夹住 34mm 方块;录制/遥操/双相机/工作区链路全部保留, 待一次实机遥操复核(尤其 wrist_roll 方向符号)。 待完成的:真机 HBVCAM 接上后做"真机拍 vs 仿真渲染"对照微调; 可选:相机本体 STL 替换占位体。真机侧相机配置(--robot.cameras OpenCV)后续同做。
阶段 3 · 场景与规模化(进行中)
- ✅ 工作区进入场景(2026-10-16):垫板 + 三色方块(34mm,可抓取)+ 收纳盒 + 固定顶视相机
top_cam(定义在so101_assets.add_workspace,渲染/收益检查工具preview_workspace.py);双相机(wrist+top) 录制链路已打通(--robot.top_camera=top_cam); - 自动数据生成:脚本策略/RL 在仿真里整夜批量跑(无人在环),这是"几十倍效率"的来源;
- 视觉域随机化(纹理/光照/相机抖动)为 sim2real 做准备。
阶段 4 · 训练与部署
- ✅ 训练/部署链路已实测(2026-10-16):
lerobot-train(ACT,CPU 12 步冒烟——约 2s/步、loss 正常下降、 checkpoint 按预期落盘)与lerobot-rollout --strategy.type=base(在仿真里实际执行策略 20s、 自动送臂回初始位姿后收场)均已打通;完整命令、要点与续训方法见 09 第 7/8 节, 教程自带演示 checkpointoutputs/train/smoke_act可直接用来试通部署链路; - 正式训练在 有 GPU 的机器上进行(ACT / SmolVLA;本机纯 CPU 仅适合小步数验证链路); 数据集拷贝或推 HF 私有仓库即可;
- 真机部署同样走
lerobot-rollout(把--robot.*换成so101_follower配置)。
长期 · sim2real
仿真数据 + 少量真机数据混训 → 真机零成本评估(仿真里可复现评测策略成功率)。 注意:纯仿真数据直接上真机(零样本迁移)是最难的路线,先做"短闭环"(真机数据训练→真机部署), 仿真逐步叠加。
一句话定位
对已有实体臂的团队:仿真 = 开发沙盒 + 演示资料 + 数据放大器; 对潜在客户:仿真 = 买之前就能走完整个流程的体验工具。

