Активные фильтры: теория и практика

5 октября 2020

В наши дни пассивные фильтры редко используются при работе со звуком. RC-фильтры не могут обеспечить крутизны АЧХ больше 6 дБ на октаву. Этого недостатка лишены LC-фильтры. Однако на частотах 0-20 кГц им требуются катушки индуктивности на десятки-сотни миллигенри. Такие катушки делают, но они относительно дороги. Поэтому обычно используют активные фильтры, речь о которых и пойдет далее.

Теория: простые фильтры

Активные фильтры, как несложно догадаться, используют активные компоненты. Обычно это операционные усилители. Для примера рассмотрим простой фильтр нижних частот. Его можно сделать, добавив конденсатор в обычную неинвертирующую схему включения операционного усилителя:

Фильтр нижних частот из неинвертирующей схемы включения операционного усилителя

Без C1 схема просто увеличивает амплитуду сигнала в 1 + R2 / R1 раз, что в нашем случае соответствует:

>>> from math import log10
>>> 20*log10(1+10/5.1)
9.428135423904662

… примерно 9.5 дБ. На низких частотах C1 ничего не делает, и схема работает как обычно. Но чем выше частота, тем большая часть сигнала обходит R2 через C1, и тем меньше усиление. Получаем ни что иное, как фильтр нижних частот.

Рассчитаем АЧХ этого фильтра с помощью LTspice:

АЧХ простого фильтра нижних частот

Аналогично можно сделать фильтр высоких частот, соединив конденсатор параллельно с R1. Фильтры на основе инвертирующей схемы включения ОУ делаются по тому же принципу. Но инвертирующая схема неудобна тем, что имеет низкий входной импеданс, а неинвертирующая схема имеет минимальное усиление 0 дБ. Не во всех задачах нужно, чтобы фильтр усиливал сигнал.

Теория: топология Саллена-Ки

Поэтому были придуманы другие топологии активных фильтров. О них хорошо рассказано в статье об активных фильтрах на Википедии и далее по ссылкам. Мы рассмотрим лишь самую популярную, топологию Саллена-Ки (Sallen–Key topology).

Так выглядит схема фильтра нижних частот:

Фильтр нижних частот по топологии Саллена-Ки

На низких частотах C1 и C2 имеют высокий импеданс. В результате схема превращается в повторитель напряжения (буфер). С ростом частоты импеданс C1 падает, и все меньшая часть сигнала попадает на неинвертирующий вход операционного усилителя. Как следствие, падает уровень выходного сигнала. Теперь C2 почти что подключен к земле. В итоге схема работает, как два последовательно соединенных RC-фильтра, и достигает крутизны АЧХ в 12 дБ на октаву.

А почему бы просто не использовать два RC-фильтра? Так иногда делают, но у этого подхода есть проблема. Первый RC-фильтр в цепочке видит второй фильтр, как нагрузку, соединенную параллельно с конденсатором. Поэтому второй фильтр должен иметь высокий импеданс, а его нагрузка — еще более высокий. Активные фильтры не накладывают таких ограничений.

Вернемся к нашему фильтру. Его частота среза приходится:

>>> from math import pi, sqrt
>>> R1 = 1000
>>> R2 = R1
>>> C1 = 15/1000/1000/1000
>>> C2 = 47/1000/1000/1000
>>> 1/(2*pi*sqrt(R1*R2*C1*C2))
5994.121932819674

… приблизительно на 6 кГц:

АЧХ фильтра нижних частот по топологии Саллена-Ки

Можно заметить, что на некоторых частотах в полосе пропускания фильтр имеет небольшое усиление. Насколько будет гладкой АЧХ в полосе пропускания определяется величиной Q. Она также вычисляется из R1, R2, C1 и C2:

>>> sqrt(R1*R2*C1*C2)/((R1+R2)*C1)
0.8850612031567836

Чем больше Q, тем больше пик при переходе от полосы пропускания к полосе подавления.

Топология и принцип работы фильтра высоких частот аналогичны, только R и C меняются местами:

Фильтр высоких частот по топологии Саллена-Ки

Частота среза определяется по той же формуле:

>>> C1 = 100/1000/1000/1000/1000
>>> C2 = C1
>>> R1 = 220*1000
>>> R2 = 470*1000
>>> 1/(2*pi*sqrt(R1*R2*C1*C2))
4949.483288837733

Q вычисляется немного иначе:

>>> sqrt(R1*R2*C1*C2)/((C1+C2)*R1)
0.7308152359460695

Фильтр обладает следующей АЧХ:

АЧХ фильтра верхних частот по топологии Саллена-Ки

Q получился меньше, чем в прошлый раз. Теперь никакого усиления в полосе пропускания не наблюдается.

Практика

Все три приведенных фильтра были спаяны на макетной печатной плате:

Активные фильтры, спаянные на макетной печатной плате

Здесь использованы операционные усилители LM741 (даташит [PDF]). Выбор ОУ не принципиален. NE5532 и LM358 должны работать не хуже.

Если раньше вы не использовали LM741, у вас может возникнуть вопрос, к чему подключать выходы offset null, пины 1 и 5. В приведенных схемах, да и в целом при работе с AC-сигналами, эти пины не используются и ни к чему не подключаются. Они нужны при работе с DC-сигналами, и то не во всех схемах. Дело в том, что при равности напряжений на инвертирующем и неинвертирующем входах выход ОУ должен быть нулевым. Но поскольку транзисторы в ОУ не идеальны, это свойство нарушается. LM741 можно подстроить, включив потенциометр между пинами 1 и 5.

Фильтры были проверены при помощи осциллографа и генератора сигналов. Их поведение соответствует моделям с точностью до погрешности в номиналах компонентов.

Заключение

Само собой разумеется, все варианты активных фильтров в рамках одного поста рассмотреть невозможно. При проектировании нового фильтра помогают LTspice, а также различные калькуляторы фильтров. Например, есть онлайн-калькулятор от компании Analog Devices. Также калькулятор активных фильтров есть в открытом приложении Qucs. Читателям, которые хотят больше углубиться в теорию, можно порекомендовать книгу Op Amp Applications Handbook.

Все модели, использованные в статье, вы найдете в этом архиве. А доводилось ли вам делать активные фильтры? В каких задачах вы их использовали и каким образом рассчитывали?

Дополнение: Измеренная АЧХ фильтра нижних частот приводится в обзоре генератора сигналов и частотомера Rigol DG4162.

Метки: , .