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

获取即时报价

CNC 编程

如何为 CNC 机床编写 G 代码

本指南展示我们手工编程零件时实际遵循的顺序。你将了解程序段结构、关键代码,以及我们在 F、S、Z 中填入的数值。读完后,你能编写一段短程序、读懂别人交给你的程序,并判断哪些动作有风险。

ISO 程序段结构G 代码与 M 代码进给与转速范围刀具补偿规则
如何为CNC机床编写G代码
快速回答

要点速览

顺序比技巧更重要安全启动、调用刀具、工件坐标系、运动、退刀、结束。顺序正确的短程序胜过顺序错误的长程序。
先选平面大多数铣削用 G17,车削在 XZ 平面用 G18。平面选错会把圆弧变成废品。
进给来自刀具从每齿切屑负荷和齿数算起,再用材料核对结果。
补偿需要引入段G41 和 G42 只有在切入移动长于刀具半径时才有效。
先仿真,再单段运行首次实际切削前,在零件上方关闭主轴空运行。
程序段结构

CNC 程序段实际包含什么

G 代码程序是一系列程序段,一个程序段就是控制系统从左到右读取的一行。大多数程序段遵循相同顺序:N 为行号,G 为运动或模式,X Y Z 为坐标,然后 I J K 为圆弧中心,再是 F、S 和 T。这个顺序不是装饰,而是控制系统解析该行的方式,Fanuc 风格的控制系统遇到违反顺序的程序段会报错。

每个程序段都需要你脑中记住模态状态。G 代码会保持有效,直到同组的另一个 G 代码替换它。G01 会一直有效,直到你调用 G00 或 G02。F 会一直有效,直到你写入新的 F。这就是为什么程序可以看起来很短却仍能切出复杂形状,也是为什么固定循环后漏写 G80 会毁掉下一个孔。

大多数控制系统用括号写注释,有些用分号后写注释。要用注释。像 (Rough OD, 12 mm end mill) 这样的程序段不花成本,却能为下一个人节省二十分钟。注释用英文并保持简短,因为一些老控制系统会截断过长的注释行。

许多机床对单个程序段还有长度限制。如果你在一行里串联三段圆弧并各自带 I J K,请拆开。长程序段是错别字藏身之处。我们审查手写程序时,先看程序段长度,再看几何形状。

关键代码

值得先记住的 G 代码与 M 代码

入门不需要完整代码表。你需要 G00 快速定位、G01 进给、G02 和 G03 圆弧、G17 至 G19 平面、G20 和 G21 单位、G28 返回参考点、G40 至 G42 刀具补偿、G43 刀具长度补偿、G54 至 G59 工件坐标系,以及 G80 取消固定循环。这就是核心。其余都可以查。

M 代码方面,M03 主轴正转、M05 停止、M06 换刀、M08 切削液开、M09 切削液关、M30 结束并复位。换刀是常见的撞机点。M06 前务必把 Z 退到安全高度并取消补偿。在 Z-2 mm 处换刀,坏的是刀柄,不是零件。

单位是无声的杀手。G20 是英寸,G21 是毫米。把正确的单位写在前三行。我们见过用毫米编写的程序在仍处于英寸模式的机床上运行;零件被切成了大约预期尺寸的二十五分之一。

G90 绝对坐标和 G91 增量坐标也应放在开头附近。大多数生产程序运行 G90。增量移动对重复图案有用,但会累积误差。如果一个增量程序段错了,之后每个位置都会错同样的量。

进给与转速

如何设定进给率和主轴转速

进给率从每齿切屑负荷算起,而不是从车间里某人说的一个数字开始。取该材料和刀具直径推荐的每齿切屑负荷,乘以齿数,再乘以 RPM。12 mm 三刃硬质合金立铣刀在 6061 铝中以 8,000 RPM、每齿 0.05 mm 运行,得到 1,200 mm/min。写 F1200。

主轴转速来自线速度。铝用硬质合金时,300 至 500 m/min 是正常范围。304 不锈钢降到 80 至 120 m/min。钛再低,40 至 60 m/min,并保持刀具持续移动。杀死钛刀具的是摩擦,不是转速。

切削深度和步距与进给配套。在铝中,摆线刀路常可采用等于一倍刀具直径的轴向深度和直径 5% 至 10% 的径向步距。在更硬的钢中减半。如果机床开始颤振,先减小径向接触,再减小进给,因为进给太低会使刀具摩擦。

垂直下刀是例外。绝不要用切削进给垂直下刀。在控制系统支持时使用斜线下刀或螺旋下刀,或以切削进给的 30% 至 50% 下刀。以全进给直接垂直扎入钢中,就是三刃刀在头十秒内折断的原因。

装夹数据

工件坐标系、刀具长度与安全 Z

G54 是你最常用的工件坐标系。从零件基准设定,而不是从台虎钳角设定。选择图纸上出现的基准,以便检验员测量同一点。如果图纸从顶面和内孔中心标注尺寸,就在那里设 G54,并从该原点写出每个坐标。

刀具长度补偿写入由 G43 调用的 H 寄存器。G43 H01 Z50 将刀具提升到当前 Z 中工件坐标系上方 50 mm 处。符号弄错,刀具就会扎进工作台。务必在同一程序段中调用 G43 和第一个 Z 移动,并且始终使用正 Z。

安全Z高度是习惯,不是代码。换刀时我们用毛坯上方50 mm,特征间快速移动用5 mm。在高的零件上,50 mm仍可能撞到压板,所以要在仿真中检查工装夹具。退刀高度在CAM中设置,但手写代码时你要逐行决定。

G28使机床经过中间点回参考点。常见形式是G28 G91 Z0。路径畅通时安全,若平口钳或转台挡在路上则危险。在五轴机床上,任何G28移动前先把旋转轴停到安全位置。

操作步骤

为CNC机床编写G代码:分步说明

按下面的顺序操作。每一步列出要写什么,以及通常哪里会出错。

  • 1
    从安全程序头开始第一个程序段:G21 G17 G40 G49 G80 G90。这设定毫米、XY平面、取消补偿、取消刀长、取消固定循环、锁定绝对模式。漏掉取消指令是首次移动撞机最常见的原因。
  • 2
    添加程序号和注释前两行写O1001 (BRACKET OP1)。程序号要唯一。重复的编号会在机床内存中互相覆盖。
  • 3
    调用刀具并启动主轴T01 M06,然后S8000 M03,然后G43 H01 Z50。在刀具接近零件前启动主轴。绝不要把M06和M03放在同一程序段。
  • 4
    设定工件坐标系G54与第一个定位移动放在同一程序段,例如G54 G00 X0 Y0。按循环启动前,确认该偏置已通过测头或对刀确定。
  • 5
    移动到第一个切削点在安全Z高度快速移动XY,然后快速下降到毛坯上方2 mm。最后2 mm用切削进给。从安全Z到毛坯的这段移动,是大多数扎进压板事故的发生处。
  • 6
    用G01、G02、G03切削直线移动用G01加F。圆弧用G02顺时针、G03逆时针,用I J表示圆心相对起点的位置,或用R表示半径。同一圆弧中不要混用I J和R。
  • 7
    正确应用刀具补偿G41左补偿或G42右补偿,然后一段长于刀具半径的切入移动,再走轮廓。用G40在切出移动中取消。在零长度移动上开补偿不起作用,许多系统还会报警。
  • 8
    退刀、停止并结束程序G00 Z50、M09、M05,然后G28 G91 Z0或安全停靠位置,然后M30。让机床处于下一位操作者可以信任的状态。
参考

按材料给出的进给、转速和公差

刚性机床上硬质合金刀具的起始值。根据刀具悬伸和工装夹具刚性调整。

材料表面速度每齿进给,12 mm 3刃我们通常控制的公差
6061 铝300–500 m/min0.05 mm/齿±0.005 mm
7075 铝合金200–350 m/min0.04 mm/齿±0.005 mm
304 不锈钢80–120 m/min0.03 mm/齿±0.005 mm
17-4PH 不锈钢60–100 m/min0.02 mm/齿±0.005 mm
Ti-6Al-4V40–60 m/min0.02 mm/齿±0.005 mm
P20 模具钢60–90 m/min0.02 mm/齿±0.005 mm
POM 塑料300–500 m/min0.08 mm/齿±0.02 mm

何时自己编写,何时交给供应商

刀具少、几何开放的简单零件可以手写代码。深腔、薄壁、五轴特征或±0.005 mm公差,交给有设备和后处理的工厂编程。仿真和验证过的工装夹具在那里才值得投入。

常见问题

常见问题

如果只有图纸,我怎样为CNC机床编写G代码?

先选图纸上出现的基准,然后从该点设定G54。按切削顺序列出每个特征:端面、粗加工、精加工、钻孔、攻丝。每把刀写一段,各段保持独立。

简单零件不需要CAM。两三把刀、十几个特征,手工可以应付。超出这个范围,CAM后处理比手打坐标更快、更不易出错。

G 代码和 M 代码有什么区别?

G代码控制运动和机床模式:定位、进给、圆弧、平面、偏置、补偿。M代码控制开关动作:主轴、切削液、换刀、程序结束。

粗略规则:改变路径几何的是G代码。开关某个功能的是M代码。

同一段G代码能在任何CNC机床上运行吗?

基础层面大多可以。G00、G01、G02、G03、G17、G21、G54和M03接近通用。差异出现在固定循环、换刀语法和高速前瞻设置上。

Fanuc、Siemens、Mitsubishi和Heidenhain都有各自的专有变体。运行针对其他系统编写的程序前,务必查阅机床手册。

为什么我的刀具在第一次下刀时就断了?

通常是进给,不是转速。在钢或钛上以全切削进给直接垂直下刀,会使刀具中心过载,那里的表面速度接近零。改用斜线或螺旋切入。

第二个原因是跳动。检查刀柄和刀具悬伸。标准刀柄伸出60 mm的刀具,即使进给正确也会振颤并折断。

与加工供应商合作需要学G代码吗?

不需要会写,但能读有帮助。能读程序,你就能判断供应商深腔是否用了对的刀具,紧公差是靠精加工走刀保证还是只是口头声称。

我们自己的活,每个程序在首次切削前都要对照图纸检查并仿真。

怎样避免手写程序报废零件?

先仿真,然后关主轴、Z抬高50 mm空跑一遍。在每个换刀点观察位置显示。然后以25%进给倍率单段运行首件。

保留打印的装夹单,含刀具清单、偏置和毛坯尺寸。大多数报废来自装夹不匹配,而不是坐标错误。

把图纸发给我们,12小时内报价

上传 STEP 或 DXF 文件,我们将在 12 小时内返回含免费 DFM 分析的报价。无最小起订量,从一件原型到 10,000+ 件批量均可。

12 小时报价100% 检测±0.005 mm无 MOQ

关注我们

更多来自车间现场

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

FacebookTikTokYouTubeLinkedInInstagramThreadsPinterest

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

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