Вопрос. Цифровые фильтры с конечной импульсной характеристикой (КИХ). Цифровые фильтры с конечной импульсной характеристикой Цифровые фильтры ачх

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

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

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

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

ЛАБОРАТОРНАЯ РАБОТА № 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. Диапазон полосы пропускания, переходной области и полосы задерживания для значений длины фильтра и

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

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

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

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

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

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

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

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

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

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

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

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

2. Свертка.

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

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

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

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

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

3. Фильтры.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Динамические характеристики

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

#define N 100 // порядок фильтра float h[ N] = { #include “f1.h” }; //вставка файла с известными коэффициентами фильтра float x[ N] ; float y[ N] ; short my_FIR(short sample_data) { float result = 0 ; for ( int i = N - 2 ; i >= 0 ; i-- ) { x[ i + 1 ] = x[ i] ; y[ i + 1 ] = y[ i] ; } x[ 0 ] = (float ) sample_data; for (int k = 0 ; k < N; k++ ) { result = result + x[ k] * h[ k] ; } y[ 0 ] = result; return ((short ) result) ; }

См. также

Ссылки

  • Расчет КИХ фильтра с линейной фазочастотной характеристикой методом частотной выборки

Wikimedia Foundation . 2010 .

  • Ромодин, Владимир Александрович
  • Вохма (река)

Смотреть что такое "Фильтр с конечной импульсной характеристикой" в других словарях:

    Фильтр - получить на Академике действующий промокод BeTechno или выгодно фильтр купить со скидкой на распродаже в BeTechno

    фильтр с конечной импульсной характеристикой - — Тематики электросвязь, основные понятия EN finite impulse response (filter)FIR … Справочник технического переводчика

    Фильтр с бесконечной импульсной характеристикой - (Рекурсивный фильтр, БИХ фильтр) или IIR фильтр (IIR сокр. от infinite impulse response бесконечная импульсная характеристика) линейный электронный фильтр, использующий один или более своих выходов в качестве входа, то есть… … Википедия

    КИХ-фильтр

    Нерекурсивный фильтр - Фильтр с конечной импульсной характеристикой (нерекурсивный фильтр, КИХ фильтр, FIR фильтр) один из видов линейных электронных фильтров, характерной особенностью которого является ограниченность по времени его импульсной характеристики (с какого … Википедия

    Рекурсивный фильтр - Фильтр с бесконечной импульсной характеристикой (Рекурсивный фильтр, БИХ фильтр) линейный электронный фильтр, использующий один или более своих выходов в качестве входа, то есть образует обратную связь. Основным свойством таких фильтров является … Википедия

    Цифровой фильтр - Цифровой фильтр в электронике любой фильтр, обрабатывающий цифровой сигнал с целью выделения и/или подавления определённых частот этого сигнала. В отличие от цифрового, аналоговый фильтр имеет дело с аналоговым сигналом, его свойства… … Википедия

    Дискретный фильтр - Цифровой фильтр в электронике любой фильтр, обрабатывающий цифровой сигнал с целью выделения и/или подавления определённых частот этого сигнала. В отличие от цифрового аналоговый фильтр имеет дело с аналоговым сигналом, его свойства недискретны,… … Википедия

    Линейный фильтр - Линейный фильтр динамическая система, применяющая некий линейный оператор ко входному сигналу для выделения или подавления определённых частот сигнала и других функций по обработке входного сигнала. Линейные фильтры широко применяются в… … Википедия

    Скользящая средняя (фильтр) - У этого термина существуют и другие значения, см. Скользящая средняя (значения). Блок схема простого КИХ фильтра второго порядка, реализующего скользящее среднее Скользящая средняя, скользящее среднее разновидность цифрового фильтра с… … Википедия

    Скользящая средняя (значения) - Скользящая средняя, скользящее среднее (англ. moving average): Скользящая средняя семейство функций, значение которых в каждой точке определения равно среднему значению исходной функции за предыдущий период. Скользящая средняя… … Википедия

Физически осуществимые цифровые фильтры работают в реальном масштабе времени, для формирования выходного сигнала в 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 – интервал дискретизации.

  • 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

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

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

    "