Конструкция РЦФ отображается в z-образе передаточной функции фильтра в виде отношения двух многочленов:
H(z) = H0+H1z+H2z2+...= B(z)/[1+A(z)], (6.1.1)
где: B(z) = B0+B1z+B2z2+... +BNzN, A(z) = A1z+A2z2+... +AMzM.
Естественно, что переход на РЦФ имеет смысл только в том случае, если степень многочленов A(z) и B(z) во много раз меньше степени многочлена H(z) прямого z-преобразования импульсной реакции фильтра. При z-образе входных данных Х(z), на выходе РЦФ имеем:
Y(z) = H(z)Х(z) = X(z)B(z)/[1+A(z)],
Y(z)[1+A(z)] = Y(z)+Y(z)A(z) = X(z)B(z),
Y(z) = X(z)B(z)-Y(z)A(z). (6.1.2)
При обратном z-преобразовании выражения (6.1.2) получаем уравнение рекурсивной цифровой фильтрации:
yk =bn xk-n –am yk-m. (6.1.3)
Рис. 6.1.1. Схема РЦФ. |
Рекурсивная фильтрация требует задания начальных условий как по xk, так и по yk при k<0. Схема рекурсивной фильтрации приведена на рис. 6.1.1.
Как следует из выражения (6.1.3), при вычислении значения уk текущей точки используются предыдущие вычисленные значения уk-m, (m>0), что и определяет принцип рекурсии - фильтрации с обратной связью. Другой особенностью РЦФ является их односторонность и физическая реализуемость в реальном масштабе времени. При машинной обработке данных многочлен B(z) передаточной функции фильтра может реализоваться и в двухстороннем варианте.
|
|
Одно из важнейших свойств рекурсивных фильтров - возможность получения узких переходных зон при конструировании частотных фильтров, так как функция H(z) фильтра может резко изменяться при приближении к нулю многочлена в знаменателе (6.1.1).
Рекурсивная фильтрация требует более высокой точности вычислений по сравнению с нерекурсивной, т.к. использование предыдущих выходных отсчетов для текущих вычислений может приводить к накапливанию ошибок.
Практическая реализация РЦФ осуществляется в двух вариантах.
Рис. 6.1.2. Каскадная форма. Рис. 6.1.3. Параллельная форма.
Каскадная форма. Находятся корни многочленов А(z),B(z) и производится разложение H(z):
H(z) = , (6.1.4)
где G - масштабный множитель. Это позволяет применять каскадное построение фильтров, показанное на рис. 6.1.2, в котором:
H(z) = G H1(z) H2(z)..... HN(z),
Hn(z) = Bn(z)/An(z).
Функции Аn(z) и Bn(z) обычно представляются в виде биквадратных блоков (фильтров второго порядка):
Bn(z) = bn.0 + bn.1 z + bn.2 z2,
An(z) = 1 + an.1 z + an.2 z2.
Параллельная форма. Функция H(z) разлагается на элементарные дроби:
H(z) = Ho(z)Bn(z) / [1+An(z)],
что дает параллельную форму фильтра, показанную на рис. 6.1.3. Параллельная конструкция фильтра применяется много реже каскадной, хотя это может объясняться и тем, что в аналоговых фильтрах, исторически предшествовавших цифровым фильтрам, теоретическая база анализа и синтеза каскадных рекурсивных фильтров получила весьма детальное развитие.
|
|
Устранение сдвига фазы. Рекурсивные фильтры являются фазо- сдвигающими фильтрами. Если требуется обеспечить нулевой фазовый сдвиг, то операция фильтрации производится дважды, в прямом и обратном направлении числовой последовательности массива данных, при этом амплитудно-частотная характеристика (АЧХ) фильтрации будет равна |H(w)|2 фильтра, что необходимо учитывать при конструировании фильтра.