
1. 项目概述从设计到生产的最后一步画完PCB板看着屏幕上那些精心布局的走线、过孔和元件心里总会涌起一股成就感。但作为硬件工程师我们都清楚这远不是终点。屏幕上的设计文件通常是.PcbDoc或.SchDoc只是我们和EDA软件之间的“内部语言”PCB板厂的生产设备可看不懂这些。它们需要一套标准、通用、无歧义的“工程图纸”这就是Gerber文件。今天我就以Altium Designer其前身Protel DXP的核心功能已集成其中为例把生成Gerber文件这个看似简单、实则暗藏玄机的过程掰开揉碎了讲清楚。这不仅是把设计“扔”给板厂更是确保你的心血能精准无误地变成实物的关键一步。无论你是刚入行的新手还是偶尔需要自己投板的老手希望这篇从原理到实操、再到避坑的完整指南能让你彻底掌握这项核心技能。Gerber文件本质上是一套用矢量坐标描述PCB每一层图形如走线、焊盘、丝印、阻焊开窗等的集合。它遵循RS-274X标准现在基本都是这个增强格式每个文件对应一层。板厂拿到这套文件就能用光绘机一种高精度打印机在菲林上输出每一层的图形再经过一系列复杂的工艺如曝光、蚀刻、钻孔、沉铜等最终制成PCB。这个过程里任何一个文件的错误或设置不当都可能导致整批板子报废。所以生成Gerber不是点几下“OK”就完事的它需要你对PCB的每一层结构、生产工艺有清晰的理解并在软件中进行精确的映射和检查。2. 核心思路与文件结构解析在动手操作之前我们必须先理解我们要输出什么以及为什么这么输出。Gerber文件集不是一个单一文件而是一个完整的“文件包”每个文件都有其特定的使命。理解这个结构是正确设置和后续检查的基础。2.1 Gerber文件集的构成与作用一套完整的、可供生产的Gerber文件集通常包含以下几类文件。我会结合Altium Designer中的层映射关系详细解释每一类1. 线路层 (Copper Layers)这是核心中的核心定义了电气连接。顶层线路 (*.GTL): 对应你设计中的Top Layer。所有顶层的走线、焊盘、覆铜区域都在这里。底层线路 (*.GBL): 对应Bottom Layer。同理所有底层的电气图形。内层线路 (*.G1,*.G2, ...): 如果你的板子是4层、6层或更多层中间的电源层或信号层就是内层。文件命名通常是*.G1第一内层、*.G2第二内层等它们对应设计中的Internal Plane 1,Internal Plane 2或MidLayer 1,MidLayer 2。注意对于负片内电层常用于电源和地在Gerber中通常以“负片”形式输出即文件里描述的是“掏空”的区域反显。这能极大减小文件尺寸但设置和检查时需要特别留意。Altium Designer在输出时可以选择“负片”极性。2. 丝印层 (Silkscreen Layers)这是板子上的白色或其他颜色文字和图形用于标注元件位号、版本号、公司Logo等。顶层丝印 (*.GTO): 对应Top Overlay。所有要在PCB顶层印刷的字符和图形。底层丝印 (*.GBO): 对应Bottom Overlay。通常底层丝印较少且字符需要镜像处理以便从背面观看时是正的。Altium Designer在生成Gerber时会自动处理镜像这是关键优势之一。3. 阻焊层 (Solder Mask Layers)阻焊层就是板子上那层绿色的或其他颜色油漆。它的作用是绝缘防止焊接时焊锡粘连到不该焊的地方。Gerber文件里定义的是“开窗”即哪里不涂阻焊油墨让铜皮露出来以便焊接。顶层阻焊 (*.GTS): 对应Top Solder Mask。文件中的图形就是顶层需要开窗露出焊盘、测试点、大面积散热焊盘的地方。底层阻焊 (*.GBS): 对应Bottom Solder Mask。功能同上。4. 锡膏层/钢网层 (Paste Mask Layers)这个层和SMT贴片工艺相关。它定义了SMT焊盘上需要涂抹锡膏的区域用于制作SMT钢网。顶层锡膏 (*.GTP): 对应Top Paste Mask。底层锡膏 (*.GBP): 对应Bottom Paste Mask。对于双面贴片的板子才需要。实操心得对于纯插件THT板子锡膏层不是必须的。但如果你未来可能转为SMT或者板厂/钢网厂需要它来核对一并输出也无妨。文件很小不占地方。5. 机械层/边框层 (Mechanical/Outline Layer)这个文件定义了PCB的物理外形、内部镂空如安装孔、异形槽、以及V-Cut拼板分板槽的位置。它是板厂进行外形锣削铣边和钻孔的依据。边框层 (*.GKO或*.GM1,*.GM13等): 这里命名比较灵活常用*.GKOKeepOut Layer的缩写或*.GMx机械层。关键在于你必须在设计中用一个明确的层通常是Mechanical 1或Keep-Out Layer画好板子的外框。在输出Gerber时要确保将这个层正确映射。6. 钻孔文件 (Drill Files)这是独立于Gerber但同等重要的文件集。它告诉板厂在哪里钻多大的孔。通常包含两个文件钻孔表 (*.TXT): 一个文本文件列出了所有使用到的钻孔尺寸钻头规格。钻孔图 (*.DRL): 一个类似Gerber的文件遵循Excellon格式用不同的符号标记出每个位置该用哪个规格的钻头。7. 其他可选文件钻孔图绘层 (*.GD1): 将钻孔信息用图形化的方式在Gerber中再呈现一遍便于人工视觉核对。不是生产必需但有助于检查。装配图 (*.Gxx): 有时板厂或客户需要用于指导元件安装。理解了这套“图纸”体系我们就能明白生成Gerber的过程本质上就是一次精确的“图层映射”和“数据导出”过程。接下来我们就进入Altium Designer一步步完成这个映射和导出。3. 详细操作步骤与参数精讲现在我们假设你已经在Altium Designer中完成了一个PCB设计DRC设计规则检查全部通过并且已经用Mechanical 1层这是我的个人习惯用Keep-Out Layer也可以但务必统一绘制好了精确的板框。让我们开始“出图”。3.1 进入Gerber输出设置界面在PCB编辑器界面点击菜单栏的File-Fabrication Outputs-Gerber Files。这个路径直接指向了生产文件输出比旧版DXP的菜单逻辑更清晰。随后会弹出Gerber Setup对话框这个对话框包含了所有核心设置我们按分页逐一详解。3.2 通用设置单位与精度首先进入的是General选项卡。这里的设置是全局性的影响所有输出的Gerber文件。单位 (Units):英寸 (Inches) 英制单位。如果你的PCB设计全程使用的是英制如元件库是mil这里就选Inches。务必保持设计单位与输出单位一致否则坐标会错乱。毫米 (Millimeters) 公制单位。如果设计用的是mm就选这个。如何选择 我个人的建议是除非客户或公司有强制规定否则优先使用毫米(mm)。因为绝大多数板厂的生产设备和工艺参数都是以毫米为基准的使用毫米可以减少一次单位换算降低沟通出错的风险。即使你的设计是英制Altium Designer也能很好地处理换算。格式 (Format):这个参数定义了坐标数据的精度格式为X:Y。X代表整数部分的位数Y代表小数部分的位数。2:3: 表示±999.999mil。这是较低的精度。2:4: 表示±999.9999mil。2:5: 表示±999.99999mil。这是非常高的精度。3:3(毫米制下常见): 表示±999.999mm。3:4(毫米制下推荐): 表示±999.9999mm。如何选择对于绝大多数PCB包括高密度板选择2:4英制或3:4公制已经完全足够这也是行业最通用的设置。更高的精度如2:5只会让文件体积略微增大但没有任何实际益处。绝对不要使用2:3或3:3对于精细间距的BGA或细小走线精度不足可能导致图形边缘出现舍入误差。重要提示 单位(Units)和格式(Format)一旦设定后续所有层的设置都应基于此。这个设置也会同步到钻孔文件输出中必须保持一致。3.3 图层映射勾选与输出这是最关键的一步在Layers选项卡中完成。你需要决定哪些设计图层需要被输出为Gerber文件。Plot Layers下拉菜单: 选择All On会列出所有层但通常我们选择Used On这样只显示你设计中实际用到的层列表更清晰。勾选需要输出的层:在图层列表里你会看到Top Layer,Bottom Layer,Top Overlay,Bottom Overlay等所有熟悉的层名。勾选原则需要什么就勾选什么。通常你需要勾选所有电气层Top Layer,Bottom Layer,Internal Plane 1...如果你有内层。所有丝印层Top Overlay,Bottom Overlay。所有阻焊层Top Solder Mask,Bottom Solder Mask。所有锡膏层Top Paste Mask,Bottom Paste Mask如果需要。机械/边框层这是最容易出错的地方你必须在列表中找到你画板框的那个层比如Mechanical 1并勾选它。强烈建议在右侧的Mechanical Layers to Add to All Plots部分也把你用作板框的机械层如Mechanical 1勾选上。这能确保板框信息被添加到每一个Gerber文件中作为一层“背景参考”方便板厂对齐各层是防止层间对位错误的重要安全措施。Mirror Layers栏: 这里通常不需要手动勾选任何层进行镜像。对于底层相关的层如Bottom Layer,Bottom OverlayAltium Designer在生成GBL,GBO等文件时会自动处理镜像逻辑。如果你在这里手动勾选反而会导致错误。3.4 钻孔绘制与孔径表切换到Drill Drawing选项卡。这个选项卡用于生成那个可选的、图形化的钻孔参考图。Drill Drawing Plots 勾选Plot all used drill pairs。这会在Gerber中为每一对钻孔层如从顶层钻到底层生成一个钻孔符号图。Drill Guide Plots 功能类似通常也一并勾选。Drill Drawing Symbols: 这里选择钻孔符号的样式选Graphic symbols图形符号如十字、方形或Characters字符都可以看个人喜好。Size可以设置得小一点比如50mil以免符号太大遮盖周围走线。Drill Drawing Options: 务必勾选Mirror plots这样底层的钻孔图才会被正确镜像。切换到Apertures选项卡。光圈表是Gerber文件的“笔尖库”定义了绘制各种图形线、焊盘、填充所用的“笔”的形状和大小。现代Altium Designer默认勾选Embedded apertures (RS274X)这是最优选择。这意味着光圈定义会嵌入到每个Gerber文件内部RS274X标准支持你不需要再单独生成一个麻烦的.APT光圈表文件。板厂的光绘机可以直接读取。请确保这个选项是勾选的不要动它。3.5 高级设置与最终生成切换到Advanced选项卡。这里有一些高级设置大部分保持默认即可。Film Size: 胶片尺寸默认10000 x 8000 mil足够大不用改。Aperture Matching Tolerances: 光圈匹配容差默认即可。Batch Mode: 选择Separate file per layer这是标准做法每层一个独立文件。Leading/Trailing Zeroes: 坐标数据中前导/后补零的设置。保持默认的Suppress leading zeroes抑制前导零这是RS274X的通用格式。Plotter Type: 选择Gerber RS274X这是绝对的标准。Other: 建议勾选Use software arcs使用软件圆弧生成更光滑的弧形走线勾选Optimize change location commands可以减小文件体积。所有设置检查无误后点击OK按钮。Altium Designer会开始处理数据并在你的项目目录下自动生成一个Project Outputs for ...的文件夹里面就存放着新鲜出炉的所有Gerber文件.GTL,.GBL,.GTO等以及一个Generated文件夹里面是CAMtastic文档.Cam。这个.Cam文件是Altium Designer自带的CAM工具用于查看这些Gerber的临时工程文件发给板厂时不需要这个.Cam文件只需要那些.gtl, .gbl, .gko等文件。4. 生成钻孔文件Gerber文件处理的是“面”上的图形孔的信息还需要单独输出。回到菜单栏File-Fabrication Outputs-NC Drill Files。弹出的NC Drill Setup对话框设置与Gerber设置类似Units和Format:必须与刚才Gerber的设置完全一致例如Gerber用了Millimeters和3:4这里也选Millimeters和3:4。Leading/Trailing Zeroes: 同样选择Suppress leading zeroes。Coordinate Positions: 选择Reference to absolute origin相对于绝对原点。其他选项通常默认即可。 点击OK会再次弹出Import Drill Data对话框继续点OK。这样就会在同一个输出文件夹里生成.TXT钻孔表和.DRL钻孔数据文件。5. 文件打包与交付前的终极检查文件生成后直接压缩打包发给板厂就完事了吗大错特错有经验的工程师一定会做最后一步也是最关键的一步用第三方Gerber查看器检查。为什么不用Altium Designer自己看因为你要模拟板厂工程师的视角他们用的就是独立的CAM软件。你自己用设计软件看有些潜在问题如图层映射错误、极性错误是发现不了的。我强烈推荐并使用多年的免费软件是 ViewMate 或 GC-Prevue 。这里以GC-Prevue为例说明检查流程导入所有文件 打开GC-Prevue将输出文件夹里的所有.GTL,.GBL,.GTS,.GBS,.GTO,.GBO,.GKO,.TXT,.DRL等文件全部拖入软件窗口。分层查看与对齐软件会自动识别各层。你可以通过图层列表开关每一层检查图形是否正确。重点检查阻焊层(.GTS/.GBS) 将其设为红色半透明叠加在线路层上。检查是否所有需要焊接的焊盘包括贴片焊盘和插件焊盘孔环都有开窗即红色区域是否准确露出铜皮。特别留意邮票孔、测试点、散热过孔它们是否需要开窗。检查丝印层(.GTO/.GBO) 检查字符是否清晰、有无重叠、是否压到了焊盘这是DFM问题会影响焊接。底层的字符查看时应该是镜像的。检查机械层(.GKO): 确认板框外形、内部开槽、安装孔是否正确。叠加钻孔层(.DRL) 将钻孔层以符号形式显示叠加在所有层上。检查每一个孔是否都出现在正确的位置特别是非金属化孔NPTH和金属化孔PTH是否区分正确在.TXT文件中可以看到不同的钻孔符号。检查负片层如果有 如果你的内电层是以负片形式输出的在查看器中会显示为“负片”属性。你需要确认负片上的“掏空”区域即Flash是否正确电源和地网络是否被正确隔离。测量与核对 使用软件的测量工具随机抽查几个关键尺寸如板框大小、BGA焊盘间距、电源走线宽度等与你的设计意图进行核对。只有经过这一步第三方软件的“冷酷审视”确认所有层都正确无误、对齐完美后你才能放心地将这个压缩包发送给PCB板厂。通常你还需要附上一个简单的README.txt说明文件注明板厚、层数、表面工艺如沉金、喷锡、阻焊/丝印颜色、最小线宽/线距等关键工艺要求。6. 常见问题、避坑指南与进阶技巧即使按照步骤操作在实际项目中还是会遇到各种问题。下面是我总结的一些高频“坑点”和解决技巧。6.1 文件生成失败或报错问题 点击生成Gerber或钻孔文件时软件报错或卡死。排查检查DRC 首先确保你的PCB设计通过了完整的DRC检查。未解决的DRC错误有时会导致输出异常。检查原点 确认PCB的绝对原点Edit-Origin-Set设置在一个合理的位置比如板框的左下角。混乱的原点可能导致坐标溢出。检查非标准元素 是否有从其他软件导入的异常图形、未正确转换的字体、或者极其复杂的自定义焊盘尝试简化或重建它们。重启软件 有时Altium Designer内部数据缓存出错重启软件能解决很多玄学问题。6.2 板厂反馈“文件无法识别”或“层不对”问题 板厂工程师打电话来说文件打不开或者打开的图形乱七八糟。排查与解决单位/格式不匹配 这是最常见的原因。100%确认你发给板厂的.TXT文件里记录的格式在文件开头几行与Gerber文件的实际格式一致。例如Gerber是INCH, 2.4钻孔文件也必须是INCH, 2.4。缺少板框层 板厂找不到定义外形的层。确认你的.GKO或.GM1文件存在且内容正确。最好的习惯是在输出Gerber的Layers选项卡把你用作板框的机械层如Mechanical 1勾选到Mechanical Layers to Add to All Plots中。文件命名歧义 虽然.GTL等是通用扩展名但有些老式CAM软件对文件名有要求。一个稳妥的做法是在打包的文件名上注明层别例如XXX_TOP_COPPER.GTL。在README.txt里再详细说明一遍。负片层极性错误 如果你用了负片内电层在查看器中检查其极性是否为“Negative”。如果板厂反映电源短路很可能就是负片层的Flash热焊盘没做好导致本该隔离的区域连在了一起。6.3 生产出来的板子与设计不符问题 板子回来了发现丝印缺失、阻焊覆盖焊盘、或者孔位不对。根源分析与预防丝印上焊盘 这是DFM可制造性设计问题但在Gerber阶段可以检查。在第三方查看器中将丝印层和阻焊层或线路层叠加很容易发现字符是否压到了焊盘开窗区域。设计时就要使用软件的丝印DFM检查规则。阻焊未开窗 焊盘被绿油盖住。原因是在PCB设计中该焊盘的Solder Mask Expansion规则设置异常例如被设为负值或非常小或者在器件封装里焊盘的阻焊层本身就没有正确绘制。必须在生成Gerber后于查看器中重点检查阻焊层孔非金属化NPTH错误 安装孔需要是非金属化的但如果你的钻孔文件中没有区分或者.TXT里NPTH孔的符号定义错误板厂可能会把它做成金属化孔。在Altium Designer的钻孔输出设置中确保Plated金属化和Non-Plated非金属化孔被正确区分和标注。在.TXT文件中你会看到用不同的刀具号T-code来区分它们。6.4 进阶技巧与效率提升使用输出作业文件 (Output Job Files, *.OutJob) 对于经常需要投板的设计每次都手动设置Gerber和钻孔输出太麻烦。Altium Designer的Output Job文件是终极解决方案。你可以在File-New-Output Job File中创建一个.OutJob文件。在这个文件里你可以像搭积木一样预配置好Gerber输出、钻孔输出、PDF打印、BOM表导出等所有任务。配置一次永久使用。下次需要出图时只需打开这个.OutJob文件一键运行所有任务所有文件按预设规则生成到指定文件夹极大提升效率并杜绝人为设置错误。创建板厂专用的CAM配置文件 一些大型或熟悉的板厂可能会提供他们优化过的CAM配置文件.cam或.ini。你可以将这个文件导入Altium Designer的CAMtastic环境或者按照其要求调整你的Gerber输出设置。这能更好地适配他们的工艺参数提高一次成功率。在机械层添加工艺说明 除了板框你还可以在另一个机械层例如Mechanical 2上用文字和图形直接标注一些关键工艺要求比如“板厚1.6mm”、“沉金工艺”、“V-Cut分板”等并将此层也输出到Gerber。这为板厂工程师提供了最直观的参考。生成Gerber文件是硬件工程师将虚拟设计转化为物理实体的“临门一脚”。这个过程融合了对EDA软件的熟练操作、对PCB工艺的深刻理解以及严谨细致的工匠精神。它没有太多高深的算法却要求极致的准确和周全。每一次成功的投板都始于一套正确、清晰的Gerber文件。希望这份超详细的指南能帮你扫清这个环节的所有疑虑让你每次点击“生成”时都充满信心静待佳板归来。