ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

原理图设计:PCB设计流程中决定成败的第一关

原理图设计:PCB设计流程中决定成败的第一关 1. 原理图在整个PCB设计流程中的位置说起PCB学习很多人第一反应是布线走线、铺铜、过孔这些偏“画”的操作原理图反而容易被当成一个走流程的环节把元件拖出来连上线检查一下然后就开始导入PCB。我当初也是这样结果吃了几次亏之后才明白一个道理——原理图画得好不好直接决定后面Layout是顺风顺水还是连环踩坑。原理图的核心作用不只是“把电路画出来”它承载了三层信息第一层是电路逻辑也就是哪个引脚和哪个引脚相连信号从哪进来、往哪出去第二层是指令信息PCB Layout阶段的工作本质上就是按照原理图的连接关系在真实的物理板子上把这些网络一点一点铺出来第三层是物料与封装原理图上的每一个符号背后都必须对应一个真实可买的元件封装否则到了做板贴片的时候会发现芯片买回来了焊盘对不上。这一点很适合用盖房子来类比原理图相当于建筑图纸里的“功能布置图”只告诉施工队每个房间是什么用途、门往哪开、墙怎么隔PCB Layout则相当于“结构施工图”要把承重墙、梁柱、水电管线的精确位置全部定下来。如果功能布置图本身就有问题结构图画得再漂亮住进去也要敲墙重来。PCB设计里那句老话“原理图错一毫PCB错一里”说的就是这个。初学者最常见的问题就是急于看到“板子”的样子原理图随便一画就导入PCB结果封装对不上、引脚标号混乱、网络名写错后面改起来全是返工。我在学习阶段踩过最深刻的一个坑是某个芯片的电源引脚在原理图里用了VCC这个网络名另一个芯片却用的是3.3V这两个网络在原理图上看起来都是电源但在软件眼里它们是两个完全隔离的网络。当时板子打样回来一上电某个模块不工作查了半天才发现是电源网络被分成了两截。这种错误如果在一开始画原理图的时候就统一命名规范完全可以避免。所以这篇学习记录想跟你分享的不只是“怎么在软件里画原理图”更是一套从思路到落地的方法。我会以嘉立创EDA为主讲工具因为新手用它上手最快但里面讲到的原理一样适用于Altium Designer、Cadence、OrCAD这些专业工具毕竟绘图软件只是载体真正值钱的是你对电路的理解和规划。2. 画原理图前的准备元件、封装和思想准备2.1 元件库和封装原理图符号和实物之间的桥梁很多新手拿到一个原理图教程照着一步一步点击放置元件却搞不清楚“元件”“符号”“封装”到底有什么区别。这不怪你因为这层关系在国外教材里讲得很清楚但国内很多教程默认你已经会了直接就跳过去。我用最简单的话给你捋一遍原理图符号是画在原理图页面上的那个方块形图形包含引脚编号和引脚名称比如STM32F103C8T6在原理图上是一个带有VDD、VSS、PA0~PA15等引脚的方框。它的作用是帮助你表达“这个芯片在电路里是怎么连接的”纯逻辑层面的东西。PCB封装是真实元器件在PCB板上的物理脚印包括焊盘的位置、大小、间距、丝印轮廓。比如常见的LQFP48封装就是那块芯片实物对应的48个焊盘排列。元件库把“原理图符号PCB封装元件参数阻值、容值、耐压等”打包在一起才是一个完整的元件。在软件里放一个电阻到原理图上背后关联的必须有一个0805或者0603之类的封装否则后面没法做板。这里有个经常踩的坑在原理图里用的元件如果没有给符号绑定封装软件默认会填一个空封装导入PCB的时候要么报错要么生成一个没有焊盘的孤立符号。查起来很头疼。所以养成一个习惯每放置一个元件就顺手确认一下它的封装属性已经分配到位。在嘉立创EDA里你可以通过双击元件打开属性面板看到“封装”那一栏是否有效填写。2.2 不要急着开画先把电路原理吃透画原理图最忌讳的事情就是“边画边想”。如果一个电路你心里没底画出来的原理图大概率也是歪歪扭扭的。我的习惯是先在纸上画一遍草稿把关键模块的功能和走向标出来再打开软件做正式图。举个例子你想画一个STM32最小系统板。在动手之前至少要把下面这些问题想明白电源从哪里进5V还是3.3V需不需要稳压芯片晶振用多大的匹配电容选多少pF复位电路怎么接是按键复位还是上电自动复位BOOT0、BOOT1引脚是悬空还是接上下拉SWD调试接口需要哪些引脚朝哪个方向引出方便接线这些问题在搜索热词里能看出很多人关心比如“stm32最小系统板原理图”“stm32f103c8t6最小系统板原理图”出现的频率非常高。但网上能搜到的大多是别人画好的成品图你可以参考但最好还是自己动手推一遍。我的做法是这样的先把参考图和芯片数据手册Datasheet里的推荐电路对照每个引脚标号对应着看一遍搞清楚每一处选型为什么这么定然后再自己画。这一步虽然慢但是效果极好画完一张图你对整个电路结构的理解能上一个大台阶。2.3 先规划好图纸结构模块分区和网络命名图纸布局是很多新手容易忽略的细节。一张A4大小的原理图页面如果你把电源部分放在左上角主控放在正中间接口部分乱摆后面连线的时候会发现自己像走迷宫一样。建议在画图之前先把页面划分成几个功能区域比如电源区、主控区、接口区、外围电路区每个区域放一类功能模块。这样不仅画起来清爽别人看你的图纸也容易懂。网络命名也是同样的道理。不要让软件自动生成NetLabel1、NetLabel2这种名字而是根据信号用途来命名VCC_3V3、GND、I2C_SCL、UART_TX、SWDIO等等。好处有两个第一在PCB布线的时候你能一眼看出这条线是干嘛用的第二对你的网络命名会影响后期设计规则检查的效果比如电源网络需要加宽走线如果你把所有电源网络统一命名为VCC设置规则的时候一条命令就能全选。3. 实操用嘉立创EDA从零绘制一张可用的原理图3.1 新建工程和界面布局的快速认识打开嘉立创EDA第一步是创建“工程”而不是直接“新建原理图”。工程的概念类似于一个文件夹把原理图、PCB、BOM表、物料清单这些文件全部管理在同一个项目里。这样做的好处是从原理图导入PCB的时候软件能自动识别对应关系不会出现文件丢失或者关联断掉的问题。嘉立创EDA的界面不算复杂左边是元件库面板中间是绘图区顶部是工具栏右边是属性面板。刚上手的时候我先建议你把界面上的按钮都点一遍搞清楚大概功能但不用深究每一个细节。真正画起来的时候最常用的命令就几个放置元件、连线、放置网络标签、放置电源符号、放置GND符号、编译检查。3.2 放置元件从搜索到确定的完整路径放置元件的流程是在左侧元件库搜索框输入元件型号比如STM32F103C8T6然后从搜索结果里选择合适的元件。注意这里有个细节搜索结果里经常会出现一堆看起来一模一样的元件但区别在于封装不同、厂家不同、甚至引脚定义有细微差别。所以选择的时候要看两样东西一是原理图符号是否符合你的设计需求二是封装是否与实物一致。我的习惯是优先选择“嘉立创”自营库里的元件因为它们通常都已经验证过封装正确而且能直接关联到嘉立创的物料编号后期生成BOM表的时候非常方便。如果要用的元件在库里找不到那就需要自己画封装这一步比较考验耐心但也是PCB学习的核心技能之一。我记得自己第一次画一个管脚密集的LQFP48封装反复量了手册上的引脚间距和焊盘尺寸光是对数据就花了一个多小时结果画完导出3D模型一看尺寸完全匹配那种成就感是很强的。搜索热词里“cadence原理图封装设计管脚数很多的器件”这个问题问的人不少其实无论哪个软件流程都是查手册→建封装→核对焊盘→关联符号→验证。3.3 连线、网络标签和电源符号的正确用法元件放好后开始连线。连线有两种方式一种是直接用导线Wire把引脚连起来另一种是用网络标签Net Label来标识连接关系。两者各有适用场景导线连线适合短距离、引脚直接相邻的情况。比如一个芯片的VDD引脚旁边就是去耦电容的一端直接用导线连过去是最直观的。网络标签适合远距离、跨区域、信号需要“飞”到图纸另一端的情况。比如I2C_SDA这根线要从主控芯片拉到传感器接口如果全部用导线连过去图纸会被线条塞得满满当当可读性极差。这时候你可以在主控的PA11引脚放一个网络标签I2C_SDA在传感器接口那端也放一个I2C_SDA软件就知道这两个位置是相连的。这里要强调一下网络标签的命名必须完全一致包括大小写和空格。以前我用AD的时候习惯手打网络名结果把“I2C_SDA”和“I2c_SDA”当成不同的网络折腾了半天。嘉立创EDA的网络标签是支持直接复制粘贴的最好连标签一起复制避免手动输入不一致的情况。电源符号和GND符号也是特殊的网络标签。电源可以用VCC、VDD、3.3V这样的符号GND就是GND。很多芯片的引脚标注可能叫VDD、AVDD、VCC、VBAT这些虽然是“电源”但在原理图里最好根据实际电压和用途分别命名不要全都连到同一个网络。举个典型的例子STM32的模拟电源VDDA和数字电源VDD在数据手册里往往建议通过磁珠或电感隔离如果你在原理图里直接把两个网络名都写成VDD后面的隔离设计就没法做。3.4 编译检查和ERC把错误扼杀在导入PCB之前原理图画完连线都拉好了别急着导入PCB。第一步是右键点击工程名称选择“编译”做一次设计规则检查ERC。这个检查会帮你找出很多低级错误比如引脚悬空未连接、输出引脚连接到输出引脚、同一个网络有多个驱动源、重复的网络标号等等。第一次用这个功能的时候你会发现报错信息铺天盖地动不动就是几十上百条。别慌很多报错是“警告Warning”级别比如某个引脚确实需要悬空那是正常的设计选择可以忽略。你需要重点关注的是“错误Error”级别的问题。我的习惯是把ERC报错分成三类来处理第一类是“不影响的忽略项”比如某些NC引脚未连接第二类是“必须马上改的”比如网络短路、电源冲突第三类是“需要思考一下的”比如某些引脚类型配置是否合理。改完一遍再编译直到没有Error级别的报错为止。这样才能保证导入PCB的时候不出幺蛾子。3.5 从原理图导入PCB网表文件的作用当你觉得原理图没问题了再执行“设计→原理图转PCB”的操作。此时软件会生成一个网表文件里面记录了所有元件的封装信息、网络连接关系、元件坐标和编号。这个网表文件是原理图和PCB之间的桥梁也是整个PCB设计流程中最核心的数据载体。导入之后PCB编辑器里会出现一堆用细线连着的元件封装这些细线就是“飞线Ratlines”表示哪些焊盘之间需要连接。元件可以移动飞线会跟着更新这给布局带来了很大的灵活性。我记得第一次看到PCB编辑器里密密麻麻的飞线时整个人是懵的完全不知道从哪里下手。后来才明白这时要做的事情是布局而不是布线——先把元件按功能模块摆放好让飞线尽量短、尽量不交叉再开始走线。4. 进阶把控电源、接地和特殊电路的原理图设计4.1 去耦电容原理图上就要规划好的“隐形工程”去耦电容是数字电路原理图里最常见、最容易画错的一种元件。它的作用是给芯片提供一个低阻抗的瞬态电流来源抵消芯片在翻转瞬间产生的电流毛刺。很多人习惯在每个电源引脚旁边放一个0.1uF电容这个做法本身对但很少有人解释清楚为什么是0.1uF以及为什么电容要尽量靠近芯片引脚。简单说0.1uF的谐振频率大约在几十MHz级别正好覆盖普通数字芯片的开关噪声频段。更大的电容如10uF或100uF谐振频率低负责滤除低频纹波而更小的电容如1nF到100pF谐振频率高用于滤除超高频干扰。所以在画原理图的时候一个常见的组合是每个芯片电源引脚旁边放一个0.1uF然后在电路板的电源入口处放一个10uF或100uF的储能电容两个量级的电容配合使用才能达到宽频段滤波的效果。这里有个容易被忽略的点去耦电容在原理图上的位置和PCB上的实际位置是两回事。原理图只表示“这个电容连接在VDD和GND之间”但PCB布局时这个电容必须尽可能靠近芯片的电源引脚否则走线太长会引入寄生电感导致去耦效果大打折扣。这一点我建议你在画原理图的时候就有意识地标注注释比如在电容旁边写一行文字“靠近U1的VDD引脚放置”这样后面自己在布板的时候就不会忘记。4.2 星型接地和地网络分割模拟地与数字地的恩怨搜索热词里有一条“eda原理图绘制星型接地”问的人估计是吃了接地的亏。接地是整个电路设计里最麻烦、最容易出问题也最讲玄学的一个话题。所谓星型接地指的是所有地线都汇聚到一个公共点像星星一样放射出去避免不同功能模块之间的地电流相互干扰。在原理图阶段怎么体现星型接地答案是把不同功能模块的地网络用不同的名字区分开比如模拟地用AGND、数字地用DGND、功率地用PGND然后在某个合适的位置通过一个单点把它们连起来。如果你在原理图里把所有地都直接命名为GND那就等于一开始就放弃了星型接地的可能性后面PCB布局再怎么做地分割都是空谈。我自己曾经画过一个带ADC采集的板子模拟部分和数字部分共用地线结果ADC读数跳动很大。后来分析发现是数字电路的开关噪声通过共用地线耦合到了模拟参考地。处理办法是把模拟地单独命名AGND在PCB上做分区然后在采样点附近单点连接问题立刻缓解。这个经验告诉我原理图上的网络命名不是小事它直接决定了后面你能做出什么样的PCB。4.3 特殊接口电路PLL、传感器、电流环电路的设计要点一些特定电路的原理图设计有自己独特的要求值得单独说一说。比如搜索热词里的“pll锁相环原理图”“dht11原理图嘉立创画图”“tb6612电机驱动原理图”这些都属于比较典型的应用电路。以PLL锁相环为例这类电路对电源洁净度极其敏感因为锁相环内部有一个压控振荡器任何电源噪声都可能被转化成输出信号的相位噪声。所以画PLL电路原理图的时候电源引脚通常要加一级LC滤波串联一个磁珠或者小阻值电阻并联多个不同容值的电容来覆盖宽频段。同时PLL的数字电源和模拟电源要明确分开用地平面分割的方式处理噪声问题。这些设计决策都要在原理图阶段通过网络命名和元件排布体现出来。DHT11温湿度传感器就比较简单典型接法是VCC接3.3V或5VGND接地DATA引脚接一个上拉电阻到VCC然后连到单片机的GPIO。但简单归简单上拉电阻的选值也有讲究常见用4.7k或10k太小会增加功耗和拉低电平的能力负担太大会导致信号上升沿过缓。DHT11对时序要求比较严格上拉电阻加不合适可能导致读取数据偶尔失败。电机驱动电路则是另一个极端电流大、开关频率高、噪声强。TB6612这类电机驱动芯片的原理图设计重点在于电源引脚要加大电容储能至少100uF以上电机的电源和逻辑电源要分开走线不能共用一段导线续流二极管要靠近桥臂的功率管。这些虽然最终要在PCB上落实但原理图阶段就必须把功率地和信号地分开命名否则后面布板的时候你没有抓手。4.4 电源模块和4-20mA模拟量电路的原理图考量搜索热词里还有“4-20ma的设计原理图”和“反激式开关电源pcb”说明不少人在往工业方向走。4-20mA电流环是工业现场最常见的模拟量传输方式它的原理图设计思路和普通电压信号完全不同——它传输的不是“电压高不高”而是“电流流不流”。所以在原理图设计上发送端通常需要一个压控恒流源电路接收端则要接一个精密采样电阻把电流信号重新转回电压信号。设计这种电路的时候关键是参考电压的稳定性和运放的偏置电流。如果你用的运放偏置电流太大比如某些通用运放会在毫安级别的小信号上引入明显的误差。所以画原理图时要选低偏置电流的精密运放同时采样电阻要用低温漂的精密电阻这些选型在原理图阶段就要固定下来而不是等到BOM阶段才临时拍脑袋。5. 常见问题与排查技巧实录学习过程中积累了不少报错和“灵异事件”这里整理一个速查表都是我自己踩过或者帮别人排查过的典型场景希望对你有帮助。现象可能原因排查方法与解决思路原理图编译提示引脚悬空确实需要悬空的引脚或漏接信号对照数据手册确认是否需要连接NC引脚可忽略但要在注释里写明导入PCB后元件跑到很远的位置原理图复用了其他项目的元件坐标属性残留全选元件执行“重排”或“对齐”恢复坐标封装缺失导入PCB报错元件未绑定封装或封装库未加载回到原理图双击元件检查封装属性在PCB工程中确认封装库已添加PCB上器件不能选中热词提到“ad中pcb上器件不能选中”锁定了图层或者打开了筛选器检查底部筛选面板是否开启了“全选”模式检查元件是否被锁定网络标签显示相同但实际未连通标签存在不可见空格或中英文字符删除标签重新输入建议直接复制已有标签原理图导出PDF乱码中文字体兼容性问题把原理图中的中文注释样式改成系统默认字体或者换一种字体导出使用Cadence时导出原理图库失败Capture原理图库结构和AD不兼容选择文件→导出→生成库文件必要时手动整理符号和封装对应关系电阻电容换封装后PCB丝印位置不对封装原点设置不一致在建封装时就将原点设置在Pin 1或元件中心保持统一标准摄像头/模拟器件信号干扰严重模拟地与数字地未分开回到原理图检查AGND/DGND命名是否统一是否做了单点连接另一个值得专门提的是“元件搜索到多个结果”的问题。在嘉立创EDA里搜一个STM32F103C8T6可能出来五六条记录有的带LQFP48封装有的带QFN48封装有的标注“已审核”有的标注“网友贡献”。我的选择原则是优先选系统认证库其次看原理图符号是否和手册引脚定义一致再次看封装名称是否与实物对应。千万别图省事随便点一个封装搞错是最痛的返工原因。还有一个我印象深刻的案例帮朋友排查一块板子他把两颗长得很像的稳压芯片弄混了原理图里用的是AMS1117-3.3PCB上焊的却是AMS1117-ADJ结果输出电压完全不对。这个问题的根源不在原理图本身而是在BOM表和采购环节没对上。所以我在画完一张原理图之后都会专门生成一份BOM表逐个核对元件型号、参数、封装、数量特别是那些丝印看起来很像的元件核对完再让人去买料。6. 画原理图的一点个人体会这东西说白了就是一套“先把脑子里的电路关系翻译成纸面符号再把纸面符号翻译成板上铜皮”的过程。回头看我走过的弯路最想分享的其实就是一句话别急先把每一步都搞清楚为什么再往下走。原理图画得慢一点不是坏事反而能帮你在后面省掉大量的返工时间。我现在画一张中等复杂度的原理图通常还是保持一个习惯先手绘草图理清思路再建元件库和封装库然后正式绘图最后编译检查、生成BOM整个过程有条不紊。每次从PCB打样回来上电之前我都会重新打开原理图对照板子走一遍网络想想当初我为什么要这样设计。这对提升电路理解能力特别有帮助。最后再分享一个小技巧原理图里的网络标签和引脚注释能写中文的地方尽量简短别罗嗦但该写的关键注释一定要写比如“此电容靠近U1的VDD引脚”“此电阻用于限流最大电流50mA”。这些注释在几个月之后你回头改板子的时候就是救命的说明书。很多工程师带徒弟的时候常说的“画图要让人看得懂”其实就是这个意思。
返回列表