Files
cnc_wams/work/working9-执行过程按钮/README.md
2026-07-07 16:46:39 -04:00

48 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# working9 README 索引
## 主题
基于 `/home/mes123456/cnc_wams/项目分析/AXIS主控制按钮调用链与WASM完善指南.md`,推进 AXIS 风格“执行 Run”按钮及其前置/运行期控制链在 `wasm-port``web-rtcp-5axis-xyzbc-trt-sim-plan` 中的完善。
本工作目录以“执行过程按钮”为主线,但 Run 不是孤立按钮。LinuxCNC 中 Run 是否可用、是否能继续、是否能暂停/单步,依赖以下状态链:
```text
ESTOP/ESTOP_RESET
-> Power ON
-> Manual Home
-> AUTO Run
-> Reading/Waiting
-> Pause/Resume/Step
-> Done/Error/Abort
```
## 文档索引
| 文件 | 用途 |
|---|---|
| `01-项目功能内容.md` | 定义执行按钮功能范围、LinuxCNC 对标语义、当前差距和完成定义。 |
| `02-项目程序开发详细步骤.md` | 按 `wasm-port`、Web store、UI、测试证据列出可执行开发步骤。 |
| `03-推进台账.md` | 记录每轮做了什么、改了哪些文件、验证了什么、下一步是什么。 |
| `04-任务矩阵.md` | 管理全部任务编号、状态、依赖和验收标准,防止重复推进。 |
| `05-验收证据.md` | 汇总命令、页面、job_id、report_id、PDF、截图、trace 等证据。 |
| `06-决策记录.md` | 固化关键技术决策,避免后续重复争论同一问题。 |
## 当前推进入口
1. 先读 `01-项目功能内容.md`,确认 Run 的完成定义不是“前端开始播放”,而是 task/motion 状态进入 LinuxCNC 风格执行链。
2.`04-任务矩阵.md``W9-001` 开始推进。
3. 每完成一个任务把命令、输出摘要、trace、截图目录追加到 `05-验收证据.md`
4. 每轮结束更新 `03-推进台账.md`
5. 如果改变状态源、门禁策略、fallback 方案,先追加 `06-决策记录.md`
## 当前结论
`AXIS主控制按钮调用链与WASM完善指南.md` 的核心结论是AXIS 按钮不是直接改 UI 状态,而是通过 `linuxcnc.command()` 发送 `EMC_TASK_*``EMC_JOINT_*` 命令,经 task 层门禁、motion 层执行,再由 `emcStatus` 反向驱动 UI。
working9 后续推进必须围绕这个结论:
- Run 必须发送 `EMC_TASK_PLAN_RUN`,并等待 task status 进入 `INTERP_READING/WAITING`
- Run 前必须满足 `STATE_ON + MODE_AUTO + homed/no_force_homing + program opened`
- Web 的 `runState` 只能是 WASM task/motion status 的投影,不能作为真实执行状态源。
- Pause、Resume、Step 必须作为执行过程的后续命令,不能退化为前端播放暂停或 frameIndex 跳转。