一次投板成功的秘密:Altium Designer 23中Gerber输出参数深度实战指南
你有没有遇到过这样的情况?
花了几天时间精心设计的PCB,DRC全过、3D视图完美,信心满满地导出Gerber发给工厂——结果三天后收到回复:“顶层阻焊全部开了”“坐标偏移0.1英寸”“缺钻孔文件”。轻则返工延期,重则整单报废,成本动辄几千上万。
问题往往不出在原理图或布局布线,而是在最后一步的制造文件输出。尤其是对“ad导出gerber文件教程”一知半解的新手来说,一个单位选错、一层漏映射,就可能让前期所有努力付诸东流。
本文不讲花哨理论,只聚焦一个目标:让你在 Altium Designer 23 中,一次性正确输出符合主流PCB厂要求的标准化 Gerber 文件。我们将从底层机制到实战配置,逐层拆解那些容易被忽略却致命的关键参数,帮你避开90%以上的常见坑。
为什么是 Gerber?它到底干了什么?
先别急着点【File】→【Fabrication Outputs】,我们得搞清楚:Gerber 到底是什么?为什么非它不可?
简单说,Gerber 就是 PCB 的“施工图纸”。你的.PcbDoc文件只能被 AD 打开,但工厂的光绘机、钻孔机、AOI检测设备不认识这个格式。你需要把每一层的图形信息翻译成它们能读懂的语言——这就是 Gerber。
目前行业通用的是RS-274X 扩展格式,它是纯文本的二维矢量指令集,比如:
G04 This is Top Layer* %FSLAX25Y25*% %MOMM*% %ADD10C,0.25*% D10* X100000Y150000D02* X105000Y150000D01*上面这段代码的意思是:定义一个直径0.25mm的圆形 aperture(D10),然后从 (100,150) 移动到 (105,150) 画一条线。
看到没?这根本不是图像,而是一系列“移动+绘制”的命令流。所以一旦单位、精度、原点设置出错,整个结构就会变形甚至错位。
🔥 关键提醒:如果你把单位误设为毫米而非英寸,所有尺寸会缩小25.4倍!一块5cm长的板子,在系统里变成不到2mm,工厂直接拒收。
AD23中的Gerber输出入口变了?别慌,这是新流程
Altium Designer 23 对制造输出做了重构,原来的“Gerber Setup”对话框已被整合进更智能的向导式流程。
正确路径如下:
【File】 → 【Fabrication Outputs】 → 【Gerber/X2】点击后会启动CAMtastic Output Generator向导,分三步完成输出:
1. 图层映射(Layer Mapping)
2. 通用设置(General Settings)
3. 高级选项(Advanced Options)
别小看这个顺序——每一步都藏着可能导致生产失败的陷阱。
第一步:图层映射决定“谁该出场”
很多工程师以为只要勾上Top Layer就行,其实不然。图层映射的本质,是你和工厂之间的“术语约定”。你叫“Mechanical 1”,工厂可不知道那是板框还是装配指示。
哪些层必须输出?怎么命名最稳妥?
下面这张表是我跟多家国内头部PCB厂技术对接后总结的标准配置,适用于嘉立创、捷配、华秋等主流平台:
| AD图层名 | 输出文件名建议 | 后缀 | 是否必选 | 说明 |
|---|---|---|---|---|
| Top Layer | TOP_COPPER.gtl | .gtl | ✅ 必选 | 顶层走线 |
| Bottom Layer | BOT_COPPER.gbl | .gbl | ✅ 必选 | 底层走线 |
| Top Solder Mask | TOP_SMD.gts | .gts | ✅ 必选 | 顶层开窗 |
| Bottom Solder Mask | BOT_SMD.gbs | .gbs | ✅ 必选 | 底层开窗 |
| Top Silkscreen | TOP_SILK.gto | .gto | ⚠️ 按需 | 建议避让焊盘 |
| Mechanical 1 | BOARD_OUTLINE.gm1 | .gm1 | ✅ 必选 | 板框轮廓 |
| Drill Drawing | DRILL_MAP.drl | .drl | ✅ 建议 | 孔位参考图 |
💡 实战技巧:命名时尽量使用大写+下划线,避免空格和中文。有些老式CAM软件对特殊字符支持差,容易解析失败。
特别注意两个高频错误:
忘记输出阻焊层
很多人只关注铜皮和丝印,觉得“不开窗也没事”。但如果不输出.gts/.gbs,工厂默认整面覆盖绿油,所有焊盘都无法焊接!机械层用途混乱
Mechanical 1~16 可以自由分配,但建议固定用途:
- Mech1:板框(Keep-Out Layer也可替代)
- Mech2:装配指引
- Mech13:V-CUT线
- Mech15:禁布区标注
统一规范后,团队协作和外包打样都不会乱套。
第二步:通用设置——精度与单位的生命线
这一步决定了Gerber文件的数据表达方式,也是最容易出问题的地方。
单位选英寸还是毫米?
答案很明确:Inches(英寸)
虽然AD允许选择mm,但绝大多数PCB厂的默认解析引擎是以inch为基础的。特别是美国Ucamco认证的光绘系统,其标准精度是0.0001 inch(约2.54μm)。
如果你用mm输出,例如1.0 mm写成0.03937 inch,浮点舍入误差可能导致关键间距偏差几个微米——这对高速信号或细间距BGA可能是致命的。
✅ 推荐设置:
-Units: Inches
-Format: 2:5
-Zero Suppression: Trailing
解释一下2:5是什么意思:整数部分最多2位,小数部分保留5位。也就是说最大支持99.99999 inch的坐标范围,最小分辨率达0.00001 inch ≈0.254μm,完全满足HDI板需求。
对比一下不同格式的影响:
| Format | 最小精度 | 是否推荐 | 适用场景 |
|---|---|---|---|
| 2:3 | 1 mil (25.4μm) | ❌ 不推荐 | 仅限低密度板 |
| 2:4 | 0.1 mil (2.54μm) | ✅ 可接受 | 普通四层板 |
| 2:5 | 0.01 mil (0.254μm) | ✅ 强烈推荐 | 高速/高密/BGA |
🛠 调试经验:某客户曾因使用2:3格式导致0.3mm间距QFN引脚合并,最终短路烧板。换成2:5后问题消失。
层极性:正片 vs 负片,你真的懂吗?
大多数人把所有层都设为Positive(正片),这没错——但对于电源平面层(Power Plane),强烈建议使用Negative(负片)。
什么是负片?
简单说,正片是“有啥画啥”,负片是“没画的地方才是铜”。
比如你在内电层铺了一个完整的GND平面,如果用正片输出,Gerber需要记录整个板子的填充区域,数据量巨大;而用负片输出,只需要画出隔离环(Clearance)和连接条(Tie Bar),其他地方自动视为接地。
好处显而易见:
- 文件体积减少80%以上
- 光绘机处理更快,降低出错概率
- 更适合多层板的大面积铺铜
📌 使用条件:必须确保你在PCB编辑器中已正确设置内电层为“Split/Mixed Plane”模式,并应用了适当的网络连接规则。
第三步:高级选项——专业度的分水岭
到这里,很多人觉得“差不多可以生成了”,但真正体现工程师水平的,恰恰是这些不起眼的细节设置。
原点设置:别让拼板偏了0.1寸
你有没有遇到过拼板后阵列错位的问题?很可能就是因为原点没设对。
AD提供三种原点选项:
- Absolute Origin(绝对原点)
- Grid Origin(栅格原点)
- User Defined(自定义原点)
强烈建议选择 User Defined,并将原点设为板框左下角坐标。
为什么?
- Absolute Origin 固定为(0,0),但如果板子不在原点附近,坐标会出现负值,部分设备不友好。
- Grid Origin 依赖当前栅格设置,若未对齐板框,极易产生亚mil级偏移。
- User Defined 完全可控,尤其适合拼板、异形板、带定位孔的设计。
操作方法:
1. 在PCB中测量板卡左下角实际坐标(如 X=1.2in, Y=0.8in)
2. 在Gerber输出设置中选择User Defined Origin
3. 输入对应数值
这样无论单板还是阵列,坐标基准始终一致。
文件名要不要带图层名?
勾选 ✔️Include Layer Name in File Name
别嫌名字长,TopLayer.gtl比G001.gtl明确得多。尤其是在交付多个版本或复杂项目时,清晰的命名能让工厂快速识别,减少沟通成本。
钻孔文件必须独立生成!
务必勾选 ✔️Generate Separate Drill Files
Gerber本身不包含钻孔坐标,它只是图形层。真正的钻孔数据要靠NC Drill 文件(.drl)来传递。
这个文件包含了:
- 孔径列表(Tool List)
- 每种孔的位置(X/Y坐标)
- 镀孔/非镀孔标识
- 埋盲孔信息(如有)
没有它,CNC钻床无法工作。而且现在很多工厂要求同时上传.drl和.gbrjob(Job文件),用于自动化导入。
实战流程:从设计完成到打包交付
现在我们把前面的知识串起来,走一遍完整的输出流程。
✅ 标准化操作 checklist:
跑完DRC
确保“No Errors, No Warnings”或至少无严重违规。检查层堆栈与物理结构
【Design】→【Layer Stack Manager】确认层数、材料、厚度符合要求。打开Gerber向导
【File】→【Fabrication Outputs】→【Gerber/X2】Layer Mapping
- 启用 Top/Bottom Layer
- 添加 Solder Mask 和 Silkscreen
- 映射 Mechanical 1 为 Board Outline
- 删除无关机械层(如临时标记层)General Settings
- Units: Inches
- Format: 2:5
- Zero Suppression: Trailing
- Top/Bottom Layer Polarity: Positive
- Power Plane(如有): NegativeAdvanced Options
- Origin: User Defined → 设为板卡左下角
- Include Layer Name: ✔️
- Separate Drill Files: ✔️
- Embed Netlist Info: ✖️(普通项目无需开启)预览每一层
点击“View”按钮,逐层查看:
- 铜皮是否完整?
- 阻焊开窗是否匹配焊盘?
- 丝印有没有压到测试点?生成并打包
- 输出到专用文件夹
- 将Gerber文件 + .drl 文件压缩为.zip
- 附上README.txt,注明:板层数:4层 板厚:1.6mm 表面工艺:沉金 阻抗控制:否 特殊说明:V-CUT在Mech13层
常见问题急救手册:这些问题你一定遇到过
❓ 工厂说“顶层阻焊全开”?
➡️ 原因:.gts文件缺失或为空
🔍 检查项:
- 是否启用了 Top Solder Mask 层?
- 是否设置了正确的阻焊扩展(Paste Mask Expansion)?
- DRC中是否有“Solder Mask Problems”警告?
🔧 解决方案:
进入【Design】→【Rules】→【Mask】→【Solder Mask Expansion】,确保规则启用且值合理(通常0~2mil)。
❓ 丝印跑到焊盘上了怎么办?
➡️ 原因:设计阶段未做丝印避让
🛠 预防措施:
在规则中添加:
[Silk to Solder Clearance] Condition: IsText && OnTopOverlay Minimum Clearance: 8mil并在输出前手动复查关键区域(如QFP、连接器)。
❓ 坐标整体偏移0.1 inch?
➡️ 根本原因:原点设置错误
🔎 排查步骤:
1. 查看Gerber文件头部%MOIN*%—— 表示单位是inch
2. 查看坐标起始值,是否出现异常负数?
3. 回到AD,确认Origin设置为 User Defined 并正确输入
写在最后:Gerber不会消失,但它正在进化
我知道你在想什么:“不是说 ODB++ 和 IPC-2581 才是未来吗?还学Gerber干嘛?”
没错,集成式数据格式确实更强大,能封装网表、物料、装配、测试等全部信息。但在现实中,全球超过80%的中小批量订单仍在使用Gerber,尤其在国内供应链体系中,它是事实上的标准。
更重要的是,理解Gerber的生成逻辑,本质上是在理解PCB制造的底层语言。即使将来全面转向IPC-2581,你也需要知道“哪一层对应哪个功能”“坐标如何定义”“极性如何影响数据量”。
所以,请认真对待每一次Gerber输出。它不只是一个导出动作,而是你作为硬件工程师向世界交付作品的庄严仪式。
下次当你按下“Generate”按钮时,不妨多花两分钟检查一遍设置。也许正是这两个分钟,避免了一次万元级的打样损失。
如果你在实际操作中遇到了其他奇怪问题,欢迎在评论区留言,我们一起排查解决。