A Sallen-Key 3-Pole Chebyshev Type I Active Lowpass Filter - Design Sheet (DS3)
by John-Paul Bedinger
Of the various topologies you can select for making active filters, the Sallen-Key uses the least number of filter components. Furthermore, a 3-pole response (18 db/oct) is possible using only 1 op-amp. Below is a brief mathematical description on how to compute the component values for a Chebyshev Type I (equiripple in passband) 3-pole lowpass filter with selectable output gain.
Diagram 1: A 3-pole Sallen-Key lowpass filter with output gain.
Circuit Analysis:
Looking at node 3b (where v3 = v3a = v3b) , the node voltage equation can be re-written to be:
(Eq. 1)
Let: Then: (Eq. 2 )
The rest of the node voltages can be written:
When solved for the filter transfer function H(s) = Vout/Vin, we get: H(s)=
(Eq. 3)
Note that the general form of a 3-pole lowpass filter at cutoff frequency 1 rad/sec is:
H(s) = (Eq. 4a)
The form of a 3-pole prototype Chebyshev Type I Filter for a 1 rad/sec cutoff frequency(at magnitude of gain less ripple) and unity gain is:
H(s) = (Eq. 4b)
where rdB is the permissible ripple in the passband. The coefficents a2, a1, and a0 of Eq. 4 are calculated by solving for the 3 roots in the denominator of Eq 5 that have negative real parts.These 3 roots(p1, p2, and p3) are then re-factored back together and expanded to give the final transfer function:
1/H(s) = (s-p1)(s-p2)(s-p3) = (Eq. 4c)
To help simplify programming, you may wish to use the following table for a0,a1,a2 at different values of permissible ripple:
rdB |
a2 |
a1 |
a0 |
0.1dB |
1.9388 |
2.6295 |
1.6380 |
0.2dB |
1.6293 |
2.0773 |
1.1516 |
0.5dB |
1.2530 |
1.5349 |
0.7157 |
1dB |
0.9883 |
1.2384 |
0.4913 |
2dB |
0.7378 |
1.0222 |
0.3269 |
Table 1: Prototype Chebyshev filter coefficents vs. permissible passband ripple. fc = 1 rad/sec.< /FONT >
Equating like terms in Equation Eq. 3 and Eq. 4c gives the solve block:
where Kac = M.
The traditional half-power(gain-3dB) filter cutoff(Wc) is a fuction of both the order of the filter and of the ripple(rdB),and is found in the 3-pole case by solving for the positive real root of:
(Eq. 5)
The following table tabulates various solutions of Eq. 5 for a 3-pole prototype Chebyshev:
rdB |
Wc |
0.1 dB |
1.3890 |
0.2 dB |
1.2835 |
0.5 dB |
1.1675 |
1 dB |
1.0949 |
2 dB |
1.0327 |
3 dB |
1.000 |
Table 2: Half-power cutoff frequency(Wc) vs. rdB for a 3-pole Cheybshev prototype filter.
To begin the prototype filter design we choose our output gain and permissible ripple:
Kac = 3 (9.5 dB), rdB = 0.2dB
Also, we choose values for components: C1=3000 uF, C2=1000uF, C3=1000uF, R5=20 k-ohms
Using Table 1 for a2...a0 and solving the solve block for R1, R2, R3,and R4 gives:
R1=801.11 ohms, R2=508.6 ohms, R3=710.28 ohms, R4=20k ohms
Rounding R1-R4 to standard EIA 1% tolerance decade values gives:
R1=806 ohms, R2=511 ohms, R3=715 ohms, R4=20k ohms
Diagram 2: A 3-pole Sallen-Key Cheybshev lowpass filter with cutoff(gain-ripple) at 1 rad/sec and a gain of 3.
Practical Notes:
For different gain and passband ripple values you can refer to my table below, or resolve the solve block with different values of rdB of Kac. Use solutions only with all real positive roots. If you have Mathcad(TM), you can download this Mathcad worksheet to help you.
R1, R2, and R3 from the table can be scaled together by a factor x, which should be done so that R1 is much greater than the source impedance at Vin. This will set the cutoff to 1/x rad/sec.
C1, C2, and C3 from the table can be scaled together by a factor y, which will set the cutoff frequency(at magnitude of gain less ripple) to 1/(x*y) rad/sec, or:
Fc(gain-ripple) = 1/(2*3.1416*x*y) Hz (Eq. 6)
Fc(gain-3dB) = Wc/(2*3.1416*x*y) Hz (Eq. 7)
where Wc is found from Table 2.
rdB=0.1dB | 0dB | 6dB | 12dB | 18dB | 24dB | 30dB | 36dB |
R1 | 1032 | 13331 | 1500.3 | 3581.3 | 2745.7 | 1397.1 | 2747.3 |
R2 | 55228 | 16826 | 3610.3 | 1547.7 | 1889.1 | 13280 | 6185.7 |
R3 | 1071.2 | 2721.7 | 11270 | 11014 | 1177 | 32904 | 35924 |
R4 | 0 | 10000 | 30000 | 70000 | 15000 | 31000 | 63000 |
R5 | infinite | 10000 | 10000 | 10000 | 1000 | 1000 | 1000 |
C1 | 1.00E-03 | 1.00E-04 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 |
C2 | 1.00E-03 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-05 | 1.00E-05 |
C3 | 1.00E-05 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-03 | 1.00E-04 | 1.00E-04 |
rdB=0.2dB | 0dB | 6dB | 12dB | 18dB | 24dB | 30dB | 36dB |
R1 | 1499.4 | 15267 | 1751 | 4078 | 3142.6 | 1646.5 | 3153.9 |
R2 | 2162.2 | 20528 | 4073 | 1745.5 | 2129.8 | 14695 | 6910.7 |
R3 | 26786 | 2770.7 | 12176 | 12200 | 1297.4 | 35890 | 39841 |
R4 | 0 | 10000 | 30000 | 70000 | 15000 | 31000 | 63000 |
R5 | infinite | 10000 | 10000 | 10000 | 1000 | 1000 | 1000 |
C1 | 1.00E-03 | 1.00E-04 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 |
C2 | 1.00E-03 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-05 | 1.00E-05 |
C3 | 1.00E-05 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-03 | 1.00E-04 | 1.00E-04 |
rdB=0.5dB | 0dB | 6dB | 12dB | 18dB | 24dB | 30dB | 36dB |
R1 | 1842 | 18766 | 2214.4 | 4967.2 | 3861.2 | 2112.3 | 3900 |
R2 | 2981.9 | 27777 | 4761 | 2037.8 | 2484.7 | 16652 | 7933.4 |
R3 | 25438 | 26810 | 13253 | 13804 | 1456.4 | 39728 | 45166 |
R4 | 0 | 10000 | 30000 | 70000 | 15000 | 31000 | 63000 |
R5 | infinite | 10000 | 10000 | 10000 | 1000 | 1000 | 1000 |
C1 | 1.00E-03 | 1.00E-04 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 |
C2 | 1.00E-03 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-05 | 1.00E-05 |
C3 | 1.00E-05 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-03 | 1.00E-04 | 1.00E-04 |
rdB=1dB | 0dB | 6dB | 12dB | 18dB | 24dB | 30dB | 36dB |
R1 | 2231.8 | 22752 | 2746.3 | 5977.4 | 4681 | 2649.8 | 4760.5 |
R2 | 4031.7 | 36444 | 5331.9 | 2276.6 | 2774.3 | 18136 | 8719.1 |
R3 | 22620 | 2454.9 | 13900 | 14959 | 1567.3 | 42355 | 49049 |
R4 | 0 | 10000 | 30000 | 70000 | 15000 | 31000 | 63000 |
R5 | infinite | 10000 | 10000 | 10000 | 1000 | 1000 | 1000 |
C1 | 1.00E-03 | 1.00E-04 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 | 1.00E-03 |
C2 | 1.00E-03 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-05 | 1.00E-05 |
C3 | 1.00E-05 | 1.00E-04 | 1.00E-04 | 1.00E-04 | 1.00E-03 | 1.00E-04 | 1.00E-04 |
Table 3: Prototype component values for a Chebyshev filter response at 1 rad/sec.
Example:
We want Fc(gain-3dB) = 1000 Hz, C1 = 0.1uF, C2= 0.1uF, and C3= 0.1uF, a passband ripple of 0.2 dB, and a gain of 6 dB. The source resistance is 10 ohms.
Find y for the correct capacitor range:The scale factor y is 0.1uF/100uF, or y = 0.001.
Find x using Eq. 7 and Table 2: 1000 Hz = 1.2835/(2*3.1416*x*0.001). Solving for x gives: x = 0.2043
Use Table 3 for 6dB gain and rdB= 0.2dB prototype values:Scaling R1, R2, R3,and R4 by x gives:
R1= 3118.7 ohms, R2= 4193.4 ohms, R3= 565.99 ohms, R4= 10k ohms, R5=10k ohms
Finally, round R1-R4 to standard EIA 1% tolerance decade values:
R1= 3.09k ohms, R2= 4.22k ohms, R3= 562 ohms, R4= 10k ohms, R5=10k ohms
Since 3.09k ohms >> 10 ohms source resistance, the value for R1 should work well.
Diagram 3: A 3-pole Sallen-Key Cheybshev Type I lowpass filter with cutoff(gain-3dB) at 1000 Hz, passband ripple of 0.2dB, and a gain of 6dB.
Change Log:
v.1.0 Initial release. Table values not verified by simulation.
v.1.1 Added traditional half-power frequency equation for Fc, and changed example to use it. Corrected capacitor value C3 in Table 2 for rdB=0.2dB, gain = 0dB to 1E-5. was 1E-4
v1.11 Corrected HTML title, misplacement of 'k's in example. Fixed various small text formatting issues. Corrected H0..H3 to H0...H2 in MathCad worksheet.
v1.12 Some equations and diagrams may have been lost during the move. I will fix these as I get time.
v.1.13 Made MathCad file a zip file. Note some equations are still missing.
Questions or feedback? E-mail me at jpbedinger@hotmail.com
(c)2005 John-Paul Bedinger. All rights reserved. Revision: 1.13
Do not duplicate, distribute, or modify without my expressed written permission.
Disclaimer: The author is not responsible for any damages resulting from the content or application of this document. Use at your own risk.