PCB设计软件:Altium NEXUS二次开发_(11).PCB规则与约束二次开发.docx

PCB设计软件:Altium NEXUS二次开发_(11).PCB规则与约束二次开发.docx

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE1

PAGE1

PCB规则与约束二次开发

在PCB设计中,规则和约束是确保电路板的可靠性和性能的重要因素。AltiumNEXUS提供了强大的规则和约束系统,可以自动检查和验证设计中的各种条件,如间距、布线宽度、层数等。然而,对于复杂的设计需求,标准的规则和约束可能无法完全满足。因此,二次开发成为了一种有效的方式来扩展和定制这些规则和约束,以适应特定的设计要求。

1.规则和约束的基本概念

在AltiumNEXUS中,规则和约束是通过设计规则(DesignRules)来实现的。设计规则定义了在PCB设计过程中需要遵守的各种条件,这些条件可以应用于不同类型的对象,如网络、元件、层等。设计规则可以分为多个类别,包括电气规则、放置规则、布线规则、物理规则等。

电气规则:确保电路的电气性能,如最小间距、短路检测、环路检测等。

放置规则:控制元件的放置位置和方向,如元件间距、元件对齐等。

布线规则:定义布线的宽度、间距、层数等,如差分对布线、高速信号布线等。

物理规则:控制PCB的物理特性,如板边间距、钻孔尺寸等。

2.规则与约束的管理

AltiumNEXUS提供了一个规则管理器(RuleManager),可以在其中创建、编辑和删除规则。规则管理器允许用户设置规则的优先级,确保在多个规则冲突时,系统能够正确地应用优先级较高的规则。

2.1创建新的规则

打开PCB编辑器。

选择设计-规则(Design-Rules)。

在规则管理器中,选择要添加规则的类别。

点击新建规则(NewRule)按钮。

设置规则的名称和优先级。

在范围(Scope)选项卡中,定义规则应用的对象范围。

在约束(Constraints)选项卡中,设置具体的约束条件。

例如,创建一个最小间距规则:

规则名称:MinSpacing

优先级:1

范围:所有网络(AllNets)

约束:

-最小间距:10mil

2.2编辑现有规则

打开规则管理器。

选择要编辑的规则。

点击编辑规则(EditRule)按钮。

修改规则的名称、优先级、范围和约束条件。

例如,编辑一个现有布线宽度规则:

规则名称:WidthRule

优先级:2

范围:高速信号网络(HighSpeedSignalNets)

约束:

-布线宽度:20mil

-最小间距:15mil

3.规则与约束的脚本开发

AltiumNEXUS支持通过脚本(Script)来扩展和自定义规则和约束。脚本开发可以使用JavaScript(JScript)或Delphi(DelphiScript)语言。脚本可以动态地创建和应用规则,也可以在设计过程中实时检查和验证设计。

3.1JScript脚本示例

以下是一个JScript脚本示例,用于创建一个最小间距规则:

//创建最小间距规则

varboard=PCBServer.GetCurrentPCBBoard();

varrules=board.Rules;

varminSpacingRule=rules.AddRule(MinSpacing,1);

//设置规则范围

minSpacingRule.SetScope(AllNets);

//设置约束条件

varconstraint=minSpacingRule.Constraints.AddConstraint(MinimumSpacing);

constraint.Value=10*1000;//10mil,单位为纳米

//应用规则

board.ApplyRules();

3.2DelphiScript脚本示例

以下是一个DelphiScript脚本示例,用于创建一个布线宽度规则:

//创建布线宽度规则

var

Board:IPCB_Board;

Rules:IPCB_Rules;

WidthRule:IPCB_Rule;

Constraint:IPCB_Constraint;

begin

Board:=PCBServer.GetCurrentPCBBoard;

Rules:=Board.Rules;

WidthRule:=Rules.AddRule(WidthRule,1);

//设置规则范围

WidthRule.SetScope(HighSpeedSignalNets);

//设置约束条件

Constraint:=WidthRule.Constraints.AddConstraint(Width);

Constraint.Va

您可能关注的文档

文档评论(0)

找工业软件教程找老陈 + 关注
实名认证
服务提供商

寻找教程;翻译教程;题库提供;教程发布;计算机技术答疑;行业分析报告提供;

1亿VIP精品文档

相关文档