☰
Altium Designer多边形覆铜挖空:三种实用技巧与避坑指南
2026/9/28 23:03:01 网站建设 项目流程

做PCB设计的人多半都听过这句话:铺铜一时爽,挖空火葬场。这里说的AD,就是Altium Designer,画板工程师天天用的那套软件。平时在PCB上铺一大片多边形覆铜,接地、散热、回路都挺舒服,可一旦碰上蓝牙天线的净空区、螺丝孔周围的安全距离、金属结构件下方的避让位,就必须让大片铜皮里的某一块“凭空消失”——这件事有个正经名字,叫多边形覆铜挖空。

很多人以为挖空就是把铜皮删掉一块,其实真不是。删掉之后重新灌一次铜,你刚删的地方又会原封不动长回去。真正靠谱的办法是让AD的覆铜引擎知道:这里有块区域,不允许出现铜。绕明白这个概念,后面所有技巧都好理解了。

这篇文章整理了我平时最常用的3种挖空办法,每一步都按实际操作的先后顺序拆开讲,配合动图演示的说明也写在对应位置。如果你正在画射频板,或者被螺丝孔、结构件的净空问题搞到烦躁,这篇你可以直接收藏,按步骤操作,基本一次就能弄对。先说明一下,这里说的AD是Altium Designer,跟IT圈那个管理电脑的AD域控完全是两码事,别搞混了。

1. 为什么非要挖空:多边形覆铜里的“开天窗”场景

1.1 天线净空区:射频性能的第一道防线

先聊最刚需的场景——天线净空区。蓝牙、WiFi、LoRa、GPS模块,几乎所有带天线的产品,都会在天线附近的一片区域里要求PCB不能有大面积完整铜皮。原因不复杂:天线下方如果有完整的参考铜层,它的辐射方向图会被改变,阻抗也会偏离设计值,实测结果可能就是信号差、距离近、隔一堵墙就断连。

我自己做过一个2.4G模块项目,刚开始为了接地好,模块位置下方全部铺铜,结果实际测试下来,通信距离只有预期的三分之一。后来把天线下方大约10mm x 10mm的区域挖空,只留天线走线和很少的过孔,距离立马恢复正常。那次之后我在铺铜前都会先确认:板上有没有天线,天线文档里有没有净空要求,如果有,必须在铺铜阶段就预留挖空区域。

还有一个细节容易被忽略:天线净空区并不是只要普通挖空就行,很多时候还要求“所有层都挖空”。也就是顶层、底层、内电层都不允许铜皮出现。这种需求如果每层手动挖一遍,容易漏层。我后面讲的技巧一里有个Layer设为All的做法,就是专治这种情况的。

1.2 螺丝孔、结构件和散热区域的避让

除了天线,螺丝孔和结构件区域也经常要挖空。螺丝孔周围如果布满铜皮,虽然从电气上未必短路,但安装螺丝时,金属螺帽压到铜箔上,在振动环境下可能磨穿阻焊层,引发隐患。尤其是靠近板边的螺丝孔,应力一大,铜皮起翘脱落也很常见。所以工程师一般会围绕螺丝孔画一个比孔直径大2到3毫米的净空圆,把铜皮让开。

金属结构件下方也是类似逻辑。有些产品会直接把金属支架压在PCB上,支架下方如果有大片铜皮,就会跟板内电路产生寄生电容,影响敏感信号。更别提散热片了,散热片接地设计不规范时,下方铜皮就是个天线。这些区域都得在铺铜时做挖空处理。

这里要强调一点:以上场景说的是“铜皮让开”,不是“板子开孔”。很多工程师一开始搞混,拿了一把挖空操作去做,结果Gerber发给板厂后,板厂问你要不要钻槽。实际上覆铜挖空只动铜皮,基材(FR4)还是完整的。如果你要的是物理孔洞,那得用板框层或Board Cutout去画,那是另一个知识点了。

1.3 先搞懂原理:挖空不是删除铜,而是重新灌铜时的“禁区”

为什么反复强调“重新灌铜”?因为AD里的多边形覆铜是一个动态计算对象。你第一眼看到的覆铜,是上一次灌铜之后保存下来的结果。你手动去删除一小块铜皮之后,如果不重新灌铜,显示层面看起来可能是空了一块,但覆铜数据其实没变;等你下一次动了覆铜边界、改了网络、或者重新铺铜,删除的地方就恢复原样了。

正确的做法是加入挖空对象(Polygon Pour Cutout)、Keepout禁布区或者复制模板区,告诉AD“这块地方不允许铺铜”,然后再让覆铜重新计算结果。AD的覆铜引擎会在重灌时自动把挖空区域排除掉,生成带“天窗”的铜皮。理解这件事之后,后面三条技巧都是同一个套路:定义禁区,重灌铜。

重要提示:无论用哪种挖空方式,只要动过挖空对象、覆铜边界、板框或规则,最后都要重新灌一次铜。否则Gerber里出现的还是旧覆铜。

2. 技巧一:多边形覆铜挖空命令,直接画出净空区域

2.1 放置多边形挖空:一个命令搞定单个异形区域

AD软件里其实自带一个专门针对这个需求的功能。菜单路径是Place → Polygon Pour Cutout,中文菜单一般叫“放置 → 多边形覆铜挖空”。工具栏上也有对应图标,是一个带斜线的多边形小图标,鼠标放上去悬停几秒能看到提示。

点击命令之后,光标变成十字,就可以像画覆铜一样绘制挖空区域的轮廓了。画法跟画多边形覆铜几乎一样:按Shift+空格键切换走线角度模式,支持45度、90度、任意角度等;按空格键可以在圆弧和直线之间切换。把轮廓依次点出来,最后回到起点,图形就闭合了,右键或者按Esc结束命令。

我习惯画的形状有两种:一种是贴着天线匹配电路画的L形净空区,另一种是螺丝孔周围的圆形净空区。用这个命令画圆比较直接,点几个关键点之后右键结束,不满意还可以拖动边缘调整。

在下面动图演示里,我画的是一个L形挖空区:先沿着天线下方走一条折线,再绕回闭合。整个画图过程跟画普通覆铜一模一样,没有任何特殊操作,这也是它最方便的地方——不需要预先做任何规则设置,画完就算定义好了。

2.2 属性设置:层别、锁定的讲究

画完挖空区域之后,双击它打开属性面板,有几个地方值得重点看一下。

首先是Layer(层别)。AD19之后用的是右侧Properties面板,旧版本可能是一个弹窗,但参数含义基本一样。系统默认可能会放在当前工作的信号层,比如Top Layer或Bottom Layer。如果你只想让顶层覆铜挖空,这个设置没问题。但如果你画这个区域是要让所有层的铜皮都让开(大部分天线净空区都这么要求),那就需要把Layer改成All。改成All之后,顶层、底层、内电层重新灌铜时,全都会把这片区域排除在外。

其次是锁定状态。如果这个挖空区域后续不会轻易改动,我建议把Locked勾上,防止在移动其他元件或者拖拽覆铜边界时把它不小心挪走。但要注意,锁定状态下仍然可以选中,只是不会因为误操作被平移。

还有一个不容易发现的细节:多边形挖空区域会影响哪些层,取决于它的Layer属性,而不是它当前画在哪一层。很多人在顶层画了一个挖空,跑到底层发现没生效,异常困惑。其实检查一下Layer属性是不是All就知道了。

2.3 重新灌铜:挖空生效的最后一步

画好挖空区域,还差最后一步:重新灌铜。在菜单栏执行Tools → Polygon Pours → Repour All,AD会自动把板上所有多边形覆铜重新计算一遍。等待进度条走完后,你再看覆铜,会发现刚才画的挖空区域内已经没有铜了,边界处也是干干净净的避让。

如果只想单独重灌一块覆铜,不用全板都动,可以选中那块覆铜,右键选择Polygon Actions → Repour Selected。这个操作平时很实用,比如板子上覆铜多,全板重灌要等好几秒,局部修改就局部重灌,效率能提升不少。

重灌完成之后,建议用快捷键View → Fit Board或者直接缩放看一下整体效果,确定挖空区域边缘没有细碎的尖角铜刺。如果有特别小、特别尖锐的铜尖,多半是挖空轮廓与覆铜边界夹角太小,可以稍后调整挖空形状,或者在覆铜属性里打开Remove Dead Copper让它自动清理。

2.4 实战演示:一个L形天线净空区的完整流程

这里我把刚才提到的过程串成一份可以直接照做的步骤清单。假设板上已经铺好了整块覆铜,现在要按天线要求挖出一块L形净空区。

第一步,执行Place → Polygon Pour Cutout,光标变成十字。第二步,用Shift+Space切换成45度模式,依次点击L形轮廓的5个关键点,围出一个顶点。第三步,回到起点闭合,右键结束,屏幕上出现一个浅灰色的挖空区域,此时区域上还有铜。第四步,双击挖空区域,右侧Properties面板里把Layer改成All,并勾选Locked。第五步,执行Tools → Polygon Pours → Repour All,等进度条走完。第六步,缩放检查,L形区域内的铜皮已经全部消失,边缘避让干净。

这六步并不是只适用于天线净空区,任何需要覆铜开窗的地方都可以用这套流程。你只要把形状换成需要的轮廓就行。

3. 技巧二:用Keepout层画“禁区”,让覆铜自动绕开

3.1 在Keepout层绘制闭合挖空区域

第二种方法是用Keepout层(禁止布线层)来定义禁区。这个方法严格来说不是先画好挖空对象再让覆铜避让,而是先在Keepout层画出一个不允许任何布线对象进入的区域,覆铜在重灌时会自动检查这些Keepout对象,只要边界闭合,就会把这个区域排除在覆铜范围之外。

具体操作是:先切到Keepout层,使用Place → Keepout → Solid Region,或者Place → Keepout → Fill,画出一个闭合的禁区。如果需要非矩形区域,Solid Region更灵活,可以画成任意多边形;如果只是矩形净空,Fill就够了。

如果你画的不是Solid Region,而是用Track线条围的一个圈,那就不能算一个完整的Keepout区域,覆铜可能不认。这点很关键,Keepout挖空必须是一个闭合的、有区域属性的对象,而不是简单的几根框线。

画好之后可以顺便给Keepout区域取个名字,比如ANTENNA_CLEARANCE或者SCREW_HOLE,方便后面设计评审的时候一眼看懂。AD会在所有层显示该区域的边界,如果你的Keepout对象Layer属性是All Layers的话。

3.2 让覆铜对Keepout区域让开的关键设置

Keepout区域默认会限制很多对象类型,比如禁止走线、禁止放过孔、禁止覆铜等。不过具体限制哪些,取决于Keepout属性里Restrictions(限制)相关的勾选项。如果你想让它只对覆铜生效而允许走线通过,那就把Allow Tracks、Allow Vias这些复选框勾上,只保留对覆铜的限制。但很多人的场景是“整块都不能有东西”,那就不用调整默认值。

还有一个容易踩坑的地方:Keepout对象的Layer属性。Place → Keepout → Solid Region放置时,属性面板里也有一个Layer选项,默认可能是Active Layer,也就是当前层。如果你想让所有电气层的覆铜都让开,需要把Layer改成All Layers。这里跟技巧一的逻辑一样,只是换成了Keepout的字段。选错层的结果就是顶层避让了,底层照样铺铜。

设置完成后,执行Tools → Polygon Pours → Repour All重新灌铜。你会看到Keepout区域内的铜皮被清空,而且因为Keepout本身就带禁布属性,走线和过孔也不会贸然出现在这个范围里。

3.3 Keepout挖空的优点和局限

优点这一块非常明显:Keepout区域具备完整的设计约束能力。当一块区域不仅不要铜皮,还不要走线、不要器件,用它最合适。比如触摸按键四周、高压电路隔离带、金属支架投影区,用Keepout一次搞定,后面画布线也不会往里面钻。

缺点是它会带来额外的DRC约束。如果在Keepout区域内已经存在走线、过孔,重新灌铜后DRC会把错误列出来,报Keepout Violation。如果是自己画的板子,这无所谓;如果是多人协作的PCB项目,别人不知道这里有个Keepout,布线的时候误闯进来,就会多出一堆错误。

另外,Keepout区域是会出现在Gerber里的。大多数板厂会按Keepout层信息来做禁止布线,也有的板厂不会直接把Keepout视为不可覆盖铜皮,这在输出Gerber时要注意确认Keepout层是否包含在内。我习惯在自己电脑上检查Gerber预览,确认挖空区域在铜层上确实空出来,不依赖板厂的理解。

注意:Keepout挖空通常是一种“硬约束”,它会同时禁止覆铜、走线、元件、过孔。如果只是一小块区域要求铜皮让开但允许走线穿过,用Keepout会误伤设计,这时候建议用技巧一的多边形挖空命令,而不是Keepout。

3.4 实战演示:螺丝孔周围的Keepout净空

假设板子四角各有一个M3螺丝孔,孔径3.2mm,需要周围5mm范围内不能有铜皮,也不能有走线过孔,方便安装时不会碰到任何电气对象。

先在Keepout层,用Place → Keepout → Solid Region画一个以螺丝孔中心为圆心、直径8mm的八边形区域。用Shift+Space切到45度模式,大概点8个点就能围出一个接近圆的区域。双击区域,把Layer改成All Layers,然后复制到其他三个角。最后Tools → Polygon Pours → Repour All,四个螺丝孔周围的铜就全部让开了。

为了防止以后移动螺丝孔位置时Keepout忘了一起动,我建议把Keepout区域和螺丝孔一起选中,做成一个Union(联合体)。AD里有Edit → Union命令,这样拖动螺丝孔时Keepout区域会跟着走,不会出现孔位和净空区错位的情况。

4. 技巧三:批量挖空与跨板复用,摆脱重复劳动

4.1 复制粘贴:多个相同挖空区域一次搞定

做多路电源板、阵列板、一板多模组的时候,经常遇到同一块板上要有好几个一模一样的挖空区域。比如四个螺丝孔周围都要净空,或者两个天线的净空要求完全一样。如果一个个重新画,既慢又容易不一致。实际上,AD里的多边形挖空对象和Keepout区域都是支持跨文件复制的。

操作方法很简单:选中第一个挖空区域(或者Keepout区域),Ctrl+C复制,然后Ctrl+V粘贴,放到下一个目标位置。粘贴时可以用M键移动,或者直接输入坐标精确定位。如果同一行有好几个,可以用Edit → Paste Special,勾选Paste on current layer等选项,再按X、Y方向偏移复制。

复制完成之后,最关键的一步依然是重新灌铜。因为复制出来的挖空对象同样需要参与覆铜计算,不重灌就不会生效。我在实际项目里,经常一次复制几十个螺丝孔净空区,然后全板Repour All,几十秒就全部搞定。

4.2 构建自己的挖空“模板库”

更进一步,可以把常用挖空区域保存到一个专门的模板PCB文件里。比如库里放一个“蓝牙天线净空区模板”,里面预先画好了Layer=All的多边形挖空,再放一个“螺丝孔净空模板”,包含各种孔径对应的Keepout圆。新项目开始的时候,把模板里这些对象复制过去,粘贴到目标坐标,全部设计规范就跟着过去了。

这个思路对团队协作特别有用。一个团队里总有新人,你不可能每次都跟他解释“天线区域怎么挖空、螺丝孔周围留多少、Keepout要选哪层”。你只需要给他一个模板文件,让他复制粘贴,从根源上减少人为出错。这比写一百页设计规范还管用。

还有一个小技巧:如果公司内部有固定的板框模板,可以把挖空对象直接放进板框模板里,每个新PCB工程启动时自动带着这些净空区。这样连复制这一步都省了,只要调整坐标位置就行。我自己做量产项目时,会把螺丝孔净空、天线净空这些标准区域全部放进板框模板,画板效率高不少。

4.3 三种挖空方式怎么选:一张表看懂

写到这里,三种方式其实已经都过了一遍。它们是并列的,没有绝对的好坏,关键在于用对场景。我平时是这样选的:

挖空方式适用场景是否限制走线推荐理由
多边形挖空命令任意形状净空区、射频天线净空、单层/全层挖空不限制灵活,不误伤布线
Keepout禁布区结构件投影、高压隔离、既要无铜又要无线的区域限制一次定义多类禁布规则
复制模板批量挖空多个相同区域、阵列板、团队标准统一取决于模板内容减少重复劳动和人为误差

从操作步骤上看,三种方式最后都要重新灌铜。从项目可靠性上看,我的建议是小区域、形状复杂的用多边形挖空;大区域、规则要求全面的用Keepout;需要重复出现、或有团队标准的,用模板复制。

5. 踩坑记录:为什么你的挖空总是“翻车”

5.1 挖空后铜皮还在:十个有九个是没重新灌铜

就算写得再明白,实际工作里还是会遇到同事问我:为什么我挖了,铜皮还在?我第一句话就是问:你重新灌铜了吗?大部分时候对方愣住了。在AD里,你画完挖空、改完覆铜属性、移动完Keepout区域,这些操作都只是改变了“规则”,覆铜的实际图形不会实时更新。都要靠重灌来重新计算。

所以碰到挖空不生效,第一反应不是怀疑AD坏了,而是先保存文件,然后Tools → Polygon Pours → Repour All,看结果。如果重灌之后还是不对,再去看挖空对象的层属性或者是否复制齐全。

5.2 顶层挖了底层没挖:层属性没设成All

还有一种现象很经典:顶层覆铜开好了天窗,底层覆铜却没避让。单独看物件的Layer属性,果然是Top Layer,不是All。如果你明确要求所有层净空,就应当在放置或粘贴后把Layer改成All。如果只是想让底层也避让而内层不需要,也可以把挖空对象复制到另一层再改层,但我觉得不如直接设为All来得省心。

这里顺便说一句:很多工程师从别人模板里复制过来的挖空对象,有时不知道原来设的哪一层。粘贴完成后记得双击检查一下Layer,不要默认它一定是你要的层。复制操作不改变对象本身的层属性。

5.3 Keepout挖空之后,DRC疯狂报错

用Keepout做挖空最容易被吐槽的就是DRC报错。明明我画了一个禁止区域,板子上却有一堆Keepout Violation提示,打开错误列表看,全是之前不小心放进去的走线、过孔甚至覆铜碎片。

解决办法是:在画Keepout之前先用Shift+S把布线都看清楚;如果Keepout是后来加的,先把区域内已有的布线和过孔移出去,再重灌覆铜。如果你确定某条走线就是要穿过这个区域,那说明这里不应该用Keepout来约束,请改用多边形挖空,只限制覆铜,不限制走线。

DRC规则里也可以对Keepout单独设置严重程度。不过我个人不建议通过关掉DRC检查来掩盖问题,因为Keepout被绕过,比DRC报错更危险。

5.4 挖空区里残留碎铜:Remove Dead Copper设置

有时候重灌完,挖空区域的边缘附近会有一些不要的小块碎铜。这些碎铜多半是和主覆铜没有完整连接的死铜,或者由于夹角过窄形成的铜锋。在覆铜属性中勾选Remove Dead Copper,再设置一个Remove Islands Smaller Than的面积值(比如默认10 sq. mils,根据工艺自己调整),重新灌铜后,满足条件的死铜会被自动拿掉。

如果你还是看到一大块铜,那可能不是死铜,而是某个网络通过很窄的路径连到了主覆铜。这时候可以用网络高亮显示确认一下:按对应快捷键高亮这个网络,看看它是不是真的和整个覆铜网络连在一起。如果是,要么手动改覆铜连接方式,要么在挖空区域边缘补一条隔离线。

5.5 打样回来后发现没有真正“挖空”

最后再提醒一个概念问题。有朋友拿着板子问:我明明挖空了,怎么板厂做出来还是有铜?拆开他的文件一看才发现,他在覆铜上挖了空,可他要的其实是板子上的物理孔洞。覆铜挖空只是把铜皮去掉,基材还在,阻焊也还在。两者没有对错,是完全不同的需求。

如果你要的是真正的开孔或开槽,应该用Board Cutout,或者直接在机械层/板框层画闭合轮廓,然后在制造输出时定义成物理开槽。这一点如果一开始就搞混,发板之后很可能被板厂打电话确认,白耽误时间。

我这边处理项目的习惯是:设计完成后,在Gerber里专门打开Top Copper和Bottom Copper层检查一遍,确认所有挖空区域都按预期空了;再打开Keepout层确认没有误加的禁布区。看一遍几分钟,但能省掉一轮打样返工的周期。

6. 我如何把这些技巧串成完整流程

6.1 新板子拿到手后的第一件事

很多人一开始画板就急着布局、布线,其实铺铜挖空这件事应该在布局阶段就同步考虑了。我的习惯是,新建PCB后先把板框和定位孔放好,然后把天线净空区、螺丝孔Keepout、高压隔离带这些标准挖空区域全部从模板里复制进来,再做布局布线。这样后面不管怎么走线,都不会误入禁区;最后铺铜的时候挖空也已经存在了,重灌一次铜就全对。

如果等到全部布线完成、覆铜也铺完了才发现天线区域要净空,虽然也能补救,但可能要在已经密密麻麻的板子上调整走线,给自己添麻烦。所以顺序很重要:先把禁区定义好,再做其他工作。

6.2 发板前的挖空自检清单

我给自己总结了一份发板前自检清单,每次打样前照着过一遍,基本不会再因为挖空问题返工。

第一,用Repour All重新灌铜,确认所有挖空区域都生效。第二,在Properties面板里检查每个重要挖空区域的Layer属性,该设为All的必须设为All。第三,打开Gerber预览,逐层查看铜皮避让情况,重点看Top Copper和Bottom Copper。第四,检查Keepout区域是否真的闭合,有没有多余的Keepout线条残留。第五,确认挖空区域和螺丝孔/元件是否在同一个Union里,防止后续移动错位。

这套清单看起来简单,但每次都能拦住我掉过的坑。有一次一个多板拼接的项目,复制的挖空区域忘了改Layer,Gerber里顶层避让了底层没有,如果没有提前检查,板子做出来很可能要重新改版。

说实话,多边形覆铜挖空不是个多高深的功能,但它涉及到的概念(动态覆铜、禁区定义、层属性、重灌机制)如果不理解,就会反复踩坑。把原理吃透,再遇到任何奇怪的净空需求,都不会慌。我现在画板时,挖空区域大多是模板直接复制过来的,真正手动画的反而很少,省下不少时间,项目进度快很多。最后再分享一个小习惯:每次保存文件前顺手重灌一次铜,这样不管后续谁打开这个PCB,看到的都是最新的覆铜状态,不容易产生误解。

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

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

立即咨询