1、Home All 的数值应该是:0,0,10。现在不对。另外暂停、继续执行也不完整,不能重复交替按。只能按一次 2、Step按钮功能没有实现,Spinde的Rev、Stop、Fwd不正确,还是老版本的连接。同理,严格验证其他按钮,防止类是错误发生。 web的仿真系统“/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan”的功能, 除了硬件相关的,在仿真的所有方面完全对标“/home/mes123456/cnc_wams/linuxcnc源程序”的xyzbc-trt 对标“/home/mes123456/cnc_wams/linuxcnc”的源程序 xyzbc-trt, web的仿真系统“/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan”的功能: 解除“ESTOP” “上电” Home All “Run” “暂停” 5秒 继续执行 10秒后 ,再“暂停” 5秒 继续执行 10秒。通过50毫秒截屏方式,进行验证。 /home/mes123456/cnc_wams/linuxcnc 现在使用的是明确的工具栏按钮 ID:tbtn_pause 和 btn_step。脚本已经进入运行/采样阶段,我等最终输出。 这里发现另一个实际页面问题:直接点工具栏 ESTOP 图标没有解除 ESTOP,状态仍停在 taskState=estop。这和之前验证脚本用 dispatch({type:"RESET"}) 做准备不同。我要先把真实按钮点击链路查清楚,否则暂停测试前置条件就不可靠。 对标“/home/mes123456/cnc_wams/linuxcnc源程序”的xyzbc-trt, 解决项目web的仿真系统“/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan”的问题: 点击“暂停按钮”,红色方块内部的按钮,G代码执行还是没有暂停,刀具还在运行。 通过保存G代码真实执行过程的json分析,通过对Position位置还在变化进行追踪,发现错误,并且修改。 你真实的使用界面直接操作进行测试。 我会先补上竞态防护:暂停发起后将 task/HAL 执行序号推进,确保已经在路上的状态采样不能在暂停之后覆盖 runState/axisPose/feed。这和 LinuxCNC 的 task_paused 状态语义一致。 点击暂停按钮,刀具还在运行,Position位置还在变化 通过执行过程的json,对Position位置还在变化进行追踪,发现错误,并且修改。 明确问题点了:渲染层优先用 programUiExecution.tcp 和 programRuntimeFeedback.axisPose,Vismach 也优先用 programRuntimeFeedback.axisPose 或 taskHalStatus 的 axisPose。即使 state.axisPose 冻住,只要 paused 反馈里带了新 axisPose,刀具和 Position 还会变。我会在暂停状态下把 runtimeFeedback 的 axisPose/tcp 固定为暂停瞬间的 pose,并让 Vismach 在 paused 时不用 taskHalStatus 的新位置。 目前文档里的硬对比已经覆盖 60 项,但用户要求是“完全对标”,我不会只接受旧结论。我会先跑现有证据链,若仍通过,再补强 working 文档中对“5axis/table-rotary-tilting/xyzbc-trt”的命名、范围、复验规则和执行结果,最后按修订后的规则复验。 我会按 LinuxCNC 源码里的 AXIS pause/resume 语义重新对标,而不是只看当前 Web 状态。先定位 /home/mes123456/cnc_wams/linuxcnc 中 AXIS 的 pause 相关实现,再用真实浏览器复现当前 Web 的失败点。 “Pause”仍然不好用,严格测试并且修。参考和对标: 完全对标“/home/mes123456/cnc_wams/linuxcnc源程序”的xyzbc-trt