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 F1800

M83 開啟相對擠出;移動到 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 是否為正數。

主要資料來源

本頁根據下面的韌體文件審閱並重新整理。真正傳送指令前,仍應以目標機器所用韌體和實際配置為準。