Sallen-Key Low-Pass Filter

2D twin of the 3D active-filter laboratory: the schematic, a scope, the Bode plot and the step response of a second-order stage.

Presets

Playback

Circuit

The amplifier gain K sets the damping: K = 1.586 gives the maximally flat Butterworth response, higher K gives a resonant peak.

Source waveform

Model checks

The science

What is modelled

An ideal Sallen-Key stage: two resistors in series, a capacitor to ground at the second node, a feedback capacitor from the first node to the amplifier output, and a non-inverting amplifier of gain K. It is a second-order low-pass filter: flat at low frequency, falling at 40 dB per decade above the corner, with a resonance whose height depends on K.

Equations

  • Transfer function H(s) = K / [R1 R2 C1 C2 s² + (C2(R1+R2) + R1 C1 (1-K)) s + 1].
  • Natural frequency ω0 = 1/√(R1 R2 C1 C2), quality factor Q = √(R1 R2 C1 C2) / [C2(R1+R2) + R1 C1(1-K)], damping ζ = 1/(2Q).
  • Circuit equations used in the checks: C2 dVB/dt = (VA - VB)/R2 and C1(dVA/dt - K dVB/dt) = (Vin - VA)/R1 - (VA - VB)/R2, Vout = K VB.

Checks run in the page

  • RK4 integration of the circuit against the closed-form step response.
  • Steady sine response (gain and phase) against the transfer function.
  • The -3 dB corner against bisection; the resonant peak against a frequency scan.

Honest simplifications

The op amp is ideal: no finite bandwidth, slew rate, output limits or noise, and component tolerances are ignored. Above a few hundred kilohertz a real stage would behave differently. K above 2.85 would be unstable and is excluded by the slider.

What to try
  • Choose Resonant peak and look at the Bode plot: the peak height matches the formula and the step response rings.
  • Choose Low Q: the response is smooth, the poles move onto the real axis.
  • Switch to the square wave at 3 kHz and watch the filter remove the higher harmonics.
Gain against frequency (Bode)
Phase against frequency
Pole map in the s-plane
Step response: closed form and RK4 circuit simulation
Made with 🤖 ChatGPT