从图书馆更新足迹

概览

本文介绍如何使用 Altium Designer 的“从 PCB 库更新”工具,将 PCB 上已放置的封装与库中的源封装进行比较,识别差异、查看详细信息,并通过工程变更单(ECO)应用更新。文章还说明了此命令的适用情形,例如源封装来自文件库或数据库库的情况,以及不适用的情形,例如某些 Workspace 修订版本更新场景。您还将了解如何配置比较选项、解读匹配与不匹配的结果、生成比较报告,甚至直接从 PCB 库编辑器更新已放置的封装。如果您希望以更清晰、更可控的方式,让 PCB 封装与已批准的库保持一致,请继续阅读。

- 了解何时应使用“从 PCB 库更新”,以及何时需要采用其他更新方式。
- 学习如何将已放置的 PCB 封装与源库封装进行比较,检查详细差异,并选择要更新的内容。
- 了解如何生成封装比较报告,并通过工程变更单流程应用已批准的更改。
使用 AI 深入了解:

此处介绍的 Update From Libraries 和 Update Selected From Libraries 命令仅用于更新原理图页上已放置的元件。虽然更新可以包含模型,但这里涉及的是模型链接,而不是所链接模型的实际图形属性。要将源 PCB 封装库中 PCB 封装图形属性的更改传递到设计中,需要使用 Altium Designer 更新工具集中的另一个工具——Update From PCB Libraries。此更新工具通过对各个封装的图元进行物理比较,检查电路板上的元件封装与源 PCB 封装库中相应封装的差异,并根据需要更新选定的元件。这可确保设计中的所有封装均符合经批准的封装库。

此命令适用于来自基于文件的库和数据库库的 PCB 元件,包括 PCB 封装库 (*.PcbLib)、集成库 (*.IntLib) 和数据库库 (*.DbLib、*.SVNDbLib)。对于数据库库,更新所用的库是链接的外部数据库中相应记录所引用的库。对于封装来源的底层库,其引用信息会从相应的原理图(如果可用)或 PCB 封装本身获取。所有源库都必须属于“可用库”集合。

请注意,如果 PCB 设计中使用的 PCB 封装来自您的 Workspace 库,并且已在该库中更新(相关元件也已更新为使用封装的新修订版),则 Update From PCB Libraries 命令不适用。将 PCB 封装保存到 Workspace 时,会创建一个新的修订版,而 PCB 设计中的封装仍引用先前的修订版(即较早的修订版,而非当前最新的修订版)。在这种情况下,要更新 PCB 上的封装,请先更新原理图中的相关元件(了解更多),然后使用原理图编辑器中的 Design » Update PCB Document 命令及后续的 ECO 流程来更新 PCB,PCB 设计中的封装就会更新为最新修订版。

请注意,如果来自 Workspace 库元件的已放置封装在 PCB 设计中存在一些“本地”更改(例如,更改了焊盘属性,或者解锁并更改了封装图元),则可以使用 Update From PCB Libraries 命令检测已放置封装与库中封装之间的差异,并更新已放置的封装(实质上就是移除这些“本地”更改)。

为说明此工具的用法,请参看下方所示的元件封装。这些是 PCB 文档中现有的封装。右侧为源 PCB 封装库 (*.PcbLib) 中已修改的封装。虽然改动很细微——上方封装中的“符号”已移动,下方封装中的“符号和圆弧”线宽已增大——但足以用于此处的说明。

PCB 文档中的现有封装(左图)和源 PCB 封装库中已修改的封装(右图)
PCB 文档中的现有封装(左图)和源 PCB 封装库中已修改的封装(右图)

定义更新选项

在 PCB 文档中,使用主 Tools 菜单中的 Update From PCB Libraries 命令执行更新。运行此命令将打开 Update From PCB Libraries - Options 对话框。在此对话框中,使用 Layers To Include 区域中的 Include 复选框或 Include All 按钮下拉菜单中的命令,选择要比较 PCB 封装和库封装的哪些层。这一点很重要,因为在某些设计中,封装的某些层可能并未使用,额外的比较会增加处理时间。

要检查当前 PCB 文档中光标下的元件封装(或当前选定的元件),请右键单击已放置但未选定的元件,或右键单击已选定的元件(或一组选定元件中的某个元件),然后从快捷菜单中选择 Component Actions » Update Current Components From PCB Libraries 命令。

Update From PCB Libraries - Options 对话框
Update From PCB Libraries - Options 对话框

此时,如果您希望更新所有封装,使其与源库中的封装一致,只需单击 Update All Footprints (Create ECO) 按钮,然后通过后续的工程变更单将更改应用到设计中。但是,如果您希望在生成 ECO 之前详细检查检测到的差异,并确定要更新哪些封装,请单击 OK ,打开 Update From PCB Libraries 对话框,具体请参见下文。

查看比较结果

在 Update From PCB Libraries - Options 对话框中按需定义选项后,单击 OK。随后将执行比较,并在接下来显示的 Update From PCB Libraries 对话框中列出结果。

Update From PCB Libraries 对话框
Update From PCB Libraries 对话框

源 PCB 库通过源原理图中相应元件关联的 PCB 模型链接来确定。源库必须属于“可用的基于文件的库”。如果找不到某个封装的来源,该封装将被标记为不匹配。

此对话框分为两个主要部分。上方的 Part List 区域显示比较结果。PCB 上每个元件的封装都会与所示源库中的相应封装进行比较。顶部标题行汇总了匹配项。如果封装中各图元的比较结果均在指定的容差范围内,则这些封装将被视为匹配,Match 列中会显示绿色对勾图标 ()。匹配时无需更新。

但是,如果封装中一个或多个图元在封装内的位置超出了容差范围,则这些封装会被标记为不匹配。Match 列中将显示红色叉号图标 ()。此时需要更新,使已放置元件的封装与源库封装重新保持同步。

如果找不到源库中的封装,用于指定待比较库元件的 Path  字段将显示 <Footprint not found>,以反映这一情况。此时无法对此特定元件进行比较。

对于每个封装不匹配的元件,都会有一个关联的 Update 选项。默认情况下,每个不匹配的元件都会自动纳入更新。与 Altium Designer 的一贯方式相同,控制权始终在您手中:您可以取消选中复选框,或使用 Include All 按钮下拉菜单中的命令,将任何不匹配的元件排除在更新流程之外。

对话框下方的 Difference Details 区域列出了上方区域中当前选定(且不匹配)的元件条目的图元差异。 对于不匹配的封装,会按各个已启用的图层列出造成差异的元件图元,以供比较。您可以使用该区域顶部的选项卡查看所有图层或特定图层的差异。Component Primitives causing Differences for 区域在左侧列出造成差异的元件图元,并在右侧显示所列数据。 信息包括:

  • Object Type - 对象类型。
  • Identifier - 列出任何特殊的位号信息。
  • Detail - 显示元件图元的详细信息。

系统会以图形方式进行比较,并将封装划分为多个单元格。使用 Highlight Cell Density 滑块可增大(向右)或减小(向左)显示区域中的单元格大小。存在差异的单元格以全彩显示,并高亮显示差异。当前 PCB 中的图元对象以全彩显示,库中更新后的元件图元则以“重影”图像叠加显示在其上方。

  • 如果选定的 PCB 元件封装与库封装之间存在封装参数差异,对话框的 Difference Details 区域将包含 Parameters 选项卡,用于列出参数差异。

  • 如果选定的 PCB 元件封装与库封装之间存在焊盘编号或 3D 实体差异(封装在 PCB 中被镜像后可能会出现此情况),对话框的 Difference Details 区域将包含 Properties 选项卡,用于列出参数差异。

  • 如果选定的 PCB 元件封装与库封装之间没有差异,该区域的标题将为 No Difference For [Designator name (Footprint Name)],并显示所选元件在当前所选图层选项卡上的内容。

  • 如果 Part List 中的 Path 列显示为 <Footprint not found>,则 Difference Details 区域的标题将指出未找到该封装。

生成比较报告

如果要创建封装比较报告(Footprint Comparison - PCBDocumentName.html),请单击 Update From PCB Libraries 对话框左下角的 Create Report 按钮。报告包含:

  • 不匹配的元件列表
  • 匹配的元件列表
  • 不匹配元件列表中每个元件的图元差异详情。

封装比较报告
封装比较报告

生成比较报告后,Update From PCB Libraries 对话框将关闭。您需要重新启动该命令。

也可以将封装比较报告作为一组验证输出的一部分,添加到输出作业配置文件中。

继续更新

确认更新方案符合要求后,单击 Accept Changes (Create ECO) 按钮。在打开的 Engineering Change Order 对话框中验证并执行相应的更新。禁用任何不希望执行的更改。更改执行后,更新范围内元件的封装将更新为源库中的封装。

Engineering Change Order 对话框,已准备好验证并执行封装更新
Engineering Change Order 对话框,已准备好验证并执行封装更新

通过 ECO 修复意外镜像的封装时,会移除已放置封装实例的镜像,使其与源库中的定义一致。 请注意,应用修复时仅考虑与镜像相关的元素(引脚、丝印和 3D 实体)。对已放置元件封装的其他更改(例如旋转)将保持不变。

直接从 PCB 库编辑器应用更改

可以从源 PCB 库中直接更新已放置的 PCB 封装。这种更新方法尤其适用于从独立 PCB 封装库(*.PcbLib)中放置的元件,且这些库已被纳入项目可用的基于文件的库中。

在源 PCB 库中对一个或多个元件封装所做的更改,可以直接应用到 PCB 上这些封装的已放置实例。PCB 库编辑器的主 Tools 菜单提供了仅更新当前封装(Update PCB With Current Footprint)或更新所有封装(Update PCB With All Footprints)的命令。这些命令也可通过 PCB Library 面板的右键菜单访问。

在源 PCB 库中,可以使用 PCB Library 面板的右键菜单应用更改
在源 PCB 库中,可以使用 PCB Library 面板的右键菜单应用更改

所有已打开 PCB 文档中已放置元件封装的所有实例都将更新,无论其属于哪个项目。也就是说,只要已放置元件封装的名称与库元件的名称相同,就会更新。

AI-LocalizedAI 翻译
如您发现任何问题,请选中相关文本/图片,并按 Ctrl + Enter 键向我们提交反馈。
Contents
功能可用性

您可使用的功能取决于您所采用的 Altium 解决方案——Altium Develop、Altium Agile Teams、Altium Agile Enterprise,或 Altium Designer(在有效订阅期内)。

如果您在实际软件中未看到文档中介绍的某项功能, 请联系 Altium Sales 了解更多信息。

旧版文档

Altium Designer 文档不再提供版本区分。如果您需要访问 Altium Designer 旧版本的文档,请前往其他安装程序页面的旧版文档部分。

Contents