第二讲:G代码入门 — G00/G01快速定位与直线插补、G02/G03圆弧插补、G90/G91绝对与增量编程
各位同行,咱们今天聊聊G代码里最基础、也最常用的几个指令。说实话,我刚入行那会儿,觉得G代码就是一堆字母加数字,背下来就行。后来吃了不少亏才明白——真正吃透这几个指令,你才能写出既安全又高效的加工程序。
一、G00与G01:快速定位与直线插补
G00,快速定位。说白了就是让刀具以最快速度跑到目标点。注意,是“最快速度”,不是“切削速度”。
G01,直线插补。这才是真正的切削移动。刀具会沿着直线路径,以你指定的F值(进给率)运动。
我个人的习惯是:G00只用于空行程,G01只用于切削行程。这个原则看似简单,但能帮你避开90%的撞刀风险。
来看个例子:
G90 G54 G00 X0 Y0 Z50. ; 快速移动到安全高度
G01 Z-5. F100 ; 直线下刀,进给100mm/min
G01 X100. Y50. F200 ; 直线切削到目标点
G00 Z50. ; 快速抬刀
嗯,这里要注意:G01一定要带F值。F是模态指令,设一次后面都有效。但如果你中间切了G00,再切回G01时,F值可能还是之前的。我遇到过一位同事,换刀后忘了重新设F,结果用着上一把刀的进给率去铣钢件,刀片直接崩了。
二、G02与G03:圆弧插补
G02是顺时针圆弧,G03是逆时针圆弧。判断方向有个小窍门——从刀具运动平面的垂直方向看过去,也就是从Z轴正向往负向看。
圆弧插补的格式有两种:
- R格式:用半径R指定圆弧大小
- IJK格式:用圆心相对起点的增量坐标
我个人更推荐用IJK格式。为什么?因为R格式有个坑——当圆弧大于180°时,系统会默认走小弧。你明明想走个大半圆,结果它给你切了个小弧,过切了。
我曾经在加工一个模具型腔时,用R格式编了个270°的圆弧。程序跑起来看着没问题,结果一测量,内腔尺寸偏了0.5mm。后来查出来,系统把270°当成了90°来走。从那以后,超过180°的圆弧我全用IJK。
看个IJK的例子:
G90 G54 G00 X0 Y0
G01 Z-5. F100
G02 X100. Y0 I50. J0 F200 ; 从(0,0)到(100,0),圆心在(50,0),走半圆
这里的I、J、K分别对应X、Y、Z方向的圆心偏移量。记住,是从起点指向圆心的矢量。
三、G90与G91:绝对与增量编程
G90是绝对坐标,G91是增量坐标。这个其实不难理解:
- G90:所有坐标值都相对于工件原点
- G91:所有坐标值都相对于当前位置
我建议初学者全程用G90。为什么?因为G91容易让人算错位置。你想想看,编一个孔位,用G90直接写坐标就行。用G91的话,你得先算好上一个孔到下一个孔的距离,万一中间有个孔偏了,后面全乱套。
但G91也不是没用。比如铣一个等距阵列的槽:
G90 G54 G00 X0 Y0
G01 Z-5. F100
G91 G01 X10. F200 ; 相对当前位置走10mm
G01 X10. ; 再走10mm
G01 X10. ; 再走10mm
G90 G00 Z50. ; 切回绝对模式抬刀
你看,用G91编等距移动,代码简洁多了。但记得用完马上切回G90,不然下一段程序就乱套了。
- G00只用于快速移动,不切削;G01用于直线切削,必须带F
- 圆弧插补优先用IJK格式,避免R格式的过切风险
- G90是绝对坐标,适合大多数情况;G91是增量坐标,适合等距重复加工
- G90和G91切换时,一定要在安全位置进行,防止坐标混乱
四、实战避坑指南
最后分享几个我踩过的坑:
- G00撞刀:我曾经用G00直接下刀到Z-10,结果工件表面有个凸台没注意到,刀柄直接撞上了。现在我的习惯是:G00先到Z50安全高度,再G01慢速下刀。
- 圆弧过切:前面说了,R格式超过180°会出问题。我现在编圆弧一律用IJK,除非是90°或180°的标准圆弧。
- F值遗忘:换刀或换工序后,一定要重新检查F值。我有个习惯:每段G01前面都写F,虽然代码长了点,但心里踏实。
好了,这一讲就到这里。G代码入门其实不难,关键是养成好习惯。下一讲咱们聊聊G43/G44刀具长度补偿,这可是加工中心编程的必修课。
记住:编程时多花一分钟检查,机床上就能省下一小时。