2.9 KiB
2.9 KiB
LinuxCNC RTCP G-code collection
本目录收集了当前仓库 linuxcnc/ 源码树中与 RTCP/TCP 五轴运动学直接相关的 G 代码程序。
源码版本:
- LinuxCNC 子仓库:
239dcf4(git -C linuxcnc log -1 --oneline) - 原始文件根目录:
linuxcnc/ - 复制目录:
test_Rtcp/programs/ - 文件数量:32 个
.ngc - 复制方式:保留相对于
linuxcnc/的原始路径;已用cmp检查复制文件与源码文件一致
目录
programs/ 下的路径去掉了源码根目录前缀。例如:
programs/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc
对应源码:
linuxcnc/configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/boat-xyzac.ngc
完整清单见 MANIFEST.md,分析见 rtcp_analysis.md。
Web 控制面板适配
这 32 个文件现已接入 Web AXIS 控制面板的“RTCP 程序库”入口:
- 程序清单与兼容性元数据:
web/react/src/rtcp-program-manifest.json - 程序库界面:
web/react/src/RtcpProgramLibrary.tsx - 控制面板按机床配置自动分为 AC(XYZAC)和 BC(XYZBC):AC 默认显示 15 个相关文件、可直接加载 8 个主程序;BC 默认显示 9 个相关文件、可直接加载 3 个主程序。
- “全部 32 个源程序”范围保留跨机型查阅能力,但另一类机床程序不会作为当前机型可执行项。
- remap、O-code 子程序、Hexapod 支持文件及当前未移植机型的主程序可查看和下载,但不会被误当作当前机型的独立主程序执行。
- 所有可执行项仍通过统一的
PROGRAM_LOAD事务进入 LinuxCNC WASM 解释器、运动学和刀路预览,没有在 React 中增加第二套 G-code 或 RTCP 实现。
适配过程中补齐了 LinuxCNC 兼容语义:G93 模式下的 G0 快移不要求 F 值,M1 在当前“可选停止关闭”边界下可被解释器接受。11 个 AC/BC 主程序均通过 WASM 预解析测试。
运行前提
这些程序多数不是脱离配置即可运行的独立 G 代码。RTCP 由 LinuxCNC 的 kinematics 组件执行,G 代码需要匹配的 INI、HAL 和 remap 子程序:
- TRT 配置:
configs/sim/axis/vismach/5axis/table-rotary-tilting/ - 双旋转台配置:
configs/sim/axis/vismach/5axis/table-dual-rotary/ - Bridge Mill 配置:
configs/sim/axis/vismach/5axis/bridgemill/ - gmoccapy TRT 配置:
configs/sim/gmoccapy/non_trivial_kinematics/table-rotary-tilting/ - Hexapod RTCP remap 配置:
configs/sim/axis/vismach/hexapod-sim/
LinuxCNC 这一源码版本没有找到使用标准 G43.4 或 G43.5 字样的 RTCP 示例。主要实现路径是:
G-code -> M428/M429 remap 或直接加载非平凡 kinematics
-> inverse kinematics
-> joint XYZ + rotary axes
TCP 在这些示例中表示 Tool Center Point;不要与网络通信中的 TCP 混淆。