从基于文件的库和数据库元件库对元件进行更新

你已经在原理图上放置了元件,甚至可能已经完成连线、编译,并将设计推进到 PCB 布局阶段。很可能在某个时候需要对元件进行更改——新增一个参数、修改模型链接,或者在图形层面更改符号或封装。

进行更改的合理位置是在源头。这个“源头”的性质取决于元件是如何放置的:

  • From an Integrated Library - 提取源库,完成更改,然后编译集成库包以生成修订后的集成库。
  • From a Database Library - 对于参数或符号/模型引用,在链接的外部数据库中对该元件对应的记录进行更改。如果更改是图形层面的(符号或模型),则在所引用的源库中完成更改。
  • From a Schematic/PCB Library - 在放置该元件/封装所对应的库中,对元件或封装进行更改。

你也可能使用 Database Link 文件(*.DBLink)将已放置的元件链接到外部数据库。符号和模型的更改在源库中完成;参数的更改在数据库中完成。

完成更改后,需要将其推送到设计中。Altium 提供了多种更新工具,可让你快速高效地将元件更改传递到你的 Altium Designer 元件中。本文档将详细介绍这些工具——它们使你能够始终保持元件源与已放置元件实例之间的同步。

请参阅 Updating Footprints from Libraries 页面,了解有关更新封装的更多信息。

从数据库更新参数

在该工具的语境中,术语“Altium Designer component”用于描述放置在原理图图纸上的元件实例,或源原理图库中的元件。Altium Designer 提供了一个工具,用于使用存储在外部数据库中的信息来更新 Altium Designer 元件的参数。要实现更新,这些元件必须链接到外部数据库中相应的元件记录。链接通过一个中间链接文件来完成,该文件可以是以下之一:

  • Database Link file (*.DBLink) - 用于将现有已放置元件链接到外部数据库,或更常见地,用于链接源原理图库中已定义的元件。
  • Database Library file (*.DBLib) - 用于将元件从外部数据库直接放置到原理图图纸上时。
  • SVN Database Library file (*.SVNDBLib) - 与 *.DBLib 相同,但符号库和模型库存储在版本控制之下。

在原理图编辑器中,通过主菜单选择 Tools » Update Parameters From Database 命令来执行更新。启动该命令将打开 Update Parameters From Database 对话框。使用该对话框选择要包含在更新中的原理图文档以及元件类型。

Update Parameters From Database 命令在原理图库编辑器中也可用。源库必须属于某个库包(*.LibPkg),并使用 *.DBLink file 来提供从库元件到外部数据库中元件记录的链接。

Update Parameters From Database 对话框
Update Parameters From Database 对话框

在定义更新范围后,点击 OK。系统将查询外部数据库以查找匹配的元件。如果 Altium Designer 元件与数据库中匹配记录之间存在参数差异,将打开 Select Parameter Changes 对话框。

Select Parameter Changes 对话框
Select Parameter Changes 对话框

该对话框列出了在更新范围内、与 Altium Designer 元件链接的数据库记录中存在的所有参数。任何为 Altium Designer 元件定义、但不是数据库表字段的参数都不会列出。例如,你可能使用数据库库功能直接从数据库放置了一个元件,然后在放置后又添加了一个或多个参数。

仅列出在外部数据库与已放置元件实例之间完成映射的参数。参数映射在中间链接文件的 Field Mappings 选项卡上执行。

对话框初始将根据你在中间链接文件(DBLink、DBLib、SVNDBLib)中定义的更新动作,显示拟议更新,以使 Altium Designer 元件参数与数据库中的参数保持同步。

参数差异通过在相关单元格中插入独特图标来区分。例如,单元格角落的蓝色三角形表示检测到 Altium Designer 元件中某参数的值与链接数据库记录中同一参数的值存在差异。

稍后在本页的 Parameter Update States 部分中,将在 Select Parameter Changes 对话框里提供所有可用单元格状态的完整列表。

Select Parameter Changes 对话框中提供的控件可让你完全控制哪些更新要继续、哪些要拒绝。你可以拒绝对所选元件的所有参数更新,或仅拒绝该元件的特定参数更新。要拒绝某个特定参数的拟议更新,请选择相应单元格并单击 Reject Selected 按钮。要恢复该更新,请单击 Update Selected 按钮。

已放置/库元件的参数是否更新,也可以在单个参数层级进行控制,直接在设计/库中完成。在 Properties 面板中浏览所选参数的属性时(或在 Properties 面板的 Parameters 选项卡中查看所选元件的参数时),禁用 Allow Synchronization With Database 选项即可防止该参数被纳入更新流程。

当你对更新方案满意后,单击 Accept Changes (Create ECO) 按钮。使用随后打开的 Engineering Change Order 对话框来验证并按需执行更新。如果你意识到有某项更新确实不想继续,请禁用相应的变更单条目。

Engineering Change Order 对话框
Engineering Change Order 对话框

Dual Synchronization

你可能有一个现有的设计工程,其中大多数已放置的器件都通过 DbLink 文件链接到了外部数据库。设计变更可能会引入额外电路,其元件可能通过 Database Library 功能来放置。相关的 DbLib/SVNDbLib 文件很可能会指向另一个外部数据库。

使用 Update Parameters From Database 命令时,将会查询所有已放置元件的所有已链接参数——跨所有已链接数据库,不论使用何种链接方式——并在 Select Parameter Changes dialog 中显示这些参数检测到的差异。

如果在 DbLink 与 DbLib/SVNDbLib 文件中使用了相同的数据库字段进行匹配,则会先在 DbLink 文件所链接的数据库中搜索匹配项,然后再在 DbLib/SVNDbLib 文件所链接的数据库中搜索。如果该元件同时存在于两个数据库中,你就很可能会匹配并从错误的外部记录进行更新。

从库更新原理图元件

Altium Designer 提供了一个工具,用于将原理图页上已放置的元件用源库中修改后的信息进行更新。这包括 Schematic Component Libraries(*.SchLib)、Integrated Libraries(*.IntLib)以及 Database Libraries(*.DBLib*.SVNDBLib)。

尽管 DBLib 和 SVNDBLib 文件在 Components panel 中以库的形式呈现,但它们仅提供连接与字段映射来源,并非严格意义上的库。更新功能会传递外部数据库中参数、符号与模型引用的变更,以及在被引用的符号库与模型库中所做的图形修改。

更新功能允许你传递参数变更,以及模型与图形信息。

可在原理图文档中通过主菜单选择 Tools » Update From Libraries 命令来执行更新。启动该命令将打开 Update From Library 对话框。Update From Libraries 命令会使用源库中修改后的信息更新原理图页上的所有元件。

也可在原理图文档中通过主菜单选择 Tools » Update Selected From Libraries 命令来执行更新。Update Selected From Libraries 命令仅更新原理图页上所选的元件,使用源库中修改后的信息。

Update From Library 对话框
Update From Library 对话框

定义更新范围

对话框的第一页用于设置更新范围——要纳入更新的源原理图文档,以及其中包含的特定元件类型。

对话框的 Schematic Sheets 区域会加载所有可应用更新的原理图文档。这可以是单个独立的原理图文档,也可以是当前工程内的所有原理图页。启用你希望其元件被纳入更新的那些文档。

当你在 Schematic Sheets 列表中通过复选框或右键菜单中的 All On / All Off 命令启用/禁用条目时,对话框的 Component Types 区域将列出其包含的物理元件。每个元件将按以下信息列出:

  • 物理元件名称
  • 关联的逻辑符号
  • 放置该元件所使用的源库
  • 当前在所有已启用原理图文档中放置的实例数量。

列表中是否包含元件取决于页面左下角提供的选项。使用 Show 字段来确定纳入更新的元件类型。默认选择 All Components,但你也可以选择仅更新:

  • Standard Components - 从原理图库或集成库放置的元件。
  • Database Components - 通过 DBLib 或 SVNDBLib 使用外部数据库放置的元件。

Update From Library 对话框的 Show 字段
Update From Library 对话框的 Show 字段

默认情况下,所有元件类型都启用并可纳入更新。禁用任何你明确不想更新的类型。或者,在进入对话框之前,先在原理图页上直接选中你要更新的确切元件,然后启用 Selected Parts Only 选项。这样只会列出你所选中的元件。你也可以使用右键菜单中的 All On / All Off 命令。

使用 Include Variants 选项以包含变体,和/或使用 Update to Latest Revision 选项将从 Workspace Library 放置的元件更新到可用的最新修订版。使用这些选项来更新替代元件的参数。

需要记住的关键点是:你始终可以完全控制哪些内容会被纳入更新。

定义默认更新动作

页面的 Settings 区域用于定义所需的默认更新级别。你在此定义的默认更新动作将应用于已启用元件类型的所有元件实例。

Update From Library 对话框的 Actions 区域
Update From Library 对话框的 Actions 区域

最简单的更新形式是用源库中定义的元件完全替换原理图页上的元件——Fully replace symbols on sheet with those from library。图形属性、参数以及模型链接都会直接用源库中现有的信息进行更新。选择此选项后,将启用以下选项。请选择所有适用项:

  • Update designator lock fieldshow image
  • Update part ID lock fieldshow image
  • Preserve parameter locations
  • Preserve parameter visibility
请记住,如果源库是 DBLib 或 SVNDBLib,则参数与模型链接信息来自外部数据库中相应的元件记录,而图形属性的变更将来自被引用的符号库。

默认启用完全替换(Fully replace symbols on sheet with those from library)。如果你希望对更新内容有更多控制,请改为 Replace selected attributes of symbols on sheets。此时,各个独立更新选项(Update graphical attributes、 Update parameters、 Update models)将可按需启用/排除。

Update From Library 对话框第一页以及 Library Update Settings 对话框中的定义是持久化的。保存时它们会存储在工程文件中。

对于参数与模型的更新动作,还可以通过 Library Update Settings 对话框获得更进一步的控制。单击 Advanced 按钮即可打开该对话框。你不仅可以在此定义参数与模型的默认全局更新动作,还可以控制更新中包含哪些特定参数与模型。

访问 Library Update Settings 对话框
访问 Library Update Settings 对话框

在按需定义更新范围以及要执行的默认操作后,你可以单击 Finish,然后在随后生成的 Engineering Change Order 中审查并执行将要实施的更改。若你希望在生成 ECO 之前按“每个元件”进一步细化更新,请单击 Next 进入对话框的第二页,下一节将对此进行详细说明。

按元件实例控制更新

Update From Library 对话框第二页中的定义不会持久保存。如果你返回第一页或关闭对话框,这些定义将会丢失。

Update From Library 对话框的第二页提供了一个详细的网格,列出计划更新过程中涉及的所有元件实例。对话框的上一页允许你在较粗粒度上指定哪些物理元件类型会被纳入更新;本页则允许你精确微调这些类型中的哪些元件实例会被更新。

Update From Library 对话框的第二页
Update From Library 对话框的第二页

该网格分为三个区域:

  • Schematic Parts - 此区域列出原理图页上每个已放置元件的 Designator、 Comment Physical Component 以及 Logical Symbol。 启用 Update 复选框以更新所选元件。
  • Library Components - 此区域列出每个所列原理图器件对应的库元件的 Physical Component、 Logical Symbol、 Library Name 以及 Life Cycle State。 这通常是最初放置该元件时所用的同一个源库,但你也可以将该元件完全更换为同一库或不同库中的另一个元件。 在当前可用库中找不到的元件会列为 <Not Found>
  • Actions - 对于 Update  框被勾选的每个元件实例,所需执行的具体更新操作。它们最初会根据对话框第一页中定义的默认操作设置来设定。 单击复选框可为所选元件启用/禁用该操作,或使用右键菜单命令。
    • Full Replace - 勾选该框以对所选项执行完整 替换。
    • Graphical - 勾选该框以对所选项执行图形更新。
    • Parameters - 勾选该框以更新所选项的参数。如果 至少有一个元件启用了此复选框,你可以单击 Parameters Changes 按钮,在参数级别选择性地控制更改——了解更多
    • Models - 勾选该框以更新所选项的模型。

对于每个元件,源库元件的条目最初将是用于放置该元件实例的那个条目。此信息取自已放置元件的 Properties panel 的 Library Link 区域。

指定替代元件

通常,更新会将源库中原始物理元件所做的更改传递到原理图页上该同一物理元件的已放置实例。有时你可能希望彻底更改设计中放置的物理元件。本更新过程也可以很方便地指定这一点。

你可以通过直接编辑 Library Components 区域中对应的 Physical Component 字段来为某个元件实例指定替代元件)。如果指定的物理元件不存在于当前已添加到项目 Available Filed-based Libraries 列表的任何库中,则会在 Logical SymbolLibrary Name 字段中填入 <Not Found>。在这种情况下,该元件实例将无法更新。

搜索数据库元件时,只能在当前已加载的 DBLib 和 SVNDBLib 文件(Available Filed-based Libraries)中搜索。你不能沿指定的搜索路径搜索数据库元件。

或者,在网格中选择一个元件实例,然后单击 Choose Component 按钮。将出现 Replace Component 对话框,你可以在当前任何可用库中浏览并选择所需的替换元件。

访问 Replace Component (File-based) 对话框
访问 Replace Component (File-based) 对话框

当选择了有效元件后,所选元件的相关信息将写入页面的 Library Components 区域,并覆盖原始源库元件。

如果你想恢复为原始源库(保留原始物理元件),请在网格中选择该元件实例,然后单击 Return Selected to Default 按钮。

控制参数更改

仅当页面 Actions 区域中的 Full Replace 选项被禁用且 Parameters 选项被启用时,才会显示某个元件实例的单个“参数级”更改。如果你想浏览更新所提议的单个参数更改,请单击 Parameters Changes 按钮。将打开 Select Parameter Changes 对话框,汇总那些启用了参数更新操作的元件实例的参数更改。在下图示例中,注意元件实例 C1、C3、C7 和 C10 的参数更新操作被禁用,因此不会出现在该对话框中。

访问 Select Parameter Changes 对话框
访问 Select Parameter Changes 对话框

Update Parameters From Database 工具一样,该对话框会列出那些链接到外部数据库的元件实例的所有已映射参数。此外,参与参数更新的已放置元件实例中找到的所有参数也会被列出。这是在这两种更新工具中访问 Select Parameter Changes 对话框时的一个关键差异。

同样,该对话框会显示为使已放置元件的参数与相关源库或数据库中的元件参数重新同步而建议进行的更改。拟议更新与以下位置中定义的更新操作一致:

  • 当更新源为原理图库或集成库时:Library Update Settings dialogParameter Settings 区域。
  • 当更新源为数据库时:中间链接文件(*.DBLink*.DBLib*.SVNDBLib)。 

参数差异会通过在相关单元格中插入一个独特图标来高亮显示。有关所有可能单元格状态的完整列表,请参见下一节(Parameter Update States)。

使用对话框中提供的控件(按钮或右键菜单)来决定哪些参数更改要继续执行、哪些要拒绝,从而让你能够在单个参数层级覆盖默认的更新条件。请记住:在某个单元格中拒绝一项建议更新,意味着你不希望对原理图页上该特定元件实例的该参数进行任何更改。

参数更新状态

Select Parameter Changes 对话框中,单元格可处于多种不同的更新状态,具体取决于已放置元件与源库/数据库之间检测到的差异,以及所指定的适用参数更新操作。下表列出了可能的单元格状态。

Cell State Description
Altium Designer 元件与库/数据库中的元件都具有该参数,且值相同。更新不会造成任何更改。
Altium Designer 元件与库/数据库中的元件都具有该参数,但未分配值。更新不会造成任何更改。
Altium Designer 元件与库/数据库中的元件都不具有该参数。更新不会造成任何更改。 如果通过在关联的 Properties 面板中禁用 Allow Synchronization With Library 和/或 Allow Synchronization With Database 选项,阻止将 Altium 元件中的该参数纳入更新,则也可能出现此状态。 
Altium Designer 元件与库/数据库中的元件都具有该参数,但值不同。更新将把值设置为数据库中的值。
Altium Designer 元件与库/数据库中的元件都具有该参数。对于 Altium Designer 元件,该参数已分配值;而在数据库中未分配值。更新将赋予数据库值;在此情况下即为空值。
Altium Designer 元件不具有该参数,但库/数据库中的元件具有。更新将把该参数添加到 Altium Designer 元件中,并使用单元格中显示的值。
Altium Designer 元件不具有该参数,但库/数据库中的元件具有。更新将把该参数添加到 Altium Designer 元件中,初始不分配任何值。
Altium Designer 元件具有该参数,但库/数据库中的元件不具有。更新将从 Altium Designer 元件中移除该参数。 Note: 如果元件实例是从外部数据库更新,且相关的“数据库字段到设计参数”的映射被设置为,则该参数将被视为在数据库记录中不存在,即使它确实存在。
Altium Designer 元件与库/数据库中的元件在参数值上存在差异。基于数据库链接文档(DbLink、DbLib 或 SvnDbLib 文件)中 Update Values 选项的当前值,已拒绝将值更新为数据库中的值这一提议。不会发生更改。请注意,本对话框中的 Update SelectedUpdate All 命令将覆盖此状态并强制更新。
Altium Designer 元件不具有该参数,但库/数据库中的元件具有。基于 Add To Design option 的当前值,已拒绝将该参数添加到 Altium Designer 元件的建议更新。不会发生更改。请注意,本对话框中的 Update SelectedUpdate All 命令将覆盖此状态并强制更新。
Altium Designer 元件具有该参数,但库/数据库中的元件不具有。基于数据库链接文档(DbLink、DbLib 或 SvnDbLib 文件)中 Remove From Design 选项的当前值,已拒绝从 Altium Designer 元件中移除该参数的建议更新。不会发生更改。请注意,本对话框中的 Update SelectedUpdate All 命令将覆盖此状态并强制更新。

直接从原理图库编辑器应用更改

可以在源原理图库内直接更新已放置的原理图元件。此更新方法特别适用于从独立的原理图元件库(*.SchLib)放置的元件,并且这些库被纳入项目可用的基于文件的库中。

在源原理图库中对元件所做的修改,可通过原理图库编辑器主菜单中的 Tools » Update Schematics 命令传递到原理图文档。或者,也可以在 SCH Library panel 中选中这些元件,然后通过右键菜单使用更新命令来应用对所选元件的更改。

在源原理图库中,可通过 SCH Library 面板的右键菜单应用更改
在源原理图库中,可通过 SCH Library 面板的右键菜单应用更改

所有打开的原理图文档中已放置元件的所有实例都会被更新,而不管文档属于哪个项目。实质上,只要已放置元件的 Physical Component 字段条目与库元件相同,就会被更新。更新过程中修改了多少个元件(涉及多少个文档)会通知你。该更新会将每个现有元件实例完整替换为库中的元件。

如果原理图上的某个元件实例是从集成库(IntLib)或数据库库(DBLib、SVNDBLib)放置的,使用此命令会完全替换该元件,因此原始库链接将被替换为指向执行更新所用源库的链接。对于从数据库放置的元件,这尤其危险,因为与该数据库中对应记录的链接将被切断。因此建议(也可能更安全)使用 Update From Libraries 命令。

验证更新

在更新已放置的原理图元件、原理图库元件或 PCB 封装之后,你当然会希望验证更新是否按计划进行。以下各节将介绍如何快速检查参数、模型链接以及图形属性是否已成功更新。

检查参数更新

你可以通过运行 Parameter Table Editor dialogTools » Parameter Manager) 来检查参数是否已正确更新,或者通过 Properties panel 查看所选元件的参数来进行核对。

如下所示,元件 C1C2C3 在更新过程中都新增了一个参数 TestParam,其值为 Test

Parameter Table Editor 对话框
Parameter Table Editor 对话框

检查模型链接更新

可在关联 Properties 面板的 Models 区域中验证元件模型链接的更新。

检查图形更新

检查图形更新最简单的方法是将图纸上的设计元件与源库中的元件进行对比。后者可通过 Components panel 轻松显示,从而实现直接的并排比较。

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

您可使用的功能取决于您所选择的 Altium 解决方案 —— Altium DevelopAltium Agile(Agile Teams 或 Agile Enterprise 版本),或仍在有效订阅期内的 Altium Designer。

如果您在软件中未找到文中提及的功能,请联系 Altium 销售团队了解更多信息。

旧版文档

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

Content