logo search
Лекции по ЦО АВС

1.6.1 Принципы рекурсивной фильтрации

Конструкция РЦФ отображается в 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()|2 фильтра, что необходимо учитывать при конструировании фильтра.