Allegro PCB导出Gerber光绘:Film配置、参数设置与避坑指南

📅 发布时间:2026/10/7 8:48:00
Allegro PCB导出Gerber光绘:Film配置、参数设置与避坑指南
光绘文件这三个字在 PCB 圈子里算是老生常谈但真要问你上一次出 Gerber 是不是一次过能拍胸脯的人不多。Allegro 作为 Cadence 家的主力 PCB 设计工具功能强、自由度高代价就是配置项多、默认值未必合理导出光绘文件这一步经常成为整个项目里最后也最容易出岔子的环节。我见过太多情况设计阶段 DRC 全绿、铜皮铺得漂漂亮亮结果板厂回话你这层少了丝印钻孔和线路对不上阻焊开窗全错了返工一轮就是三五天。这篇内容就是把我这些年用 Allegro 出光绘的完整设置思路和操作步骤摊开讲一遍从为什么要这么设到每一步点哪里再到板厂挑刺时怎么快速定位。适合刚接手 Allegro 项目的新人也适合用惯了别的 EDA、第一次切到 Allegro 出图的老工程师。不吹不黑按这套流程走下来一次过的概率能提到很高。1. 光绘文件到底是什么Allegro 导出这一步为什么最容易翻车1.1 从设计文件到板厂机床中间隔着一次翻译我们画完的.brd文件本质上是一份带坐标的数据库哪根线在哪一层、哪个焊盘多大尺寸、哪块铜皮什么形状全都以 Allegro 自己的数据结构存着。可板厂的设备不认这个它们的曝光机、钻孔机、铣边机只认一种通用的图形语言——Gerber也就是我们常说的光绘文件。所以导出光绘的本质是把 Allegro 内部的矢量数据翻译成一套板厂能直接读的、逐层的平面图形描述。这个翻译过程有个很重要的特点它是单向且带裁剪的。你给它什么层它就输出什么层你没加进去的对象它一声不吭地丢掉不会主动提醒你。这跟导出 PDF 不一样PDF 你漏了个东西肉眼能看出来Gerber 里少了一根线或者一块铜皮如果没做交叉比对很可能到板厂那边才暴露。理解了这一点就明白为什么导出设置比导出操作重要得多——操作就那几下设置决定了生死的边界。1.2 Allegro 的导出逻辑Film 是一层一层的配方Allegro 的 Artwork光绘机制用了一个很形象的词叫 Film中文一般叫胶片或光绘层。它不是一个简单的勾选层然后导出而是让你先定义一张 Film再往这张 Film 里添加具体的 Subclass 对象。打个比方Film 就像一张底片Subclass比如ETCH/TOP、PIN/TOP、PACKAGE GEOMETRY/SILKSCREEN_TOP就是往底片上叠的图层。一张 Film 可以由好几个 Subclass 叠加而成也可以只放一个。这个设计的好处是灵活你可以把顶层的线路、焊盘、过孔一次性叠到一张 Film 里因为它们本来就该在同一张底片上曝光。但也正因为灵活很多新手会犯两类错一是该加的没加比如出了线路层却忘了把板框BOARD GEOMETRY/OUTLINE放进去二是不该加的加了比如把ASSEMBLY装配层当成丝印层一起输出板厂拿到一堆不属于制造信息的线条直接懵。所以第一步从来不是打开 Artwork 对话框而是先在脑子里把这个板子要出几张 Film、每张装什么想清楚。提示Allegro 默认不会帮你判断某一层该不该出它只忠实执行你配置的 Film。请把配置 Film当成一项需要反复核对的设计工作而不是随手点几下就完事的收尾动作。2. 导出前的整体规划先想清楚要出哪些层2.1 层结构梳理一张 Film 对应一层加工要素在动手之前我习惯先列一张清单把这块板子需要出的 Film 全部写出来。常规双层板、四层板标准配置大概是下面这些Film 名称主要包含的 Subclass加工含义TOPBOARD GEOMETRY/OUTLINE、ETCH/TOP、PIN/TOP、VIA CLASS/TOP顶层线路与焊盘BOTTOMBOARD GEOMETRY/OUTLINE、ETCH/BOTTOM、PIN/BOTTOM、VIA CLASS/BOTTOM底层线路与焊盘SOLDERMASK_TOPPIN/SOLDERMASK_TOP、VIA CLASS/SOLDERMASK_TOP顶层阻焊开窗SOLDERMASK_BOTTOMPIN/SOLDERMASK_BOTTOM、VIA CLASS/SOLDERMASK_BOTTOM底层阻焊开窗PASTEMASK_TOPPIN/PASTEMASK_TOP顶层钢网PASTEMASK_BOTTOMPIN/PASTEMASK_BOTTOM底层钢网SILKSCREEN_TOPPACKAGE GEOMETRY/SILKSCREEN_TOP、BOARD GEOMETRY/SILKSCREEN_TOP、REF DES/SILKSCREEN_TOP顶层丝印SILKSCREEN_BOTTOM同上层对应底层底层丝印DRILLMANUFACTURING/NCLEGEND 系列钻孔图给板厂参考如果是多层板中间还有内层线路 Film比如L2_GND、L3_VCC。这里有个关键分叉内层是正片还是负片。正片就是有线的地方画线负片是有线的地方挖空、其余全是铜。Allegro 里如果用负片做电源/地层导出时该层 Film 必须先把 Plot Mode 设成 Negative否则输出的图形会是反的板厂照着做出来就是一片短路。这是新手翻车率最高的一处我在第 3 章会专门展开。2.2 命名规范与层号映射表Film 的命名看似小事其实关系到板厂和你的沟通效率。Allegro 输出的文件名就是 Film 名加上.art后缀如果 Film 名叫top、t、1板厂工程拼板的时候得靠猜。行业里比较通用的命名是TOP、BOTTOM、GTOGerber Top Overlay、GTSGerber Top Solder这类或者直接SILK_TOP、MASK_TOP这种自解释的写法。更稳妥的做法是随文件附一份层号映射表把 Film 名、文件扩展名、对应 PCB 层号一一列出来尤其是多层板。因为不同的拼板软件和板厂习惯对L2 到底是从上往下数还是从下往上数理解可能不一样写清楚能省掉一轮来回确认。这份表我一般直接贴在邮件正文里或者存成一个 txt 跟压缩包一起发几行字的事能避免大事故。2.3 动手前必须完成的三项前处理很多问题其实不是导出环节产生的而是导出前埋下的。我出光绘前必做三件事。第一件是跑数据库检查。菜单Tools Database Check把能勾的都勾上让它检查一遍。这一步能揪出孤立的线段、重复的过孔、非法对象等隐藏问题比只看 DRC 更彻底。第二件是确认铜皮已经填充和光滑。动态铜皮如果你只铺了没 Smooth它内部还是待计算状态导出光绘时可能直接空掉。用Shape Global Dynamic Params看一眼填充模式必要时手动 Smooth 一次。第三件是原点统一。原点决定了光绘和钻孔文件的对齐关系如果光绘用一个原点、钻孔用另一个原点板厂叠图就会错位。我一般把原点设在板框左下角Setup Change Drawing Origin点一下就行。提示这三项前处理花不了十分钟但能挡掉后面绝大多数的玄学问题。尤其是铜皮 Smooth动态铜皮没填充就导出板厂只会在邮件里告诉你这层是空的你回去再找原因时间全浪费在沟通上。3. 核心参数逐项拆解Artwork Control Form 里每个勾选都有它的道理打开Manufacture Artwork弹出的就是 Artwork Control Form。这个对话框有四个标签页Film Control、Parameters、General Parameters、Advanced。下面我把真正影响输出结果的项目挑出来说清楚。3.1 格式与精度RS-274X 和 3-5 精度的来龙去脉在 Parameters 标签页里Device Type一定要选Gerber RS274X。这是带内嵌光圈表Aperture Table的扩展 Gerber 格式光圈信息直接写在文件头里板厂不用再单独找光圈文件。老式的Gerber 6x00需要另配.apr光圈文件两样东西对不上就出乱子现在基本没人用了别去碰它。接下来是Format也就是整数位和小数位。Allegro 默认给的是2 5或者3 5我的习惯是统一用3 5。为什么3 位整数位意味着坐标最大能表示到 999 英寸绝对够用5 位小数位在英制单位下分辨率是 0.00001 英寸也就是约 0.254 微米对于 3 mil、4 mil 的细线来说精度绰绰有余。如果你偷懒用了2 4分辨率只有 0.0001 英寸约 2.54 微米出 4 mil 以下的细线时就可能出现细微的锯齿或线宽跳动。这个代价不值得省。Output Units选 Inch 还是 Millimeter 都行但全项目必须一致。我通常选 Inch因为板厂大多数默认英制沟通起来数字更直观。最怕的是你光绘用英制、钻孔用公制板厂不细看直接加工出来的板子尺寸会差 25.4 倍——当然这种极端情况板厂一般能发现但如果只是某一层单位不同混在压缩包里翻车的概率就大了。另外Suppress Leading Zero抑制前导零建议勾上能让文件体积小一些也是行业惯例。3.2 Film Control 标签页的关键选项回到 Film Control右侧那一排选项里最容易被忽略但最要命的是Undefined line width未定义线宽。Allegro 里有些线比如板框线、机械标记线可能是用 0 宽度画的或者线宽属性丢失了。如果不在这里填一个兜底值我一般填 6 mil这些线导出时就会因为没有宽度而被丢掉。板厂拿到光绘发现板框没了你还得从头查。Shape bounding box一般不用勾它是给某些特殊场景用的。Plot Mode这里要重点看对于正片层选 Positive对于负片电源/地层选 Negative。选错了图形就是反的。判断依据是你在 Layer Stack 里怎么定义的这层如果这层是Plane类型且用负片绘制Film 就得配 Negative。这一项我建议每块新板都确认一遍不要凭记忆。再往下是每一张 Film 的详细配置。你在顶层 Film比如 TOP上右键Add会弹出一个层选择列表逐项勾选需要的 Subclass。加完之后Film 列表里会展开这层包含的所有对象。这里有个经验VIA CLASS 的阻焊和丝印要不要加取决于你的工艺要求。如果过孔要盖油阻焊覆盖那 SOLDERMASK 层里就不要加VIA CLASS/SOLDERMASK如果要过孔开窗方便调试探针那就加上。这个决定要提前跟硬件和工艺确认别等板厂做完才发现过孔全开窗了。3.3 Parameters 与 Advanced 标签页的隐藏坑Advanced 标签页里的Suppress unconnected pads是个值得单独说的选项。勾上它Allegro 会把内层那些没有网络连接的过孔焊盘自动去掉。为什么这很重要因为内层是整片铜的时候一个悬空的过孔 pad 相当于在铜皮上多了个孤岛焊盘加工时可能造成局部应力或者蚀刻异常。很多人问为什么我的无用焊盘去不掉答案往往就在这个选项——它是在导出环节处理的不是在设计环节。但要注意如果这层是负片逻辑就反过来勾选的效果是抑制负片上的孤立反焊盘具体表现要结合你的层定义看建议导出后用 CAM 工具核对一次。Film size limits胶片尺寸限制也别忽略。默认值可能比你板子小如果板子尺寸超出限制导出时会报错或者被裁掉。我一般把它设成比板框大一圈的值比如板子 200mm×150mm就设成 250mm×200mm留足余量。还有Vector based pad behavior通常保持勾选它能保证焊盘按矢量方式输出形状更精确。4. 完整导出实操流程从新建 Film 到文件落盘4.1 新建并配置每一层 Film第一步Manufacture Artwork打开控制台确认Film Control标签页处于激活状态。在下方 Film 列表的空白区域右键选Add输入 Film 名称比如 TOP回车列表里就多了一项。第二步在这个新建的 Film 上右键选Add或者在右侧 Subclass 列表里逐项勾选把该层需要的对象加进去。以 TOP 层为例典型配置是BOARD GEOMETRY / OUTLINE ETCH / TOP PIN / TOP VIA CLASS / TOP这里注意ETCH/TOP包含了所有走线PIN/TOP包含了表贴焊盘和通孔焊盘的顶层部分VIA CLASS/TOP是过孔的顶层部分三者缺一不可。板框OUTLINE至少要出现在一张 Film 里我习惯每层都放这样板厂无论看哪层都能找到边界。第三步重复以上动作把所有需要的 Film 都建好。全部建完后建议先别急着生成用 Film Control 右下角的预览或者Display Film逐个看一眼肉眼确认每层内容合理。这一步花两分钟能挡住不少低级错误。4.2 生成光绘并读日志配置完 Film点击对话框里的Create Artwork有的版本叫Select All后CreateAllegro 就开始逐层输出。输出路径默认是.brd文件所在目录生成一堆.art文件。关键动作在这里立刻去看日志。Allegro 会在同目录生成一个photoplot.log有的版本叫 artwork.log里面记录了每一层的输出情况和所有警告。常见的警告有未定义线宽的线被跳过某对象超出胶片范围光圈重复定义等。很多人点完 Create 看到窗口没报错就以为成了其实日志里可能已经警告了好几条。我出图后的第一件事就是打开这个 log 从头扫一遍有 warning 就回去查一条都不放过。生成完成后用Display Film或者直接开 CAM 工具CAM350、GC-Prevue 都行把各层叠起来看。重点核对三件事板框闭合、焊盘和线路对齐、丝印没有压到焊盘上。4.3 钻孔文件、坐标文件、贴片文件的同步输出光绘只是交付物的一部分板厂还需要钻孔文件贴片厂还需要坐标文件。钻孔文件通过Manufacture NC NC Drill输出。参数上单位要和光绘保持一致都英制或都公制Format 建议2 5或2 4Zero Suppression 选Leading并勾选Auto tool select让它自动识别刀具。输出得到.drl文件。这里特别强调一点钻孔文件的单位和原点必须和光绘一致否则板厂叠图时钻孔位置会整体偏移直接报废。坐标文件通过File Export Placement输出选好单位和格式得到一份 txt 或者 csv里面是每个元件的位号、坐标、旋转角度贴片厂用这个编程。IPC-D-356 网表如果板厂要求可以通过File Export IPC356输出用于飞针测试比对。这三份文件连同光绘一起打包压缩包命名写清楚板子名称和版本号发出去之前再核对一遍层数。提示打包前我有个固定动作把压缩包解压到另一个目录用 CAM 工具重新读一遍确认文件没损坏、层没丢。这个自检动作救过我至少三次。5. 常见问题与排查技巧实录5.1 光绘看起来对板厂说不对的六种典型情况这块是纯经验都是我或者同事真实踩过的坑。第一种少了板框。板厂回话没有外形线铣不了边。原因通常是 OUTLINE 没加到 Film 里或者板框是用 0 宽度画的而 Undefined line width 没填值。第二种内层电源层输出成反的。正负片设置错了。表现为板厂说你这层怎么全是铜线路都看不见。第三种丝印层给成了装配层。新手容易把ASSEMBLY_TOP当成丝印输出结果板厂拿到的字是装配用的元器件框跟实际要印的字符完全对不上。记住丝印是SILKSCREEN装配是ASSEMBLY两个不是一个东西。第四种阻焊开窗位置对不上。多半是 SOLDERMASK 层里漏加了VIA CLASS/SOLDERMASK或者 Padstack 里阻焊尺寸没设好导致开窗过大过小。行业默认单边比焊盘大 2 mil 左右具体按板厂工艺能力来。第五种铜皮丢失。动态铜皮没 Smooth 就导出或者 Shape 被别的对象盖住没刷新。回设计里 Smooth 一遍重新出。第六种钻孔和光绘错位。两次导出用了不同的原点或者单位不一致。统一原点、统一单位能解决。5.2 排查速查表与验证流程为了让自己不慌我整理了一张排查表出问题按顺序对板厂反馈最可能原因快速验证方式缺少外形OUTLINE 未入 Film / 线宽为 0在 CAM 里看有没有闭合框某层空铜皮未 Smooth / 层选错回 Allegro 看该层是否有对象图形反了正负片 Plot Mode 设置错查 Layer Stack 该层定义丝印是方块输出成了 ASSEMBLY 层核对 Film 里加的 Subclass阻焊错位SOLDERMASK 层缺对象 / Padstack 尺寸错叠图看开窗与焊盘关系钻孔偏移原点或单位不一致对比两次导出的参数设置文件乱码精度或格式选错确认 RS-274X 与 3-5 精度验证流程我习惯走三步对图第一步在 Allegro 内部用Display Film逐层预览第二步用 CAM 工具把所有层叠起来看整体第三步把钻孔文件叠到光绘上看对位。三步走完基本不会有漏网的。5.3 几个老手的私房技巧第一个技巧建一套模板 Film。如果你经常做尺寸差不多的板子可以在一个空 brd 里把常用 Film 全部配好导出成一个模板下次直接套用只改动层号相关的部分。能省掉大量重复配置的时间也减少手滑。第二个技巧Unit 和精度写进文件名或者附README。别指望板厂工程师每次都去翻你的参数把单位、精度、正负片情况简单写在一份说明里随包发过去沟通成本立刻降下来。我一般写三行单位英制、精度 3-5、内层电源层为负片。第三个技巧导出前用 Quick Reports 扫一遍。Tools Quick Reports里有未连接网络、DRC 违规等报告出图前扫一眼能发现一些不影响 DRC 但影响制造的隐患比如极细的走线、孤立的铜皮碎片。第四个技巧保留每一版光绘的日志。同目录的 photoplot.log 别删出了问题可以对比上一版和这一版的日志差异快速定位是哪次改动引入的问题。这个小习惯在做多次改版的板子时特别管用。我自己这些年的体会是Allegro 出光绘这件事难点从来不在会不会点按钮而在知不知道每个参数背后的物理含义。你把 Film 当成底片、把每个 Subclass 当成叠片、把每一项参数都对应到板厂的一道工序上思路就顺了。工具是死的理解是活的多出几块板多被板厂教育几次这套流程自然就刻进肌肉记忆里了。