尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

运放二阶Butterworth低通滤波器设计:从理论计算到PCB实战

发布时间:2026/9/28 17:55:39

资讯中心
01
ARTICLE

运放二阶Butterworth低通滤波器设计:从理论计算到PCB实战

运放二阶Butterworth低通滤波器设计:从理论计算到PCB实战
前阵子处理一路 1kHz 以内的信号采集前端噪声大得离谱。我第一个想到的不是换更高规格的 ADC而是先用运放搭一个二阶 Butterworth 低通滤波器把带外干扰压下去。这个项目从理论计算、CircuitJS 仿真验证到 PCB 布局、实测调试完整走了一遍踩了几个不算深但很典型的坑。这篇文章就把“运放 Butterworth PCB 设计”这条链路从头捋到尾适合正在做信号调理、音频前端或者仪器仪表的工程师参考。1. 为什么是“二阶”又为什么是“Butterworth”选型逻辑先想清楚1.1 滤波器响应的“数学性格”最大平坦与可预测的过冲先别急着拿公式算电阻电容选型这一步如果错了后面全白搭。Butterworth 滤波器最核心的特点是通带内最大平坦没有纹波代价是过渡带衰减速度不算最快。它的二阶传递函数可以写成标准形式[ H(s)\frac{\omega_0^2}{s^2\frac{\omega_0}{Q}s\omega_0^2} ]对于 Butterworth 响应品质因数 (Q) 固定等于 (1/\sqrt{2}\approx0.707)。这个值决定了什么它决定了系统在截止频率附近的“性格”没有增益峰阶跃响应有一点过冲但不大相位响应也比较平滑。Q 大于 0.707你就开始能看到频响凸起Q 越大过冲越严重接近振荡Q 小于 0.707响应则偏向过阻尼截止区变得更钝。放在实际项目里这个特性的意义是信号在通带内的增益一致性非常好不会因为滤波器本身引入幅度失真。这在做传感器信号调理、音频电子分频、ADC 前端抗混叠时都特别重要。你输入一个 800Hz 的正弦波截止频率设计在 1kHz那么 800Hz 处几乎不掉点如果换用切比雪夫可能就要忍受通带内的规律性起伏。1.2 和切比雪夫、贝塞尔比Butterworth 处在什么位置很多初学运放电路的朋友会问既然切比雪夫衰减更快为什么不直接用我用一个简单的对照表来说明响应类型通带纹波过渡带衰减相位线性度阶跃响应过冲典型用途Butterworth无中等中等约 4.3%通用信号调理、抗混叠Chebyshev有更陡较差较大窄带信号、高衰减需求Bessel无较缓极好很小脉冲信号、时域保真我的经验是如果是处理正弦波、噪声抑制、传感器输出Butterworth 是“最不容易出错”的选择。它不会给你惊喜也不会给你惊吓。如果后期发现过渡带衰减不够直接级联一个一模一样的二阶节变成四阶 Butterworth就能从 40dB/dec 提升到 80dB/dec远比一开始就选切比雪夫来得可控。1.3 二阶“够用”的判断标准二阶低通滤波器的滚降速度是 40dB/dec也就是频率每升高 10 倍衰减增加 40dB。如果你的干扰噪声主要集中在信号带宽的 3 到 5 倍位置二阶已经能把它们压掉 20 到 28dB如果干扰源是几百 kHz 的开关管振荡二阶能直接削弱 60dB 以上。所以“二阶够不够”这个问题本质上取决于干扰频率离你的截止频率有多远。我个人的经验是只要带外噪声不是紧挨着截止频率出现二阶永远是最先考虑的方案。它元件少、失调路径短、调试成本低。升到四阶意味着多一组运放、多一组电阻电容也意味着 PCB 上的敏感节点翻倍噪声引入点更多。2. 运放选型不是拍脑袋GBW、压摆率、噪声三个关键指标2.1 GBW 决定“运放跟不跟得上滤波器”运放经典电路里都有一个理想化假设开环增益无穷大带宽无穷大。但实际运放受限于增益带宽积GBW随着频率升高开环增益按 20dB/dec 滚降。反映到滤波器电路上就是在截止频率附近如果运放可用的环路增益不够滤波器实际 Q 值会被抬高幅频特性出现凸起甚至变成振荡器。这里给一个非常实用的工程经验Sallen-Key 拓扑中运放的 GBW 至少要有截止频率的 50 到 100 倍。比如你的 Butterworth 低通截止频率设计在 10kHz那运放 GBW 至少需要 1MHz最好 10MHz 以上。要是一开始就想着“反正截止频率很低随便用一个 LM358 就行”那大概率会看到频响曲线在 8kHz 附近抬起来一个诡异的峰。以 NE5532 为例它的典型 GBW 在 10MHz 左右做 20kHz 以内的音频低通非常宽裕。如果做 100kHz 以上的滤波器就要考虑 OPA2134、OPA2277 这类更高带宽的运放。4558 的 GBW 大概 5.5MHz 到 8MHz做 50kHz 以内也能接受但必须留足余量。2.2 压摆率不是低频电路就可以忽略很多朋友设计低频滤波器时完全不看压摆率SR觉得信号频率低就没事。但压摆率约束的是输出信号跟随输入信号变化的最大速率它同时取决于幅度和频率。压摆率的最低要求可以这样估算[ SR_{required} 2\pi \times f_{signal} \times V_{peak} ]举个例子你过滤器后面要输出 5V 峰值的 20kHz 正弦波那么需要的最小压摆率大约是[ 2\pi \times 20k \times 5 6.28 \times 10^5 ,\text{V/s} 0.63 ,\text{V/}\mu\text{s} ]NE5532 的典型压摆率是 9V/μs余量很足。但如果你用的是某些低功耗运放压摆率只有 0.2V/μs那在高幅值高频信号下就会看到波形变成三角波失真非常明显。做滤波器设计时我习惯把信号最高频率按截止频率的 2 到 3 倍来估算留出足够的压摆率余量。2.3 噪声和失调电压直流耦合路径的隐形敌人滤波器本身只处理频率但运放的电压噪声和失调电压会直接叠加在输出信号上。电阻热噪声也要算进去。一个 10kΩ 电阻在常温下就有约 12.7nV/√Hz 的热噪声密度两个电阻就是 18nV/√Hz 左右。对于二阶低通滤波器有效噪声带宽约等于截止频率的 1.11 倍准确来说是 (BW_{effective}\frac{\pi}{2}f_0)。如果截止频率是 10kHz那么等效噪声带宽大约是 15.7kHz。以 NE5532 约 5nV/√Hz 的电压噪声密度计算[ V_{noise} 5 \times \sqrt{15700} \approx 5 \times 125 626 ,\text{nV RMS} ]注意这是没算电阻噪声的理想值。如果信号本身只有几毫伏那这个噪声水平还能接受如果信号是微伏级传感器输出就必须用更低噪声的运放同时把电阻阻值降下来。高阻值电阻在这个电路里是噪声第一大来源能不用 100kΩ 以上就不用这是很多设计翻车的真正原因。3. Sallen-Key 电路的手算全过程从传递函数到具体元件值3.1 拓扑对比为什么优先选 Sallen-Key二阶低通滤波器有几种常见运放实现方式Sallen-Key 和多重反馈MFB是最经典的两种。Sallen-Key 的优势在于增益配置灵活、元件敏感性相对较低、输出同相并且单位增益版本只需要一个运放接成缓冲器适合做抗混叠和信号调理。MFB 的优势是反相结构在一些需要极性反转的场合有用而且对运放带宽的要求在极高 Q 值时表现得更好。但 Butterworth 的 Q 只有 0.707并不是一个苛刻的 Q 值所以 Sallen-Key 完全够用。我后文都围绕 Sallen-Key 单位增益版本展开。3.2 单位增益 Sallen-Key 的推导与核心结论Sallen-Key 单位增益低通滤波器的结构是这样Vin --- R1 --- A --- R2 --- B --- () 运放 --- Vout | | --- C1 -------- | 反馈 | | | | C2 | | | GND |其中 R1、R2 串联分压C1 从 A 点反馈到运放输出端C2 从 B 点运放同相输入端对地。注意千万别把 C1 也接到地那样就退化为二阶 RC 滤波Q 永远达不到 0.707。通过节点电流方程可以推导出传递函数[ H(s)\frac{1}{1s,C2,(R1R2)s^2,R1R2,C1C2} ]对比标准二阶传递函数可以解出[ \omega_0\frac{1}{\sqrt{R1R2C1C2}} ][ Q\frac{\sqrt{R1R2C1C2}}{C2(R1R2)} ]为了得到 Butterworth 响应令 (Q1/\sqrt{2})。然后令 R1R2R可以推出[ Q \frac{1}{2}\sqrt{\frac{C1}{C2}} ]带入 (Q0.707)[ \sqrt{\frac{C1}{C2}} \sqrt{2} \quad\Rightarrow\quad C1 2C2 ]这就是 Sallen-Key 单位增益 Butterworth 最常用的设计口诀等值电阻C1 取 C2 的两倍。此时截止频率公式简化为[ f_0 \frac{1}{2\pi R \sqrt{C1C2}} \frac{1}{2\pi R \sqrt{2},C2} ]3.3 设计一个 1kHz 截止频率的实例假设我需要一个截止频率 (f_01\text{kHz}) 的二阶 Butterworth 低通现在开始选元件。第一步选 C2。取值不能太小否则电阻会很大噪声上涨也不能太大否则电容体积大且高频特性变差。我习惯选 10nF 到 100nF 之间这里用 C210nF选 C0G 材质。第二步算 C1。C12×10nF20nF。为了凑容值我直接用两个 10nF 并联这样电容误差趋势一致容值更准实际高频特性也比单个 20nF 电容更可控。第三步算 R[ R \frac{1}{2\pi \times 1000 \times \sqrt{2} \times 10\times 10^{-9}} 11254\Omega ]E96 电阻系列里有 11.3kΩ很接近。代入后的实际截止频率[ f_0 \frac{1}{2\pi \times 11.3k \times \sqrt{2} \times 10n} \approx 996\text{Hz} ]偏差不到 0.5%完全够用。如果你的系统对截止频率极其敏感可以把 R 换成 11.25kΩ 或者用 11.5kΩ 并联大阻值电阻微调但大多数场景没必要。最终元件清单元件取值备注R111.3kΩE96 系列 1% 精度R211.3kΩ与 R1 同批次C120nF两个 10nF C0G 并联C210nFC0G 材质运放NE5532GBW 10MHzSR 9V/μs3.4 元件容差为什么电容材质比电阻精度更值得操心很多人在这一步忽略了电容材质。X5R、X7R 这类高介电常数陶瓷电容有很强的直流偏压特性——在几伏直流偏置下实际电容量可能掉到标称值的 50% 到 70%。如果一个滤波器设计工作在单电源下电容两端本来就存在直流偏压这会让截止频率数值和你算的差很多。所以我坚持滤波器里的 C1、C2 一定要用 C0G/NP0 材质或者聚丙烯薄膜电容。C0G 的容值随温度和偏压变化都很小虽然体积稍大但对滤波器这种精度敏感的电路非常值得。电阻常用金属膜 1% 精度的 E96 系列就够了想要更高一致性可以用 0.1% 精密电阻但对多数应用没必要。4. CircuitJS 仿真验证理论设计理解“理想运放”的边界4.1 先用仿真器把理论快速验证一遍在画 PCB 之前我习惯先把电路丢进 CircuitJS 跑一遍。这个在线仿真器上手快不需要安装适合做单元电路验证。还是有朋友在菜单里找不到正确操作这里说明一下第一步从左侧元件库里拖出运放、电阻、电容和电源。第二步把电路按照上一节的拓扑搭好给运放接上正负电源。我用 ±5V 电源来模拟常见模拟前端。第三步在输入端放一个交流信号源。CircuitJS 的“正弦波”源配合“频率响应”分析模式可以直接看频响曲线。4.2 CircuitJS 中“运放增益设置无穷大”到底怎么操作很多朋友在网上搜“circuitjs 中运放增益如何设置无穷大”其实在 CircuitJS 里没有真正的“无穷大”选项。这很合理运算放大器模型内部必须有有限的开环增益才能收敛计算。默认运放增益一般已经设得比较高但为了更接近理想运放你可以双击运放元件打开属性面板。找到 “gain” 参数把默认值改成 1e9 或更大。把 “slew rate” 设为 0表示不限制压摆率。这样设置之后运放行为已经非常接近教科书里的理想运放。你就能看到纯理论 Butterworth 响应在 1kHz 处衰减 3dB之后以 40dB/dec 下降。这个仿真结果能帮你验证手算的 R、C 值是否正确也方便对比后面实际运放带来的偏差。如果你故意把 gain 改成 100000 之类较小的值会发现截止频率附近开始出现轻微隆起。这就是运放开环增益不足导致 Q 异常的最直观演示。仿真器做得好的地方就在这里它把抽象概念变成了可视化现象。4.3 频率响应读数技巧别把 -3dB 点找错用 CircuitJS 看幅频特性时注意纵轴单位。默认可能显示的是线性幅度或者 dB建议切到 dB 显示。找到从低频平直段下降 3dB 的那个点看它是否在 1kHz 附近同时看高频段斜率是否为约 -40dB/dec。还有一个容易被忽略的检查项相位。二阶 Butterworth 在截止频率处的相移应当是 -90 度。如果你的仿真里看到在 1kHz 附近的相位变化明显偏离这个值大概率是 C1/C2 接错或者是 R/C 值算错。我每次仿真都习惯同时看幅频和相频能少走很多弯路。仿真的局限也要心里有数它不含 PCB 走线寄生电容不含电源噪声也不含运放实际输出阻抗和负载效应。所以仿真通过只代表“理论设计正确”离“上板能工作”还有一段距离。5. PCB 设计在物理世界还原仿真结果5.1 布局第一原则让走线不成为隐藏的 RCPCB 设计是很多滤波器项目“见真章”的地方。原理图再漂亮布局一乱高频噪声和寄生参数就会把 Butterworth 变成“不伦不类”。首先是信号路径要短。滤波器属于高输入阻抗电路特别是节点 B运放同相输入端阻抗可能到几十千欧旁边只要有一条平行走线穿过就会通过寄生电容引入干扰。我的习惯是把 R1、R2、C1、C2 围成一个紧凑的小区域运放放在这个区域旁边输入从板边连接器直接进 R1输出从运放第 1 脚引出中间不打过孔。其次是C1 反馈走线。C1 是接到输出端的关键反馈元件如果这段走线过长会把输出信号耦合回滤波节点造成 Q 值改变。两点之间走线尽量短而粗不要绕圈。5.2 接地与电源去耦防止自激的核心手段运放电路的自激振荡十有八九和电源相关。NE5532 这种双极型运放对电源去耦尤其敏感电源走线一长电感效应就会把高频噪声带进放大器。我的做法是每一个运放电源引脚旁边放一颗 100nF 的 C0G 陶瓷电容位置尽可能贴近引脚中间不要有过孔。如果电源输入距离很远再在总入口放一颗 10μF 钽电容或陶瓷电容形成低频储能。模拟地和数字地分开布局但最终在电源输入端单点汇合。地平面方面低速运放滤波器其实不要求完整地平面但如果你使用的是多层板底层铺一块完整地平面会显著降低信号回流的寄生电感。如果只能做双层板也要保证 R1/R2 的参考地连续不要被信号线切断。接地环路也是常见问题。如果滤波器的输入和输出分别接入两个不同设备地电位差可能在地环路中产生 50Hz 或更高频干扰。这时候要考虑在输入级使用差分布线或者在信号源端单点接地。总之星形接地是孤立模拟电路最可靠的接地策略。5.3 从罗氏线圈类低电平信号走线谈布线细节很多做电流测量的朋友会搜“PCB 罗氏线圈设计”这类线圈输出信号非常微弱经常要先经过运放低通滤波器。处理这类低电平信号PCB 布线要求更高。我总结的经验是在滤波器的输入端周围不铺铜或者说与输入节点相邻的地铜要留出足够间距。否则地铜会与大阻值电阻形成寄生电容等效于在滤波器前面额外加了一个低通截止频率偏低。更要命的是输入端的回路面积如果太大空间中的磁场干扰会在环路里感应出噪声电压。另一个细节是走线宽度。不要因为信号弱就把线画得极细细走线意味着更高电感和更高的不确定性。模拟信号线建议 10mil 到 20mil且尽量短。连接滤波器的反馈路径要避免走过多的过孔因为每个过孔都有寄生电容和电感。5.4 板级抗 RFI 与屏蔽运放电路的输入端如果有意外的高频能量灌入比如附近有无线电发射源或者开关电源会因为运放输入级的非线性整流产生直流偏置误差也就是常说的 RFI 整流效应。经典的解决办法是在滤波器输入端串联一个几百欧姆的电阻并在电阻前端对地并联一个小几百皮法的电容构成一个极高频低通这个措施对付 10MHz 以上的干扰非常管用。外置金属屏蔽罩谨慎使用。如果你把滤波器整个包在金属罩里接地不良时反而会形成谐振腔。我只在确认外部干扰特别强的场合加屏蔽罩而且会保证屏蔽罩与地平面多点接触。常规项目里紧凑布局 正确去耦已经能解决大多数噪声问题。6. 实测调试验证滤波器是否“配得上”理论值6.1 自激和振铃的排查链路上电后用示波器看运放输出如果发现几百 kHz 以上的正弦振荡或者是叠加在信号上的高频振铃按照下面顺序排查先看电源去耦电容是否真的贴近了运放引脚。很多时候原理图上有电容、板上也有电容但被过孔和走线拉远了等于没有去耦这是自激头号原因。再看运放输出端是否直接接了过长或过宽的走线形成容性负载。如果输出必须走长线可以在运放输出串联一个几十欧姆的电阻把负载电容和运放输出隔离开。如果用的是高 GBW 运放且增益较高检查反馈电容是否过大。反馈电容虽然能限制带宽、抑制振荡但会改变滤波器的极点得权衡。顺便回答一个经常被问的问题4558 运放做 70 倍增益会自激吗答案取决于条件。4558 的 GBW 大约 5.5MHz70 倍增益意味着闭环带宽只有 5.5M/70≈78kHz。只要信号频率远低于这个值理论上是稳定的。但实际板子上如果电源去耦差、输出负载电容过大、走线形成正反馈照样自激。不是芯片的锅是布局和环路稳定性设计的问题。6.2 幅频特性实测扫描比单点可靠得多焊接完成后我的验证流程是这样的用函数发生器给滤波器输入端扫 100Hz 到 20kHz 的正弦信号幅度固定在 1Vpp。示波器同时接输入和输出通道用双通道直接比较幅度。把幅度换算成 dB(20\log_{10}(V_{out}/V_{in}))。重点测三个点10Hz低频基准、1kHz截止频率、10kHz过渡带。理论上 10kHz 应该比 10Hz 低约 40dB。实测时可能会看到截止频率偏了 10% 左右。这很正常电容容差和电阻容差叠加的结果。如果想要精确用镊子替换 R1、R2 微调或者接受这个误差。在大多数信号调理系统里截止频率 5% 以内的偏差完全可接受。6.3 两级放大的增益分配先放大还是先滤波网上有人问“两级运放可以先同相放大再反相放大吗”当然可以但增益分配要有讲究。我见过不少设计在滤波前把信号放大 70 倍结果滤波器输入端的噪声也被放大了 70 倍再经滤波器虽然削弱了高频但通带内的噪声已经足够大。更好的策略是低噪声放大 → 滤波 → 按需再放大或者 滤波 → 单级放大。总之尽量避免在前级把增益做太大。滤波器放在放大之后、进一步放大之前能在保证信噪比的同时压低宽带噪声这是实际系统里最划算的做法。6.4 仪器测量的连接顺序还有一个小细节示波器探头本身有电容通常在 10pF 到 20pF 左右。如果你直接测运放输出高阻节点探头电容会和那个节点上的电阻形成额外极点导致实测截止频率比理论值低。测量时尽量用 10× 探头并在接受范围内把探头电容当作“地对地小电容存在”就行。如果要更精准可以在运放输出后再加一级缓冲输出隔离探头负载。实操经验小结最后分享一个我自己的设计习惯拿到一个滤波任务先定截止频率和阶数再选 C2 容值按 (C12C2) 反推电阻阻值然后立刻查运放 GBW 是否满足“截止频率的 100 倍”这个底线。仿真里把运放增益设成 1e9验证理想响应PCB 布局时把 C1、C2、运放三者画成一个小三角保证反馈路径最短上电后先看静态输出有没有自激再扫频。这套流程我用在很多项目里稳定且有效。做滤波器设计最忌讳的是只会套公式、忽略元件寄生和运放非理想特性。公式给出的只是“理论值”而理论值和实际值之间的差距往往就藏在 GBW、电容材质、PCB 走线和电源去耦这些细节里。把这几个细节抠住你搭出来的 Butterworth 低通滤波器才能真的做到从仿真到实测一致。
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

◈

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

◐

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

▲

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。