在当前这个时代,对于 PCB 设计,有太多的 EDA 设计软件了,如:Cadence、PADS、Altium 等,但绝大多数是要授权的,而且如今人们版权意识正在提高;这对电子爱好者来说,要想 DIY 一个好东西,免不了依赖于这些设计软件,但如果有开源的、顺手的软件,那么我们更倾于应用这些软件,毕竟从版权意识上看以及投向开源社区来讲都是好的。
# 简介
KiCad 是一个开源软件工具,用于设计电子原理图和 PCB 图形。
其官网地址:https://www.kicad.org/
各操作文档说明:https://docs.kicad.org/
由于 KiCad 是一个开源软件,所以我们可以获取到它的源码:https://github.com/KiCad/kicad-source-mirror
当然,基于开源,它实现了跨平台:
然后在正式开篇之前,以下这些说明都是基于 V5.1.9 版本(最新版为 V5.1.10,修正了部分 Bug);该死 V6.0 版本居然还没发布,对于想要了解 V6.0 版本的一些升级功能的,可以移到 KiCad 6 is coming!
<br/>
# 入门
# 工作流程
Kicad 有着其独特的工作流程:
设计一个 PCB 板,主要由两个任务来完成:绘制原理图和布置电路板。
# 文件说明
KiCad 在创建并使用时具有以下特定扩展名文件和文件夹,其主要用于原理图和电路板编辑。
项目管理文件
文件扩展名 描述 *.pro Small file containing a few parameters for the current project, including the component library list. 原理图编辑器文件
文件扩展名 描述 *.sch Schematic files, which do not contain the components themselves. *.lib Schematic component library files, containing the component descriptions: graphic shape, pins, fields. *.dcm Schematic component library documentation, containing some component descriptions: comments, keywords, reference to data sheets. *_cache.lib Schematic component library cache file, containing a copy of the components used in the schematic project. sym-lib-table Symbol library list (symbol library table): list of symbol libraries available in the schematic editor. 制板编辑文件和文件夹
文件扩展名 描述 *.kicad_pcb Board file containing all info but the page layout. *.pretty Footprint library folders. The folder itself is the library. *.kicad_mod Footprint files, containing one footprint description each. *.brd Board file in the legacy format. Can be read, but not written, by the current board editor. *.mod Footprint library in the legacy format. Can be read by the footprint or the board editor, but not written. fp-lib-table Footprint library list (footprint library table): list of footprint libraries (various formats) which are loaded by the board or the footprint editor or CvPcb. 通用文件
文件扩展名 描述 *.kicad_wks Page layout description files, for people who want a worksheet with a custom look. *.net Netlist file created by the schematic, and read by the board editor. This file is associated to the .cmp file, for users who prefer a separate file for the component/footprint association. 特殊文件
文件扩展名 描述 *.cmp Association between components used in the schematic and their footprints. It can be created by Pcbnew and imported by Eeschema. Its purpose is to import changes from Pcbnew to Eeschema, for users who change footprints inside Pcbnew (for instance using Exchange Footprints command) and want to import these changes in schematic. 其他文件
主要是生产生成文件
文件扩展名 描述 *.gbr Gerber files, for fabrication. *.drl Drill files (Excellon format), for fabrication. *.pos Position files (ASCII format), for automatic insertion machines. *.rpt Report files (ASCII format), for documentation. *.ps Plot files (Postscript), for documentation. *.pdf Plot files (PDF format), for documentation. *.svg Plot files (SVG format), for documentation. *.dxf Plot files (DXF format), for documentation. *.plt Plot files (HPGL format), for documentation.
<br/>
# 常用快捷键
首先说明一下,热键(即单个按键)直接用字母表示;组合键(是指先按住第一个键不放,然后按下第二个键,再放开这两个键。)则用 “+” 表示;多次按键(是指先按下第一个键并放开,然后按下第二个键并放开,以此类推。)则用 “ - ” 表示。
# 常规
快捷键 | 功能 |
---|---|
Ctrl + N | 新建 |
Ctrl + O | 打开 |
Ctrl + S | 保存 |
Ctrl + Shift + S | 另存为 |
Ctrl + Z | 撤销 |
Ctrl + Y | 重做 |
Ctrl + X | 剪切 |
Ctrl + C | 复制 |
Ctrl + V | 粘贴 |
Ctrl + F | 查找 |
F1 | 放大 |
F2 | 缩小 |
F3 | 缩放重绘 |
F4 | 缩放中心 |
Home | 适合屏幕 |
E | 编辑 |
# 原理图
快捷键 | 功能 |
---|---|
C | 重复的器件符号或标签 |
R | 旋转 |
M | 移动 |
A | 添加器件符号 |
P | 添加电源符号 |
X | X 轴镜像 |
Y | Y 轴镜像 |
W | 画线 |
B | 放置总线 |
L | 添加标签 |
H | 添加分层标签 |
Ctrl + L | 添加全局标签 |
J | 添加连接点 |
Q | 添加禁止连接标志 |
F8 | 更新到 PCB |
# PCB
快捷键 | 功能 |
---|---|
O | 放置封装 |
D | 保持角度拖动布线 |
X | 布线 |
Q | 编辑线宽 / 过孔尺寸 |
L | 锁定 / 解锁封装 |
V | 常规状态下,切换层;布线状态下,放置过孔并切换层 |
N / Shift + N | 切换网格大小 |
Ctrl + H | 板层高对比模式(单层显示) |
W / Shift + W | 切换线宽 |
Ctrl | 保持角度 |
/ | 布线轨迹切换 |
B | 填充所有铜层区域 |
Ctrl + Shift + M | 测量 |
Alt + 6 | 差分布线 |
G | 调整铜层区域 |
# 库封装
快捷键 | 功能 |
---|---|
M | 移动 |
X | X 轴镜像 |
Y | Y 轴镜像 |
Instert | 重复引脚 |
<br/>
# 常用插件
# 主题配色
地址链接:https://github.com/pointhi/kicad-color-schemes
例如笔者当前的主题配色为(behave-dark):
# 动态 BOM
吾称之为最硬合交互式 BOM 操作:
地址链接:https://github.com/openscopeproject/InteractiveHtmlBom
# 泪滴生成
地址链接:https://github.com/NilujePerchut/kicad_scripts
泪滴的作用,这里就不说啦,以前有讲过,然后演示:
焊盘:
通孔:
<br/>
# Pcbnew 中各层用途说明
# 所支持的板层
KiCAD 在 Pcbnew 中总计提供了 32 个铜层供导线走线(可覆铜),12 个固定技术层(按照正反面分为 6 对),2 个独立技术层,4 个辅助层。
在 KiCad 里 Pcbnew 的层描述中:
F. 代表电路板上层(Front),B. 代表电路板的下层(Back);
6 对固定技术层:Adhesive、Solder Paste、Silk Screen、Solder Mask、Courtyard、Fabrication;
2 个独立技术层:Edge Cuts、Margin;
4 个辅助层:Comments、E.C.O. 1、E.C.O. 2、Drawings;
# 层的使用说明
# 固定技术层
KiCad 中 12 个技术层分为 6 对:上层一个,下层一个。可以通过 F. 或者 B. 来区分它们的位置。
技术层名称 | 功能描述 |
---|---|
Adhesive (F.Adhes and B.Adhes) 粘合层 | 用于在波峰焊前将 SMD 元件的粘合剂粘贴到电路板上的粘合层。 |
Solder Paste (F.Paste and B.Paste) 焊膏层 | 用于在回流焊接之前生产掩模以允许焊膏放置在 SMD 元件的焊盘上;通常这些层只有表面安装元件的焊盘。 |
Silk Screen (F.SilkS and B.SilkS) 丝印层 | 主要用于放置印制信息,如元件的轮廓和标注,各种注释字符等。 |
Solder Mask (F.Mask and B.Mask) 阻焊层 | 这两个层定义了焊接的掩模,即不过绿油的区域;所有焊盘都要出现在这两个层的其中一个层(SMD 元件)或者所有两个层(通孔元件)以防止焊盘被过油,影响导电。 |
Courtyard (F.CrtYd and B.CrtYd) 空间层 | 用于显示元件在 PCB 上实际占用的空间大小。 |
Fabrication (F.Fab and B.Fab) 制造层 | 用于辅助元件贴装;主要用于记录目的,以将信息传达给例如 PCB 制造商或组装厂。 |
# 独立技术层
技术层名称 | 功能描述 |
---|---|
Edge.Cuts 边界层 | 用于绘制电路板轮廓。一般用于设置电路板的外形尺寸,数据标记,对齐标记,装配说明以及其它的机械信息。所以请仅使用此图层绘制 PCB 的轮廓。 |
Margin 电气边界层 | 用于定义在电路板上能够有效放置元件和布线的区域。 |
# 辅助层
技术层名称 | 功能描述 |
---|---|
E.C.O. 1/2 用户自定层 | 2 层,用于拓展 |
Comments 注释层 | 描述性注释 |
Drawings 图层 | 图形说明 |
这些层可以任意使用,它们可以是组装或布线等的说明文本,也可以是组装或加工的构造图,嘛,一般没啥用。
# 铜层
该层在 Kicad 中最多可拓展 32 层。
在 Pcbnew 中任何铜层的名字都是可以编辑的,我们一般使用默认的名称。当电路板是 2 层板时,只有 F.Cu 层和 B.Cu 层。当增加相应的层级数时,在 F.Cu 层和 B.Cu 层之间,将插入从上层到下层的顺序依次为 In1.Cu,In2.Cu,In3.Cu 和 In4.Cu 等的名称板层。
通常,电路板是 2 层时,采用如下结构:
层编号 层名称 用途描述 1 F.Cu Signal 2 B.Cu GND Plane 通常,电路板是 4 层时,采用如下结构:
层编号 层名称 用途描述 1 F.Cu Signal 2 In1.Cu GND Plane 3 In2.Cu VCC Plane 4 B.Cu Signal 通常,电路板是 6 层时,采用如下结构:
层编号 层名称 用途描述 1 F.Cu Signal 2 In1.Cu GND Plane 3 In2.Cu Signal 4 In3.Cu Signal 5 In4.Cu VCC Plane 6 B.Cu Signal 通常,电路板是 8 层时,采用如下结构:
层编号 层名称 用途描述 1 F.Cu Signal 2 In1.Cu GND Plane 3 In2.Cu Signal 4 In3.Cu VCC Plane 5 In4.Cu GND Plane 6 In5.Cu Signal 7 In6.Cu VCC Plane 8 B.Cu Signal 通常,电路板是 10 层时,采用如下结构:
层编号 层名称 用途描述 1 F.Cu Signal 2 In1.Cu GND Plane 3 In2.Cu Signal 4 In3.Cu Signal 5 In4.Cu VCC Plane 6 In5.Cu GND Plane 7 In6.Cu Signal 8 In7.Cu Signal 9 In8.Cu VCC Plane 10 B.Cu Signal
<br/>
# 生产制造
在使用本操作时,假定您已经在 KiCad 中完成了 PCB 的设计。
# 设置 PCB 原点坐标
选择 “菜单栏”,放置 -> 钻孔和位置偏移(或者在右边菜单栏直接选择),将原点放置到 PCB 板框左下角位置,再放置【层对齐标记】到刚刚放置的原点位置。
# Gerber 导出
从菜单栏中点击绘制按键:
绘制 Gerber,并输出到相应文件夹:
绘制完后,点击旁边的 “生成钻孔文件” 进入设置生成:
生成文件放置到同样的文件夹,同时需要注意一下钻孔单位一般要对应 Pcbnew 中所使用的单位。
# BOM 输出
从原理图输出
点击生成 BOM:
选择生成插件:
值得注意的是,在箭头处需要添加后缀 “.csv"
从 PCB 中输出