给一块异形板敷铜,最气人的不是板子形状怪,而是你明明点了Repour,屏幕上也铺满了铜,结果DRC一跑,三四十个错误跳出来——尖角、死铜、间距违规,密密麻麻。我见过不少工程师在圆形板、L形板、带半圆弧槽的板子上反复调整敷铜参数,最后还是带着隐患送去打样。说实话,Altium Designer的敷铜命令本身并不难,难的是理解“铜皮在异形板框里到底该怎么走”。这篇文章不聊教科书式的基础操作,而是把我在不规则形状PCB上做敷铜时踩过的坑、验证过的方法,以及最后沉淀下来的一套完整流程,一块儿分享出来。无论你是刚接触AD的新手,还是已经被异形板折磨过几轮的老人,这其中的思路和细节都值得参考。
1. 不规则敷铜为什么这么容易“翻车”:先搞清楚铜皮在板子上干什么
1.1 敷铜的真正使命:回流路径、散热和机械强度,不是“看着好看”
很多新手把敷铜理解为“把空白的地方填满”,这样理解会出大问题。敷铜在PCB设计中承担着三个非常实在的角色。首先是信号回流路径,对于多层板,地平面和电源平面通常要靠内层铺铜实现,但两层板、单层板往往需要在一层或多层通过敷铜来提供连续的地回路。如果敷铜断断续续、被切割成孤岛,高速信号的回流电流就要绕很远的路,结果带来EMI噪声和信号完整性问题。其次是散热,铜皮是板上导热能力最强的材料之一,功率器件下方的实心敷铜能有效把热量横向扩散。异形板的局部热容量本来就不均匀,敷铜如果出现大块缺失,热点会非常明显。最后还有机械强度,整面铜皮能显著提升基板刚度,尤其是在板框边缘的薄弱位置,铜皮缺失会加剧板翘曲。
不规则板形的麻烦在于,方形板的敷铜可以用一个矩形多边形轻松覆盖,铜皮的边界和板框之间关系非常简单;而异形板有圆弧、斜切、凹槽、台阶,铜皮边缘必须贴合复杂的轮廓,一不小心就会产生尖角、窄条、孤岛。Altium里的Polygon Pour本质上是用多边形逼近目标区域,对于圆弧边界,它会用若干微小线段拟合,顶点数量可能爆炸增加,这对敷铜算法的鲁棒性要求很高,也更容易触发各种奇葩问题。
1.2 异形板框下的三大隐性雷区:尖角锐刺、孤岛死铜、间距假性违规
实际项目中,我最常遇到的三类“翻车”现象都和异形板框强相关。
尖角锐刺是高频问题。当板框有小于90度的内角,或者铜皮边界在多边形拟合时出现“锯齿尖刺”,就会形成所谓的ACID TRAP(酸角)。生产制造时,线路板蚀刻液容易被困在尖角里,导致局部过度蚀刻,轻则铜线变细,重则直接断路。尤其在圆弧过渡区和切槽根部,这种尖角非常隐蔽,肉眼不仔细看根本发现不了。AD的DRC并不总能自动报出所有尖角,需要靠人眼或规则检查配合。
孤岛死铜更是异形板的“特产”。板框外凸或者内部有大面积挖槽时,如果你画的敷铜多边形与板框贴合度不高,铜皮会被分割成几个互不相连的区域。AD有一个Remove Dead Copper选项,勾选后会自动删除这些孤儿铜皮,但如果你的地过孔、焊盘分布比较零散,有些本应该相连的区域可能被误判为死铜而删除,导致地回路彻底断裂。
间距假性违规也让人头疼。异形板边缘的铜皮顶点密集,在圆弧拟合时会产生大量微小折线,这会使得铜皮边缘与板边、螺钉孔、安装孔之间的实际间距非常不好控制。有时候DRC报出“Clearance Constraint Violation”,放大一看,只是某个顶点突出去零点几毫米,但改起来很麻烦,因为顶点数量太多,手动拖动费时费力。以上这三类问题,就是异形板敷铜“一铺就报错”的根本原因。
2. 动手敷铜前的准备,才算真正决定成败
2.1 板框清理与闭合:闭合多段线、统一原点、避免微小的锯齿
很多人敷完铜才想起来板框没整理干净,结果一切努力都是徒劳。我强烈建议在打开一张异形PCB的第一天,就把“板框清理”当成优先事项。在Altium中,板框通常用一个机械层(比如Mechanical 1或Keep-Out Layer)的正闭合多边形表示。异形板框往往是从DXF导入的,导入后经常存在断点、重叠线段、圆弧方向不一致,甚至多条重复线段。用这这种板框去敷铜,Polygon Pour的边界计算会出错,生成的铜皮经常超出板边或缩进去一大块。
正确的做法是先选择板框的所有线条,在菜单Design > Board Shape > Define Board Shape from Selected Objects,用选中的轮廓重新定义板框。如果板框由多段线组成,要先用Tools > Convert > Explode Shape to Primitives之类的方式把圆弧转成可编辑的段,再用Join命令合并。同时把设计原点(Origin)定位到板框的一个绝对参考点,比如左下角或某个安装孔中心。统一原点很重要,后续敷铜参数里的坐标偏移、光绘输出的对齐都依赖原点。
还要留意板框上的微小锯齿。某些DXF文件里圆弧被转换成了一段段很短的折线,视觉上看着是圆弧,实际是几千个小线段。这种板框如果不处理,Polygon Pour会在每个折点生成一个顶点,导致铜皮的顶点数量爆炸,DRC计算会变得极慢。遇到这种情况,可以用AD的Simplify工具或者重新用圆弧绘制,把锯齿替换成一条真正的Arc。这一步虽然枯燥,但能省下后面几十倍时间。
2.2 设计规则里必须改的几项:安全间距、连接方式、最小铜皮宽度
敷铜前,我先打开Design > Rules,重点检查三类规则。
第一类是Clearance安全间距规则。对地网络而言,我一般设置0.2mm到0.3mm的间距(如果板子密度不高,0.25mm比较合适)。但要注意,异形板的个别区域可能因为板边和铜皮距离过近,触发实际间距不足。所以我会额外为“多边形的边框”建一条规则:Polygon需要与板框保持0.5mm以上的间距。这个值可以通过设置Clearance规则中的“All”与“Board Outline”的间距来实现,也可以直接在敷铜属性里的Pullback from board edge设置内缩距离。
第二类是连接方式。在Polygon Connect Style规则里,通常把“过孔”与“铜皮”设为Direct Connect(直接相连),而“焊盘”设为Relief Connect(热焊盘)。热焊盘方式可以防止焊盘上的热量快速流失,导致虚焊。但是对于功率器件地上的大电流焊盘,我就会单独添加规则,把它改成Direct Connect。
第三类是最小铜皮宽度,在Manufacturing > Minimum Solder Mask Sliver、Minimum Copper Width等规则中设置。异形板边缘细长铜条容易在腐蚀时断裂,我通常把最小铜皮宽度设为0.3mm以上。如果你设计的铜皮存在0.2mm以下的细颈,DRC会直接标红,这时候就要调整敷铜边界或增加铜皮宽度。
2.3 网络分类和区域规则:为什么要在敷铜前就把地属性分好
敷铜大多数时候是铺GND网络,但异形板上往往有模拟地、数字地、功率地、屏蔽地等多个地网络。如果你在敷铜前没有把相应区域的网络属性分清楚,Repour之后就会出现不同地网络之间需要分割的情况,那时再来改就费劲了。
我的建议是在原理图设计阶段就把地网络用网络标号区分开,然后在PCB布局时用房间(Room)或区域(Region)加以划分。敷铜时,可以给每个区域分别画多边形,然后指定不同的网络。对于有高压和低压、模拟和数字分割需求的异形板,还可以使用Design > Rules > Region规则,直接画一个矩形或异形区域,在这个区域内设置不同的Clearance值。比如晶振下方,我习惯用区域规则禁止敷铜,以减少寄生电容。总之,在点下Polygon Pour按钮之前,至少花15分钟把网络和规则理清楚,比敷铜后再去修补要高效得多。
3. 一步步创建完美敷铜:从放置到修整的完整流程
3.1 放置铜皮的正确姿势:沿着板框描边还是用多边形?不同画法的取舍
Altium中放置敷铜的入口是Place > Polygon Pour,快捷键P + G。在弹出的属性面板里,首先选择网络,然后选择层(Top Layer、Bottom Layer或内层),再设置Polygon Pour的面板参数。关键的地方在于画法。
很多人在异形板上习惯沿着板框手动一个点接一个点地描边,描出来的多边形虽然很贴合轮廓,但效率太低,而且折点太多。更高效的做法是先用板框作参考,在Polygon Pour面板点击“Draw on board”模式,把鼠标放在板框边缘上,按下Shift+空格可以切换画线模式,直接在圆弧上生成平滑的敷铜边界。但这里有个技巧:不要把敷铜边界完全等同于板框,应该在Polygon Pour的“Pullback from board edge”参数里设置一个内缩距离,一般我设为0.5mm。这样铜皮会自动从板框向内缩进,既不会超出板边,也避开了边缘粗糙加工区,还能减少修改顶点的工作量。
如果你的板框已经通过“Define Board Shape”定义好,也可以在放置敷铜时直接使用“Outline”模式,AD会自动从板框轮廓生成一个初始多边形,再结合内缩参数调整。对于在机械层与Keep-Out层都有复杂轮廓的异形板,这种方法极为省力。画完多边形后,软件会提示是否立即Repour,一般先点No,等所有敷铜对象都放好后再一起处理。
3.2 排除区(Cutout)和禁布线区的巧妙组合:给螺丝孔、连接器让位
异形板往往有大量不规则排布的安装孔、定位孔、型腔、开槽。如果直接让铜皮包着这些孔走,Repour后会在孔边留下应力集中或间距违规。更好的做法是使用敷铜中的Cutout功能(在Polygon Pour属性窗口中点击“Cutout”),在铜皮内部放置一个或多个闭合的挖空区域,形状可以跟随开槽形状。
例如,在圆形板上,中央有一个大的矩形定位孔,我会先在板框外画一个完整圆形敷铜,然后为定位孔添加一个矩形Cutout。Cutout可以多段线绘制,也可以从机械层复制轮廓后粘贴。这样Repour后,铜皮会精确避开孔洞,而且不会在孔边残留细长铜尖。
除了Cutout,AD双面板的Keep-Out line也可以起到禁布作用。把Keep-Out层沿着敏感区域画一圈,Copper Pour会默认避让Keep-Out区域(需要在Design > Rules > Placement的Room Definition里设置,或者在Polygon Pour属性中勾选“Avoid keepouts”)。我通常对高压隔离带、无线天线的净空区、以及连接器下方容易产生干涉的区域使用Keep-Out,效果比手动Cutout更灵活,因为后续修改板框时Keep-Out会跟着更新。两者搭配使用,异形板的敷铜边界问题能解决八成。
3.3 敷铜后的“整形”:手动调整顶点,消灭尖角和窄颈
Repour完成后不可能一次完美,总有需要手动“整形”的地方。Altium提供了一个非常好用的工具:用鼠标左键单击选中敷铜对象,然后选择菜单Tools > Polygon Pours > Move Polygon Vertices,这时敷铜的所有顶点都会显示出来,可以单独拖动。也可以直接用快捷键E + M + V快速进入顶点编辑。
对于尖角,我一般把尖角所在的两个相邻顶点合并成一个顶点,或者将其中一个顶点拖到更平滑的位置。对于细颈(即铜皮的宽度突然变得很窄),需要扩大该区域的边界。如果细颈出现在圆弧边缘,我倾向于调整圆弧的逼近精度(Polygon Pour属性中的“Arc Approximation”选项),把圆弧拟合误差从默认的0.05mm改成0.025mm,顶点会变多,但圆弧更圆滑,细颈也会消失。
别小看手动整形。我在一块圆形板边缘处理过一个角度只有25度的尖角,当时不处理,DRC也没报错,结果板子回来后,那个位置在焊接受热时铜箔翘起,最后直接刮断了。后来养成习惯,每次修完顶点后都用Shift+C快捷键打开DRC,同时用光标高亮查看当前编辑位置的网络连通性,确保没有产生断路风险。异形板敷铜的“完美”不是一次Repour就能达成的,往往要经过两三轮手动微调。
4. 高频避坑实录:这些坑我基本每个项目都踩一遍
4.1 死铜的识别与处理:Repour瞬间消失的铜皮去哪了
有一次我给一块L形板敷铜,Repour之后发现右上角本来应该是完整铜皮的地方空了一块,就像一个孤岛被自动删除了。第一反应是“我还没勾选Remove Dead Copper啊”,后来检查发现,那个区域与整个地网络之间只通过一根0.07mm的细线相连,软件判断它是死铜,即便没有勾选删除,它也会因为无法满足最小铜皮宽度而被断开,看起来像被删了。
处理死铜的通用方法是:在Polygon Pour属性中取消勾选Remove Dead Copper,然后重新Repour。这时你会看到所有孤岛都显示出来,再手动判断哪些孤岛有用,哪些没用。对于有用的孤岛,我会给它补充一个或两个过孔,让它与相邻的地平面连接起来;对于没用的,就用Cutout盖掉。千万别嫌麻烦,死铜如果留着不管,在EMC测试中就是一根根小天线,可能让你的辐射超标或敏感度变差。尤其是异形板边角处的孤岛,最容易被放电干扰,必须处理干净。
4.2 热焊盘怎么设置才不会“焊不上”或“虚焊”
异形板上的电源芯片或连接器焊盘如果是大面积实心铜皮直接相连,焊接时热量会迅速被铜皮吸走,烙铁温度偏低、回流焊峰值时间不够时就容易虚焊。标准做法是把焊盘连接方式设为Relief Connect,也就是通过几根“桥”连接到铜皮。我在默认设置里把热焊盘的桥数量设为4个,桥宽0.3mm,空隙宽度0.3mm。
但异形板上有个特殊情况:如果敷铜边界形状导致某个焊盘位于铜皮的“颈口”处,热焊盘的桥可能一长一短,甚至有一根桥会被切掉形成2根桥。这时候不能只靠默认设置。我的习惯是:在Rules的Polygon Connect Style里新建一个针对该器件的规则,把Connection Style设为Direct Connect,然后关闭它的所有热焊盘设置——这在功率大电流场合反而是最优解。对于需要热焊盘的普通信号焊盘,则要单独确保其周围0.6mm内的铜皮足够完整,不要让热焊盘桥体落在死铜上。我见过有人因为板框挖槽太深,某颗电容的地焊盘正好在铜皮尖端,热焊盘桥体只剩下1根,焊接后电容明显偏移,这就是规则和形状相互作用的结果。
4.3 间距违规的排查链路:从DRC报告到坐标定位再到物理修改
异形板敷铜后DRC报出的间距错误,往往不是一排排连续的,而是东一个西一个,让人崩溃。我的排查链路很固定:先打开Messages面板,找到“Clearance Constraint Violation”错误,双击它,视图会自动跳转到违规点。然后用Shift+S进入单层显示模式,把当前层设为敷铜层,检查周围的铜皮边缘。违规原因有三类:一是铜皮的顶点间距过近,两段折线之间形成小于规则间距的缝隙;二是铜皮与板边开槽的间距不足;三是两个不同网络的铜皮多边形重叠,这在异形板多板上敷铜时经常发生。
定位到具体位置后,我一般不会直接在DRC里右键“Change Rule”草草了事,除非确实是规则设置不合理。大部分情况是敷铜边缘需要微调。调用Move Polygon Vertices工具,把造成最小间距的那个顶点向外或向内拖动0.1mm到0.3mm,然后重新Repour。如果你发现某个地方反复调整还是报错,可能要回到源头,检查是不是板框本身有两段线在这里形成了一个极窄的尖角,导致无论怎么敷铜都避不开。这时候我会回机械层把板框尖角适当“磨平”,改成一个R角,敷铜瞬间就正常了。记住,DRC是用来帮你发现设计缺陷的,不要为了让报告好看而盲目降低规则放宽间距,那等于掩耳盗铃。
4.4 网格敷铜和实心敷铜的选择:高频板与功放板的区别
异形板上用网格敷铜还是实心敷铜,很多人凭感觉选。网格敷铜的优点是铜的占用率低,板材热应力小,在回流焊时不容易起泡,而且对高频信号的涡流损耗有一定抑制作用;缺点是网格线的电阻、电感特性不好控制,且网格的每个交点都可能成为制造缺陷点,尤其是在异形板的弧线边缘,网格线与板边框形成小夹角,会产生细微的“毛刺”。
我的经验是:高频电路(比如射频、微波)区域尽量使用实心敷铜,保证参考平面连续;对低频、散热要求不高的大面积铺地,可以考虑网格敷铜,但网格的最小线宽不要低于0.2mm,网格间距不要大于0.5mm。异形板的边缘,无论是网格还是实心,都要设置好“Remove Islands”或“Remove Dead Copper”的阈值。如果是规则形状的方板,网格敷铜这个坑不明显;但异形板板边是圆弧时,网格敷铜容易出现半格、碎格,非常难看,且DRC误报率高。所以我个人更推荐在异形板上全部使用实心敷铜,然后通过设置Cutout或Ploygon的“缩小-放大”功能来获得局部的网格效果,而不是全局网格。
5. 让不规则板敷铜更高级的几个辅助手段
5.1 过孔缝合:用缝合孔把多个地平面连成一张网
多层板的异形区域,经常出现同一网络在多个层都有敷铜,但层与层之间连接过孔不足的情况。这样不仅回流路径长,还会出现局部地电位不稳。Altium提供了一个极其实用的功能:Tools > Via Stitching > Add Stitching to Net。选择GND网络,设置过孔间距(我一般用1mm到2mm,异形板边缘可以更密),AD会自动在敷铜区域内放置一排排地过孔。这些过孔的好处是把上下层的地铜皮“缝合”在一起,形成一个立体屏蔽网。
异形板上最需要缝合过孔的位置是:板边缘的铜皮边界、射频区域四周、电源转换电路的地平面。比如一块圆形板,沿整个圆弧边每5mm放一个地过孔,能显著改善EMI。放完缝合过孔后,一定要重新Repour所有敷铜,让过孔和铜皮之间形成连接。我通常在规格书中要求板厂对缝合过孔做盖油处理,防止过孔裸露导致短路。
5.2 区域规则(Region Design Rule)在局部救急中的应用
面对异形板上很刁钻的间距约束,整体设计规则无法满足时,我就用区域规则。在Design > Rules里可以新建一条Clearance规则,将其Scope设置为“Where The First Object Matches: Region”,然后画出任意形状的Region。比如一块异形板上有一个圆形射频测试座,周围0.5mm内不允许敷铜,我就画一个圆形Region,把该区域内的敷铜网络与非敷铜网络间距设置为10mm以上,等于这块区域直接不铺铜。虽然也可以用Keep-Out,但Region规则更精细,能直接作用于铜皮生成逻辑。
还有一个实用场景:异形板因为边缘太窄,铜皮与板框的间距在部分区域实在做不到0.5mm。我会单独为那段弧形边缘画一个Region,把该区域内的板框间距规则降到0.3mm,并保证该区域没有其他网络,然后对板厂说明该处是设计极限,请他们加工时特别注意。这里要提醒一句,区域规则不是用来掩盖错误的,它必须服务于明确的设计需求,否则宁可修改板框和结构。
5.3 脚本批处理:几十块异形板如何一键重新敷铜
如果你手头有十几块异形板,每一块都要花一个上午去调整敷铜参数,你会崩溃的。Altium的Scripting系统可以帮你把这部分重复劳动省下来。在项目里添加一个DelphiScript脚本,用命令PolygonManager或遍历PCBBoard.Polygons,批量设置敷铜属性(网络、层、间距、Remove Dead Copper等),然后调用ResetPolygon和RepourAllPolygons。我用过一个简单脚本,配合快捷键把当前工程里所有已放置的敷铜先删掉死铜,按统一内缩值重铺,再把所有错误报告导出成文本。虽然脚本写起来有学习成本,但一劳永逸,特别是处理异形板这种顶点多、规则杂的场景。
如果你不想写脚本,Altium 17以后自带的Polygon Pour Manager(菜单Tools > Polygon Pours > Polygon Manager)也很好用。它会把整个设计中所有的敷铜对象列在一个表格里,你可以多选、批量修改属性、统一Repour,还能同时查看每个敷铜的状态和网络。这个管理器对于核对异形板上不同区域的地铜皮是否连接,相当高效。
6. 验证环节:别急着发板,这四道检查少一道都可能返工
6.1 DRC检查的配置与误报识别
敷铜收工后,我至少会做一次完整的Batch DRC。打开Design > Board Rules and Violations,或者运行Tools > Design Rule Check。在Rule To Check里,我重点勾选Clearance、Un-Routed Net、Width、Short-Circuit、Polygon Connect Style。跑完DRC之后,先别急着清除错误。你要学会识别哪些是真正的错误,哪些是异形板造成的“假性错误”。比如圆弧边缘的切线间距问题,有时候是因为你网表的焊盘与铜皮圆弧顶点之间正好相切,但实际光绘精度能达到,这种可以酌情忽略。但如果你无法确认,还是处理掉更安全。我的原则是:DRC有红叉就查,查完能解释清楚原因才放过,解释不了就一定要修,不能留到打样以后再后悔。
6.2 Gerber输出前必须看的光绘和阻焊层预览
敷铜是否完美,最终要体现在Gerber上。在File > Fabrication Outputs > Gerber Files里,要确保包含了所有敷铜层和板框层,同时把“Plot Layer”的“Board Outline”勾选上,这样板厂才能确定铜皮和板边的相对位置。输出后,我会用AD自带的CAM编辑器打开Gerber文件,逐层放大查看圆周边界上的敷铜质量。重点关注:圆弧处有没有成片的锯齿,铜皮边缘有没有发丝般的尖角,阻焊层和铜层之间的对位是否一致。很多时候,在设计界面看着正常的敷铜,在Gerber里会暴露出RS274-X格式的光绘近似误差,提前发现就能避免板厂反复打样。
6.3 3D视图查看铜皮与元件干涉
异形板的3D模型更容易出问题。工具栏View > Switch to 3D,或者快捷键3,查看板子的立体模型。这个角度特别适合检查元器件底部铜皮是否与外壳、安装孔边缘发生干涉,尤其是那些跨在板框边缘的接插件和按键。开3D模式后,可以旋转板子,透过透明层检查铜皮与焊盘的连接关系,或者用鼠标点击铜皮,看它的网络高亮是否连通到正确的焊盘。曾经有个案例,异形板的微带线末端焊盘被敷铜的Heat Spoke覆盖,3D视角能清楚看到焊盘边缘的桥接状态,我在设计环境下完全没察觉。
6.4 实测心得:小批量试产后的真相
即使前面所有检查都通过,异形板敷铜的效果仍需要通过样机或小批量试产来验证。我自己的经验是,首板回来通常会有两到三个“隐藏惊喜”:可能是热焊盘连接桥在焊接时断裂,可能是长条异形铜皮在贴片回流焊时出现轻微翘起,也可能是高频电路的敷铜地过孔位置导致回波损耗变差。遇到这些问题,不要急着改整个敷铜策略,先在试产板上用工艺手段(比如调整回流炉温曲线、增加夹具)验证,再决定是否需要修改敷铜形状。有次我把一个圆形板上的网格敷铜改成实心敷铜,散热表现明显改善,但EMI测试又出了问题,原因是实心铜皮让参考平面和隔离区的间隙发生了变化。后来给那部分加了一排缝合过孔,才平衡下来。所以,敷铜的“完美”不是静态的,是在实测反馈中不断微调出来的。
最后说一点个人体会:异形板敷铜最忌“眼到手不到”。Altium提供了足够多的工具和规则,但真正做出可靠设计,靠的还是对铜皮在电气、制造和装配三重需求下如何妥协的理解。每次拿到新板框,先把边界、间距、网络理清,再统一用Polygon Manager批量管理,能让你省下大部分返工时间。希望这篇避坑指南能帮你少走几条冤枉路,也欢迎在评论区聊聊你遇到过的最离谱的敷铜问题。