G90 / G91 是什么意思

在 G90 下,X10 表示移动到坐标 X10;在 G91 下,同一个 X10 表示从当前位置再走 10 个单位。模式会持续生效,所以漏掉一次 G90 可能让后面所有移动都偏移。

3D 打印固件通常用 M82/M83 单独控制挤出机。CNC 方言还可能用 G90.1/G91.1 控制圆心模式。因此解析器要分别记录轴坐标、挤出和圆心的状态。

写法和参数

G90 ; absolute axis positioning
G91 ; relative axis positioning
No parameters

每条指令都会改变后续轴坐标的模式。

实际示例

绝对坐标下的两个终点

G90
G1 X20 Y20
G1 X40 Y20

第二个终点始终是 X40、Y20,不受第一段移动距离影响。

临时相对抬高 Z

G91
G0 Z5
G90

把 Z 抬高 5 个单位,然后立即恢复绝对模式。

不同固件怎样处理

系统支持情况具体差异
Marlin常见支持控制运动轴使用绝对或相对位置;M82/M83 可覆盖 E 轴行为。
Klipper常见支持普通打印 G-code 和宏都支持。
RepRapFirmware常见支持支持;宏中切换模式时尤其要正确保存和恢复状态。
CNC controllers常见支持标准距离模式;工作坐标和固定循环还会带来更多上下文。

这个查看器能显示什么

完整换算

查看器会跟踪 G90/G91,把后续移动统一换算成绝对毫米坐标后再绘图和测量。

常见错误

  • 宏临时切到相对模式后,要恢复调用者原来的模式。
  • 有 M82/M83 时,不能假设 G90 同时改变 E。
  • G90.1/G91.1 通常控制圆心,不是这里说的移动终点模式。

主要资料来源

本页根据下面的固件文档审阅并重新整理。真正发送指令前,仍应以目标机器所用固件和实际配置为准。