PCB设计到生产:Gerber文件、钻孔文件与BOM输出全流程详解
2026/8/4 9:10:29 网站建设 项目流程

1. 项目概述:从设计到生产的最后一公里

画了这么多年的板子,从最初的懵懂到现在的轻车熟路,我越来越深刻地体会到,PCB设计的终点远不是软件里那个漂亮的3D预览图。真正的考验,往往在点击“发送给板厂”之前的那一步——生产文件的整理与输出。这个过程,业内戏称为“设计到生产的最后一公里”,也是新手最容易翻车、老手也可能阴沟里翻船的地方。你可能在Altium Designer、KiCad或者嘉立创EDA里把布局布线做得尽善尽美,DRC检查全绿,但如果在输出Gerber、钻孔、BOM这些生产文件时出了岔子,轻则导致板厂工程人员反复打电话确认,耽误交期;重则直接做出一批无法使用的废板,时间和金钱双双打水漂。今天,我就结合自己踩过的无数个坑,系统性地梳理一下PCB生产文件整理及输出的完整流程、核心要点和那些手册上不会写的细节。无论你是参加智能车竞赛的学生,还是正在开发自己第一个硬件产品的工程师,掌握这套“出厂设置”,都能让你和板厂的沟通更顺畅,让你的设计意图被准确无误地实现。

2. 核心文件清单与作用解析

在动手输出任何文件之前,我们必须清楚板厂生产一块电路板到底需要什么。这不是简单地把PCB文件发过去就完事了。现代PCB制造是一个高度标准化、流程化的过程,它依赖的是一套被称为“Gerber”的通用语言,以及一系列配套的辅助文件。

2.1 Gerber文件:电路板的“标准照片”

Gerber文件是PCB生产的核心,它本质上是一系列用矢量格式描述每一层物理图形的文件。你可以把它理解为给板厂的一套“标准工程图纸”。每一层都需要单独输出一个Gerber文件。

必需输出的Gerber层通常包括:

  • 顶层丝印层 (Top Overlay, .GTO):标识元器件位置、型号、极性的白色文字和图形。
  • 顶层阻焊层 (Top Solder Mask, .GTS):定义顶层哪些区域需要开窗(露出铜皮以便焊接),哪些区域需要覆盖绿油。
  • 顶层信号层 (Top Layer, .GTL):描述顶层走线和铜皮的形状。
  • 底层信号层 (Bottom Layer, .GBL):描述底层走线和铜皮的形状。
  • 底层阻焊层 (Bottom Solder Mask, .GBS):定义底层阻焊开窗。
  • 底层丝印层 (Bottom Overlay, .GBO):底层丝印(如果有的话)。
  • 内部信号层 (Mid Layer 1, 2... .G1, .G2):对于多层板,每一内层都需要输出。
  • 内部电源/地层 (Internal Plane 1, 2... .GP1, .GP2):负片设计的电源地层,输出方式与信号层有区别,需特别注意。
  • 机械层/板框层 (Mechanical 1 / Board Outline, .GM1 或 .GKO)这是最重要的层之一,它定义了PCB的实际外形、开槽、镂空等机械结构。通常用Keep-Out Layer或专门的机械层来绘制板框。
  • 钻孔图层 (Drill Drawing, .GD1):以图形方式标示钻孔的位置和大小。
  • 钻孔表 (Drill Table, 通常含在.GD1中或单独文本):列出所有钻孔的尺寸和数量。

注意:阻焊层(Solder Mask)的数据是“反”的。在阻焊层Gerber中,有图形(线或焊盘)的地方表示“开窗”(不盖油,露出铜),空白区域表示“盖油”。这一点和信号层(有图形表示有铜)正好相反,新手极易混淆。

2.2 钻孔文件:告诉机器在哪里打孔

仅有钻孔图形是不够的,数控钻床需要精确的坐标数据。这就是钻孔文件(NC Drill Files)的作用。通常输出两个文件:

  • .TXT 或 .DRL 文件:包含所有钻孔的坐标、孔径和孔属性(通孔、盲埋孔)。
  • .DRR 文件:钻孔报告文件,是对.TXT文件的文字性总结,便于人工核对。

关键点:必须确保Gerber文件和钻孔文件使用相同的坐标原点和单位(通常都设为“绝对原点”、“毫米”或“英寸”),否则孔位会对不上,板子直接报废。

2.3 物料清单:装配的“采购单”和“地图”

BOM(Bill of Materials)是元器件采购和PCBA(贴片组装)的依据。一份清晰的BOM能极大提高采购和装配效率。

一个专业的BOM表应包含:

  1. 位号 (Designator):如R1, C2, U3。
  2. 物料编码/型号 (Part Number):准确、唯一的元器件型号,如“RC0603FR-0710KL”。
  3. 描述 (Description):中文或英文的详细描述,如“贴片电阻 10KΩ 1% 0603”。
  4. 封装 (Package):如“0603”、“SOP-8”、“QFN-48”。这对采购和核对物料至关重要。
  5. 数量 (Quantity):该型号在本板上的总用量。
  6. 供应商/制造商 (Supplier/Manufacturer):建议填写首选供应商或制造商名称,如“Murata”、“Texas Instruments”。
  7. 备注 (Note):特殊要求,如“需要特定批次”、“与U5配对使用”等。

交互式BOM的妙用:现在很多EDA软件(如KiCad、立创EDA)支持生成交互式BOM(HTML格式)。这种BOM在网页中显示,点击位号可以高亮PCB上的对应位置,对于后期调试、维修和核对来说简直是神器,强烈建议和传统Excel BOM一起提供给生产和维修团队。

2.4 装配图与坐标文件:贴片机的“导航图”

对于需要SMT贴片的板子,还需要提供:

  • 装配图 (Assembly Drawing):通常由顶层/底层丝印层和板框层合成,清晰标注元器件位置和方向。可以在图纸上用箭头特别指出IC的1脚位置、二极管极性等。
  • 贴片坐标文件 (Pick and Place File, .CSV或.TXT):包含每个贴片元器件的位号、中心点坐标(X, Y)、旋转角度、所在板面(Top/Bottom)。这个文件由EDA软件直接导出,是驱动全自动贴片机的核心数据。

2.5 其他可能需要的文件

  • IPC网表文件 (.IPC或.NET):用于板厂进行裸板测试,验证线路连接性与你的设计原理图是否一致。对于复杂板卡,提供此文件可以增加一道质量保障。
  • 制板说明 (Readme.txt 或 工艺要求文档):一个简单的文本文件,写明核心要求,如:
    • 板厚、层数、材质(如FR-4, TG150)。
    • 阻焊、丝印颜色。
    • 表面工艺(有无铅喷锡、沉金、OSP等)。
    • 特殊工艺(如阻抗控制、金手指、半孔模块)。
    • 联系方式,以便板厂工程人员及时沟通。

3. 以Altium Designer为例的实战输出流程

不同EDA软件的输出菜单位置不同,但逻辑相通。这里以最常用的Altium Designer为例,详解每一步操作及其背后的考量。

3.1 输出前的终极检查清单

在点击“输出”按钮前,请务必完成以下检查,我称之为“发射前自检”:

  1. DRC(设计规则检查)全通过:确保没有未连接的网络、间距违规、短路等低级错误。不要忽略任何警告,逐一确认。
  2. 板框层确认:检查机械层(通常是Mechanical 1)或Keep-Out Layer上的板框线是否是一个完全闭合的多边形。可以用“测量”工具检查拐角是否闭合。
  3. 原点设置:将PCB坐标原点(Edit -> Origin -> Set)设置在板框的左下角或某个定位孔上。这能让生成的Gerber坐标整齐,也方便后续的拼版。
  4. 层叠管理确认:检查层叠管理器,确保信号层、平面层的顺序和属性正确无误。
  5. 丝印整理:手动调整丝印位置,确保所有位号、参数清晰可读,不压在焊盘上,方向尽量统一。这是设计师的“面子工程”,却体现了专业度。

3.2 Gerber文件输出详解

执行菜单File -> Fabrication Outputs -> Gerber Files

  1. 通用设置 (General)

    • 单位 (Units):选择“毫米”。虽然行业传统常用“mil”,但公制单位更不易出错,且与机械结构更好匹配。
    • 格式 (Format):选择“2:5”。这表示整数位2位,小数位5位,精度足够高(0.01mil)。2:4或2:5是行业通用标准,能保证精度。
  2. 层设置 (Layers)

    • 点击Plot Layers,选择Used On。软件会自动勾选所有使用到的层。
    • 关键操作:务必手动勾选上“板框层”。在AD中,板框通常画在Mechanical 1Keep-Out Layer。你需要在下拉菜单中,将对应的层(如Mechanical 1)从“未使用”移动到“已使用”,并勾选它。我见过太多人漏掉这一步,导致板厂收到的Gerber没有外形!
    • 镜像层处理:对于底层相关的层(Bottom Layer, Bottom Overlay等),通常不需要勾选“Mirror”(镜像)。Gerber数据本身不区分正反,板厂会根据层名自动处理。
  3. 钻孔制图 (Drill Drawing)

    • 切换到“Drill Drawing”标签页。
    • 勾选“Drill Drawing Plots”下的“Plot all used layer pairs”。
    • “Drill Drawing Symbols”选择“Graphic symbols”通常更直观。确保“Drill Guide”也被勾选。
  4. 光圈设置 (Apertures)

    • 切换到“Apertures”标签页,勾选“Embedded apertures (RS274X)”。这是现代Gerber标准,将光圈表嵌入每个Gerber文件内部,避免了单独提供老旧且易错的.D码文件,强烈推荐
  5. 高级设置 (Advanced)

    • 这里有一个至关重要的设置:“Leading/Trailing Zeroes”。必须选择“Suppress leading zeroes”或“Suppress trailing zeroes”,并确保与后续钻孔文件的设置完全一致!通常选择“Suppress leading zeroes”。如果不一致,会导致坐标整体偏移,灾难性后果。

设置完成后,点击“OK”,Gerber文件(.GTL, .GBL, .GTO, .GTS等)会输出到你指定的目录。

3.3 钻孔文件输出详解

执行菜单File -> Fabrication Outputs -> NC Drill Files

  1. 单位与格式:确保这里的“单位”和“格式”与Gerber输出设置一模一样。例如,都是“毫米”和“2:5”。
  2. 前导/后补零:确保“Leading/Trailing Zeroes”的选择与Gerber设置一模一样。这是最高频的错误点!
  3. 其他设置:通常保持默认即可。点击“OK”生成.DRL和.DRR文件。

3.4 BOM表输出与优化

执行菜单Reports -> Bill of Materials

  1. 列配置:在打开的BOM对话框中,从右侧“All Columns”中将需要的字段(如Description, Manufacturer Part Number, Supplier, Supplier Part Number等)拖到左侧“Grouped Columns”或“Export Options”的列中。合理的分组(如按Value或Part Number)能让BOM更清晰。
  2. 模板应用:AD支持保存BOM模板。你可以配置一个包含公司标准字段的模板,以后一键调用,非常高效。
  3. 导出:选择导出为Excel格式(.xlsx),兼容性最好。务必勾选“Open Exported”,导出的同时打开文件进行人工复核。
  4. 人工复核:这是不可省略的一步!重点检查:
    • 位号是否齐全,有无遗漏。
    • 同值不同封装的器件是否被错误合并(如都是10uF电容,但有0805和1206两种封装)。
    • 供应商料号是否准确、最新。

3.5 坐标文件输出

执行菜单File -> Assembly Outputs -> Generates pick and place files

  • 选择输出格式为CSV。
  • 确认坐标原点和单位正确。
  • 打开生成的CSV文件,检查是否有异常坐标(如超出板框)或旋转角度。

4. 文件输出后的核对与验证

文件生成完毕,工作只完成了一半。接下来的核对才是确保万无一失的关键。

4.1 使用免费查看器进行可视化检查

永远不要相信软件“已输出”的提示。必须用第三方Gerber查看器检查输出结果。推荐使用GC-PrevueGerbv

检查步骤:

  1. 将输出的所有Gerber文件(.gtl, .gbl, .gts, .gbs, .gto, .gbo, .gm1等)和钻孔文件(.drl, .drr)一起拖入查看器。
  2. 逐层叠加检查
    • 打开所有层,检查板框是否出现,位置是否正确。
    • 关闭其他层,只打开顶层阻焊(.gts)和顶层信号(.gtl),检查阻焊开窗是否完全覆盖了所有需要焊接的焊盘,且没有多余的开窗。
    • 同样方法检查底层。
    • 打开钻孔层,检查孔是否与各层的焊盘对齐。特别注意过孔是否被阻焊覆盖(通常应该盖油)。
  3. 丝印检查:单独打开丝印层,检查文字是否清晰、完整,有没有被截断,是否压到了焊盘。

4.2 与板厂工程人员的沟通要点

将核对无误的文件打包(通常命名为“项目名称+版本号+日期.zip”),连同制板说明一起发给板厂。之后,你大概率会收到板厂工程人员(简称“工程”)的确认电话或邮件。高效沟通能节省双方时间:

  1. 主动说明关键信息:在邮件正文或说明文件中,直接写明板厚、层数、材质、表面工艺、颜色、数量、是否要做阻抗控制等。
  2. 确认文件版本:明确告知“请以压缩包内Gerber文件为准,忽略之前可能发送过的任何旧版本PCB源文件”。
  3. 积极回应疑问:工程可能会问“某个槽孔是金属化还是非金属化?”、“这个区域阻焊是开窗吗?”。他们是用专业眼光在帮你避免错误,一定要仔细查看他们指出的位置,并给予明确回复。
  4. 索取并确认工程稿:正规板厂会在生产前提供“工程稿”(通常是PDF),这是根据你的Gerber文件转化成的最终生产图纸。必须花时间仔细核对工程稿!这是阻止错误的最后一道,也是最有效的一道关卡。对照你的原始设计,检查板框、孔径、文字、各层图形是否正确。

5. 高级技巧与常见“巨坑”规避

掌握了基本流程,下面这些经验之谈能让你从“能用”进阶到“专业”。

5.1 处理“负片”电源层

在多层板中,常用负片(Negative)来定义电源和地平面。在负片中,画线或图形表示“无铜”(即挖空),空白区域表示“全铜”。在AD中输出负片层的Gerber时:

  • 在Gerber设置“层”选项中,该负片层会显示为“Plane”。
  • 输出后,在Gerber查看器中,负片层看起来会是“反”的(你画的走线是透明的)。这是正常的!务必在制板说明中注明“第X层为负片电源层”,避免板厂误解。

5.2 邮票孔与V-CUT的绘制

对于拼版或需要板边分离的情况:

  • 邮票孔:用一排小尺寸的焊盘(如0.6mm孔径,1.0mm外径)在板间连接处绘制。在阻焊层,需要对这些焊盘进行开窗(即GTS/GBS层也要有对应图形)。
  • V-CUT:在机械层(板框层)用两条平行的细线(线宽可设为0)标示出V-CUT的中心线。必须在制板说明中明确写出“此处做V-CUT”,并标注V-CUT的深度要求(如板厚的1/3)。

5.3 阻焊桥与阻焊开窗扩大

  • 阻焊桥:对于引脚间距很小的IC(如QFN、SOP),为了防止焊接连锡,需要保留阻焊桥。在AD中,默认情况下,阻焊层(Solder Mask Expansion)是比焊盘稍大一点的(通常大2-4mil)。如果焊盘间距本身很小,这个扩展就会导致阻焊桥消失。此时,需要单独修改该元器件的阻焊扩展规则,将其设为0甚至负值,以强制保留绿油。
  • 开窗扩大:对于需要承载大电流或方便手工焊接的焊盘、测试点,可以手动在阻焊层(GTS/GBS)上放置比焊盘更大的填充(Fill)或区域(Region),以扩大开窗面积。

5.4 文件过大与输出错误的处理

  • 文件太大:如果Gerber文件异常大(几百MB),通常是因为在非信号层(如机械层)放置了大量无用的线段或填充,或者铺铜设置的分辨率过高。检查并清理无用图形,将铺铜的“Smooth”模式从“Arcs”改为“Line”或降低“Grid”值。
  • 导出BOM报错:常见于原理图元件库信息不完整或存在非法字符。检查原理图元件的属性,确保“Designator”和“Comment”等关键字段没有缺失或包含“/”, “\”等特殊字符。
  • 指定器件不导出BOM:对于测试点、螺丝孔等不需要采购的“器件”,可以在原理图中将其“Type”属性修改为“Standard (No BOM)”,这样在导出BOM时它们就会被自动过滤掉。

5.5 建立属于你自己的输出配置文件

在AD中,完成一套完美的Gerber和钻孔输出设置后,可以将其保存为“Output Job File”(.OutJob)。下次新项目,直接加载这个.OutJob文件,一键完成所有输出配置,并可以关联脚本自动执行文件生成和打包,极大提升效率并杜绝人为失误。

输出生产文件,是一个将虚拟设计转化为物理实体的神圣仪式。它要求极致的严谨和耐心。每一次仔细的核对,都是对你自己设计工作的尊重,也是对后续所有生产、装配、调试环节同事的负责。养成一套规范、可重复的文件输出习惯,是硬件工程师从“画图员”走向“设计师”的必经之路。当板厂第一次做你的板子就几乎零疑问,当贴片厂拿到你的坐标文件就能直接上机,这种顺畅感,就是专业能力最好的体现。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询