新的 G 代码和 M 代码通常根据 LinuxCNC 规范执行。一些特定于驱动程序的 M 代码,例如用于 CO2 激光或 Trinamic 支持的代码,要么由我编写,要么遵循其他实现的规范。
适用于所有驱动程序和配置的代码
G5 - 三次样条
G50 - 重置比例(不是 LinuxCNC)
G51 - 缩放轴(不是 LinuxCNC)
G73 - 钻孔循环,断屑
G81 - 钻孔循环
G82 - 带暂停的钻孔循环
G83 - 啄钻循环
G98,G99 - 固定循环返回水平
车床模式下可用的代码,需要驱动程序和硬件(编码器)支持
G7 - 车床直径模式
G8 - 车床半径模式
G33 - 主轴同步运动
G76 - 螺纹循环
G95 - 进给率模式,单位每转
G96 - 恒定表面速度模式 (CSS)
G97 - 转速模式
启用工具表时可用的代码
G10 L1 - 设置工具表
G10 L10 - 设置工具表
G10 L11 - 设置工具表
G43 - 刀具长度偏置
G43.2 - 应用额外的刀具长度偏移
M6 - 换刀
M61 - 设置当前工具
如果驱动程序支持手动换刀或 ATC,则代码可用
M6 - 换刀
M61 - 设置当前工具
如果要使用手动换刀,发送方必须支持新的换刀协议。如果不是M6
,则命令应由发送者处理或删除。
如果驱动程序支持代码可用
M62-M65 - 数字输出控制
M66 - 等待输入
M67 - 模拟输出,同步
M68 - M68 模拟输出,立即
注意:谨慎使用新代码,它们没有经过广泛的测试!
注意: HAL 具有驱动程序特定 M 代码和设置处理的入口点,这使得扩展 grblHAL 变得相当容易——无需更改核心代码。
2020-09-30