使用集成库
概览
- 了解集成库如何提高可移植性,并将元件模型集中管理。
- 学习如何准备源库,以及如何通过工程文件、已安装的库或搜索路径使模型可用。
- 掌握如何配置错误报告,并将库包编译为 IntLib 文件。
集成库体现了 Altium Designer 的 Integrated Component模型。在此模型中,较高层级的元件在原理图库文件(*.SchLib)中通过原理图符号进行建模。其他模型通过符号进行链接,元件参数也添加到符号中。所有源库(符号及其链接的模型)均在一个 Integrated Library Package 工程中定义,随后编译为单个文件,即 Integrated Library 或 IntLib。
本文介绍创建集成库的各种方法,以及如何从此类库中放置元件和修改此类库。
集成库的优势
编译为集成库的主要优势如下:
- 所有元件信息都包含在一个便于携带的文件中。由于所有模型都打包在集成库中,工程只需能够访问这一个文件;迁移工程时,也只需移动这一个文件。如果您需要在不同工作站之间切换工作,或希望与他人共享设计,这种便携性就显得尤为宝贵。
- 如果从集成库中将元件放置到设计原理图上,只要 Altium Designer 能找到该元件所属的集成库,就一定能找到正确的模型(也就是说,无需费力管理分散的库文件和模型文件;这些文件之间的模型链接可能非常“脆弱”,仅仅是在硬盘上重命名文件夹等日常管理操作,就很容易使链接失效)。
- 从安全性角度来看,集成库十分可靠。一旦生成,便无法更改。实际上,更新集成库意味着将其整体替换。您必须主动打开原始库包,更新源文档,然后重新编译。
- 编译时还会检查这些库的完整性。这意味着不仅会检查模型是否可用,还会检查引脚映射是否正确。即使您希望继续使用独立的库文件,也建议将原理图库放入集成库包中进行编译,哪怕只是为了确保源元件能够正确映射到目标模型。确认无误后,您可以不使用所创建的集成库,继续直接从原理图库中放置元件。
使用库包创建 IntLib
集成库包(*.LibPkg)是一种 Altium Designer 工程,用于汇集生成集成库所需的一组设计文档。您可以在原理图库编辑器中绘制原理图符号,并为每个符号定义模型引用/链接以及参数信息。这些内容存储在一个或多个原理图库文件中。引用的模型可以包括 PCB 封装、电路仿真模型和信号完整性模型。
集成库包中唯一必须添加的文档是原理图库(一个或多个)。包含 PCB 2D/3D 元件模型以及仿真模型/子电路的文件,可以位于工程内的任何有效搜索位置、“已安装的库”列表中的文件内,或库包指定的搜索路径中。
随后,将库包编译为单个集成库文件(*.IntLib)。
总而言之,创建集成库主要包含以下四个步骤:
-
创建源库包。
-
创建并添加所需的源原理图库文件。
-
创建并添加所需的领域模型文件(或指定其路径)。
-
编译库包,生成集成库文件。
创建源库包
要创建新的集成库包,请从主菜单中选择 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 命令,根据工程中已放置在原理图文档上的元件创建。
准备好源原理图库(一个或多个)后,可通过以下任一方法将其添加到库包中:
- 使用 Project » Add Existing to Project 命令。
- 在 Projects 面板中右键单击库包条目,然后从右键菜单中选择 Add Existing to Project 命令。

已添加到库包中的源 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 元件模型创建。
指定模型的查找位置
定义好模型文件后,需要让库包能够访问这些文件,以便在需要时轻松找到它们。请记住,模型由原理图元件引用(或链接)。无论是构建集成库包,还是进行原理图设计,Altium Designer 都采用一套标准机制来提供模型。有三种方式可以使模型可用:
- 将库/模型添加到工程中。
- 将库/模型安装到“已安装库”列表中。这样,所有设计工程都可以使用它。
- 定义指向库/模型的搜索路径。
每种方式都有各自的优势,因此请选择最适合您工作习惯的方式。不同的模型也适合采用不同的方式。例如,打开库包时,您可能不希望在 Projects 面板中看到大量仿真模型,但可能希望看到 PCB 2D/3D 元件模型库。在这种情况下,可以定义指向仿真模型存储文件夹的搜索路径, 并将 PCB 库添加到库包中。
这三种提供模型的方式共同构成了Libraries Preferences (可供工程使用), 均可在 Libraries Preferences对话框中定义。要打开该对话框,请单击 Components 面板右上角的
, 然后选择 Libraries Preferences命令。

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

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

已定义的搜索路径示例,用于查找所需的 PcbLib 模型文件。
编译和验证库包
将源库添加到库包,并根据需要定义模型文件的路径后, 即可编译库包,最终生成集成库。与其他工程一样,集成库包的编译器会生成警告和/或错误消息列表, 例如,针对未找到的模型发出警告。此外,还可以检查引脚映射错误,例如,映射指令指定焊盘 1 和 2,而实际封装包含的却是焊盘 A 和 K。
运行编译之前,最好先在 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选项卡中。
从工程文档创建 IntLib
也可以直接从工程的组成文档(源原理图和 PCB 文档)创建集成库。 如果您希望为已完成的设计创建可重复使用的库或归档,这种方式很有用。 请使用 Make Integrated Library命令,该命令可从原理图或 PCB 编辑器的主 Design菜单中访问。
该过程主要包括:
- 打开所有源原理图文档并创建原理图库。
- 从 PCB 文档创建 PCB 库。
-
将这些库编译为集成库,并以工程名称命名(
<ProjectName>.IntLib)。
IntLib 会添加到工程中(位于 Projects 面板中的 Libraries\Compiled Libraries下),添加到已安装库中(作为任何工程均可使用的 Available File-based Libraries的一部分),并可通过 Components 面板访问。

直接从当前设计工程中的原理图和 PCB 文档快速创建集成库。
从数据库库创建 IntLib
Related page: 数据库库
如果您希望 Altium Designer 元件与公司数据库紧密关联,Altium Designer 的数据库库是理想的选择。如果设计需要带离公司,或者您希望设计人员使用安全的集成库,也可以轻松实现。Altium Designer 支持直接从数据库库编译生成集成库: 既支持标准数据库库 (DbLib),也支持受版本控制的 SVN 数据库库 (SVNDbLib)。这样,CAD 库管理员仍可使用数据库库,而设计人员则可使用定期重新生成的集成库,以所谓的“离线”方式工作。
转换通过离线集成库生成向导执行。转换过程以数据库表为单位进行,您可以完全控制要处理数据库中的哪些表。每个纳入转换的表都会生成一个独立的集成库。

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

转换结果——包含符号和封装模型文档的库包工程,以及编译生成的 IntLib;这些 IntLib 也会被添加为已安装库。
通过获取元件创建 IntLib
Related page: 使用内容购物车获取 Workspace 数据
您还可以从 Workspace 获取元件并将其存入集成库 (*.IntLib)。从此类集成库放置元件时,实际链接仍指向 Workspace 中的元件。这样,您就可以离线使用公司的 Workspace 元件,同时确保设计仍与源 Workspace 中的这些元件保持真实关联。
在内容购物车对话框中,获取 IntLib 的步骤如下:
-
单击 Select target server 链接,然后从菜单中选择 IntLib file。
-
指定生成的 IntLib 文件的名称和位置。默认情况下,文件将采用
Integrated_Library - <Date> - <Time>.IntLib格式命名,并生成在\Users\Public\Documents\Altium\AD<Solution/Version>\Library\ExportCmpLib位置。如需修改,可单击 Change 链接打开 Save As 对话框,进行相应设置。 -
如果需要将更多元件获取到同一个 IntLib 中,请单击 Add More Items 链接,然后选择 Select 菜单项,打开 Choose Item 对话框(资源管理器面板的“精简版”)。您可以在此浏览源 Workspace,查找更多条目。或者,选择 Add manually 菜单项,打开 Add new items 对话框。您可以在此对话框中粘贴所需条目的外部列表(每行一个条目),然后使用选定的搜索条件(GUID、Item ID、Name 或 MPN)在源 Workspace 中搜索这些条目。
-
准备就绪后,单击
按钮,开始生成 IntLib。系统将创建一个临时集成库包 (*.LibPkg),并生成和添加源 SchLib 文件(包含符号、参数和模型链接)及 PcbLib 文件(包含封装模型)。随后,系统会编译该库包,在指定文件夹中生成 IntLib 文件。文件成功生成后,将显示信息对话框予以确认。
生成后,IntLib 会添加到“已安装的库”列表中,该列表是软件 Available File-based Libraries 的一部分。
从集成库放置元件
从集成库放置元件的操作在 元件面板中进行。可以在当前原理图文档或当前 PCB 文档中放置元件。放置方式如下:
-
从 Components 面板的下拉列表中选择所需的
*.IntLib文件,然后右键单击要放置的元件,并从右键菜单中选择 Place <ComponentName> 。在原理图文档中定位元件,然后 单击以放置。 -
单击所需元件,并将其 拖放到设计空间中。
虽然原理图库和集成库可能包含相同的元件(具有完全相同的模型链接),但从这两种库中放置的元件在检索模型信息时,其行为有所不同。从集成库放置的元件会查找原始集成库以获取模型,而从原理图库放置的元件则无法访问存储在集成库中的模型。
修改集成库
集成库用于放置元件,无法直接编辑。要更改集成库,请先修改源库,然后重新编译库包,生成包含这些更改的新集成库。
要修改集成库:
- 打开所需集成库的源库包工程。
- 打开要修改的源原理图库或模型库。
- 根据需要进行更改,保存修改后的库,然后将其关闭。
- 重新编译库包。新生成的集成库将替换现有的旧版本。
反编译集成库
有时需要访问集成库中的源库以进行修改,但由于某种原因,无法访问原始源库包工程。此时,集成库作为单个便携文件的另一项优势便体现出来了。虽然无法直接编辑集成库, 但可以将其反编译为构成该集成库的源符号库和模型库。
操作步骤如下:
-
打开包含待修改源库的集成库。可采用以下任一方式:
- 选择 File » Open 命令,在 Choose Document to Open 对话框中浏览并找到集成库,然后单击 Open。
- 将 IntLib 文件从 Windows 文件资源管理器拖放到 Altium Designer 窗口中。
-
在出现的 Open Integrated Library 对话框中,单击 Extract 按钮。
源原理图库和模型库将被提取,并保存到一个以集成库文件名命名的新文件夹中,该文件夹位于原始集成库所在的文件夹内。随后会创建一个库包(<IntegratedLibraryFileName>.LibPkg),并将源原理图库和 PCB 库添加到工程中, 显示在 工程面板中。仿真模型和子电路文件不会自动添加到工程中。

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




