CNC加工中心G代碼最詳細的解說!

@ 2016-08-03

CNC加工中心G代碼最詳細的解說

G代碼命令

代碼組及其含義

「模態代碼」 和 「一般」 代碼

「形式代碼」 的功能在它被執行後會繼續維持,而 「一般代碼」 僅僅在收到該命令時起作用。定義移動的代碼通常是「模態代碼」,像直線、圓弧和循環代碼。反之,像原點返回代碼就叫「一般代碼」。

每一個代碼都歸屬其各自的代碼組。在「模態代碼」里,當前的代碼會被加載的同組代碼替換。

G代碼 組別

解釋

G00 01定位 (快速移動)

G01直線切削

G02順時針切圓弧

G03逆時針切圓弧

G04 00暫停

G15 02極坐標指令

G16

G17 XY面賦值

G18 XZ面賦值

G19 YZ面賦值

G28 00工具機返回原點

G30工具機返回第2和第3原點

*G40 07取消刀具直徑偏移

G41刀具直徑左偏移

G42刀具直徑右偏移

*G43 08刀具長度 + 方向偏移

*G44刀具長度 - 方向偏移

G49取消刀具長度偏移

G50/G51 14

比例縮放

G68/G69坐標系選擇

*G53工具機坐標系選擇

G54工件坐標系1選擇

G55工件坐標系2選擇

G56工件坐標系3選擇

G57工件坐標系4選擇

G58工件坐標系5選擇

G59工件坐標系6選擇

G73 09

高速深孔鑽削循環

G74左螺旋切削循環

G76精鏜孔循環

*G80取消固定循環

G81中心鑽循環

G82反鏜孔循環

G83深孔鑽削循環

G84右螺旋切削循環

G85鏜孔循環

G86鏜孔循環

G87反向鏜孔循環

G88鏜孔循環

G89鏜孔循環

*G90 03使用絕對值命令

G91使用增量值命令

G92 00設置工件坐標系

*G98 10返回點平面

*G99返回點平面

代碼解釋

G00 定位

1.格式

G00 X_ Y_ Z_

這個命令把刀具從當前位置移動到命令指定的位置 (在絕對坐標方式下), 或者移動到某個距離處 (在增量坐標方式下)。

2.非直線切削形式的定位

我們的定義是:採用獨立的快速移動速率來決定每一個軸的位置。刀具路徑不是直線,根據到達的順序,機器軸依次停止在命令指定的位置。

3.直線定位

刀具路徑類似直線切削(G01) 那樣,以最短的時間(不超過每一個軸快速移動速率)定位於要求的位置。

4.舉例

N10 G0 X100 Y100 Z65

G01 直線切削進程

1.格式

G01 X_ Y_ Z_F_

這個命令將刀具以直線形式按F代碼指定的速率從它的當前位置移動到命令要求的位置。對於省略的坐標軸,不執行移動操作;而只有指定軸執行直線移動。位移速率是由命令中指定的軸的速率的復合速率。

2.舉例

G01 G90 X50. F100;

G01 G91 X30. F100;

G01 G90 X50. Y30. F100;

G01 G91 X30. Y15. Z0 F100;

G01 G90 X50. Y30. Z15. F100;

G02/G03

G17/G18/G19 圓弧切削 (G02/G03, G17/G18/G19)

1.格式

圓弧在 XY 面上

G17 G02 ( G03 ) G90 ( G91 ) X_ Y_ F_;

G17 G02 ( G03 ) G90 ( G91 ) I_ J_ F_;

G17 G02 ( G03 ) G90 ( G91 ) R_ F_;

圓弧在 XZ 面上

G18 G02 ( G03 ) G90 ( G91 ) X_ Z_ F_;

G18 G02 ( G03 ) G90 ( G91 ) I_ K_ F_;

G18 G02 ( G03 ) G90 ( G91 ) R_ F_;

圓弧在 YZ 面上

G19 G02 ( G03 ) G90 ( G91 ) Y_ Z_ F_;

G19 G02 ( G03 ) G90 ( G91 ) J_ K_ F_;

G19 G02 ( G03 ) G90 ( G91 ) R_ F_;

圓弧所在的平面用G17, G18 和G19命令來指定。但是,只要已經在先前的程序塊里定義了這些命令,也能夠省略。圓弧的迴轉方向像下圖表示那樣,由 G02/G03來指定。在圓弧迴轉方向指定後,指派切削終點坐標。 G90 是指定在絕對坐標方式下使用此命令;而 G91 是在指定在增量坐標方式下使用此命令。另外,如果G90/G91已經在先前程序塊里給出過,可以省略。圓弧的終點用包含在命令施加的平面里的兩個軸的坐標值指定 ( 例如,在 XY平面里,G17用 X, Y 坐標值 ) 。 終點坐標能夠像 G00 和 G01 命令一樣地設置。圓弧中心的位置或者其半徑應當在設定圓弧終點之後設置。圓弧中心設置為從圓弧起點的相對距離,並且對應於 X,Y 和Z 軸表示為 I, J 和 K。圓弧起點坐標值減去圓弧中心對應的坐標值得到的結果對應分配給 I、J、K。

2.舉例

圓弧起點的 X 坐標值 ------------ 30.

圓弧中心的 X 坐標值 ------------ 10.

因此,「I」 就是 20. (10 - 30 = 20)

圓弧起點的 Y 坐標值 ------------ 10.

圓弧中心的 Y 坐標值 ------------ 5.

因此,「J」 就是 5. (10 – 5 = 5)

結果,這個情況下圓弧命令如下所列:

G17 G03 G90 X5. Y25. I-20. J-5.;

或者,

G17 G03 G91 X-25. Y15. I-20. J-5.;

因為圓弧半徑通常是已給了的,也能夠用圓弧半徑給命令賦值。

在已給的例子裡,圓弧半徑是 20.616。因此,該命令能夠如下表示:

G17 G03 G90 X5. Y25. R20.616.;

或者,

G17 G03 G91 X-25. Y15. R20.616;

注意1) 把圓弧中心設置為 「I」, 「J」 和 「K」時,必須設置為圓弧起點到圓弧中心的增量值 (增量命令).

注意2) 命令里的「I0」, 「J0」 和 「K0」 可以省略。偏移值指定要求。

G15/G16極坐標指令 G15/G16 極坐標指令

坐標值可以用極坐標(半徑和角度)輸入。

角度 的正向是所選平面的第1軸正向的逆時針轉向,而負向是順時針轉向。

半徑和角度兩者可以用絕對值指令或增量值指令(G90,G91)

用絕對值指令指定角度和半徑

N1 G17 G90 G16

指定極坐標指令和選擇XY平面,設定工件坐標系的零點作為極坐標系的原點。

N2 G81 X100.0 Y30.0 Z-20.0 R-5.0 F200.0

指定100mm的距離和30度的角度

N3 Y150.0

指定100mm的距離和150度的角度

N4 Y270.0

指定100mm的距離和270度的角度

N5 G15 G80

取消極坐標指令

用增量值指令角度,用絕對值指令極徑

N1 G17 G90 G16

指定極坐標之林和和選擇XY平面,設定 工件坐標系的零點作為極坐標的原點

N2 G81 X100.0 Y30.0 Z-20.0 R-5.0 F200.0

指定100mm的距離和30度的角度

N3 G91 Y120.0

指定100mm的距離和+120度的角度增量

N4 Y120.0

指定100mm的距離和+120度的角度增量

N5 G15 G80

取消極坐標指令

G28/G30 自動原點返回 (G28, G30)

1.格式

第一原點返回:

G28 G90 ( G91 ) X_Y_Z_;

第二、三和四原點返回:

G30 G90 ( G91 ) P2 ( P3, P4 ) X_Y_Z_;

#P2, P3, P4:選擇第二、第三和第四原點返回

(如果被省略,系統自動選擇第二原點返回 )

由X, Y 和 Z 設定的位置叫做中間點。工具機先移動到這個點,而後回歸原點。省略了中間點的軸不移動;只有在命令里指派了中間點的軸執行其原點返回命令。在執行原點返回命令時,每一個軸是獨立執行的,這就像快速移動命令(G00)一樣; 通常刀具路徑不是直線。因此,要求對每一個軸設置中間點,以免工具機在原點返回時與工件碰撞等意外發生。

2.舉例

G28 (G30) G90 X150. Y200.;

或者,

G28 (G30) G91 X100. Y150.;

注意:在所給例子裡, 去中間點的移動就像下面的快速移動命令一樣。

G00 G90 X150. Y200.;

或者

G00 G91 X100. Y150.;

如果中介點與當前的刀具位置一致(例如,發出的命令是 - G28 G91 X0 Y0 Z0;),工具機就從其當前位置返回原點。如果是在單程序塊方式下運行,工具機就會停在中間點;當中間點與當前位置一致,它也會暫時停在中間點(即,當前位置)。

G40/G41/G42 刀具直徑偏置功能(G40/G41/G42)

1.格式

G41 X_ Y_;

G42 X_ Y_;

當處理工件 (「A」) 時,就像下圖所示,刀具路徑 (「B」) 是基本路徑,與工件 (「A」)的距離至少為該刀具直徑的一半。此處,路徑 「B」 叫做由 A 經 R 補償的路徑。因此,刀具直徑偏置功能自動地由編程給出的路徑 A以及由分開設置的刀具偏置值,計算出補償了的路徑B。就是說,用戶能夠根據工件形狀編制加工程序,同時不必考慮刀具直徑。 因此,在真正切削之前把刀具直徑指派為刀具偏置值;用戶能夠獲得精確的切削結果,就是因為系統本身計算了精確的補償了的路徑。

在編程時用戶只要插入偏置向量的方向 (舉例說, G41:左側, G42: 右側)和偏置內存地址 (例如, D2: 在「D」 後面是從 01 到 32的兩位數字)。所以用戶只要輸入偏移內存號碼 D (根據 MDI),只不過是由精確計算刀具直徑得出的半徑。

2.偏置功能

G40:取消刀具直徑偏置

G41:偏置在刀具行進方向的左側

G42:偏置在刀具行進方向的右側

G43/G44/G49 刀具長度偏置(G43/G44/G49)

1.格式

G43 Z_ H_;

G44 Z_ H_;

G49 Z_;

2.偏置功能

首先用一把銑刀作為基準刀,並且利用工件坐標系的 Z 軸,把它定位在工件表面上,其位置設置為 Z0。 (? 見 G92:坐標系設置)

請記住,如果程序所用的刀具較短,那麼在加工時刀具不可能接觸到工件,即便工具機移動到位置Z0。反之,如果刀具比基準刀具長,有可能引起與工件碰撞損壞工具機。

為了防止出現這種情況,把每一把刀具與基準刀具的相對長度差輸入到刀具偏置內存,並且在程序里讓 NC 工具機執行刀具長度偏置功能。

G43:把指定的刀具偏置值加到命令的 Z 坐標值上。

G44:把指定的刀具偏置值從命令的 Z 坐標值上減去。

G49:取消刀具偏置值。

在設置偏置的長度時,使用正/負號。如果改變了 (+/-) 符號,G43 和 G44 在執行時會反向操作。因此,該命令有各種不同的表達方式。舉例說:

首先,遵循下列步驟度量刀具長度。

1.把工件放在工作檯面上。

2.調整基準刀具軸線,使它接近工件表面上。

3.更換上要度量的刀具;把該刀具的前端調整到工件表面上。

4.此時 Z 軸的相對坐標系的坐標作為刀具偏置值輸入內存。

通過這麼操作,如果刀具短於基準刀具時偏置值被設置為負值;如果長於基準刀具則為正值。因此,在編程時僅有 G43 命令允許您做刀具長度偏置。

3.舉例

G00 ZO;

G00 G43 Z0 H01;

G00 G43 Z0 H03;

或者

G00 G44 Z0 H02;

或者

G00 G44 Z0 H02;

G43, G44或 G49 命令一旦被發出,它們的功效會保持著,因為它們是 「模態命令」。因此, G43 或 G44 命令在程序里緊跟在刀具更換之後一旦被發出;那麼 G49 命令可能在該刀具作業結束,更換刀具之前發出。

注意1) 在用 G43 (G44) H 或者用 G 49 命令的指派來省略 Z 軸移動命令時,, 偏置操作就會像G00 G91 Z0 命令指派的那樣執行。也就是說,用戶應當時常小心謹慎,因為它就像有刀具長度偏置值那樣移動。

注意2) 用戶除了能夠用 G49 命令來取消刀具長度補償,還能夠用偏置號碼 H0 的設置(G43/G44 H0) 來獲得同樣效果。

注意3) 若在刀具長度補償期間修改偏置號碼,先前設置的偏置值會被新近賦予的偏置值替換。

標系就被取消。以上命令也能夠用於取消局部坐標系。

注意(1) 當用戶執行手動原點返回時,局部坐標系執行原點返回的軸的原點與工件坐標系就等同了。

也就是說,這個操作與 [G52a0;] 命令一樣 (a: 是執行原點返回進程的那個軸)。

注意(2) 即便已經設置了局部坐標,工件坐標系或者工具機坐標系不會被改變。

注意(3) 工件坐標系是用 G92 命令設置的。如果各個坐標值未設置, 局部坐標系裡未給坐標值的軸將被設置成先前各軸一樣的值。

注意(4) 在刀具直徑偏置方式下,用 G52 命令來暫時取消該偏置功能。

注意(5) 當移動命令緊跟在 G52 程序塊功能之後發出時,通常必須採用絕對命令。

G53 選擇工具機坐標系 (G53)

1.格式

( G90 ) G53 X_ Y_ Z_;

2.功能

刀具根據這個命令執行快速移動到工具機坐標系裡的 X_Y_Z 位置。由於 G53 是 「一般」 G 代碼命令,僅僅在程序塊里有 G53 命令的地方起作用。

此外,它在絕對命令 (G90) 里有效,在增量命令里 (G91) 無效。為了把刀具移動到工具機固有的位置,像換刀位置,程序應當用 G53 命令在工具機坐標系裡開發。

注意(1) 刀具直徑偏置、刀具長度偏置和刀具位置偏置應當在它的 G53 命令指派之前提前取消。否則,工具機將依照指派的偏置值移動。

注意(2) 在執行G53指令之前,必須手動或者用G28 命令讓工具機返回原點。這是因為工具機坐標系必須在G53命令發出之前設定。

G54-G59 工件坐標系選擇(G54-G59)

1.格式

G54 X_ Y_ Z_;

2.功能

通過使用 G54 – G59 命令,來將工具機坐標系的一個任意點 (工件原點偏移值) 賦予 1221 – 1226 的參數,並設置工件坐標系(1-6)。該參數與 G 代碼要相對應如下:

工件坐標系 1 (G54) ---工件原點返回偏移值---參數 1221

工件坐標系 2 (G55) ---工件原點返回偏移值---參數 1222

工件坐標系 3 (G56) ---工件原點返回偏移值---參數 1223

工件坐標系 4 (G57) ---工件原點返回偏移值---參數 1224

工件坐標系 5 (G58) ---工件原點返回偏移值---參數 1225

工件坐標系 6 (G59) ---工件原點返回偏移值---參數 1226

在接通電源和完成了原點返回後,系統自動選擇工件坐標系 1 (G54) 。在有 「模態」命令對這些坐標做出改變之前,它們將保持其有效性。

除了這些設置步驟外,系統中還有一參數可立刻變更G54~G59 的參數。工件外部的原點偏置值能夠用 1220 號參數來傳遞。

G73 高速深孔鑽削循環(G73)

1.格式

G73 X__Y__Z__R__Q__P__F__K__

X_ Y:孔位數據

Z_:從R點到孔底的距離

R_:從初始位置到R點的距離

Q_:每次切削進給的切削深度

P_:暫停時間

F_:切削進給速度

K_:重複次數

2.功能

進給 孔底 快速退刀。

G74 左螺旋切削循環(G74)

1.格式

G74 X__Y__Z__R__Q__P__F__K__

X_ Y:孔位數據

Z_:從R點到孔底的距離

R_:從初始位置到R點的距離

Q_:每次切削進給的切削深度

P_:暫停時間

F_:切削進給速度

K_:重複次數

2.功能

進給 孔底 主軸暫停 正轉 快速退刀。

G76 精鏜孔循環(G76)

1.格式

G76 X__Y__Z__R__Q__P__F__K__

X_ Y:孔位數據

Z_:從R點到孔底的距離

R_:從初始位置到R點的距離

Q_:每次切削進給的切削深度

P_:暫停時間

F_:切削進給速度

K_:重複次數

2.功能

進給 孔底 主軸定位停止 快速退刀。

G 80 取消固定循環進程 (G80)

1.格式

G80;

2.功能

這個命令取消固定循環方式,工具機回到執行正常操作狀態。孔的加工數據,包括 R 點, Z 點等等,都被取消;但是移動速率命令會繼續有效。

(注) 要取消固定循環方式,用戶除了發出G80 命令之外,還能夠用 G 代碼01 組 (G00, G01, G02, G03 等等) 中的任意一個命令。

G 81 定點鑽孔循環(G81)

1.格式

G81 X_Y_Z_R_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

F_:切削進給速度

K_:重複次數 (如果需要的話)

2.功能

G81命令可用於一般的孔加工。

G 82 鑽孔循環(G82)

1.格式

G82 X_Y_Z_R_P_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

P_:在孔底的暫停時間(單位:毫秒)

F_:切削進給速度

K_:重複次數 (如果需要的話)

2.功能

G82鑽孔循環,反鏜孔循環

G83 深孔鑽削循環(G83)

1.格式

G83 X_Y_Z_R_Q_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

Q_:每次切削進給的切削深度

F_:切削進給速度

K_:重複次數

2.功能

G83中間進給 孔底 快速退刀。

G84 攻絲循環(G84)

1.格式

G84 X_Y_Z_R_P_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

P_:暫停時間

F_:切削進給速度

K_:重複次數

2.功能

主軸順時針旋轉執行攻絲,當到達孔底時,為了回退,主軸以相反方向旋轉,這個過程生成螺紋。

在攻絲期間進給倍率被忽略,進給暫停不停止工具機,直到返回動作完成。

在指定G84之前,用輔助功能使主軸旋轉。

當G84指令和M代碼在同一個程序段中指定時,在執行第一個定位動作的同時,執行到R點的同時加偏置。

G84進給 孔底 主軸反轉 快速退刀。

G85 鏜孔循環(G85)

1.格式

G85 X_Y_Z_R_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

F_:切削進給速度

K_:重複次數

2.功能

G85中間進給 孔底 快速退刀。

G86 鏜孔循環(G86)

1.格式

G86 X_Y_Z_R_F_L_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

F_:切削進給速度

K_:重複次數

2.功能

G86進給 孔底 主軸停止 快速退刀。

例:

N005 G80 G90 G0 X0 Y0 M06 T1;換?20鏜刀

N010 G55;調用G55工件坐標系

N020 M03 S1000

N030 G43 H1 Z50;調用長度補償

N040 G86 Z-30 R1 F200;鏜孔循環

N050 G80 G0 Z50;取消固定循環???

N060 M05

N070 M30

G87 反鏜孔循環(G87)

1.格式

G87 X_Y_Z_R_Q_P_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

Q_:刀具偏移量

P_:暫停時間

F_:切削進給速度

K_:重複次數

2.功能

G87進給 孔底 主軸正轉 快速退刀。

例:

N005 G80 G90 G0 X0 Y0 M06 T1;換20鏜刀

N010 G55;調用G55工件坐標系

N020 M03 S1000

N030 G43 H1 Z50;調用長度補償

N040 G87 Z-30 R1 Q2 P2000 F200;反鏜孔循環

N050 G80 G0 Z50;取消固定循環

N060 M05

N070 M30

G88 鏜孔循環(G88)

1.格式

G88 X_Y_Z_R_P_F_K_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

P_:孔底的暫停時間

F_:切削進給速度

K_:重複次數

2.功能

說明:沿著X和Y軸定位以後,快速移動到R點,然後,從R點到Z點執行鏜孔,當鏜孔完成後,執行暫停,然後主軸停止。刀具從孔底手動返回到R點,在R點,主軸正轉,並且執行快速移動到初始位置。

在指定G88之前,用輔助功能旋轉主軸。

當G88指令和M代碼在同一程序段中指定時,在第一個定位動作的同時執行M代碼,然後,系統處理下一個鏜孔動作。

當指定重複次數K時,只對第一個孔執行M代碼,對第二或以後的孔,不執行M代碼。對第二或以後的孔,不執行M代碼。

當在固定循環中指定刀具長度偏置(G43/G44或G49)時,在定位到R點的同時加偏置。

限制

軸切換?? 必須在切換鏜孔軸之前取消固定循環

鏜加工?? 在不包含X.Y.Z或任何其它軸的程序段中,不執行鏜加工。

P???????在執行鏜孔加工的程序段中指定P,如果在不執行鏜孔加工的程序段中指定,P不能作為模態數據被貯存。

取消????不能在同一程序段中指定01和G代碼和G88,否則G88將被取消。

刀具偏置? 在固定循環方式中,刀具偏置被忽略。

G89 鏜孔循環(G89)

1.格式

G89 X_Y_Z_R_P_F_L_;

X_ Y:孔位數據

Z_:孔底深度(絕對坐標)

R_:每次下刀點或抬刀點(絕對坐標)

P_:孔底的停刀時間

F_:切削進給速度

K_:重複次數

2.功能

G89進給 孔底 暫停 快速退刀。

G90/G91使用 絕對值命令/增量值命令 (G90/G91)

此命令設定指令中的 X, Y 和 Z 坐標是絕對值還是相對值,不論它們原來是絕對命令還是增量命令。含有 G90 命令的程序塊和在它以後的程序塊都由絕對命令賦值; 而帶 G91 命令及其後的程序塊都用增量命令賦值。

G98/G99返回點平面

當刀具到達孔底後,刀具可以返回到R點平面或初始位置平面,由G98和G99指定,一般情況下,G99用於第一次鑽孔面G98用於最後鑽孔,即使在G99方式中執行鑽孔,初始位置品平面也不變。


相关文章