同匠自研内核执行下面这些 G 代码。代码照 RS274/NGC 和 LinuxCNC。控制器不支持的代码答 error:20,这一行什么也不做。
实时命令(?、!、~ 这样的单个字节)见协议。和其他 Grbl 控制器有哪些不同,见同匠自研内核。
| 代码 | 意思 | 说明 |
|---|---|---|
G0、G1 | 快移、直线进给 | |
G2、G3 | 顺时针、逆时针圆弧(I J K 或 R),螺旋线 | 刀走真圆。R 格式的圆弧在平面里没有弦时答 error:33。 |
G4 P | 停留 P 秒 | 编多长就停多长。 |
G5、G5.1 | 三次样条、二次样条 | 不带 I、J 的 G5 顺着上一段结束时的方向接下去。 |
G7、G8 | 车床的直径方式、半径方式 | 只在车床方式($32=2)下。 |
G10 L2、G10 L20 | 设工件坐标 | |
G10 L1、G10 L10、G10 L11 | 设刀具表 | 32 把刀。控制器关电后刀具表还在。 |
G17、G18、G19 | 选平面 | |
G20、G21 | 英制、公制 | |
G28、G30 | 经中间点去存着的位置 | |
G28.1、G30.1 | 存下现在的位置 | |
G33、G33.1、G76 | 主轴同步运动、刚性攻丝、螺纹循环 | 要主轴编码器。MC-1 没有,这几个答 error:20。 |
G38.2–G38.5 | 探测 | 结果是测头触发的那一点,报成 [PRB:]。零点按这一点设,不按轴停下的地方设。 |
G40 | 关刀具半径补偿 | |
G41、G42、G41.1、G42.1 | 刀具半径补偿:D 取刀具表里的半径,.1 直接给直径 | 只在 G17 平面。进入、退出的动作照 LinuxCNC。会过切的动作被拒绝。 |
G43 Hn、G43.2 Hn | 按刀具表的刀长补偿、加上的补偿 | |
G43.1 | 动态刀长补偿 | |
G49 | 关刀长补偿 | |
G50、G51 | 关缩放、开缩放 | |
G52 | 局部坐标系 | 和 G92 共用一份偏置,照 LinuxCNC。 |
G53 | 这一行用机床坐标 | |
G54–G59、G59.1–G59.3 | 工件坐标系 | $486 能锁住 G59.1–G59.3。 |
G61 | 精确路径 | |
G61.1 | 精确停止 | 每个编程动作的终点轴都停下。 |
G64 P Q | 路径融合 | 能省时间的地方,两段直线之间的拐角变成一段离拐角不超过 P 的圆弧。Q 收下但不用。 |
G65 P1–P6 | 自带的宏 | 读写设置、刀具偏置、参数、机床状态、选测头、主轴不等转速。P7(Modbus 消息)不支持。 |
G65 P100 起、G66、G66.1、G67 | 文件宏、模态宏调用 | P 要整数。这一行不能有别的命令(error:21)。 |
G73、G81、G82、G83 | 钻孔循环、啄钻 | 每个孔只钻该钻的刀数。 |
G84、G85、G86、G89 | 攻丝、镗孔循环 | |
G80 | 取消循环 | |
G90、G91 | 绝对、增量 | |
G91.1 | 圆心用增量 | |
G92、G92.1、G92.2、G92.3 | 坐标偏置:设、清除、暂时停用、恢复 | |
G93、G94、G95 | 反时间、每分钟、每转进给 | 反时间下的圆弧按编程的时间走。 |
G96、G97 | 恒线速、恒转速 | 只在车床方式下。 |
G98、G99 | 循环退回到起始高度、退回到 R 平面 |
下面这些 G 代码不支持(error:20):
G5.2、G5.3(NURBS);G17.1–G19.1(UVW 平面);G70–G72(车削循环);G90.1。| 代码 | 意思 | 说明 |
|---|---|---|
M0、M1 | 程序暂停、选择停止 | 实时命令 0x88 打开或关掉 M1 的停止。 |
M2、M30 | 程序结束 | |
M3、M4、M5 | 主轴正转、反转、停 | |
M6 | 换刀 | $341 定 M6 做什么。M6 和运动写在同一行答 error:40。 |
M7、M8、M9 | 冷却:喷雾、浇注、关 | 在 MC-1 上,M8 开的是主轴冷却水。 |
M25 | Z 回到回零后的高度 | Centroid 的代码,有的 CAM 后处理会写。 |
M48、M49 | 开、关倍率 | |
M50–M53 | 进给倍率、主轴倍率、自适应进给、进给保持:开或关 | |
M56 | 开、关停车 | |
M60 | 换托盘暂停 | |
M61 | 不换刀,直接设当前刀号 | |
M62–M65 | 数字输出开或关,随下一段动作或马上 | 板子有辅助输出时才有。 |
M66 | 等输入 | 前面的动作走完了才开始等。 |
M70–M73 | 存下、恢复模态 | |
M98 P L、M99 | 调子程序、返回 | 在从控制器的文件系统里跑的程序中用。一行一行送来的 M98 答 error:39。主程序里的 M99 当程序结束。 |
下面这些 M 代码不支持(error:20):
M19(主轴定向);M67、M68(模拟输出,MC-1 没有);M100–M199(用户 M 代码)。( … ) 和 ;。(MSG,…) 把文字作为消息发给发送软件。(PRINT,…) 发一条消息,里面写的参数换成它们的值。(DEBUG,…) 也这样,只在 #5599 打开时发。/、行号 N,以及 % 行(带不带名字都行)。#1–#5000 归程序用,程序没设过时读出来是 0。#5001 起的参数和带名字的系统参数只能读。#<name>:读一个从没设过的名字答 error:39。EXISTS[#<name>] 告诉你它设过没有。[ ] 里的表达式,运算符和函数照 LinuxCNC。角度用度。if、elseif、else、while、do、repeat。<名字>.ngc 或 <名字>.macro。@ 是半径,^ 是角度,在 XY 平面里绕工件原点。
error:21。error:24。