ЦИФРОВАЯ ОБРАБОТКА СИГНАЛОВ
Digital signals processing. Digital nonrecursive frequency filters.
Тема 7. НЕРЕКУРСИВНЫЕ ЧАСТОТНЫЕ ЦИФРОВЫЕ ФИЛЬТРЫ
Недостаточно овладеть премудростью, нужно уметь пользоваться ею.
Марк Туллий Цицерон. О высшем благе и высшем зле.
Римский сенатор и философ, 1 в.д.н.э.
Мало пользы от теории бокса, пока сам не научишься махать кулаками.
Евгений Буцко. Идеология белых воротничков.
Радиоинженер, геофизик Уральской школы, ХХ в.
Содержание
1. Общие сведения. Типы фильтров. Методика расчетов нерекурсивных цифровых фильтров. Фильтры с линейной фазовой характеристикой.
2. Идеальные частотные фильтры. Импульсная реакция фильтров.
3. Конечные приближения идеальных фильтров. Ограничение окна операторов фильтров. Применение весовых функций для нейтрализации явления Гиббса. Основные весовые функции. Весовая функция Кайзера.
4. Гладкие частотные цифровые фильтры. Принцип синтеза фильтров.
5. Дифференцирующие цифровые фильтры. Передаточная функция. Точность дифференцирования. Применение весовых функций. Фильтры с линейной групповой задержкой.
6. Альтернативные методы расчета НЦФ. Оптимизационные методы. Метод частотной выборки.
Введение
Нерекурсивные фильтры реализуют алгоритм свертки двух функций: yk = hn ③ xk-n, где xk – массив входных данных фильтра, hn – оператор (ядро, импульсный отклик) фильтра, k и n – нумерация числовых значений массива данных и числовых значений коэффициентов фильтра, k = 0, 1, 2, … ,K; n = 0, 1, 2, … ,N; K ≥ N. Значения выходных отсчетов свертки yk для любого аргумента k определяются текущим и "прошлыми" (до k-N) значениями входных отсчетов. Такой фильтр называется нерекурсивным цифровым фильтром (НЦФ). Интервал [0-N] оператора получил название "окна" фильтра. Окно фильтра составляет N+1 отсчет, фильтр является односторонним каузальным, т.е. причинно обусловленным текущими и "прошлыми" значениями входного сигнала, и выходной сигнал не опережает входного. В общем случае, каузальный фильтр меняет в спектре сигнала состав гармоник, их амплитуды и фазы.
Каузальный фильтр может быть реализован физически в реальном масштабе времени. Начало фильтрации возможно только при задании определенных начальных условий – N значений отсчетов для точек x(k-n) при k<n. Как правило, в качестве начальных условий принимаются нулевые значения, тренд сигнала или значения отсчета х(0), т.е. продление отсчета x(0) назад по аргументу.
При обработке данных на ЭВМ ограничение по каузальности снимается. В программном распоряжении фильтра могут находиться как "прошлые", так и "будущие" (k+n, до k+N') значения входной последовательности отсчетов относительно текущей точки вычислений k, при этом для завершения свертки (аналогично началу) требуется N' точек конечных условий при (k+n)>K. При N' = N и h(-n) = h(n) фильтр называется двусторонним симметричным фильтром. Симметричные фильтры, в отличие от односторонних, не изменяют фазы обрабатываемого сигнала.
7.1. Общие сведения.
Основное свойство любого фильтра – его частотная (frequency response) и фазовая характеристики. Они показывают, какое влияние фильтр оказывает на амплитуду и фазу различных гармоник обрабатываемого сигнала.
К наиболее известным типам нерекурсивных цифровых фильтров (НЦФ) относятся частотные фильтры, алгоритм которых для симметричных НЦФ, не изменяющих фазу сигналов, имеет вид:
yk =
hn sk-n.Типы фильтров. В зависимости от вида частотной характеристики выделяют три основных группы частотных фильтров: ФНЧ - фильтры низких частот (low-pass filters) - пропускание низких и подавление высоких частот во входном сигнале, ФВЧ - фильтры высоких частот (high-pass filters) - пропускание высоких и подавление низких частот, и ПФ - полосовые фильтры, которые пропускают (band-pass filters) или подавляют (band-reject filters) сигнал в определенной частотной полосе. Среди последних в отдельную группу иногда выделяют РФ - режекторные фильтры, понимая под ними фильтры с подавлением определенной гармоники во входном сигнале, и СФ – селекторные фильтры, обратные РФ.
Если речь идет о подавлении определенной полосы частот во входном сигнале, то такие фильтры называют заградительными. Ни теоретического, ни практического интереса к методам их расчета обычно не проявляется, так как их частотная характеристика обычно задается инверсией характеристики полосового фильтра (1-Hп(w)) и каких-либо дополнительных особенностей при своем проектировании не имеет.
Схематические частотные характеристики фильтров приведены на рисунке 7.1.1. Между частотными интервалами пропускания и подавления сигнала существует зона, которая называется переходной. Ширина переходной зоны определяет резкость характеристики фильтра. В этой зоне амплитудная характеристика монотонно уменьшается (или увеличивается) от полосы пропускания до полосы подавления (или наоборот).
Рис. 7.1.1. Типы основных частотных фильтров.
Практика проектирования цифровых фильтров базируется, в основном, на синтезе фильтров низких частот. Все другие виды фильтров могут быть получены из фильтров низких частот соответствующим преобразованием.
Рис. 7.1.2. |
Так, например, фильтр высоких частот g(n) может быть получен инверсией фильтра низких частот h(n) - вычислением разности между исходным сигналом и результатом его фильтрации низкочастотным НЦФ:
y(k) = s(k) –
h(n) s(k-n).Отсюда, условие инверсии симметричного низкочастотного фильтра в высокочастотный:
g(0) = 1-h(0), g(n) = -h(n) при n¹0.
Пример обращения и спектры фильтров приведены на рис. 7.1.2 (в правой части главных диапазонов).
Рис. 7.1.3. |
Применяется также способ получения фильтров высоких частот из низкочастотных фильтров путем реверса частоты в передаточной функции низкочастотного фильтра, т.е. заменой переменной w на переменную w' = p-w (при Dt = 1). Для симметричных фильтров, содержащих в передаточной функции только косинусные члены аргумента w, в результате такой операции будем иметь:
cos n(p-w) = cos np cos nw = (-1)n cos nw.
Последнее означает смену знака всех нечетных гармоник передаточной характеристики фильтра и, соответственно, всех нечетных членов фильтра:
g(n) = h(n) при n = ±1, ±3, …
Пример частотного реверса приведен на рис. 7.1.3. Физическую сущность такой операции инверсии спектра легко понять на постоянной составляющей сигнала. При изменении на противоположный знака каждого второго отсчета постоянной величины это постоянной значение превращается в "пилу", частота которой равна частоте Найквиста главного частотного диапазона (отсчеты по амплитудным значениям этой частоты), равно как и наоборот, отсчеты гармоники сигнала на частоте Найквиста (знакочередующиеся в силу сдвига по интервалам дискретизации на p) превращаются в постоянную составляющую.
Полосовой фильтр может реализоваться последовательным применением ФНЧ и ФВЧ с соответствующим перекрытием частот пропускания. В математическом представлении это означает последовательную свертку массива данных с массивами коэффициентов hн - низкочастотного, и hв - высокочастотного фильтров:
vk = hн(n) ③ s(k-n), yk = hв(n) ③ vk = hн(n) ③ hв(n) ③ s(k-n).
Так как операция свертки коммутативна, то вместо отдельных массивов коэффициентов ФНЧ и ФВЧ их сверткой может быть определен непосредственно массив коэффициентов полосового фильтра: hn = hн(n) ③ hв(n).
Полосовой режекторный фильтр также может быть получен методом инверсии полосового фильтра. Одночастотные режекторные фильтры обычно выполняются на основе простых рекурсивных цифровых фильтров, более эффективных для данных целей.
Часто к фильтрам предъявляются более сложные требования. Например, фильтр может иметь несколько частотных полос пропускания с разными коэффициентами усиления, а для полос непропускания могут быть заданы разные коэффициенты подавления. Иногда требуемая частотная характеристика фильтра задается вообще произвольной кривой.
Методика расчетов НЦФ. Обычно при фильтрации сигналов задается требуемая частотная характеристика фильтра. Задачей является построить фильтр, отвечающий заданным требованиям и провести фильтрацию. Зачастую бывает невозможно построить в точности заданный фильтр, и выполняется фильтр, близкий по характеристикам к заданному.
Существует много способов построения фильтров с заданной частотной характеристикой. Наиболее простой из них – проектирование фильтров с линейной фазой с помощью весовых окон. Этот способ является универсальным и позволяет получить фильтр с любой заданной частотной характеристикой. Отметим, однако, что с помощью других, математически более строгих и совершенных методов, иногда удается построить фильтр меньшей длины, удовлетворяющий тем же требованиям к частотной характеристике.