尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

Altium Designer规则失效?PCB线宽过孔不匹配的排查与解决

Altium Designer规则失效?PCB线宽过孔不匹配的排查与解决 1. 问题现象当规则“失灵”时你的PCB设计正在悄悄失控作为一名画了十几年板子的硬件工程师我敢说几乎每个用过Altium Designer后文简称AD的朋友都遇到过这个让人血压飙升的场景你明明在规则管理器PCB Rules and Constraints Editor里白纸黑字地设置了线宽10mil、过孔内径20mil/外径40mil。你信心满满地开始布线结果一放下走线发现线宽是8mil一打过孔发现尺寸是16mil/32mil。软件仿佛有了自己的“想法”完全无视你精心制定的规则。这绝不是个例而是一个在AD用户中流传甚广的“经典玄学问题”。新手往往会怀疑自己是不是哪里点错了老手则知道这背后一定有几个特定的“开关”没拧对。问题看似简单——规则与实际操作不符但其根源却可能分散在软件设置的多个角落。更危险的是这种不符往往是静默发生的除非你非常仔细地检查每一根线、每一个孔否则很可能直到投板生产前才发现轻则导致阻抗不连续、电流能力不足重则直接造成板厂无法加工或产品可靠性隐患。今天我们就来彻底拆解这个“规则失灵”问题。我将结合无数次踩坑和帮同事排查的经验为你梳理出一条完整的、可复现的排查链路。你会发现解决这个问题关键不在于记住某个固定操作而在于理解AD处理设计规则的优先级逻辑和生效机制。我们将从最表层的操作检查一直深入到容易被忽略的默认设置和项目级配置确保你的设计意图能被AD百分百忠实执行。2. 第一现场排查你的操作真的在规则“管辖范围”内吗当发现参数不符时我们首先要做的不是去翻复杂的设置而是进行一场“现场勘查”。AD的规则引擎非常强大但它的生效是有严格前提条件的。很多不符情况其实是因为我们的操作本身就在规则“射程”之外。2.1 确认当前激活的规则与规则优先级这是最首要的一步。在PCB编辑界面按下快捷键D-R打开规则管理器。在这里你需要关注两个关键点规则是否被启用每条规则最左侧都有一个复选框。请确保你设定的线宽Width规则和过孔Routing Via Style规则前面的勾是打上的。我曾经就遇到过因为误点击而禁用了关键规则导致布线时一直使用默认值的情况。规则的优先级Priority这是AD规则系统的核心逻辑之一。当同一个对象比如一根走线被多条规则匹配时AD会按照优先级从高到低依次应用高优先级的规则会覆盖低优先级规则的设置。注意一个常见的坑是你设置了一个针对“All”的全局线宽规则但又为某个特定的网络类如电源类设置了更宽的线宽。如果你在布电源线时线宽不符合电源类规则反而符合全局规则那很可能是电源类规则的优先级不够高被全局规则覆盖了。你需要选中电源类规则点击右下角的Increase Priority按钮来提高它的优先级。2.2 检查规则的作用域Where The Object Matches规则的作用域决定了它“管”哪些东西。如果你的走线或过孔没有被正确的规则“管到”那它自然会使用默认值或其他规则。对于线宽规则选中你的Width规则查看右边“Where The First Object Matches”区域。这里定义了规则的适用范围。常见设置有All适用于所有走线。InNet(GND)仅适用于名为GND的网络。InNetClass(Power)适用于“Power”这个网络类中的所有网络。OnLayer(Top Layer)仅适用于顶层走线。请务必确认你正在布线的网络是否真的落在了你预想的那条规则的作用域内。例如你为“12V”网络设置了20mil的线宽但作用域误写为InNet(5V)那么布12V的线时自然不会生效。对于过孔规则同样检查作用域。过孔规则通常作用于“All”或者特定网络/网络类。一个高级技巧是你可以为高密度区域如BGA下方设置更小尺寸的过孔规则而为电源通道设置更大尺寸的过孔规则通过作用域和优先级来精确控制。2.3 验证“交互式布线”时的实时设置在布线过程中按Tab键可以调出当前交互式布线的属性窗口。这里显示的值才是AD此刻准备应用于你下一段走线或下一个过孔的参数。布线时按Tab查看“Trace Width”是否是你规则中设定的值。如果不是说明当前激活的规则并非你预期的那一条。放置过孔时在需要打过孔的地方单击后同样按Tab查看“Via Diameter”过孔外径和“Via Hole Size”过孔内径的值。这个窗口是规则是否生效的“试金石”。如果这里显示的值不对那么问题一定出在规则设置、优先级或作用域上。如果这里显示的值正确但放置后的对象参数不对那问题可能就更深入一些我们接着往下看。3. 深入配置揪出那些“全局默认值”和“隐藏设置”如果上述现场排查无误规则优先级和作用域都正确交互式布线属性也显示正确但放置后的对象参数依然不对。那么我们需要将目光投向一些更深层的、影响全局的默认设置。3.1 检查PCB编辑器的“默认”参数PreferencesAD有一个独立的“默认”参数系统它像是一套保底规则。当没有任何设计规则匹配某个对象时或者在某些特定操作模式下就会使用这些默认值。点击软件左上角File-Preferences(或直接快捷键PP注意有些版本是DXP-Preferences)。在左侧树状菜单中找到PCB Editor-Defaults。在右侧你会看到一系列对象类型如Track走线、Via过孔等。选中Track点击Edit Values...。在弹出的窗口中检查“Width”的值。这个值就是你在没有规则约束或者使用“放置走线”工具而非“交互式布线”工具时所使用的默认线宽。同样选中Via点击Edit Values...检查“Diameter”外径和“Hole Size”内径。一个关键的心得我强烈建议将这些默认值设置为你设计中最常用、或最安全的数值。例如将默认线宽设为你的最小允许线宽如6mil将默认过孔设为最小允许尺寸如12mil/24mil。这样即使规则偶尔“掉线”也不会产生灾难性的错误比如电源线布成了信号线宽度。3.2 审视“板选项”中的线宽/过孔模式Board Options这个设置位于Design-Board Options或者快捷键D-O。这里有一个极其重要但常被忽略的选项“Routing Via Style”和“Trace Width”模式。在“Routing Via Style”旁边通常有一个下拉菜单选项可能是“From Rule”或“Manual”。“From Rule”表示过孔尺寸由规则决定这是我们所期望的。如果这里被不小心改成了“Manual”并且手动输入了一组尺寸那么在你放置过孔时AD会优先使用这里手动设置的尺寸而忽略规则管理器的设置线宽模式如果存在同理。请务必确保这些模式都设置为“From Rule”。3.3 项目级与系统级默认的博弈AD的参数继承关系有时令人困惑。除了上述的PCB编辑器默认值还存在“项目级”默认的概念虽然不明显。一个更稳妥的做法是创建并使用“PCB板设计模板”.PcbDocTemplate或“项目模板”.PrjPcbStructure。在一个干净的PCB文件中一次性将Preferences-PCB Editor-Defaults中的参数以及Board Options中的设置还有你常用的层叠结构、规则等全部配置好然后另存为模板。新建PCB时直接使用此模板可以从根源上避免默认参数混乱的问题。这是我管理团队设计环境统一性时必做的步骤。4. 高级场景与疑难杂症排查解决了基础和全局设置大部分问题应该已经消失。但如果你的问题依然存在可能涉及一些更特殊的场景或软件本身的“特性”。4.1 从原理图更新或导入网络时发生的参数重置这是一个高频踩坑点。当你从原理图更新PCBDesign-Update PCB Document时或者在PCB中导入网络变化时AD有时会“多此一举”地试图应用原理图元件封装中自带的管脚焊盘尺寸来影响PCB中对应网络的走线和过孔参数。排查与解决检查原理图库中元件的管脚焊盘属性。尽管这通常不影响PCB规则但在极少数同步错误时可能成为干扰源。更有效的方法是在PCB更新对话框中执行更新前弹出的那个窗口仔细查看“Modify”一栏。确保没有关于“Track Width”或“Via Style”的修改项被勾选。通常我们只关心元件和网络的增减不希望通过原理图来改变PCB的物理规则。如果这里有相关项取消勾选。4.2 使用“布线策略”与“过孔样式”面板时的陷阱AD提供了Routing Width / Via Size面板可通过View-Panels调出允许你在布线时快速切换预设的几组线宽和过孔尺寸。这个功能很方便但也是个“规则破坏者”。机制这个面板里的设置其优先级高于大多数设计规则。当你从这个面板中选择了某个线宽如8mil时接下来你放置的所有走线都会强制使用8mil直到你再次更改面板选择或关闭面板。如何判断如果你正在使用这个面板那么交互式布线时按Tab键看到的属性会明确显示它正受控于“From User Choice”来自用户选择而不是“From Rule”来自规则。建议对于规则严谨的设计我个人的习惯是不使用这个快速切换面板或者仅在规则调试阶段临时使用。所有尺寸控制都应通过规则管理器来完成以保证设计的一致性和可维护性。4.3 规则冲突与“未定义”参数的处理有时规则本身可能包含未定义的参数。例如你设置了一条线宽规则但只定义了“Min Width”最小线宽和“Max Width”最大线宽却没有定义“Preferred Width”首选线宽。那么AD在布线时可能会使用一个默认值比如Preferences-Defaults里的值或者表现得不可预测。最佳实践在设置任何线宽或过孔规则时确保三个值都明确填写线宽Min Width最小 Max Width最大Preferred Width首选。过孔Hole Size内径和 Diameter外径的 Min最小 Max最大Preferred首选。“首选”值就是交互式布线时默认使用的那个值。把它设为你最常用的数值。5. 建立防错工作流让规则不符问题无处遁形排查问题固然重要但建立一套预防问题的工作流更为关键。以下是我在多年团队协作中总结出的几条铁律能极大降低此类错误的发生概率。5.1 规则设置标准化清单在开始任何一个新项目或使用新模板时按照以下顺序检查和设置规则设置默认值(Preferences-PCB Editor-Defaults)将Track和Via的默认值设为设计允许的最小值安全底线。检查板选项(Design-Board Options)确认所有模式均为“From Rule”。规划规则优先级在规则管理器里从特殊到一般设置规则。例如最高优先级特定敏感网络如时钟的线宽规则。次高优先级电源网络类的线宽/过孔规则。较低优先级差分对规则。最低优先级All全体的默认线宽/过孔规则。 利用Increase Priority/Decrease Priority按钮理清层次。完整定义参数每条规则都必须填写 Min、Max、Preferred 三个值且 Preferred 在 Min 和 Max 之间。作用域二次确认对每条非“All”的规则双击其作用域查询语句使用查询构建器Query Helper可视化检查确保其准确匹配目标对象。5.2 利用DRC进行实时监控与批量验证不要等到设计完成才运行DRC设计规则检查。将其作为实时设计辅助工具。在线DRC确保Tools-Preferences-PCB Editor-General中的“Online DRC”是开启的。这样违反规则的走线或过孔放置时会实时高亮显示默认为绿色可在View-Layers Colors中配置高亮颜色。批量DRC报告在关键设计节点如布局完成、布线完成、投板前运行一次完整的DRC (Tools-Design Rule Check)。重点关注“Routing”和“Manufacturing”类别下的“Width”和“Hole Size”相关报错。任何报错都必须逐一审查、修正。5.3 投板前的最终参数核对“仪式”在生成Gerber文件发送给板厂之前进行最后一次人工核对使用“PCB List”面板调出PCB List面板 (View-Panels-PCB List)将其视图模式设置为“Nets”或“All Objects”。然后你可以筛选出所有“Tracks”或“Vias”并添加“Width”或“Diameter/HoleSize”列进行排序。一眼就能扫出所有不符合常规值的对象效率远高于肉眼在板上寻找。生成规则检查报告在DRC对话框中勾选“Create Report File”运行后生成一个详细的HTML报告。用文本编辑器打开搜索“Width”和“Via”可以快速查看所有规则的实际应用情况汇总。线宽与过孔参数不服从规则这个看似简单的问题实际上是检验一位PCB设计者是否真正理解AD设计数据流和优先级逻辑的试金石。它要求我们不仅会“设置”规则更要懂得规则是如何被“应用”的。从交互式布线的实时属性到规则管理器的优先级作用域再到深藏于偏好设置中的全局默认最后到各种便捷工具可能带来的覆盖效应每一个环节都可能成为规则的“断点”。
返回列表