48 lines
2.5 KiB
Markdown
48 lines
2.5 KiB
Markdown
# 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 跳转。
|