电脑基础 · 2023年3月25日

Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

目录

  • 序言
  • KiCad Library Utils
  • 通用库指南
    • G1:一般准则
    • G2:通用和完全指定的符号
      • G2.1:术语定义;通用和完全指定的符号
        • 通用符号
        • 完全指定的符号
  • 符号准则
    • S1 - 符号库
      • S1.1 符号库应按功能分类
    • S2 - 符号命名
      • S2.1 一般符号命名准则
      • S2.2 部件号中的非功能变化应替换为通配符
      • S2.3 如果零件有多个封装选项,则必须为每个封装绘制单独的符号
    • S3 通用符号要求
      • S3.1 符号中间以原点为中心
      • S3.2 文本字段应使用 50mils 的通用文本大小
      • S3.3 符号轮廓和填充要求
      • S3.4 具有复杂功能的符号可以包含简单的功能图
      • S3.5 引脚连接点必须放置在符号之外
      • S3.6 引脚名称位置偏移
      • S3.7 专用焊盘的引脚编号
      • S3.8 多单位符号
    • S4 引脚要求
  • 封装指南
  • 3D模型指南

序言

Part:表示一个独立的元件,管脚只是逻辑上的,比较随意,用于放置在原理图中。

Package:一个完整的元件封装,可以包含多个Part。

Footprint:元件的封装,是严格按照元件尺寸制作,用来放置在PCB上。

:KLC:Kicad库公约(kicad liberary convertion)
Kicad文档
开源 EDA 工具 KiCad 5.1.5 电路设计手册
开源 EDA 工具 KiCad 6.0 电路设计小书
kicad 5.1入门

KiCad Library Utils

KiCad 库团队开发了一组 Python 脚本,可用于帮助测试库组件是否符合 KLC 要求。

github:KiCad Library Utils

符号库检查:

# first get into klc-check directory
cd kicad-library-utils/klc-check
# run the script passing the files to be checked
./check_symbol.py path_to_lib1 path_to_lib2
# to check a specific component you can use the -c flag
./check_symbol.py -c component_name path_to_lib1
# run the following 'h'elp command to see other options
./check_symbol.py -h

封装检查

# first get into klc-check directory
cd kicad-library-utils/klc-check
# run the script passing the files to be checked
./check_footprint.py path_to_fp1.kicad_mod path_to_fp2.kicad_mod
# Add `-v`, `-vv`, or `-vvv` for extra verbose output. The most useful is `-vv`, which explains in details the violations. Ex:
./check_footprint.py path_to_fp1.kicad_mod path_to_fp2.kicad_mod -vv
# run the following 'h'elp command to see other options
./check_footprint.py -h

通用库指南

G1:一般准则

G2:通用和完全指定的符号

G2.1:术语定义;通用和完全指定的符号

Kicad有两个完全指定的工作流程:一个符号代表什么、什么时候为这个符号分配一个封装。
这两个流程可以在库中完成,即符号表示精确的零件,或者在设计过程结束时使用“指定封装”工具。

通用符号

通用符号可以用于多个封装,因此没有设定默认的封装。通用符号允许设计工作流程的灵活性,对于设计工作流程,通常选择符号放置在原理图中,是为了适合预期功能,而不是适合特定零件。当选择了确切的零件号时,封装分配将在以后进行。使用通用符号允许少量库符号元素表示大量可能的元件组合。
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

使用通用符号的一个示例是 KiCad 库中提供的电阻器和电容器符号。这些符号没有分配的默认封装,因为存在许多可能的兼容封装。

完全指定的符号

完全只当的符号:定义一个匹配的封装,并且基于MPN开发商零件编号命名。
这种符号,不依赖用户稍后选择正确的封装,但可以使用封装过滤器定义的备用封装。
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)
完全指定的符号以及专用于一个组件的封装称为原子零件。仅包含此类部件的库称为原子库。令人困惑的是,一些用户将完全指定的符号称为原子符号。

在哪里使用哪种类型

官方库需要完全指定的符号,但少数仅包含通用符号的库除外。这些通用库是:

  1. Device

  2. 所有Connector库

  3. 逻辑族库如、74xx、4xxx…

符号准则

S1 - 符号库

S1.1 符号库应按功能分类

S2 - 符号命名

S2.1 一般符号命名准则

  • 符号名称中不应重复库命名

  • 如果多个制造商存在同名符号,则首先写入制造商名称

  • 完全指定的符号根据制造商零件编号命名

    • 如果多个制造商生产兼容的零件,但其用于指定封装的零件号后缀不同,则使用通用基本零件号,并带有明确的名称后缀作为封装(例如L78L05_TO92)

    • MPN 的非功能部分必须替换为通配符。(请参阅S2.2 MPN 中使用通配符的要求)

  • 通用符号使用设备类型

  • 对于常见组件,可以缩短(例如 为Conn Connector)

  • 参考标志可以代替常用组件(例如, ,DCLED)

  • 指示符号阵列的元件数量(例如,具有 8 个元件的电阻阵列 -Resistor_x8)

  • 对原始符号的任何修改,通过附加原因来指示

    • 不同的引脚排序 - ,Q_NPN_CBEQ_NPN_BCE

    • 对于通常为单单位符号的多单位变体,请添加后缀_Split

S2.2 部件号中的非功能变化应替换为通配符

制造商部件号 (MPN) 通常包括无法正常工作的变体。

被视为不起作用的参数示例:

  • 组件的额定温度

  • 包装信息(例如卷盘、托盘、胶带)

  • RoHS / 无铅信息

要捕获零件变化的每个可能组合,需要大量派生符号,并且应避免。

如果 MPN 具有此类非功能变体的选项,则 MPN 的这些部分应替换为通配符 (x)。如果 MPN 的这些非功能部分位于符号名称的末尾,则应省略通配符。

S2.3 如果零件有多个封装选项,则必须为每个封装绘制单独的符号

许多电子元件可以有多种封装。这些封装可能引脚兼容,也可能不兼容。

完全指定的符号要求每个package封装都有一个单独的符号。如果它们引脚兼容,则必须使用派生自现有符号的函数。KiCad 中的封装与其 3D 模型有 1:1的关系。这意味着,即使封装相同,如果 3D 模型具有功能差异(例如,当 3D 模型高度不同时),也需要多个封装。

例如 LTC4357
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)
该器件part采用两种不同的封装package,每种封装package都需要单独的封装footprint。因此,必须为每个变体绘制一个符号。

有关符号的命名,请参阅S2.1一般符号命名准则.
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)
在可能的情况下,应当绘制符号,这样在原理图中交换符号时,减少对电线连接的干扰。

作为进一步的例子,我们将考虑比较器MCP6566,它有三种SOT-23-5版本,每个版本都有不同的引脚排列。

在这种情况下,必须再次为每个版本绘制一个单独的符号,并根据数据表中标注的约定进行命名。
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

S3 通用符号要求

S3.1 符号中间以原点为中心

对于对称符号,符号必须在符号编辑器中以原点 (0,0 ) 为中心。

例外:

对于非对称符号或要求会将引脚移出100mil网格的符号,则应在遵守引脚网格对齐要求的同时,将符号放置在尽可能靠近原点的位置。
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

S3.2 文本字段应使用 50mils 的通用文本大小

  • 1.所有文本字段(引脚名称、引脚编号、值、基准电压源、封装、数据表)都应使用文本大小 50mil(1.27mm)。

  • 2.如果符号较小或具有特殊几何形状,则引脚名称和引脚编号可以使用小至 20mil 的文本大小。

S3.3 符号轮廓和填充要求

符号主体的线宽必须为10mil (0.254mm)

黑匣子符号(例如具有隐藏功能的ICs)应填充背景色

简单的组件(例如分立组件或具有独特形状的组件)不应填充背景色

填充背景
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

不填写
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

S3.4 具有复杂功能的符号可以包含简单的功能图

对于具有复杂功能的黑盒符号(例如特殊功能IC),可以在符号上绘制符号功能的简化图。这可用于在原理图中提供功能清晰度。

功能图必须保持简单

不要为多功能组件(例如微控制器)添加功能图
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

S3.5 引脚连接点必须放置在符号之外

S3.6 引脚名称位置偏移

引脚名称位置偏移不得超过50mil (1.27mm)

引脚名称位置偏移不应小于20mil (0.508mm)

首选值为20mil

允许更大的偏移以适应特定的符号几何
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

S3.7 专用焊盘的引脚编号

对于具有裸焊盘的IC元件,裸露焊盘的编号应比封装引脚数大1。

对于具有单个裸焊盘的SOIC-8封装,裸露焊盘将被分配编号9


屏蔽元件使用“SH”作为连接屏蔽的引脚编号。 要使引脚符合屏蔽引脚的条件,必须将其连接到金属外壳。 对于连接器,它必须连接到电缆的屏蔽层。

包括不使用电气机械安装垫的器件parts,获得引脚编号“MP”。
未电镀通孔不会分配任何焊盘编号。(他们在符号中没有引脚)。

纯机械安装垫的一个例子是 Molex picoblade SMD 连接器侧面的两个金属引线焊盘。

S3.8 多单位符号

对于multiple units符号,,其中单元单独绘制且共享公共电源引脚,应绘制包含这些电源引脚的独立单元。
Kicad学习笔记1:KLC:Kicad库公约(kicad liberary convertion)

对于single-unit符号,不应采用此方法。在这种情况下,电源引脚必须绘制在与逻辑引脚相同的符号上。

S4 引脚要求

封装指南

3D模型指南