项目目录骨架
真实机器人项目最怕“代码能跑但证据散落”。这个结构按标定、建模、规划、学习、迁移、部署和答辩组织。
机器人描述
robot_description/urdf/minimal_6dof_arm.urdf.xacrorobot_description/config/joint_limits.yaml
保存 CAD 到 URDF 的结构、惯量、joint limit、TCP 和 ros2_control 配置。
规划与任务
moveit_config/config/moveit_planning.yamlbehavior_trees/pick_place_with_recovery.xml
保存 MoveIt2 规划参数、碰撞策略、行为树、失败恢复和人工确认逻辑。
VLA 数据闭环
vla_dataset/schema.jsonvla_dataset/sample_episode.jsonvla_dataset/sample_action.json
定义语言、视觉、动作 chunk、成功标签和安全字段,避免训练数据变成无法复现的散文件。
部署安全
deployment/safety_checklist.yamldeployment/guarded_policy_gateway.py
把 VLA/LLM 输出挡在技能层和安全边界之外,先检查再执行。
离线实验到真实工程映射
| 离线实验 | 真实工程目录 | 真实系统替换项 |
|---|---|---|
| 标定报告 | reports/calibration/ | OpenCV/ROS2 camera calibration、手眼标定、TF 校验 |
| 机器人建模 | robot_description/ | 真实 CAD 尺寸、质量属性、惯量、碰撞几何 |
| 控制与规划 | moveit_config/ + behavior_trees/ | MoveIt2 规划组、碰撞场景、限速、回退、人工确认 |
| VLA 数据闭环 | vla_dataset/ | 真实遥操作 episode、语言指令、图像、动作 chunk |
| Sim2Real | reports/sim2real/ | 随机化范围、系统辨识参数、真实少量微调 |
| 真实部署 | deployment/ | 急停、限速、日志、回滚、SOP、现场风险评估 |
无依赖校验命令
这两个命令不需要 ROS2 或真机,用于先验证 VLA 数据格式和安全网关逻辑。
校验 VLA episode
cd website/full-chain-labs python3 robot-stack-template/scripts/validate_vla_episode.py robot-stack-template/vla_dataset/sample_episode.json
干跑安全网关
cd website/full-chain-labs python3 robot-stack-template/deployment/guarded_policy_gateway.py --action-json robot-stack-template/vla_dataset/sample_action.json --dry-run
VLA/LLM 到机器人执行的安全边界
不要把 VLA/LLM 输出直接发给执行器。正确路径是:语言/视觉模型输出意图或技能参数 → 技能白名单 → 工作空间检查 → 速度限制 → MoveIt2/控制器执行 → 日志与回滚。
真机前检查清单
模型可信
- TF 无断链
- joint limit 完整
- 惯量单位正确
- TCP 坐标验证
执行可信
- 规划成功率统计
- 碰撞检查开启
- 失败恢复策略
- 人工确认逻辑
部署可信
- 急停可触发
- 限速有效
- 日志完整
- 回滚方案存在