4. 有源滤波器设计:一阶/二阶有源低通滤波器,Sallen-Key拓扑结构

有源滤波器,说白了就是用运放搭出来的频率选择电路。跟无源滤波器比,它有个天然优势——不衰减信号,甚至还能放大。我在项目里经常用它做ADC前端的抗混叠滤波,或者DAC输出后的平滑滤波。

今天咱们重点聊一阶和二阶有源低通,尤其是Sallen-Key拓扑。这是最经典的结构,也是我入行时第一个亲手算参数的滤波器电路。

4.1 一阶有源低通滤波器

一阶有源低通,结构最简单。一个RC网络加一个运放缓冲器。运放接成电压跟随器,或者同相放大器。

传递函数长这样:

H(s) = A₀ / (1 + s/ω₀)

其中:

  • A₀ = 直流增益(1 + Rf/Rg,如果是跟随器就是1)
  • ω₀ = 1/(RC),截止角频率
  • f₀ = 1/(2πRC),截止频率

衰减斜率:-20dB/十倍频。嗯,就这水平,不够陡。

我的习惯:一阶滤波器我只用在要求不高的场合,比如电源纹波滤除、低频噪声抑制。如果要做抗混叠,至少二阶起步。

4.2 二阶有源低通滤波器

二阶滤波器,衰减斜率-40dB/十倍频。这就实用多了。二阶有源低通的拓扑有好几种,但Sallen-Key是应用最广的。

为什么?因为它元件少,对运放要求不高,设计公式简单。

4.2.1 Sallen-Key拓扑结构

Sallen-Key结构,也叫VCVS(压控电压源)结构。两个RC网络串联,中间用运放做缓冲隔离。

标准电路长这样:

Vin → R1 → R2 → (+)运放 → Vout
          |     |       |
          C1    C2      |
          ↓     ↓       |
         GND   GND      |
                        (-)运放 → 反馈到R1和R2之间?不对,反馈是从Vout到C1上端

嗯,文字描述容易乱。我画个SVG结构图,一目了然。

Sallen-Key 二阶低通滤波器拓扑结构 Sallen-Key 二阶低通滤波器拓扑结构 Vin R1 A R2 B + 运放 Vout C1 C2 反馈 关键特征 • 同相放大 • 反馈到C1上端 • 增益可调

从图里能看到:信号从Vin进来,经过R1到节点A,再经过R2到节点B,然后进运放正输入端。C1从节点A到地,C2从节点B到地。反馈从Vout回到C1上端(节点A)。

这个反馈路径是关键。它让电路有了二阶特性。

4.2.2 传递函数与设计公式

Sallen-Key低通的传递函数:

H(s) = A₀ / [s²(R1·R2·C1·C2) + s(R1·C1 + R2·C1 + R1·C2·(1-A₀)) + 1]

看着复杂?别怕。实际设计时我们做简化。

最常用的简化方法:等值元件法。让R1 = R2 = R,C1 = C2 = C。

这时候:

ω₀ = 1/(R·C)
Q = 1/(3 - A₀)
A₀ = 1 + Rf/Rg

Q值决定了滤波器的响应类型:

Q值范围 响应类型 特点 典型应用
Q = 0.707 巴特沃斯 最平坦通带 通用滤波、抗混叠
Q = 0.5 贝塞尔 线性相位、无过冲 脉冲信号、时域保真
Q = 1.0 切比雪夫 通带有纹波、截止更陡 窄带选频
核心公式:等值元件法下,Q = 1/(3 - A₀)。这意味着增益A₀不能等于3,否则Q无穷大,电路自激振荡。A₀必须小于3。

4.2.3 设计步骤

我一般按这个流程走:

  1. 确定指标:截止频率f₀、增益A₀、响应类型(Q值)
  2. 选择电容值:先定C,通常在1nF~100nF之间
  3. 计算电阻值:R = 1/(2π·f₀·C)
  4. 计算反馈电阻:A₀ = 1 + Rf/Rg,结合Q = 1/(3 - A₀)反推
  5. 选标准值:把计算值换成E24或E96系列
  6. 仿真验证:用LTspice或Multisim跑一下频率响应
我的经验:电容优先选C0G或NP0材质,温度稳定性好。X7R也能用,但注意DC偏压特性。我吃过一次亏——用了X7R做10kHz滤波器,结果在不同电压下截止频率漂了15%。

4.2.4 设计实例

设计一个巴特沃斯二阶低通,f₀ = 1kHz,增益A₀ = 2。

巴特沃斯要求Q = 0.707,所以:

Q = 1/(3 - A₀) = 1/(3 - 2) = 1

嗯?Q=1,不是0.707。这说明等值元件法下,增益A₀=2时Q=1,是切比雪夫响应。

要得到巴特沃斯,需要调整元件比例。常用的比例法:

让 R1 = R,R2 = m·R
让 C1 = C,C2 = C/m

此时 Q = √m / (1 + m + m·(1-A₀))

对于巴特沃斯 Q=0.707,A₀=2:
解得 m ≈ 0.5

所以:R2 = 0.5·R1,C2 = 2·C1

取C1 = 10nF,C2 = 20nF:

R1 = 1/(2π·1kHz·10nF) ≈ 15.9kΩ → 选15.8kΩ (E96)
R2 = 0.5 × 15.8kΩ = 7.9kΩ → 选7.87kΩ (E96)

反馈:A₀ = 1 + Rf/Rg = 2 → Rf = Rg
取Rf = Rg = 10kΩ
注意:运放选型有讲究。对于1kHz滤波器,普通LM358、TL072都行。但如果f₀到100kHz以上,就要考虑运放的GBW(增益带宽积)。我建议运放的GBW至少是f₀的10倍以上。

4.3 实际设计中的坑

做Sallen-Key滤波器,有几个地方容易翻车:

  • 运放输入电容:运放输入端有寄生电容,会和R2形成额外极点。高频时影响明显。
  • 电阻热噪声:电阻值越大,热噪声越大。我一般控制在100kΩ以内。
  • 电容ESR:电解电容的ESR会改变Q值。高频滤波别用电解。
  • PCB布局:反馈路径要短,C1、C2的地要单独打过孔到地平面。

我曾经在一个项目中,用Sallen-Key做40kHz抗混叠滤波。仿真完美,板子回来测,截止频率偏了20%。查了半天,发现是运放输入电容和R2形成了额外极点。后来把R2改小,C2改大,问题解决。

4.4 一阶 vs 二阶,怎么选?

对比项 一阶 二阶
衰减斜率 -20dB/dec -40dB/dec
元件数 1R + 1C + 运放 2R + 2C + 运放
设计复杂度 低 中
Q值控制 无 可调
适用场景 低频噪声、电源滤波 抗混叠、信号调理

我的建议:能上二阶就别用一阶。多两个元件,性能提升一大截。除非你板子空间实在紧张,或者对成本极度敏感。

好了,Sallen-Key低通滤波器就聊到这儿。记住那个反馈路径,记住Q值和增益的关系,下次画原理图时心里就有底了。