Пример расчета полосового фильтра.
Произвести расчет ПФ при следующих исходных параметрах: wн = 0.3p, wв = 0.6p, Dp = 0.1p, d= 0.02.
1. А= -20 log d. А= 34. 2. N= p (A-7.95)/(14.36 Dp). N= 18.
3. b= 0.5842(A-21)0.4 +0.07886(A-21). b= 2.62. 4. hо= (wв-wн)/p. hо= 0.3
5. h(n)= (sin nwв-sin nwн)/(np). h(n)= 0.04521, -0.24490, -0.09515,...., 0.02721.
6. pn= Jo{b } / Jo{b}. pn = 1.00, 0.997, 0.9882, .......
7. Oператор фильтра: hn= h(n)pn, n=0,1,2,...,N. h-n=hn. hn= 0.3000, 0.04508, -0.2420, ........
8. Проверка по формуле: H(w) = hn cos nw, 0 £ w £ p.
Для оценки формы передаточной функции количество точек спектра в интервале 0-p достаточно задать равным 2N, т.е. с шагом Dw £ p/36.
(!!!КР7 - Разработка программы расчета сглаживающих НЦФ).
(!!!КР8 - Разработка программы расчета полосовых НЦФ).
4.4. Дифференцирующие цифровые фильтры.
Передаточная функция. Из выражения для производной
d(exp(jwt))/dt = jw exp(jwt)
следует, что при расчете фильтра производной массива данных необходимо аппроксимировать рядом Фурье передаточную функцию вида H(w) = jw. Поскольку коэффициенты такого фильтра будут обладать нечетной симметрией (h-n = -hn) и выполняется равенство
hn [exp(jwn)-exp(-jwn)] = 2j hn sin nw,
то передаточная характеристика фильтра имеет вид:
H(w) = 2j(h1 sin w + h2 sin 2w + ... + hN sin Nw),
т.е. является мнимой нечетной, a сам фильтр является линейной комбинацией разностей симметрично расположенных относительно sk значений функции. Уравнение фильтрации:
yn = hn(sk+n - sk-n).
Если дифференцированию подлежит низкочастотный сигнал, а высокие частоты в массиве данных представлены помехами, то для аппроксимации в пределах частотного диапазона 0-wN задается передаточная функция фильтра вида:
Hн(w) = w, w £ wв, Hн(w) = 0, wв< w £ wN.
Оператор дифференцирующего фильтра:
h(n) = (1/p) Hн(w) sin(npw/wN) dw, n = 0,1,2,... (4.4.1)
Принимая, как обычно, wN = p (Dt = 1) и решая (4.4.1) при Hн(w) = w, получаем:
hn = (1/p)[sin(nwв)/n2 - wв cos(nwв)/n], (4.4.2)
hо = 0, h-n = -hn.
Проверка: Hн(w) = hn sin nw = 2 hn sin nw . (4.4.3)
Рис. 4.4.1. Коэффициенты оператора фильтра. |
На рис. 4.4.1 приведен пример расчета коэффициентов дифференцирующего фильтра на интервал {0-0.5}p при Dt=1 (wв = p/2). Операторы дифференцирующих фильтров, как правило, затухают очень медленно и, соответственно, достаточно точная реализация функции (4.4.3) весьма затруднительна.
Рис. 4.4.2. Частотные функции фильтров. |
Ряд (4.4.3) усекается до N членов и с помощью весовых функций производится нейтрализация явления Гиббса. Явление Гиббса для дифференцирующих фильтров имеет весьма существенное значение и может приводить к большим погрешностям при обработке информации, если не произвести его нейтрализацию. Примеры ограничения оператора, приведенного на рис. 4.4.1, и соответствующие передаточные функции Hн'(w) усеченных операторов показаны на рис. 4.4.2.
Для оценки возможных погрешностей дифференцирования усеченными операторами произведем расчет фильтра при wв = p/2. По формулам (4.4.2) определяем:
h0-10 = 0, 0.3183, 0.25, -0.0354, -0.125, 0.0127, 0.0833, -0.0065, -0.0625, 0.0039, 0.05.
Произведем проверку работы фильтра на простом массиве данных sn = n, производная которого постоянна и равна 1. Для массива с постоянной производной фильтр может быть проверен в любой точке массива, в том числе и в точке n=0, для которой имеем:
у = hn so-n = 2 n hn,
при этом получаем: у=0.5512 при N=5, у=1.53 при N=10.
Рис. 4.4.3. Погрешность дифференцирования. |
Такое существенное расхождение с действительным значением производной объясняется тем, что при w=0 тангенс угла наклона реальных передаточных функций фильтра, как это видно на рисунке 4.4.2, весьма существенно отличается от тангенса угла наклона аппроксимируемой функции H(w)= w. На рис. 4.4.3 приведены частотные графики относительной погрешности дифференцирования s = Hн'(w)/Hн(w) с вычислением значений на нулевой частоте по пределам функций при N ® ¥. На рис. 4.4.4 приведен пример операции дифференцирования s*h гармоники s с частотой wo оператором с N=10 в сопоставлении с точным дифференцированием ds/dk.
Рис. 4.4.4. Пример операции дифференцирования. |
Применим для нейтрализации явления Гиббса весовую функцию Хемминга. Результат нейтрализации для фильтра с N=10 приведен на рис. 4.4.5. Повторим проверочный расчет дифференцирования на массиве sn = n и получим результат у=1.041, т.е. погрешность дифференцирования уменьшается порядок.
Рис. 4.4.5. Дифференцирование с применением весовой функции. |
Аналогично производится расчет и полосовых дифференцирующих фильтров с соответствующим изменением пределов интегрирования в (4.4.1) от wн до wв. При этом получаем:
hn = (wнcos nwн-wвcos nwв)/(np) + (sin nwв-sin nwн)/(n2p).
(!!!КР9- Разработка программы расчета НЦФ дифференцирования)
(!!!КР10- Оценка возможностей усечения операторов НЦФ, умноженных на весовые функции).
4.5. Гладкие частотные фильтры /л24/.
В некоторых случаях (при последовательном соединении фильтров, при выделении сигналов на уровне сильных помех и т.п.) осцилляции на передаточных характеристиках фильтров являются весьма нежелательными даже при их малой остаточной величине.
Принцип синтеза фильтров. Очевидно, что фильтры с гладкой передаточной характеристикой можно получить только в том случае, если возможно разложение передаточной функции в конечный ряд Фурье.
Допустим, мы имеем симметричный НЦФ с передаточной функцией:
H(w) = hо+ 2 hn cos nw. (4.5.1)
Как известно, cos nw равен полиному по cos w степени n, при этом выражение (4.5.1) можно записать в виде:
H(w) = gn (cos w)n = gn xn, (4.5.2)
где переменная х=cos w изменяется от -1 до 1 (поскольку w изменяется от 0 до p). Преобразование переменной представляет собой нелинейное растяжение оси абсцисс с поворотом на 180o (по переменной х передаточные функции ФНЧ похожи на ФВЧ и наоборот) с выражением функции через степенной полином. Последнее примечательно тем, что синтез гладких функций на базе степенных полиномов затруднений не представляет.
Так, например, для конструирования ФНЧ в качестве исходной может быть принята степенная функция вида:
g(x)= (1+x)z (1-x)r, (4.5.3)
где z и r - параметры.
Рис. 4.5.1. Примеры синтеза гладких фильтров. |
Функция (4.5.3) имеет нули порядка z и r в точках соответственно х = -1 и х = 1 (рис. 4.5.1), причем значения z и r характеризуют степень касания функцией оси абсцисс (чем больше порядок, тем медленнее функция "отрывается" от оси абсцисс).
Если функцию (4.5.3) проинтегрировать в пределах от -1 до х и пронормировать на значение интеграла от -1 до 1 , то будет получена гладкая передаточная характеристика низкочастотного фильтра (рисунке 4.5.1):
H(x)= g(x)dx / g(x)dx. (4.5.4)
Рис. 4.5.2. Схема возврата к ряду Фурье. |
Функция H(x) имеет перегиб в точке (z-r)/(z+r) и переходную зону, крутизна которой тем больше, чем больше значения z и r. Подстановкой x=cos w осуществляется возврат к частотной переменной с сохранением монотонности функции.
В заключение, для определения коэффициентов фильтра hn требуется осуществить обратное преобразование от степенной формы (4.5.2) к ряду Фурье (4.5.1). Выполнение данной операции достаточно просто производится рекурсивным способом, показанным на рис. 4.5.2. Подробное обоснование рекурсии приведено в /л24/.
Дата добавления: 2020-02-05; просмотров: 638;