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 是否為正數。
主要資料來源
本頁根據下面的韌體文件審閱並重新整理。真正傳送指令前,仍應以目標機器所用韌體和實際配置為準。