✨ feat(planning): 添加离线飞拍规划能力
* 固化离线飞拍轨迹加载、保存和规划结果。 * 真机初始化失败时保留模型加载后的离线规划能力。 * 更新状态接口、调试页和回归测试覆盖。
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# 真机优先与离线飞拍规划改造计划
|
||||
|
||||
## 已实施目标
|
||||
|
||||
- 启动及 `/init_mpc_robot` 固定执行“加载模型 → 连接真机 → `EnableRobot(8)`”。
|
||||
- 模型加载成功但连接或使能失败时进入 `OfflineReady`,HTTP 宿主继续运行。
|
||||
- 飞拍资产固定保存到 `Config/RobotConfig.json`,上传、列出、删除不依赖模型或真机状态。
|
||||
- `/save_traj_info/` 只要求模型已加载,返回完整最终发送点列、触发绑定和导出文件绝对路径。
|
||||
- `/execute_flyshot/` 仍要求 `RealReady`,离线规划不会伪造机器人连接或使能。
|
||||
- `/debug` 提供模型加载、轨迹上传/选择、离线生成、分页点列和导出路径查看。
|
||||
|
||||
## 状态约定
|
||||
|
||||
- `LoadingModel`:正在加载机器人模型。
|
||||
- `Connecting`:模型已加载,正在连接或使能真机。
|
||||
- `RealReady`:真机已连接且使能,允许真实运动和 IO。
|
||||
- `OfflineReady`:模型已加载但真机不可用,允许离线规划。
|
||||
- `ModelLoadFailed`:机器人模型不可用,禁止规划和执行。
|
||||
|
||||
## HTTP 约定
|
||||
|
||||
- 保留 `/setup_robot/`,仅加载模型,不连接、不使能,也不清空飞拍资产。
|
||||
- 新增 `/init_mpc_robot`,请求体只包含 `robot_name`、`robot_ip`。
|
||||
- 删除 `/init_mpc_robt`、`/connect_server/`、版本查询、环境文件、TCP 显示、`is_setup` 和仿真控制器切换路由。
|
||||
- `/upload_flyshot/` 在上传阶段只校验资产结构和有限数值;自由度与模型限制在规划阶段校验。
|
||||
- `/save_traj_info/` 返回规划摘要、关键/稠密轨迹、最终发送点、ShotEvents、触发绑定和导出路径。
|
||||
|
||||
## 验证
|
||||
|
||||
- 核心测试覆盖离线资产生命周期、模型重载保留资产、连接失败降级和完整离线规划结果。
|
||||
- 集成测试覆盖删除路由 404、新初始化接口、状态快照和 Debug 离线规划页面。
|
||||
- 最终执行核心测试、集成测试和解决方案构建。
|
||||
Reference in New Issue
Block a user