
1. 为什么要在AD里折腾铺铜转阻焊这件事搞PCB Layout的朋友大概率都遇到过这种场景板子上某块区域需要开窗露铜比如大电流焊盘、散热焊盘、天线馈点、屏蔽罩接地焊盘或者某些连接器需要额外补锡增加机械强度。常规做法是在阻焊层画一个Region或者放个Fill但问题是——如果这块开窗区域形状不规则或者需要跟已有的动态铺铜Polygon完全重合手动描一遍不仅费时还容易对不齐改一版铜皮就得重新描一遍阻焊简直是折磨。我在做一块电源板的时候就踩过这个坑。板子上有个同步整流的下管漏极铺了一大块动态铜Polygon做散热客户要求这块铜皮全部开窗露铜以便加焊锡增强载流和散热。一开始我老老实实在Top Solder层用Region描了一遍结果铜皮因为避让过孔重新铺了一次形状变了阻焊Region没跟着变打样回来发现开窗偏了铜皮边缘被绿油盖住了一部分。那次返工让我下定决心找一个铜皮怎么变阻焊就怎么变的办法。后来摸索出来的方案就是标题说的这个把动态铺铜Polygon转换成静态Region再把这个Region搬到阻焊层实现精准开窗。这个思路的核心价值在于——Region是静态的、形状固定的图元它不参与铺铜重算不会被避让规则改变而且Region可以直接复制到任意层包括阻焊层。这样一来你只需要保证转换那一刻Region和Polygon形状一致后面铜皮怎么重铺都不影响阻焊开窗。这篇文章适合已经会用AD画板、但对铺铜和阻焊层操作还不够熟练的Layout工程师也适合那些被开窗对不齐折磨过的朋友。我会把整个流程拆开讲清楚包括为什么要这么转、每一步的意图是什么、参数怎么设、踩过哪些坑以及几个能省时间的替代方案。看完你就能直接上手操作不用再去翻零散的论坛帖子。2. 先搞清楚Polygon、Region和阻焊层到底是什么关系2.1 动态铺铜Polygon的本质会自己长的铜AD里的Polygon中文一般叫铺铜或灌铜它最大的特点就是动态。你画一个多边形轮廓给它指定网络比如GND或者VCC软件会自动根据设计规则Clearance去避让其他网络的焊盘、走线、过孔然后填充成一块实心铜。这个填充结果是算出来的不是画出来的。动态铺铜的好处很明显改了走线重新铺一下铜避让关系自动更新不用手动修。但坏处也在这里——它的形状是不确定的取决于当前板上的其他元素和规则设置。你今天铺出来是这个形状明天改了个过孔位置重新铺形状就变了。从数据结构上讲Polygon在AD内部保存的是轮廓填充算法规则引用而不是一堆固定的铜皮坐标。这就是为什么它不能直接当阻焊开窗用——阻焊层需要的是一个确定的、不会自己变的形状。2.2 静态Region的本质一笔一划刻出来的死形状Region区域在AD里是一个纯粹的几何图元它就是一块固定形状的填充区域。你画成什么样它就是什么样不会因为规则变化、不会因为其他元素移动而改变。Region可以放在任何层——信号层、丝印层、阻焊层、钢网层都行。Region和Polygon最本质的区别对比项动态铺铜Polygon静态Region形状确定性随规则和避让变化固定不变是否参与网络是带网络属性否纯几何图形能否自动避让能不能可否放阻焊层不推荐可以修改方式重新铺铜手动编辑顶点适用场景电源/地平面开窗、散热、特殊图形理解了这张表你就明白为什么开窗要用Region而不是Polygon了。阻焊层要的是一个确定的窗口不是一个会变的铜皮。2.3 阻焊层开窗的底层逻辑阻焊层Solder Mask在Gerber里是负片逻辑——你画了图形的地方板厂就不盖绿油露出铜你没画的地方就盖绿油。所以开窗这个动作本质上是在阻焊层上画一个和铜皮形状一致的图形。这里有个关键点很多人搞混阻焊开窗不等于露铜。你阻焊层画了开窗但如果下面没有铜露出来的是基材不是铜。所以要露铜必须满足两个条件——铜皮存在且阻焊层对应位置有开窗。这也是为什么我们要让阻焊Region和铜Polygon形状完全一致偏一点就会出现铜露不全或者露出的不是铜。另外阻焊开窗通常会比铜皮单边大2-4mil0.05-0.1mm这是为了补偿对位公差防止绿油爬到铜皮上。这个余量在转换的时候要不要加后面实操部分我会详细说。3. 核心转换思路从Polygon到Region的完整链路3.1 整体方案设计三步走整个方案可以拆成三步把动态Polygon转成静态Region——利用AD自带的转换工具把铺铜结果固化成固定形状。把Region复制/移动到阻焊层——保持形状不变只换层。按需调整尺寸和网络属性——加上开窗余量去掉网络属性。这三步里第一步是核心也是最容易出问题的地方。AD提供了不止一种转换方式选错了会导致形状丢失、顶点错乱或者网络属性残留。3.2 为什么不用复制粘贴直接搞定有人会想我直接选中PolygonCtrlC然后到阻焊层CtrlV不就行了实测下来不行。因为Polygon复制过去还是Polygon它带着网络属性放到阻焊层会报错或者行为异常。而且Polygon在阻焊层没有意义——阻焊层不需要避让也不需要网络。还有人想用Place Fill或者Place Solid Region手动描。形状规则的时候还行形状一复杂描出来的和铜皮对不上改版还得重描。所以转换工具才是正解。3.3 转换工具的选择Tools菜单里的门道AD的Tools菜单下有几个和转换相关的命令容易混淆Convert Create Polygon from Selected Primitives把选中的图元合并成一个Polygon。这是反方向操作不是我们要的。Convert Create Region from Selected Primitives把选中的图元合并成一个Region。这个可以用但需要先把Polygon打散。Tools Polygon Pours Explode Polygon to Free Primitives把铺铜炸开成基本图元Fill、Track等。炸开后可以再合并成Region。我实测下来最稳的路径是先炸开Polygon再用Create Region from Selected Primitives合并。这样得到的Region形状和原Polygon完全一致顶点也不会丢。注意炸开操作是不可逆的炸之前建议先复制一份Polygon备份或者确认当前版本已经保存。4. 实操全流程手把手把铺铜变成阻焊开窗4.1 准备工作确认Polygon状态和备份动手之前先做三件事第一确认你的Polygon已经重新铺过铜形状是你最终想要的样子。因为一旦转成Region形状就固定了后面再改铜皮也不会同步。第二把Polygon复制一份放到空白区域作为备份。操作是选中PolygonCtrlC然后在旁边CtrlV。备份的这份先别删万一转换出问题还能重来。第三确认Polygon所在的层。通常电源铜在Top Layer或Bottom Layer转换后的Region要放到对应的Top Solder或Bottom Solder层。4.2 第一步炸开动态铺铜选中目标Polygon然后走菜单Tools Polygon Pours Explode Polygon to Free Primitives执行后原来的一块Polygon会变成一堆基本图元——通常是一堆Fill填充块和Track边框线。这时候你框选整块区域会发现选中的是一大堆小图元而不是一个整体。这一步的意图是把算法生成的填充结果变成实实在在的几何图形。炸开之后这些图元不再有网络属性也不再参与铺铜重算形状就固定下来了。实操心得炸开后如果发现有些小碎块没选中可以用Shift逐个加选确保整块铜皮的所有图元都被选中。漏选会导致最终Region缺一块。4.3 第二步合并成静态Region保持所有炸开的图元处于选中状态然后走菜单Tools Convert Create Region from Selected Primitives执行后AD会把这些零散图元合并成一个完整的Region。这时候你点一下这块区域应该能选中一个整体的Region而不是一堆碎块。合并完成后建议立刻检查三件事形状是否完整放大看边缘有没有缺口或者多余的小凸起。层是否正确Region默认会放在原Polygon所在的层需要确认。网络属性Region理论上不带网络但有时会残留后面要清掉。4.4 第三步把Region搬到阻焊层选中刚生成的Region在Properties面板里把Layer从Top Layer改成Top Solder。或者用快捷键选中后按F11打开属性改层。改层之后Region会显示成阻焊层的颜色通常是紫色或深色。这时候你在2D视图下看它和原来的铜皮应该是完全重合的。如果铜皮在Bottom Layer就改到Bottom Solder。如果是双面开窗那就复制一份Region一份放Top Solder一份放Bottom Solder。4.5 第四步加开窗余量前面说过阻焊开窗一般要比铜皮单边大2-4mil。Region转过来的时候是1:1的需要手动放大。AD里Region不能像Polygon那样直接设外扩得手动编辑顶点。方法是选中Region右键 Properties或者直接拖动顶点。对于形状复杂的Region手动拖顶点很痛苦。我的做法是在转换之前先把Polygon按规则外扩。具体操作是选中Polygon在Properties里找到Outline Expansion或者用Tools Polygon Pours Resize Polygon设置一个正值比如4mil让Polygon先外扩再炸开转Region。这样转出来的Region天然就带余量不用手动改顶点。注意外扩量要根据板厂的工艺能力来定。一般消费类板子单边2mil够用高密度板或者对位精度差的板厂建议4mil。外扩太多会导致相邻焊盘之间的绿油桥变窄甚至消失引起连锡。4.6 第五步清理网络属性和冗余图元Region转到阻焊层后检查一下Properties里有没有Network属性。如果有清空它。阻焊层不需要网络带着网络属性导出Gerber时可能出问题。另外炸开Polygon时产生的那堆原始图元Fill和Track在合并成Region后可能还残留着需要手动删掉。框选整块区域如果发现有Region之外的碎图元直接Delete。最后把之前备份的那份Polygon也处理掉——要么删掉要么移到一个不用的机械层存档别留在信号层影响铺铜。4.7 完整操作流程速查表步骤操作菜单/快捷键关键点1备份PolygonCtrlC / CtrlV放空白区别删2外扩PolygonProperties Outline Expansion单边2-4mil3炸开铺铜Tools Polygon Pours Explode确认全部选中4合并RegionTools Convert Create Region检查形状完整5改层到阻焊Properties LayerTop/Bottom Solder6清网络属性Properties Network设为空7删冗余图元Delete框选检查8导出Gerber验证File Fabrication Outputs看阻焊层5. 常见问题与排查技巧实录5.1 炸开后合并Region形状缺了一块这是最常见的问题原因通常是炸开时没有选中全部图元。Polygon炸开后有些小Fill可能被其他元素遮挡框选时漏掉了。解决办法炸开后按CtrlA全选当前区域或者用ShiftHFind Similar选中所有Fill和Track确认数量对得上再合并。如果已经合并了发现缺块撤销重来别试图在Region上补——补出来的顶点对不齐。5.2 转换后Region跑到别的层去了AD有时候会根据当前激活层来决定新图元的层。如果你在执行Create Region时激活的是丝印层Region可能就跑到丝印层了。解决办法转换前先点一下目标层比如Top Layer使其成为当前层再执行转换。转换后立刻检查Layer属性不对就手动改。5.3 阻焊开窗和铜皮对不齐如果转换过程中Polygon被重新铺过铜形状变了而Region还是旧的就会对不齐。所以转换前一定要确认Polygon是最终状态转换后不要再动铜皮。另一个可能是外扩量加错了方向。Outline Expansion设正值是外扩设负值是内缩。开窗要外扩别设反了。5.4 导出Gerber后阻焊层是空的检查Region是否真的在Solder层而不是在Signal层或者Mechanical层。另外有些板厂要求阻焊层用负片输出AD默认是正片需要在Gerber Setup里勾选对应的选项。这个要跟板厂确认清楚。5.5 常见问题速查表现象可能原因解决办法Region缺块炸开时漏选图元撤销重来全选后再合并Region层不对转换时激活层错误手动改Layer属性开窗偏位Polygon转换后被重铺转换前锁定Polygon状态Gerber阻焊为空Region不在Solder层检查并改层绿油桥消失外扩量过大减小外扩单边2mil起转换报错Polygon有非法顶点先铺铜修复再转换5.6 几个能省时间的替代方案如果你觉得炸开再合并太麻烦还有两个替代思路方案A用IPC Compliant Footprint Wizard。如果是标准封装的开窗可以直接用向导生成带阻焊开窗的封装不用手动转。方案B用脚本批量处理。AD支持脚本可以写个DelphiScript或者VBScript批量把选中的Polygon转成Region并改层。适合板子上有几十处开窗的情况。脚本的核心逻辑就是遍历选中的Polygon依次执行Explode和Create Region然后改Layer。方案C直接在阻焊层画Region用Polygon的轮廓做参考。如果铜皮形状简单可以复制Polygon的轮廓线到阻焊层然后用Create Region from Selected Primitives把轮廓线转成Region。这样不用炸开但要求轮廓线是闭合的。6. 几个容易忽略的细节和我的实操体会6.1 关于外扩量的计算外扩量不是随便定的。假设板厂的对位精度是±3mil铜皮和阻焊的对位误差最大就是3mil。为了保证绿油不爬到铜皮上外扩量至少要等于对位精度也就是3mil。如果板厂精度是±2mil外扩2mil就够。但外扩太多会挤占绿油桥。两个相邻焊盘之间的绿油桥宽度 焊盘间距 - 2×外扩量。如果焊盘间距是8mil外扩4mil绿油桥就没了回流焊时容易连锡。所以外扩量要在不露铜和不连锡之间找平衡。我的经验值是普通板子单边2-3mil高密度板单边1.5-2mil大电流散热开窗可以放到4-5mil。6.2 关于Region的顶点编辑Region转好后如果要微调可以双击进入顶点编辑模式。但Region的顶点通常很多因为是从Fill合并来的手动编辑很费劲。建议只在必要时微调大改还是回退到Polygon阶段改。编辑顶点时按住Shift可以多选顶点按住Ctrl可以添加顶点。删除顶点用Delete。这些快捷键在Region编辑里同样适用。6.3 关于双面开窗和过孔避让如果铜皮上有过孔开窗时要注意过孔本身通常是要盖绿油的除非是测试点或者散热孔。如果Region把过孔也开窗了过孔就会露铜可能引起短路或者氧化。解决办法在阻焊层用Region Cutout挖掉过孔位置或者干脆在转换前把过孔从Polygon里排除。AD的Polygon有Remove Islands和过孔避让选项可以在铺铜阶段就处理好。6.4 关于版本差异AD的版本更新比较频繁菜单路径和功能位置在不同版本里可能有差异。我用的比较多的几个版本里Explode Polygon和Create Region这两个命令的位置基本没变都在Tools菜单下。但Properties面板的布局在AD 19之后有较大调整找Outline Expansion和Network属性的位置可能需要适应一下。如果找不到某个命令可以用快捷键或者搜索功能。AD的菜单搜索右上角的搜索框很好用直接输命令名就能定位。6.5 我的实操体会这个转换方法我用了大概两年处理过几十块板子的开窗需求。最大的感受是转换本身不难难的是转换时机的把握。一定要在铜皮完全定稿之后再转转早了铜皮一改就得重来转晚了可能已经出了Gerber。另外转换后的Region建议单独放到一个机械层或者专门的阻焊参考层做备份方便下次改版时对照。我一般会在Mechanical 13层放一份Region的副本标注好对应的网络和开窗要求这样即使原Polygon删了也能快速恢复。最后分享一个小技巧如果板子上有多处开窗可以先把所有需要开窗的Polygon都转成Region统一放到一个临时层然后一次性改层到阻焊层。这样比一个一个转效率高也不容易漏。这个内容后续还可以这样扩展如果你经常做同类板子可以把这套流程做成一个AD的脚本或者模板下次直接调用。脚本的核心就是遍历选中的Polygon执行Explode和Create Region然后按预设的外扩量调整尺寸并改层。我目前正在整理这样一个脚本等成熟了再单独写一篇分享。