GreatLight CNC 加工工厂 logo
CNC 加工
快速原型打样
材料
行业
新闻
关于 GL

获取即时报价

CNC 编程基础

CNC 机床用什么 G 代码?7 个关键代码

G 代码是 CNC 控制系统读取的指令集,用于移动轴、旋转主轴和换刀。本页说明各代码的作用、同一编号在车床上含义不同的情况,以及这如何影响零件的报价和加工方式。

铣床与车床模态与单次工件坐标系安全退刀
CNC 机床 G 代码
快速解答

要点速览

G 代码管几何,M 代码管机床状态G 代码负责定位和插补;M 代码负责启动主轴、切削液和换刀。
同一编号可能有两种含义G84 在铣床上是攻丝循环,在车床上是主轴转向指令。
模态代码保持有效设定一次 G54,之后每次移动都沿用,直到调用另一个坐标系。
进给和转速不在 G 代码里F 和 S 值来自刀具数据和材料,不由控制系统决定。
程序段顺序很重要在 Fanuc 风格的控制系统上,程序段内的代码按固定顺序执行。
基础

CNC 机床的 G 代码实际控制什么

G 代码是一组带编号的指令,机床控制系统逐段读取。每个程序段是一行,每行可包含多个字:G 代码指定运动模式,X/Y/Z 指定位置,F 指定进给,S 指定主轴转速。在铣床上,G0 以全速快速移动到某点。G1 按编程进给率直线进给。G2 和 G3 顺时针或逆时针走圆弧。

控制系统不对零件做任何决定,它只执行 CAM 后处理器交给它的内容。这就是为什么两家工厂加工同一模型,名义几何相同,加工节拍和表面处理却可能不同:G 代码背后的刀路、步距和进刀方式不一样。

程序段不是人类语言的句子。G1 X50.0 Y20.0 F800 在多数公制控制系统上表示以 800 mm/min 进给到该坐标,在英制编程的机床上则是 800 in/min。单位由 G20 和 G21 设定,混用是报废零件最快的方式之一。

  • 1
    模态代码保持有效直到被更改,例如 G1、G54 或 G21。
  • 2
    单次代码在所在程序段执行一次,例如 G4 暂停或 G28 返回。
  • 3
    字顺序Fanuc 风格控制系统按固定顺序执行程序段,与书写顺序无关。
运动组

每个程序都会出现的运动代码

程序大部分由四个运动代码构成。G0 以快速移动,从不用于切削。G1 按指令进给率直线插补。G2 和 G3 切削圆弧,需要 R 字或 I、J、K 偏移来定义圆心。仅用 R 写整圆会有歧义,所以多数后处理器对超过 180° 的圆弧输出 I 和 J。

G17、G18 和 G19 选择圆弧插补和刀具补偿的平面。G17 是 XY 平面,覆盖几乎所有三轴铣削。G18 和 G19 出现在车床上,以及在 XZ 或 YZ 平面加工的零件上。选错平面,圆弧仍会运行,只是方向不是你想要的。

刀具补偿是另一组值得了解的代码。G41 将刀具偏置在路径左侧,G42 在右侧,G40 取消。在较老的控制系统上,操作员可在机床上输入磨损值调整尺寸,而不用修改程序。许多现代工厂把补偿留在 CAM 输出中,通过机床刀具表中的刀具半径偏置控制尺寸。

  • 1
    G0快速定位。使用前先让刀具离开零件。
  • 2
    G1直线进给移动。任何切削的主力。
  • 3
    G2 / G3在当前平面内顺时针和逆时针圆弧。
  • 4
    G40 / G41 / G42取消、左、右刀具补偿。
补偿

工件坐标系、刀具长度,以及 G54 为何无处不在

G54 到 G59 是工件坐标系。它们告诉控制系统零件原点相对机床原点的位置。三轴铣床上的台钳可能是 G54;同一工作台上的第二个台钳可能是 G55。同一程序无需任何修改即可在两个位置运行。G10 允许程序在代码内部写入这些偏置,这在批量工装夹具上很常见。

刀具长度补偿是另一回事。G43 应用当前刀具存储的长度偏置,通常配合 H 号。G49 取消。如果换刀后没有 G43 H 字,下一次 Z 移动会走到错误高度。在 ±0.005 mm 的加工精度下,缺少长度偏置不是小误差。

G28 将轴送回机床参考点,G30 前往第二参考点。两者都用于工序间的安全退刀。许多控制系统上,换刀前对 Z 轴执行 G28 是标准做法,因为它在刀库旋转前让主轴离开工装夹具。

G92 在程序内设定临时坐标偏移。它适合快速手动装夹,在生产文件中很危险,因为偏移会持续存在,如果没人清除,会与后续偏置叠加。

  • 1
    G54–G59存储在控制系统中的零件原点,每个工装工位一个。
  • 2
    G43 / G49应用和取消刀具长度补偿。
  • 3
    G28 / G30将轴返回参考位置,用于安全退刀。
  • 4
    G92临时偏移。不要用于生产程序。
循环

固定循环与真正节省加工节拍的代码

固定循环把重复动作打包成一个程序段。G81是简单钻孔循环。G83分步啄钻,便于排屑,在深孔和6061、316L这类粘性材料中很重要。G73是高速啄钻,断屑但不完全退刀。G84攻丝,必须与主轴同步,否则丝锥会破坏螺纹。

在铣床上,G84刚性攻丝需要主轴编码器,且进给率等于螺距乘以转速。算错几个百分点,螺纹用通止规看似乎没问题,但通止规检验会不合格。G85铰孔带进给退刀,比快速退回的孔更直。

车床用相同编号表示不同循环。G71是粗车循环,G70精车,G76车螺纹。在铣床上,G76是精镗循环。程序员在两种机床间切换时不查控制手册,写出的程序能运行,但会切出错误形状。

固定循环在有限意义上具有模态性。G83激活后,每个新的X/Y位置都会钻一个孔,直到G80取消循环。在G0移动前忘记G80是典型撞机,因为控制系统会试图在新位置钻孔。

  • 1
    G80取消任何激活的固定循环。移动前务必调用。
  • 2
    G81 / G83普通钻孔和带排屑的啄钻。
  • 3
    G84攻丝。进给必须等于螺距×主轴转速。
  • 4
    G85铰孔,以受控进给退出孔。
机床状态

M代码:主轴、切削液和换刀

M代码改变机床状态而非位置。M3主轴顺时针启动,M4逆时针,M5停止。M8开切削液,M9关。M6调用换刀,通常需要带刀具号的T字。在车床上,M3和M4同样设定主轴方向,但周围的G代码含义不同。

有些M代码是机床专用的。托盘交换器、棒料送料器或测头宏各用不属于任何标准的M代码。这些编号来自机床制造商,后处理器必须针对该具体机床配置。在不同制造商的机床之间复制这些代码不会生效。

程序结构以M30结束,停止程序并倒回开头。M0是计划停止,等待操作员。首件手动检查前用M0,同一程序的生产版本中要去掉。

安全启动块在这里声明所有内容。典型的安全启动块取消补偿、取消循环、用G90选择绝对定位、用G21设定单位,并在任何运动发生前调用第一个工件坐标系。

  • 1
    M3 / M4 / M5主轴顺时针、逆时针和停止。
  • 2
    M6换刀。与T字配对。
  • 3
    M8 / M9切削液开和关。
  • 4
    M0 / M30计划停止和程序结束并倒回。
工程影响

G代码选择如何体现在成品零件上

两个程序可以产生相同的名义尺寸,却仍在关键方面不同。G1直线切入型腔壁会留下接刀痕。G2圆弧切入融入壁面,几乎不留痕迹。在可见外观面上,这一个程序段决定零件之后是否需要手工抛光。

进给和转速来自材料和刀具,而非控制系统。用6 mm硬质合金立铣刀以12,000 rpm切削7075铝是正常的。同样刀具以该转速加工Inconel几秒内就会损坏,因此G代码会携带低得多的S值和更轻的每齿进给。控制系统不知道区别。

热增长是人们忘记的部分。机床连续切削六小时,主轴和滚珠丝杠升温会产生漂移。G代码可以包含预热循环和定期重新探测参考特征。在±0.005 mm的工件上,跳过这一步会表现为生产批次中尺寸缓慢趋势。

表面粗糙度目标对刀路密度的影响超过任何单个代码。粗加工Ra 1.6–3.2 μm对粗加工走刀是正常的。小步距和恒定 engagement 路径的精加工走刀可达Ra 0.8–1.6 μm,精细精加工策略可推向Ra 0.2–0.8 μm。代码相同,背后的参数不同。

  • 1
    切入方式圆弧切入隐藏接刀痕;直线切入不能。
  • 2
    每齿进给由刀具和材料设定,而非控制系统。
  • 3
    热漂移预热和重新探测在长时间运行中保持尺寸稳定。
  • 4
    步距步距更小,表面更好,加工节拍更长。
边界

当仅靠G代码不是正确答案时

手写G代码适合简单几何:一个面、一个槽、一个钻孔阵列。对于轮廓5轴曲面或有40个型腔的零件则是糟糕选择。平滑过渡刀路的数学不是人在控制面板前手敲的。CAM处理它,后处理器把结果转成G代码。

后处理器是大多数错误隐藏的地方。为3轴机床写的后处理器会输出看似有效但没有旋转轴运动的程序。装到5轴加工中心上,零件会以错误方向切削。每种机床型号,通常每台机床,都需要自己经过验证的后处理器。

有些特征仅靠刀路无法加工,无论G代码多好。尖锐内角需要带圆角的刀具,圆角会留在角落。倒扣需要不同刀轴或第二次装夹。深窄型腔需要长刀具,除非减小切深和步距,否则会让刀。

这时问题从编程转向工艺。如果几何需要五轴联动,或薄壁上的公差很紧,机床和装夹的选择比代码更重要。我们运行16台五轴联动加工中心以及27台三轴机床,因此同一零件可以按真正适合它的工艺报价。

  • 1
    简单几何手写代码快速且易于验证。
  • 2
    复杂曲面用经过验证的后处理程序做 CAM,是唯一可行的路径。
  • 3
    内角刀具半径决定能切出的最小内角。
  • 4
    薄壁决定可达公差的是让刀变形,不是代码。
并排对比

同一段代码,不同机床:铣床与车床

这些数字的含义随控制系统类型而不同。

代码在铣床上在车床上
G70精加工循环,部分控制系统粗加工轮廓的精加工循环
G71很少使用带切削深度的粗加工循环
G76精镗循环车螺纹循环
G84刚性攻丝循环主轴转向指令
G96部分车床的恒线速度恒线速度控制
G98 / G99固定循环返回平面每分钟进给或每转进给
G28返回机床参考点返回机床参考点
G2 / G3当前平面内的圆弧零件轮廓上的圆弧

简要结论

如果零件简单、由车间在控制面板上直接编程,就问哪些代码决定表面质量和尺寸。如果有曲面轮廓或严格公差,就问后处理器和机床。结果是在那里决定的。

常见问题

工程师接下来会问的问题

询价时需要附上 G 代码吗?

不需要。提供 3D 模型和带公差的 2D 图纸即可。我们根据 STEP 文件在内部生成刀路和 G 代码,并在切削前做 DFM 评审。

如果你已有针对特定机床验证过的程序,可以说明。这是有用的背景信息,但我们仍会按自己的机床几何和后处理进行核对。

生成 G 代码用哪种文件格式最好?

STEP 和 IGES 能干净地处理 3D 几何。DXF 适合平面零件和钣金轮廓。原生 CAD 文件也可以,PDF 图纸便于标注公差、基准和说明。

仅靠模型很少能承载全部信息。公差、表面处理标注和基准方案应写在图纸上。

同一零件能在 3 轴和 5 轴机床上加工吗?

通常可以,但装夹次数更多。3 轴机床每加工一个面都要重新定位零件,每次重新定位都会引入定位误差。5 轴加工中心一次装夹即可到达相同特征,通常各面之间的位置保持得更好。

对于四个面都有特征、且公差跨面累积的零件,5 轴路线更稳妥。对于带钻孔的简单板件,3 轴更快、更便宜。

程序在切削金属前如何验证?

我们针对毛坯模型和工装夹具模拟刀路,然后在几何风险高的地方做空运行或废料首件试切。首件检验合格后才开始批量加工。

每件产品发货前都经过检验,包括原材料检查、过程监控和终检。检测报告可按需提供。

材料会改变 G 代码吗?

结构不变,数值改变。6061 和 7075 铝用高主轴转速和轻切削载荷。316L 不锈钢和 17-4PH 用较低转速和更多切削液。钛合金 TC4 和 Inconel 转速更低,减小步距并注意控制热量。

这些材料我们都在内部加工,另外还有黄铜、铜、工具钢,以及 PEEK、碳纤维等工程塑料。

如果零件需要刀路无法产生的表面效果怎么办?

那就转到二次加工。喷砂、滚光、拉丝、抛光、阳极氧化、电镀和激光打标都在机加工后处理。激光打标最小字符高度为 1.5 mm。

加工程序仍然重要,因为表面越粗糙,达到最终表面效果所需的工作量越大。

发送模型,获取编程方案

上传 STEP 文件和图纸。我们在 12 小时内返回报价和免费 DFM 分析,生产可在 24 小时内开始。

12 小时报价100% 全检无最小起订量

关注

更多来自车间现场

我们发布来自工厂车间的装夹记录、刀具试验和检测数据。

FacebookTikTokYouTubeLinkedInInstagramThreadsPinterest

深受全球工程师和制造商信赖

Tesla Ford Motor Company 比亚迪汽车 电装 麦格纳国际 波音 空客 美敦力 库卡 发那科