ARTICLE DETAIL

资讯详情

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

有源滤波电路设计:从拓扑选型到PCB布局,手把手教你避坑

有源滤波电路设计:从拓扑选型到PCB布局,手把手教你避坑 有源滤波电路设计这个题目可能在很多电子工程师的“必修清单”里都存在过。大学做课设时我也曾以为滤波就是把书上的二阶低通公式抄一遍算出几个电阻电容插好面包板、示波器看到波形衰减就交差。直到工作后在仪表和驱动电路里反复折腾信号链我才真正明白有源滤波电路设计的关键不是背公式而是你怎么看待负载、噪声、增益带宽积、元件公差甚至PCB上那几毫米走线。这篇文章从选型逻辑到计算实操从画板布局到调试避坑尽量把能直接用的东西一次讲清楚。刚入门的同学可以照着算一遍有几年经验的工程师也能在踩坑案例里找找共鸣。1. 无源RC够用的时候为什么要上运放做有源滤波1.1 一级RC滤波的“带不动负载”之痛很多人一开始接触滤波都是从一个RC低通开始的一个电阻串过去一个电容并到地截止频率用 1/(2πRC) 一算看似完事。但这个公式成立的前提是——信号源内阻足够低后级负载阻抗足够高源和负载都不能影响RC网络本身的参数。实际情况远没有这么理想。我做过一个麦克风信号调理板想用一级RC低通压掉电路板上开关电源带来的高频尖峰。计算时用的是 10kΩ 电阻和 1nF 电容理论截止频率约 15.9kHz看起来挺合适。结果拿示波器一看输出波形上有一层毛刺“完美”地穿过了低通幅度几乎没有衰减。后来查原因才发现后级ADC的输入阻抗只有几kΩ等效于在滤波电容上并联了一个低阻负载实际极点频率被推到几十kHz以上RC低通基本失效。这就是无源滤波最典型的痛点滤波网络的频率特性会随着负载的变化而偏移。负载重一点截止频率变高负载轻一点Q值和曲线形态也跟着变。更别说一级RC的滚降斜率只有 -20dB/十倍频在噪声频谱比较宽的场景下这点抑制量根本不够看。想提高阶数就得串联更多RC但每一节都在被后级“拖累”整体响应早就不是理论计算的形状了。1.2 有源滤波的本质把极点从“被动消耗”变成“主动控制”有源滤波器之所以叫“有源”是因为它引入了运放这个有源器件。运放在这里不光是提供增益更重要的是做了一件事隔离。运放输入阻抗极高前级滤波网络不会因为后级负载而加载运放输出阻抗极低后面接什么负载基本不影响滤波器的传递函数。这两条特性让滤波器设计第一次摆脱了“负载阻抗听天由命”的限制。与此同时运放周围的反馈网络可以精确设置极点的位置和品质因数 Q让二阶低通稳稳地以 -40dB/十倍频滚降甚至在截止频率附近做出轻微谐振峰。我习惯用一个粗浅的类比无源RC像用绳子直接拖重物重物一多轨迹就乱有源滤波像给绳子加了舵机舵机按设定角度运动后面拖多重都是稳的。滤波电路设计做到后面你会发现它本质上是“管理信号链路上每一个非理想因素”的过程而运放就是你把控这些因素的核心工具。2. 拓扑之前先定响应特性巴特沃兹、切比雪夫还是贝塞尔2.1 三类经典响应的差异远不止“陡不陡”很多初学者喜欢一上来就翻Sallen-Key拓扑的公式这是本末倒置。选滤波器其实跟选鞋一样先看你要走什么路再看穿哪双鞋。响应特性决定的是滤波器“性格”拓扑结构只是实现手段。先说巴特沃兹响应。它的最大特点是通带内最平坦没有纹波代价是从通带到阻带的过渡带相对缓和。大多数通用信号调理场景比如传感器输出平滑、音频去噪、ADC抗混叠前的预滤波我都优先选巴特沃兹。因为它不会给有用信号带来明显的幅度起伏设计、调试都省心。切比雪夫响应的特点是把误差“赶”到通带边缘允许通带内有等波纹换来的是更陡峭的滚降。同样做到二阶切比雪夫的带外抑制在频率偏离不远时比巴特沃兹强不少。如果你的信号频带宽度受限并且能接受通带内有零点几dB的波动那切比雪夫很合适。但要注意时域上它会带来更大的过冲阶跃响应容易“昂”一下后面接比较器或精密测量电路时要想清楚。贝塞尔响应则是为“保形”而生的。它的群延迟在通带内最平坦意味着不同频率分量通过滤波器的时间一致性好方波通过后边缘没那么畸变。代价是滚降最缓。如果是脉冲信号、数字波形整形或者相位敏感链路选贝塞尔。三类响应对比如下响应类型通带特性滚降陡峭度群延迟平坦度典型场景巴特沃兹最平坦无纹波中等一般通用信号调理、音频、抗混叠切比雪夫有等波纹较陡较差强调带外抑制、可接受纹波贝塞尔平坦最缓最优脉冲保形、相位敏感场合2.2 Sallen-Key与MFB拓扑怎么选不后悔响应特性定完之后才轮到选拓扑。工程上最常用的是Sallen-Key和MFB多反馈两种。Sallen-Key是很多人接触的第一种有源滤波拓扑结构简单一个运放两个电阻两个电容。它属于同相放大结构输入阻抗高增益为正电路噪声低。但它有个天生的弱点——Q值对增益敏感。以二阶低通为例Q 1/(3 - A)A是运放闭环增益。如果你把增益设成3分母为零Q直接无穷大电路开始振荡实际工程中增益只要接近2.8输出就已经有振铃了。所以Sallen-Key适合做增益不大、Q值在0.5到2左右的中低Q滤波器。MFB拓扑则不同它是反相放大结构信号从反相端进入增益为负输入阻抗不算高。它最大的优势是对元件容差不那么敏感尤其是电容参数对Q值的影响比Sallen-Key小适合做中高Q、增益精度要求高的窄带滤波。代价是电路形式稍复杂低噪声性能略逊于Sallen-Key而且因为反相输入端的“虚地”效应它对前级驱动能力有一定要求。对比项Sallen-KeyMFB增益方向同相反相输入阻抗高中等由输入电阻决定Q值适用范围低、中Q2时更稳妥中、高Q都行对元件容差敏感度对电容较敏感相对不敏感典型型号通用音频、测量前端窄带选频、高Q滤波还有一个被很多人忽略的实际问题供电方式。如果你做的是单电源供电Sallen-Key同相结构需要把参考电压通常VCC/2作为“虚地”加在同相端此时电源纹波很容易干扰信号MFB反相结构虽然参考电压接法更麻烦但对共模电源噪声的抑制往往更好。设计前先确认系统供电是双电源还是单电源有时候拓扑不是你选的是供电方式替你选的。3. 手算一套二阶巴特沃兹低通滤波器并把它焊出来3.1 从归一化系数到RC取值一步步算给你看理论铺垫够了直接来一个能落地的设计实例。目标设计一个截止频率 (f_c 2\text{kHz})、通带增益为 10dB的二阶巴特沃兹低通滤波器。巴特沃兹二阶的归一化系数是 (b 1.414)对应 (Q 1/1.414 \approx 0.707)。Sallen-Key拓扑的经典设计方法是先定电容值再反推电阻。为什么先定电容因为E24系列电阻比电容更容易买到高精度规格电容的选择面窄。我先选两个同样的电容 (C_1 C_2 10\text{nF})用 C0G 材质后面会讲为什么不用X7R。既然 (R_1 R_2 R)(C_1 C_2 C)截止频率公式简化为[ f_c \frac{1}{2\pi R C} ]代入 (f_c 2\text{kHz})(C 10\text{nF})[ R \frac{1}{2\pi \times 2000 \times 10 \times 10^{-9}} \approx 7958\Omega ]E24系列里没有7.96kΩ只能选8.2kΩ。选完后实际截止频率变成[ f_c \frac{1}{2\pi \times 8200 \times 10 \times 10^{-9}} \approx 1.94\text{kHz} ]和目标的2kHz差了3%左右这个偏差在元件容差范围内完全可接受。如果项目对截止频率精度要求苛刻可以用两个E96精度的电阻串联或者在电路板上预留多个焊盘调试时按实测值换电阻微调。我见过很多工程师在打样时才想起频率偏差其实设计阶段留好余量后面能省大量时间。3.2 增益电阻别乱定Q0.707对应的A1.586是怎么回事对于Sallen-Key等值RC结构Q值由同相放大器的增益A决定公式是[ Q \frac{1}{3 - A} ]要得到巴特沃兹的Q0.707反推[ A 3 - \frac{1}{Q} 3 - 1.414 1.586 ]这个1.586是非反相放大器 (A 1 R_f/R_g) 的增益因此[ \frac{R_f}{R_g} 0.586 ]取 (R_g 10\text{kΩ})则 (R_f 5.86\text{kΩ})E24系列里最接近的是5.6kΩ。算一下实际增益(A 1 5600/10000 1.56)对应 (Q 1/(3 - 1.56) \approx 0.694)和0.707有2%的偏差完全够用。这里必须强调一个工程红线Sallen-Key的增益绝对不能接近3。一旦A接近3Q值会急剧上升输出在截止频率附近出现巨大峰值极端情况下直接自激振荡。我在实验室见过不止一次有人想当然地把增益设在2倍测出来的频响在截止频率前先拱起来一个大包后面接的电路直接饱和。如果你的应用需要增益尽量把增益放在前级独立放大级让滤波级本身维持低增益或单位增益这样Q值才稳定。当然如果想在单位增益下实现巴特沃兹Q0.707也是有办法的保持两个电阻相等把两个电容设为 (C_1 2C_2)。此时 (Q \sqrt{C_1/(2C_2)}/2 \times 2)按公式计算刚好能到0.707。工程上常用这种“等阻不等容”的变形避免了增益电阻带来的Q值敏感问题。3.3 运放选型增益带宽积、噪声和电压摆率滤波性能计算完了最容易被忽略的是运放本身能不能“跑”在这个频率上。用一个带宽只有1MHz的运放去做几十kHz的有源滤波结果往往是在截止频率还没到的时候运放的幅频响应已经往下掉了滤波器整体响应变得不伦不类。我给自己定的经验准则是运放的增益带宽积至少是截止频率的10到50倍。以2kHz滤波为例如果闭环增益为1.56运放需要在数十kHz范围内保持平坦响应选GBP至少1MHz的型号比较稳。我以前图便宜用过LM358做音频段的低通实测高频段响应明显提前滚降查规格书才发现它GBP只有1MHz内部还有输出级交越失真替换成NE5532之后波形和频响都正常了。低压单电源场景下像MCP6001、OPA340这类轨到轨运放是更合适的选择。除了GBP还要看两个指标。一个是输入电压噪声密度微弱信号场景下滤波器的输出信噪比上限是由前级和运放的噪声决定的选低噪声型号比在滤波后加屏蔽更治本。另一个是电压摆率如果信号是大幅值脉冲摆率不够会让输出波形变形阶跃响应边沿变“软”严重时看起来就像滤波本身有问题。挑选时先计算信号最大变化率 (SR 2\pi f V_{peak})再留3倍以上余量就不会翻车。4. 焊板与调试里最容易翻车的四个点4.1 电源去耦与地回流自激振荡的第一嫌疑设计文件看着没问题焊好板子上电却发现在截止频率附近出现莫名的振荡或波形失真。排除了运放本身问题后十有八九是电源去耦和地回流没做好。运放是宽带器件即使你的信号只有2kHz它也能放大几十MHz的干扰。如果电源引脚旁边没有就近放置0.1μF陶瓷电容电源线上的阻抗在高频段会很高运放工作的瞬间电流变化会在这个阻抗上产生电压跌落并通过内部电路反馈到输入端形成自激。我现在的习惯是每个运放的电源引脚旁边1mm以内放一个0.1μF C0G电容同时在PCB电源入口处放10μF以上的钽电容或电解电容做低频储能。地回流问题更隐蔽。我调试一块四阶低通滤波板时明明布局和原理图都对照检查过输出就是有一层工频干扰。后来用示波器探头接地弹簧直接点在运放输出地引脚附近波形立刻干净了。原因是我把滤波电容的地脚接到了功率地回流路径上功率级的开关电流在PCB铜箔上产生了几百μV的压降被运放当作信号误差放大。滤波电路的信号地特别是电容的地脚必须和功率地、数字地严格分开单点汇接到系统大地这点在混合信号PCB上尤其重要。4.2 运放输出不能直接拖长线容性负载与串阻补偿运放的输出阻抗在闭环下很低但你直接长距离拉线到下一级板卡线缆的分布电容可能几十到几百pF就会和运放的输出阻抗形成一个额外的极点。这个极点一旦落在运放的带宽内相位裕度骤减反馈环就开始振荡。现象是输出波形边缘出现“振铃”频率通常在几MHz到几十MHz。标准解决办法是在运放输出端串联一个小阻值电阻比如22Ω到100Ω把容性负载和电路隔离开。这个电阻和分布电容又构成一个低通但它的截止频率远高于关心的信号频率影响可以忽略。我在这里踩过一次坑为了防容性负载我在输出串了个100Ω电阻却忽略了这个电阻和下一级ADC输入电容之间会构成分压。ADC的采样电容只有几pF还好但如果你接的是CMOS输入且有10nF级的保持电容那信号在带宽边缘会被明显衰减。后来我在串阻后面同时加了一个2.2nF的对地电容人为把节点阻抗拉低既隔离了长线又不让串阻和负载电容形成意外的低通。调试时记得分别测电阻前和电阻后的信号能帮你快速判断问题出在哪一级。4.3 电容选型C0G、X7R、薄膜电容的真实差距滤波器的频率特性直接由RC决定电容的实际容值工作点稳不稳直接影响滤波精度。很多初学者用X7R贴片电容做滤波仿真阶段一切完美实测却差出一大截。原因在于X7R电容有两大问题一是温度稳定性差容值随温度变化可以偏出±10%以上二是直流偏压特性明显两端施加的直流电压越高实际容值掉得越多有些小封装X7R在10V偏压下容值能掉到标称值的一半。所以在有源滤波的信号通路上我坚持用C0G/NP0材质电容容值范围通常在100nF以内或者薄膜电容如聚丙烯、聚苯乙烯。如果容值需求较大而板上空间有限可以在允许偏差不那么敏感的位置用X7R但关键极点和Q值相关的位置绝不能含糊。薄膜电容的高频特性普遍优于陶瓷做音频滤波器时声音也更“干净”实测高次谐波失真明显更低。选电容时多问一句材质比调试时反复换元件划算得多。4.4 测量有源滤波器的坑探头电容和测量位置焊好了最激动人心的环节是拿示波器测频响。这时候最容易产生“假故障”的是示波器探头本身的输入电容。普通无源探头通常有10pF左右的输入电容接到滤波器输出节点后这个电容会和输出电阻形成一个新的极点。如果滤波器输出阻抗偏高比如优化成低功耗设计后用了100kΩ级别的电阻那探头一上去截止频率就能被拉低不少测出来的响应自然不对。测量高阻抗节点时我一般用10x无源探头配合探头本身补偿或者干脆用有源FET探头没有条件时至少要在运放输出引脚处测不要通过长长的连接线或者转接板去测远端接口——那段距离的分布电容和线缆损耗会进一步扭曲波形。另一个测量细节是扫频步进。手动调节信号发生器频率、记录示波器幅度虽然土但能建立对滤波器频响的直观感觉。条件允许的话用带FFT功能的示波器或频率响应分析仪对数扫频后直接看幅频曲线效率高得多。无论如何测完记得把第一个和最后一个数据点分别放在截止频率的1/10和10倍以上才能看到完整的通带和阻带形态不然你以为的“频响正常”其实只看了冰山一角。5. 高阶滤波器的级联顺序以及一个PWM-DAC案例5.1 二阶节级联时Q值分配的顺序为什么不能随便换有时一个二阶节的滚降不够陡用户要求“阻带压得更狠”那就需要把两个二阶节级联组成四阶滤波器。四阶巴特沃兹可以分解为两个二阶节一个Q值约为0.541另一个Q值约为1.307。这两个节的顺序直接决定了电路的稳定性。高Q节Q1.307在截止频率附近有明显的增益峰值大约比通带高出2到3dB。如果让信号先经过高Q节在接近截止频率的频率点信号会在这一节内被放大到较高的电平如果后面一级引入的非线性或者运放输出摆幅有限就可能提前饱和或削波而且高Q节对前级输出的直流偏置也更敏感。反过来把低Q节放在第一级高Q节放在后面信号先被平缓地滚降再经过高Q节时接近截止频率的分量已经被初步衰减高Q节不会承担过大的动态压力。我在设计一个四阶滤波器时曾按仿真软件的默认顺序搭建结果在截止频率附近出现削波失真。一开始以为是运放选小了后来把两级顺序互换输出波形立刻恢复正常。这个经验值很高高Q节永远往后放既提高动态裕量也让调试时的偶发振荡更容易定位到具体是哪一级引起的。5.2 一个完整案例为PWM输出加二阶有源低通平滑最后分享一个贴近真实项目的案例。某台设备原先没有专门的DAC芯片用MCU的PWM输出一个占空比可调的方波再经过一个简单的RC低通把它变成模拟电压。用是能用但输出纹波始终压在50mV左右后级ADC采样总是不稳定尤其PWM频率本身只有15.6kHz时RC滤波后的残余纹波正好落在ADC关注频带边缘。改进方案就是加一级二阶有源低通。目标截止频率设为4.7kHz巴特沃兹响应增益1倍。按照前面的计算流程取C1C233nF算出电阻约1kΩ实际选1.02kΩ增益由单位增益Sallen-Key等阻不等容形式实现。运放选了轨到轨的MCP6002单电源5V供电参考电压用两个100kΩ电阻分压后接一个10μF电容去耦。PCB布局时输入PWM信号走线和输出模拟走线分开中间用地线隔离运放电源引脚就近放了0.1μF C0G。实测通带平直到4kHz4.7kHz附近衰减3dB在15.6kHz处衰减超过28dB输出纹波从50mV压到了3mV以内后级ADC采样值稳定了。项目验收时我也特意给板子预留了改变截止频率用的旁路焊盘后面想调整频率特性时只需换两三个元件不用重新画板。这个案例里最难的不是计算而是三个不起眼但决定成败的细节参考电压的干净程度、PWM信号与模拟区域的隔离、以及电容材质的选择。把这些细节管住有源滤波电路设计就成功了一大半。如果你问我做了这么多年滤波电路最想往回传的一句话是什么我的答案是永远不要在原理图上省掉电源去耦电容也永远不要把仿真结果当成实测结果。把这两件事想透你的滤波器设计会少走很多弯路。
返回列表