Protel DXP生成Gerber文件全流程详解与实战避坑指南
2026/6/6 13:57:26 网站建设 项目流程

1. 项目概述:从PCB文件到生产文件的必经之路

作为一名在硬件行业摸爬滚打多年的工程师,我深知从原理图到一块实打实的电路板,中间最让人提心吊胆的环节,往往不是设计本身,而是把设计文件交给工厂的那一刻。你可能会想,我辛辛苦苦用Protel DXP(现在更多人用它的升级版Altium Designer)画好的PCB,直接发过去不就行了?为什么老鸟们总是不厌其烦地强调要自己生成Gerber文件再发板?这绝不是“多此一举”,而是用一点前置的繁琐,换来后期巨大的安心和可控性。今天,我就结合自己踩过的坑和积累的经验,把用Protel DXP生成Gerber文件这个看似基础,实则门道不少的操作,掰开揉碎了讲清楚。

简单来说,Gerber文件是PCB生产界的“普通话”或“工程图纸”。你把PCB源文件(.PcbDoc)直接给工厂,相当于把CAD源文件给了建筑队,他们用的软件版本、设计规则理解、甚至显示颜色设置都可能跟你不一样,最后做出来的东西可能“形似神不似”。而Gerber文件是一种光绘机(一种高精度“打印机”)能直接读取的国际标准格式,它精确描述了每一层铜箔、阻焊、丝印的形状和位置。你自己来转换,就等于你亲自把设计意图“翻译”成了工厂毫无歧义的生产指令,确保了“所见即所得”。这个过程,是工程师掌握生产主动权、避免沟通成本和返工风险的关键一步。

2. 核心概念解析:Gerber与PCB各层到底是什么?

在动手操作之前,我们必须先理解几个核心概念。这能让你在设置时心里有底,知道每一个选项背后的意义,而不是机械地跟着教程点下一步。

2.1 Gerber文件的本质:生产的“底片”

你可以把Gerber文件理解成过去照相用的胶片。PCB工厂的光绘机就像一台高级放大机,它读取Gerber文件里的数据,控制激光在感光菲林(胶片)上曝光,最终得到每一层电路图形的“底片”。这些底片随后用于制作PCB生产中的各种网版,比如蚀刻用的干膜、印刷阻焊油墨的网版等。

Gerber主要有两种格式:RS-274-D和RS-274-X。前者是基本格式,需要一个额外的“光圈表”(D-Code文件)来定义图形中各种线条和焊盘的尺寸形状;后者是扩展格式,把光圈信息直接集成在了文件里。Protel DXP生成的是RS-274-X格式,这大大简化了文件管理,避免了因遗漏D码文件导致的错误,是我们推荐使用的格式。

2.2 Protel DXP中的图层世界:不只是画线

很多新手容易混淆软件里的图层和实际生产的层次。Protel DXP的图层管理(Design -> Board Layers & Colors)是个非常强大的工具,但我们需要明确哪些层需要输出给工厂,哪些只是设计辅助。

  1. 信号层(Signal Layers):即我们常说的布线层。Top Layer(顶层)和Bottom Layer(底层)是必须的。对于四层板,还会有Mid-Layer1, Mid-Layer2等中间信号层。这些层上的铜皮走线,最终会变成PCB上的导电通道。

  2. 机械层(Mechanical Layers):这是最容易出问题的地方。机械层通常用来定义板子的物理外形、尺寸、内部镂空槽、定位孔、装配说明等。你需要指定一个(或多个)机械层作为板框层。工厂会根据这一层的数据来切割板子。务必确保板框是一个封闭的轮廓线,通常放在Mechanical 1层。

  3. 阻焊层(Solder Mask Layers):包括Top Solder和Bottom Solder。这是关键!阻焊层定义的是“不开窗”的地方,即覆盖绿油(或其他颜色阻焊漆)的区域。而焊盘和过孔在阻焊层上默认是“负片”显示(即被挖空),让铜皮露出来以便焊接。所以,你看到的阻焊层图形,通常是整片覆盖,上面有很多对应焊盘的小洞。这个层必须提供。

  4. 锡膏防护层(Paste Mask Layers):包括Top Paste和Bottom Paste。这个层只针对表面贴装(SMD)元件,用于制作刷锡膏的钢网。它定义了锡膏应该被印刷到的位置。对于纯插件(THT)的板子,或者你不打算做钢网的话,这个层可以不用提供给PCB厂,但生成Gerber时通常一并输出以备不时之需。

  5. 丝印层(Silkscreen Layers):包括Top Overlay和Bottom Overlay。就是板子上的白色(或其他颜色)文字和图标,用于标注元件位号、版本号、公司Logo等。注意:务必检查丝印不要压在焊盘上,否则可能导致焊接不良。

  6. 钻孔层(Drill Layers):这是独立于图形层的重要数据。它告诉工厂在哪里钻孔,钻多大的孔。Protel DXP会生成两种钻孔文件:钻孔图(Drill Drawing)和钻孔表(Drill Guide),以及最重要的数控钻孔数据(NC Drill Files)。NC Drill文件是必须的。

  7. 禁止布线层(Keep-Out Layer):这个层在设计中用于定义电气布线的边界,但通常不作为生产文件输出。板子的实际外形应该由机械层定义。

重要心得:在输出Gerber前,我强烈建议你通过快捷键L打开图层显示设置,然后仅打开某一层,在PCB视图下反复检查。比如,只打开Top Layer,看看走线和焊盘是否完整;只打开Top Overlay,检查丝印位置和清晰度。这是发现潜在错误(如走线残留、丝印错位)最有效的方法。

3. 生成Gerber文件的详细操作流程

现在我们进入实战环节。假设你已经完成了一个双面PCB的设计,并且进行了DRC(设计规则检查)无误。

3.1 第一步:前期检查与设置

在生成Gerber之前,有两个地方必须检查:

  • 单位统一:确保你的PCB设计是在公制(Metric)还是英制(Imperial)下完成的。通常在原理图库和PCB库阶段就要统一。国内工厂常用公制(毫米),但Gerber文件传统上多用英制(英寸)。这需要你根据习惯和工厂要求确定,但在整个转换过程中必须保持一致
  • 原点设置:编辑 -> 原点 -> 设置。将坐标原点设置在你的板子左下角或某个定位孔上。这能让生成的Gerber文件坐标整齐,方便工厂对齐各层。不设置的话,原点可能在随机位置。

3.2 第二步:启动Gerber输出向导

点击菜单栏:File -> Fabrication Outputs -> Gerber Files。这时会弹出Gerber设置的主对话框,包含多个标签页。

3.3 第三步:通用参数设置(General Tab)

这是精度设定的核心。

  • 单位(Units):选择Inches(英制)。虽然我们设计时可能用毫米,但Gerber标准及多数光绘机处理英制更为普遍,精度设置也更灵活。
  • 格式(Format):选择2:5。这个X:Y格式定义了坐标数据的整数位和小数位。2:5表示坐标值有2位整数和5位小数(以英寸为单位)。这是最高精度之一,允许的最小分辨率为0.00001英寸(即0.254微米),足以满足绝大多数PCB工艺要求。2:4(0.1 mil)精度也很常用,可与工厂确认。

参数选择逻辑:为什么选2:5?这涉及到制造精度。1 mil(千分之一英寸)等于0.0254毫米。2:5格式的小数部分有5位,即可以表示0.00001英寸,约等于0.25微米。而目前主流PCB厂的最小线宽/线距能力在3-4 mil(0.076-0.1mm)左右,钻孔精度在0.1mm左右。2:5的精度远远高于这个要求,确保了数据在转换过程中不会因为精度损失而产生变形。如果板子非常复杂、密度极高,使用高精度格式是安全的。

3.4 第四步:图层选择(Layers Tab)

这是最关键的一步,决定了输出哪些层。勾选Plot Layers下的Used On,然后手动核对和调整。不要完全依赖“Used On”。 对于一个标准双面板,你需要输出的层如下:

需要输出的层对应Protel中的层说明
顶层线路Top Layer必须
底层线路Bottom Layer必须
顶层阻焊Top Solder Mask必须
底层阻焊Bottom Solder Mask必须
顶层丝印Top Overlay必须(如需顶层丝印)
底层丝印Bottom Overlay必须(如需底层丝印)
板外形层例如Mechanical 1必须!用来定义板子切边形状。
多层焊盘Multi-Layer非常重要!这个层包含了所有通孔焊盘(包括插件孔和过孔)在所有层上的形状。输出它,才能确保阻焊层对孔的开窗正确。
钻孔引导层Drill Guide可选,生成钻孔位置示意图。
钻孔图层Drill Drawing可选,生成钻孔尺寸示意图。

注意

  • Keep-Out Layer通常不要勾选输出,除非你明确用它作为板框(不推荐)。
  • 在右侧Mirror Layers(镜像层)列表里,通常全部保持不勾选。除非工厂有特殊要求(例如要求底层视图镜像),否则镜像操作应由光绘机软件完成,我们提供正视图即可。
  • 下方Include unconnected mid-layer pads(包含未连接的中间层焊盘)对于双面板无需考虑。

3.5 第五步:光圈设置(Apertures Tab)

确保Embedded apertures (RS274X)被勾选。如前所述,这会将光圈表嵌入每个Gerber文件,生成RS-274-X格式,避免单独管理D码文件的麻烦。这是默认且推荐的选择。

3.6 第六步:高级设置与钻孔数据

  1. 钻孔绘制图(Drill Drawing Tab):这里设置钻孔示意图的格式。保持Plot all used layer pairs(绘制所有使用的钻孔层对)勾选。在Drill Drawing Symbols(钻孔图符号)下选择一种标记符号(如Size of hole string),并设置合适的符号大小,以便在钻孔图上清晰区分不同孔径。
  2. 钻孔向导(Drill Guide Tab):与钻孔绘图类似,通常保持默认即可。
  3. 其他标签页:如Pad Master等,在绝大多数情况下无需改动,保持默认设置。

生成钻孔文件(NC Drill):这是独立的一步。关闭Gerber设置对话框(点击OK后,软件会生成Gerber文件并打开一个CAMtastic!视图)。然后,你需要再次点击:File -> Fabrication Outputs -> NC Drill Files。 在弹出的NC Drill设置中:

  • 单位(Units)和格式(Format)必须与刚才Gerber设置完全一致(例如 Inches 和 2:5)。
  • 其他选项通常默认即可。
  • 点击OK,会提示你设置钻孔文件的后缀,默认即可,再次点击OK生成。

3.7 第七步:文件生成与查看

完成上述步骤后,软件会在你项目目录下自动创建一个Project Outputs for [项目名]的文件夹,里面包含了所有生成的Gerber文件和一个.cam文件。 每个文件的后缀名都有特定含义,了解它们能帮你快速核对:

Gerber文件后缀对应层
.GTLTop Layer(顶层线路)
.GBLBottom Layer(底层线路)
.GTSTop Solder Mask(顶层阻焊)
.GBSBottom Solder Mask(底层阻焊)
.GTOTop Overlay(顶层丝印)
.GBOBottom Overlay(底层丝印)
.GMx.GMLMechanical Layer x(机械层x,如板框)
.GPTTop Paste Mask(顶层锡膏)
.GPBBottom Paste Mask(底层锡膏)
.TXT.DRRNC Drill File(钻孔报告)
.DRILLNC Drill File(钻孔数据)

重要检查:不要急着发文件!用Protel DXP自带的CAM编辑器(就是生成的.Cam文件)或免费的第三方Gerber查看器(如GC-Prevue、GerbView)打开所有生成的文件,一层层叠加检查。重点看:

  1. 各层对齐是否准确。
  2. 板框层(机械层)是否完整闭合。
  3. 阻焊层是否正确地露出了所有需要焊接的焊盘。
  4. 丝印是否有重叠、缺失或跑到焊盘上。
  5. 钻孔文件是否包含所有孔。

4. 不同板型的输出层配置与实战要点

掌握了双面板的输出,其他层数的板子只是在此基础上的增减。

4.1 四层板(典型叠层:Top - GND - PWR - Bottom)

四层板在双面板输出的图层基础上,需要增加中间层。在Gerber设置的Layers标签页下,你会在Plot Layers列表中看到Mid-Layer1Mid-Layer2(假设你的内层是信号层),或者Internal Plane 1Internal Plane 2(如果内层是负片电源地层)。

  • 对于正片内层(Mid-Layer):像顶层底层一样,直接勾选Mid-Layer1Mid-Layer2即可。它们会生成扩展名为.G1.G2的文件。
  • 对于负片内层(Internal Plane):负片层的输出需要特别注意。负片表示铜皮是默认存在的,图形(划线)表示的是“无铜”的区域(即分割线或隔离带)。在输出Gerber时,软件会自动处理。你只需要勾选对应的Internal Plane层。它会生成如.GP1.GP2的文件(P代表Plane)。
  • 必须输出的层清单(四层板示例)
    • .GTL(Top Layer)
    • .G1(Mid-Layer 1)
    • .G2(Mid-Layer 2)
    • .GBL(Bottom Layer)
    • .GTS,.GBS(阻焊层)
    • .GTO,.GBO(丝印层,如有)
    • .GMx(机械层/板框层)
    • .GPT,.GPB(锡膏层,可选)
    • .TXT&.DRILL(钻孔文件)
    • 以及最重要的:Multi-Layer

4.2 单面板与多层板

  • 单面板:通常只有底层(Bottom Layer)是布线层,顶层(Top Layer)可能只放元件。那么只需要输出.GBL(底层线路)、.GBS(底层阻焊)、.GTO(顶层丝印,标注元件位置)、板框层和钻孔文件。顶层阻焊(.GTS)可能不需要,除非顶层有需要焊接的贴片元件。
  • 六层及以上多层板:原理相同,在Layers标签页中勾选所有使用到的信号层和内电层即可。务必仔细核对层序,最好在图纸上用文字注明层叠结构(如:L1-Top, L2-GND, L3-Signal, L4-Signal, L5-PWR, L6-Bottom),并随Gerber文件一起发给工厂。

4.3 包含盲埋孔的设计

如果设计使用了盲孔(Blind Via,从表层到内层不通到底)或埋孔(Buried Via,内层到内层),Gerber输出流程本身没有变化,因为孔的信息都包含在.DRILL钻孔文件中。但是,你必须在给工厂的制板说明中,清晰、明确地指出盲埋孔的结构,例如:“1-2层盲孔,孔径0.2mm;2-5层埋孔,孔径0.25mm;1-6层通孔,孔径0.3mm”。通常,专业的PCB工厂CAM工程师会根据你的叠层结构和钻孔文件来判断,但明确的文字说明能杜绝误解。

5. 输出后的检查、打包与交付标准

生成文件只是第一步,严格的自我审查是保证一次成功的关键。

5.1 使用CAM编辑器进行交叉检查

Protel DXP生成的.CAM文件是一个很好的检查工具。打开后,你可以:

  • 分层显示/隐藏:单独查看每一层,检查图形完整性。
  • 层叠对齐检查:同时显示所有层,检查不同层之间的对位关系,特别是孔盘(Pad)和钻孔(Drill)是否同心,阻焊开窗是否比焊盘大一圈(通常单边大0.1mm)。
  • 测量工具:使用测量工具确认关键尺寸,如板框大小、间距等是否符合设计。

5.2 文件打包规范

发给工厂前,将输出文件夹内的所有Gerber文件(.GTL, .GBL, .GTS, .GBS, .GTO, .GBO, .GM1, .GPT, .GPB等)和钻孔文件(.TXT和.DRILL)打包成一个ZIP或RAR压缩包强烈建议在压缩包内包含一个简单的文本说明文件(如README.txt制板说明.txt,内容应包括:

  1. PCB板厚:例如1.6mm。
  2. 板材类型:例如FR-4,TG值(如TG150)。
  3. 铜厚:例如1oz(35μm)。
  4. 阻焊颜色:例如绿色。
  5. 丝印颜色:例如白色。
  6. 表面工艺:例如有铅喷锡(HASL)、无铅喷锡、沉金(ENIG)、OSP等。
  7. 层叠结构(对于多层板):明确说明每一层是什么。
  8. 特殊工艺要求:如阻抗控制要求、金手指、碳膜按键、半孔(邮票孔)等。
  9. Gerber格式说明:单位、格式(如英制2:5),以及板框在哪一层(如Mechanical 1)。

5.3 与工厂的预先沟通

对于第一次合作的新工厂,或者做了复杂工艺的板子,在正式投板前,可以将Gerber文件先发给工厂的客服或工程人员做一次前期工程审查(DFM Check)。他们能从生产工艺角度发现一些你可能忽略的问题,比如线宽线距是否满足其产能、孔距是否太近、阻焊桥是否足够等。这是一个非常好的习惯,能有效降低风险。

6. 常见问题排查与实战避坑指南

即使按照流程操作,也可能会遇到各种问题。这里记录了一些典型坑点和解决方法。

6.1 问题一:生成的Gerber文件用查看器打开,发现焊盘缺失或变形。

  • 可能原因:没有输出Multi-Layer层。这个层包含了所有穿透式焊盘(通孔焊盘)在所有层上的形状。如果缺失,在查看Gerber时,通孔焊盘在顶层(.GTL)和底层(.GBL)上可能只显示为过孔(Via)的小孔,而没有焊环。
  • 解决方案:在输出Gerber的Layers标签页,务必勾选Multi-Layer

6.2 问题二:板框(外形)不显示或错误。

  • 可能原因1:板框画在了Keep-Out Layer,但输出Gerber时没有勾选该层,而机械层又没有图形。工厂无法得知板子外形。
  • 解决方案1:规范做法是将板框画在指定的机械层(如Mechanical 1),并确保输出该层。Keep-Out Layer仅用于电气限制。
  • 可能原因2:板框线不是封闭的轮廓,或者用的是填充(Fill)而不是线条(Line/Arc)。
  • 解决方案2:使用Place -> LinePlace -> Arc在机械层绘制一个封闭的多边形。可以用Design -> Board Shape -> Define from selected objects来快速将选中线条定义为板形。

6.3 问题三:钻孔文件(NC Drill)与线路层对不上。

  • 可能原因:生成Gerber文件和NC Drill文件时,单位和格式设置不一致。这是最致命的错误之一,会导致孔全部偏移。
  • 解决方案:养成标准操作习惯。在File -> Fabrication Outputs -> Gerber FilesFile -> Fabrication Outputs -> NC Drill Files的两个设置对话框中,确保Units和Format的数值一模一样。建议统一使用Inches2:5

6.4 问题四:阻焊层看起来把焊盘盖住了。

  • 可能原因:这是正常的视觉混淆。阻焊层(Solder Mask)是“负片”输出。在Gerber文件中,有图形的地方是“覆盖绿油”,空白(无图形)的地方才是“开窗露铜”。所以,当你查看.GTS.GBS文件时,看到一整片绿色(代表阻焊层),上面有黑色的小洞,那些洞正好对应焊盘的位置,这才是正确的。如果焊盘位置被填实了,那才是错误。
  • 检查方法:在CAM查看器中,将线路层(如.GTL)和阻焊层(如.GTS)叠加显示。你应该看到阻焊层上的开窗比线路层上的焊盘每边大一点点(通常称为“阻焊扩展”Solder Mask Expansion,在PCB规则中设置),以确保焊盘完全暴露。

6.5 问题五:发给工厂后,对方反馈缺少某层文件或无法识别。

  • 可能原因:文件命名不规范或使用了非常规后缀。虽然Protel有默认命名规则,但有些工厂的CAM系统可能对后缀名敏感。
  • 解决方案:在打包前,按照行业通用惯例(见上文表格)核对文件名。如果工厂有明确要求,可以按其要求重命名。在README.txt中注明各文件对应层。最稳妥的方式是,输出Gerber时,在最后一个设置页面(“高级”或“生成前”的总结页面),将文件格式设置为RS274X并勾选“包含层名称在文件名中”,这样生成的文件名会自带层描述,更清晰。

最后,再分享一个我个人的工作流小技巧:我为每一个PCB项目都建立一个Release文件夹。在最终输出生产文件时,我会将当次发布的所有文件(包括Gerber、钻孔文件、BOM清单、装配图、制板说明)都放在以版本号命名的子文件夹里,例如V1.2_20231027。这样不仅管理清晰,一旦生产发现问题,也能立刻回溯到当时的确切文件,便于排查。硬件设计,细节决定成败,而规范的文件输出,正是把控细节的第一步。自己动手生成和检查Gerber,是你从设计者迈向产品负责人的重要一课。

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

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

立即咨询