Altium Designer中Gerber光绘输出与CAM校验实战全解析
从设计到制造:为什么你的PCB打样总出问题?
你有没有遇到过这样的情况:
辛辛苦苦布完板,DRC全绿,信心满满导出Gerber发给工厂——结果三天后收到回复:“顶层缺阻焊”、“丝印压焊盘”、“钻孔文件没生成”。更离谱的是,你自己打开一看,明明在AD里看得清清楚楚,怎么一输出就“失踪”了?
别急,这并不是你操作失误,而是大多数工程师都踩过的坑:以为“点几下鼠标=完成输出”,却忽略了从设计到制造之间最关键的一步——数据完整性验证。
在现代电子研发流程中,PCB设计只是前半程。真正决定产品成败的,是能否将你的设计意图无损、准确地传递给PCB厂家。而这个桥梁,就是Gerber文件 + 钻孔文件。
Altium Designer虽然功能强大,但它的输出系统并不“智能”到能自动判断你需要哪些层、该怎么配置格式。稍有疏忽,轻则返工重打样,重则延误项目周期、增加成本。
本文不讲空话套话,带你一步步走完真实项目中的完整输出与校验流程,让你从此告别“工厂退单”。
Gerber到底是什么?别再把它当“图片”看了!
很多人把Gerber理解成“PCB的截图”或“底片图”,这是个致命误解。
它不是图像,是一组精密指令
Gerber(RS-274X)本质上是一种二维矢量描述语言,由一系列坐标和绘图命令组成,告诉光绘机:
“现在移动到 X=10.235mm, Y=8.762mm 的位置,用直径0.2mm的圆形光斑曝光,然后直线走到下一个点。”
它支持:
- 线条、圆弧、矩形、多边形绘制;
- 光圈(Aperture)定义,控制图形形状;
- 坐标定位与区域填充;
- 内嵌D码表(Embedded Apertures),无需外部文件辅助。
正因为它是“程序式”的,所以精度可以做到微米级(常用3:6或4:6格式),远高于普通图像格式。
每一层一个文件,共同构成“制造蓝图”
一块四层板至少需要以下Gerber文件:
| 层名称 | 文件扩展名 | 作用 |
|---|---|---|
| Top Layer | .GTL | 顶层铜皮走线 |
| Bottom Layer | .GBL | 底层铜皮走线 |
| Top Solder Mask | .GTS | 顶层开窗(不上绿油) |
| Bottom Solder Mask | .GBS | 底层开窗 |
| Top Silkscreen | .GTO | 顶层白字 |
| Bottom Silkscreen | .GBO | 底面白字 |
| Internal Plane 1 (GND) | .GP1 | 内电层1(如地平面) |
| Mechanical 1 | .GM1 | 板框轮廓 |
再加上.TXT格式的NC Drill钻孔文件,这一整套才叫“完整的制板资料”。
⚠️血泪教训:曾有个项目因为漏了
.GTS,导致所有贴片焊盘都被绿油覆盖,整批板报废。原因?——OutJob里忘了勾选Top Solder Mask!
ad导出gerber文件:别再靠记忆点了!手把手教你配好Output Job
Altium的输出核心是.OutJob文件——你可以把它看作是一个“发布任务清单”。它决定了你要输出什么、怎么输出、输出到哪。
我们来一步步搭建一个可靠的Gerber输出流程。
Step 1:创建标准输出任务
- 在项目面板右键 →
Add New to Project→Output Job File - 命名为
Fabrication_Outputs.OutJob
然后你会看到三大类输出选项:
-Fabrication Outputs(制造输出)
-Assembly Outputs(装配输出)
-Documentation Outputs(文档输出)
我们现在聚焦第一个。
Step 2:添加Gerber输出任务
点击Add Output→ 选择Gerber
双击进入设置界面,关键参数如下:
✅ 必须设置项(建议收藏)
| 参数 | 推荐值 | 说明 |
|---|---|---|
| Format | 4:6 mm | 小数点前4位,后6位,适合高密度板;避免使用2:5英寸格式 |
| Units | Millimeters | 统一用毫米,防止单位混淆 |
| Zero Suppression | Leading | 去掉前导零,工业标准写法 |
| Grid Resolution | 10nm | 匹配AD内部精度 |
| Include Unconnected Mid-Spans | ❌ 不勾选 | 防止孤立焊盘被误删 |
| Mirror Layers | ❌ 关闭 | 特别是丝印层,镜像会翻反 |
| Embedded Board Outlines | ✅ 勾选 | 把板框嵌入每层,增强数据完整性 |
| Layer Mapping | 手动核对 | 最关键一步!确保每一层正确映射 |
📌 Layer Mapping 要逐个检查!
哪怕只错一层,后果都很严重。比如把.GTS映射成了机械层,工厂就会当成板框处理,直接拒单。
常见映射关系(以四层板为例):
| PCB Layer | → | Gerber File |
|---|---|---|
| Top Layer | → | GTL |
| Bottom Layer | → | GBL |
| Top Solder Mask | → | GTS |
| Bottom Solder Mask | → | GBS |
| Top Overlay | → | GTO |
| Bottom Overlay | → | GBO |
| Mechanical 1 | → | GM1 |
| Internal Plane 1 | → | GP1 |
| Internal Plane 2 | → | GP2 |
💡 提示:如果你用了自定义机械层做板框,请确认是否已正确关联。
Step 3:同步配置钻孔文件
没有钻孔文件,板子没法通孔焊接。
回到OutJob,添加NC Drill输出:
- 格式选Excellon
- 单位同为mm
- 勾选Leading Zero Suppression
- 输出类型选Plated & Non-Plated Holes
并勾选Generate Drill Drawing,生成钻孔图供人工核对。
自动化提速:用脚本一键输出,告别重复劳动
如果你每天都要打样三四次,每次都手动点“Generate Content”,那太低效了。
Altium支持Delphi Script自动化。下面这段代码,可以直接运行指定的输出任务:
// GenerateGerber.dsp procedure Run; var Project : IProject; OutputJob : IOutputJob; begin Project := GetActiveProject; if Project = nil then begin ShowMessage('请先打开一个项目!'); exit; end; // 查找名为“Fabrication_Outputs”的任务 OutputJob := Project.Outputs.Item('Fabrication_Outputs'); if (OutputJob <> nil) and OutputJob.Enabled then begin Project.RunOutputTask('Fabrication_Outputs', 'Gerber'); Project.RunOutputTask('Fabrication_Outputs', 'NC Drill'); ShowMessage('✅ Gerber与钻孔文件已生成!'); end else begin ShowMessage('❌ 未找到有效的输出任务'); end; end;保存为.dsp文件,在Scripts面板中加载运行即可。
🔧 使用技巧:把这个脚本绑定到快捷键,或者集成进CI/CD流程,实现“提交即输出”。
最关键一步:用CAM Editor做最终校验,别让错误溜走
你以为导出了就万事大吉?错!真正的质量控制在这里才开始。
Altium自带的CAM Editor是你最后的防线。它能独立读取Gerber文件,重建PCB视图,就像工厂收到资料后的第一眼。
如何启动CAM校验?
- 菜单栏:
File → Open → CAM Document (*.cam) - 创建新CAM文件
- 点击
Import → Gerber/Excellon - 一次性导入所有
.gbr和.txt文件 - 系统会自动识别层类型(也可手动指定)
校验五步法(建议写入Checklist)
① 数文件数量
对照之前列出的清单,确认该有的都有:
- 至少9个文件(8层+1钻孔)?
- 缺任何一个都要回溯OutJob设置。
② 看电源层有没有“孤岛”
切换到.GP1(内电层),放大观察GND平面是否有断裂、孤岛或异常分割。
特别是跨分割区域附近的去耦电容,容易因阻抗不连续引发EMI问题。
③ 查丝印是否压焊盘
启用.GTO层,查看顶层丝印文字是否覆盖了测试点、引脚或按键。
工厂通常会警告,但有些小厂直接照做,导致无法调试。
④ 测线宽线距是否达标
使用测量工具(Ctrl+M),抽查差分线、高速信号线宽度。
例如:5mil线宽 = 0.127mm,若显示小于0.12mm,可能需调整设计或工艺要求。
⑤ 对比原始PCB(高级技巧)
你甚至可以把原.PcbDoc导出为中间格式(如DXF),再导入CAM作为参考层,进行视觉比对。
或者导出IPC-356测试网表,在CAM中执行开短路模拟,提前发现潜在电气问题。
⚠️ 注意事项:关闭“Film Shrinkage Compensation”等变形补偿选项,否则图形会被拉伸,影响判断。
实战案例:一次失败的打样教会我的事
上周同事小李拿到样板,发现所有USB接口都无法焊接。拆开包装一看:焊盘上全是绿油!
查了一圈才发现:他在OutJob中误将Top Solder Mask映射到了Mechanical 2,而这一层恰好是空的。结果生成的.GTS是个空文件,工厂默认全层盖绿油。
如果当时做了CAM校验,立刻就能发现.GTS层一片空白,根本不用等到板子回来。
✅ 后续改进措施:
- 制定《Gerber输出Checklist》
- 新人必须通过CAM校验考试才能独立输出
- 团队共享标准化OutJob模板
工程师必备的最佳实践清单
别再凭感觉操作了,照着这份清单做,一次成功不是梦:
✅ 输出前准备
- [ ] DRC无错误 & 警告已处理
- [ ] 更新版本号、日期、修订标记
- [ ] 清理测试走线、隐藏字符
- [ ] 备份当前工程状态(推荐Git Commit)
✅ 输出配置
- [ ] 使用统一模板
.OutJob - [ ] 单位设为 mm,格式 4:6
- [ ] 所有必需层均已勾选并正确映射
- [ ] 钻孔文件同步生成
✅ 输出后校验
- [ ] 用CAM Editor打开全部文件
- [ ] 文件数量齐全,命名规范
- [ ] 分层检查图形完整性
- [ ] 测量关键尺寸符合工艺要求
- [ ] 输出PDF报告归档备查
✅ 交付打包
- [ ] ZIP压缩,命名清晰:
Project_REV1_20250405_Gerber.zip - [ ] 附带README.txt,包含:
- 层数、板材类型(如FR-4)、板厚
- 表面处理(HASL / ENIG / Immersion Gold)
- 最小线宽/间距
- 是否需要阻抗控制、背钻等特殊工艺
写在最后:优秀的硬件工程师,赢在细节
很多初学者认为:“只要布通线,设计就完成了。”
其实不然。
真正的设计闭环,是从原理图到实物的全过程可控。
而Gerber输出,正是连接虚拟设计与物理世界的“翻译器”。你写的每一个焊盘、每一根走线,都要通过它被精准还原。
掌握这套“输出+校验”组合拳,不仅能大幅降低打样失败率,还能建立起专业、可追溯的工作习惯。
下次当你按下“Generate”按钮时,请记住:
这不是结束,而是制造旅程的开始。
只有经过CAM校验的数据,才配被称为“可制造的设计”。
如果你也在使用Altium Designer,不妨现在就打开一个旧项目,试试用CAM Editor回读一遍你曾经输出过的Gerber——说不定会有意想不到的发现。
欢迎在评论区分享你的“惊险时刻”或高效技巧,我们一起把硬件开发做得更扎实。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考