Files
cnc_wams/work/working5/06-决策记录.md

1.8 KiB
Raw Blame History

06-决策记录

DR-W5-001以 gmoccapy_XYZAB 执行流程作为本轮验收主线

日期2026-06-26

决策:

  • 本轮不只验证图形 RTCP 轨迹,而是按 LinuxCNC 启动、INI/HAL、task/NML、interpreter、gmoccapy UI 通信和互锁全链路推进。

原因:

  • 用户指定的基准文件覆盖了 gmoccapy_XYZAB.ini 五轴仿真从启动到界面通信的完整执行流程。
  • 若只看轨迹显示容易遗漏回零、状态机、换刀、主轴到速、冷却、UI gate 等数控系统仿真关键行为。

影响:

  • 任务矩阵按 LinuxCNC 行为拆分。
  • 任何实现修改都需要补充对应测试或验收证据。

DR-W5-002模式按钮门控前移到 SET_MODE 和 UI disabled 状态

日期2026-06-26

决策:

  • Web 侧 SET_MODE 统一按 LinuxCNC/gmoccapy 状态门控。
  • STATE_OFF 或未上电时Manual/Jog/MDI/Auto 都禁止切换。
  • STATE_ON 但未全轴回零且 NO_FORCE_HOMING = 0 时,只允许 Manual/Jog禁止 MDI/Auto。
  • 回零后 MDI/Auto 恢复可用Auto 解释器非 idle 时仍禁止离开 Auto。

原因:

  • LinuxCNC gmoccapy.pyon_hal_status_state_off() 会禁用 rbt_manualrbt_mdirbt_auto
  • on_hal_status_state_on() 先只启用 rbt_manual,退出设置页时也明确区分“未回零只 Manual 可用”和“已回零三种模式可用”。
  • 旧 Web 实现主要在 RUNRUN_MDI 时拦截,模式按钮本身仍可点击,不符合 gmoccapy 的按钮敏感状态。

影响:

  • app/src/state/linuxcnc-task-policy.js 成为模式切换和执行动作的统一互锁入口。
  • app/src/ui/gmoccapy-shell.js 侧边模式按钮使用同一 gate 输出 disabled、data-command-readyaria-disabled
  • Node 和浏览器测试增加下电、未回零、已回零三个阶段的断言。