Дизайн фильтра fir с помощью окон: концепции и прямоугольное окно

Дизайн фильтра fir с помощью окон: концепции и прямоугольное окно
Дизайн фильтра fir с помощью окон: концепции и прямоугольное окно
Anonim

FIR Filter Design by Windowing: концепции и прямоугольное окно

В этой статье мы рассмотрим основные понятия в дизайне цифрового фильтра. Мы также кратко обсудим преимущества FIR-фильтров над конструкциями IIR, например, стабильность и линейно-фазовый отклик. Наконец, мы рассмотрим введение в проектирование FIR-фильтров через оконный метод.

Почему нам нужны фильтры «text-align: justify;»> Фильтры используются в самых разных приложениях. Большую часть времени конечной целью использования фильтра является достижение определенной избирательности по частоте в спектре входного сигнала

В качестве примера предположим, что шум 50 Гц падает поверх сигнала, создаваемого датчиком. Компонент шума может быть достаточно сильным, чтобы ограничить точность измерения. Выходной сигнал датчика обычно преобразуется в цифровой сигнал с помощью АЦП, который должен обрабатываться ЦСП или микроконтроллером. Поэтому мы можем использовать цифровой фильтр после АЦП для устранения компонента шума. В этом конкретном примере для подавления шума можно использовать фильтр надреза с частотой 50 Гц.

На этом этапе стоит рассмотреть частотную характеристику практического фильтра. На рисунке (1) показан пример практического фильтра нижних частот. В этом примере частотные компоненты в полосе пропускания от DC до $$ \ omega_ {p} $$ будут проходить через фильтр почти без затухания. Компоненты в полосе задерживания выше $$ \ omega_ {s} $$ будут испытывать значительное затухание. Обратите внимание, что частотная характеристика практического фильтра не может быть абсолютно плоской в полосе пропускания или в полосе стоп-сигнала. Как показано на рисунке (1), некоторая рябь будет неизбежной, и полоса перехода $$ \ omega_ {p} <\ omega <\ omega_ {s} $$ не может быть бесконечно резкой на практике.

Image
Image

Рисунок (1) Частотная характеристика практического фильтра нижних частот. Изображение предоставлено Мичиганским университетом (PDF)

Общие Соображения

Дизайн цифрового фильтра включает в себя четыре этапа:

1) Определение спецификаций

Во-первых, нам нужно определить, какие спецификации требуются. Этот шаг полностью зависит от приложения. В примере шума на частоте 50 Гц на выходе датчика нам нужно знать, насколько сильная составляющая шума относительно желаемого сигнала и насколько нам необходимо подавлять шум. Эта информация необходима, чтобы найти фильтр с минимальным заказом для этого приложения.

2) Поиск передаточной функции

С известными конструкторскими характеристиками нам необходимо найти функцию передачи, которая обеспечит необходимую фильтрацию. Рациональная передаточная функция цифрового фильтра такова, как в уравнении (1).

$$ Н (г) = \ гидроразрыва { sum_ {к = 0} ^ {М-1} B_ {к} г ^ {- к}} { sum_ {к = 0} ^ {N-1} {а_ к} г ^ {- k}} $$

Уравнение (1)

Этот шаг вычисляет коэффициенты, $$ a_ {k} $$ и $$ b_ {k} $$, в уравнении (1).

3) Выбор структуры реализации

Теперь, когда $$ H (z) $$ известно, мы должны выбрать структуру реализации. Другими словами, существует множество систем, которые могут дать полученную передаточную функцию, и мы должны выбрать подходящую. Например, для реализации конкретной передаточной функции могут быть использованы любые формы I, II, каскада, параллельной, транспонированной или решетчатой формы. Основное различие между вышеупомянутыми структурами реализации заключается в их чувствительности к использованию конечной длины бит. Обратите внимание, что в последней цифровой системе мы будем использовать конечную длину бит для представления сигнала или коэффициента фильтра. Некоторые реализации, такие как прямые формы, очень чувствительны к квантованию коэффициентов. Однако каскадные и параллельные структуры проявляют меньшую чувствительность и являются предпочтительными.

4) Реализация фильтра

После принятия решения о том, какую структуру реализации использовать, мы должны реализовать фильтр. У вас есть несколько вариантов этого шага: программная реализация (например, MATLAB или C-код) или аппаратная реализация (например, DSP, микроконтроллер или ASIC).

В этой статье основное внимание уделяется второму этапу проектирования FIR-фильтра.

Фильтры FIR

Фильтр FIR является частным случаем уравнения (1), где $$ a_ {0} = 1 $$ и $$ a_ {k} = 0 $$ для $$ k = 1, …, N-1 $ $, следовательно, получаем:

$$ Н (г) = \ sum_ {к = 0} ^ {М-1} B_ {к} г ^ {- к} $$

Уравнение (2)

Прямая реализация формы уравнения (2) для M = 3 показана на рисунке (2). Как показано на этом рисунке, цифровой фильтр может быть реализован с использованием только трех элементов:

  1. прибавление
  2. Умножение на константу (необходимое для реализации коэффициентов)
  3. Блоки задержки
Image
Image

Рисунок (2) Прямая форма КИХ-фильтра порядка 2

На рисунке (2) имеются три коэффициента и две ячейки задержки. Обратите внимание, что этот фильтр имеет порядок 2, количество ячеек задержки, а не 3, количество коэффициентов.

Фильтр FIR имеет два важных преимущества перед дизайном IIR:

Во-первых, как показано на рисунке (2), в структуре фильтра КИХ отсутствует петля обратной связи. Из-за отсутствия петли обратной связи, FIR-фильтр по своей сути является стабильным. Между тем, для фильтра IIR нам нужно проверить стабильность.

Во-вторых, FIR-фильтр может обеспечивать линейный ответ. На самом деле, линейно-фазовый отклик является основным преимуществом FIR-фильтра над конструкцией IIR, иначе, для тех же характеристик фильтрации, IIR-фильтр приведет к более низкому порядку.

Чтобы иметь FIR-фильтр с линейной фазой, мы должны обеспечить симметричность во временной области, т. Е. $$ b (n) = \ pm b (M-1-n) $$. В примере, показанном на рисунке (2), предположим, что $$ b_ {0} = b_ {2} $$, поэтому уравнение (2) дает

$$ H (z) = b_ {0} + b_ {1} e ^ {- j \ omega} + b_ {0} e ^ {- j2 \ omega} = e ^ {- j \ omega} (b_ {1 } + 2b_ {0} cos⁡ ( omega)) $$

Уравнение (3)

Поскольку $$ b_ {k} $$ вещественна, фаза $$ H (z) $$ будет

$$ \ measuredangle H (z) = \ left { begin {matrix} - \ omega_ {p}

& b_ {1} + 2b_ {0} cos ( omega)> 0 \\ - \ omega_ {p} + \ pi

& b_ {1} + 2b_ {0} cos ( omega) <0

\ Конец {матрица} право. $$

Уравнение (4)

Поэтому фазовый отклик будет линейным. Хотя этот пример показывает линейно-фазовый отклик в случае трехканального фильтра, можно показать, что при произвольном значении $$ M $$ симметричность во временной области приводит к линейно-фазовому отклику. Это важное свойство, которое помогает нам исследовать линейно-фазовый отклик КИХ-фильтра, просто рассматривая значения $$ b_ {k} $$ без каких-либо вычислений.

Читатель может задаться вопросом, почему важна частотная характеристика с линейной фазой. Чтобы получить представление, рассмотрите случай непрерывного времени. Предположим, что частотная характеристика системы

$$ H (s) = \ alpha e ^ {- j \ beta \ omega} $$

Уравнение (5)

где $$ \ alpha $$ и $$ \ beta $$ - реальные константы. Фазовый отклик этой системы является линейным, т. Е. $$ \ measuredangle H (s) = - \ beta \ omega $$.

Если применить к этой системе $$ x (t) = Acos ( omega_ {1} t $), то выход будет $$ y (t) = \ alpha A cos ( omega_ {1} t - \ beta \ omega_ {1}) = \ alpha x (t- \ beta) $$. Поэтому ответ на линейную фазу соответствует постоянной задержке. Система с нелинейно-фазовым откликом будет искажать вход, даже если $$ \ left | H (s) right | $$ постоянна. В такой системе разные частотные составляющие входа будут испытывать разные временные задержки при прохождении через систему. Для цифровой системы с фазовым откликом $$ \ measuredangle H (z) = - k \ omega $$, где $$ k $$ - целое число, можно также доказать, что линейная фаза равна постоянной задержке.

Введение в дизайн FIR-фильтров при помощи Windowing

Мы объясним метод окна, используя пример. Предположим, что мы хотим создать фильтр нижних частот с частотой среза $$ \ omega_ {c} $$, то есть желаемый частотный отклик будет:

$$ H_ {d} ( omega) = \ left { begin {matrix}

1 & \ left | \ omega \ right | <\ omega_ {c} \ 0

& else

\ Конец {матрица} право. $$

Уравнение (6)

Чтобы найти эквивалентное представление во временной области, вычислим обратное преобразование Фурье с дискретным временем:

$$ h_ {d} (n) = \ frac {1} {2 \ pi} int _ {- \ pi} ^ {+ \ pi} H_ {d} ( omega) e ^ {j \ omega n} d \ омега $$

Уравнение (7)

Подставляя уравнение (6) в уравнение (7), получим:

$$ h_ {d} (n) = \ frac {1} {2 \ pi} int _ {- \ omega_ {c}} ^ {+ \ omega_ {c}} e ^ {j \ omega n} d \ omega = \ гидроразрыва {sin⁡ (п \ omega_ {C})} {п \ Pi} $$

Уравнение (8)

Уравнение (8) для $$ \ omega_ {c} = \ frac { pi} {4} $$ показано на рисунке (3):

Image
Image

Рисунок (3) Импульсный отклик идеального фильтра нижних частот с $$ \ omega_ {c} = \ frac { pi} {4} $$

Рисунок (3) показывает, что $$ h_ {d} (n) $$ нуждается в бесконечном количестве входных выборок для выполнения фильтрации и что система не является причинной системой.

Очевидным решением будет усечение импульсного отклика и использование, например, только 21 выборки ввода и принятие других коэффициентов равными нулю. Интуиция предполагает, что по мере увеличения количества образцов усеченный импульсный отклик будет ближе к идеальной импульсной характеристике на рисунке (3), и поэтому частотная характеристика достигнутого фильтра будет ближе к уравнению (6).

С другой стороны, по мере увеличения количества выборок потребуется больше оборудования. Если мы примем только 21 ответвление идеального ответа, будет три варианта, которые показаны на рисунках (4) - (6).

Первый вариант показан на рисунке (4). Этот импульсный отклик соответствует не причинной системе и не может быть использован.

Image
Image

Рисунок (4) Усеченный импульсный отклик: линейно-фазовый, но не причинный

Следующая опция показана на рисунке (5), которая, несмотря на то, что она причинная, не имеет ответ на линейную фазу (самое важное свойство системы FIR).

Image
Image

Рисунок (5) Усеченный импульсный отклик: причинная, но нелинейно-фазовая

Последняя опция показана на рисунке (6). Эта система является как причинной, так и линейной фазой. Единственным недостатком этой системы является ее задержка, которая составляет $$ \ frac {M-1} {2} $$ выборок. Другими словами, в ответ на импульс при $$ n = 0 $$ система не будет реагировать до почти $$ n = \ frac {M-1} {2} $$. Эта задержка может вызвать проблемы в некоторых приложениях.

Image
Image

Рисунок (6) Усеченный импульсный отклик: причинная и линейная фаза

Усечение импульсного отклика эквивалентно умножению $$ h_ {d} (n) $$ (или его сдвинутой версии) на прямоугольное окно $$ w (n) $$, равное единице для $$ n = 0, …, M-1 $$ и ноль в противном случае. Поэтому, учитывая применяемый сдвиг, получаем импульсную характеристику сконструированного фильтра:

$$ h (n) = h_ {d} (n- \ frac {M-1} {2}) w (n) $$

Уравнение (9)

Очевидно, что спектр прямоугольного окна заставит отклик фильтра отклоняться от идеального ответа в уравнении (6). На рисунке (7) сравнивается отклик разработанного фильтра с характеристикой идеального.

Этот рисунок показывает, что, в отличие от идеального фильтра, разработанный фильтр имеет более плавный переход от полосы пропускания к полосе стоп-сигнала. Кроме того, в полосе пропускания и полосе пропускания $$ H ( omega) $$ есть некоторые ряби. Как мы можем сделать переходную группу более резкой? Как мы можем уменьшить рябь? Какие еще варианты можно использовать вместо прямоугольного окна?

Image
Image

Рисунок (7) Частотная характеристика фильтра, разработанная прямоугольным окном

Резюме

  • Чтобы создать цифровой фильтр, нам нужно найти коэффициенты $$ a_ {k} $$ и $$ b_ {k} $$, в уравнении (1).
  • Фильтр FIR является частным случаем уравнения (1), где $$ a_ {0} = 1 $$ и $$ a_ {k} = 0 $$ для $$ k = 1, …, N-1 $ $.
  • Стабильность и линейно-фазовый отклик являются двумя наиболее важными преимуществами фильтра КИХ над фильтром IIR.
  • Частотная характеристика линейной фазы соответствует постоянной задержке.
  • Усечение импульсной характеристики эквивалентно умножению $$ h_ {d} (n) $$ на прямоугольное окно $$ w (n) $$, равное единице для $$ n = 0, …, M-1 $$ и ноль в противном случае.
  • Более широкие полосы перехода и рябь в полосе пропускания и полосы пропускания являются наиболее важными различиями между идеальными фильтрами и теми, которые разработаны методом окна.