使用集成库

概览

Altium Designer 中的集成库将原理图符号、关联模型和元件参数整合到一个便于移植的文件中。本文介绍如何创建集成库包、使引用的模型可用,以及如何在编译库包时检查模型缺失和引脚映射错误。继续阅读,进一步了解如何创建和验证您自己的集成库。

- 了解集成库如何提高可移植性,并将元件模型集中管理。
- 学习如何准备源库,以及如何通过工程文件、已安装的库或搜索路径使模型可用。
- 掌握如何配置错误报告,并将库包编译为 IntLib 文件。
使用 AI 深入了解:

集成库体现了 Altium Designer 的 Integrated Component模型。在此模型中,较高层级的元件在原理图库文件(*.SchLib)中通过原理图符号进行建模。其他模型通过符号进行链接,元件参数也添加到符号中。所有源库(符号及其链接的模型)均在一个 Integrated Library Package 工程中定义,随后编译为单个文件,即 Integrated Library 或 IntLib。

本文介绍创建集成库的各种方法,以及如何从此类库中放置元件和修改此类库。

集成库的优势

编译为集成库的主要优势如下:

  • 所有元件信息都包含在一个便于携带的文件中。由于所有模型都打包在集成库中,工程只需能够访问这一个文件;迁移工程时,也只需移动这一个文件。如果您需要在不同工作站之间切换工作,或希望与他人共享设计,这种便携性就显得尤为宝贵。
  • 如果从集成库中将元件放置到设计原理图上,只要 Altium Designer 能找到该元件所属的集成库,就一定能找到正确的模型(也就是说,无需费力管理分散的库文件和模型文件;这些文件之间的模型链接可能非常“脆弱”,仅仅是在硬盘上重命名文件夹等日常管理操作,就很容易使链接失效)。
  • 从安全性角度来看,集成库十分可靠。一旦生成,便无法更改。实际上,更新集成库意味着将其整体替换。您必须主动打开原始库包,更新源文档,然后重新编译。
  • 编译时还会检查这些库的完整性。这意味着不仅会检查模型是否可用,还会检查引脚映射是否正确。即使您希望继续使用独立的库文件,也建议将原理图库放入集成库包中进行编译,哪怕只是为了确保源元件能够正确映射到目标模型。确认无误后,您可以不使用所创建的集成库,继续直接从原理图库中放置元件。

使用库包创建 IntLib

集成库包(*.LibPkg)是一种 Altium Designer 工程,用于汇集生成集成库所需的一组设计文档。您可以在原理图库编辑器中绘制原理图符号,并为每个符号定义模型引用/链接以及参数信息。这些内容存储在一个或多个原理图库文件中。引用的模型可以包括 PCB 封装、电路仿真模型和信号完整性模型。

集成库包中唯一必须添加的文档是原理图库(一个或多个)。包含 PCB 2D/3D 元件模型以及仿真模型/子电路的文件,可以位于工程内的任何有效搜索位置、“已安装的库”列表中的文件内,或库包指定的搜索路径中。

随后,将库包编译为单个集成库文件(*.IntLib)。

是将模型库汇集到工程中,还是通过搜索路径查找它们,取决于您的具体工作习惯。如果您在准备集成库包时需要检查和编辑模型,可能希望随时都能访问模型库,因此可以将其直接添加到库包中。如果您不断向硬盘或网络上的特定文件夹添加模型库,则可能更倾向于使用搜索路径,让编译器自动检测新添加的库。
请注意,目前不会将来自 *.LIB库的 SPICE 模型添加到编译后的集成库中。

总而言之,创建集成库主要包含以下四个步骤:

  1. 创建源库包。

  2. 创建并添加所需的源原理图库文件。

  3. 创建并添加所需的领域模型文件(或指定其路径)。

  4. 编译库包,生成集成库文件。

创建源库包

要创建新的集成库包,请从主菜单中选择 File » New » Library 命令,然后在打开的 New Library 对话框的 File 区域中选择 Integrated Library 选项。单击 Create 后,新的空库包工程将添加到 Projects 面板中,最初不包含任何文档。

创建并添加源原理图库

创建包含所需元件的源原理图库(*.SchLib)。为每个元件添加所需的模型链接和参数信息。创建源原理图库有两种方法:

  • 从头创建:从主菜单中选择 File » New » Library 命令,然后在 New Library 对话框的 File 区域中选择 Schematic Library 选项。使用原理图符号编辑器创建新元件,或从其他已打开的原理图库中复制元件。
  • 在 Projects 面板中右键单击库包条目,然后从右键菜单中选择 Add New to Project » Schematic Library 命令。
  • 使用 Design » Make Schematic Library 命令,根据工程中已放置在原理图文档上的元件创建。
根据现有设计工程中已放置的元件创建原理图库时,所有源原理图文档都会自动打开。生成的库将以工程名称命名(<ProjectName>.SchLib)。

准备好源原理图库(一个或多个)后,可通过以下任一方法将其添加到库包中:

  • 使用 Project » Add Existing to Project 命令。
  • 在 Projects 面板中右键单击库包条目,然后从右键菜单中选择 Add Existing to Project 命令。

已添加到库包中的源 SchLib。
已添加到库包中的源 SchLib。

创建并添加领域模型文件

在相应文件中创建原理图元件所引用的模型:在 PCB 库(*.PcbLib)中创建 PCB 2D/3D 元件模型,在模型(*.Mdl)和子电路(*.Ckt)文件中创建仿真模型和子电路。当然,最重要的模型是 PCB 2D/3D 元件模型,与原理图库中的对应元件一样,它也可以通过两种方式创建:

  • 从主菜单中选择 File » New » Library 命令,然后在 New Library 对话框的 File 区域中选择 PCB Library 选项。使用 PCB 封装编辑器创建新的 2D 封装(并添加所需的 3D 实体信息),或从其他已打开的 PCB 库中复制元件。
  • 在 Projects 面板中右键单击库包条目,然后从右键菜单中选择 Add New to Project » PCB Library 命令。
  • 使用 Design » Make PCB Library 命令,根据已放置在 PCB 文档上的 PCB 2D/3D 元件模型创建。
根据现有 PCB 文档创建 PCB 库时,请确保该文档已打开且处于活动状态。生成的库将以 PCB 文档的文件名命名(<PCBDocumentName>.PcbLib)。

指定模型的查找位置

定义好模型文件后,需要让库包能够访问这些文件,以便在需要时轻松找到它们。请记住,模型由原理图元件引用(或链接)。无论是构建集成库包,还是进行原理图设计,Altium Designer 都采用一套标准机制来提供模型。有三种方式可以使模型可用:

  • 将库/模型添加到工程中。
  • 将库/模型安装到“已安装库”列表中。这样,所有设计工程都可以使用它。
  • 定义指向库/模型的搜索路径。

每种方式都有各自的优势,因此请选择最适合您工作习惯的方式。不同的模型也适合采用不同的方式。例如,打开库包时,您可能不希望在 Projects 面板中看到大量仿真模型,但可能希望看到 PCB 2D/3D 元件模型库。在这种情况下,可以定义指向仿真模型存储文件夹的搜索路径, 并将 PCB 库添加到库包中。

这三种提供模型的方式共同构成了Libraries Preferences (可供工程使用), 均可在 Libraries Preferences对话框中定义。要打开该对话框,请单击 Components 面板右上角的 Libraries dialogs access button, 然后选择 Libraries Preferences命令。

在 Libraries Preferences 对话框中定义模型的可用性。
在 Libraries Preferences 对话框中定义模型的可用性。

也可以使用 Add Existing to Project命令将 PCB 库(以及其他所需的模型文件)直接添加到库包中。 该命令可从主 Project菜单中访问, 也可从 Projects面板中库包条目的右键菜单中访问。

已添加到库包的源 PcbLib。
已添加到库包的源 PcbLib。

从 Libraries Preferences对话框的 Search Path选项卡定义模型文件的搜索路径时, 会打开 Options for Integrated Library对话框(Project » Project Options)的 Search Paths 选项卡。根据需要添加一个或多个路径,请记住,系统会按从上到下的顺序沿这些路径搜索模型。单击 Refresh List按钮,确认确实能够找到所需的模型文件, 并在必要时调整路径。

要访问 Options for Integrated Library对话框的 Search Paths 选项卡,必须在 Advanced Settings 对话框中启用 UI.ProjectOptions.SearchPaths选项。 要打开该对话框,请单击 Preferences对话框的 System – General 页面上的 Advanced按钮。您需要重新启动 Altium Designer,才能使此设置的更改生效。

已定义的搜索路径示例,用于查找所需的 PcbLib 模型文件。
已定义的搜索路径示例,用于查找所需的 PcbLib 模型文件。

编译和验证库包

将源库添加到库包,并根据需要定义模型文件的路径后, 即可编译库包,最终生成集成库。与其他工程一样,集成库包的编译器会生成警告和/或错误消息列表, 例如,针对未找到的模型发出警告。此外,还可以检查引脚映射错误,例如,映射指令指定焊盘 1 和 2,而实际封装包含的却是焊盘 A 和 K。

即使您希望继续使用独立的库文件(*.SchLib、*.PcbLib),也建议您在集成库包中编译原理图库, 哪怕只是为了确保源元件能够正确映射到目标模型。

运行编译之前,最好先在 Options for Integrated Library对话框的 Error Reporting 选项卡上检查并适当设置错误报告条件。

编译库包之前,建议根据需要设置错误报告选项和严重性级别。
编译库包之前,建议根据需要设置错误报告选项和严重性级别。

要执行编译,请使用主 Project菜单中的 Compile Integrated Library命令, 或使用 Projects 面板中库包条目右键菜单中的该命令。源库和模型文件会被编译为一个集成库, 其名称与源库包相同(<LibraryPackageName>.IntLib)。编译器会检查是否存在违规情况,发现的所有错误或警告都会列在 Messages面板中。请修复源库中的问题,然后重新编译。

编译集成库包时,编译器标记的错误示例。
编译集成库包时,编译器标记的错误示例。

集成库保存在 Options for Integrated Library对话框的 Options 选项卡中指定的输出文件夹内(默认是工程所在位置的子文件夹:\Project Outputs for <ProjectName>)。如果在 Options for Integrated Library对话框的 Options选项卡上启用了 Open outputs after compile选项, 集成库将自动添加到 Libraries Preferences 对话框的 Installed选项卡, 以及 Preferences对话框的 Data Management – File-based Libraries 页面中。

编译后的集成库会添加到 Libraries Preferences 对话框的 Installed选项卡中。
编译后的集成库会添加到 Libraries Preferences 对话框的 Installed选项卡中。

从工程文档创建 IntLib

也可以直接从工程的组成文档(源原理图和 PCB 文档)创建集成库。 如果您希望为已完成的设计创建可重复使用的库或归档,这种方式很有用。 请使用 Make Integrated Library命令,该命令可从原理图或 PCB 编辑器的主 Design菜单中访问。

该过程主要包括:

  1. 打开所有源原理图文档并创建原理图库。
  2. 从 PCB 文档创建 PCB 库。
  3. 将这些库编译为集成库,并以工程名称命名(<ProjectName>.IntLib)。

IntLib 会添加到工程中(位于 Projects 面板中的 Libraries\Compiled Libraries下),添加到已安装库中(作为任何工程均可使用的 Available File-based Libraries的一部分),并可通过 Components 面板访问。

直接从当前设计工程中的原理图和 PCB 文档快速创建集成库。
直接从当前设计工程中的原理图和 PCB 文档快速创建集成库。

  • 如果发现元件具有相同的库引用, 但内部结构不同,则会打开 Duplicated Components对话框。使用此对话框指定如何处理此类元件:仅处理第一个实例并忽略其余实例;处理所有元件并为其赋予唯一名称;或中止库的创建。
  • Messages 面板将列出生成 IntLib 时遇到的所有问题, 例如,无法找到的链接模型。

从数据库库创建 IntLib

Related page: 数据库库

如果您希望 Altium Designer 元件与公司数据库紧密关联,Altium Designer 的数据库库是理想的选择。如果设计需要带离公司,或者您希望设计人员使用安全的集成库,也可以轻松实现。Altium Designer 支持直接从数据库库编译生成集成库: 既支持标准数据库库 (DbLib),也支持受版本控制的 SVN 数据库库 (SVNDbLib)。这样,CAD 库管理员仍可使用数据库库,而设计人员则可使用定期重新生成的集成库,以所谓的“离线”方式工作。

转换通过离线集成库生成向导执行。转换过程以数据库表为单位进行,您可以完全控制要处理数据库中的哪些表。每个纳入转换的表都会生成一个独立的集成库。

使用 Offline Integrated Library Maker,将数据库库(DbLib 或 SVNDbLib)转换为“离线”集成库。
使用 Offline Integrated Library Maker,将数据库库(DbLib 或 SVNDbLib)转换为“离线”集成库。

该过程包括以下步骤:

  1. 打开要转换的数据库库文件 (*.DbLib) 或 SVN 数据库库文件 (*.SVNDbLib),并使其成为活动文档,然后从主菜单中选择 Tools » Offline Integrated Library Maker 命令,打开 Offline Integrated Library Maker。
  2. 使用 Library to Convert 页面指定要处理的 DbLib 或 SVNDbLib。默认情况下,启动 Offline Integrated Library Maker 时的活动库会被指定为要转换的库。如有需要,您也可以浏览并选择其他数据库库。
  3. 使用 Options 页面指定关联数据库中的哪些表要纳入转换。默认情况下,所有数据库表都会纳入转换。要排除某个表,请确保禁用其对应的 Convert 选项。您还可以在 Offline Integrated Library Maker 的此页面上指定输出目录,用于存储生成的集成库。直接输入此根目录的路径,或单击字段右侧的 Browse icon 图标,打开对话框,浏览并选择所需的目录。每个纳入转换的数据库表所生成的输出(集成库)都会存储在指定输出目录下独立的子文件夹中,子文件夹以该表的名称命名。
  4. 选择数据库库并根据需要设置相关转换选项后,单击 Next 开始转换。界面将显示进度条,以及当前正在转换的数据库表的信息。请注意,转换过程会针对您指定的每个数据库表分别执行。该过程大致可分为以下步骤:
    1. 创建一个集成库包 (*.LibPkg),并在项目面板中打开。该库包以表名命名。例如,对于名为 Capacitor - Ceramic 的表,生成的库包为 Capacitor - Ceramic.LibPkg。
    2. 创建一个原理图库文档,并将其添加到 LibPkg 中。该原理图库同样以表名命名(例如,Capacitor - Ceramic.SchLib)。
    3. 随后逐条处理表中的记录,并构建相应的 Altium Designer 元件。为此,系统会从相应的源库中提取所引用的原理图符号,并将其作为元件添加到新的原理图库文档中。然后,将记录中定义的参数和模型链接信息添加到该元件。
    4. 提取记录所引用的封装模型,并将其添加到 PCB 库文档中。该文档同样以表名命名(例如,Capacitor - Ceramic.PcbLib)。随后,将 PCB 库文档添加到 LibPkg 中。
    5. 如果源库为 DbLib,且数据库记录中定义了 PCB3D 和/或仿真模型链接,则所引用的 PCB3D 库和仿真模型文件也会添加到 LibPkg 中。这些模型的位置保持不变。模型的完整路径作为其对应模型链接的一部分指定。
    6. 随后编译 LibPkg,生成集成库(例如,Capacitor - Ceramic.IntLib),并将其添加到 Altium Designer 的已安装库中。

您可以在 Preferences 对话框的数据管理 – 基于文件的库页面中,以及可用的基于文件的库对话框的 Installed 选项卡中查看当前已安装的库。要打开后一个对话框,请单击元件面板右上角的 Libraries dialogs access button,然后选择 File-based Libraries Preferences。

转换结果——包含符号和封装模型文档的库包工程,以及编译生成的 IntLib;这些 IntLib 也会被添加为已安装库。
转换结果——包含符号和封装模型文档的库包工程,以及编译生成的 IntLib;这些 IntLib 也会被添加为已安装库。

通过获取元件创建 IntLib

Related page: 使用内容购物车获取 Workspace 数据

您还可以从 Workspace 获取元件并将其存入集成库 (*.IntLib)。从此类集成库放置元件时,实际链接仍指向 Workspace 中的元件。这样,您就可以离线使用公司的 Workspace 元件,同时确保设计仍与源 Workspace 中的这些元件保持真实关联。

在内容购物车对话框中,获取 IntLib 的步骤如下:

  1. 单击 Select target server 链接,然后从菜单中选择 IntLib file。

    将 Content Cart 的目标设置为 IntLib 文件。
    将 Content Cart 的目标设置为 IntLib 文件。

  2. 指定生成的 IntLib 文件的名称和位置。默认情况下,文件将采用 Integrated_Library - <Date> - <Time>.IntLib 格式命名,并生成在 \Users\Public\Documents\Altium\AD<Solution/Version>\Library\ExportCmpLib 位置。如需修改,可单击 Change 链接打开 Save As 对话框,进行相应设置。

    接受默认的目标文件夹和文件名,或根据需要进行更改。
    接受默认的目标文件夹和文件名,或根据需要进行更改。

  3. 如果需要将更多元件获取到同一个 IntLib 中,请单击 Add More Items 链接,然后选择 Select 菜单项,打开 Choose Item 对话框(资源管理器面板的“精简版”)。您可以在此浏览源 Workspace,查找更多条目。或者,选择 Add manually 菜单项,打开 Add new items 对话框。您可以在此对话框中粘贴所需条目的外部列表(每行一个条目),然后使用选定的搜索条件(GUID、Item ID、Name 或 MPN)在源 Workspace 中搜索这些条目。

  4. 准备就绪后,单击 按钮,开始生成 IntLib。系统将创建一个临时集成库包 (*.LibPkg),并生成和添加源 SchLib 文件(包含符号、参数和模型链接)及 PcbLib 文件(包含封装模型)。随后,系统会编译该库包,在指定文件夹中生成 IntLib 文件。文件成功生成后,将显示信息对话框予以确认。

    将购物车内容交付至目标文件夹,该文件夹中将包含所需的集成库文件。
    将购物车内容交付至目标文件夹,该文件夹中将包含所需的集成库文件。

生成后,IntLib 会添加到“已安装的库”列表中,该列表是软件 Available File-based Libraries 的一部分。

从集成库放置元件

从集成库放置元件的操作在 元件面板中进行。可以在当前原理图文档或当前 PCB 文档中放置元件。放置方式如下:

  • 从 Components 面板的下拉列表中选择所需的 *.IntLib 文件,然后右键单击要放置的元件,并从右键菜单中选择 Place <ComponentName> 。在原理图文档中定位元件,然后 单击以放置。

  • 单击所需元件,并将其 拖放到设计空间中。

使用 Place 按钮的方式可以放置同一元件的多个实例, 因为此方式会一直保持放置模式,直到右键单击 或按下 Esc。拖放方式更为直接, 但每次只能放置一个实例。

虽然原理图库和集成库可能包含相同的元件(具有完全相同的模型链接),但从这两种库中放置的元件在检索模型信息时,其行为有所不同。从集成库放置的元件会查找原始集成库以获取模型,而从原理图库放置的元件则无法访问存储在集成库中的模型。

修改集成库

集成库用于放置元件,无法直接编辑。要更改集成库,请先修改源库,然后重新编译库包,生成包含这些更改的新集成库。

要修改集成库:

  1. 打开所需集成库的源库包工程。
  2. 打开要修改的源原理图库或模型库。
  3. 根据需要进行更改,保存修改后的库,然后将其关闭。
  4. 重新编译库包。新生成的集成库将替换现有的旧版本。

反编译集成库

有时需要访问集成库中的源库以进行修改,但由于某种原因,无法访问原始源库包工程。此时,集成库作为单个便携文件的另一项优势便体现出来了。虽然无法直接编辑集成库, 但可以将其反编译为构成该集成库的源符号库和模型库。

操作步骤如下:

  1. 打开包含待修改源库的集成库。可采用以下任一方式:
    1. 选择 File » Open 命令,在 Choose Document to Open 对话框中浏览并找到集成库,然后单击 Open。
    2. 将 IntLib 文件从 Windows 文件资源管理器拖放到 Altium Designer 窗口中。
  2. 在出现的 Open Integrated Library 对话框中,单击 Extract 按钮。

源原理图库和模型库将被提取,并保存到一个以集成库文件名命名的新文件夹中,该文件夹位于原始集成库所在的文件夹内。随后会创建一个库包(<IntegratedLibraryFileName>.LibPkg),并将源原理图库和 PCB 库添加到工程中, 显示在 工程面板中。仿真模型和子电路文件不会自动添加到工程中。


从集成库中提取源库——通过反编译生成库包工程。

包含源库和模型文件(如适用)的文件夹路径会自动添加到 Options for Integrated Library 对话框(Project » Project Options)的 搜索路径选项卡中,确保能够找到所有模型(尤其是 .mdl 和 .ckt 文件)。
库包不会自动保存。请确定工程的保存位置和名称——默认情况下,文件将保存在提取出的源文件所在的文件夹中。
AI-LocalizedAI 翻译
如您发现任何问题,请选中相关文本/图片,并按 Ctrl + Enter 键向我们提交反馈。
Contents
功能可用性

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

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

旧版文档

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

Contents