news 2026/9/10 11:58:51

Altium Designer多层板:Gerber格式快速理解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Altium Designer多层板:Gerber格式快速理解

Altium Designer多层板设计落地实战:手把手教你搞懂Gerber输出核心逻辑

你有没有遇到过这样的情况?
在Altium Designer里辛辛苦苦画完一块6层板,信号完整性调得漂漂亮亮,电源平面分割也井然有序——结果打样回来一看,绿油盖住了焊盘、内电层没做出来、钻孔位置偏了半个毫米……

别急,问题很可能不出在你的布局布线,而是出在那个看似简单却暗藏玄机的环节——Gerber文件导出

很多工程师把PCB设计等同于“画完图就结束”,但真正决定“能不能造出来”的,其实是从AD到工厂之间的这一步:制造数据的准确传递。而其中最关键的,就是Gerber格式的正确生成。

今天我们就来彻底拆解这个让无数人踩坑的环节:不讲虚的,只聊你在实际工作中一定会用到的核心逻辑、关键设置和避坑指南。目标只有一个——让你下次发给工厂的资料,一次就过。


为什么Gerber这么重要?它到底是什么?

我们先抛开软件操作,回到本质问题:PCB厂是怎么知道你要做什么板子的?

答案是:他们不需要懂Altium、也不需要安装任何EDA工具。他们只需要两样东西:
1.每一层铜皮长什么样(走线、焊盘、过孔)
2.每个孔该往哪儿钻、多大直径

而这些信息,就是通过Gerber + Excellon钻孔文件来传达的。

Gerber不是“图片”,而是一套“光绘指令”

很多人误以为Gerber是个图像文件(比如像PNG),其实完全不是。
它是一种数控光绘机可以读懂的命令语言,正式名称叫RS-274X(扩展Gerber),属于ASCII文本格式,内容看起来像这样:

G04 This is Top Layer * %FSLAX44Y44*% %MOMM*% %ADD10C,0.254*% D10* X100Y150D03* X110Y150D01*

这段代码的意思是:“使用直径0.254mm的圆形 aperture,在坐标(100,150)处打一个焊盘,然后画一条线到(110,150)”。

所以你可以理解为:Gerber就是给PCB厂的‘施工蓝图’,但它不是图纸,而是一段自动化设备能执行的脚本。

✅ 正确做法:永远选择RS-274X格式,不要用老式的RS-274D(需要额外提供.apr文件,极易出错)


多层板中哪些层必须输出?一个都不能少!

以常见的6层板为例(L1信号 / L2地 / L3信号 / L4电源 / L5信号 / L6信号),你需要为每一张物理层生成独立的Gerber文件。常见层级包括:

层类型对应Gerber后缀是否必选说明
Top Layer.gtl✅ 必选表层走线与表贴焊盘
Bottom Layer.gbl✅ 必选底层走线
Internal Plane 1 (GND).gp1✅ 必选内电层单独输出!很多人漏掉
Internal Plane 2 (PWR).gp2✅ 必选同上
Top Solder Mask.gts✅ 必选阻焊开窗,决定哪里上锡
Bottom Solder Mask.gbs✅ 必选
Top Paste Mask.gtp⚠️ 可选贴片钢网用,SMT才需要
Bottom Paste Mask.gbp⚠️ 可选
Top Overlay.gto✅ 建议丝印文字/Logo
Bottom Overlay.gbo✅ 建议
Keep-Out Layer.gm16或自定义✅ 推荐定义板框与禁止布线区

📌重点提醒
-内电层(Internal Plane)必须手动勾选输出,否则工厂会当成普通信号层处理,甚至直接忽略!
-阻焊层是负性的:你在AD里看到的是“开窗区域”,Gerber里表示的是“要去除绿油的地方”
-命名规范很重要:建议统一使用标准后缀,避免工厂误解


手把手配置:Altium Designer中的Gerber输出全流程

打开你的项目,按以下步骤一步步走,确保每一项都设对。

第一步:出发前检查清单(别跳过!)

在点“导出”之前,请务必确认以下三项已完成:

1. 运行DRC(Design Rule Check)

路径:Tools → Design Rule Check

重点关注:
-Clearance:所有间距是否满足工艺能力(通常≥6mil)
-Width:最小线宽是否合规
-Plane Connect:内电层连接方式是否正确(辐射状 or 直连)
-Unconnected Pin:有没有悬空网络

💡 小技巧:保存一份针对生产的DRC规则模板,每次直接加载,避免遗漏。

2. 检查层堆栈结构

路径:Design → Layer Stack Manager

确认:
- 层数正确(如6 Layers)
- 板厚合理(如1.6mm)
- 内电层已正确定义(Layer Type = Internal Plane)
- 材料参数(如FR-4)标注清楚

这一部分直接影响阻抗控制和叠层顺序,必须和厂家提前沟通一致。

3. 设置Mask Expansion(阻焊开窗补偿)

路径:Design → Rules → Manufacturing → Solder Mask Expansion

一般设置:
-Global:0~2mil(根据厂家要求调整)
- 若有特殊器件(如QFN底部散热焊盘),可单独添加Rule放宽

⚠️ 设太小 → 绿油覆盖焊盘 → 虚焊
⚠️ 设太大 → 开窗过大 → 锡桥风险


第二步:进入Artwork Setup,逐项配置

路径:File → Fabrication Outputs → Gerber Files

【General】通用设置
参数推荐值说明
UnitsInches国内大多数厂家习惯英寸
FormatRS-274X必须选这个!
Coordinate Precision4:4小数点前后各4位,精度足够
Plot Layers勾选所有相关层特别注意别漏掉Internal Planes

📌 单位争议说明:虽然公制更直观,但国内大部分PCB厂的CAM系统默认解析Inch,强行用mm容易导致缩放误差。稳妥起见,优先用inch。

【Layers】层映射与极性
  • Layer Mapping:保持默认即可
  • Composite Plot:❌ 关闭!否则会把多层合并成一张图,制造端无法识别
  • Mirrored:全部取消勾选(除非你要做镜像贴装)

关于极性(Polarity)
- 绝大多数层是Positive(正性):有图形就有铜
- Solder Mask 是Negative(负性):有图形的地方要去除绿油
- AD会自动处理,无需手动干预,但要通过预览确认

【Apertures】D码嵌入

✅ 必须勾选:Embed aperture information (RS274X)

这是防止制造错误的关键!
如果不勾选,Gerber文件里只会写D10*,而不告诉你D10到底是什么形状尺寸,必须额外附带.apr文件——一旦丢失或版本不匹配,整批板报废。

勾上之后,D码直接写进Gerber,真正做到“单文件交付”。

【Advanced】高级选项
选项推荐设置说明
Leading / Trailing Zero SuppressionTrailing尾部零省略,主流CAM系统兼容性最好
Use Route Length Optimization❌ 关闭不影响输出内容
Include unconnected mid-layer pads✅ 开启保证盲埋孔焊盘不会被优化掉

别忘了钻孔文件!没有它,孔钻不了

路径:File → Fabrication Outputs → NC Drill Files

关键设置:
-Units: Inches(与Gerber一致)
-Format: 2:4(推荐)
-Output Format:Excellon(工业标准)
- ✅ 勾选:Generate drill drawings

输出结果:
-.drl:钻孔坐标文件(核心数据)
-.rep:钻刀报告(列出每种孔径使用的钻头)
-*.dwg/*.pdf:钻孔图(供人工核对)

📌 注意事项:
- 如果有盲孔/埋孔,需在Layer Pairs中正确定义
- 建议启用Plated / Non-Plated区分,并在readme中注明


实战案例复盘:两个经典翻车现场

翻车1:贴片焊盘上了绿油,根本焊不上!

现象:回流焊后发现某些0603电阻虚焊,拆下来一看——焊盘上有绿油!

排查过程
1. 查PCB原图:焊盘正常
2. 查Gerber输出设置:Top Solder Mask层已勾选 ✅
3. 查Mask Expansion规则:全局设为 -1mil ❌(负值意味着缩进)

根本原因
Mask Expansion设成了负数,导致阻焊层比焊盘还小,边缘一圈被绿油覆盖。

解决方案
- 改为0 ~ +2mil
- 输出后用Gerber查看器(如GC-Prevue)比对焊盘与开窗是否对齐


翻车2:电源层没做出来,整板功能异常

现象:板子回来测试,LDO发热严重,测电压发现GND浮动。

怀疑方向
- 布局问题?
- 器件损坏?
- ……

最终发现
内电层(Internal Plane 1)压根没输出!
因为在Gerber设置界面,只勾了Top/Bottom Layer,忘了下面还有Internal Planes……

血泪教训
- 多层板输出时,一定要手动滚动到底部,检查Internal Planes是否勾选
- 输出完成后数文件数量:6层板至少应有10个以上Gerber文件


提升效率:团队协作中的自动化思路

如果你所在的公司频繁发布PCB版本,建议建立标准化输出流程,减少人为失误。

Altium支持脚本化操作(DelphiScript、VBScript等),可用于预设Gerber参数。例如:

procedure SetStandardGerberOutput; var GerberOpts : IPCB_GerberOptions; begin GerberOpts := PCBServer.GerberOptions; GerberOpts.Units := eUnitInch; GerberOpts.Format := eGerberFormat_RS274X; GerberOpts.CoordinatePrecision := eCoordPrecision_4_4; GerberOpts.ZeroSuppression := eTrailingZeros; GerberOpts.EmbedApertures := True; // 自动勾选常用层 GerberOpts.PlotLayer(TopLayer); GerberOpts.PlotLayer(BottomLayer); GerberOpts.PlotLayer(InternalPlane1); GerberOpts.PlotLayer(InternalPlane2); GerberOpts.PlotLayer(TopSolderMask); GerberOpts.PlotLayer(BottomSolderMask); RunProcess('File/FabricationOutputs/GenerateGerberFiles'); end;

把这个脚本集成进企业模板,新人一键调用,就能保证输出一致性。


最后的质检三步法:让每一次输出都靠谱

在把文件打包发给厂家之前,请坚持执行“三查原则”:

1. 查层(Check Layers)

  • 文件数量对不对?
  • 内电层、阻焊层有没有遗漏?
  • 钻孔文件有没有一起输出?

2. 查名(Check Naming)

  • 是否采用统一命名规范?
  • 后缀是否清晰可读?(如.gtl,.gbl,.gts
  • 文件夹是否带有日期和版本号?(例:Gerber_v1.2_20250405

3. 查预览(Check Preview)

  • 用免费工具打开看看:
  • ViewMate (轻量级)
  • GC-Prevue (专业级)
  • 重点看:
  • 顶层和底层走线是否正常
  • 阻焊开窗是否与焊盘匹配
  • 内电层是否有大面积缺失
  • 钻孔分布是否合理

写在最后:打通设计与制造的最后一公里

Gerber输出从来不是一个“点击完成”的任务,而是工程严谨性的体现

你画得再漂亮的PCB,如果输出错了,等于零。
反之,哪怕设计稍有瑕疵,只要制造数据准确,还能在打样后修正。

作为硬件工程师,我们必须意识到:
设计的价值,只有在成功转化为实物时才算实现。

而Gerber,正是那座连接虚拟与现实的桥梁。

下一次当你准备导出Gerber时,不妨停下来问自己三个问题:
1. 我有没有漏掉内电层?
2. 阻焊开窗设置合理吗?
3. 这些文件拿去生产,别人能看懂吗?

只要你每次都认真对待这些问题,你就已经走在了大多数人的前面。

如果你在实际项目中遇到过更奇葩的Gerber事故,欢迎在评论区分享——我们一起排雷,共同成长。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/5 15:00:43

BAAI/bge-m3非结构化数据处理:PDF/Word文本提取集成实战

BAAI/bge-m3非结构化数据处理:PDF/Word文本提取集成实战 1. 引言 1.1 业务场景描述 在构建企业级AI知识库或实现检索增强生成(RAG)系统时,一个关键挑战是如何高效处理大量非结构化文档——如PDF报告、Word合同、技术手册等。这…

作者头像 李华
网站建设 2026/9/10 8:18:54

Unity卡通渲染着色器3步快速入门完整指南

Unity卡通渲染着色器3步快速入门完整指南 【免费下载链接】UnityToonShader Source code for Toon Shader tutorial for Unity. Has specular, rim lighting, and can cast and receive shadows. 项目地址: https://gitcode.com/gh_mirrors/un/UnityToonShader 你是否曾…

作者头像 李华
网站建设 2026/8/21 17:27:05

NewBie-image-Exp0.1已知Bug修复清单:浮点索引等问题解决方案

NewBie-image-Exp0.1已知Bug修复清单:浮点索引等问题解决方案 1. 背景与问题概述 NewBie-image-Exp0.1 是一个专注于高质量动漫图像生成的开源实验性项目,基于 Next-DiT 架构构建,参数量达 3.5B。该项目在社区中迅速获得关注,因…

作者头像 李华
网站建设 2026/8/27 21:41:34

Meta-Llama-3-8B-Instruct性能分析:瓶颈定位

Meta-Llama-3-8B-Instruct性能分析:瓶颈定位 1. 技术背景与问题提出 随着大语言模型在对话系统、代码生成和指令遵循任务中的广泛应用,如何在有限硬件资源下实现高效推理成为工程落地的关键挑战。Meta-Llama-3-8B-Instruct 作为 Llama 3 系列中兼具性能…

作者头像 李华
网站建设 2026/8/28 6:53:12

Netflix Kodi插件技术问题完整解决方案指南

Netflix Kodi插件技术问题完整解决方案指南 【免费下载链接】plugin.video.netflix InputStream based Netflix plugin for Kodi 项目地址: https://gitcode.com/gh_mirrors/pl/plugin.video.netflix 想要在Kodi媒体中心流畅观看Netflix内容,但遇到插件安装失…

作者头像 李华
网站建设 2026/9/8 5:43:20

Qwen3-Reranker-0.6B性能测试:大规模数据集处理

Qwen3-Reranker-0.6B性能测试:大规模数据集处理 1. 引言 随着信息检索和自然语言处理技术的快速发展,文本重排序(Re-ranking)在提升搜索质量、推荐系统精准度以及问答系统响应准确性方面发挥着越来越关键的作用。传统的检索模型…

作者头像 李华