Выбор метода проектирования. Характеристики идеального фильтра нижних частот. Выбор взвешивающей функции. Получение цифрового КИХ-фильтра нижних частот с заданными характеристиками. Тестирование фильтра, программирование и анализ его быстродействия.
Аннотация к работе
В зависимости от выделяемой полосы частот (полосы пропускания) фильтры подразделяются на фильтры нижних частот (ФНЧ), фильтры верхних частот (ФВЧ), полосовые фильтры (ПФ) и режекторные (или заграждающие) фильтры (РФ). Среди цифровых фильтров, в свою очередь, выделяют два фундаментальных класса: фильтры с конечной импульсной характеристикой (КИХ-фильтры) и фильтры с бесконечной импульсной характеристикой (БИХ-фильтры). Во-вторых, данный фильтр должен являться фильтром с конечной импульсной характеристикой, а, это значит, что длина его импульсной характеристики должна быть ограничена, и в нашем случае эта длина ограничивается 256-ю отсчетами, и, можно сказать, что порядок фильтра будет равен 256-и. То есть данный фильтр должен почти без искажений пропускать низкочастотную составляющую входного сигнала (от 0 до 500 Гц), и почти не должен пропускать ту часть входного сигнала, частота которой выше 500 Гц. То есть оптимальными являются те фильтры, для которых максимальная ошибка в полосе пропускания и (или) в полосе задерживания минимальна по сравнению с любыми другими фильтрами, которые можно получить, изменяя значения выборок в переходной полосе.Итак, в ходе данной работы был спроектирован цифровой КИХ-фильтр нижних частот со следующими характеристиками: · Длина импульсной характеристики - 256 отсчетов, · Частота среза - 500 Гц, · Частота дискретизации 2500 Гц. В качестве метода проектирования был выбран метод взвешивания импульсной характеристики при помощи соответствующей взвешивающей функции (окна). Использование данного метода привело к некоторому «искажению» порядка фильтра изза того, что для получения требуемой импульсной характеристики, импульсная характеристика идеального фильтра ограничивается окном Кайзера с определенной шириной (M = 80). Итогом проектирования фильтра является получение его уравнения, где вся задача сводится к определению коэффициентов, которые являются значениями импульсной характеристики фильтра. Так использование вычисления свертки в частотной области с помощью алгоритмов быстрого преобразования Фурье (БПФ) вместо непосредственной дискретной свертки во временной области привело к повышению быстродействия нашего фильтра примерно в 4 раза.
Введение
Фильтром называется устройство (цепь), которое обеспечивает необходимую реакцию на какой-то входной сигнал. В основном, данная реакция заключается в выделении из входного сигнала, который представляет собой смесь полезного сигнала с шумом, полезной составляющей, то есть определенные полезные свойства входного сигнала сохраняются в выходном сигнале, а нежелательные - подавляются. Данный аспект очень актуален, например, при передаче данных, где, может быть, изза характеристик линии связи, а, может быть, и изза других каких-то причин, полезный сигнал зашумляется, искажается, и поэтому приемная сторона получает не нужный ей полезный сигнал, а его сильно искаженную форму. Поэтому фильтры очень распространены в современной технике, и как электронные компоненты входят в состав многих электронных устройств. Семейство фильтров весьма разнообразно, они классифицируются по разным параметрам. В зависимости от выделяемой полосы частот (полосы пропускания) фильтры подразделяются на фильтры нижних частот (ФНЧ), фильтры верхних частот (ФВЧ), полосовые фильтры (ПФ) и режекторные (или заграждающие) фильтры (РФ). По типу преобразуемого сигнала фильтры делятся на аналоговые (активные и пассивные) и цифровые. В современной технике используются как те, так и другие типы фильтров, но аналоговые фильтры в то же время являются фундаментальным классом фильтров и используются для проектирования цифровых. Изза невозможности реализации абсолютно идеального фильтра, характеристики фильтра аппроксимируются специальными типами функций. И по названию этих аппроксимирующих функций фильтры подразделяются на фильтры Баттерворта, Чебышева, Бесселя, Кауэра и др. Среди цифровых фильтров, в свою очередь, выделяют два фундаментальных класса: фильтры с конечной импульсной характеристикой (КИХ-фильтры) и фильтры с бесконечной импульсной характеристикой (БИХ-фильтры).
Такое разнообразие цифровых фильтров призвано удовлетворять каким-либо потребностям в получении выходного сигнала. И в зависимости от требований, предъявляемых к выходному сигналу, получаются требования к самому цифровому фильтру. В итоге в каждом конкретном случае требуется спроектировать цифровой фильтр с теми или иными характеристиками. В данной работе рассматривается тот случай, когда требуется спроектировать цифровой КИХ-фильтр нижних частот.
1. Исходные требования
В данной работе требуется разработать цифровой КИХ-фильтр нижних частот со следующими характеристиками: · Длина импульсной характеристики - 256 отсчетов, · Частота среза - 500 Гц, · Частота дискретизации 2500 Гц.
Исходя из этих требований, можно сделать некоторые выводы о том, каким должен быть данный фильтр. Во-первых, данный фильтр должен быть цифровым, то есть он должен оперировать с дискретными по времени входными сигналами. Во-вторых, данный фильтр должен являться фильтром с конечной импульсной характеристикой, а, это значит, что длина его импульсной характеристики должна быть ограничена, и в нашем случае эта длина ограничивается 256-ю отсчетами, и, можно сказать, что порядок фильтра будет равен 256-и. Кроме того, сигнал на выходе данного фильтра будет зависеть только от значений входного сигнала и не будет зависеть от значений выходного сигнала в предыдущие моменты времени, как, у БИХ-фильтров. Также данный фильтр будет устойчив, а его фазовая характеристика должна быть линейной, что для КИХ-фильтров довольно легко получить. Полученный фильтр должен быть фильтром нижних частот с частотой среза равной 500 Герц и с частотой дискретизации равной 2500 Герц. То есть данный фильтр должен почти без искажений пропускать низкочастотную составляющую входного сигнала (от 0 до 500 Гц), и почти не должен пропускать ту часть входного сигнала, частота которой выше 500 Гц. Слово «почти» означает что данный фильтр, как и всякий другой реальный фильтр, будет, естественно, хуже своего идеального прототипа, то есть хуже идеального ФНЧ. У полученного фильтра будет некая неравномерность коэффициента передачи в полосе пропускания, у него будет некоторая переходная полоса между полосой пропускания и полосой задерживания, а также его коэффициент ослабления в полосе задерживания не будет ослаблять «на ноль». И в итоге нужно сказать, что данный фильтр должен реализовываться не путем дискретной свертки входного сигнала и импульсной характеристики фильтра, хотя так тоже без сомнения можно сделать, а путем использования вычисления свертки в частотной области с помощью алгоритмов быстрого преобразования Фурье (БПФ), что, при нашем количестве отсчетов равным 256, увеличит производительность фильтра примерно в 4 раза.
График характеристики затухания фильтра (Рис. 1.) в нашем случае будет выглядеть довольно-таки абстрактно, так как Amax - допустимая неравномерность коэффициента передачи в полосе пропускания, Amin - минимальное ослабление в полосе задерживание, и Fs - начальное положение полосы задерживания, в исходных требованиях не определены. Забегая вперед, скажем, что конкретизацию этих параметров будет обеспечивать та взвешивающая функция (окно), которую мы выберем при проектировании нашего фильтра.
Рис. 1. График характеристики затухания фильтра
2. Выбор метода проектирования
Наиболее широко используются три метода расчета КИХ-фильтров с линейной фазовой характеристикой. Это метод взвешивания импульсной характеристики при помощи соответствующей взвешивающей функции, метод частотной выборки и метод расчета оптимальных фильтров. Рассмотрим вкратце эти три метода [1], [3].
Начнем с рассмотрения метода частотной выборки [3, стр. 81-92]. Данный метод получил такое название, потому что он основан на выборе N равноотстоящих значений (выборок) частотной характеристики, после чего нужно произвести вычисление обратного дискретного преобразования Фурье (ДПФ) для этих выборок, так как из формулы ДПФ непосредственно вытекает прямой способ получения импульсной характеристики фильтра. Однако данная прямая процедура не совсем корректна в практическом применении, так как невозможно предсказать поведение частотной характеристики между частотными выборками, более того, это поведение, в большинстве своем, не удовлетворительно. Поэтому в данном методе используются некоторые подходы, предназначенные для уменьшения пульсаций в поведении частотной характеристики. А также формулируются условия синтеза фильтров с линейной фазой и действительной импульсной характеристикой, которые должны выполняться. Для того чтобы импульсная характеристика была действительной, в разностном уравнении фильтра некоторые коэффициенты должны удовлетворять условиям симметрии. А для того, чтобы получить фильтр с линейной фазой, частотные выборки должны быть симметричными по амплитуде и должны иметь линейную антисимметричную фазу в интервале (-р, р) согласно общим свойствам преобразования Фурье, но учитывая смысл обратного ДПФ, условия симметрии удобней выражать на интервале (0, 2р). Чтобы ошибка аппроксимации в полосе пропускания и в полосе задерживания была минимальной, нужно хорошо выбрать выборки частотной характеристики в переходной полосе. Для этой цели предназначены несколько способов, один из которых основан на использовании метода наискорейшего спуска, другой же, более эффективный подход основан на формулировке задачи аппроксимации в виде задачи линейного программирования, важность которой заключается в том, что можно показать, что решение, если оно существует, может быть найдено за конечное число шагов с помощью процедуры, гарантирующей сходимость.
Теперь рассмотрим метод расчета оптимальных фильтров [3, стр. 95-103]. Фильтры, полученные методом частотных выборок, будут оптимальными фильтрами в том случае, если при их построении использовалось линейное программирование. То есть оптимальными являются те фильтры, для которых максимальная ошибка в полосе пропускания и (или) в полосе задерживания минимальна по сравнению с любыми другими фильтрами, которые можно получить, изменяя значения выборок в переходной полосе. Можно построить несколько классов оптимальных фильтров, которые отличаются различным выбором переменных параметров и критерием оптимальности. При аппроксимации же все коэффициенты фильтра считаются переменными и определяются процедурой оптимизации. Первый класс оптимальных фильтров - это класс фильтров, оптимальных в смысле минимума нормы ?? Lp ??, eioi?ay naycuaaao ?aeaaio? ?anoioio? oa?aeoa?enoeeo n aii?ieneie?o?uae ooieoeae, eiyooeoeaiou eioi?ie iieo?a?ony oae, ?oiau ieieiece?iaaou ?? Lp ??. A?oaie iiaoia iniiaai ia oii, ?oi caaa?a iino?iaiey EEO-oeeuo?ia naiaeony e caaa?a ?aauoaaneie aii?ieneiaoee, niioaaonoao?uae neo?a?, eiaaa p = ? в ?? Lp ??. ?aauoaaneea aii?ieneiaoee eia?o i?aiu aa?iia naienoai, iacuaaaiia ?aauoaaneei aeuoa?iainii, eioi?ia i?aiu iieacii i?e iienea ?aoaiey caaa?e aii?ieneiaoee. Aey iino?iaiey oeeuo?ia, eia?ueo ioeaeo n ?aaiieieaaaoaeuiui iiaaaaieai, i?aaei?aii ianeieuei iaoiaia, iaeaieaa yooaeoeaiue ec eioi?uo iniiaai ia eoa?aoeiiiie i?ioaao?a, ecaanoiie iia iacaaieai aoi?iai aeai?eoia ?aiaca. ?aauoaaneee iaoia neioaca ii?ii oae?a noi?ioee?iaaou a aeaa caaa?e eeiaeiiai i?ia?aiie?iaaiey, ?oi i?eaiaeo e aeai?eoio, eioi?ue iaiaa yooaeoeaai, ?ai aeai?eoi ?aiaca, ii eiaao i?aeiouanoai a aeaeinoe. Oaeei ia?acii, caaa?a, eae e a iaoiaa ?anoioiuo auai?ie, naiaeony e eeiaeiiio i?ia?aiie?iaaie?, oieuei a yoii neo?aa ia?aiaiiua, ii eioi?ui i?iaiaeony iioeiecaoey, ia yaey?ony ?anoioiuie auai?eaie, a i?aanoaaey?o niaie iaai? eiyooeoeaioia eiioeuniie oa?aeoa?enoeee, oi anou iii?anoai anao auai?ie a? AIO.
И, наконец, рассмотрим метод взвешивания импульсной характеристики при помощи соответствующей взвешивающей функции [1, стр. 80-90], [3, стр. 72-79]. В данном методе частотная характеристика представляется в виде ряда Фурье, коэффициенты которого представляют собой значения импульсной характеристики фильтра. Такое представление возможно вследствие периодичности комплексной экспоненты. Однако суммирование в ряде Фурье происходит в бесконечных пределах, что означает бесконечную импульсную характеристику. Поэтому для получения конечной импульсной характеристики используют конечное число членов ряда Фурье. Такое усечение ряда Фурье вызывает явление Гиббса, которое приводит к появлению пульсаций аппроксимирующей частотной характеристики вблизи точек разрыва, то есть на идеально плоской АЧХ в полосе пропускания и в полосе задерживания появляются пульсации, а разрыв на частоте среза сменяется конечной переходной полосой. При увеличении количества отсчетов ширина переходной полосы уменьшается, а пульсации локализуются в меньшем диапазоне частот, но амплитуда пульсаций остается той же, что и раньше, то есть амплитуда пульсаций не зависит от количества отсчетов. Усечение ряда Фурье конечным числом членов представляет собой умножение бесконечного ряда на прямоугольное «окно». Прямоугольное окно может лишь уменьшить ширину переходной полосы путем увеличения количества отсчетов, но не может уменьшить амплитуду пульсаций. Таким образом, прямоугольное окно не обеспечивает допустимую амплитуду пульсаций. Для уменьшения пульсаций, а также для получения более узкой переходной полосы, используют сглаживающие функции (окна). В данном методе для обеспечения допустимого уровня пульсаций частотной характеристики, значения импульсной характеристики умножаются на некую весовую последовательность (окно), в результате чего получается взвешенная импульсная характеристика. Сглаживающие свойства взвешивающего окна тем лучше, чем меньше у него ширина главного лепестка и чем меньше площадь под боковыми лепестками. Однако эти два условия взаимно противоречивы. Существует несколько видов сглаживающих окон, которые в той или иной степени сочетают два этих условия.
Итак, после рассмотрения нами всех трех методов, которые широко распространены в практике, можно сделать вывод, что наиболее удобным, простым и менее трудоемким является метод взвешивания. Данный метод, основанный на получении взвешенной импульсной характеристики требуемого КИХ-фильтра, предоставляет довольно-таки разнообразный список сглаживающих функций (окон), что предоставляет некоторую свободу в выборе окна в зависимости от интересующей нас частотной характеристики проектируемого фильтра. Поэтому в данной работе в качестве метода проектирования нашего цифрового фильтра выбран именно этот метод.
3. Проектирование фильтра
Итак, как было сказано выше, проектирование нашего фильтра будет осуществляться методом взвешивания импульсной характеристики при помощи соответствующей взвешивающей функции. Данный этап проектирования можно разбить на три подэтапа: 1. Задание характеристик идеального фильтра нижних частот (ФНЧ) с теми характеристиками, которые были определены в исходных требованиях.
2. Выбор и задача взвешивающей функции (окна) определенной ширины.
3. Получение взвешенной импульсной характеристики требуемого фильтра, определение его частотной характеристики и передаточной функции.
Далее подробно рассматриваются вышеуказанные подэтапы.
Проектирование требуемого цифрового фильтра осуществляется в среде MATHCAD 2000.
Получение цифрового КИХ-фильтра нижних частот с заданными характеристиками.
Теперь получим взвешенную импульсную характеристику требуемого фильтра, для чего перемножим импульсную характеристику идеального ФНЧ с окном Кайзера:
Так как наш фильтр, естественно, должен быть каузальным, то полученную импульсную характеристику нужно сдвинуть так, чтобы она была равна нулю при значениях аргумента меньших нуля, то есть фильтр не должен выдавать реакцию на входной сигнал, если он еще не поступил на вход фильтра.
График импульсной характеристики для физически реализуемого фильтра
Теперь определим частотную характеристику фильтра, и посмотрим, обеспечивается ли нужная амплитудно-частотная характеристика, и удовлетворяет ли она исходным требованиям.
Из графика видно, что нужная амплитудно-частотная характеристика у спроектированного фильтра обеспечивается, и что частота F = 500 Герц является частотой среза, как и задано в исходных требованиях.
Уравнение фильтра
Окончанием проектирования фильтра можно считать получение его уравнения. Получим же уравнение нашего спроектированного фильтра: Уравнение спроектированного КИХ-фильтра нижних частот имеет вид:
, где коэффициенты фильтра - это есть значения взвешенной импульсной характеристики .
Порядок нашего фильтра равен 256, а это значит, что в вышеуказанном уравнении будет 256 слагаемых с таким же количеством коэффициентов-значений импульсной характеристики полученного фильтра. Определение данного уравнения сводится к определению коэффициентов. Поэтому выведем список данных коэффициентов, начиная с нулевого: Список всех коэффициентов фильтра
Последующие значения взвешенной импульсной характеристики будут равны нулю, и, значит на самом деле, уравнение полученного фильтра будет ограничиваться первыми восьмидесятью значениями (хотя порядок фильтра равен 256), среди которых также встречаются нулевые. Такое ограничение уравнения обуславливается выбором ширины окна Кайзера M=80.
Тестирование фильтра
Фильтр спроектирован. Но нужно реализовать его, проверить его работу. Рассмотрим реализацию фильтра путем подачи на его вход тестового сигнала. Порядок нашего фильтра равен 256, а это значит, как уже отмечалось выше в анализе исходных требований, что данный фильтр должен реализовываться не путем дискретной свертки входного сигнала и импульсной характеристики фильтра, а путем использования вычисления свертки в частотной области с помощью алгоритмов быстрого преобразования Фурье (БПФ), что увеличит быстродействие нашего цифрового КИХ-фильтра нижних частот примерно в 4 раза. Итак, рассмотрим реализацию фильтра, которая будет представлять собой свертку в частотной области:
График входного тестового сигнала s1 (n)
Другие два тестовых сигнала имеют аналогичный вид.
Мы дополнили входной сигнал и импульсную характеристику фильтра нулями до L, так как длина их свертки во временной области будет равна L.
График сигнала sv1 (n) на выходе фильтра при входном сигнале s1 (n), частота которого соответствует полосе пропускания фильтра
График сигнала sv2 (n) на выходе фильтра при входном сигнале s2 (n), частота которого соответствует переходной полосе фильтра
График сигнала sv3 (n) на выходе фильтра при входном сигнале s3 (n), частота которого соответствует полосе задерживания фильтра
Как видно из графиков выходных сигналов (Рис. 13,14,15), наш фильтр без изменений пропустил сигнал s1 (n), частота которого 200 герц входит в полосу пропускания фильтра, с довольно большим послаблением пропустил сигнал s2 (n), частота которого 525 герц входит в переходную полосу фильтра, и практически не пропустил сигнал s3 (n), частота которого 800 герц входит в полосу задерживания фильтра. В данном примере мы использовали для наглядности три гармонических сигнала, частоты которых входят в полосу пропускания, переходную полосу и полосу задерживания соответственно. На самом же деле, в практике, фильтр будет оперировать с сигналами, у которых много гармоник с различными частотами. В этом случае фильтр будет работать с входным сигналом точно также как в рассмотренном выше примере - будет пропускать без искажения низкочастотные гармоники сигнала, с ослабление будет пропускать те гармоники сигнала, частота которых входит в переходную полосу фильтра, и практически не будет пропускать высокочастотные гармоники сигнала. Задержка выходного сигнала по времени относительно входного сигнала обуславливается линейной фазовой характеристикой нашего фильтра, данная задержка пропорциональна частоте.
Вывод
Итак, в ходе данной работы был спроектирован цифровой КИХ-фильтр нижних частот со следующими характеристиками: · Длина импульсной характеристики - 256 отсчетов, · Частота среза - 500 Гц, · Частота дискретизации 2500 Гц.
В качестве метода проектирования был выбран метод взвешивания импульсной характеристики при помощи соответствующей взвешивающей функции (окна). Данный метод проектирования наиболее удобен и прост по сравнению с методами частотной выборки и расчета оптимальных фильтров. Использование данного метода привело к некоторому «искажению» порядка фильтра изза того, что для получения требуемой импульсной характеристики, импульсная характеристика идеального фильтра ограничивается окном Кайзера с определенной шириной (M = 80). Важным при использовании окна является соотношение между переходной полосой и пульсациями в полосах пропускания и задерживания. Так как эти два условия противоречивы, требуется найти компромиссный вариант. Итогом проектирования фильтра является получение его уравнения, где вся задача сводится к определению коэффициентов, которые являются значениями импульсной характеристики фильтра. После проектирования фильтра необходимо его рационально реализовать. Так использование вычисления свертки в частотной области с помощью алгоритмов быстрого преобразования Фурье (БПФ) вместо непосредственной дискретной свертки во временной области привело к повышению быстродействия нашего фильтра примерно в 4 раза. Сигнал на выходе данного спроектированного фильтра оказался задержанным относительно входного сигнала, что обуславливается линейной фазовой характеристикой нашего фильтра.
В ходе данной работы мною был получен навык проектирования цифрового КИХ-фильтра нижних частот, такая конкретика связана с тем, что разновидностей фильтров, скажем так, немало. И различия в способах проектирования разных фильтров бывают существенны, так, например, они существенны при проектировании БИХ- и КИХ-фильтров. Работа сама по себе интересна, да к тому же и весьма актуальна в нашем современном техническом мире, где практически любое электронное устройство средней сложности не обходится без участия фильтров. Поэтому навыки по проектированию фильтров, а также знания и понимание в этой области, конечно, надо повышать. Ведь обработка сигналов, а особенно цифровая, - это современное состояние технического мира. И если не «разобраться» с этой областью науки сейчас, то рано или поздно все равно придется столкнуться с проблемой ее знания и понимания.
Список литературы и электронных источников информации фильтр цифровой частота