完成 xyzbc-trt working 任务复核

This commit is contained in:
mes123456
2026-07-02 23:53:51 -04:00
parent b279fa17fd
commit 2722fe7f3c
33 changed files with 376795 additions and 171883 deletions

View File

@@ -91,6 +91,16 @@
| `helix_bc.ngc` | B/C helix 五轴轨迹 | Web 必须 stage 并进入路径对比 |
| `boat-xyzbc.ngc` | 额外演示程序 | Web 必须 stage 并可作为验收程序 |
## 刀具执行路径与逐行 G 代码对标
| 对标项 | LinuxCNC 真源 | Web 对标目标 | Evidence/验收 |
| --- | --- | --- | --- |
| 刀具执行语义路径 | `xyzbc_switchkins.ngc` 调用 `xyzbc_switchkins_sub.ngc`,再调用 `helix_bc.ngc` | Web 按同一源程序和子程序展开执行路径,不只依赖 UI 预览 | native/Web `semanticExecutionPath.samples` 均为 1300compare `semanticExecutionVsSemanticExecution.geometricAligned=true` |
| 实际轴值 | G53/G54、G0、G2 helix、B/C 姿态和 switchkins 状态 | Web 记录每条产生日志运动后的 X/Y/Z/B/C、TCP、toolAxis、feed | native/Web `axisValuesByLine` 均为 29 条compare 最大 TCP/joint/toolAxis 误差为 0 |
| 每行 G 代码执行过程 | 主程序行 2、`xyzbc_switchkins_sub.ngc` 行 15-45、`helix_bc.ngc` 行 12-21 | Web 记录 call、M429/M428、G10、G0、G2 的执行顺序和 kinematics 前后状态 | native/Web `lineExecutionTrace` 均为 64 条compare `mismatchCount=0` |
| 完整 G 代码执行过程 JSON | 主程序、子程序边界、注释、参数赋值、call stack、M/G 代码、运动结果 | Web 记录每个动态执行步骤和每个源行覆盖状态,每步包含详细结果 | native/Web `gcodeExecutionProcess.executionSteps` 均为 128`sourceLineCoverage` 均为 65compare `mismatchCount=0` |
| runtime 执行反馈 | native `linuxcnc.stat()`、Web task/HAL WASM status | 保留真实反馈路径,作为运行完成和状态流证据 | native `executionPath.taskHal.completed=true`Web `executionPath.taskHal.completed=true` |
## JSON 证据对标
native evidence、Web evidence、compare evidence 必须覆盖:
@@ -103,15 +113,22 @@ native evidence、Web evidence、compare evidence 必须覆盖:
- `axisJointLimits`X/Y/Z/B/C 和 JOINT_0..4 限制、单位、速度/加速度。
- `switchkinsTransitions`M429/M428/M430 的命令、HAL pin 和状态变化。
- `toolTable`T/P/Z/D 解析和当前工具偏置。
- `previewPath`:刀具预览路径,20ms 统一采样。
- `executionPath`:刀具执行路径,20ms 统一采样。
- `previewPath`:刀具预览路径,50ms 统一采样。
- `executionPath`:刀具执行路径,50ms 统一采样。
- `semanticExecutionPath`:基于 LinuxCNC 源程序/子程序展开的刀具执行语义路径50ms 统一采样。
- `lineExecutionTrace`主程序、子程序、M428/M429、G10、G0、G2 的逐行执行过程。
- `axisValuesByLine`:每条产生日志运动后的 X/Y/Z/B/C、TCP、toolAxis、feed。
- `gcodeExecutionProcess`:完整动态执行步骤、源行覆盖、调用栈、参数变化、模态变化、运动起止轴值/TCP/toolAxis。
- `pathComparison`native/Web 预览与执行路径误差统计。
- `lineExecutionComparison`native/Web 逐行 G 代码执行过程对比。
- `axisValuesByLineComparison`native/Web 每行实际轴值对比。
- `gcodeExecutionProcessComparison`native/Web 完整 G 代码执行过程 JSON 对比。
- `uiEquivalence`AXIS/PyVCP/Vismach 在 Web 中的等效控件和状态。
- `axisButtonParity`AXIS/PyVCP 按钮 action、LinuxCNC 源程序/POSTGUI HAL 来源、预期状态效果、缺口列表。
## 当前主要缺口
## 当前闭环状态
当前 T-001 到 T-042 均已完成。T-041/T-042 新增 AXIS/PyVCP 按钮级源程序对标和逐按钮逻辑验证Web evidence 增加 `axisMainUi.axisButtonParity``coverage.axisButtonParityCovered`
当前 T-001 到 T-046 均已完成。T-041/T-042 新增 AXIS/PyVCP 按钮级源程序对标和逐按钮逻辑验证T-043/T-046 新增刀具执行路径、逐行 G 代码执行过程、每行实际轴值和完整 G 代码执行过程 JSON 对标
已闭环事项:
@@ -119,5 +136,6 @@ native evidence、Web evidence、compare evidence 必须覆盖:
2. Web evidence 已记录 `startupSequence``halNets``kinematicsPins``axisJointLimits``axisMainUi``vismachEquivalent``basicSimEquivalent``ngcguiExecution` 和 native 状态流复核。
3. Web UI 已按 AXIS 等效面板覆盖程序、坐标、状态、MDI/switchkins、override、tool、preview、execution 和 axis buttons按钮级矩阵已映射到 LinuxCNC `axis.py``switchkins_postgui.hal`
4. Vismach 等效模型已按 `xyzbc-trt-gui.py` 的 pin 和模型层级完成 Web 端验收,`smoke:browser` 覆盖 canvas 非空和 dataset。
5. native/Web 刀具预览路径执行路径 JSON 均已按 20ms 周期采集compare 已输出误差统计。
5. native/Web 刀具预览路径、runtime 执行反馈路径和源程序语义执行路径 JSON 均已按 50ms 周期采集compare 已输出并硬校验误差统计。
6. `boat-xyzbc.ngc` staging 和 Ngcgui/remap 子程序全集 Web 可执行验收已完成。
7. `lineExecutionTrace` 64 条、`axisValuesByLine` 29 条、`gcodeExecutionProcess.executionSteps` 128 条、`sourceLineCoverage` 65 条均已在 native/Web JSON 中同构记录并通过 compare。