G0 / G1 是什么意思
一行 G0 或 G1 写的是移动终点。固件会从当前位置沿直线走到指定的 X、Y、Z,并使用当前进给速度;没有写出的坐标保持不变(绝对模式),或表示该方向不移动(相对模式)。
多数切片软件会同时用 G1 表示打印和空走,所以不能只看指令名。还要结合 M82/M83 决定 E 是绝对值还是相对值,再比较 E 是否增加。打印机固件通常把 G0 当作快速移动别名,而 CNC 控制器往往更严格地区分 G0 快速定位和 G1 按进给速度移动。
写法和参数
G0 [X<pos>] [Y<pos>] [Z<pos>] [E<pos>] [F<rate>]G1 [X<pos>] [Y<pos>] [Z<pos>] [E<pos>] [F<rate>]X / Y / Z运动轴的目标坐标,或相对当前位置的移动距离。
E挤出机位置或送出耗材的距离,具体由 M82/M83 决定。
F进给速度。3D 打印 G-code 通常使用毫米/分钟。
实际示例
只移动,不出料
G0 X80 Y40 Z0.4 F9000移动到 X80、Y40、Z0.4,但 E 没有变化,因此查看器把它归为不出料的移动。
挤出一条 40 mm 的线
M83
G1 X120 Y40 E1.6 F1800M83 开启相对挤出;移动到 X120、Y40 的同时送出 1.6 mm 耗材。
不同固件怎样处理
| 系统 | 支持情况 | 具体差异 |
|---|---|---|
| Marlin | 常见支持 | 核心直线移动指令;G0 与 G1 可能共用相同的运动设置。 |
| Klipper | 常见支持 | 作为标准移动指令支持,也是切片软件最常输出的指令。 |
| RepRapFirmware | 常见支持 | 支持协调直线移动和挤出。 |
| CNC controllers | 需要核对方言 | G0 通常是快速定位,G1 是按进给速度移动;还要考虑机器限制和当前模式。 |
这个查看器能显示什么
可以绘制
查看器会画出 G0/G1 路径,区分正向挤出与空走,并用这些移动计算尺寸、指令速度和时间。
常见错误
- F 会一直生效,直到后面的指令再次修改。
- G90/G91 控制 X、Y、Z;M82/M83 单独控制 E。
- 绝对挤出模式下,要看 E 与上一次的差值,不能只看 E 是否为正数。
主要资料来源
本页根据下面的固件文档审阅并重新整理。真正发送指令前,仍应以目标机器所用固件和实际配置为准。