ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Altium Designer输出生产文件全流程:Gerber、钻孔与避坑指南

Altium Designer输出生产文件全流程:Gerber、钻孔与避坑指南 设计图画完高高兴兴把文件包发给板厂第二天一早收到一句您的Gerber文件缺少钻孔层——这种经历估计每个用AD画过板子的人都遇到过那么一两次。其实问题不在于你不会输出生产文件而在于ADAltium Designer这个软件把入口藏得深加上每个人用的版本、板厂的习惯、文件的格式都各有差异稍不留神就会漏掉某个层。这篇文章我把自己这几年用AD输出生产文件的完整流程、参数设置和踩坑经验整理出来从DRC检查到Gerber、钻孔、坐标、BOM再到交板前的第三方验证一条线讲清楚。刚入门的硬件工程师、实验室里自己画板子送给小批量厂打样的科研人员都能照着这份流程操作。1. 输出前的自检这十分钟决定板厂要不要给你打电话很多人一看到输出生产文件第一反应就是打开Gerber设置对话框。但实际上真正让生产文件出问题的往往是输出前那些不起眼的准备工作没做好。我习惯把输出前自检分成三块设计规则检查、封装完整性检查、板框与层叠检查。1.1 DRC别用默认规则直接跑DRCDesign Rule Check是AD里最基础也是最容易被敷衍过去的检查。很多初学者拿到板子Design → Rules里还是软件出厂的那套默认规则间距0.25mm、线宽0.25mm就匆匆跑一遍DRC看到没有红色报错就以为万事大吉。这里的问题在于默认规则往往比实际生产工艺宽松不少但同时又没覆盖到一些特殊约束。比如你板子上有BGA需要局部区域用更小的间距和线宽比如板边要留出安全距离避免V割切到走线再比如丝印不允许压在焊盘上——这些默认规则里经常没有。我建议在输出前专门花几分钟检查这几类规则是否真的生效间距规则Clearance主间距按板厂的常规工艺能力设置比如6mil0.1524mm或8mil特殊区域用Rule Scope限定。线宽规则Width电源线和地线线宽要单独约束不要和信号线混在一起。过孔规则Routing Via Style孔径和外径要符合板厂工艺别用一个极小孔径的过孔。丝印到焊盘的距离这个规则默认DRC里通常不查但它直接影响成品率和美观。跑完DRC之后不要只看有没有错误要看看有没有警告Warning。很多警告是悬空铜皮未连接引脚这类问题虽然不一定致命但如果在输出前不处理到了板厂那边可能被解读为设计缺陷。1.2 封装完整性位号、3D体、焊盘栈一个都不能少输出生产文件之前封装库的完整性是个大坑。我这里说的不是原理图符号而是PCB封装本身。举个例子有些手工画的封装焊盘用的可能是简单的单层Pad没有完整的焊盘栈定义Pad Stack也没有阻焊扩展参数。这样的封装在屏幕上画板子毫无问题可一旦生成Gerber顶层焊盘和底层焊盘就会因为缺失定义而表现出奇怪的结果——要么阻焊层开窗不对要么内电层连接不上。另外就是位号Designator和3D体。位号丝印要是被隐藏了装配图会缺信息3D体缺失不影响生产文件本身的电气功能但会影响后续做结构干涉检查。虽然3D体不是输出生产文件的硬性条件但我还是建议在输出前打开PCB的3D视图快速扫一眼确认没有明显的封装错位、方向颠倒。这一步有时能避免PCB打样回来才发现某个电解电容的方向全部反了。1.3 板框与层叠板厂的第一道阅读理解题板框是板厂最先看的东西。AD里画板框有两种常见做法一种是在机械层Mechanical Layer通常用Mechanical 1画闭合的板框线另一种是在Keepout层画板框线。这两种方式各有支持者但从生产文件输出的角度我强烈建议把真正的板框画在机械层Keepout层只用来定义走线和铜皮的禁区。原因是这样Keepout层在AD里本质上是规则限制层它表达的语义是这里不能走线、不能铺铜而不是这里是板子的物理边缘。板厂收到的Gerber如果只有Keepout层而没有明确的机械层板框他们就得猜你的意图一旦猜错板子外形就有偏差。层叠结构也很重要。输出前在Layer Stack Manager里确认每一层的类型、厚度、铜厚和阻抗信息都填写正确。这里面最容易被忽略的是内电层Internal Plane的正负片设置——负片层在Gerber里的表现和正片层完全不同后面第5节我会专门讲这个坑。2. Gerber文件的导出别再用默认设置直接点了Gerber是整个生产文件包的核心它描述了PCB每一层的图形。AD导出Gerber的入口在File → Fabrication Outputs → Gerber Files但真正能按板厂要求输出全靠对话框里的参数设置。2.1 格式选RS-274X还是Gerber X2Gerber格式这几年经历了一轮迭代。RS-274X是目前最通用、兼容性最好的格式全世界几乎所有板厂都能直接读取。Gerber X2是在RS-274X基础上扩展了层命名、文件属性等元信息的新格式目的就是解决板厂拿到文件还得猜这是哪一层的问题。我的建议是除非板厂明确要求用Gerber X2否则一律用RS-274X。理由很简单——RS-274X的文件是纯粹靠文件名和层顺序来区分内容的虽然信息少但极其稳定Gerber X2虽然带了元信息但在一些老旧的CAM软件里可能出现兼容性警告。如果板厂只说发Gerber就行RS-274X永远不会出错。在Gerber Setup对话框里确认没有勾选那些奇怪的扩展选项。Advanced选项卡里有一个Use software arcs和Use 1/4等选项保持默认即可。最关键的是下面这个Aperture Attributes选项卡最好是Embedded aperturesRS-274X这会把光圈定义直接嵌入Gerber文件板厂不需要额外找光圈文件。2.2 单位与精度一个小数点引发的板子废了Gerber文件里的坐标精度直接决定了板厂能加工到什么程度。打开Gerber Setup时General选项卡里有Units和Format两个下拉框很多初学者根本没注意过这里。单位选择英制Inches和公制Millimeters都可以。但行业惯例是Gerber数据默认用英制因为RS-274X格式的很多底层逻辑都是基于英制的。你完全可以选公制输出但如果你要混用文件比如某个文件是英制、另一个是公制板厂读进来可能对不齐。所以我建议全部统一为英制。格式选择这里有个常见的2:3、2:4、2:5的标识。以2:5为例表示坐标值用整数2位、小数5位表示单位是英寸的话理论分辨率是0.00001英寸约0.25um。对绝大多数PCB来说2:40.0001英寸≈2.5um已经够用但我推荐直接选2:5。为什么因为Gerber文件每多一位小数文件体积增大得有限但对齐精度却高了一个数量级。省这么一点文件大小毫无意义遇到密集引脚封装或者BGA出线时2:4在高密度板上偶尔会出现坐标近似误差。我个人的习惯是2:4能过2:5更稳。2.3 层选择哪些层该勾哪些层不该勾打开Layers选项卡你会看到当前所有已使能的层。这里的原则是按需勾选宁多勿缺但别乱勾。需要输出的层通常包括所有信号层Top Layer、Bottom Layer以及中间信号层所有内电层Internal Plane阻焊层Top Solder、Bottom Solder丝印层Top Overlay、Bottom Overlay助焊层Top Paste、Bottom Paste用于钢网板框层Mechanical 1钻孔图Drill Drawing用于生成钻孔符号表Keepout层如果板厂要求的话有一个细节要注意多层板里内电层在Layer列表里显示的是Internal Plane 1之类不是信号层不要漏勾。另外如果板子有半孔Castellated Holes需要额外确认半孔所在的层也能正确输出。2.4 负片层的输出逻辑在Layer Stack Manager里内电层可以设置成正片Signal或负片Plane。负片层的实际含义是默认整层铺铜你需要用线条和图形去挖掉不该有铜的区域。从Gerber输出的角度看正片层会生成一个固体铜区域图形而负片层生成的油墨几何是反的——它表示的是无铜区域。CAM工具读入负片Gerber后需要软件额外做极性反转才能正确显示。这里就是事故高发区。很多人在AD里面看内电层明明铺了铜导出Gerber后传到CAM350里一看内电层整个是空的——这不是文件坏了而是你的CAM软件没有识别负片极性或者AD输出时把内电层的极性设置成了Positive而层属性本身是Negative。最简单稳妥的处理方式如果你不需要负片内层的高性能特性直接在内电层用Solid Region铺铜把层属性设为正片输出就没那么多幺蛾子。如果必须用负片导出后在CAM里务必做一次极性检查用AD重新导入自己生成的Gerber文件再比对一遍这一步能省下后面一大堆沟通成本。3. 钻孔文件最容易漏掉的一张表Gerber文件描述的是每层的铜箔、丝印和阻焊图形但板子上的孔——包括过孔、焊盘孔、螺丝孔——需要另外的文件来定义。钻孔文件就是干这个的。很多文件不完整的报错八成就是钻孔文件缺失或名称对不上。3.1 Excellon格式与单位精度AD生成钻孔文件的入口是File → Fabrication Outputs → NC Drill Files。弹出的NC Drill Setup对话框里格式默认是Excellon单位是Inches精度有2:3、2:4、2:5这几个选项。和Gerber一样Excellon钻孔文件的精度也要和Gerber保持一致的量级。我个人习惯同样是2:5避免钻孔位置和焊盘中心出现肉眼看不见但机器能感知的偏移。在Excellon设置里有个Optimize Boring选项它会优化钻孔顺序一般建议勾选。另一个Generate additional hole and composite drilling files选项含义是多层板中不同层之间的孔是否需要分文件输出通常是按板厂要求来他们如果没说就不要勾。3.2 钻孔符号表板厂全靠它理解这个孔是干嘛的和钻孔文件配套的是钻孔符号表它通常随着钻孔图Drill Drawing一起输出。AD里勾选Layers里的Drill Drawing层生成的Gerber就包含钻孔符号和对应的孔径标识。板厂工程师拿到钻孔图会对照钻孔符号表来确认每个孔对应的直径、是否金属化。如果只发NC Drill文件而不发钻孔图板厂虽然能读到孔的位置和尺寸但无法直观地知道哪些孔是金属化过孔、哪些是螺丝孔容易理解偏差。所以我的建议是输出NC Drill文件的同时一定把Drill Drawing层的Gerber也一起输出。这样一个完整的信息闭环就形成了。3.3 槽孔、背钻和特殊孔普通圆形孔很容易处理但遇到槽孔Slot Hole比如USB座子的固定孔就不一样了。AD里画槽孔常见的方法是在焊盘叠层里定义一个Slot形状或者在Keepout层/机械层画一条线然后定义成孔。这两种方式生成的NC Drill文件格式不同焊盘叠层槽孔会输出到Excellon文件中并带有槽孔参数而用线条画的槽孔可能需要额外的Route File铣刀路径文件来定义。板厂收到文件后需要确认你这个槽是机械铣出来的还是钻出来的这对生产流程影响很大。背钻Back Drilling也常有人问。AD的背钻功能在较新版本里已经集成输出时需要单独勾选背钻层和对应文件。如果你的板子是高速多层板需要使用背钻工艺建议在设计阶段就把背钻层设置好否则后期靠手动改钻孔文件非常痛苦。4. 配套文件板厂没提但你必须给的Gerber和钻孔文件是生产PCB的基础但如果板厂要帮你做贴片SMT你还需要提供BOM、坐标文件有时还需要装配图。这三样东西虽然叫配套但缺一个贴片厂就得停工问你要。4.1 BOM清单把原理图的零件账本交出去AD的BOM导出入口在Reports → Bill of Materials。这个功能很多人用过但导出的表格往往一塌糊涂一大堆设计用的内部字段比如Designator、Footprint、Quantity混在一起板厂的采购根本不知道哪个是哪个。我整理BOM的固定流程是这样在BOM对话框左侧的Grouped Columns里至少按Footprint分组保证相同封装的元器件汇总成一行。All Columns里只保留这几列Designator位号、Comment/Value值、Footprint封装、Quantity数量以及可选的Manufacturer、Supplier Part Number。勾选Export Options里的Open in Excel导出.xlsx或.csv都行但要确认中文没有乱码推荐用.xlsx。板厂如果要求位号合并确认Designator列里是一串合并后的位号如R1,R2,R3...而不是每行一个位号。这里有个常见误区BOM里的Value列很多人写的是1k 0402但板厂采购往往需要的是电阻0402封装1kΩ±1%。所以BOM导出后最好人工校对一遍把数值精度、物料类型写清楚。别在这个环节偷懒贴片厂买的料不对最后赔的比画板工时贵得多。4.2 坐标文件贴片机的地图坐标文件Pick and Place File告诉贴片机每一个元件放在板子的哪个位置、哪个角度。AD的入口是File → Assembly Outputs → Generates Pick and Place Files。弹出的对话框里需要设置单位跟Gerber保持一致用Inches或Millimeters。格式选CSV最通用有些贴片厂要Text格式看对方要求。坐标系绝对坐标Absolute相对板子左下角原点比相对坐标Relative更好用贴片机的程序基本都是绝对坐标系。包含层Top层和Bottom层的元件都要包含。如果板子有双面贴片这个尤其重要别漏了其中一面。导出坐标文件后我还会做一步检查用Excel打开看有没有坐标值明显异常比如负数、超出板框范围的坐标有的话说明原点设置有问题需要重新定位板子的原点Edit → Origin → Set。4.3 装配图和DXF图装配图是给人工目检和维修用的一般可以用PDF输出。AD的Smart PDF功能File → Smart PDF可以导出整套图纸包含各层的装配图PDF的好处是任何人都能打开不需要装软件。另外如果你需要做结构验证或者要和结构工程师配合DXF格式的板框图和器件位号图很有用。导出DXF的方法是File → Export → DXF/DWG。这里注意导出DXF之前建议把不需要的层全部隐藏只保留机械层、板框层和必要的丝印否则DXF里塞满了乱七八糟的图形结构工程师用AutoCAD打开的时候会疯掉。5. 我在实际发板中踩过的坑这一节不写完整步骤了专门说几个我自己或者身边同事真实踩过的坑。每个坑都让我至少花过半天时间排查希望你不用再走一遍。5.1 负片层铺铜消失之谜有一块四层板内电层用的是负片Plane层。板子打样回来肉眼看到内电层区域居然有大面积铜缺失板厂说文件里就是这个样子。我在AD里打开设计文件看明明铺铜应该是完整的。后来排查发现负片层在Gerber输出的时候会被反转为挖空区域表达而当时生成的Gerber文件确实没问题——问题是出在我用来检查的CAM软件默认把负片层当正片图层显示了。板厂那边用的CAM软件和我检查用的软件对负片极性的解释不同导致他们看到的内电层和我看到的不一样。解决思路是两句话要么别用负片改成内电层正片铺铜要么输出后明确告诉板厂这个层是负片层并附上CAD源文件备用。在工程沟通里多一句话有时候能省掉一次打样周期。5.2 原点不一致导致坐标整体偏移有一段时间我导出坐标文件给贴片厂对方反馈所有元件坐标整体偏移了2.5mm。查了很久发现是我在AD里设置板子原点的时候用了板子中心的定位孔作为原点而板厂在CAM里默认的是左下角板框原点。两边原点不一致坐标自然全部平移。从那以后我给自己定了个规矩不管板子是不是异形板导出生产文件前一律把原点设为板框左下角Edit → Origin → Set然后选择左下角顶点坐标文件、Gerber、钻孔文件全部用同一个原点从源头杜绝偏移。5.3 丝印字体的中文乱码AD的丝印层如果放入了中文汉字导出成Gerber时某些版本对中文字体的矢量转换支持不好板厂拿到后会发现中文字全部变成乱码或者方块。这个问题在高版本AD里有所改善但仍不建议在丝印层放中文尤其是小于5号字的小尺寸丝印加工出来本来就难看清再碰上转换问题就是白费功夫。如果实在要标注中文我一般在丝印层用英文拼音或者数字代替。5.4 忘记检查板框线是否闭合有一块圆形板板框是用圆弧拼的我看着很完美就送出去了。结果板厂打电话说文件里板框是断开的无法生成铣边程序。后来我把机械层放大了一看圆弧和直线相接的地方确实差了几个mil。板框必须是一个闭合的多段线这是板厂铣外形的基本要求。AD有一个很方便的检查方法切换到机械层然后尝试用Select Touching Line选板框线如果能全部选中并且状态栏显示Closed就说明闭合。也可以用Tools → PCB Tools → Select Gambit... 但最省事的是用AD的Board Shape功能如果板框闭合你的板子外形高亮框会完美贴合板框不闭合的话高亮框会沿着一个你意想不到的形状绕圈。6. 交板前的最终验证把文件包当用户一样过一遍生产文件输出完毕、打包发给板厂之前我强烈建议自己先做一遍验收。这一步相当于在文件上附加一道保险花不了多少时间却能防止低级错误流出。6.1 用第三方CAM工具打开看一遍AD内置的CAM编辑器File → CAMtastic可以打开你自己输出的Gerber但为了模拟板厂的视角最好用第三方CAM软件打开看一遍。免费的可以用gerbv商业的CAM350或者ViewMate随意选。关键是看这几点每一层的Gerber都能正常显示图片和预期一致没有空白层。钻孔符号表和NC Drill文件能对应上孔径信息完整。板框在所有层里都在正确位置没有出现某层整体偏移。如果你在CAM工具里看到的图形和你AD画板时看到的图形完全一致那这个文件包才算基本合格。6.2 文件名命名与压缩包整理板厂每天面对几十个文件你的文件如果叫PCB_V1.GTL、PCB_V1.GBL这种他们能快速识别如果叫新建文件夹(3).zip打开发现里面全是未命名1.drl这类文件人家第一反应就是皱眉。我习惯的命名规则是项目名_版本号_层名。比如USB_Power_V12.GTL表示顶层线路、USB_Power_V12.GBL表示底层线路、USB_Power_V12.TXT表示钻孔文件最后所有文件放在一个以项目名_版本_日期命名的压缩包里例如USB_Power_V12_20240615.zip。在文件包里附一个ReadMe.txt列出文件清单和各层对应关系这属于多花30秒但能省一整天沟通的典范。6.3 网络对比验证源文件和生产文件的一致性Gerber文件是图形文件不是原理图网表所以它不能直接告诉你内部连接是否正确。如果板子画到一半改过线或者从别的EDA工具导过来你担心生产文件不符合最新原理图可以从AD里导出IPC-356网络信息File → Fabrication Outputs → IPC-356 Netlist然后交给板厂或者自己用CAM工具对比网络连通性。这一步对简单板子有点杀鸡用牛刀但如果是六层板以上、BGA加DDR这类复杂设计网络对比是保证打样回来的板和设计完全一致的最可靠手段。我没见过一个资深高速PCB工程师会跳过这一步直接发文件因为他们都知道视觉检查是有极限的网络对比才是数字层面的硬校验。关于输出生产文件这件事很多教程把重点放在点哪个按钮上但我更想强调的是真正拉开差距的是输出前有没有做完备的自检输出后有没有做独立的验证。我建议每个团队或者个人都建一套自己的出厂检查模板把上面这些步骤固化成清单每次发板前逐条打勾。这个习惯养成之后你会发现自己发给板厂的文件被退回修改的次数会大幅减少。最后再分享一个个人小技巧把Gerber Setup对话框里自己常用的配置存成一个预设点击对话框右下角的Save按钮下次输出生产文件时直接调用能省下不少重复设置的时间。
返回列表