55 lines
2.7 KiB
Markdown
55 lines
2.7 KiB
Markdown
# 04 验收口径修订与三 Session Gate 实施记录
|
||
|
||
## 目标
|
||
|
||
本文件落实 `ACC-046/INT-033`,把 `04基于Web的LinuxCNC兼容数控仿真平台.txt` 中与锁定 LinuxCNC 源码不一致的语法、五轴 fixture 和固定通道表述修订为源码支持口径,并补足三 Web session 隔离 gate。
|
||
|
||
## 验收口径修订
|
||
|
||
| 原表述 | 修订后表述 | LinuxCNC/项目证据 |
|
||
| --- | --- | --- |
|
||
| G68/G69 坐标旋转 | `G10 L2 Pn R` 设置 G5x 坐标旋转 | `g-code.adoc`、`interp_convert.cc`、rotation/G10 tests、`SET_XY_ROTATION` |
|
||
| G51.1/G50.1 镜像 | `G10 L2 Pn R0` 取消 G5x 坐标旋转 | 同一 source-owned rotation path,不再宣称不存在的镜像指令 |
|
||
| 最多三通道 | 至少三个独立 Web session | 三个独立 store 的 feed/spindle override 隔离 gate |
|
||
| G43.1/G43.4 RTCP | 预编译 TRT kinematics 加 G43.1 刀偏输入 | `xyzbc-trt-kins.c`、`trtfuncs.c`、kinematics/compare gate |
|
||
| M19/M18 模式切换 | M19 主轴定向,M3/M4/M5 解除 | `interp_convert.cc`、`m-code.adoc` |
|
||
| A 轴 ±120° / xyzab.ini | XYZAC A 轴 `-100..50` | `xyzac-trt.ini [AXIS_A]` |
|
||
| G43.1 开启/G49 关闭 RTCP | G43.1 输入动态刀偏、G49 取消刀偏 | interpreter TLO 与 TRT kinematics 组合边界 |
|
||
| `sphere.ngc` 五轴/球面 | `xyzbc_switchkins.ngc` 五轴联动、`boat-xyzbc/boat-xyzac.ngc` 曲面代表 | 锁定 LinuxCNC 源树现有 demo 与 program-case gate |
|
||
|
||
## 三 Session Gate
|
||
|
||
`verify_session_override_gantry_evidence.mjs` 现创建三个独立 simulation store,按真实 RESET/POWER 顺序初始化,并设置三组不同 feed/spindle override:
|
||
|
||
```text
|
||
session 1: feed=80, spindle=110
|
||
session 2: feed=110, spindle=90
|
||
session 3: feed=90, spindle=120
|
||
```
|
||
|
||
每组状态由各自 store 读取并断言,证明至少三个 Web session 的倍率状态互不污染。该结果不改写 LinuxCNC 单 task 只有单 `pinterp`/`interp_list` 的源码边界。
|
||
|
||
## 验证命令
|
||
|
||
```bash
|
||
node web-rtcp-5axis-xyzbc-trt-sim-plan/tests/node/verify_session_override_gantry_evidence.mjs
|
||
cd wasm-port && ./tests/wasm/node/verify_interp_wasm.sh
|
||
```
|
||
|
||
关键输出:
|
||
|
||
```text
|
||
multi_session_override_isolation=ok
|
||
three_session_override_isolation=ok
|
||
gantry_dual_drive_source_evidence=ok
|
||
interp_wasm_node_smoke=ok
|
||
```
|
||
|
||
## 边界
|
||
|
||
本轮修订的是错误的验收声明,不是向 LinuxCNC 解释器添加 Fanuc 私有语义。真实硬件急停、encoder/servo 闭环、动态 `loadrt`、运行时自定义 kinematics、host promotion、realtime 和完整 native topology 仍保持条件通过或 Blocked。
|
||
|
||
## 结论
|
||
|
||
`ACC-046/INT-033` 完成。原 04 文本中的四个“需修订”项和相关语法/RTCP 部分成立项已改为锁定 LinuxCNC 源码支持口径;三实例要求已有可执行隔离 gate。
|