三、原理图设计基础:放置元件、连接导线、电源与地符号、网络标签、电气规则检查(ERC)入门
原理图是PCB设计的逻辑起点,它承载的不仅是元器件之间的电气连接关系,更是后续网表生成、PCB布局布线以及最终产品调试的“宪法”。在KiCad中,原理图编辑器(Eeschema)提供了一套完整且严谨的绘图与验证体系。本章将围绕原理图设计的五个核心动作——放置元件、连接导线、电源与地符号、网络标签以及电气规则检查(ERC)——展开系统讲解。我们将从工程实践的角度,剖析每个操作背后的设计逻辑,并穿插真实项目中的常见陷阱与应对策略,帮助您建立一套高效、规范、可追溯的原理图设计流程。
上图展示了本章将要深入探讨的核心工程链路:从电源模块(LDO)为MCU供电,到晶振提供时钟,再到USB连接器与MCU之间的差分信号传输,以及去耦电容的放置位置。图中用不同颜色区分了电源路径(红色)、信号路径(蓝色)、控制路径(绿色)和地参考(灰色)。请注意,网络标签(如AVDD_2V8、I2C1_SCL)在这里起到了跨页连接和语义化命名的作用,而ERC检查点则贯穿于整个设计流程中。接下来,我们将逐一拆解这些操作。
3.1 放置元件:从符号库到画布
核心原理:符号是逻辑抽象,封装是物理映射
在KiCad中,放置元件的第一步是理解“符号(Symbol)”与“封装(Footprint)”的区别。符号是原理图中的逻辑表示,它只关心引脚的功能定义(如输入、输出、电源、地),不关心物理尺寸;封装则是PCB上实际焊接的焊盘布局。在放置元件时,我们必须确保每个符号都关联了正确的封装,否则后续生成网表并导入PCB编辑器时会报错。
KiCad的符号库采用分层结构:库(Library)→ 符号(Symbol)→ 引脚(Pin)。默认库中包含了大量标准逻辑器件、分立元件和常用连接器。对于消费电子设计,我们通常还需要加载厂商提供的第三方库(如ST、TI、Microchip的官方KiCad库),或者使用符号编辑器自行创建。
操作流程:标准化的放置步骤
- 打开放置工具:在Eeschema中,点击右侧工具栏的“放置符号”图标(或按快捷键
P),弹出“选择符号”对话框。 - 搜索与筛选:在搜索框中输入元件名称(如“STM32F103C8T6”),系统会列出匹配的符号。注意区分不同库中的同名符号,优先选择官方或信誉良好的库。
- 放置与属性编辑:将符号拖放到画布合适位置后,按
E键打开属性对话框。在这里必须完成三件事:- 填写唯一的位号(Reference),如U1、R2、C5。KiCad支持自动递增,但建议手动规划位号前缀(U代表IC,R代表电阻,C代表电容,J代表连接器)。
- 确认值(Value),如“10kΩ”、“100nF”、“STM32F103C8T6”。值应与BOM(物料清单)严格对应。
- 关联封装(Footprint),点击封装字段右侧的书本图标,从封装库中选择匹配的封装。例如,0603电阻对应封装
Resistor_SMD:R_0603。
- 批量放置:对于去耦电容等重复性元件,可以在放置第一个后,使用
Ctrl+C/Ctrl+V复制,并手动修改位号。KiCad 7及以上版本支持“重复放置”功能,可大幅提升效率。
案例拆解:搭建一个最小系统板的元件清单
假设我们要设计一个基于STM32F103C8T6的最小系统板。在放置元件阶段,我们需要准备以下元件:
| 位号 | 符号名称 | 值/型号 | 封装 | 数量 |
|---|---|---|---|---|
| U1 | STM32F103C8T6 | ARM Cortex-M3 MCU | LQFP-48 | 1 |
| Y1 | Device:Crystal | 8MHz | HC-49S | 1 |
| C1, C2 | Device:C | 20pF | C_0603 | 2 |
| C3, C4 | Device:C | 100nF | C_0603 | 2 |
| C5 | Device:C | 10uF | C_0805 | 1 |
| R1 | Device:R | 10kΩ | R_0603 | 1 |
| J1 | Connector:USB_C_Receptacle | USB-C | USB_C_Receptacle_HRO_TYPE-C-31-M-12 | 1 |
在放置这些元件时,我们需要注意:晶振Y1旁边的负载电容C1、C2应尽量靠近晶振引脚放置;去耦电容C3、C4应分别靠近MCU的VDD引脚;R1作为BOOT0下拉电阻,应放置在BOOT0引脚附近。这些布局习惯虽然是在原理图阶段体现的,但会直接影响后续PCB布局的合理性。
3.2 连接导线与总线:构建电气拓扑
核心原理:导线是物理连接,网络标签是逻辑连接
在原理图中,导线(Wire)是最直观的电气连接方式,它表示两个引脚之间物理上连通。然而,随着设计复杂度增加,如果所有连接都通过导线实现,图纸将变得杂乱无章。此时,网络标签(Net Label)和全局标签(Global Label)成为更优雅的解决方案。网络标签的本质是给一段导线或一个引脚赋予一个“网络名”,所有具有相同网络名的引脚在电气上是等价的,即使它们在图纸上相距甚远。
KiCad中的导线工具有两种:导线(Wire)和总线(Bus)。导线用于连接单个信号,总线用于聚合一组相关的信号(如数据总线D[0..7])。总线本身不直接连接引脚,必须通过总线成员(Bus Entry)将单个信号引入总线。
操作流程:从点对点连接到层次化设计
- 绘制导线:按
W键或点击导线图标,从引脚端点开始绘制。当导线端点出现绿色方块时,表示已建立连接。注意,导线必须恰好连接到引脚端点,不能悬空。 - 放置网络标签:按
L键或点击网络标签图标,在导线上放置标签。标签名称应具有语义化,如I2C1_SCL、UART_TX、PWM_LED。避免使用无意义的名称如NET1、NET2。 - 使用电源符号:电源符号(如VCC、GND)是特殊的网络标签。KiCad提供了多种电源符号,在放置时选择正确的电源轨名称(如+3V3、+5V、GND)。电源符号分为电源端口(Power Port)和地符号(Ground),它们具有全局属性,即所有同名的电源符号在电气上都是连通的。
- 绘制总线:对于数据总线或地址总线,先绘制一条粗总线,然后使用总线入口将各个信号线引入总线。总线名称使用
D[0..7]格式。
KEY_1、KEY_2、KEY_3、KEY_4,然后在按键电路处放置相同的标签。这样,即使两个电路在图纸上相隔很远,电气连接依然成立。同时,这种命名方式让原理图的可读性大幅提升。
3.3 电源与地符号:全局网络的基石
核心原理:电源域划分与去耦策略
电源与地符号是原理图中最特殊的网络标签。它们不仅定义了供电连接,还隐含了电源域(Power Domain)的概念。在消费电子设计中,我们通常会有多个电源域:如数字3.3V(DVDD_3V3)、模拟3.3V(AVDD_3V3)、电池电压(VBAT)等。不同电源域之间必须通过磁珠、0Ω电阻或LDO进行隔离,以避免数字噪声耦合到模拟电路。
KiCad的电源符号库中,GND符号有四种:GND(模拟地)、GNDA(模拟地)、GNDD(数字地)、GNDP(功率地)。虽然它们在电气上都是0V参考点,但在PCB布局时,我们通常会将它们分割成不同的铜皮区域,最后通过单点连接(如磁珠或0Ω电阻)汇合。
操作流程:规范放置电源符号
- 放置电源符号:按
P键打开放置符号对话框,在库中选择power库,然后选择+3V3、+5V、GND等符号。注意,KiCad的电源符号名称必须与网络标签完全一致,否则无法正确连接。 - 区分电源输入与输出:在电源电路中,输入电源(如USB的5V)和输出电源(如LDO的3.3V)应使用不同的符号名称,如
VIN_5V和VOUT_3V3。这有助于在ERC中检查电源连接是否正确。 - 添加去耦电容:每个IC的电源引脚旁边都应放置一个100nF的陶瓷电容,并直接连接到该IC的VDD和GND引脚。对于大电流或噪声敏感器件,还需额外放置一个10uF的钽电容或陶瓷电容。
| 电源符号名称 | 典型用途 | PCB布局建议 |
|---|---|---|
| GND | 数字地、逻辑地 | 大面积铺铜,作为参考平面 |
| GNDA | 模拟地(ADC、运放) | 独立分割区域,单点连接至GND |
| +3V3 | 数字3.3V电源 | 电源平面或宽走线 |
| AVDD_3V3 | 模拟3.3V电源 | 通过磁珠或0Ω电阻与+3V3隔离 |
| VBAT | RTC后备电池 | 独立走线,避免与其他电源交叉 |
3.4 网络标签与全局标签:跨页连接的利器
核心原理:局部标签与全局标签的作用域
网络标签(Net Label)的作用域是当前图纸页。如果设计包含多张原理图页(如电源页、MCU页、接口页),不同页之间的连接必须使用全局标签(Global Label)或层次引脚(Hierarchical Pin)。全局标签的名称在整个工程中唯一,所有同名的全局标签在电气上等价。
在KiCad中,全局标签的符号是一个带有箭头的小矩形,通常放置在图纸边缘。使用全局标签时,建议在标签名称前加上模块前缀,如PWR_+3V3、MCU_I2C_SCL,以避免命名冲突。
操作流程:高效管理多页原理图
- 创建多页原理图:在工程管理器中右键点击“原理图”,选择“添加原理图页”。建议每页功能独立,页数控制在5-10页以内。
- 放置全局标签:按
H键或点击全局标签图标,在需要跨页连接的导线上放置。在属性对话框中输入全局唯一的名称。 - 使用“导航”功能:KiCad允许通过点击全局标签快速跳转到同名的其他标签位置(快捷键
Ctrl+点击),这极大方便了多页设计时的交叉检查。
MCU_UART_TX,在无线模块页的RX引脚处放置同名全局标签MCU_UART_TX。这样,两页之间的连接就建立了。在ERC检查时,KiCad会验证这两个标签是否确实连接到了正确的引脚方向(TX应连接RX)。
I2C_SCL,在另一页使用全局标签I2C_SCL,ERC会报告“网络未连接”或“重复网络名”错误。此外,全局标签的命名必须全局唯一,否则会导致意外的短路连接。
3.5 电气规则检查(ERC)入门:从绘图到验证
核心原理:ERC是原理图正确性的第一道防线
电气规则检查(ERC)是KiCad内置的静态分析工具,它根据预设的规则检查原理图中的电气连接是否合理。ERC能发现的问题包括:引脚未连接、输出引脚短路、电源网络冲突、悬空输入等。但请注意,ERC不能替代人工审查,它只能发现“违反规则”的问题,无法判断设计意图是否正确。
ERC的检查规则分为两类:电气规则(如引脚类型冲突)和绘图规则(如元件重叠、导线未连接)。在运行ERC前,我们需要在“工程设置”中配置规则矩阵,例如,允许“输出引脚连接输出引脚”或“未连接引脚”等。
操作流程:运行ERC与错误排查
- 运行ERC:点击菜单栏“检查”→“电气规则检查”,或按快捷键
Ctrl+E。系统会弹出ERC窗口,显示错误和警告列表。 - 理解错误级别:错误(Error)表示存在严重电气问题,必须修复;警告(Warning)表示潜在风险,建议修复但可暂时忽略。
- 定位错误:双击错误列表中的条目,画布会自动跳转到问题位置,并用绿色箭头标记。
- 常见错误处理:
- 引脚未连接:检查是否遗漏了导线或网络标签。
- 电源引脚冲突:例如,一个IC的VDD引脚同时连接了+3V3和+5V,这通常是因为电源符号放置错误。
- 输出引脚短路:两个IC的输出引脚直接连接,需要检查是否应通过电阻或缓冲器隔离。
| ERC错误类型 | 典型原因 | 修复建议 |
|---|---|---|
| 悬空输入引脚 | IC的输入引脚未连接任何网络 | 连接至确定的电平(上拉/下拉电阻) |
| 电源类型冲突 | 同一网络连接了不同电压的电源符号 | 检查电源符号名称,确保唯一性 |
| 输出引脚冲突 | 两个推挽输出直接相连 | 增加隔离电阻或使用开漏输出 |
| 未使用的门电路 | 多门封装(如74HC00)中部分门未使用 | 将未使用门的所有输入接固定电平 |
MOTOR_PWM。实际上,设计意图是U2输出PWM信号,U3输出方向信号,两者应分别连接到电机驱动芯片的不同引脚。由于网络标签命名过于笼统,导致两个输出被错误地连接在一起。修复方法:将网络标签分别改为MOTOR_PWM和MOTOR_DIR,并重新布线。
3.6 总结复盘:从规范到习惯
本章我们系统学习了原理图设计的五个核心操作。放置元件是基础,连接导线是骨架,电源与地符号是血脉,网络标签是神经,ERC是免疫系统。在实际项目中,这五个环节并非线性执行,而是需要反复迭代。例如,在放置元件时就要考虑后续布线的便利性,在放置网络标签时就要考虑ERC的检查规则。
以下是一些经过验证的最佳实践总结:
- 命名规范先行:在工程开始前,制定网络命名规范(如
模块_信号_属性),并严格执行。 - 分区绘图:将原理图按功能模块分区,用方框或注释标明区域功能,便于阅读和维护。
- 定期ERC:不要等到所有图纸绘制完成后再运行ERC,建议每完成一个功能模块就运行一次,及时修复错误。
- 版本管理:使用Git等版本控制工具管理原理图文件,每次重大修改后提交一次,便于回溯。