还在用Altium Designer 16画板子的朋友,应该都动过这个念头:板框怎么才挖得又快又准?不管是做异形板、开内部凹槽、留螺丝避让位,还是给Type-C口、邮票孔做半孔处理,“板框挖空”这件事几乎每个项目都会遇到。但AD16这个版本有点特殊——它不像AD17之后的版本有独立的Board Cutout对象,很多挖空操作要绕道Keep-Out层、机械层和板框重定义来实现,踩坑的点特别多。
我前段时间刚用AD16做完一块带内部开槽和异形外轮廓的双层板,中间还顺手解决了一个让同事卡了一下午的问题:“PCB画布为什么只能挪动一点点?”再加上后来在这个板子上手动布差分线时,不少细节都和挖空区域搅在一起。这篇就把这些内容串起来讲清楚:先从板框挖空的几种场景和操作讲起,再聊画布卡顿的排查,最后把手动差分线的流程也过一遍,保证每一步都能直接上手照着做。
1. 板框挖空的三种典型场景:先分清你到底是“切边”还是“开窗”
很多朋友一上来就问“怎么挖空”,但实际上“挖空”这个词在板厂和PCB设计软件里至少对应三种完全不同的需求。如果一开始没分清,后面操作大概率会乱。我建议拿到需求先问自己一句:这块板是改变外轮廓,还是在轮廓内部掏洞,或是把边缘切出缺口?三者对应的画法、图层和出厂标准都不一样。
1.1 外轮廓异形切割:圆形板、U型板、直角倒角板
这是最常见的一种“板框处理”。比如文创产品里的圆形灯板、电机驱动板的U型避让口、射频板上的多边形边框,本质上都是在重新定义整块板的物理外形。在AD16里,这类操作不需要画“挖空”,只需要在Keep-Out层或者机械层画出新的闭合外轮廓,然后让软件重新定义板框即可。
我自己的习惯是先问板厂能不能按DXF加工。只要工艺允许,我会优先在AD16里完成电气设计和基础板框,再把板框轮廓单独导成DXF发给板厂做最终校准。原因是AD16的Keep-Out层画出来的轮廓线,在PCB内部显示是“禁止布线区”,但板厂在CAM软件里经常需要再手动转换一次,不如直接给DXF更稳。
1.2 板内挖腔:给元件让位、螺丝避让、减重开槽
板内挖腔就是标题里最有歧义的地方。它指的是外形边缘不变,但板子中间或者靠近边缘的位置被铣掉一块,比如顶面嵌入式元件下沉、PCB叠层中间的屏蔽腔、四个角的M3螺丝孔周围挖一圈避让槽。这种“挖空”在AD17之后可以放一个Board Cutout对象,但AD16没有这个对象,得用别的方法实现。
我刚做完的那块板就是左下角要留一个安装凸台的避让槽,宽度大概8mm、长度12mm。我的做法是在Mechanical 1层画出这个槽的闭合轮廓,然后单独导出一份DXF文件,再在制板说明里写清楚“内部铣槽,非金属化,尺寸见DXF”。这样板厂理解起来没有歧义,AD16也不会因为内部闭合轮廓重定义板框而报错。
1.3 边缘缺口与半孔:Type-C口、金手指、邮票孔
第三种场景是板边缘的缺口或半孔。比如Type-C连接器的外壳焊盘需要板边开一个半圆形缺口、板子边缘做邮票孔的拼板连接、金手指倒角旁边的槽孔。这一类操作在AD16里通常用Keep-Out层画不规则闭合区域,再和板厂沟通“这里的金属化/非金属化特性”,必要时在Drill Drawing层加上钻孔标记。
专业提醒一句:半孔板在板厂的工艺里叫“半孔焊盘”或“邮票孔”,很多板厂对这种边缘加孔的结构有最小孔径和最小间距要求。如果你在AD16里只是画了一条线,却没有在制造文件里标注清楚,板厂完全有理由按普通孔处理,最后实物拿到手才发现孔被完全铣开了,到时候返工代价就大了。
2. AD16板框挖空的实操主线:从Keep-Out到制造文件
搞清楚场景之后,再看具体怎么操作。AD16里最核心的板框处理路径有三条:一是用Keep-Out层闭合图形重定义板框,二是用机械层轮廓文件交给板厂铣削,三是结合铺铜区域挖空做电气避让。三条路径我分别展开讲。
2.1 准备工作:设置原点、选好图层、画好闭合轮廓
不管用哪种方案,第一步都是设置原点。按下快捷键 EOS(Edit → Origin → Set),把原点定在板框左下角。这一步做不好,后面所有“按坐标跳转”“对齐”“标注尺寸”都会跟着跑偏,别嫌基础,我在实际项目中看到过太多因为原点不对导致挖槽位置偏移几百mil的问题。
接下来就是选图层。画外轮廓板形,我会把轮廓画在Keep-Out层;画内部铣槽和异形缺口,我习惯画在Mechanical 1层。AD16里切换当前层很简单,直接在PCB面板底部找到你要的层,点击选中。
画线用P+T(Place → Interactive Routing),或者用P+L(Place → Line)在当前层画直线。AD16里画线时按Shift+空格可以切换走线模式(45度、90度、任意角度),这点对画异形轮廓非常重要——很多圆弧和斜角必须靠切弧和斜线拼出来。坐标输入则直接按键盘上的X和Y键,在弹出的对话框里输入绝对坐标或相对坐标,比如想从当前点向右画一条100mm的线,输入dx: 100mm、dy: 0。
2.2 核心命令:从选定对象定义板框(Define from selected objects)
外轮廓异形板在AD16里最痛快的操作是:先画好闭合轮廓,全部选中,然后执行菜单 Design → Board Shape → Define from selected objects。执行完以后,AD16会直接把板框更新为你选中的这条闭合路径。
这里有个细节容易被忽略:选中轮廓线时,必须把组成轮廓的所有线段和圆弧都选中,少一条命令就会报错。如果你是用多条线段拼出矩形,选中其中一条后按快捷键EAS(Edit → Select → All on Layer)可以一次性选中当前层所有物体。如果你的轮廓分散在多个图层,别用这招,老老实实框选。
执行报错“Selected objects do not form a closed shape”时,90%的原因是轮廓没有闭合。解决办法:放大到怀疑人生,把最后一条线的终点拖到起点上,让AD16自动吸附,然后重新执行。AD16没有一键闭合的功能,检查闭合只能靠肉眼配合Snap栅格,这也是我推荐从一开始就开5mil或10mil栅格的另一个原因。
2.3 真正的“板内挖槽”在AD16里怎么做:没有Board Cutout的替代方案
AD16最坑的地方就在这里。AD17之后可以放一个Board Cutout对象,双击还能设置挖槽半径,3D视图里直接显示一个透明的孔洞。但在AD16里,根本没有这个对象。所以要做内部挖槽,只有两个稳妥路线:
路线一:机械层轮廓 + 制造说明。在Mechanical 1层画好闭合挖槽轮廓,导Gerber时把Mechanical 1层加进去,同时在Drill Drawing层或单独的制造说明文件里注明“内部铣槽,非金属化,不可覆铜覆盖”。板厂在CAM环节看到这个轮廓就会正常铣掉。
路线二:Keep-Out层防布 + 铺铜挖空。在Keep-Out层画同样的闭合图形,让AD16在布线规则上避开这个区域;同时用Place → Polygon Pour Cutout命令在该区域铺一块挖空多边形,这样铺铜时挖空区域不会有铜皮。这种方案对电气上很有用,但真正“物理上铣空”仍然要靠板厂加工,所以还是需要机械层轮廓。
我自己做板时的标准组合是:Keep-Out层负责电气避让,Mechanical层负责物理铣削,两者重叠但各司其职。别嫌多余,等你看到板厂因为CAM信息不一致而发来确认邮件时,就会明白什么叫多一道保险。
2.4 挖空轮廓的精确绘制技巧:坐标输入、切弧、合并线宽
画挖空轮廓时,精确度直接决定做出来的板子尺寸对不对。AD16里有一个特别好用但容易被忽略的做法:用坐标输入把每个关键点算出来再画。比如要在板中间挖一个8mm × 12mm的槽,先设置原点,用J+L跳到起点坐标(比如相对于板左下角的X=50mm、Y=60mm),然后从起点开始画矩形,每一条边都用dx/dy相对坐标输入。
画圆弧时,推荐在AD16的PCB库编辑器或PCB界面里用P+A(Place → Arc)选择“Arc (Any Angle)”,再用Tab设置圆心和半径。这样画出来的圆弧可以和直线精确相接,不会出现肉眼看着圆弧、实际选中后才发现是N段小线段拼成的破轮廓。
还有一个实战经验:如果挖槽轮廓需要和板框拉开固定距离(比如2mm),不要手工算坐标。先把板框复制一份,在空白处Paste Special → Paste on current layer,然后用M+S(Move Selection by X,Y)整体偏移2mm,最后用裁剪命令修剪出不想要的线段。这样画出来的轮廓和板框平行,间距完全一致,比我刚入行时一点一点画坐标准多了。
3. 为什么你的PCB画布“只能挪动一点点”:一个高频卡弹的排查实录
这个热搜词我太有感触了,因为我自己就在AD16里遇到过一模一样的现象:鼠标滚轮放大缩小都正常,但只要按住鼠标中键拖动画布,板子只挪动几毫米就再也拖不动了,或者放开手以后板子晃晃悠悠自己“弹”回去。一开始我以为是电脑卡或者鼠标坏了,后来排查一圈才发现,问题全出在AD16的视图导航状态上。
3.1 罪魁祸首之一:原点漂到了十万八千里外
这是最常见的原因。AD16的PCB画布移动是基于绝对坐标系的。如果你之前误操作把原点设到了板子右上角几万mil的位置,或者导入DXF时坐标值特别大,画布中心其实离板子非常远。此时你按住中键拖动,看似拖了好远,实际物理坐标才变化了一点点,反映在屏幕上就是“只能挪动一点点”。
解决办法很简单:重新设置原点。EOS然后点板框左下角或者板子中心,再按V+D显示整块板,或者V+F显示当前文档所有内容。如果这样做了以后还是拖动不顺畅,继续往下看。
3.2 罪魁祸首之二:捕捉栅格太大,光标在家、图形在远房
AD16里有一个隐藏很深的设置:Snap Grid(捕捉栅格)。当你把Snap Grid设成100mil甚至更大时,鼠标拖动图形或者画布时,AD16会强制把坐标吸附到栅格点上。如果你的板子很小,栅格又很大,拖动看起来就像“卡住”了一样,每次只跳一个小格,让人以为画布只能挪一点点。
顺手推荐一个组合拳:按G快捷键调出栅格菜单,选5mil或10mil;再按Shift+E切换电气栅格开合。这样在画布上拖动元件、布线、选中轮廓时都会跟手很多。挖空轮廓时尤其需要小栅格,否则圆弧和斜线根本对不齐。
3.3 罪魁祸首之三:视图缩放比例没复位
第三个常见原因是视图处于“局部放大”状态,而且AD16的缩放有记忆。比如你之前放大了某个局部区域,然后直接关闭文档,下次打开时视图还在那个位置。这时你拖动鼠标,画布却在另一个很远的地方,看起来就像只能挪一点点。
推荐用两个快捷键复位:V+D显示整块PCB板,V+F显示文档中所有对象(包括边框、标注、甚至误放到边角的一些小物体)。如果V+F以后你看到几个原点位置的孤立线段,顺手删掉,顺便纠正了一个潜在的制造文件错误。
3.4 治本方案:给AD16设置一套舒服的导航参数
因为AD16是老软件,在Windows 10/11的高分屏或高刷新率显示器上,如果没打SP补丁,界面和画布平移经常出现渲染延迟或坐标跳动。我见过有同行装完AD16以后一直觉得画布拖不动,后来补装了官方SP补丁才恢复正常。所以如果你的AD16是从网盘下载的所谓“绿色版”,先考虑补丁是否完整。
补丁之外,我习惯在DXP Preferences里把PCB Editor下的“智能导线”和“实时DRC”关掉一些不常用的选项,减少实时计算负担。实测在板子元件超过500个的复杂项目里,这些设置会让画布平移更跟手,挖空轮廓和手动布线时心情也能好很多。
4. 手动布差分线:挖空之后信号和布线都要照顾到
搜“挖空”话题的人,很大概率同时也在搜“手动布差分线”,因为这两件事经常在同一个项目中遇到:板子挖了槽改了形状,高速信号就要重新绕线;绕线绕到挖空区旁边,就要考虑阻抗和参考平面连续性。AD16版本里手动布差分线并不复杂,但设置上有几个版本特有的细节。
4.1 先设好差分对:从网络表到Differential Pairs面板
在AD16里手动布差分线的第一步,不是直接拉线,而是先把差分对声明好。打开PCB面板,切换到“Differential Pairs”标签。如果你的面板里没这个标签,可以从菜单 View → Panels → PCB调出来,在弹出的选择列表里勾选Differential Pairs。
然后在面板空白处右键 → Add Pair,填入正网络(比如USB_D_P)和负网络(比如USB_D_N)。AD16不会自动识别网络名,所以这一步必须手动。我的习惯命名是:正网络用“_P”结尾,负网络用“_N”结尾,工程量大时还可以利用菜单 Design → Differential Pairs Editor 批量添加。
4.2 差分规则数值怎么定:线宽、间距、耦合与阻抗
差分对的尺寸不能靠手感。AD16里对应规则在 Design → Rules → Routing → Differential Pairs Routing,而不是普通Width规则。你在Differential Pairs Routing规则里要设定的关键参数:
- 线宽(Width):取决于目标阻抗。常规FR4板材(1.6mm板厚、1oz铜厚)做90欧姆USB差分线,线宽大约0.2mm~0.25mm,间距0.15mm~0.2mm,但这只是估算,最终要以阻抗计算和板厂给的实际叠层为准。
- 间距(Gap):一般取线宽的1.5~2倍,间距太小增加制作难度,太大耦合减弱。
- 最小/首选/最大三个值都要填,AD16布线时才会在推挤时自动调整间距。
如果挖空的区域正好穿过这个差分对的下方,也就是破坏了参考平面,那计算出来的阻抗就没有任何意义了,这点我下面单独说。
4.3 手动差分布线操作全流程(含快捷键)
规则设好以后,手动布线快捷键是 P → I → D(Place → Interactive Differential Pair Routing)。此时鼠标会带出一根线,点击正网络,AD16会自动把差分对的两根线一起布出。布线时的几个实用键位:
- Shift+R:切换推挤模式。建议用Push模式,布线时能看到旁边的线被自动推开。
- 数字键2/3:切换布线层。挖空区域附近过孔换层时,按Shift+Ctrl+滚轮也可以换层并自动添加过孔。
- Tab键:布线过程中打开属性面板,临时修改线宽/间距(下次拉新线前记得恢复)。
- 逗号/句号键:切换过孔尺寸。
还有一个高频疑问:为什么我手动拉差分线时,两根线没有并排走?检查一下规则里的“Gap”是不是设得太小,或者你布线时没有点击正确的网络,AD16把其中一根当成了普通单端线。如果点开后没有自动配对,退出布线命令,到Differential Pairs面板里确认网络对应关系没问题再重来。
4.4 挖空区边缘的差分线处理:经验之谈
这部分是我在这个项目里体会最深的地方。挖空区域要么是内部铣槽,要么是外形缺口,它意味着这部分的铜皮和参考平面整个没了。差分线如果从挖空区上方或旁边穿过,返回电流没法在下方平面正常流动,信号质量和EMI都会变差,严重时高速信号直接打不开设备。
我的处理原则只有三条:第一,差分对尽量远离挖空区边缘,距离至少3~5倍线宽;第二,如果一定要跨过挖空区,就在跨越点附近的完整地层上多打几个缝合地孔,让参考平面快速换层过渡;第三,挖空区两侧的差分线要走等长,AD16可以用T+R(Interactive Length Tuning)沿差分路径拉蛇形线来调整。实测证明,这些处理比单纯调大线宽间距有效得多。
5. 出图与收尾:把这些操作沉淀成可复用的项目模板
板框挖空和差分线都弄完,不代表任务就结束了。AD16里最让人头疼的是出Gerber时漏层漏对象,辛苦画好的挖槽轮廓一到板厂就“人间蒸发”。这个环节必须养成一套固定的检查习惯。
5.1 Gerber输出时如何确保挖空信息不丢
生成Gerber走菜单 File → Fabrication Outputs → Gerber Files。在弹窗里切换到“Layers”标签,仔细核对勾选内容。除了顶底层的铜箔层、丝印层、阻焊层之外,Keep-Out层和Mechanical 1层一定要确认在“Plot Layers”里被勾选。很多默认配置不会自动包含Mechanical层,漏掉的话挖空轮廓就彻底没了。
Drill Drawing层也要检查。如果挖槽里有非金属化孔,需要在“Drill Drawing”里添加对应的钻孔符号和孔径标注,同时确认“Drill File”里的钻孔槽(Slot)信息生成正确。板厂拿到Gerber后,会把钻孔文件、铣槽文件和DXF对照查看,如果三者不一致就会发邮件来问。与其等板厂问,不如先自查一遍。
5.2 常见错误速查表
我把自己和身边同事踩过的坑整理了一张表,每次出图前扫一眼,能省不少沟通成本。
| 错误现象 | 可能原因 | 解决办法 |
|---|---|---|
| Define from selected objects报错 | 轮廓未闭合或有多余线段 | 放大检查节点,闭合后再重试 |
| 挖槽位置偏移 | 原点没有设置在板框左下角 | EOS设原点,用J+L跳坐标确认 |
| 画布拖动卡顿 | 栅格太大、原点漂移、软件补丁缺失 | 改小Snap Grid,重新设原点,补SP补丁 |
| 差分线布不出并排效果 | Differential Pair没配对好 | 在Differential Pairs面板里重新选择网络 |
| Gerber里看不到挖槽 | Mechanical层没有Plot | 在Gerber设置中勾选Mechanical层 |
| 内部挖槽在3D视图不显示 | AD16没有Board Cutout对象 | 用机械层+制板说明代替,勿依赖3D预览 |
5.3 把“挖空+差分线”固化成自己的设计模板
同一个项目往往要在多个板卡上重复用同一组挖槽和差分线布局。比如公司的电源板背面总要挖一个电感避让槽,USB差分线总要从连接器附近穿过。把这些固定内容做成模板,比每次重新画高效得多。
我的做法是:把绘制好的挖槽轮廓(Mechanical层 + Keep-Out层)全选后复制,在PCB库编辑器里保存为一个空板子,文件名写成“模板_内部铣槽_8x12mm.dxf”或“模板_TypeC_半圆避让槽.dxf”;需要新板子时直接导入DXF到对应层,再用M+S整体移动到位。差分对规则和线宽间距属于图纸级参数,保存PCB模板文件时连同规则一并存好,下次新建PCB直接File → New → PCB from Template,整套差分线设计规则就都在了。这个习惯坚持半年以后,你会发现设计周期明显缩短,而且犯低级错误的概率也低了很多。
最后再分享一个体会:AD16的确老,但很多项目团队还在用它,原因不外乎稳定、顺手、资源多。板框挖空这类基础操作,只要把“物理铣削”和“电气避让”两件事分清楚,画图时多用坐标精确控制,出图前多核对一遍Gerber,就不会有大问题。差分线手动布线也是一样,规则先行、参数有依据、绕线避开破坏参考平面的区域,信号质量基本都能保证。希望这篇实操经验能给还在AD16上奋斗的同行省点时间。