複製鏈接
請複製以下鏈接發送給好友

G代碼

鎖定
G代碼(G-code,又稱RS-274),是最為廣泛使用的數控(numerical control)編程語言,有多個版本,主要在計算機輔助製造中用於控制自動機牀。G代碼有時候也稱為G編程語言
G代碼是數控程序中的指令。一般都稱為G指令。使用G代碼可以實現快速定位、逆圓插補、順圓插補、中間點圓弧插補、半徑編程、跳轉加工。
中文名
G代碼
外文名
G-code
別    名
G指令
介    紹
數控程序中的指令
代碼功能
快速定位

G代碼G 代碼解釋器

G代碼解釋器是全軟件式數控系統的重要模塊。數控機牀通常使用G代碼來描述機牀的加工信息,如 走刀軌跡、座標的選擇、冷卻液的開啓等,將G代碼解釋為數控系統能夠識別的數據塊是G代碼解釋器的主要功能。G代碼解釋器的開放性也是設計和實現中必須要考慮的問題。
在G代碼解釋器中,對G代碼進行關鍵字分解是骨架,,對代碼進行分組則是進行語法檢查的基 礎。王心光等人在虛擬數控加工仿真中使用Microsoft的GRETA正則類庫,解決了G代碼關鍵詞分解問題,這種方法建立在 Microsoft提供的工具基礎上,同時使用C++語言;付振山使用VC++ 6.0 開發, 構造了有窮自動機來描述在輸入字符串中關鍵字識別模式G代碼解釋器是全軟件式數控系統的重要模塊。數控機牀通常使用G代碼來描述機牀的加工信息,如走刀軌跡、坐 標系的選擇、冷卻液的開啓等,將G代碼解釋為數控系統能夠識別的數據塊是G代碼解釋器的主要功能。G代碼解釋器的開放性也是設計和實現中必須要考慮的問題。在G代碼解釋器中,對G 代碼進行關鍵字分解是骨架,對代碼進行分組則是進行語法檢查的基礎 [1] 

G代碼G 代碼解釋器的總體結構

由圖 1 可以看出, G代碼 解釋器 讀取 G 代碼, 將 其解釋 成G 中間代碼, 然後經過插補、位置控制處理, 最後由輸出模塊調用驅動程序輸出到硬件( 一 般為 PCI 或 ISA 卡) 。G 代碼可以如圖 1 的方式運行, 也就是説 G 代碼的解釋, 包括語法檢查都在加工過程中 進行, 這種 方式比 較費時, 不利 於加工過程。本文設計的 G 代碼解 釋器採用了另外一 種處理 方式, 解釋器有兩種運行狀態: ①讀取 G 代碼。進 行 G 代碼 的解釋, 包括詞法檢查、語法檢查等; 將其解釋成數控系統能識別的數據塊, 即中間代碼; 將中 間代碼 以文件 的方式 進行保 存。②在加工的過程中, 讀取中間代碼文件並運行之 [2] 
圖1 G 代碼解釋器在數控系統中的作用 圖1 G 代碼解釋器在數控系統中的作用

G代碼G 代碼的分組

分析, G 代碼可以分為 10 組, 同組中的 代碼只能在 一行代碼中出現一次。G代碼、M代碼分組如圖 1、圖3所示。
圖2 圖2
圖3 圖3

G代碼代碼功能

代碼名稱-功能簡述
G00------快速定位
G01------直線插補
G02------順時針方向圓弧插補
G03------逆時針方向圓弧插補
G04------定時暫停
G05------通過中間點圓弧插補
G06------拋物線插補
G07------Z 樣條曲線插補
G08------進給加速
G09------進給減速
G10------數據設置
G16------極座標編程
G17------加工XY平面
G18------加工XZ平面
G19------加工YZ平面
G20------英制尺寸(法蘭克系統)
G21-----公制尺寸(法蘭克系統)
G22------半徑尺寸編程方式
G220-----系統操作界面上使用
G23------直徑尺寸編程方式
G230-----系統操作界面上使用
G24------子程序結束
G25------跳轉加工
G26------循環加工
G30------倍率註銷
G31------倍率定義
G32------等螺距螺紋切削,英制
G33------等螺距螺紋切削,公制
G34------增螺距螺紋切削
G35------減螺距螺紋切削
G40------刀具補償/刀具偏置註銷
G41------刀具補償——左
G42------刀具補償——右
G43------刀具偏置——正
G44------刀具偏置——負
G45------刀具偏置+/+
G46------刀具偏置+/-
G47------刀具偏置-/-
G48------刀具偏置-/+
G49------刀具偏置0/+
G50------刀具偏置0/-
G51------刀具偏置+/0
G52------刀具偏置-/0
G53------直線偏移,註銷
G54------直線偏移x
G55------直線偏移y
G56------直線偏移z
G57------直線偏移xy
G58------直線偏移xz
G59------直線偏移yz
G60------準確路徑方式(精)
G61------準確路徑方式(中)
G62------準確路徑方式(粗)
G63------攻螺紋
G68------刀具偏置,內角
G69------刀具偏置,外角
G70------英制尺寸 寸 (這個是西門子的,法蘭克的是G20)
G71------公制尺寸 毫米
G74------回參考點(機牀零點)
G75------返回編程座標零點
G76------車螺紋複合循環
G80------固定循環註銷
G81------外圓固定循環
G331-----螺紋固定循環
G90------絕對尺寸
G91------相對尺寸
G92------預製座標
G93------時間倒數,進給率
G94------進給率,每分鐘進給
G95------進給率,每轉進給
G96------恆線速度控制
G97------取消恆線速度控制

G代碼注意事項

補充一下:
1、G00與G01
G00運動軌跡有直線和折線兩種,該指令只是用於點定位,不能用於切削加工
G01按指定進給速度以直線運動方式運動到指令指定的目標點,一般用於切削加工
2、G02與G03
G02:順時針圓弧插補 G03:逆時針圓弧插補
3、G04(延時或暫停指令)
一般用於正反轉切換、加工盲孔、階梯孔、車削切槽
4、G17、G18、G19 平面選擇指令,指定平面加工,一般用於銑牀和加工中心
G17:X-Y平面,可省略,也可以是與X-Y平面相平行的平面
G18:X-Z平面或與之平行的平面,數控車牀中只有X-Z平面,不用專門指定
G19:Y-Z平面或與之平行的平面
5、G27、G28、G29 參考點指令
G27:返回參考點,檢查、確認參考點位置
G28:自動返回參考點(經過中間點)
G29:從參考點返回,與G28配合使用
6、G40、G41、G42 半徑補償
G40:取消刀具半徑補償
7、G43、G44、G49 長度補償
G43:長度正補償 G44:長度負補償 G49:取消刀具長度補償
8、G32、G92、G76
G32:螺紋切削 G92:螺紋切削固定循環 G76:螺紋切削複合循環
9、車削加工:G70、G71、72、G73
G71:軸向粗車複合循環指令 G70:精加工複合循環 G72:端面車削,徑向粗車循環 G73:仿形粗車循環
10、銑牀、加工中心
G73:高速深孔啄鑽 G83:深孔啄鑽 G81:鑽孔循環 G82:深孔鑽削循環
G74:左旋螺紋加工 G84:右旋螺紋加工 G76:精鏜孔循環 G86:鏜孔加工循環
G85:鉸孔 G80:取消循環指令
11、編程方式 G90、G91
G90:絕對座標編程 G91:增量座標編程
12、主軸設定指令
G50:主軸最高轉速的設定 G96:恆線速度控制 G97:主軸轉速控制(取消恆線速度控制指令) G99:返回到R點(中間孔) G98:返回到參考點(最後孔)
13、主軸正反轉停止指令 M03、M04、M05
M03:主軸正傳 M04:主軸反轉 M05:主軸停止
14、切削液開關 M07、M08、M09
M07:霧狀切削液開 M08:液狀切削液開 M09:切削液關
15、運動停止 M00、M01、M02、M30
M00:程序暫停 M01:計劃停止 M02:機牀復位 M30:程序結束,指針返回到開頭
16、M98:調用子程序
17、M99:返回主程序
參考資料
  • 1.    劉為志, 欒楠, 劉寶生. 基於G代碼的工業機器人的自動編程[J]. 機器人, 2002(6).
  • 2.    吉華, 李彥, 肖世廣. Linux下G代碼解釋器的設計與實現[J]. 計算機應用研究, 2006, 23(12).