完善五轴 RTCP 仿真与验证资料
This commit is contained in:
@@ -11,7 +11,9 @@
|
||||
| PyVCP/POSTGUI/HAL | `xyzac-trt.xml`、`xyzbc-trt.xml`、`switchkins_postgui.hal`、`xyzac-trt_cmds.hal` | SWITCHKINS 按钮语义、HALUI MDI 命令、`motion.switchkins-type` 映射 |
|
||||
| remap 子程序 | `remap_subs/428remap.ngc`、`429remap.ngc`、`430remap.ngc` | `M428` TCP、`M429` identity、`M430` userk 的 kinstype 切换语义 |
|
||||
| Vismach Python | `src/hal/user_comps/vismach/xyzac-trt-gui.py`、`xyzbc-trt-gui.py` | 机床预览层级、关节反馈 pin、刀补/偏置显示语义 |
|
||||
| Kinematics C 源码 | `src/emc/kinematics/xyzac-trt-kins.c`、`xyzbc-trt-kins.c`、`trtfuncs.c`、`switchkins.c` | 正逆解、TCP/identity/userk 切换、DRO/TCP frame 更新 |
|
||||
| Kinematics C 源码 | `src/emc/kinematics/xyzac-trt-kins.c`、`xyzbc-trt-kins.c`、`trtfuncs.c`、`switchkins.c` | XYZAC/XYZBC 正逆解、TCP/identity/userk 切换、DRO/TCP frame 更新;Node direct proof 覆盖 `switchkinsType=1`、A/B/C TCP 姿态和 XYZBC B 轴保留 |
|
||||
| Tool DB / task tool state | `src/emc/task/taskclass.cc`、`src/emc/tooldata/tooldata_common.cc`、`src/emc/nml_intf/emctool.h`、`src/emc/rs274ngc/interp_convert.cc`、`xyzac-trt.tbl`、`xyzbc-trt.tbl` | staged `tool.tbl` 解析、`CANON_TOOL_TABLE` 字段、非随机刀库 `idx/pocketno` 分离、spindle pocket `idx=0`、tool prepare/load/read_tool_inputs/offset、OPFS/memory fallback 保存 |
|
||||
| controlled user-M/remap | `remap_subs/428remap.ngc`、`429remap.ngc`、`430remap.ngc`、LinuxCNC millturn M128/M129 用法 | 白名单 `M128/M129/M428/M429/M430` 转换为可追溯 HAL/state 事件,不执行 host 脚本 |
|
||||
| gmoccapy TRT 示例 | `configs/sim/gmoccapy/non_trivial_kinematics/table-rotary-tilting/xyzac-trt.ini`、`postgui.hal` | gmoccapy 入口、POSTGUI 工具/主轴 HAL、TRT 示例程序来源 |
|
||||
| gmoccapy 原生界面 | `src/emc/usr_intf/gmoccapy/gmoccapy.py`、`share/gmoccapy/gmoccapy.glade`、gmoccapy 图标清单 | 操作台布局、右侧状态入口、按钮颜色/禁用/激活规则、HAL pin 语义 |
|
||||
| LinuxCNC task/NML | `src/emc/nml_intf/emc.hh`、`src/emc/task/emctaskmain.cc`、`src/emc/task/emctask.cc` | E-STOP/POWER/RESET、AUTO/MANUAL/JOG/MDI、RUN/PAUSE/RESUME/STEP/STOP 的互锁 |
|
||||
@@ -31,6 +33,10 @@
|
||||
| `demos/xyzac_switchkins_test_1.ngc` | M428/M429 多次切换验证 |
|
||||
| `demos/xyzac_switchkins_test_2.ngc` | TCP/identity 过渡验证 |
|
||||
| `demos/xyzac_switchkins_test_3.ngc` | switchkins 程序验证覆盖 |
|
||||
| `gmoccapy/.../examples/impeller-7bl-xyzac.ngc` | gmoccapy fixed TRT 默认打开程序 |
|
||||
| `gmoccapy/.../examples/boat-xyzac.ngc` | gmoccapy XYZAC TCP 船体程序 |
|
||||
| `gmoccapy/.../examples/boat-xyzbc.ngc` | gmoccapy 示例目录中的 XYZBC TCP 程序,用于 interpreter/planner source guard 覆盖 |
|
||||
| `gmoccapy/.../examples/test-xyzac.ngc`、`test-xyzbc.ngc` | gmoccapy TRT 示例 staging 完整性验证 |
|
||||
|
||||
## 3. 已承接的功能
|
||||
|
||||
@@ -46,10 +52,12 @@
|
||||
| 预览路径 | Three.js/WebGL 预览程序路径、当前刀具位置、TCP 点和刀轴方向 |
|
||||
| gmoccapy HAL 语义 | 硬按钮、jog、override、spindle、coolant、tool change、message/tool/user inputs 建模 |
|
||||
| task/HAL 边界 | 保留 native task/HAL 与硬件实时边界,不把 Web 仿真误标为真实机床控制 |
|
||||
| tool DB Web 仿真 | 读取 staged `tool.tbl`,支持刀具号/刀长/刀径/刀袋查询、编辑、保存;按 LinuxCNC 非随机刀库语义保留真实 `pocketno`,使用内部 `idx=1..n` 和 spindle pocket `idx=0`;接入 `Tn/M6/G43/M61`、HAL loopback `read_tool_inputs()` 与 #5400/#5401-#5413 工具参数快照 |
|
||||
| 受控 user-M Web 仿真 | 只允许白名单 user-M/remap 行为输出 HAL/state patch;任意未白名单 user-M 被标记为 blocked |
|
||||
|
||||
## 4. 当前边界
|
||||
|
||||
- Web 端运行的是浏览器仿真状态机和 WASM/JS runtime,不运行原生 GTK `gmoccapy.py`。
|
||||
- `gmoccapy.py`、Glade、Vismach Python 是界面/机床模型/HAL 语义参考,不是浏览器运行时。
|
||||
- 硬件驱动、实时内核、真实 HAL shared memory、外部 user M 进程和真实 tool DB 不在浏览器内提升为 ready。
|
||||
- 硬件驱动、实时内核、真实 HAL shared memory、host external user-M 进程、host tool DB process 不在浏览器内提升为 ready;`externalUserMProcessReady=true` 与 `toolDbProcessReady=true` 只代表 `web_simulation_only`。
|
||||
- `linuxCncParityMatrix` 的 `semanticBoundary` 固定为 `linuxcnc_source_function_parity_matrix_for_browser_simulation_not_hardware_control`。
|
||||
|
||||
Reference in New Issue
Block a user