资讯动态

Tow-Thomas二阶有源滤波器完整推导:从KCL到高Q带通设计

发布时间:2026/9/11 3:01:08 来源:尧图企业网站定制
做有源滤波器设计这些年我每次跟刚入行的工程师聊二阶有源滤波器最后都会落到Tow-Thomas这个名字上。Sallen-Key结构简单、适合低Q场景但一旦你需要做高Q、要求参数独立调节、又不想被元件灵敏度折腾Tow-Thomas几乎是绕不开的方案。它不是某种滤波器响应而是一种实现二阶传递函数的电路拓扑用两级积分器加一个反相器组合出一个稳定、可调、物理含义清晰的二阶系统。这篇文章我打算把Tow-Thomas滤波器的推导从头到尾完整走一遍。不是只扔一个公式给你而是从理想运放、反相积分器、节点电流方程这些最基础的东西讲起一步步算出带通和低通输出对应的传递函数再对照标准二阶表达式反推ω0、Q、增益和电阻电容的关系。最后我会给一个f01 kHz、Q5的带通设计实例连元件怎么标称化、仿真怎么验证、实际调试最容易翻车的地方都一起说清楚。适合正在学模拟滤波器的人也适合准备用运放搭二阶滤波器但不想被Sallen-Key的高Q灵敏度坑到的人。1. 为什么Tow-Thomas值得单独拿出来推导1.1 Tow-Thomas到底解决的是什么问题二阶有源滤波器的实现方式很多常见的有Sallen-Key、MFB多反馈、KHN滤波器还有这里要讲的Tow-Thomas。它们的共同目标是实现这样一个标准二阶传递函数H(s) (a1*s a0) / (s^2 (ω0/Q)*s ω0^2)分母里的ω0是特征角频率Q是品质因数它决定了滤波器在频响曲线上的尖锐程度。Q0.707是巴特沃斯平坦响应Q10就相当于一个非常尖锐的选频峰。Sallen-Key拓扑只需要一个运放看起来非常经济但它的Q值取决于运放增益和RC元件的匹配关系Q越高元件公差对实际响应的影响就越剧烈。换句话说你设计Q20的Sallen-Key装上去可能变成Q25也可能变成Q15这取决于你手里电容电阻的实际偏差。Tow-Thomas的做法完全不同。它用多个运放换来了两个非常宝贵的特性一是ω0和Q可以分别由不同的元器件控制调中心频率不破坏Q调Q也不影响中心频率二是Q主要由电阻比值决定电阻的绝对值偏差会被抵消所以Q的实现精度远高于依赖电容匹配的方案。1.2 自己推一遍能捞到什么好处很多人觉得只要会套公式就能设计滤波器实际上设计完出问题的时候能救你的不是公式而是你对推导过程的理解。举个例子我用TT结构做过一个Q5的带通滤波器实测中心频率偏了2%我第一反应是电容容差结果一查是R3和R5没有配好对导致ω0的平方项偏了。如果你只看最终设计公式很难意识到ω0同时受两个电阻、两个电容共同控制但如果你亲手推过KCL方程你会清楚地看到电流在虚地节点上是怎么分配的哪个元件进入分母的s²项、哪个元件进入s项全都有迹可循。另外Tow-Thomas的推导过程本身就是练习“用运放搭积分器”的最好教材。它不像Sallen-Key那样把运放当黑盒的增益源而是把运放接成积分器、反相器这些明确的功能模块再把这些模块反馈起来。推一遍之后你对“积分器带宽”、“虚地节点寄生电容”、“反馈极性”这些实战问题的理解都会上一个台阶。在动手推之前我把TT跟Sallen-Key、MFB放在一起做了个对比这样你能更清楚地知道它适合放在什么时候用对比项Tow-ThomasSallen-KeyMFB运放数量3个1个1个适合Q值范围中高QQ1到几十都很稳低Q到中Q高Q时灵敏度高中Q灵敏度适中参数独立调节优秀ω0、Q、增益基本分离差元件互相纠缠一般Q值主要决定方式电阻比值R2/R元件匹配和运放增益电容与电阻比值输出类型同时提供带通、低通、反相低通低通/高通/带通由结构决定带通/低通调试友好度高改一个电阻就能调Q低改一个参数往往牵一发动全身中等一个很实际的建议是如果你只是搭一个Q0.707的抗混叠低通完全没必要上三个运放的TT结构Sallen-Key又便宜又够用。但当你发现Sallen-Key的高Q灵敏度让你反复换元件时TT才是真正省时间的那个方案。2. 推导前必须打好的地基2.1 理想运放的三个假设任何手推运放电路第一步都是先把运放理想化。后面推导会用到的假设只有三条同相输入端和反相输入端之间虚短电压相等运放输入阻抗无穷大输入电流为零运放输出阻抗为零。在这套假设下运放不会从虚地节点抽走任何电流反相输入端的电压也被牢牢压在0 V这就是能用基尔霍夫电流定律直接列方程的基础。当然实际运放的增益不是无穷大带宽也不是无穷大。这些非理想因素不会让推导失效只会在高阶效应中让Q发生轻微偏移。等推导完、用理想模型得到设计公式后再根据运放的增益带宽积去校核稳定性这才是正确的工程流程。一上来就抱着实际运放模型推公式只会把注意力分散到噪声、失调这些细枝末节上。2.2 反相积分器Tow-Thomas的核心积木Tow-Thomas里最重要的模块就是反相积分器。别看它简单整个TT拓扑就是靠两个积分器串联出s²再靠反馈回路把阻尼加进去最终得到一个稳定的二阶系统。一个标准反相积分器的结构是输入电压V_in通过电阻R接到运放反相输入端运放输出端通过电容C接到同一个反相输入端同相输入端接地。因为反相输入端虚地流过电阻的电流是V_in/R流过电容的电流是V_out * sC两者之和为零V_in/R V_out * sC 0所以V_out / V_in -1 / (sRC)这个结果非常关键。它说明反相积分器在频域里等效于一个1/s也就是每经过一级积分器就会在传递函数分母里贡献一个“s”。两个积分器串起来自然就会出现s²这就是二阶系统的来源。后面TT电路里的第二级就是这样一个标准反相积分器V1经过R3接到U2的反相端C2跨接在U2输出V2和反相端之间所以V2和V1的关系一定是V2 / V1 -1 / (sR3C2)2.3 Tow-Thomas的完整结构长什么样我推导用的TT结构由三个运放组成分别完成不同的任务。第一级运放U1和电容C1组成一个“多点输入的反相积分器”。U1的反相输入端我叫它G1节点这个节点是虚地。连到G1的支路一共有四条输入电压Vin经过R1进来U1输出电压V1经过C1反馈回来V1自己还经过一个电阻R2接到G1第三个运放的输出V3经过R5接到G1。其中R2这条支路是阻尼电阻它的作用就是控制Q值。第二级运放U2接成标准反相积分器。V1经过R3接到U2的反相输入端G2C2从U2的输出V2反馈到G2。U2的输出V2就是低通输出。第三级运放U3接成单位增益反相器。V2经过R4接到U3反相输入U3输出V3经过另一个等值电阻R4接回同一节点所以输出V3等于-V2。这个倒相输出的意义非常大没有它从低通级反馈回第一级的信号极性就会不对整个环路就会变成正反馈振荡器。整条信号链可以这样理解输入信号进入U1积分器得到V1V1进入U2积分器得到V2V2经过U3反相后变成V3V3再反馈回U1的求和点。两级积分器提供s²反馈回路把低通输出引回输入端形成谐振R2从V1抽走一部分信号来提供阻尼。这样的结构让电路变成一个真正的二阶谐振器带通输出在V1低通输出在V2反相低通输出在V3。3. 核心推导传递函数的完整演算过程3.1 先给三个节点列KCL方程这个推导不需要高深技巧只需要老老实实把三个运放反相输入端的电流方程写出来。电流方向统一按“流入虚地节点为正”来列。先看G1节点也就是U1的反相输入端。这里连了四条支路R1上的电流是Vin/R1C1上的电流是V1除以C1的阻抗1/(sC1)也就是sC1V1R2上的电流是V1/R2R5上的电流是V3/R5。四项加起来为0Vin/R1 sC1*V1 V1/R2 V3/R5 0 方程1再看G2节点也就是U2的反相输入端。这里只有两条支路R3上的电流是V1/R3C2上的电流是sC2V2所以V1/R3 sC2*V2 0 方程2由方程2直接得到V2 -V1 / (sR3C2)最后看G3节点也就是U3的反相输入端。V2经过R4进来V3经过另一个R4反馈回来既然U3接成单位增益反相器那么V2/R4 V3/R4 0所以V3 -V2把之前的V2表达式代进去就得到V3 V1 / (sR3C2)这里请你留意V3不是等于-V1/(sR3C2)而是等于V1/(sR3C2)。多了U3这个反相器反馈到第一级的信号相位就对了。如果省略U3直接拿V2接R5反馈项会变成负号插入分母结果就是电路起振输出直接饱和。3.2 消去中间变量得到带通传递函数现在把V3的表达式代入方程1。方程1是Vin/R1 sC1*V1 V1/R2 V3/R5 0代入V3之后Vin/R1 sC1*V1 V1/R2 V1/(sR3R5C2) 0两边同时乘以s去掉分母上的ss*Vin/R1 s^2*C1*V1 s*V1/R2 V1/(R3R5C2) 0把V1移到一边注意符号变化s^2*C1*V1 s*V1/R2 V1/(R3R5C2) -s*Vin/R1两边同时除以C1(s^2 s/(R2C1) 1/(R3R5C1C2)) * V1 -s*Vin/(R1C1)于是带通输出V1对输入Vin的传递函数就是H_BP(s) V1/Vin -[s/(R1C1)] / [s^2 s/(R2C1) 1/(R3R5C1C2)]这个式子的分母是一个标准二阶多项式s²项、s项、常数项全部为正说明系统在正常元件取值下是稳定的。分子上只有一个s说明带通特性直流被挡住高频也被积分电容衰减只有谐振频率附近能通过。如果你想从V2取低通输出只需要把H_BP再乘上第二级积分器的传递函数-1/(sR3C2)H_LP(s) V2/Vin H_BP(s) * [-1/(sR3C2)] [1/(R1R3C1C2)] / [s^2 s/(R2C1) 1/(R3R5C1C2)]注意低通分子的常数项没有s了所以直流增益是有限值高频迅速衰减。V3输出则刚好是V2的反相版本所以它也是一个低通输出只是相位反了180度。3.3 把推导结果翻译成ω0、Q和增益有了带通传递函数接下来就是把它和标准二阶低通/带通形式对齐提取出ω0和Q。标准带通二阶传递函数写成H_BP(s) A0 * (ω0/Q) * s / [s^2 (ω0/Q)*s ω0^2]其中A0是带通中心频率处的增益幅度。对比我们推导出的分母s^2 s/(R2C1) 1/(R3R5C1C2)可以读出ω0^2 1 / (R3R5C1C2) ω0/Q 1 / (R2C1)由第一个式子得到ω0 1 / sqrt(R3R5C1C2)带通中心频率f0就是ω0/(2π)。再看增益。我们推导出的带通传递函数分子是-s/(R1C1)标准形式的分子是A0*(ω0/Q)s。既然ω0/Q1/(R2C1)那么标准分子可以改写成A0s/(R2C1)。两边分子对比1/(R1C1) A0 / (R2C1)于是A0 R2 / R1这个结果很漂亮带通中心增益只取决于R2和R1的比值跟电容值无关。Q值可以由ω0和ω0/Q直接算Q ω0 / (ω0/Q) sqrt(R3R5C1C2) * R2C1 / (R3R5C1C2)?更直观的做法是令C1C2CR3R5R也就是两个积分器的时间常数相等这是最常见的情况。此时ω0 1 / (RC) Q R2 / R A0 R2 / R1看到这个简化结果你就能明白为什么TT结构调试起来那么舒服。R2只出现在Q公式里R3和R5只出现在ω0公式里R1只出现在增益公式里。想调中心频率就改R3/R5想调Q就改R2想调带通增益就改R1三者互不干扰。这在Sallen-Key里想都不敢想。元件关系总结成一张表会更清楚设计目标主导元件关系式中心频率ω0R3、R5、C1、C2ω0 1/sqrt(R3R5C1C2)对称取值时ω01/(RC)品质因数QR2、R、C1Q R2C1ω0对称取值时QR2/R带通中心增益A0R1、R2A0 R2/R1低通直流增益R1、R5低通在V2取直流增益 R5/R1你可能会注意到在对称取值时QR2/R带通增益A0R2/R1。如果这时候你又希望R1R那么A0就和Q在数值上相等。这不是错误而是二阶滤波器不同指标之间天然存在约束任何实现方式都逃不掉。TT的优点是调节自由度大但“输出在哪个节点取增益就是对应节点的表达式”这一点设计时要先想清楚。4. 设计实例一个f01kHz、Q5的带通滤波器4.1 指标拆解与元件初选下面用一个真实的设计过程来演示怎么用上面的公式。设计目标带通滤波器中心频率f01 kHzQ5带通中心增益A01输出从V1取。先选电容。电容的容值和材料对滤波器稳定性影响很大我习惯先用10 nF。10 nF这个量级在1 kHz附近非常合适电阻不会大到引入偏置电流问题也不会小到让运放输出电流过大。电容优先选C0G/NP0材质这种电容温漂小、电容值随电压变化几乎可以忽略。如果手头只有X7R也能用但容差和温漂会直接影响f0精度后面对账会比较麻烦。按照对称取值C1C2C10 nFR3R5R中心频率公式变成ω0 1 / (RC)所以R 1 / (2π*f0*C) 1 / (2π*1000*10e-9) ≈ 15.92 kΩE96系列电阻里最接近的是15.8 kΩ。选这个值后实际中心频率会变成1007 Hz左右偏差不到1%一般不用再纠结。如果你一定要做到1000 Hz整可以用15.8 kΩ串联90.9 Ω电阻凑成15.89 kΩ或者干脆用电位器微调。4.2 计算R2、R1和反相器电阻接下来算Q决定电阻R2。对称取值时Q R2 / R所以R2 Q * R 5 * 15.8 kΩ 79.0 kΩE96系列里没有79.0 kΩ这个标称值最接近的是78.7 kΩ。用78.7 kΩ算回实际QQ 78.7 / 15.8 ≈ 4.98Q误差不到0.5%完全够用。如果后续调试发现Q需要精确到5.0可以在78.7 kΩ上串联一个300 Ω左右的电阻或者预留一个并联焊盘。带通中心增益A01由A0R2/R1得到R1R278.7 kΩ。注意R1是输入端电阻它的大小会跟信号源内阻串联。如果你的前级输出阻抗超过几百欧姆最好先加一级电压跟随器或者把源阻抗计入R1再微调。U3反相器的两个电阻R4可以选任意合适的值它不出现在f0和Q公式里。我习惯用10 kΩ理由很简单数值常见、噪声不算大、对前一级V2的负载也轻。如果你想进一步降低输出噪声可以都用5.1 kΩ但要注意U3输出端驱动两路电阻的电流会增大。最终元件清单如下元件计算值选用标称值说明C1、C210 nF10 nF C0G两个积分电容材质优先C0GR3、R515.92 kΩ15.8 kΩ对称取值决定中心频率R279.0 kΩ78.7 kΩ决定Q实际Q≈4.98R178.7 kΩ78.7 kΩ与R2相等保证中心增益为1R4任意合适值10 kΩ反相器增益电阻两个都用10 kΩ4.3 仿真验证与运放选型元件算完后先用SPICE做一次AC仿真。输入用1V交流信号扫描范围100 Hz到10 kHz输出节点选V1。理论上应该看到1007 Hz附近出现一个尖锐的峰峰值约0 dB-3 dB带宽为f0/Q≈201 Hz。相位响应在中心频率处是180度左右因为V1对输入是反相关系这是TT结构第一级积分器自带的极性不是接错。运放选型上中心频率1 kHz、Q5这种条件其实非常宽松。经验法则是运放的增益带宽积至少要做到f0×Q的20到50倍以上如果算上稳定裕度最好做到100倍。也就是要求GBW大于500 kHz。随便一个通用运放比如TL072、OPA2134、OPA2277都远远满足。但如果把指标提高十倍做f0100 kHz、Q50的带通那就需要GBW在百MHz级别这时候两个积分器内的运放在谐振频率附近已经贡献明显相移Q会严重偏移用有源RC就不太合适了应该考虑OTA-C或开关电容方案。仿真时建议不要用理想运放模型走一遍就完事。把TL072或者你最终选型的SPICE模型放进去对比一下理想模型和实际模型的频响曲线。如果两者在中心频率和Q上对不上多半是运放带宽不够或者运放输入电容在G1节点上引入了额外极点。很多新手在这里会怀疑是自己的RC算错其实往往是运放模型跟理想的差距。5. 实操中容易踩的坑与排查记录5.1 电路起振输出直接饱和这是我见过最常见的TT调试事故。现象是无论输入信号有没有V1或V2的输出都是接近电源轨的直流电平还带着明显的振荡尾巴。原因绝大多数是反馈极性接反V2没有先经过U3反相而是直接接到了R5送回G1。这样反馈项在分母里变成负常数项极点会跑到右半平面电路就成了振荡器。排查方法很简单。用示波器同时看V2和V3确认V3是不是V2的反相版本。正常情况它们幅度一样、相位相反。如果V3跟V2同相说明U3接线有问题。还有一种情况是U3的R4两边取值差太多比如一个10k一个20k那反相增益不是-1也能改变环路相位和幅度导致Q异常甚至起振。5.2 Q值跟设计值对不上如果电路没有起振但实测Q比设计值高或低先别急着怀疑运放先看R2。因为对称取值时QR2/RR2的偏差会线性地反映到Q上。用5%普通电阻的话Q的误差起步就是5%再加上R3和R5的偏差影响ω0最终Q可能偏到10%。所以R2、R3、R5这三只电阻我建议都用1%甚至0.1%的金属膜电阻。电容的影响也不小特别是C1和C2不对称时Q公式里会出现sqrt(C2/C1)之类的修正因子。我调试时遇到过Q从5变成6.3的情况最后检查发现C1标称10nF实际只有9.4nFC2有10.3nF两个电容一歪Q就跑偏了。另外运放输入电容在G1节点上的影响也不能忽略。G1是虚地节点任何到地的寄生电容都会在C1上叠加一个额外电容。高频应用里几pF的寄生电容就能让中心频率和Q明显偏移。所以TT电路的G1、G2节点周围尽量少走长线别铺大块铜皮运放选输入电容小的型号。5.3 中心频率偏移但Q看起来正常中心频率由R3、R5、C1、C2共同决定任何一只元件偏了都会让f0偏。但有意思的是如果R3和R5同步变化Q基本不变因为你只移动了ω0阻尼电阻R2没变换到标准表达式里ω0变了Qω0/(ω0/Q)也变了。不对更准确地讲对称取值时QR2/R如果R3R5同步从R变成1.1RR需要被对称但Q仍然R2/R确实不变。但中心频率是1/(RC)会反比下降。所以在调试f0时不要盯着一颗电阻调。我的习惯是先用LCR表测电容实际值再反推R3和R5的目标值。如果目标f0是1kHz测得C110.1nF、C29.8nF那就把R3和R5分别按各自对应的RC时间常数去调让R3C1≈1/(2π1000)R5C2≈1/(2π1000)。虽然两个积分器时间常数不完全相等但乘积还是能稳住ω0。5.4 常见故障速查表现象可能原因快速排查输出接近电源轨自激反馈极性接反V3没接或极性不对检查V3是否等于-V2Q比设计值高很多R2偏大或C1偏小实测R2和C1算回QQ比设计值低R2偏小或C1偏大检查C1是不是X7R且偏上限中心频率偏高R3/R5偏小或C偏小实测电容按实际值反推R中心频率偏低R3/R5偏大或C偏大检查是不是把15.8k拿成16k频率响应在高频出现额外峰G1节点寄生电容、运放带宽不足清理走线换更高GBW的运放6. 关于TT设计我最后想说的几件小事你自己动手推过一遍之后会发现Tow-Thomas的价值不是它比Sallen-Key“高级”而是它把二阶滤波器的设计问题拆解得非常清楚。分母的s²项由两个积分器贡献s项由阻尼电阻R2控制常数项由R3R5C1C2决定。搞清这一层你以后看任何二阶滤波器都不会再怕。我个人在实际项目中还有两个习惯。第一个是给R2留一个并联焊盘或者干脆用一只优质多圈电位器串固定电阻来调Q。TT结构调Q实在太方便了不在电路板上留个调整机构有点可惜。当然调试完成之后最好换回固定电阻避免电位器温度系数把Q带偏。第二个习惯是让R3和R5成对选最好从同一盘料里拿保证温度漂移方向一致。R3和R5同时漂10%中心频率会被“抵消”一部分如果一只漂正、一只漂负ω0会漂得很难看。如果后续你还想继续深挖可以沿着两个方向走一个是把U1改成非反相积分器、U2改成反相积分器这样就演变出KHN结构能提供同相带通和同相低通输出另一个是把运放换成跨导放大器OTA用电流控制g_m来做可变Q滤波器。但不管走哪条路最先要过的还是今天这一关把Tow-Thomas的传递函数亲手推出来。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价