从图书馆更新足迹
此处说明的 Update From Libraries 和 Update Selected From Libraries 命令 (这里)仅用于更新原理图页上已放置的元件。尽管更新过程中也可以包含模型,但这里关注的是模型链接关系,而不是所链接模型的实际图形属性。若要将源 PCB Footprint 库中的 PCB 封装图形属性更改传递到设计中,则需要使用 Altium Designer 更新工具库中的另一种工具——Update From PCB Libraries。该更新工具会通过对每个封装的图元进行物理比较,将板上的元件封装与源 PCB Footprint 库中的对应封装进行核对,并按需对所选元件执行更新。这可确保设计中的所有封装都符合已授权的封装库。
为说明该工具的用法,请看下方所示的元件封装。这些是 PCB 文档中现有的封装。右侧是源 PCB Footprint 库(*.PcbLib)中已修改的封装。更改虽然细微——上方封装的“''”符号位置移动;下方封装的“''”符号和圆弧加宽——但足以用于本示例说明。

PCB 文档中的现有封装(左图)与源 PCB Footprint 库中的已修改封装(右图)
定义更新选项
更新在 PCB 文档中执行,使用主 Tools 菜单中的 Update From PCB Libraries 命令。启动该命令会打开 Update From PCB Libraries - Options 对话框。使用该对话框,在 Layers To Include 区域中通过 Include 复选框,或使用 Include All 按钮下拉菜单中的命令,选择要比较的 PCB 与库封装的层。这一点很重要,因为在某些设计中,封装的某些层可能并未使用,额外的比较会增加处理时间。

Update From PCB Libraries - Options 对话框
此时,如果你希望将所有封装更新为与源库一致,只需单击 Update All Footprints (Create ECO) 按钮,然后通过后续的 Engineering Change Order 将更改应用到设计中即可。不过,如果你希望在生成 ECO 之前详细检查检测到的差异,并决定哪些封装需要纳入更新,请单击 OK 以访问 Update From PCB Libraries 对话框——见下文。
查看比较结果
在 Update From PCB Libraries - Options 对话框中按需定义选项后,单击 OK。比较将开始执行,结果会显示在随后出现的 Update From PCB Libraries 对话框中。
源 PCB 库通过源原理图中相应元件关联的 PCB 模型链接来识别。源库必须属于 Available File-based Libraries。如果无法为某个封装找到源,将其标记为不匹配。
该对话框分为两个主要部分。上方的 Part List 区域显示比较结果。PCB 上每个元件的封装都会与所示源库中的对应封装进行比较。顶部标题行是匹配项的汇总。如果封装中每个图元的比较结果都在指定公差范围内,则认为封装匹配,并在 Match 列中显示绿色对勾图标(
)。匹配情况下无需更新。
如果封装中的一个或多个图元在封装内的位置超出公差范围,则该封装会被标记为不匹配,并在 Match 列中插入红色叉号图标(
)。此时需要更新,以使已放置元件的封装与源库封装重新同步。
对于每个封装不匹配的元件,都会有一个对应的 Update 选项。默认情况下,所有未匹配的元件都会自动纳入更新。与 Altium Designer 的一贯风格一样,控制权始终在你手中:你可以通过取消勾选复选框,或使用 Include All 按钮下拉菜单中的命令,将任何不匹配的元件从更新过程中排除。
对话框下方的 Difference Details 区域会列出上方区域中当前选中(且不匹配)的元件条目在图元层面发现的差异。对于不匹配的封装,会按启用参与比较的各层列出导致差异的元件图元。你可以使用该区域顶部的选项卡查看所有层的差异,或按特定层查看。Component Primitives causing Differences for 区域左侧列出导致差异的元件图元,右侧显示所列数据。信息包括:
- Object Type - 对象类型。
- Identifier - 列出任何特殊的位号(designator)信息。
- Detail - 显示元件图元的详细信息。
同时会提供图形化对比视图,封装被划分为多个单元格。使用 Highlight Cell Density 滑块条可增大(向右)或减小(向左)显示区域中单元格的尺寸。存在差异的单元格会以全彩显示,并高亮差异。当前 PCB 中的图元对象以全彩显示,而来自库的更新后元件图元会以“幽灵”叠影的方式覆盖在其上方。
生成比较报告
如果你想创建封装比较报告(Footprint Comparison Report,Footprint Comparison - PCBDocumentName.html),请单击 Update From PCB Libraries 对话框左下角的 Create Report 按钮。报告提供:
- 未匹配元件列表
- 已匹配元件列表
- 未匹配元件列表中每个元件的图元差异详情。

封装比较报告
继续执行更新
当你对更新方案满意后,单击 Accept Changes (Create ECO) 按钮。使用随即打开的 Engineering Change Order 对话框先进行验证,然后按需执行更新。禁用任何你不希望发生的更改。更改将被应用,并且包含在更新中的元件其封装将更新为源库中的封装。

Engineering Change Order 对话框已准备好用于验证并执行封装更新
直接从 PCB Library Editor 应用更改
可以在源 PCB 库内直接更新已放置的 PCB 封装。此更新方法特别适用于更新那些来自独立 PCB 封装库 (*.PcbLib) 的元件,并且这些库已作为项目可用的基于文件的库的一部分。
在源 PCB 库中对一个或多个元件封装所做的更改,可以直接传递到 PCB 上这些封装的已放置实例。PCB Library Editor 的主 Tools 菜单提供命令,用于仅更新当前封装(Update PCB With Current Footprint),或更新所有封装(Update PCB With All Footprints)。这些命令也可从 PCB Library 面板 的右键菜单中访问。

在源 PCB 库中,可通过 PCB Library 面板的右键菜单应用更改
所有打开的 PCB 文档中已放置的元件封装实例(无论其所属父项目为何)都将被更新。实质上,只要已放置的元件封装名称与库中元件的名称相同,就会被更新。
