Files
ParkingRobot/docs/progress.md
T

5.9 KiB

当前进展

更新日期:2026-08-20。这里只保存当前状态,不作为完整开发历史。

已完成/已接入

  • 三项目解决方案与统一构建打包脚本:CommonUsageMedullaAdapterMultiWheelC
  • Shared的SI运动模型、坐标变换、角度工具、数值校验和 MultiWheelChassisAdapter
  • 弧长参数化 Trajectory2D、统一插值、轨迹投影窗口和进度连续性。
  • 默认 Stanley 横向 + PID 纵向的新版轨迹控制链,横向控制器可注入替换。
  • 前进4m、倒车4m、45°蟹行4m、直线-左半圆-直线和组合运动宿主测试入口。
  • Detour位姿与轮组反馈组合状态源:Vx/Vy用于控制速度,Vw用于短时位姿预测和动态航向合理性判断,最终控制Omega仍来自Detour。
  • Detour源 tick/l_step 诊断、跳变候选确认、有限小偏移任务坐标连续化、自转期间禁止自动吸收偏移,以及超时状态不可用保护。
  • 起步释放、曲率前馈预瞄、GCP角速度限制、终点制动预瞄和单向低速收敛。
  • 原地自转舵轮准备、航向PID、超时保护和完成后回正;自转期间位置/航向有效性已分离,到位停车后才恢复完整位姿并决定是否释放下一段。
  • Detour单帧航向异常已增加连续帧/短时预测确认;第六轮实车数据确认前两帧异常由轮组Vw预测承接,持续到第三个异常新帧时才安全终止。
  • C层轨迹/周期CSV与M层轮速/舵角诊断记录。
  • C层Detour静态诊断入口,记录源时间、l_step、位姿帧差和轮组静态反馈;已有约14分41秒实车静态基线。
  • C层轨迹CSV已补充原始/滤波轮组 Vx/Vy/Vw、轮组与预测时刻、Detour帧间隔、实际/允许创新、候选原因、估计器状态和不可用原因。
  • 停车控制参数集中到 Configuration/PilotConfig.ParkingControl.cs
  • MultiWheelC.Tests 已提供不依赖实车的Stanley前进/倒车横向符号回归,8个场景通过;该项目不进入正式解决方案和打包脚本。
  • Shared/Fleet 已加入不可变 FleetLayout、成员/车队命令模型和确定性 FleetKinematics;不依赖实车的4个刚体分解场景已通过。
  • 本次建立工作区/项目AGENTS导航和 docs/ 按需知识库。

以上表示代码入口存在,不表示全部实车工况已经验收。

当前进行方向

  • 普通正向/倒车直线、曲线和小范围运动中坐标连续化已基本可用;当前单车状态估计的主要未决问题收敛到原地自转时Detour偶发持续退化。
  • 暂时冻结普通运动跳变阈值和30°/s、40°/s²自转参数,等待Detour接口语义后再决定是否实施自转结束后的条件化仅位置连续化或调整航向恢复策略。
  • Detour对接最小问题已整理到 docs/detour-information-checklist.md,不要求取得源码。
  • 验证非零β运动系,当前已有45°蟹行直线入口;曲线蟹行仍需设计实验。
  • 多车共同搬运已完成布局模型和纯刚体速度分解;下一阶段是夹紧后布局采集/原子激活、车队状态与控制、通信和安全协调,再把成员命令接入各车 SendBodyTwist()。QP/HQP不作为第一版前置条件。
  • β在多车中定位为单车执行坐标系而非车队核心优化量:常规、斜行和横移动作先确定车队主要滚动方向,各车按布局朝向换算本地β,停车预对齐并经车队同步屏障统一释放。轨迹级β搜索只作为机械余量或复杂方向变化下的后续增强。

阻塞/待确认

  • Clumsy/Medulla正式宿主、插件部署和配置持久化说明未纳入仓库。
  • 完整停车业务流程和验收指标未确认。
  • 多车通信协议、统一时间轴、车队参考点选取、夹紧后布局采集方法、刚体误差阈值和故障降级策略未确认;已确认运行布局应在夹紧后生成不可变快照并由上层整体激活。
  • 最新实车实验数据对控制周期与舵轮滞后的结论尚未沉淀为可复核结果。
  • Detour l_step 精确定义、显式重定位/坐标重置状态和部署端MDCS恢复策略待确认;当前不能把 l_step<4 当作唯一有效性条件。
  • Detour getCartLocation() 的位姿坐标系、tick 采样/解算/发布语义、是否已有独立连续里程计或定位状态接口,以及部署版本和实际里程计/SLAM配置待确认。
  • Detour原地自转时 l_step 大幅上升、100~200mm级位置不连续和连续航向创新异常的内部原因待Detour负责人说明;仅凭当前位姿接口无法保证持续航向异常时仍可靠完成绝对角度闭环。
  • Detour源 tick 与本机单调时钟、轮组采样时刻尚无统一时间轴;当前创新比较可能包含数据年龄造成的表观误差。

建议下一步

  1. docs/detour-information-checklist.md 确认 getCartLocation() 字段、tickl_step、定位延迟、重定位行为和质量状态接口。
  2. 在Detour信息返回前不继续全局放宽状态估计边界,也不提高自转角速度/角加速度;现有偶发定位不可用保持安全停车。
  3. 若工程上必须先降低位置型自转失败率,再单独设计仅在纯自转结束、轮组无平移且航向有效时启用的位置连续化;不得扩展到普通轨迹运动,也不得吸收航向偏移。
  4. 为轨迹插值/投影、坐标变换、状态跳变候选和终点策略继续补充不依赖宿主的数学回归测试。
  5. 设计车队建立生命周期:预设布局引导就位,夹紧静止后同步采集成员位姿,创建并原子激活新的 FleetLayout,松开后清除;车队参考系和采样同步方法需先明确。
  6. 继续补充 FleetKinematics 的圆弧、任意布局和倒车数学场景,再接入车队状态与控制流程,不直接启用 #if false 旧多车代码。
  7. 在接入通信前定义车队状态时间对齐、心跳/命令有效期、共同速度缩放、成员故障整队停车和舵轮准备同步屏障。