☰
Altium Designer机械层与Keep-Out层区别:板框绘制及Gerber导出指南
2026/10/6 5:54:44 网站建设 项目流程

先交代一个背景:最近在帮朋友返工一块板子,问题不大,但卡在一个很微妙的地方——他导出的Gerber文件,板厂那边只能看到Keep-Out层的边框,机械层1完全是空的。朋友很委屈:我明明画了板框啊!我打开工程一看,确实画了,但画在了Keep-Out层。这是一个在Altium Designer(AD)用户里反复出现的老问题:机械层和Keep-Out层,到底谁才是板框该待的地方?导出Gerber时到底怎么勾选才对?这篇文章就拿一个完整的电源板案例,把这个图层选择问题彻底讲清楚。

1. 先搞懂机械层和Keep-Out层到底是谁

1.1 Keep-Out层:被误会成“板框层”的禁布层

Keep-Out层在中文环境里通常叫禁布层,英文全称是Keep-Out Layer。很多新手看到这个层默认带着一个矩形线框,就以为是板框层,这是最大的误区。

Keep-Out层的核心职责是告诉AD这个工具的电气设计规则:这块区域内不允许走线、不允许铺铜、不允许放置元件。它是和电气规则强绑定的一层。你尝试把一条走线拉进Keep-Out区域,DRC立刻给你报错;你在一片铺铜里画一个Keep-Out区块,重新铺铜后这块区域会自动挖空。这种自动避让的行为,说明Keep-Out层其实是一个“电气行为约束层”,而不是物理外形层。

简单做个类比:Keep-Out层像球场上的边界线和禁区线,它告诉球员(走线、铺铜、元件)哪里可以活动、哪里不能碰。但球场本身长什么样,是看观众席和围墙的位置,也就是机械层。

1.2 机械层:板框和各种非电气信息的存放地

机械层的定位就单纯得多。它不参与任何电气行为,AD不会因为你在机械层画了一条线就去约束走线,也不会检测机械层上的图形间隔。机械层存在的意义,是给你放置制造和装配阶段需要的信息。

业界最通用、最被板厂认可的约定是:板框(Board Outline)画在机械层1,也就是M1。除了板框之外,机械层还常用来放置安装孔定位标识、V-cut指示线、邮票孔连接位、3D高度限制信息、装配备注等。机械层数量很多,常见版本提供32层以上,怎么分配完全看团队约定。

这里的经验教训是:不要以为AD的图层开放就随便用。图层越开放,越需要你自己遵守约定。同一个项目里,如果你和同事一个把板框放M1、一个放M2、一个画在Keep-Out层,后期交接和投板时就是灾难现场。

1.3 为什么AD17之后这两个层开始“撞车”

关于机械层和Keep-Out层关系混乱的另一个来源,是AD版本迭代。

在AD17之前,Keep-Out层是一个独立的系统层,和机械层完全没有交集。但从AD17开始,Altium在底层实现中把Keep-Out层映射到了机械层13(M13),所以在层管理器里,你可能会看到Keep-Out Layer(M13)这样的标识。这本来是内部处理上的优化,却让很多自学用户彻底懵了:既然Keep-Out就是M13,那我画板框是不是可以画在M13上?反正都是机械层。

答案是:不要。Keep-Out层虽然在底层和M13关联,但在设计行为上依然是禁布层的角色。它依然参与DRC检查,依然会阻止你布线和铺铜。你在Keep-Out层画一个板框,等于把整块板子都变成了禁止区域,你的布线空间会被锁死在框内,而且板厂在识别外形时也会产生混淆。

所以我的建议非常明确:在AD任何一个版本里,板框的归属就是机械层1,Keep-Out层只画禁布区,两者各司其职,不搞混。

2. 一个完整案例:48mm×36mm电源板从导前检查到Gerber输出

2.1 案例背景与设计约定

先说案例的基本盘。我准备了一块双层电源板,板子外形是48mm×36mm的矩形,顶层铺GND地铜,底层走VCC和信号线,左下角有一块20mm×10mm的区域留给变压器,这个区域要求禁布。

我在这个设计里做了两个图层约定:第一,板框用机械层1画一个闭合矩形,四角倒R1圆角;第二,Keep-Out层里画两个东西,一个是板内四周内缩3mm的框线,用来约束走线尽量远离板边,另一个是左下角变压器对应的20mm×10mm禁布矩形。所有Keep-Out图形都要求闭合,因为不闭合的Keep-Out线条在DRC和铺铜避让时会出现漏判。

这里补充一个细节:板框四角倒圆角,我是直接在M1上用绘制普通线段的方式画的,也可以用工具生成导圆角。但不管怎么样,M1上最终必须是一组连续的闭合轮廓线,不能出现断线、重叠线。

2.2 导出前的三项检查

很多人直接把PCB切换到3D视图看一眼,觉得没问题就去导Gerber了。我现在的习惯是在导出前做三项检查,每项半分钟,但能避免九成返工。

第一项:检查机械层1的板框是否闭合。我在PCB面板里把其他层全部隐藏,只显示M1,然后用过滤器选中M1上的所有对象,确认是矩形加四段导圆角。确认之后,再用Design菜单里的Board Shape选项,选中M1轮廓线,执行Define from selected objects,让板形(Board Shape)严格贴合M1轮廓。这一步非常关键,后面Gerber界面里的Board Outline选项输出的就是板形的轮廓,如果板形和M1不统一,CAM里会出现双线。

第二项:检查Keep-Out层。把Keep-Out层单独显示出来,肉眼过一遍。重点看有没有残留的碎线段、有没有重复的框线、图形是否闭合。我见过不少工程文件,Keep-Out层里还留着早期试画的标准边框,明明板子改成了异形,旧框没删掉,导出后板厂看到两个框,只能反复来回确认。

第三项:检查钻孔层一致性。虽然这个案例比较简单,但我还是会把机械层1上的安装孔位和Keep-Out层的禁布区位置对比一下,防止螺丝孔落在禁布区边界上。这个检查在异形板和拼板里更加重要。

2.3 Gerber导出逐项操作解析

导出入口在File菜单,路径是File > Fabrication Outputs > Gerber Files,弹出的对话框叫Gerber Setup。老版本和新版本界面布局有差异,但核心设置项基本一致。

General选项卡里,单位建议选Millimeters,Format选2:5。这里的2:5,指的是整数位2位、小数位5位,精度很高,能给板厂提供足够的坐标分辨率。普通打样用2:4也够,但既然要为加工环节少留隐患,我习惯直接用2:5。如果PCB工程里还包含钻孔表、元件清单,单位精度尽量全局统一,不混用英寸和毫米,这是很多问题的根源。

Layers选项卡是最关键的部分。这里有两个大区域:上面是Plot Layers(要输出的图形层),下面是Mechanical Layers to add to all plots(要附加到所有光绘文件中的机械层)。

我逐个勾选:Top Layer、Bottom Layer是两层铜;Top Overlay、Bottom Overlay是丝印;Top Solder Mask、Bottom Solder Mask是阻焊开窗;Top Paste、Bottom Paste是钢网层,如果需要贴片就勾上,纯直插板可以不勾。然后在下拉列表里找到Keep-Out Layer并勾选。接着在Mechanical Layers区域勾选机械层1。

这里最容易犯的错是:只勾了上面的铜层和丝印阻焊,忘了在Mechanical Layers区域勾M1。在Cam350里打开Gerber时,板框层整个是空的,但AD界面里看起来一切正常,因为你在PCB编辑器里能看到M1,不代表你把它输出到了光绘文件里。

Keep-Out层也类似。有些版本里Keep-Out是独立选项,有些版本因为Keep-Out被映射到M13,你需要在机械层列表里勾选M13。不管界面怎么变,最终生成的Gerber里都应该有一个包含禁布区图形的层文件,通常名字里会带KEEPOUT字样,或者M13层里有内容。没有这个文件,板厂就无法执行你的禁布要求。

然后注意Layers选项卡里的Board Outline复选框。勾选后,AD会把当前板形的轮廓输出为一份额外的外形数据,跟M1上的板框并存。这样做的好处是给板厂多了一个识别外形的途径;坏处是如果板形和M1不重合,CAM里会出现两条贴得很近的线,板厂必须做二选一。我的建议是勾选Board Outline,但前提是你已经在导出前做了Define from selected objects,让板形和M1完全一致。

Drill Drawing选项卡里,勾选Drill Drawing Plots和Drill Guide Plots,主要目的是生成钻孔符号图。钻孔文件本身通过File > Fabrication Outputs > NC Drill Files单独导出,格式我这里选Text文件即Excellon格式,单位和精度与Gerber保持完全一致,否则钻孔坐标和Gerber坐标之间会存在比例偏差。

Apertures选项卡里,使用RS-274-X格式时默认嵌入光圈,不需要手动处理。Advanced选项卡通常保持默认即可。

完成这些设置后,点OK生成Gerber。我习惯每次生成后,回到PCB编辑器,再执行一次NC Drill Files,让钻孔文件伴随Gerber一起输出。后续把GERBER文件夹里的所有文件一起打包发给板厂。

2.4 输出后验收:CAM350里的自查清单

生成完不等于结束,我几乎不直接打开文件夹看PGN后缀就算了,而是把文件导入CAM350做一次快速验收。没有CAM350的话,AD自带的Cam Panel也可以,但工业界更通用的是CAM350或ViewMate。

导入时选择AutoImport,把所有Gerber文件和钻带文件一起拖进去。然后按顺序做四件事。

第一,量板框尺寸。用测量工具量M1矩形两条边的实际长度,确认是48mm和36mm。如果数值差得离谱,问题多半出在单位设置不一致,比如Gerber用毫米导,钻孔用英寸导。

第二,看Keep-Out层。打开KEEPOUT文件,确认禁布图形闭合、位置正确。如果这块通过CAM350显示是一堆断线,回到AD重新画闭合框。

第三,看阻焊和铜层的对齐位置。顶层焊盘应该和Top Solder开窗完全重合,如果阻焊偏移,是阻焊层设置或坐标原点问题。

第四,把钻带文件叠加到板框上,检查四个安装孔是否都落在板框的预期位置上。这一步防止了钻孔整体偏移。

这套验收流程走下来,基本能把图层选择、单位精度、文件完整性这几类问题在投板前拦截住。

3. 机械层和Keep-Out层的实战选择矩阵

3.1 什么内容放机械层,什么内容放Keep-Out层

这里整理一个选择矩阵,直接照着用就行。

内容类型推荐放入的层原因说明
板框/外形轮廓机械层1(M1)板厂通用识别层,与板形统一
禁布区(禁止布线/铺铜/放件)Keep-Out层参与DRC和铺铜避让,具备电气约束
拼板工艺边/V-cut示意线机械层2或约定层非电气信息,不干扰单板DRC
安装孔定位标识机械层1或机械层2跟随板框或工艺信息区分
3D高度限制/装配说明机械层3及以上MCAD协作需要,不影响电气设计
螺丝孔周围铜皮避让区域Keep-Out层 + 平面层避让规则从规则层面限制铜皮靠近

这个矩阵的核心逻辑是:凡是要让AD的DRC、铺铜、布线自动遵守的约束,就放Keep-Out层;凡是纯粹告诉工厂“这里需要怎么加工”的信息,就放机械层。如果一条信息两个属性都有,那就分层表达。比如螺丝孔,外形开孔信息放M1,螺丝头附近的铜皮避让区放Keep-Out,两者可以共存但不要混在同一层。

3.2 按不同下单方式给出的选择建议

不同PCB工厂对Gerber的接收习惯有差异。有的工厂在某大型打样平台下单时明确要求“板框放在机械层1,不要画在禁止布线层”,也有的工厂为了图省事,直接拿Keep-Out层出现的最大封闭边框当外形层用,这属于工厂自己的容错手段,不代表设计端可以随意。

我在投板时采用的做法是:M1上是真正的板框线,Keep-Out层上只有禁布区,同时勾选Gerber里的Board Outline,让AD输出一份和M1一致的板形轮廓。这样板厂识别外形,至少有M1和Board Outline两份信息可以交叉验证。

千万不要把板框画在Keep-Out层,理由我在前面说过,最大问题不是板厂认不出来,而是Keep-Out层的内容会强制参与AD的电气约束。你在Keep-Out层画一圈板框,等于把整板内部都定义成了禁布区,然后你会发现顶层走线和铺铜都被限制得极其别扭,必须在规则里额外排除。这是自己给自己挖坑。

3.3 拼板与多层板的特殊注意事项

拼板场景下,图层约定需要更细致。拼板轮廓和V-cut线,我建议放机械层2,不要占用M1。M1只保留单板的外形边。如果拼板方式比较复杂,比如异形拼板加邮票孔,可以在机械层2里用不同颜色或不同线宽的线区分V-cut和邮票孔,并在图纸上写清楚图例,否则板厂要猜。

多层板场景下,Keep-Out层对内部电源/地平面的约束逻辑不太一样。顶层和底层走线,AD会直接遵守Keep-Out区域。但内电层(比如GND平面)的避让,更多是靠平面层自身的Split和Clearance规则来实现。你需要在平面层的铺铜区域上,根据Keep-Out区域的坐标手动开避让窗,或者使用Polygon Pour Cutout对象。换句话说,Keep-Out层不能自动约束内层平面铜皮,这一点很多人容易误解。

另外,如果是阻抗板或高频板,禁止在Keep-Out层随意放置非禁布用途的标注图形,因为这些图形成为DRC的一部分,可能在后期改板时干扰规则检查,造成隐性错误。

4. 常见问题排查与避坑清单

4.1 典型故障现象与原因速查表

现象可能原因解决办法
板厂说没看到板框板框不在M1,或Gerber里未勾选M1M1绘制闭合板框,导出时勾选M1
铺铜越过禁布区Keep-Out层未导出,或图形未闭合确认Keep-Out层图形闭合并勾选输出
CAM里板框出现双线M1与板形不一致,Board Outline和M1重合偏移重定义板形,使其与M1完全重合
板框尺寸偏大/偏小单位混用或Format精度不一致统一毫米单位,统一Format精度
CAM里Keep-Out层为空对象实际放在M13,但版本未自动并入Keep-Out确认对象在Keep-Out层,或显式勾选M13
钻孔整体偏移NC Drill文件和Gerber单位/原点不一致导出时严格统一单位与原点设置

4.2 我踩过的坑与补救经验

第一个坑,就是开头说的板框画在Keep-Out层。那次板厂打电话问,我一开始还觉得对方怎么这么不专业,明明边框画得好好的。后来自己打开CAM350才意识到,Keep-Out层的线是输出成了禁布文件,板厂完全有理由不把它当成外形。从那以后,我在任何新工程的第一步,就是先确认机械层1上有没有实体板框线。

第二个坑,是板形和M1不重合导致的双线。有一版板子,M1的矩形倒角稍微改了一下,但我忘了重新Define board shape。导出时勾了Board Outline,结果CAM里看到两条差0.05mm的轮廓,板厂工程电话又打过来确认到底按哪条算。从那次开始,我养成了“改板框后必做Define from selected objects”的条件反射。

第三个坑,是AD版本升级后的界面差异。我有一段时间从AD17跳到AD24,打开Gerber Setup发现界面布局大变,Layers和Mechanical Layers的位置、表述全变了,一度找不到Keep-Out层选项。后来摸清规律:新版里Keep-Out层在层管理面板的System Layers分组里,同组还有Drill Guide、Drill Drawing等,右键点击层名称就能配置显示状态。理解了这一层结构,再换多少版本都不会怕。

第四个坑,是单位混用。早期做一块小板时,Gerber用了毫米,钻孔文件用了英寸,结果在CAM350里一看,钻孔整体偏移了好几个毫米。这种问题不在图层本身,但发生在Gerber输出流程里,必须提一下。

4.3 从AD14到AD26:版本差异速查

版本代际关键界面变化操作注意点
AD 14/16Keep-Out层是独立系统层,接口直观按传统习惯处理即可
AD 17/18/19Keep-Out层被映射为M13层管理器会看到M13标识,但不影响使用
AD 20/21层管理面板改版,系统层独立分组Keep-Out在System Layers分组中维护
AD 24/25/26界面继续现代化,Gerber Setup布局变化逻辑一致,按选项语义定位即可

这里想特别说一句:不管AD怎么改版,机械层和Keep-Out层的语义边界没有变。AD将Keep-Out映射成M13,一方面让层结构更简洁,另一方面却让新手更容易误把禁布层当机械层用。如果你在任何版本的AD里看到M13或Keep-Out Layer,只要记住一句口诀:“Keep-Out是电气约束,M1才是板框外形”,就不会走偏。

我个人在实际操作中还发现一个实用小技巧:导出Gerber之前,把PCB文件另存为一个副本,在副本里把所有层全部选中并复制到一个空白PCB上,再逐层检查对象归属。这个方法在接手别人的旧工程时特别好用,能快速找出那些“看起来在机械层、其实是Keep-Out”的隐藏对象。

再分享一个工作习惯:每次发板前,除了Gerber文件和钻孔文件,我还会附带一份PDF格式的装配示意和一张包含板框尺寸的简单图纸,放在压缩包里。这样板厂即使对某个层有疑问,也可以从PDF里直接核对,避免来回确认的沟通成本。这个习惯帮我减少了不少紧急邮件往来。

图层选择这件事,说到底是一个从业习惯问题。AD给了你几十个图层,不等于每个图层都可以随性而为。机械层负责描述物理世界里的板子长什么样,Keep-Out层负责给设计工具划定电气行为边界,两者分工明确、不可互相替代。把这条主线记牢,再配合固定的导出前检查和CAM350验收流程,Gerber输出这个环节就能稳定、可靠、不折腾。

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

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

立即咨询