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

获取即时报价

CNC 编程指南

如何为 CNC 机床编写程序

本指南面向需要把 CAD 模型转化为安全、可重复切削程序的工程师和机床操作者。内容覆盖从图纸审查到空运行的完整流程,包含我们在车间实际使用的数值,以及最耗时的错误。读完后你能判断一个工件该用手写 G 代码还是 CAM 输出。

±0.005 mm 公差16 台五轴加工中心Ra 0.2–0.8 μm 表面粗糙度12 小时 DFM 审查
如何为 CNC 机床编写程序
快速回答

要点速览

先看模型再写代码CAD 模型错了,程序就错了。先检查几何和公差。
只对简单零件手写代码两轴车削和简单轮廓可以手写。复杂 3D 几何不行。
切金属前先空运行把快速移动倍率调到 0% 空运行,直到每次接近都避开毛坯。
进给来自刀具,不来自零件从刀片或立铣刀供应商数据起步,再按径向接触量调整。
工件第 1 步

写第一行代码前先读图纸和模型

多数编程错误在打开编辑器之前就埋下了。把 STEP 或 IGES 文件和 2D 图纸并排打开,确认两边的版本字母一致。我们曾因模型是 C 版、图纸是 B 版,而编程员信了文件名,报废过零件。

标出所有严于 ±0.05 mm 的公差。这些特征决定装夹次数、刀具清单,以及是否需要第四轴或第五轴。±0.005 mm 的内孔不能和 ±0.2 mm 的型腔共用一次粗加工。

找出够不到的特征。4 mm 深、3 mm 圆角的槽需要 6 mm 立铣刀,而刀柄可能先于刀具撞到侧壁。确定刀具前,先核对刀柄体直径与壁高。

现在就定基准。选一个面和两条边,或一个内孔和一个面,写在装夹单上。之后每道工序都引用同一零点。程序中途换基准,是工序间丢 0.1 mm 最快的方式。

  • 1
    版本核对编程开始前,模型和图纸必须带相同的版本字母。
  • 2
    严公差清单任何低于 ±0.05 mm 的公差都单独安排工序和刀具。
  • 3
    刀柄间隙刀具到达深度前,刀柄体直径加 1 mm 必须能避开侧壁。
选择方法

手写 G 代码还是 CAM 输出

手写 G 代码适合简单工件:车端面和轴、钻圆周孔、铣矩形型腔。可以在机床旁编写,几分钟内验证,操作者一喊就能改一个数。整个程序可能 40 行,一遍就能读完。

几何一旦不再是平面,CAM 输出就占优。变深度曲面、五轴侧刃铣,或带 60 个型腔的零件,手写要几天而且还会错。CAM 软件还能跟踪剩余材料,让你知道刀具没有空切 20 分钟。

我们车间的实用规则:零件需要三把以上刀具,或任何非平面表面,就交给 CAM。如果是带几条槽和一个螺纹的车削件,就手写。两者混用很正常,好的编程员会手工修改 CAM 输出的第一段接近移动。

无论走哪条路,输出格式都一样:包含进给、转速和换刀块的 G、M 代码文本文件。机床不关心是谁写的,只关心数值一致、快速移动避开夹具。

关键数字

转速、进给与切削深度

从表面速度起步,而不是主轴转速。6061 铝用硬质合金立铣刀,我们取 300–500 m/min 表面速度。10 mm 刀具约 9,500–16,000 rpm,我们多数主轴能达到。304 不锈钢降到 100–150 m/min,因为材料被摩擦而不是切削时会加工硬化。

每齿进给是断刀的关键数值。铝件用 10 mm 三刃刀,每齿 0.05–0.15 mm 属正常。不锈钢用每齿 0.03–0.08 mm,并保持切屑负载稳定。切屑像粉末说明在摩擦;像逗号且出来发蓝,就接近了。

切削深度取决于径向接触量。铝件满宽开槽,轴向深度限制在约 0.5 × 刀具直径。如果步距为直径的 30%,轴向深度可推到 1.5 × 直径以上。高效铣削就来自这里,也是同一把刀在一个程序里能用两种差别很大的进给率的原因。

后处理前始终核对机床限制。主轴额定 12,000 rpm 却发 16,000 rpm 指令,要么报警,要么以错误转速运行并烧刀。我们 4,000 × 400 × 150 mm 行程机床和 500 × 500 × 450 mm 紧凑机床的主轴范围不同,同一程序不一定能直接移植。

  • 1
    铝 6061300–500 m/min,每齿 0.05–0.15 mm,满宽轴向切深 0.5 × D。
  • 2
    不锈钢 304100–150 m/min,每齿 0.03–0.08 mm,切削中不得停留。
  • 3
    Ti-6Al-4V 钛合金40–60 m/min,每齿 0.03–0.06 mm,始终开足切削液。
结构

能扛过交接班的程序结构

把装夹单以注释形式写进程序。刀具清单、工件偏置、毛坯尺寸和基准面放在开头。接第二班的操作者从没见过你纸上的装夹笔记,但会读程序前 20 行。

每个装夹使用一个工件坐标系。op 1 用 G54,op 2 用 G55,依此类推。不要在程序中途偏移同一个坐标系,除非同时注释说明原因。零件回到 op 2 时,操作员可以对照装夹表核对 G55,不用猜。

调用刀具、启动主轴、移动到第一个位置,分三个程序段写。多花三行,避免一次撞机。顺序是:T5 M06,然后 S9500 M03,然后 G00 Z50,然后 G00 X Y。如果刀长不对,机床会在 X 或 Y 移动之前报警。

每把刀具结束时取消刀补和切削液。G40、M09,然后 G00 Z50。程序如果留着 G41 活动就换下一把刀,第一刀就会切出锥度,操作员可能要等到零件超差才发现。

主轴转动之前

常见错误及避免方法

代价最高的错误是工件坐标系设错。程序完美、刀具完美,机床却因为 G55 设在错误的角上而切进夹具 50 mm。第一次切削前,务必用千分表或测头核对坐标系。

第二个是漏写 G40 或残留 G41。如果刀补保持活动,下一把刀切出的零件会偏移一个补偿值。10 mm 刀具、5 mm 补偿,每个轮廓就偏 5 mm。每个工序结束时取消补偿。

第三个是进给率相对径向切深过大。30% 步距下运行良好的程序,在 100% 步距下用同样的每齿进给会断刀。改变步距时要重新计算进给,不只是改主轴转速。

第四个是换刀后忘记检查刀长。刀长差 0.2 mm,型腔底面就会出现 0.2 mm 的台阶。每把刀都要在对刀仪或接触式对刀块上测量,程序运行前更新偏置。

  • 1
    核对坐标系第一次切削前用测头或千分表找正工件坐标系。不要相信上一个活留下的数值。
  • 2
    取消补偿每个工序结束时、调用下一把刀之前执行 G40。
  • 3
    改步距后重算进给径向切深变化时,每齿进给不是常数。
流程

分步说明:编写程序

  • 1
    设定基准和零点选一个面和两条边,或一个内孔和一个面。把零点位置和工件坐标系号(G54–G59)写在装夹表上。导入任何几何之前完成这一步。
  • 2
    建立刀具清单列出每把刀具的直径、圆角半径、刃数和刀柄。最小刀具直径至少为最小内圆角半径的 1.5 倍。如果圆角是 3 mm,最小实用刀具是 5 mm。
  • 3
    定义毛坯和安全平面在要加工的面留 0.5–1 mm 余量设定毛坯。快速平面设在毛坯最高点上方 5–10 mm。退刀平面设在夹具上方 50 mm。
  • 4
    先编粗加工用能到达最深型腔的最大刀具。径向留 0.3–0.5 mm、轴向留 0.1–0.2 mm 给精加工。不要留 1 mm 指望精加工刀清掉,那是振纹的来源。
  • 5
    用合适的刀具编精加工精加工刀具要匹配圆角半径和表面处理要求。Ra 0.8–1.6 μm 时,用锋利的硬质合金刀,圆角半径 0.4–0.8 mm,步距取 0.1–0.2 mm。
  • 6
    加入钻孔和攻丝循环通孔用 G81,深度超过 3 倍直径的孔用 G83,刚性攻丝用 G84。不锈钢和钛的啄钻深度取 1 倍直径,铝取 2 倍直径。
  • 7
    后处理并检查代码后处理程序,然后读前 30 行和后 30 行。确认单位(G21 为 mm,G20 为英寸)、平面(G17)和进给模式(G94)。公制程序里错一个 G20 就会撞机。
  • 8
    降低快速倍率空运行刀具停在零件上方 100 mm,快速倍率打到 0% 运行程序。观察每次换刀和每次接近。只有空运行通过后,才降下刀具在毛坯高度上空切。
决策表

手工编程还是 CAM:看活选方法

开始前用这张表选择编程方式。

工件特征手工编写 G 代码CAM 输出
带 1 个螺纹的 2 轴车削件适用场景可行,但装夹设置较慢
直壁平面型腔1–3 把刀可以型腔多时更好
非平面 3D 曲面不实用必需
5 轴联动不实用必需
超过五把刀容易出错刀具管理更好
一次性维修或返修在机床上更快准备成本太高
500件以上批量生产只适合简单零件一致性更好
特征公差严于 ±0.01 mm小心操作可行配合残留毛坯跟踪更好
常见问题

常见问题

能直接从 2D 图纸编写 CNC 程序吗?

可以,适用于车削件和简单棱柱件。轮廓、刀路和偏置都手工定义。风险在于看不见的几何:3D 过渡或拔模壁不会出现在 2D 视图上。

任何带曲面的零件,都从 3D 模型开始。2D 图纸是参考,不是源数据。

铝件起步用什么转速和进给?

6061 配硬质合金立铣刀,表面速度从 300–500 m/min 起步,每齿进给 0.05–0.15 mm。满宽切削时轴向切深取 0.5 倍刀具直径。

如果切屑薄而呈粉末状,加大每齿进给。如果刀具尖叫,先减小径向步距,再考虑降进给。

怎么判断程序可以安全运行?

快速倍率打到 0%,刀具停在毛坯最高点上方 100 mm 空运行。观察每一次快速移动、每一次换刀和每一次接近。

然后降下刀具,主轴开启,在毛坯高度运行程序。两遍都通过后,才切削零件。

为什么零件在工序之间出现台阶?

工序之间工件坐标系或刀长变了。刀长差 0.05 mm,精加工面上就能看到台阶。

重新测量刀具并重新核对坐标系。如果台阶大于 0.1 mm,检查夹具是否移动或零件下方是否有切屑。

带斜孔的程序需要第五轴吗?

不一定。如果角度只在一个面上,且零件可以重新装夹,用正弦台或角度虎钳的三轴机床就能完成。

当零件多个面上都有斜向特征,且希望一次装夹完成时,五轴才有意义。它还能消除重新装夹带来的误差。

编写一个 CNC 程序需要多长时间?

简单的车削件包括空运行在内需要 30–60 分钟。需要三次装夹的三轴铣削件需要 2–4 小时。带曲面加工的五轴零件可能需要一整天。

编程时间不是瓶颈。装夹和首件检验通常耗时更长。

把模型发给我们,我们来审查刀路

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

12 小时报价100% 全检可签 NDA

关注我们的工作

更多来自车间现场

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

FacebookTikTokYouTubeLinkedInInstagramThreadsPinterest

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

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