Files
cnc_wams/web-rtcp-5axis-sim-plan/docs/docs-directory-file-guide.md
2026-07-02 08:01:34 -04:00

28 KiB
Raw Blame History

docs 目录文件作用详解与关联流程图

生成日期2026-07-01
适用目录:/home/mes123456/cnc_wams/web-rtcp-5axis-sim-plan/docs

1. 文档集定位

docs 目录不是单一说明书,而是 Web-RTCP 五轴数控仿真项目的“方案、实施、追溯、参考、操作手册、截图证据”集合。它承担五类职责:

  1. 定义项目要做什么、不能做什么。
  2. 把 LinuxCNC 的源码、配置、GUI、HAL、G-code 示例映射到 Web 项目。
  3. 指导开发人员按阶段实现 Web UI、WASM runtime、Three.js 可视化、Task/HAL 仿真边界。
  4. 记录每一批功能的来源、边界、测试和剩余风险。
  5. 给操作人员提供界面使用流程、截图和验证方法。

推荐阅读顺序:

implementation-plan.md
  -> technical-roadmap.md
  -> program-implementation-guide.md
  -> native-task-hal-sync-implementation-steps.md
  -> development-continuation.md
  -> traceability-matrix.md
  -> linuxcnc-parity-matrix.md
  -> Web-RTCP五轴数控系统仿真界面操作手册新版.docx

参考类文档可按需阅读:

linuxcnc-python-gui-reference.md
linuxcnc-gui-reference-gallery.md
gmoccapy-xyzab-reference.md
manual-assets/*

2. 文件总览

文件 类型 主要作用 当前使用方式
implementation-plan.md 总体方案 定义项目定位、当前基线、LinuxCNC 参考案例、总体架构、RTCP 功能边界和阶段计划。 作为“为什么这样做”和“范围边界”的最高层说明。
technical-roadmap.md 技术路线 规定技术栈、目录建议、gmoccapy 风格 Web 方案、模块拆分、LinuxCNC 源码接入路线、数据流和里程碑。 作为架构拆分和里程碑路线图。
program-implementation-guide.md 实施指南 给出具体编程步骤、目录结构、Step 1-11、当前实现状态、禁止事项和开工建议。 开发时按步骤查阅,避免把 UI fixture 当成 LinuxCNC 语义证明。
native-task-hal-sync-implementation-steps.md Task/HAL 专项方案 详细规划 LinuxCNC task、motion、HAL 同步 runtime 的阶段、源码清单、C ABI、Worker 接线和验收矩阵。 推进 nativeTaskReadynativeHalSyncReady Web 仿真边界时使用。
development-continuation.md 接续/交接文档 记录 M1 到 M23 的阶段状态、最新基线、后续任务、回归命令和禁止事项。 每轮开发前确认“当前最新状态”和必须跑的回归。
traceability-matrix.md 追溯矩阵 把功能、Web 实现位置、LinuxCNC 来源、边界分类、验证方式和每批开发记录串起来。 做合规追溯、验收和回归审计。
external-user-m-tool-db-simulation-plan.md 专项方案 说明红框 external user-M/tool DB process 如何以 Web 仿真纳入项目,以及 host/native 边界。 修改 tool DB 或 user-M 白名单前先看。
linuxcnc-python-gui-reference.md GUI 参考说明 说明 AXIS、vismach、PyVCP、gmoccapy、QtVCP/QtDragon 各自提供哪些界面参考,以及哪些 native GUI 不能直接移植。 Web UI 和 Three.js 机床模型设计参考。
linuxcnc-gui-reference-gallery.md 界面图册 汇总 LinuxCNC 原始界面截图,说明 gmoccapy、QtVismach、AXIS、PyVCP、QtDragon 的参考优先级。 视觉和布局选型依据。
linuxcnc-parity-matrix.md 对标矩阵 记录当前 Web 项目对标的 LinuxCNC 配置、程序、功能和当前边界。 UI diagnostics 和 Node smoke 的对标说明。
gmoccapy-xyzab-reference.md gmoccapy XYZAB 参考 分析 LinuxCNC gmoccapy_XYZAB.ini 的启动、NML/HAL 通信、HAL 拓扑、G-code gate 和按钮图标边界。 作为 gmoccapy/trivkins reference profile不作为 RTCP 证明。
Web-RTCP五轴数控系统仿真界面操作手册.docx Word 操作手册旧版 面向操作人员,说明系统定位、界面区域、上电/回零、AUTO、MANUAL、MDI、倍率、会话和常见问题。 旧版用户手册,适合了解基础操作流程。
Web-RTCP五轴数控系统仿真界面操作手册新版.docx Word 操作手册新版 在旧版基础上强化 LinuxCNC 对标、右侧九入口互锁、真实五轴程序来源、项目目录、INI/HAL/tool table/remap 校验和验证记录。 当前推荐对外使用的操作手册。
.~lock.Web-RTCP五轴数控系统仿真界面操作手册.docx# LibreOffice 锁文件 记录某次 LibreOffice 打开 Word 手册时的用户、主机、时间和配置路径。 临时文件,不属于项目设计文档,也不应作为功能依据。
manual-assets/ 截图资产目录 保存操作手册用的界面截图和局部截图。 用于重建/更新 Word 手册、PDF 手册或网页说明。

3. Markdown 文件详细说明

3.1 implementation-plan.md

角色:总体实现方案。

它回答四个问题:

  • 项目是什么:独立 Web 五轴 RTCP 数控仿真界面,不是真实硬实时机床控制器。
  • 现有基础是什么:已有 interpreter WASM、OPFS/session、virtual HAL、AXIS 风格页面、5 轴源码覆盖和案例资产。
  • 参考哪些 LinuxCNC 内容:xyzac-trtxyzbc-trt、bridgemill、table-dual-rotary、trtfuncs.c5axiskins.cswitchkins.c、Python GUI 和 PyVCP/HAL 配置。
  • 阶段怎么走从方案文档、Web shell、5 轴 profile、kinematics WASM、RTCP 预览、操作级仿真到发布验证。

关键内容:

  • 明确浏览器不直接驱动真实伺服、IO 或 Linux kernel realtime ABI。
  • 要求 G-code 解释、canonical event、五轴运动学、remap 语义尽量保持 LinuxCNC-owned。
  • 规定四层架构Web UI、Web Runtime/Session、LinuxCNC WASM/Source Boundary、Visualization/Playback。
  • 定义 FiveAxisMotionFrameFiveAxisMachineProfile

读者:

  • 项目负责人用它判断范围。
  • 开发者用它理解架构边界。
  • 测试人员用它判断哪些能力不能被误宣称为完成。

3.2 technical-roadmap.md

角色:技术路线与模块设计。

它把总体方案落到工程结构,主要说明:

  • 技术栈:原生 HTML/CSS + TypeScript/JavaScript ES modules、Vite/esbuild、Three.js、Emscripten、OPFS、Node smoke、Playwright/Chromium browser smoke。
  • 不使用 React/Vue/Angular/Svelte 的原因:核心复杂度在 LinuxCNC/WASM、五轴运动学、RTCP 数据流和 Three.js。
  • 推荐目录:app/core/linuxcnc_kinematics_wasm/tests/
  • gmoccapy 5 轴 Web 化方案:页面布局、组件拆分、状态模型、样式原则。
  • 模块拆分:profilesruntimelinuxcnc_kinematics_wasmvisualizationuipanel-schema
  • LinuxCNC 源码接入步骤引用清单、C ABI shim、WASM 编译、Node 验证、Browser 验证、Python GUI 参考验收。

它和 implementation-plan.md 的关系:

  • implementation-plan.md 偏“产品与边界”。
  • technical-roadmap.md 偏“工程结构与技术路径”。

3.3 program-implementation-guide.md

角色:逐步编码指南。

它面向实际开发,按 Step 拆分:

  • Step 1Web shell。
  • Step 2状态模型。
  • Step 3gmoccapy UI 组件。
  • Step 4Three.js 五轴预览。
  • Step 5profile 和 panel schema。
  • Step 6LinuxCNC adapter。
  • Step 7RTCP/kinematics frame。
  • Step 8测试和验收。
  • Step 9LinuxCNC TP queue timing runtime。
  • Step 10Native task/HAL readiness artifact。
  • Step 11LinuxCNC source program case coverage。

这个文件的特点是它同时保存“原计划”和“当前实现状态”。例如它会写明某些路径已经实现、某些 runtime 已经 ready、哪些 fallback 只能作为 UI 安全路径,不能作为 LinuxCNC proof。

维护规则:

  • 新增 runtime 或 UI gate 时,应同步更新此文件的对应 Step。
  • 如果只是记录某批开发结果,也要同时在 traceability-matrix.md 中登记。

3.4 native-task-hal-sync-implementation-steps.md

角色LinuxCNC Task/Motion/HAL 同步 runtime 的专项实施书。

它围绕两个 blocker 展开:

nativeTaskReady=false
nativeHalSyncReady=false

文档目标不是把浏览器变成真实机床控制器,而是建立一个 LinuxCNC 源码拥有语义的 task/HAL 同步仿真 runtime使 Web UI 能按 LinuxCNC task、motion、HAL 的顺序运行程序、执行 MDI/JOG、同步 HAL pin。

主要内容:

  • LinuxCNC 源程序参考清单:task.hhemctask.ccmotion.ccontrol.chal_lib.c 等。
  • 推荐架构Web UI -> Worker -> linuxcnc_task_hal.wasm -> task loop -> canonical queue -> motion command queue -> deterministic HAL scheduler -> status snapshot。
  • textbak 和已有 virtual HAL 成果的可复用点。
  • 阶段 0 到阶段 8source manifest、native probe、HAL runtime、motion sync、task runtime、machine-file session、SWITCHKINS、Worker/store 接线、Full boundary 提升。
  • C/C++ API 和 WASM C ABI 设计。
  • Node、Browser、WASM、Native optional proof 的验收矩阵。

边界重点:

  • nativeTaskReady=truenativeHalSyncReady=true 只允许在 Web simulation boundary 内成立。
  • hardwareDrive=falsehostRealtimeKernel=falsehostExternalUserMProcessReady=falsehostToolDbProcessReady=falsearbitraryUserMExecution=false 必须继续显式显示;externalUserMProcessReady=truetoolDbProcessReady=true 只表示 web_simulation_only

3.5 development-continuation.md

角色:开发接续和最新状态基线。

这个文件是“下一轮继续干活时先看这里”的文档。它保留了 M1-M17 的历史记录,并在后半部分以“最新接续基线”重写当前状态。

重点章节:

  • 当前完成情况UI shell、profile、kinematics WASM、interpreter WASM、TP queue timing、machine-file staging、task/motion/HAL Web simulation boundary、Three.js、source program coverage、OPFS 降级等。
  • Three.js 当前状态:明确 Three.js 只消费 LinuxCNC runtime 输出,不解析 G-code不生成 CNC 运动语义。
  • M18-M23native task/HAL audit、真实 LinuxCNC 源程序案例覆盖、Three.js 显示质量、OPFS 降级、Host/native 边界可见性、受控 tool DB/user-M Web 仿真。
  • 每轮必须执行的回归命令。
  • 禁止事项。

注意事项:

  • 由于它是长期接续文档,章节编号有历史遗留和不连续现象。判断当前工作时应优先看“最新接续基线”。
  • 它不等同于追溯证据,追溯证据应看 traceability-matrix.md

3.6 traceability-matrix.md

角色:实现追溯和验收账本。

它把每个功能回答成五列:

功能 -> Web 实现位置 -> LinuxCNC 参考 -> 边界分类 -> 验证方式

它覆盖:

  • gmoccapy shell、DRO、右侧按钮、底部控制、G-code 当前行。
  • 上电、急停、复位、模式、JOG、MDI、RUN/PAUSE/RESUME/STOP。
  • LinuxCNC 5 轴源程序 staging 和真实程序案例覆盖。
  • interpreter WASM、TP WASM、Three.js 预览和执行轨迹。
  • xyzac-trtxyzbc-trtgmoccapy-xyzab profile。
  • PyVCP/HAL panel schema。
  • Full execution boundary audit。
  • Native task/HAL readiness artifact。
  • OPFS/session fallback。
  • tool DB Web 仿真和受控 user-M Web 仿真。

后半部分按批次记录 M0 到 M23 的开发追溯,包括:

  • Files changed。
  • Feature。
  • LinuxCNC references。
  • Boundary。
  • Tests。
  • Result。
  • Remaining risk。
  • Next。

使用场景:

  • 验收时查“某个 UI 功能来自哪个 LinuxCNC 文件”。
  • 修改代码后查“应该补哪条追溯记录”。
  • 发现文档声称过高时,用边界分类纠偏。

3.7 external-user-m-tool-db-simulation-plan.md

角色:红框 external user-M/tool DB process 的专项设计与实施边界文档。

它说明:

  • 为什么该能力不能作为任意 host 进程执行;
  • tool DB Web/WASM 仿真如何读取 staged tool.tbl、保存到 OPFS/memory fallback并接入 Tn/M6/G43/M61
  • 受控 user-M 仿真如何只允许白名单 M128/M129/M428/M429/M430
  • UI 和 full boundary 如何显示 toolDbProcessReady=true for web_simulation_onlyexternalUserMProcessReady=true for web_simulation_only
  • host tool DB process、host external user-M process、任意系统脚本执行仍为 false。

3.8 linuxcnc-python-gui-reference.md

角色LinuxCNC Python GUI 到 Web 的转换指南。

它逐项说明:

  • AXIS菜单、工具栏、Manual/MDI、Preview、DRO、G-code 当前行、高亮和状态栏。
  • vismach机床几何树、TranslateRotateHalTranslateHalRotate、工作台/转台/主轴/刀具层级。
  • PyVCPSWITCHKINSIDENTITYTCP:XYZACTCP:XYZBCUSERK、joint 数值和 HAL pin 绑定。
  • gmoccapy大按钮、jog increment、override、右侧嵌入面板、多轴状态。
  • QtVCP/QtDragon现代 CNC 操作屏、状态区、工具区、探测区、大屏布局。

关键边界:

Python GUI 是界面和结构参考,不是浏览器 runtime 依赖。

不直接移植:

  • Tkinter 主循环。
  • rs274.OpenGLTk
  • PyQt/QTVCP native widget。
  • GTK/Glade native UI。
  • native hal.component() 进程。
  • LinuxCNC GUI 与 task/motion 的 native IPC。
  • Python remap runtime。

3.9 linuxcnc-gui-reference-gallery.md

角色:界面截图参考图册。

它把 LinuxCNC 源码树自带界面截图整理成设计依据:

  • qtvismach_5axis_gantry.png:五轴机床模型和 3D 视图优先参考。
  • gmoccapy_5_axis.png:本项目首选操作员界面风格。
  • axis.png:经典 LinuxCNC 操作布局参考。
  • axis-pyvcp.png:右侧 PyVCP 面板和 SWITCHKINS 控件参考。
  • qtdragon.pngqtdragon_hd.png:现代大屏/触控界面参考。
  • vismach.pngqtvismach.pngPython/QtVismach 机床仿真参考。

当前推荐组合:

gmoccapy 5 Axis + QtVismach 5 Axis Gantry + PyVCP SWITCHKINS

3.10 linuxcnc-parity-matrix.md

角色:当前对标功能矩阵。

它记录 Web-RTCP 五轴仿真界面当前对标的 LinuxCNC 程序、配置文件和功能边界。运行时状态对象为 linuxCncParityMatrixgmoccapy diagnostics 会显示摘要Node smoke 通过 tests/node/verify_linuxcnc_parity_matrix.mjs 校验。

主要内容:

  • 对标的 LinuxCNC 配置:xyzac-trt.inixyzbc-trt.ini
  • 对标的 PyVCP/POSTGUI/HALxyzac-trt.xmlxyzbc-trt.xmlswitchkins_postgui.hal
  • 对标的 remap428remap.ngc429remap.ngc430remap.ngc
  • 对标的真实五轴 G-codeboat-xyzac.ngcboat-xyzbc.ngcimpeller-7bl-xyzac.ngcxyzac_switchkins*.ngcxyzbc_switchkins.ngc
  • 已承接功能右侧纵向入口、模式互锁、颜色规则、项目目录、INI 对标、程序验证、实时轴值、预览路径、gmoccapy HAL 语义、task/HAL 边界。

边界结论:

semanticBoundary=linuxcnc_source_function_parity_matrix_for_browser_simulation_not_hardware_control

3.11 gmoccapy-xyzab-reference.md

角色gmoccapy XYZAB native 示例到 Web 的参考边界。

它分析 LinuxCNC gmoccapy_XYZAB.ini

  • native 配置:DISPLAY=gmoccapyTASK=milltaskEMCMOT=motmodCOORDINATES=X Y Z A BKINEMATICS=trivkins coordinates=xyzab
  • native 启动顺序:解析 INI、启动 linuxcncsvr、启动 HAL/RTAPI、加载 milltask、加载 halui、执行 HALFILE、启动 gmoccapy、执行 POSTGUI_HALFILE。
  • native 通信模型gmoccapy -> linuxcnc.command() -> NML -> milltaskstatus/error channelHAL shared memoryHALUIREMAP。
  • HAL 拓扑joint command/feedback loop、spindle speed feedback、simulated home、gmoccapy postgui pin。
  • G-code gateRESET、POWER、HOME、mode、interpreter idle。
  • 按钮图标边界:图标资产只证明 UI 来源,按钮正确性仍依赖 Web store、task policy、runtime state 和 browser evidence。

重要说明:

gmoccapy_XYZAB 是 trivkins simulation不是 TCP/RTCP proof。

4. Word 操作手册说明

4.1 Web-RTCP五轴数控系统仿真界面操作手册.docx

角色:基础操作手册旧版。

正文内容包括:

  • 系统定位与安全边界。
  • 界面区域说明。
  • 标准开机、回零和模式切换流程。
  • AUTO 自动运行流程。
  • MANUAL 手动点动流程。
  • MDI 命令流程。
  • RTCP、IDENTITY 与 TCP 切换。
  • 倍率、主轴、冷却和 HAL 输入。
  • 程序来源、会话保存与恢复。
  • 诊断信息和验收检查表。
  • 常见问题处理。
  • 关键按钮速查。

适用场景:

  • 给第一次使用界面的人看。
  • 排查 AUTO/MANUAL 颜色、POWER、Home、Run、MDI、Save Session 等基础问题。

4.2 Web-RTCP五轴数控系统仿真界面操作手册新版.docx

角色:当前推荐操作手册。

新版更强调“对标 LinuxCNC”

  • 对标范围gmoccapy_5_axis、xyzac-trtxyzbc-trt、INI/HAL/tool table/remap 文件结构。
  • 右侧纵向按钮区E-STOP、POWER、RESET、AUTO、MANUAL、JOG、MDI、IDENTITY、TCP 的 active/allowed/status/operatorMessage/colorRule。
  • 标准流程RESET -> POWER -> MANUAL -> HOME -> AUTO -> 选择 LinuxCNC 5-axis source -> TCP 或 M428 -> RUN。
  • 刀具预览路径:由 LinuxCNC interpreter canonical motion、TP planner 或 task/HAL runtime 生成Three.js 只显示结果。
  • G-code 实时执行与轴值RUN、STEP、PAUSE/RESUME、JOG、MDI 的数据来源。
  • LinuxCNC 真实五轴程序来源:xyzac_switchkins.ngcxyzbc_switchkins.ngcimpeller-7bl-xyzac.ngcboat-xyzac.ngcboat-xyzbc.ngcxyzac_switchkins_test_1/2/3.ngc
  • 项目目录:machines/<profile>,保存 INI、HAL/XML/TBL、remap_subs、demos。
  • 诊断、倍率、主轴与冷却。
  • 验证记录gmoccapy sidebar、machine-file staging、real LinuxCNC 5axis program cases、XYZAB gates、run feedback loop、build。

适用场景:

  • 交付、验收、演示时优先使用。
  • 需要证明程序来源、INI 对标、项目目录、真实五轴程序边界时使用。

5. manual-assets 截图资产说明

文件 图片尺寸 作用
manual-assets/01-main-overview.png 1440 x 1000 主界面总览展示预览区、DRO、G-code、右侧状态入口、底部控制栏。
manual-assets/02-power-home-manual.png 1440 x 1000 POWER 和 HOME 后的手动状态用于说明上电、回零、MANUAL/AUTO 可用性。
manual-assets/03-right-sidebar-manual.png 108 x 958 手动状态下右侧纵向按钮局部图,用于说明 MANUAL/JOG/MDI/AUTO/TCP 入口状态。
manual-assets/04-auto-active.png 1440 x 1000 AUTO 激活后的整屏状态用于说明自动模式、G-code 区和运行准备。
manual-assets/05-right-sidebar-auto.png 108 x 958 AUTO 激活后的右侧按钮局部图,用于说明 AUTO 绿色、MANUAL 灰色等颜色规则。
manual-assets/06-run-program.png 1440 x 1000 程序运行状态截图,用于说明 G-code 当前行、DRO、runtime feedback、刀具路径预览。
manual-assets/07-manual-jog.png 1440 x 1000 MANUAL/JOG 点动后的状态,用于说明 DRO 和轴值同步。
manual-assets/08-mdi-command.png 1440 x 1000 MDI 命令输入状态,用于说明 MDI 输入框和执行入口。
manual-assets/09-mdi-executed.png 1440 x 1000 MDI 执行后的状态,用于说明坐标、程序来源和 MDI 历史同步。
manual-assets/10-overrides-and-hal.png 1440 x 1000 倍率、HAL 输入、主轴、冷却截图,用于说明 Rapid/Feed/Spindle/Coolant 控件。
manual-assets/11-session-diagnostics.png 1440 x 1000 会话和诊断信息截图,用于说明 Save/Restore、OPFS/memory fallback、Task/HAL、Full boundary 等诊断。

维护建议:

  • 更新 Word 手册时,先用同名截图替换 manual-assets,再重新嵌入手册。
  • 如果 UI 布局或按钮状态改变,需要同步更新对应截图和手册说明。
  • 截图文件本身是视觉证据,不是 runtime proofruntime proof 仍来自 Node/browser smoke、readiness artifact 和 traceability matrix。

6. 临时锁文件说明

文件:

.~lock.Web-RTCP五轴数控系统仿真界面操作手册.docx#

作用:

  • 这是 LibreOffice 打开 Word 文档时生成的锁文件。
  • 内容包含用户、主机、打开时间和 LibreOffice 配置路径。
  • 它不描述项目功能、不参与构建、不参与测试、不应作为文档依据。

处理建议:

  • 如果确认没有 LibreOffice 正在编辑对应文档,可以删除。
  • 如果文档仍在打开,保留锁文件,避免并发编辑冲突。
  • 提交代码或整理文档资产时,建议不要把该文件纳入正式版本。

7. 文档分层关系图

高清 PNG文档分层关系图

flowchart TD
  A[docs 目录] --> B[方案层]
  A --> C[实施层]
  A --> D[追溯与对标层]
  A --> E[参考层]
  A --> F[操作手册层]
  A --> G[截图资产层]

  B --> B1[implementation-plan.md]
  B1 --> B2[technical-roadmap.md]

  C --> C1[program-implementation-guide.md]
  C --> C2[native-task-hal-sync-implementation-steps.md]
  B2 --> C1
  C2 --> C1

  D --> D1[development-continuation.md]
  D --> D2[traceability-matrix.md]
  D --> D3[linuxcnc-parity-matrix.md]
  C1 --> D1
  D1 --> D2
  D3 --> D2

  E --> E1[linuxcnc-python-gui-reference.md]
  E --> E2[linuxcnc-gui-reference-gallery.md]
  E --> E3[gmoccapy-xyzab-reference.md]
  E1 --> B1
  E2 --> B2
  E3 --> D2
  E3 --> D3

  F --> F1[操作手册旧版 docx]
  F --> F2[操作手册新版 docx]
  G --> G1[manual-assets/*.png]
  G1 --> F1
  G1 --> F2

  D2 --> F2
  D3 --> F2

8. LinuxCNC 来源到 Web 仿真的关联流程图

高清 PNGLinuxCNC 来源到 Web 仿真的关联流程图

flowchart LR
  L1[LinuxCNC INI/HAL/TBL/remap] --> P[profiles 与 machine-file staging]
  L2[LinuxCNC 5轴 G-code demos] --> P
  L3[LinuxCNC kinematics C 源码] --> K[kinematics WASM]
  L4[LinuxCNC interpreter/TP 源码] --> I[interpreter WASM + TP queue timing]
  L5[LinuxCNC task/motion/HAL 源码] --> T[task/motion/HAL WASM simulation runtime]
  L6[AXIS/vismach/PyVCP/gmoccapy/QtVCP GUI] --> U[Web UI + panel schema + Three.js scene]

  P --> R[Web runtime/session]
  K --> R
  I --> R
  T --> R
  R --> S[store/state snapshot]
  S --> U
  U --> O[DRO/G-code/Three.js/diagnostics]

  O --> M[操作手册截图与 manual-assets]
  R --> V[Node/browser/WASM smoke 与 readiness artifact]
  V --> X[traceability-matrix.md]
  X --> D[development-continuation.md]

  T -. 明确不包含 .-> H[真实硬件驱动]
  T -. 明确不包含 .-> N[host realtime kernel]
  T -. 明确不包含 .-> E[external user-M/tool DB process]

9. 操作流程关联图

高清 PNG操作流程关联图

flowchart TD
  S0[打开 Web 仿真界面] --> S1{E-STOP 是否激活}
  S1 -- 是 --> S2[RESET]
  S1 -- 否 --> S3[POWER]
  S2 --> S3
  S3 --> S4[HOME]
  S4 --> S5[选择模式]

  S5 --> M1[MANUAL]
  M1 --> M2[JOG X/Y 或其他轴]
  M2 --> M3[DRO 与 runtime feedback 更新]

  S5 --> A1[AUTO]
  A1 --> A2[选择 LinuxCNC 5-axis source]
  A2 --> A3[TCP 按钮或程序内 M428]
  A3 --> A4[RUN / STEP / PAUSE / RESUME / STOP]
  A4 --> A5[G-code 当前行、DRO、Three.js 执行轨迹同步]

  S5 --> D1[MDI]
  D1 --> D2[输入 MDI 命令]
  D2 --> D3[执行命令]
  D3 --> M3

  A5 --> Q[Info Tabs 诊断]
  M3 --> Q
  Q --> Q1[Task policy]
  Q --> Q2[INI/project]
  Q --> Q3[Task/HAL]
  Q --> Q4[Full boundary]
  Q --> Q5[Host/native false 状态]
  Q --> Q6[Tool DB/User-M Web simulation]

10. Native Task/HAL 专项流程图

高清 PNGNative Task/HAL 专项流程图

flowchart TD
  N0[阶段0 源码和构建清单补齐] --> N1[阶段1 Native 对照探针]
  N1 --> N2[阶段2 HAL 内存模型和线程调度器]
  N2 --> N3[阶段3 Motion realtime 同步最小闭环]
  N3 --> N4[阶段4 Task runtime 移植]
  N4 --> N5[阶段5 TRT machine-file session 接入]
  N5 --> N6[阶段6 SWITCHKINS/M428/M429/M430 同步]
  N6 --> N7[阶段7 Browser Worker 和 store 接线]
  N7 --> N8[阶段8 Full boundary 提升]

  N8 --> W[Web simulation boundary promoted]
  W --> C1[nativeTaskReady=true 仅限 Web simulation]
  W --> C2[nativeHalSyncReady=true 仅限 Web simulation]
  W --> C3[fullLinuxCncProgramExecutionReady=true 仅限仿真边界]

  W -. 仍为 false .-> B1[hardwareDrive=false]
  W -. 仍为 false .-> B2[hostRealtimeKernel=false]
  W --> B3[externalUserMProcessReady=true web_simulation_only]
  W --> B4[toolDbProcessReady=true web_simulation_only]
  W -. host 仍为 false .-> B5[hostExternalUserMProcessReady=false]
  W -. host 仍为 false .-> B6[hostToolDbProcessReady=false]

11. 文档维护建议

更新规则:

  1. 改项目范围或边界:先改 implementation-plan.md,再改 technical-roadmap.md
  2. 改工程步骤或新增 runtime更新 program-implementation-guide.md
  3. 改 Task/HAL、motion、native probe、Worker 接线:更新 native-task-hal-sync-implementation-steps.md
  4. 完成一批开发:更新 development-continuation.mdtraceability-matrix.md
  5. 增加 LinuxCNC 对标来源:更新 linuxcnc-parity-matrix.md 或对应参考文档。
  6. 改 UI 操作或截图:更新 manual-assets 和新版 Word 操作手册。
  7. 任何 fixture、fallback、UI-only 结果都不能写成 LinuxCNC runtime proof。

最容易混淆的边界:

名称 可以说明 不能说明
Three.js 预览 显示 LinuxCNC runtime 输出的路径、TCP、刀轴、当前段。 Three.js 自己解释 G-code 或生成 CNC 运动语义。
Python GUI 参考 参考界面布局、机床模型层级、HAL 控件结构。 在浏览器中运行 Tk/PyQt/GTK/gmoccapy native runtime。
Web simulation task/HAL 在浏览器 WASM/Worker 中按仿真边界同步 task/motion/HAL 状态。 驱动真实硬件、接入 host realtime kernel、替代 LinuxCNC native realtime。
gmoccapy-xyzab 参考 gmoccapy native 启动、HAL、按钮和 gate。 证明 TRT/RTCP 五轴运动学。
OPFS memory fallback 当前页面生命周期内继续 staging/save/restore。 跨刷新持久化。

12. 快速查找

想查的问题 推荐文件
项目为什么不直接控制真实机床? implementation-plan.mdnative-task-hal-sync-implementation-steps.md
第一版 Web UI 应该长什么样? technical-roadmap.mdlinuxcnc-gui-reference-gallery.md
具体从哪个文件开始写代码? program-implementation-guide.md
下一轮工作基线是什么? development-continuation.md 的“最新接续基线”
某功能对应哪个 LinuxCNC 源文件? traceability-matrix.md
真实五轴程序有哪些? linuxcnc-parity-matrix.md、新版操作手册
Task/HAL runtime 怎么实现? native-task-hal-sync-implementation-steps.md
gmoccapy XYZAB 与 Web 的关系是什么? gmoccapy-xyzab-reference.md
操作员怎么上电、回零、运行、MDI Web-RTCP五轴数控系统仿真界面操作手册新版.docx
手册截图从哪里来? manual-assets/