Фильтр с конечной импульсной характеристикой. Вопрос

Физически осуществимые цифровые фильтры работают в реальном масштабе времени, для формирования выходного сигнала в i-ый дискретный момент времени могут использовать следующие данные:

1. Значения выходного сигнала в текущей момент времени; так же некоторое количество прошлых отсчетов входного сигнала: x(i-1), x(i-2), x(i-m);

2. Некоторое количество предыдущих отсчетов выходного сигнала: y(i-1), y(i-2), y(i-n).

Целые числа m и n определяют порядок цифрового фильтра. Фильтры классифицируются в зависимости от того, как используется информация о прошлом состоянии системы.

Фильтры с КИХ или не рекурсивные фильтры, работающие в соответствии со следующим алгоритмом.

M – порядок фильтра.

Не рекурсивный фильтр производит взвешивание, суммирование предыдущих отсчётов входного сигнала. Прошлые отсчеты выходного сигнала не используются.

H(z) – системная функция.

Системная функция имеет m нулей и один полюс, при z=0.

Алгоритм функционирования цифрового фильтра с КИХ показан на рис.45.

Основными элементами фильтра служат блоки задержки отсчетов значений на 1 интервал дискретизации .

Масштабные блоки, выполняющие умножение на весовые коэффициенты в цифровой форме. С выхода масштабных блоков сигнал поступает в сумматор, где вычисляется выходной сигнал.

Данная структурная схема не является электрической, а служит графическим изображением алгоритма обработки сигнала на ЭВМ. Выходными и входными данными для такого алгоритма служат массивы чисел.

Применим к системным функциям обратное Z – преобразование и найдем импульсную характеристику:

(импульсная характеристика фильтра).

Импульсная характеристика КИХ фильтра содержит конечное число элементов и данный фильтр всегда устойчив.

Найдем частотную характеристику выполнив подстановку

T=1/fs – интервал дискретизации.

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

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

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

Итак, для начала несколько простых базовых понятий.

1. Импульсная характеристика.

Положим, у нас есть коробка с четырьмя выводами. Мы без понятия, что там внутри, но зато точно знаем, что два левых вывода — вход, а два правых — выход. Давайте попробуем подать на нее очень короткий импульс очень большой амплитуды и посмотрим, что будет на выходе. Ну а чего, все равно что внутри этого четырехполюсника — неясно, потому как его описывать — непонятно, а так хоть что-то увидим.

Тут надо сказать, что короткий (вообще говоря, бесконечно короткий) импульс большой (вообще говоря, бесконечной) амплитуды в теории называется дельта-функцией. К слову, самое смешное, что интеграл от этой бесконечной функции равен единице . Такая вот нормировка.

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

2. Свертка.

Если говорить коротко, то свертка — это математическая операция, сводящаяся к интегрированию произведения функций:

Обозначается, как видно, звездочкой. Также видно, что при свертке одна функция берется в своем «прямом» порядке, а вторую мы проходим «задом наперед». Разумеется, в более ценном для человечества дискретном случае свертка, как и всякий интеграл, переходит в суммирование:

Казалось бы, некая унылая математическая абстракция. Однако на самом деле свертка — пожалуй самое волшебное явление этого мира, по удивительности уступающее разве только появлению человека на свет, с той лишь разницей, что откуда берутся дети большинство людей узнает в самом крайнем случае годам к восемнадцати, в то время как про то, что такое свертка и чем она полезна и удивительна, огромная часть населения Земли совершенно не догадывается всю свою жизнь.

Так вот, мощь этой операции заключается в том, что если f — любой произвольный входной сигнал, а g — импульсная характеристика четырехполюсника, то результат свертки этих двух функций будет аналогичен тому, что мы получили бы, пропустив сигнал f через этот четырехполюсник.

То есть, импульсная характеристика представляет собой полный слепок всех свойств четырехполюсника по отношению к входному воздействию, и свертка входного сигнала с оной позволяет восстановить соответствующий ему выходной сигнал. Как по мне, это просто потрясающе!

3. Фильтры.

С импульсной характеристикой и сверткой можно творить много интересного. Например, если сигнал звуковой, можно организовывать реверберацию, эхо, хорус, флэнджер и много, много другого; можно дифференцировать и интегрировать… В общем, творить что угодно. Для нас же сейчас важнее всего то, что, разумеется, с помощью свертки так же легко получаются и фильтры.

Собственно цифровой фильтр и есть свертка входного сигнала с импульсной характеристикой, соответствующей желаемому фильтру.

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

4. Получение импульсной характеристики.

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

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

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

Z-преобразование (aka преобразование Лорана) — версия преобразования Лапласа для дискретных систем.

То есть, применив преобразование Лапласа (или Z-преобразование, по необходимости) к функции, описывающей желаемый фильтр, подставив в полученное единицу и преобразовав обратно, мы получим импульсную характеристику. Звучит легко, желающие могут попробовать. Я не рискну, ибо, как уже было сказано, преобразование Лапласа — суровая вещь, особенно обратное. Оставим его на крайний случай, а сами поищем какие-нибудь более простые способы получения искомого. Их есть несколько.

Во-первых, можно вспомнить про еще один удивительный факт природы — амплитудно-частотная и импульсная характеристики связаны между собой добрым и знакомым преобразованием Фурье. Это значит, что мы можем нарисовать любую АЧХ на свой вкус, взять от нее обратное преобразование Фурье (хоть непрерывное, хоть дискретное) и получить импульсную характеристику той системы, что ее реализует. Это просто потрясающе!

Тут, правда, не обойдется без проблем. Во-первых, импульсная характеристика, которую мы получим, скорее всего будет бесконечной (не буду пускаться в объяснения почему; так устроен мир), так что нам придется волевым решением обрезать ее в какой-то точке (положив равной нулю дальше этой точки). Но это не пройдет просто так — следствием этого, как и следует ожидать, будут искажения АЧХ рассчитанного фильтра — она станет волнистой, а частотный срез размоется.

Для того, чтобы минимизировать эти эффекты, к укороченной импульсной характеристике применяются различные сглаживающие оконные функции. В результате АЧХ обычно размывается еще больше, зато исчезают неприятные (особенно в полосе пропускания) осцилляции.

Собственно, после такой обработки мы получаем рабочую импульсную характеристику и можем строить цифровой фильтр.

Второй метод рассчета еще проще — импульсные характеристики наиболее популярных фильтров давно выражены в аналитическом виде за нас. Остается только подставить свои значения и применить к результату оконную функцию по вкусу. Так что можно даже не считать никаких преобразований.

Ну и, конечно, если стоит цель эмулировать поведение какой-то конкретной схемы, можно получить ее импульсную характеристику в симуляторе:

Здесь я подал на вход RC-цепи импульс напряжением 100500 вольт (да, 100.5 кВ) длительностью 1 мкс и получил ее импульсную характеристику. Понятно, что в реальности такого не сделать, но в симуляторе этот метод, как видно, прекрасно работает.

5. Примечания.

Вышесказанное насчет укорочения импульсной характеристики относилось, конечно, к т.н. фильтрам с конечной импульсной характеристикой (FIR/КИХ-фильтрам). Они обладают кучей ценных свойств, включая линейную фазу (при определенных условиях построения импульсной характеристики), которая дает отсутствие искажений сигнала при фильтрации, а также абсолютную стабильность. Есть и фильтры с бесконечной импульсной характеристикой (IIR/БИХ-фильтры). Они менее ресурсоемки в смысле рассчетов, но уже не имеют перечисленных преимуществ.

В следующей статье я надеюсь разобрать простой пример практической реализации цифрового фильтра.

Лекция №10

«Цифровые фильтры с конечной импульсной характеристикой»

Передаточная функция физически реализуемого цифрового фильтра с конечной импульсной характеристикой (КИХ-фильтра) может быть представлена в виде

(10.1).

При замене в выражении (10.1) получим частотную характеристику КИХ-фильтра в виде

(10.2),

где - амплитудно-частотная характеристика (АЧХ) фильтра,

- фазо-частотная характеристика (ФЧХ) фильтра.

Фазовая задержка фильтра определяется как

(10.3).

Групповая задержка фильтра определяется как

(10.4).

Отличительной особенностью КИХ-фильтров является возможность реализации у них постоянных фазовой и групповой задержек, т.е. линейной ФЧХ

(10.5),

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

Для вывода условий, обеспечивающих линейную ФЧХ запишем частотную характеристику КИХ-фильтра с учетом (10.5)

(10.6).

Приравнивая действительные и мнимые части этого равенства, получим

(10.7).

Разделив второе уравнение на первое, получим

(10.8).

Окончательно можно записать

(10.9).

Это уравнение имеет два решения. Первое при a =0 соответствует уравнению

(10.10).

Это уравнение имеет единственное решение, соответствующее произвольному h (0) (sin (0)=0), и h (n )=0 при n >0. Это решение соответствует фильтру, импульсная характеристика которого имеет единственный ненулевой отсчет в начальный момент времени. Такой фильтр на представляет практического интереса.

Другое решение найдем для . При этом перекрестно перемножив числители и знаменатели в (10.8) получим

(10.11).

Отсюда имеем

(10.12).

Поскольку это уравнение имеет вид ряда Фурье, то его решение, если оно существует, является единственным.

Легко заметить, что решение этого уравнения должно удовлетворять условиям

(10.13),

(10.14).

Из условия (10.13) следует, что для каждого порядка фильтра N существует только одна фазовая задержка a , при которой может достигаться строгая линейность ФЧХ. Из условия (10.14) следует, что импульсная характеристика фильтра должна быть симметричной относительно точки для нечетного N , и относительно средней точки интервала (рис.10.1).



Частотную характеристику такого фильтра (для нечетного N ) можно записать в виде

(10.15).

Делая во второй сумме замену m = N -1- n , получим

(10.16).

Поскольку h (n )= h (N -1- n ), то две суммы можно объединить


(10.17).

Подставив , получим

(10.18).

Если обозначить

(10.19),

то окончательно можно записать

(10.20).

Таким образом, для фильтра с линейной ФЧХ имеем

(10.21).

Для случая четного N аналогично будем иметь

(10.22).

Делая замену во второй сумме , получим

(10.23).

Делая замену , получим

(10.24).

Обозначив

(10.25),

будем окончательно иметь

(10.26).

Таким образом, для КИХ-фильтра с линейной ФЧХ и четным порядком N можно записать

(10.27).

В дальнейшем, для простоты будем рассматривать только фильтры с нечетным порядком.

При синтезе передаточной функции фильтра исходными параметрами, как правило, являются требования к частотной характеристике. Существует много методик синтеза КИХ-фильтров. Рассмотрим некоторые из них.

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

(10.28),

где коэффициенты ряда Фурье равны

(10.29).

Видно, что коэффициенты ряда Фурье h (n ) совпадают с коэффициентами импульсной характеристики фильтра. Поэтому, если известно аналитическое описание требуемой частотной характеристики фильтра, то по нему можно легко определить коэффициенты импульсной характеристики, а по ним – передаточную функцию фильтра. Однако на практике это не реализуемо, поскольку импульсная характеристика такого фильтра имеет бесконечную длину. Кроме того, такой фильтр физически не реализуем поскольку импульсная характеристика начинается в - ¥ , и никакая конечная задержка не сделает это фильтр физически реализуемым.

Одним из возможных методов получения КИХ-фильтра, аппроксимирующего заданную частотную характеристику заключается в усечении бесконечного ряда Фурье и импульсной характеристики фильтра, полагая что h (n )=0 при . Тогда

(10.30).

Физическая реализуемость передаточной функции H (z ) может быть достигнута путем умножения H (z ) на .

(10.31),

где

(10.32).

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

В качестве примера расчитаем КИХ-фильтр низких частот с частотной характеристикой вида

(10.33).

В соответствии с (10.29) коэффициенты импульсной характеристики фильтра описываются выражением

(10.34).

Теперь из (10.31) можно получить выражение для передаточной функции

(10.35),

где

(10.36).

Амплитудные характеристики рассчитанного фильтра для различных N представлены на рис.10.2.

Рис.10.2

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

Из рис.10.2 видно, что с увеличением N частота пульсаций растет, а амплитуда уменьшается как на нижних, так и на верхних частотах. Однако амплитуда последней пульсации в полосе пропускания и первой пульсации в полосе задерживания остаются практически неизменными. На практике такие эффекты часто нежелательны, что требует отыскания путей снижения пульсаций Гиббса.

Усеченную импульсную характеристику h (n ) можно представить в виде произведения требуемой бесконечной импульсной характеристики и некоторой функции окна w (n ) длины n (рис.10.3).

(10.37).



В рассмотренном случае простого усечения ряда Фурье используется прямоугольное окно

(10.38).

В этом случае частотную характеристику фильтра можно представить в виде комплексной свертки

(10.39).

Это значит, что будет «размытой» версией требуемой характеристики .

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

Спектр функции прямоугольного окна можно записать как

(10.40).

Спектр функции прямоугольного окна представлен на рис.10.4.

Рис.10.4

Поскольку при , то ширина главного лепестка спектра оказывается равной .

Наличие боковых лепестков в спектре функции окна приводит к увеличению пульсаций Гиббса в АЧХ фильтра. Для получения малых пульсаций в полосе пропускания и большого затухания в полосе задерживания необходимо, чтобы площадь, ограниченная боковыми лепестками, составляла малую долю от площади, ограниченной главным лепестком.

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

Таким образом, свойства подходящих функций окна можно сформулировать следующим образом:

- функция окна должна быть ограничена во времени;

- спектр функции окна должен наилучшим образом аппроксимировать функцию, ограниченную по частоте, т.е. иметь минимум энергии за пределами основного лепестка;

- ширина основного лепестка спектра функции окна должна по возможности малой.

Наиболее часто используют следующие функции окон:

1. Прямоугольное окно. Рассмотрено выше.

2. Окно Хэмминга (Hamming) .

(10.41),

где .

При это окно называется окном Хэнна ( hanning ).

3. Окно Блэкмана (Blackman) .


(10.42).

4. Окно Бартлета (Bartlett) .

(10.43).

Показатели фильтров, построенных с применением указанных функций окон, сведены в таблицу 10.1.

Окно

Ширина главного лепестка

Коэффициент пульсаций, %

N=11

N=21

N=31

Прямоугольное

22.34

21.89

21.80

Хэннинга

2.62

2.67

2.67

Хэмминга

1.47

0.93

0.82

Блэкмана

0.08

0.12

0.12

Коэффициент пульсации определяется как отношение максимальной амплитуды бокового лепестка к амплитуде главного лепестка в спектре функции окна.

Для выбора требуемого порядка фильтра и наиболее подходящей функции окна при расчете реальных фильтров можно использовать данные таблицы 10.2.

переходной

Неравномерность

пропускания (дБ)

Затухание в

заграждения (дБ)

Прямоугольное

Хэннинга

Хэмминга

Блэкмана

Как видно из таблицы 10.1, существует определенная зависимость между коэффициентом пульсаций и шириной главного лепестка в спектре функции окна. Чем меньше коэффициент пульсаций, тем больше ширина главного лепестка, а значит и переходной зоны в АЧХ фильтра. Для обеспечения малой пульсации в полосе пропускания приходится выбирать окно с подходящим коэффициентом пульсаций, а требуемую ширину переходной зоны обеспечивать повышенным порядком фильтра N .

Эту проблему можно решить с помощью окна, предложенного Кайзером (Kaiser ). Функция окна Кайзера имеет вид

(10.44),

где a - независимый параметр, , I 0 – функция Бесселя первого рода нулевого порядка, определяемая выражением

(10.45).

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

Основными параметрами, задаваемыми при разработке реального фильтра являютя:

Полоса пропускания - w p ;

Полоса заграждения - w a ;

Максимально допустимая пульсация в полосе пропускания – A p ;

Минимальное затухание в полосе задерживания – A a ;

-частота дискретизации - w s .

Эти параметры иллюстрируются на рис.10.5. При этом максимальная пульсация в полосе пропускания определяется как

(10.46),

а минимальное затухание в полосе задерживания как

Сравнительно простая процедура расчета фильтра с окном Кайзера включает в себя следующие этапы:

1.Определяется импульсная характеристика фильтра h (n ) при условии, частотная характеристика является идеальной

(10.48),

где (10.49).

2. Выбирается параметр d как

(10.50),

где (10.51).

3.Вычисляется истинное значение A a и A p по формулам (10.46), (10.47).

4.Выбирается параметр a как

(10.52).

5.Выбирается параметр D как

(10.53).

6.Выбирается наименьшее нечетное значение порядка фильтра из условия

(10.54),

(10.57)

следует, что

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

Количество разрядов дробной части коэффициентов фильтра определяется из условия удовлетворения передаточной функции фильтра с квантованными коэффициентами, заданных требований по приближению к эталонной передаточной функции с точными значениями коэффициентов.

Абсолютные величины отсчетов входных сигналов фильтра обычно нормированы так, что

Если анализ проводится для КИХ-фильтра с линейной ФЧХ, то алгоритм вычисления его выходного сигнала может быть следующим

где - округленные до s k коэффициенты фильтра.

Этому алгоритму соответствует структурная схема фильтра, представленная на рис.10.5.



Существуют два способа реализации этого алгоритма. В первом случае все операции умножения выполняются точно и округление произведений отсутствует. В этом случае разрядность произведений равна s in +s k , где s in – разрядность входного сигнала, а s k – разрядность коэффициентов фильтра. В этом случае структурная схема фильтра, представленная на рис.10.5 точно соответствует реальному фильтру.

При втором способе реализации алгоритма (10.61) каждый результат операции умножения округляется, т.е. произведения вычисляются с некоторой погрешностью. В этом случае необходимо изменить алгоритм (10.61) так, чтобы учесть погрешность вносимую, округлением произведений

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

(10.66),

т.е. зависит от дисперсии шума округления входного сигнала и значений коэффициентов фильтра. Отсюда можно найти требуемое количество разрядов входного сигнала как

(10.67).

По известным значениям s in и s k можно определить количество разрядов, необходимое для дробной части кода выходного сигнала как

Если значения отсчетов выходного сигнала вычисляются по второму способу, когда каждое произведение округляется до s д разрядов, то дисперсию шума округления, создаваемого каждым из умножителей можно выразить через разрядность произведения как

DR in и отношения сигнал-шум на выходе фильтра SNR out . Значение динамического диапазона входного сигнала в децибелах определяется как

(10.74),

где A max и A min – максимальная и минимальная амплитуды входного сигнала фильтра.

Отношение сигнал-шум на выходе фильтра, выраженное в децибелах, определяется как

(10.75),

определяет среднеквадратическое значение мощности выходного синусоидального сигнала фильтра с амплитудой A min , а

(10.77)

определяет мощность шума на выходе фильтра. Из (10.75) и (10.76) при A max =1 получаем выражение для дисперсии выходного шума фильтра

(10.78).

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

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

ФАКУЛЬТЕТ АВТОМАТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

Кафедра Систем Сбора и Обработки Данных

Дисциплина «Теория и обработка сигналов»

ЛАБОРАТОРНАЯ РАБОТА № 10

ЦИФРОВЫЕ ФИЛЬТРЫ

С КОНЕЧНОЙ ИМПУЛЬСНОЙ ХАРАКТЕРИСТИКОЙ

Группа: АТ-33

Вариант: 1 Преподаватель :

Студент: Шадрина А.В. доц. Щетинин Ю.И.

Цель работы: изучение методов анализа и синтеза фильтров с конечной импульсной характеристикой с использованием сглаживающих оконных функций.

Выполнение работы:

1. Графики импульсной характеристики КИХ-фильтра нижних частот с прямоугольным окном частотой среза для значений длины фильтра и .

Импульсная характеристика идеального дискретного КИХ-фильтра имеет бесконечную длину и не равна нулю для отрицательных значений :

.

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

Значение – это длина (размер) фильтра, – порядок фильтра.

Matlab Script (labrab101.m)

N = input("Введите длину фильтра N = ");

h = sin(wc.*(n-(N-1)/2))./(pi.*(n-(N-1)/2));

xlabel("Номер отсчёта, n")

>> subplot(2,1,1)

>> labrab101

Введите длину фильтра N = 15

>> title("Импульсная характеристика КИХ-фильтра для N=15")

>> subplot(2,1,2)

>> labrab101

Введите длину фильтра N = 50

>> title("Импульсная характеристика КИХ-фильтра для N=50")

Рис.1. Графики импульсной характеристики КИХ-фильтра нижних частот с прямоугольным окном частотой среза для значений длины фильтра и

Комментарий: Если рассматривать частотную характеристику цифрового фильтра как ряд Фурье: , то коэффициенты этого ряда будут представлять собой значения импульсной характеристики фильтра. В данном случае было проведено усечение ряда Фурье в первом случае до , а во втором – до , а затем усеченные характеристики были сдвинуты по оси отсчётов вправо на для получения каузального фильтра. При ширина главного лепестка составляет 2, а при - 1, т.е. при увеличении длины фильтра главный лепесток импульсной характеристики сужается. Если же рассматривать уровень боковых лепестков (с помощью ), то при увеличении он увеличился по абсолютной величине с до . Таким образом, можно сделать вывод, что при использовании аппроксимации идеальной АЧХ фильтра прямоугольным окном нельзя одновременно сузить главный лепесток (и тем самым уменьшить переходную область) и уменьшить уровни боковых лепестков (уменьшить пульсации в полосах пропускания и задерживания фильтра). Единственным управляемым параметром прямоугольного окна является его размер, с помощью которого можно влиять на ширину главного лепестка, однако же, на боковые лепестки он особого влияния не оказывает.

2. Вычисление ДВПФ импульсных характеристик из п.1 с помощью функции . Графики их АЧХ в линейном масштабе и в децибелах для 512 отсчетов частоты. Полоса пропускания, переходная полоса и полоса задерживания фильтра. Влияние порядка фильтра на ширину переходной полосы и уровень пульсаций АЧХ в полосах пропускания и задерживания.

Matlab Function (DTFT.m)

function = DTFT(x,M)

N = max (M, length(x));

% Приведение FFT к размеру 2^m

N = 2^ (ceil (log (N)/log (2)));

% Вычисление fft

% Вектор частот

w = 2*pi*((0:(N-1))/N);

w = w - 2*pi*(w>=pi);

% Сдвиг FFT к интервалу от -pi до +pi

X = fftshift(X);

w = fftshift(w);

Matlab Script (labrab102.m)

h1 = sin(wc.*(n1-(N1-1)/2))./(pi.*(n1-(N1-1)/2));

h2 = sin(wc.*(n2-(N2-1)/2))./(pi.*(n2-(N2-1)/2));

DTFT(h1,512);

DTFT(h2,512);

plot(w./(2*pi),abs(H1)./max(abs(H1)),"r")

xlabel("f, Гц"), ylabel("|H1|/max(|H1|)"), grid

plot(w./(2*pi),abs(H2)./max(abs(H2)),"b")

xlabel("f, Гц"), ylabel("|H2|/max(|H2|)"), grid

plot(w./(2*pi),20*log10(abs(H1)),"r")

title("АЧХ КИХ-фильтра нижних частот с прямоугольным окном для N = 15")

xlabel("f, Гц"), ylabel("20lg(|H1|), dB"), grid

plot(w./(2*pi),20*log10(abs(H2)),"b")

title("АЧХ КИХ-фильтра нижних частот с прямоугольным окном для N = 50")

xlabel("f, Гц"), ylabel("20lg(|H2|), dB"), grid

Рис.2. Графики АЧХ КИХ-фильтра нижних частот с прямоугольным окном частотой среза для значений длины фильтра и в линейном масштабе

Рис.3. Графики АЧХ КИХ-фильтра нижних частот с прямоугольным окном частотой среза для значений длины фильтра и в логарифмическом масштабе

Комментарий:

Таблица.1. Диапазон полосы пропускания, переходной области и полосы задерживания для значений длины фильтра и

Длина фильтра

Полоса пропускания, Гц

Переходная область, Гц

Полоса задерживания, Гц

  • 7 Общие сведения о сигналах. Классификация сигналов.
  • 8 Формы представления сигналов. Аналоговые, дискретные, цифровые сигналы.
  • 9 Детерминированные и случайные сигналы: периодические, почти периодические, переходные, стационарные, эргодические, нестационарные.
  • 10 Вычисление числовых характеристик сигналов
  • 11 Параметры, характеризующие форму сигнала
  • 12 Интегрирование полигармонических сигналов в частотной области
  • 13 Формирование периодических сигналов. Табличный способ.
  • 14 Формирование полигармонических сигналов.
  • 15 Единичный импульс. Представление дискретных сигналов.
  • 16 Дискретизация непрерывных сигналов. Теорема Котельникова. Частота Найквиста.
  • 17 Линейные системы, инвариантные к сдвигу.
  • 18 Импульсная характеристика линейных систем. Устойчивость и физическая реализуемость.
  • 19 Ряд Фурье и интегральное преобразование Фурье. Ряд Фурье в комплексной форме.
  • 20 Преобразование Фурье для прямоугольного импульса.
  • 21 Представление периодической последовательности единичных импульсов в частотной области.
  • 23 Быстрое преобразование Фурье. Алгоритм с прореживанием по времени. (цос_материалы_лекций 24-30)
  • 24 Алгоритм двоичной инверсии. Базовая операция бпф. (26-30)
  • 25 Применение бпф для обработки действительных последовательностей. (цос_материалы_лекций 29-31)
  • 26 Понятие линейной дискретной системы//метода 8.1
  • 27 Импульсная характеристика линейных систем. Устойчивость и физическая
  • 28. Цифровая свертка сигналов.
  • 29 Линейные разностные уравнения с постоянными коэффициентами.
  • 30 Z-преобразование: реализация, свойства, применение.
  • 32 Типовые z-преобразования. Z-преобразование цифрового единичного скачка.
  • 33 Типовые z-преобразования. Z-преобразование убывающей дискретной экспоненты.
  • 34 Обратное z-преобразование. Способы вычисления.
  • 35 Передаточная функция линейной дискретной системы. Определение по импульсной характеристике. (См. Вопрос)
  • 36 Передаточная функция линейной дискретной системы. Определение по разностному уравнению. Нули и полюсы.
  • 37 Передаточная функция звена первого порядка.
  • 38 Передаточная функция звена второго порядка.
  • 39 Частотная характеристика линейной дискретной системы.
  • 40 Расчет ачх и фчх по передаточной функции.
  • 41 Расчет ачх и фчх звена первого порядка.
  • 42 Расчет ачх и фчх звена второго порядка.
  • 43. Понятие цифрового фильтра.
  • 44 Этапы проектирования цифрового фильтра.
  • 45 Обеспечение линейности фчх цифрового фильтра.
  • 46 Цифровые фильтры с бесконечной импульсной характеристикой. Метод билинейного z-преобразования расчета бих-фильтров низкой частоты.
  • 47 Цифровые фильтры с бесконечной импульсной характеристикой. Метод билинейного z-преобразования расчета бих-фильтров высокой частоты.
  • 48 Цифровые фильтры с конечной импульсной характеристикой. Расчет ких-фильтров.
  • 49 Сглаживание данных. Скользящее усреднение.
  • 50 Сглаживание данных. Сглаживание параболами.
  • 51 Сглаживание данных. Сглаживание Спенсера.
  • 52 Сглаживание данных. Медианная фильтрация.
  • 53 Определение параметров тренда методом наименьших квадратов.
  • 54 Понятие вейвлет-преобразования, отличие от преобразования Фурье.
  • 55 Математическое описание вейвлетных функций.
  • 56 Расчет дискретных вейвлетов.
  • 48 Цифровые фильтры с конечной импульсной характеристикой. Расчет ких-фильтров.

    Фильтр с конечной импульсной характеристикой (Нерекурсивный фильтр , КИХ-фильтр ) или FIR-фильтр (FIR сокр. от finite impulse response - конечная импульсная характеристика) - один из видов линейных цифровых фильтров, характерной особенностью которого является ограниченность по времени его импульсной характеристики (с какого-то момента времени она становится точно равной нулю). Такой фильтр называют ещё нерекурсивным из-за отсутствия обратной связи. Знаменатель передаточной функции такого фильтра - некая константа.

    Разностное уравнение, описывающее связь между входным и выходным сигналами фильтра: гдеP - порядок фильтра,x (n ) - входной сигнал,y (n ) - выходной сигнал, аb i - коэффициенты фильтра. Иными словами, значение любого отсчета выходного сигнала определяется суммой масштабированных значенийP предыдущих отсчетов. Можно сказать иначе: значение выхода фильтра в любой момент времени есть значение отклика на мгновенное значение входа и сумма всех постепенно затухающих откликовP предыдущих отсчетов сигнала, которые всё ещё оказывают влияние на выход (послеP -отсчетов импульсная переходная функция становится равной нулю, как уже было сказано, поэтому все члены послеP -го тоже станут равными нулю). Запишем предыдущее уравнение в более ёмком виде:

    Для того, чтобы найти ядро фильтра положим

    x (n ) = δ(n )

    где δ(n ) - дельта-функция. Тогда импульсная характеристика КИХ-фильтра может быть записана как:

    Z-преобразование импульсной характеристики даёт нам передаточную функцию КИХ-фильтра:

    ]Свойства

    КИХ-фильтр обладает рядом полезных свойств, из-за которых он иногда более предпочтителен в использовании, чем БИХ-фильтр. Вот некоторые из них:

      КИХ-фильтры устойчивы.

      КИХ-фильтры при реализации не требуют наличия обратной связи.

      Фаза КИХ-фильтров может быть сделана линейной

    Прямая форма КИХ фильтра

    КИХ фильтры могут быть реализованы с использованием трех элементов: умножитель, сумматор и блок задержки. Вариант, показанный на рисунке есть прямая реализация КИХ-фильтров типа 1.

    Реализация прямой формы КИХ фильтра

    Пример программы

    Ниже приведен пример программы КИХ-фильтра, написанный на C:

    /* КИХ Фильтр на 128 отводов */

    float fir_filter(float input)

    static float sample;

    acc = 0.0f; /* Аккумулятор */

    /* Умножение с накоплением */

    for (i = 0; i < 128; i++) {

    acc += (h[i] * sample[i]);

    /* Выход */

    /* Смещаем задержаный сигнал */

    for (i = 127; i > 0; i--)

    sample[i] = sample;

    49 Сглаживание данных. Скользящее усреднение.

    50 Сглаживание данных. Сглаживание параболами.

    51 Сглаживание данных. Сглаживание Спенсера.

    52 Сглаживание данных. Медианная фильтрация.

    Скользящее усреднение, сглаживание пораболами, сглаживание Спенсера, медианная фильтрация

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

    Для устранения такого эффекта можно применить сглаживание данных. Одним из наиболее простых способов такого сглаживание является арифметическое усреднение. При его применении каждое -ое значение дискретной функции (обрабатываемого массива данных) вычисляется в соответствии с выражением:

    где - количество точек для арифметического усреднения (нечетное целое число);

    Ое значение функции до обработки;

    Известны и другие, достаточно эффективные способы сглаживания, например, параболами второй степени по пяти, семи, девяти и одиннадцати точкам в соответствии с выражениями:

    или параболами четвертой степени по семи, девяти, одиннадцати и тринадцати точкам:

    В практических применениях дают хорошие результаты другие эффективные способы, например, 15-точечное сглаживание Спенсера:

    Подставив в эти выражения комплексную экспоненту , где, можно определить передаточную функциюсоответствующего преобразования.

    Для арифметического усреднения

    Выражение в скобках представляет собой геометрическую прогрессию со знаменателем, следовательно это выражение можно представить в виде:

    .

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

    Однако смысловое понятие частоты при обработке временных трендов отличается от аналогичного понятия при обработке сигналов. Это объясняется тем, что при исследовании временных трендов интерес представляет не их частотный состав, а вид изменения (увеличение, уменьшение, постоянство, цикличность и т.д.).

    Также достаточно эффективно для сглаживания данных применение, так называемых, эвристических алгоритмов.

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

    Рисунок 6.1 - Графики передаточной характеристики

    операции арифметического усреднения для m=5, 7, 9, 11

    Другим интересным алгоритмом сглаживания является медианное усреднение. Его сущность состоит в следующем. В скользящем временном окне, размерности (- целое нечетное число), элементы массива данных упорядочиваются в порядке возрастания, а затем из упорядоченной последовательности удаляется попервых и последних элементов (<). Центральный элемент временного окна из последовательности сглаживаемых данных заменяется значением, вычисляемым как

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

    "
    Интернет