Фильтр с конечной импульсной характеристикой порядка N


СОДЕРЖАНИЕ:

Расчет цифровых фильтров с конечной импульсной характеристикой при использовании окон. Явление Гиббса

Ранее мы рассмотрели методы расчета фильтров с импульсной характеристикой бесконечной длины. Несмотря на то что такие фильтры имеют много привлекательных свойств, они также обладают рядом недостатков. Например, если необходимо воспользоваться достоинством скорости вычисления БПФ и выполнить фильтр на основе БПФ, то неотъемлемой будет импульсная характеристика конечной длины. Кроме того, БИХ-фильтры, как правило, обеспечивают превосходную амплитудную характеристику за счет нелинейной фазовой. В противоположность им КИХ-фильтры могут иметь строго линейную фазовую характеристику. Таким образом, методы расчета КИХ-фильтров также представляют значительный интерес.

Системная функция физически реализуемого КИХ-фильтра имеет вид

т. е. H(z) является полиномом степени N-1. Таким образом, Я(г) имеет N-1 нулей, которые могут располагаться произвольно в конечной z-плоскости, и N -1 полюсов, которые все находятся в точке z = 0. Частотная характеристика представляет собой тригонометрический полином

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

Если импульсная характеристика удовлетворяет условию hk = hN_x_k, то физически реализуемый ЦФ фильтр будет иметь линейную фазовую характеристику.

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

Наиболее простой подход при расчете КИХ-фильтров сводится к получению импульсной характеристики конечной длины путем усечения последовательности импульсной характеристики бесконечной длины. Если предположить, что KH(jco) является идеальной требуемой частотной характеристикой (например, с прямоугольной АЧХ, имеющей частоту среза сос), то

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

Таким образом, при идеальной АЧХ (например, прямоугольной) импульсная характеристика будет бесконечно-протяженной.

Отметим, что идеальный частотный коэффициент передачи (7.79) описывает физически невозможный (не реализуемый) БИХ-фильтр, поскольку его импульсная характеристика начинается в (-со), т. е. реакция предшествует воздействию. Простой путь конструирования физически возможной системной функции состоит в исключении всех членов ряда (7.79), имеющих отрицательный индекс к

Фильтр с конечной импульсной характеристикой порядка N

Цифровые фильтры (Лекция)

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

· Фильтры с конечной импульсной характеристикой (КИХ — фильтры, трансверсальные фильтры, нерекурсивные фильтры). Знаменатель передаточной функции таких фильтров — некая константа.

КИХ — фильтры характеризуются выражением:

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

БИХ — фильтры характеризуются выражением:

Отличие КИХ – фильтров от БИХ – фильтров заключается в том, что у КИХ – фильтров выходная реакция зависит от входных сигналов, а у БИХ – фильтров выходная реакция зависит от текущего значения.

Импульсная характеристика – это реакция схемы на единичный сигнал.

Е диничный сигнал определяется следующим образом:

Таким образом, единичный сигнал только в одной точке равен единице – в точке начала координат.

Задержанный е диничный сигнал определяется следующим образом:

Таким образом, задержанный единичный сигнал задерживает на k периодов дискретизации.

Сигналы и спектры

Дуальность (двойственность) представления сигналов.

Все сигналы можно представить во временной или частотной плоскости.

Причем, частотных плоскостей – несколько.

Для просмотра сигнала во временной плоскости существует прибор:

Представим, что здесь есть достаточно длинный синусоидальный сигнал (в 1 сек. 1000 раз повторилась синусоида):

Возьмем сигнал с частотой, в два раза больше:

Сложим эти сигналы. Получим не синусоиду, а искаженный сигнал:

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

Для просмотра сигнала в частотной плоскости существует прибор:

Частота циклическая или круговая ( f ).

Частотная плоскость покажет засечку:

Величина засечки пропорциональна амплитуде синусоиды, а частота:

Для второго сигнала частотная область покажет другую засечку:

Во временной области суммарного сигнала появится 2 засечки:

Оба представления сигнала равноценны и пользуются либо первым, либо другим представлением, в зависимости от того, какой удобней.

Преобразования из временной плоскости в частотную плоскость может производиться различными путями. Например: с помощью преобразований Лапласа или с помощью преобразований Фурье.

Три формы записи рядов Фурье.

Существует три формы записи рядов Фурье:

· Синус — косинусная форма .

1.) В синус — косинусной форме ряд Фурье имеет вид:

Входящие в формулу кратные частоты kω 1 называются гармониками; гармоники нумеруются в соответствии с индексом k ; частота ωk = kω 1называется k-й гармоникой сигнала.

Это выражение говорит о следующем: что любую периодическую функцию можно представить в виде суммы гармоник, где:

где T – период повторений этой функции;

ω — круговая частота .

где t – текущее время;

При разложении по Фурье самое главное – это периодичность. За счет неё происходит дискретизация по частоте, начинается некоторое количество гармоник.

Для того, чтобы установить возможность тригонометрического разложения для заданной периодичной функции, нужно исходить из определенного набора коэффициентов. Прием для их определения придумал во второй половине XVIII века Эйлер и независимо от него в начале XIX века — Фурье.

Три формулы Эйлера для определения коэффициентов:

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

Мощность гармоник падает с увеличением их номера. Если добавить/отбросить некоторые гармонические составляющие, то перерасчет остальных членов (других гармоник) не требуется.

Практически все функции являются четными или нечетными:

Например , функция Cos :

Четная функция симметрична относительно

Если функция четная, то все синусные коэффициенты bk будут равны нулю и в формуле ряда Фурье будут присутствовать только косинусные слагаемые.

Например , функция Sin :

Нечетная функция симметрична относительно центра.

Если функция нечетная, то все косинусные коэффициенты ak будут равны нулю и в формуле ряда Фурье будут присутствовать только синусные слагаемые.

2.) Вещественная форма записи ряда Фурье.

Некоторое неудобство синусно-косинусной формы ряда Фурье состоит в том, что для каждого значения индекса суммирования k (т.е. для каждой гармоники с частотой kω 1) в формуле фигурирует два слагаемых – синус и косинус. Воспользовавшись формулами тригонометрических преобразований, сумму этих двух слагаемых можно трансформировать в косинус той же частоты с иной амплитудой и некоторой начальной фазой:

Если S ( t ) является четной функцией, фазы φ могут принимать только значения 0 и π , а если S ( t ) — функция нечетная, то возможные значения для фазы φ равны + π /2.

Если bk = 0, тогда tg φ = 0 и угол φ = 0

Если ak = 0, тогда tg φ – бесконечен и угол φ =

В этой формуле может быть и минус (смотря какое направление взято).

3.) Комплексная форма записи ряда Фурье.

Данная форма представления ряда Фурье является, пожалуй, наиболее употребимой в радиотехнике. Она получается из вещественной формы представлением косинуса в виде полусуммы комплексных экспонент (такое представление вытекает из формулы Эйлера e jθ = Cosθ + jSinθ ):

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

А теперь будем трактовать экспоненты со знаком «минус» в показателе как члены ряда с отрицательными номерами. В рамках этого же общего подхода постоянное слагаемое a /2 станет членом ряда с нулевым номером. В результате получится комплексная форма записи ряда Фурье :

Формула расчета коэффициентов Ck ряда Фурье:

Если S ( t ) является четной функцией, коэффициенты ряда Ck будут чисто вещественными, а если S ( t ) — функция нечетная, коэффициенты ряда окажутся чисто мнимыми.

Совокупность амплитуд гармоник ряда Фурье часто называют амплитудным спектром, а совокупность их фаз – фазовым спектром.

Спектром амплитуд является действительная часть коэффициентов Ck ряда Фурье:

Re ( Ck ) – спектр амплитуд.

Спектр прямоугольных сигналов.

Рассмотрим сигнал в виде последовательности прямоугольных импульсов с амплитудой A , длительностью τ и периодом повторения T . Начало отсчета времени примем расположенным в середине импульса.

Данный сигнал является четной функцией, поэтому для его представления удобнее использовать синусно-косинусную форму ряда Фурье – в ней будут присутствовать только косинусные слагаемые ak , равные:

Из формулы видно, что длительность импульсов и период их следования входят в нее не обособлено, а исключительно в виде отношения. Этот параметр – отношение периода к длительности импульсов – называют скважностью последовательности импульсов и обозначают буквой: g : g = T /τ. Введем этот параметр в полученную формулу для коэффициентов ряда Фурье, а затем приведем формулу к виду Sin ( x )/ x :

Примечание: В зарубежной литературе вместо скважности используется обратная величина, называемая коэффициентом заполнения ( duty cycle ) и равная τ / T .

При такой форме записи становится хорошо видно, чему равно значение постоянного слагаемого ряда: поскольку при x → 0 Sin ( x )/ x →1, то

Теперь можно записать и само представление последовательности прямоугольных импульсов в виде ряда Фурье:

Амплитуды гармонических слагаемых ряда зависят от номера гармоники по закону Sin ( x )/ x .

График функции Sin ( x )/ x имеет лепестковый характер. Говоря о ширине этих лепестков, следует подчеркнуть, что для графиков дискретных спектров периодических сигналов возможны два варианта градуировки горизонтальной оси – в номерах гармоник и в частотах.

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

Итак, ширина лепестков, измеренная в количестве гармоник, равна скважности последовательности (при k = ng имеем Sin ( π k / g ) = 0, если n ≠ 0). Отсюда следует важное свойство спектра последовательности прямоугольных импульсов – в нем отсутствуют (имеют нулевые амплитуды) гармоники с номерами, кратными скважности.

Расстояние по частоте между соседними гармониками равно частоте следования импульсов — 2 π / T . Ширина лепестков спектра, измеренная в единицах частоты, равна 2 π / τ, т.е. обратно пропорциональна длительности импульсов. Это проявление общего закона – чем короче сигнал, тем шире его спектр.

Вывод: для любого сигнала известны его разложения в ряд Фурье. Зная τ и T можем посчитать сколько гармоник нужно, чтобы передать мощность.

Методы анализа линейных систем с постоянными коэффициентами.

Задача в постановке:

Имеется линейная система (не зависит от амплитуды сигнала):

Необходимо записать дифференциальное уравнение для этой системы.

Это типичная задача электротехники. Имеется мощный способ решения данной задачи во временной области.

Порядок уравнения зависит от числа реактивных элементов.

Может быть записано в виде системы уравнений первой степени.

Схема состоит из резистора и конденсатора

(интегрирующая цепь). На вход подали сигнал X ( t ). Определить Y вых.

Дальнейшее решение сводится к решению сначала однородного уравнения, а затем неоднородного.

Это решение немного упрощается при переводе из временной плоскости в другую плоскость комплексной переменной. Перевод из временной плоскости в комплексную плоскость производится прямым преобразованием Лапласа.

Вычисляется разностное уравнение.

Прямое преобразование Лапласа.

Преобразование Лапласа — интегральное преобразование, связывающее функцию S ( p ) комплексного переменного ( изображение) с функцией s ( x ) действительного переменного ( оригинал).

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

Прямое преобразование Лапласа осуществляется по формуле: , где — комплексная переменная , где σ — затухание.

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

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

Подбирая коэффициенты в данном выражении можно получить АЧХ фильтра.

Пример программной реализации ЦФ с КИХ – семинар №4.

Дата добавления: 2015-12-29 ; просмотров: 816 ; ЗАКАЗАТЬ НАПИСАНИЕ РАБОТЫ

Заглавная страница

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

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

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

Первое сражение при Булл-Ран

Первое сражение при реке Булл-Ран (англ. First Battle of Bull Run ), также Первое сражение при Манассасе) — первое крупное сухопутное сражение Гражданской войны в США. Состоялось 21 июля 1861 года возле Манассаса (штат Виргиния). Федеральная армия под командованием генерала Ирвина Макдауэлла атаковала армию Конфедерации под командованием генералов Джонстона и Борегара, но была остановлена, а затем обращена в бегство. Федеральная армия ставила своей целью захват важного транспортного узла — Манассаса, а армия Борегара заняла оборону на рубеже небольшой реки Булл-Ран. 21 июля Макдауэлл отправил три дивизии в обход левого фланга противника; им удалось атаковать и отбросить несколько бригад конфедератов. Через несколько часов Макдауэлл отправил вперёд две артиллерийские батареи и несколько пехотных полков, но южане встретили их на холме Генри и отбили все атаки. Федеральная армия потеряла в этих боях 11 орудий, и, надеясь их отбить, командование посылало в бой полк за полком, пока не были израсходованы все резервы. Между тем на поле боя подошли свежие бригады армии Юга и заставили отступить последний резерв северян — бригаду Ховарда. Отступление Ховарда инициировало общий отход всей федеральной армии, который превратился в беспорядочное бегство. Южане смогли выделить для преследования всего несколько полков, поэтому им не удалось нанести противнику существенного урона.

Каждый электрик должен знать:  Подключение 4 датчиков движения к 4 прожекторам - где ошибка

«Хлеб» (укр. «Хліб» ) — одна из наиболее известных картин украинской советской художницы Татьяны Яблонской, созданная в 1949 году, за которую ей в 1950 году была присуждена Сталинская премия II степени. Картина также была награждена бронзовой медалью Всемирной выставки 1958 года в Брюсселе, она экспонировалась на многих крупных международных выставках.

В работе над полотном художница использовала наброски, сделанные летом 1948 года в одном из наиболее благополучных колхозов Советской Украины — колхозе имени В. И. Ленина Чемеровецкого района Каменец-Подольской области, в котором в то время было одиннадцать Героев Социалистического Труда. Яблонская была восхищена масштабами сельскохозяйственных работ и людьми, которые там трудились. Советские искусствоведы отмечали, что Яблонская изобразила на своей картине «новых людей», которые могут существовать только в социалистическом государстве. Это настоящие хозяева своей жизни, которые по-новому воспринимают свою жизнь и деятельность. Произведение было задумано и создано художницей как «обобщённый образ радостной, свободной творческой работы». По мнению французского искусствоведа Марка Дюпети, эта картина стала для своего времени программным произведением и образцом украинской реалистической живописи XX столетия.

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

В этой статье я хочу рассказать о своих экспериментах по созданию простого параметрического цифрового КИХ фильтра на Verilog HDL . До сегодняшнего дня я старался избегать тем цифровой обработки сигналов на нашем сайте: все таки это довольно сложно. Ну а когда сложно, то приходится много времени тратить просто на самостоятельное изучение вопроса. Вот сейчас только неделю читал сайт http://www.dsplib.ru/content/filters/ch10/ch10.html — очень интересный ресурс, где все довольно лаконично и понятно. После прочтения нескольких статей с сайта dsplib.ru я понял, что теорию мне лучше не писать. А вот свое понимание и свою реализацию фильтра на Verilog я пожалуй смогу предложить.

Итак, цифровые фильтры — это устройства цифровой обработки сигналов.

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

Однако, есть нюансы.

Во-первых, говорят, что измерения нужно делать с частотой более чем в 2 раза выше, чем самая высокая частота присутствующая в спектре сигнала. Об этом говорит теорема Котельникова. Практическое следствие из этого — перед измерением сигнала нужно убедиться, что в его спектре нет гармонических составляющих с частотами выше половины частоты измерений. Значит перед измерителем требуется установить соответствующий аналоговый фильтр. Если этого не сделать, то в спектре оцифрованного сигнала могут появиться частоты, которых там раньше не было, исходный сигнал будет искажен. Это вредное явление называется «алиасинг».

Во-вторых, важна разрядность измерительного прибора, АЦП, Аналогово-Цифрового Преобразователя. Вот тут, к сожалению, я не смогу дать никаких рекомендаций. Почему-то во многих статьях, которые я прочитал, говорится о выборе частоты дискретизации по теореме Котельникова, но не говорится о разрядности АЦП. Это немного странно, так как сама теорема Котельникова подразумевает взятые отсчеты с абсолютной точностью, чего в реальной жизни быть не может. Еще нужно посмотреть на уровень шумов во входном сигнале, может вообще оказаться, что младшие разряды АЦП «дрожат». Вероятно, нет смысла брать АЦП с разрядностью допускающей «дрожание» нескольких младших битов из-за шумов во входном сигнале.

Так или иначе, после того, как входной сигнал оцифрован и представляет из себя поток чисел, его можно обрабатывать численными методами в микроконтроллерах или в ПЛИС .

Одна из задач цифровой обработки сигналов — фильтрация. Фильтрация обозначает подавление одних частот в спектре и пропускание/усиление других. Про спектр я писал .

Существуют фильтры низких частот (low-pass filter), которые пропускают только частоты ниже заданной частоты среза. Есть фильтры высоких частот (high-pass), которые наоборот, подавляют частоты ниже частоты среза. Бывают полосовые фильтры, которые пропускают или подавляют только частоты в заданной полосе (band-pass & band-stop filters).

По внутреннему устройству, как мне кажется, самые простые — это КИХ фильтры. КИХ фильтр — это фильтр с конечной импульсной характеристикой. В англоязычной литературе КИХ — это FIR, то есть Finite Impulse Response filter.

Структура этого фильтра вот такая:

Здесь блоки Z -1 — это линии задержки. На практике цепочка блоков Z -1 — это просто последовательность регистров для хранения данных. По каждому фронту тактовой частоты, которая и является частотой дискретизации, входные данные движутся от первого регистра к последующим. Фильтр может содержать цепочку регистров произвольной длины. Дополнительно, от каждого блока Z -1 идет передача данных на умножитель. Каждый из умножителей умножает свои собственные данные на некоторую константу. Потом, все результаты умножения складываются и вот получается отфильтрованный сигнал. Особая наука — это рассчитать длину фильтра и коэффициенты для умножителей. От коэффициентов зависит характеристика фильтра.

КИХ фильтр имеет несколько важных особенностей:

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

Поясню, как я понимаю оба этих пункта.
Про устойчивость и предсказуемость. Если посмотреть внимательно на структуру фильтра, то становится понятно движение данных в нем. Если входные данные 16-ти битные и коэффициенты для умножителей 16-ти битные, то после умножения результат становится 32-х битный. Далее идет суммирование. Сложение двух 32-х битных чисел дает 33-х битное число. Зная длину фильтра можно точно сказать, какой разрядности будет результат. Фильтр длиной 4 будет на выходе иметь 34-х битное число и точка. Математические операции внутри фильтра не накапливают ошибку, не приводят к переполнению результата. Некоторые другие фильтры, такие как БИХ (фильтр с Бесконечно Импульсной Характеристикой, IIR — Infinite Impulse Response filter) содержат цепи обратной связи. например, вот такие:

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

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

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

Воспользуемся инструментом TFilter.
Например, я хочу построить цифровой фильтр нижних частот. Частота дискретизации 20МГц. Хочу на частотах выше 2х МГц значительно подавить все частоты, не менее -40Дб.

Ввожу требуемые мне данные в полях ввода внизу страницы и нажимаю кнопку «Design FIlter». Через пару секунд мой фильтр рассчитан и результат справа в окошке, как список коэффициентов для умножителей: -510, -520, -625, -575, -287, 306, 1232, 2467, 3927, 5477, 6948, 8162, 8962, 9241, 8962, 8162, 6948, 5477, 3927, 2467, 1232, 306, -287, -575, -625, -520, -510. Всего коэффициентов 27 — значит вот такая длина фильтра и будет.

Например, я хочу построить полосовой фильтр. Частота дискретизации 20МГц. Пусть фильтром нужно подавлять частоты ниже 1МГц и выше 4х МГц.

Ввожу данные, делаю рассчет, получаю коэффициенты фильтра: -801, -1026, -210, 1914, 4029, 3905, 330, -5174, -8760, -7040, -152, 7700, 11130, 7700, -152, -7040, -8760, -5174, 330, 3905, 4029, 1914, -210, -1026, -801. Здесь длина фильтра получилась 25 тапов.

Вот коэффициенты фильтров есть. Что с ними делать? Хорошо бы сделать параметрический модуль на Verilog HDL, чтобы его можно было легко настраивать. По логике, параметры модуля фильтра — это его длина, то есть количество линий задержки, разрядность входных данных и разрядность коэффициентов для умножителей.

Если разрядность входных данных — это IWIDTH, а число регистров в цепочке линии задержки — это TAPS, то довольно просто описать саму цепочку регистров:

module fir (clk, coefs, in, out);

parameter IW >
parameter TAPS = 2; //number of filter taps

input wire clk;
input wire in;

genvar i;
generate
for (i=0; i
begin:tap
//make tap register chain
reg r=0;
if (i==0)
begin
//1st tap takes signal from input
always @(posedge clk)
r end
else
begin
//tap reg takes signal from prev tap reg
always @(posedge clk)
tap[i].r end
end
endgenerate
endmodule

Конструкция generate-endgenerate языка Verilog позволяет динамически создать нужное число регистров и посоединять их как надо в цепочку. Получится вот так:

Таким образом, длина фильтра может быть задана через параметр модуля Verilog. Аналогичным образом, внутри цикла for() внутри generate-endgenerate создаются умножители:

genvar i;
generate
for (i=0; i
begin :tap
.
//get tap multiplication constant coef
wire c;
assign c = coefs[((TAPS-1-i)*32+CWIDTH-1):(TAPS-1-i)*32];

//calculate multiplication and fix result in register
reg m;
always @(posedge clk)
m
.

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

Я решил, что коэффициенты для умножителей можно передавать в модуль объединенные в шину <. >как входной сигнал, вот так:

Здесь каждый коэффициент фильтра занимает в шине фиксированное число бит 32 (решил, что этого должно хватить). Но из этих 32х бит модуль выберет нужное объявленное число бит для коэффициентов. Например, parameter CW >

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

Полный текст модуля будет выглядеть вот так:

Module fir (clk, coefs, in, out); parameter IW >

Если будет время, то постараюсь улучшить этот модуль, добавить pipeline сумматоров.

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

Структура программы testbench.v:

Синусоиду для тестбенча я уже когда-то показывал . Возьму тот старый код, немного подправлю его и сделаю плавное изменение частоты от 100кГц до 4МГц с шагом в 1000Гц.

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

Весь код тестбенча вот здесь:

`timescale 1ns / 1ns module testbench(); reg tb_clk; initial tb_clk=0; always #25 tb_clk =

tb_clk; real PI=3.14159265358979323846; real last_time=0; //Sec real current_time=0; //Sec real angle=0; //Rad real frequency=100; //Hz integer freq_x100kHz=0; //*100kHz reg signed sin16; //function which calculates Sinus(x) function real sin; input x; real x; real x1,y,y2,y3,y5,y7,sum,sign; begin sign = 1.0; x1 = x; if (x1 PI/2.0) begin x1 = x1 — PI; sign = -1.0*sign; end y = x1*2/PI; y2 = y*y; y3 = y*y2; y5 = y3*y2; y7 = y5*y2; sum = 1.570794*y — 0.645962*y3 + 0.079692*y5 — 0.004681712*y7; sin = sign*sum; end endfunction task set_freq; input f; real f; begin frequency = f; freq_x100kHz = f/100000.0; end endtask always @(posedge tb_clk) begin current_time = $realtime; angle = angle+(current_time-last_time)*2*PI*frequency/1000000000.0; //$display(«%f %f»,current_time,angle); while (angle > PI*2.0) begin angle = angle-PI*2.0; end sin16 = 32000*sin(angle); last_time = current_time; end //low-pass filter wire out_lowpass; fir #(.TAPS(27)) fir_lp_inst(.clk(tb_clk), .coefs(< -32"d510, -32"d520, -32"d625, -32"d575, -32"d287, 32"d306, 32"d1232, 32"d2467, 32"d3927, 32"d5477, 32"d6948, 32"d8162, 32"d8962, 32"d9241, 32"d8962, 32"d8162, 32"d6948, 32"d5477, 32"d3927, 32"d2467, 32"d1232, 32"d306, -32"d287, -32"d575, -32"d625, -32"d520, -32"d510 >), .in(sin16), .out(out_lowpass)); //band-pass wire out_bandpass; fir #(.TAPS(25)) fir_bp_inst(.clk(tb_clk), .coefs(< -32"d801, -32"d1026, -32"d210, 32"d1914, 32"d4029, 32"d3905, 32"d330, -32"d5174, -32"d8760, -32"d7040, -32"d152, 32"d7700, 32"d11130, 32"d7700, -32"d152, -32"d7040, -32"d8760, -32"d5174, 32"d330, 32"d3905, 32"d4029, 32"d1914, -32"d210, -32"d1026, -32"d801 >), .in(sin16), .out(out_bandpass)); integer i; real f; initial begin $dumpfile(«out.vcd»); $dumpvars(0,testbench); f=100000; for(i=0; i > iverilog -o qqq testbench.v fir.v
Симулирую:
> vvp qqq
Смотрю временные диаграммы в GtkWave:
> gtkwave out.vcd

В результате симуляции программой vvp получается выходной файл с временными диаграммами сигналов out.vcd. Их можно посмотреть в программе GtkWave. Вот что видно: входной сигнал sin16 для обоих фильтров меняет частоту, она растет:

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

Входной сигнал для sin16 равномерен по амплитуде во всей полосе частот. «Рваные» сигналы в области низких частот — это просто GtkWave так отрисовывает, при увеличении (zoom) там все нормально выглядит.

А вот выходные сигналы, такие какие и положены быть на выходе фильтров. Фильтр низких частот от 500кГц начинается плавный спад амлитуды синусоиды out_lowpass и после 2х МГц фильтр уже практически не пропускает. Полосовой фильтр хорошо пропускает где-то в полосе 2-3МГц, а по краям пологие спады (сигнал out_bandpass).

Чтобы внимательно рассмотреть получившуюся картину нужно использовать специальные возможности просмотра в программа GtkWave. Вот несколько полезных советов:

  • для знаковых сигналов, как sin16 или out_lowpass, out_bandpass кликнуть правой кнопкой мыши по сигналу и выбрать сперва Data Format => Sogned Decimal, а потом Data Format => Analog => Step;
  • чтобы отобразить аналоговый сигнал на графике в большую высоту используйте правый клик мыши на сигнале и потом пункт popup меню Insert Analog Height Extension.

Еще совет: GtkWave может отображать аналоговый сигнал отмасштабированный по высоте с учетом всех выборок симуляции по времени или с учетом только выборок, которые помещаются в окне. Если поставить Data Format => Analog => Resizing => Screen Data, то есть если масштабирование по вертикали будет учитывать только помещающиеся в окне выборки, то можно увидеть боковые лепестки амплитудно-частотной характеристики фильтра:

Цифровые фильтры (Лекция)

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

· Фильтры с конечной импульсной характеристикой (КИХ — фильтры, трансверсальные фильтры, нерекурсивные фильтры). Знаменатель передаточной функции таких фильтров — некая константа.

КИХ — фильтры характеризуются выражением:

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

БИХ — фильтры характеризуются выражением:

Отличие КИХ – фильтров от БИХ – фильтров заключается в том, что у КИХ – фильтроввыходная реакция зависит от входных сигналов, а у БИХ – фильтров выходная реакция зависит от текущего значения.

Импульсная характеристика – это реакция схемы на единичный сигнал.

Е диничный сигнал определяется следующим образом:

Таким образом, единичный сигнал только в одной точке равен единице – в точке начала координат.

Задержанный е диничный сигнал определяется следующим образом:

Таким образом, задержанный единичный сигнал задерживает на k периодов дискретизации.

Сигналы и спектры

Дуальность (двойственность) представления сигналов.

Все сигналы можно представить во временной или частотной плоскости.

Причем,частотных плоскостей – несколько.

Для просмотра сигнала во временной плоскости существует прибор:

Представим, что здесь есть достаточно длинный синусоидальный сигнал (в 1 сек. 1000 раз повторилась синусоида):

Возьмем сигнал с частотой, в два раза больше:

Сложим эти сигналы. Получим не синусоиду, а искаженный сигнал:

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

Для просмотра сигнала в частотной плоскости существует прибор:

Частота циклическая или круговая ( f ).

Частотная плоскость покажет засечку:

Величина засечки пропорциональна амплитуде синусоиды, а частота:

Для второго сигнала частотная область покажет другую засечку:

Во временной областисуммарного сигнала появится2 засечки:

Оба представления сигнала равноценны и пользуются либо первым, либо другим представлением, в зависимости от того, какой удобней.

Преобразования из временной плоскости в частотную плоскость может производиться различными путями. Например: с помощью преобразований Лапласа или с помощью преобразований Фурье.

Три формы записи рядов Фурье.

Существует три формы записи рядов Фурье:

· Синус — косинусная форма.

1.) В синус — косинусной форме ряд Фурье имеет вид:

Входящие в формулу кратные частоты 1 называются гармониками ; гармоники нумеруются в соответствии с индексом k ; частота ω k = 1 называется k -й гармоникой сигнала.

Это выражение говорит о следующем:что любую периодическую функцию можно представить в виде суммы гармоник, где:

T – период повторений этой функции;

ω — круговая частота.

Каждый электрик должен знать:  Влияние загрузки электродвигателей на коэффициенты полезного действия и мощности

t – текущее время;

При разложении по Фурье самое главное – это периодичность. За счет неё происходит дискретизация по частоте, начинается некотороеколичество гармоник.

Для того, чтобы установить возможность тригонометрического разложения для заданной периодичной функции, нужно исходить из определенного набора коэффициентов. Прием для их определения придумал во второй половине XVIII века Эйлер и независимо от него в начале XIX века — Фурье.

Три формулы Эйлера для определения коэффициентов:

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

Мощность гармоник падает с увеличением их номера. Если добавить/отбросить некоторые гармонические составляющие, то перерасчет остальных членов (других гармоник) не требуется.

Практически все функции являются четными или нечетными:

Например, функция Cos :

Четная функция симметрична относительно

Если функция четная, то все синусные коэффициенты b k будут равны нулю и в формуле ряда Фурье будут присутствовать только косинусные слагаемые.

Например, функция Sin :

Нечетная функция симметрична относительно центра.

Если функция нечетная, то все косинусные коэффициенты a k будут равны нулю и в формуле ряда Фурье будут присутствовать только синусные слагаемые.

2.) Вещественная форма записи ряда Фурье.

Некоторое неудобство синусно-косинусной формы ряда Фурье состоит в том, что для каждого значения индекса суммирования k (т.е. для каждой гармоники с частотой 1) в формуле фигурирует два слагаемых – синус и косинус. Воспользовавшись формулами тригонометрических преобразований, сумму этих двух слагаемых можно трансформировать в косинус той же частоты с иной амплитудой и некоторой начальной фазой:

Если S (t ) является четной функцией, фазы φ могут принимать только значения 0 и π , а если S (t ) — функция нечетная, то возможные значениядля фазы φ равны + π /2.

3.) Комплексная форма записи ряда Фурье.

Данная форма представления ряда Фурье является, пожалуй, наиболее употребимой в радиотехнике. Она получается из вещественной формы представлением косинуса в виде полусуммы комплексных экспонент (такое представление вытекает из формулы Эйлера e jθ = Cosθ + jSinθ ):

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

А теперь будем трактовать экспоненты со знаком «минус» в показателе как члены ряда с отрицательными номерами. В рамках этого же общего подхода постоянное слагаемое a 0 /2 станет членом ряда с нулевым номером. В результате получится комплексная форма записи ряда Фурье:

Формула расчета коэффициентов C k ряда Фурье:

Если S (t ) является четной функцией, коэффициенты ряда C k будут чисто вещественными , а если S (t ) — функция нечетная , коэффициенты ряда окажутся чисто мнимыми .

Совокупность амплитуд гармоник ряда Фурье часто называют амплитудным спектром , а совокупность их фаз – фазовым спектром .

Спектром амплитуд является действительная часть коэффициентов C k ряда Фурье:

Re (C k ) – спектр амплитуд.

Спектр прямоугольных сигналов.

Рассмотрим сигнал в виде последовательности прямоугольных импульсов с амплитудой A , длительностью τ и периодом повторения T . Начало отсчета времени примем расположенным в середине импульса.

Данный сигнал является четной функцией, поэтому для его представления удобнее использовать синусно-косинусную форму ряда Фурье – в ней будут присутствовать только косинусные слагаемые a k , равные:

Из формулы видно, что длительность импульсов и период их следования входят в нее не обособлено, а исключительно в виде отношения. Этот параметр – отношение периода к длительности импульсов – называют скважностью последовательности импульсов и обозначают буквой: g : g =T /τ. Введем этот параметр в полученную формулу для коэффициентов ряда Фурье, а затем приведем формулу к виду Sin (x )/x :

Примечание: В зарубежной литературе вместо скважности используется обратная величина, называемая коэффициентом заполнения (duty cycle ) и равная τ /T .

При такой форме записи становится хорошо видно, чему равно значение постоянного слагаемого ряда: поскольку при x → 0Sin (x )/x →1, то

Теперь можно записать и само представление последовательности прямоугольных импульсов в виде ряда Фурье:

Амплитуды гармонических слагаемых ряда зависят от номера гармоники по закону Sin (x )/x .

График функции Sin (x )/x имеет лепестковый характер. Говоря о ширине этих лепестков, следует подчеркнуть, что для графиков дискретных спектров периодических сигналов возможны два варианта градуировки горизонтальной оси – в номерах гармоник и в частотах.

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

Итак, ширина лепестков, измеренная в количестве гармоник, равна скважности последовательности (при k = ng имеем Sin (π k / g ) = 0, если n ≠ 0). Отсюда следует важное свойство спектра последовательности прямоугольных импульсов – в нем отсутствуют (имеют нулевые амплитуды) гармоники с номерами, кратными скважности.

Расстояние по частоте между соседними гармониками равно частоте следования импульсов — 2π /T . Ширина лепестков спектра, измеренная в единицах частоты, равна 2π /τ , т.е. обратно пропорциональна длительности импульсов. Это проявление общего закона – чем короче сигнал, тем шире его спектр.

Вывод : для любого сигнала известны его разложения в ряд Фурье. Зная τ и T можем посчитать сколько гармоник нужно, чтобы передать мощность.

Методы анализа линейных систем с постоянными коэффициентами.

Задача в постановке:

Имеется линейная система (не зависит от амплитуды сигнала):

Необходимо записать дифференциальное уравнение для этой системы.

Это типичная задача электротехники. Имеется мощный способ решения данной задачи во временной области.

Порядок уравнения зависит от числа реактивных элементов.

Может быть записано в виде системы уравнений первой степени.


U C – является Y выхода, поэтому: RC + U ВЫХ. = X (t )

Дальнейшее решение сводится к решению сначала однородного уравнения, а затем неоднородного.

Это решение немного упрощается при переводе из временной плоскости в другую плоскость комплексной переменной. Перевод из временной плоскости в комплексную плоскость производится прямым преобразованием Лапласа.

Вычисляется разностное уравнение.

Прямое преобразование Лапласа.

Преобразование Лапласа — интегральное преобразование, связывающее функцию S (p ) комплексного переменного (изображение ) с функцией s (x ) действительного переменного (оригинал ).

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

Прямое преобразование Лапласа осуществляется по формуле: , где- комплексная переменная, где σ — затухание.

Реакция системы на поданную на вход дельта-функцию называется импульсной характеристикой системы.

Реакция системы на поданную на вход функцию единичного скачка называется переходной характеристикой .

Производная по времени какой-то функции — есть умножение этой функции на p :

А интеграл по времени какой-то функции — есть деление этой функции на p :

В соответствии с этим, выражение:RCY « + Y = X (t ) запишется так: RCPY + Y = X (p )

Разрешая относительно Y , получим: Y (RCP + 1)= X (p )

Коэффициент передачи этого уравнения:

В плоскости комплексного переменного, это:

Здесь XP – взяли в качестве тестовой единичной функции. Значит это импульсная характеристика в P –области.

В числителе нет переменных. Корни числителя называются нулями функции передачи.

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

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

Преобразование Фурье.

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

Преобразование Фурье дает основание для получения частотной и фазовой характеристик (хотим получить огибающую спектра). Преобразование Фурье – это частный случайпреобразования Лапласа при σ = 0.

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

Преобразование Фурье отличается от преобразования Лапласа тем, что у него: p = , поэтому наше выражение примет следующий вид:

Частотная характеристика – это зависимость модуля коэффициента передачи от частоты.

Умножим числитель и знаменатель этой дроби на комплексное число (1-jωRC ) (предполагая, что значение дроби от этого не изменится):

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

При нуле — модуль коэффициента передачи равен единице, а с увеличением частоты он начинает падать:

При двух значениях ФЧХ будет иметь вид:

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

Дискретное преобразование Лапласа.

Все рассмотренное ранее — относилось к непрерывным функциям. Если в непрерывную функцию вместо t подставить kT и вместо интеграла подставить сумму, то будет преобразование Лапласа.

Преобразование Лапласа применяется в сфере систем компьютерного управления. Дискретное преобразование Лапласа может быть применено для решётчатых функций. Решётчатая функция – это функция, значения которой определены только в дискретные моменты времени kT , где k — целое число, а T — период дискретизации.
Дискретное преобразование Лапласа даёт возможность записать коэффициент передачи. Различают D -преобразование и Z -преобразование.

D преобразование :

Z – преобразование:

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

Умножение на Z −1 – это сдвиг на один период дискретизации.

Возьмем исходное выражение, с которого мы начинали:

Отсюда вычислительная процедура рисуется следующим образом:

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

Количество используемых предыдущих отсчетов называется порядком фильтра .

Некоторое количество предыдущих отсчетов входного сигнала хранится в ячейках памяти, которые образуют дискретную линию задержки. Эти отсчеты умножаются на коэффициенты bk и суммируются, формируя выходной отсчет y(n).

Так как при вычислениях не используются предыдущие отсчеты выходного сигнала, в схеме отсутствуют обратные связи. Поэтому такие фильтры называются нерекурсивными . При подаче на вход единичного импульса, он будет перемещаться по линии задержки, умножаться на коэффициенты b , b 1 , b 2 … и проходить на выход устройства (ведь все остальные входные сигналы сумматора при этом равны нулю). Очевидно, что в реальном устройстве линия задержки содержит конечное число элементов, поэтому импульсная характеристика нерекурсивного фильтра также является конечной по длительности. Это обусловило еще одно название таких фильтров – фильтры с конечной импульсной характеристикой (КИХ-фильтры).

ORDFIL EQU 40; фильтр сорокового порядка.

BUFFER M , ORDFIL ; проверка возможности создания циклического буфера.

COEFFS :DS b 0, b 1, b 3

DS b 37, _VVOD EQU Y : FFC 0; определяем порты ввода.

PORT _VIVOD EQU Y : FFC 1; определяем порты вывода.

ORG P : 0; организация P -памяти.

RESET :JMP START ; безусловный переход на метку START .

P :100; программа начнется с сотой ячейки.

START :MOVE BUF _X , R 0; начальный адрес X вводим в R 0.

MOVE # ORDFIL ─1, M 0 ;перех.к мод.ариф.(зап.число на 1мен.,чем поряд.этого буф.)

MOVE # COEFFS , R 4; организация цикл.буфера для коэффиц. в Y -памяти.

MOVE # M 0, M 4 ; т.к.длина должна совпадать, то перес. из M 0 в M 4.

CLRA ; обнулим аккумулятор.

REP #ORDFIL ; повторить цепочечную операцию.

MOVE A , X : (R 4) +; испол.автоинкремент и все ячейки буф.обнуляем.

LOOP : MOVEP Y : PORT _VVOD , X ─ (R 0) ;побайт.пересылка показаний(послед.умн.на b 0 ).

REP #ORDFIL ─1; повт. цепочечную операцию(39раз умн.без округления)

MAC X 0,Y 0,A X :(R 0)+, X 0Y :(R 4)+, Y 0 ;умн.X 0наY 0, рез.в ак; подг.сл.опер.

MOVEP A , Y : PORT _VIVOD ; побайтная пересылка содерж. аккумулятора.

JMP LOOP ; безусловный переход на метку LOOP .

Порядок проектирования цифровых фильтров.

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

1.) Фильтры нижних частот (ФНЧ; английский термин – low — pass filter ), пропускающие частоты, меньшие некоторой частоты среза ω 0.

2.) Фильтры верхних частот (ФВЧ; английский термин – high — pass filter ), пропускающие частоты, большие некоторой частоты среза ω 0.

3.) Полосовые фильтры (ПФ; английский термин – band — pass filter ), пропускающие частоты в некотором диапазоне ω 1…. ω 2 (они могут также характеризоваться средней частотой ω 0 = (ω 1 + ω 2 ω = ω 2 – ω 1 ).

4.) Режекторные фильтры (другие возможные названия – заграждающий фильтр, фильтр-пробка, полосно-задерживающий фильтр; английский термин – band — stop filter ), пропускающие на выход все частоты, кроме лежащих в некотором диапазоне ω 1…. ω 2 (они также могут характеризоваться средней частотой ω 0 = (ω 1 + ω 2 )/2 и шириной полосы пропускания Δ ω = ω 2 – ω 1 ).

Идеальная форма АЧХ фильтров этих четырех типов:

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

Кроме того, рассчитав ФНЧ, можно несложными преобразованиями изменить его частоту среза, превратить его в ФВЧ, полосовой либо режекторный фильтр с заданными параметрами. Поэтому расчет аналогового фильтра начинается с расчета так называемого фильтра-прототипа , представляющего собойФНЧ с частотой среза, равной 1 рад/с.

1.) Фильтр Баттерворта:

Функция передачи фильтра-прототипа Баттерворта ( Butterworth filter ) не имеет нулей, а её полюсы равномерно расположены на s -плоскости в левой половине окружности единичного радиуса.

Для фильтра Баттерворта частота среза определяется по уровню 1/ . Фильтр Баттерворта обеспечивает максимально плоскую вершину в полосе пропускания.

2.) Фильтр Чебышева первого рода:

Функция передачи фильтра Чебышева первого рода ( Chebyshev type I filter ) также не имеет нулей, а её полюсы расположены в левой половине эллипса на s -плоскости. Для фильтра Чебышева первого рода частота среза определяется по уровню пульсаций в полосе пропускания.

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

3.) Фильтр Чебышева второго рода:

Функция передачи фильтра Чебышева второго рода ( Chebyshev type II filter ), в отличие от предыдущих случаев, имеет и нули, и полюсы. Фильтры Чебышева второго рода называют ещё инверсными фильтрами Чебышева ( inverse Chebyshev filter ). Частотой среза фильтра Чебышева второго родасчитается не конец полосы пропускания, а начало полосы задерживания . Коэффициент передачи фильтра на нулевой частоте равен 1, на частоте среза – заданному уровню пульсаций в полосе задерживания. При ω → ∞ коэффициент передачи равен нулю при нечетном порядке фильтра и уровню пульсаций – при четном. При ω = 0 АЧХ фильтра Чебышева второго рода является максимально плоской.

4.) Эллиптические фильтры:

Эллиптические фильтры (фильтры Кауэра; английские термины – elliptic filter , Cauer filter ) в некотором смысле объединяют в себе свойства фильтров Чебышева первого и второго рода, поскольку АЧХ эллиптического фильтра имеет пульсации заданной величины, как в полосе пропускания, так и в полосе задерживания. За счет этого удается обеспечить максимально возможную (при фиксированном порядке фильтра) крутизну ската АЧХ, т.е. переходной зоны между полосами пропускания и задержания.

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

Функции MATLAB для расчета фильтров Баттерворта, Чебышева первого и второго рода, а также эллиптических фильтров, позволяют рассчитывать как аналоговые, так и дискретные фильтры. Функции расчета фильтров требуют задания в качестве входных параметров порядка фильтра и его частоты среза.

Порядок фильтра зависит:

  • от допустимой неравномерности в полосе пропускания
  • от величины зоны неопределенности. (Чем меньше зона неопределенности, тем круче спад частотной характеристики).

Для КИХ-фильтров порядок составляет несколько десятков или сотен, а для БИХ-фильтров порядок не превышает несколько единиц.

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

Фильтр с конечной импульсной характеристикой (нерекурсивный фильтр, КИХ-фильтр, FIR-фильтр) — один из видов линейных электронных фильтров, характерной особенностью которого является ограниченность по времени его импульсной характеристики (с какого-то момента времени она становится точно равной нулю). Такой фильтр называют ещё нерекурсивным из-за отсутствия обратной связи. Знаменатель передаточной функции такого фильтра — некая константа. Нерекурсивные фильтры. При нулевых значениях коэффициентов a m уравнение (2.1.2) переходит в уравнение линейной дискретной свертки функции x(k) с оператором b n:

y(k) = b n x(k-n). (2.1.3)

Значения выходных отсчетов свертки (2.1.3) для любого аргумента k определяются текущим и «прошлыми» значениями входных отсчетов. Такой фильтр называется нерекурсивным цифровым фильтром (НЦФ). Интервал суммирования по n получил название «окна» фильтра. Окно фильтра составляет N+1 отсчет, фильтр является односторонним каузальным, т.е. причинно обусловленным текущими и «прошлыми» значениями входного сигнала, и выходной сигнал не может опережать входного. Каузальный фильтр может быть реализован физически в реальном масштабе времени. При k

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

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

Содержание

Разностное уравнение, описывающее связь между входным и выходным сигналами фильтра:

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

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

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

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

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

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

Передаточная функция цифрового КИХ-фильтра представляется в виде

Читайте также:

  1. F45.3 Соматоформная вегетативная дисфункция
  2. F45.3 Соматоформная вегетативная дисфункция
  3. F45.3 Соматоформная вегетативная дисфункция.
  4. F52 Половая дисфункция, не обусловленная органическим расстройством или заболеванием
  5. F52.3 Оргазмическая дисфункция
  6. F52.9 Неуточненная половая дисфункция, не обусловленная органическим расстройством или заболеванием
  7. F52.9 Неуточненная половая дисфункция, не обусловленная органическим расстройством или заболеванием
  8. V. Спектральная функция.
  9. А.Ю. Макарушкина представляется.
  10. Агрегирование и групповые функции. Пустые значения в агрегирующих функциях. Упорядочение выходных полей
  11. Алгоритм-функция.
  12. ВАЖНАЯ ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ О ЮНГОВСКИХ ФУНКЦИЯХ

где импульсная характеристика имеет длительность N. Если импульсная характеристика цифрового КИХ-фильтра удовлетворяет следующему условию:

h(n)=h(N–l–n), (34)

для n=0, 1, . (N/2)–1, когда N четное, и для n=0, 1. (N–1)/2, когда N нечет­ное, то цифровой фильтр будет обладать линейной фазовой характеристикой.

Каждый электрик должен знать:  Выбор электрогенератора для ветряных электростанций

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

1. Метод частотной выборки.

Заданный уравнением (33) цифровой КИХ-фильтр имеет эквивалентное ДПФ-преобразование вида:

где – в действительности дискретизированная N-точечная частотная характеристика цифрового фильтра с равномерно расположенными отсчетами. Вследствие этого импульсная характеристика h(n) и передаточная функция Н(z) цифрового КИХ-фильтра определяется через ДПФ (35) таким образом:

и . (37)

Уравнение (37) является основным при расчете цифрового КИХ-фильтра.

Предположим, что частотная характеристика Hd(e j q ) задана для частот–p j q ) любого цифрового фильтра представляет собой периодическую функцию частоты q, она имеет разложение в ряд Фурье:

где . (40)

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

Одним из возможных способов получения цифровых КИХ-фильтров, аппроксимирующих функцию Нj q ), является усечение бесконечного ряда (39) до конечного числа членов. Однако из хорошо известного явления Гиббса следует, что усечение бесконечного ряда вызывает выбросы и колебания в требуемой частотной характеристике до и после любой точки разрыва. Кроме того, величина этих выбросов и колебаний не уменьшается с увеличением длины последовательности при условии сохранения ее конечности. Это по существу означает, что прямое усечение уравнения (39) для получения аппроксимации цифрового КИХ-фильтра не обеспечивает хороших результатов.

Метод взвешивания используется для получения конечных весовых последовательностей w(n), называемых окнами, которые модифицируют коэффициенты Фурье в уравнении (39) для получения требуемой импульсной характеристики hd(n) конечной длительности, где:

hd(n)=h(n)w(n), (41)

а w(n) – последовательность конечной длительности, т. е. w(n)=0 для n>N и n

2.3.3 Представление цифровых фильтров на z-плоскости.

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

1. Полюса и нули должны быть либо действительными, либо иметь комплексно-сопряженную пару.

2. Полюс в точке z=0 оказывает влияние на фазо-частотную характеристику фильтра и не изменяет амплитудно-частотную.

3. Полюс (или ноль) на единичной окружности означает, АЧХ на данной частоте бесконечно возрастает (или обращается в ноль).

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

Амплитудно-частотная характеристика и представление на z-плоскости цифрового полосовой фильтр 6-го порядка, где:

ИЗУЧЕНИЕ СВОЙСТВ И ПАРАМЕТРОВ ЦИФРОВЫХ ФИЛЬТРОВ

Целью работы является генерация сигнала, состоящего из нескольких гармоник, в системе MATLAB 6.1 и исследование в приложении Signal Processing Tool (SPTool) действия фильтров нижних, верхних частот, полосовых и режекторных фильтров на этот сигнал.

Первой задачей является генерация сигнала. Для этого запустите MATLAB 6.1. В начале создания некоторого сигнала зададим вектор-столбец времени t. Для этого в окне Command Window наберите строку:

Эта команда задает изменение t от 0 до 2 с шагом 0,01 и обеспечивает дискретизацию сигнала по времени.

Теперь зададим вектор некоторой функции y(t), которая представляет собой сумму синусоиды с амплитудой 1 и частотой 1 Гц с синусоидой, имеющей амплитуду 0.25 и частоту 3 Гц:

Обратите внимание на то, что в этом выражении t – вектор, а потому и y тоже будет вектором. Частота f=1 Гц в первой компоненте сигнала указана в явном виде (как 1) только ради наглядности. Полезно учесть, что в большинстве расчетов MATLAB не использует размерные величины, поэтому лучше сразу привыкнуть к безразмерным величинам.

Теперь можно задать построение графика y(t):

Обрабатывать сигналы удобно используя приложение Signal Processing Tool (SPTool), которое вызывается следующей командой:

Чтобы импортировать сохраненный нами сигнал в это приложение выберите в меню File пункт Import… В раскрывшимся окне поставьте переключатель Source в положение From Workspace. В поле Workspace Contents выберите строку, в которой записано имя функции описывающей сигнал (в данном примере это y), и нажмите на верхнюю кнопку со стрелкой. В поле Sampling Frequency введите частоту дискретизации. Эта величина обратна шагу изменения времени t, заданному при формировании сигнала (в данном примере шаг изменения t равен 0,01, а частота дискретизации, следовательно, равна 100).

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

Теперь в списке Signals наряду с именами встроенных сигналов появилось имя импортированного сигнала. Нажав кнопку View под списком Signals, можно посмотреть график выделенного сигнала.

В данном приложении можно проектировать и использовать цифровые фильтры для обработки сигналов. В списке Filters записаны имена трех встроенных фильтров. При нажатии кнопки View под списком Filters, появится окно Filter Viever. В нем можно посмотреть:

— АЧХ-фильтра (амплитуду можно задать либо в линейном, либо в логарифмическом масштабе либо в децибелах; частоту – либо в линейном, либо в логарифмическом масштабе);

— ФЧХ-фильтра (угол можно задать либо в радианах, либо в градусах; частоту – либо в линейном, либо в логарифмическом масштабе);

— групповое время задержки фильтра;

— нули и полюса фильтра;

— отклик на единичный импульс.

Нажав на кнопку New, получаем возможность проектирования фильтров. Кнопка Edit дает возможность редактировать ранее созданные фильтры. В раскрывшемся окне Filter Designer задаются параметры фильтра, производится расчет порядка фильтра и вывод АЧХ.

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

— КИХ-фильтр с минимальным среднеквадратическим отклонением;

— КИХ-фильтр с окном Кайзера;

— БИХ-фильтр с аппроксимацией Баттерворта;

— БИХ-фильтр с аппроксимацией Чебышева;

— БИХ-фильтр с аппроксимацией инверсной Чебышева;

— БИХ-фильтр с эллиптической аппроксимацией.

Выбрав пункт Pole/Zero Editor можно задать с помощью мыши или вводя координаты на Z-плоскости полюса и нули передаточной функции.

Порядок фильтра либо рассчитывается (если стоит птичка в поле Minimum Order), если вводится в поле Order (если птичка снята). В данной работе порядок фильтров будет рассчитываться.

В поле Type задается тип фильтра: ФНЧ, ФВЧ, полосовой или режекторный фильтр.

Ниже вводятся граничные частоты и затухания полос пропускания и задерживания.

Все вносимые изменения будут тут же отображаться на графике, если поставить птичку в поле Auto Design.

Чтобы отфильтровать сигнал, выберите его в списке Signals, затем в списке Filters выберите фильтр и нажмите на кнопку Apply. В раскрывшимся окне введите (или оставьте введенное по умолчанию) имя отфильтрованного сигнала. Нажмите Ok. Теперь это имя добавилось в списке Signals. Посмотреть график отфильтрованного сигнала можно описанным выше способом.

Задание

1. Сгенерируйте сигнал, состоящий из трех гармоник с частотами 1 , 3, и 5 Гц, имеющих амплитуды 1, 0.5 и 0.75 соответственно. Импортируйте этот сигнал в приложение SPTool и отфильтруйте его так, чтобы:

а) выделить первую гармонику;

б) выделить вторую гармонику;

в) выделить третью гармонику;

г) подавить только вторую гармонику;

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

2. Создайте БИХ-фильтр с аппроксимацией Баттерворта. Не меняя параметров фильтра, измените аппроксимацию с Баттерворта на Чебышева, затем на инверсную Чебышева и эллиптическую. Как при этом меняется АЧХ и порядок фильтра.

3. Создайте полосовые БИХ- и КИХ-фильтры с одинаковыми параметрами. Просмотрите АЧХ и ФЧХ данного фильтра. Сравните АЧХ, ФЧХ и порядки полученных фильтров.

4. Сформируйте два синусоидальных сигнала частотой 10 Гц и 20 Гц, длительностью 5 секунд и частотой дискретизации 1000 Гц.

Создайте полосовой БИХ-фильтр с аппроксимацией Чебышева со следующими параметрами:

— частота дискретизации – 1000 Гц;

— левая граничная частота полосы задерживания – 2 Гц;

— левая граничная частота полосы пропускания – 5 Гц;

— правая граничная частота полосы пропускания – 495 Гц;

— правая граничная частота полосы задерживания – 498 Гц;

— максимальное затухание в полосе пропускания – 1дБ;

— минимальное затухание в полосе задерживания – 60дБ.

Создайте полосовой КИХ-фильтр Чебышева (Equiripple FIR) с аналогичными параметрами.

Отфильтруйте сформированные сигналы с помощью созданных фильтров. Сравните сдвиг фазы между сигналами до фильтрации и после при использовании БИХ- и КИХ-фильтра.

5. С помощью редактора Pole/Zero Editor синтезируйте:

а) фильтр нижних частот;

б) фильтр верхних частот;

в) полосовой фильтр;

г) режекторный (заградительный) фильтр.

6. Запустите приложение Filter Design & Analysis Tool с помощью команды

В данном приложении сформируйте полосовой КИХ-фильтр использую метод взвешенных функций (FIR Window) со следующими параметрами:

— порядок фильтра – 50;

— частота дискретизации – 2000 Гц;

— левая граничная частота – 250 Гц;

— правая граничная частота – 750 Гц.

Определите использование какой оконной функции дает наибольшее затухание передаточной функции на частоте 200 Гц. Какой минимальный порядок фильтра, передаточная функция которого имеет затухание 40 дБ на частоте 200 Гц?

Контрольные вопросы

1. Назовите 4 основных вида аналоговых фильтров-прототипов.

2. Какие фильтры являются рекурсивными (БИХ), а какие нерекурсивными (КИХ)?

3. Что такое групповое время задержки?

4. Назовите методы расчета БИХ-фильтров.

5. Достоинства и недостатки метода взвешивания при проектировании КИХ-фильтров.

6. Преимущества и недостатки БИХ- и КИХ-фильтров.

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

Дата добавления: 2015-07-02 ; Просмотров: 2147 ; Нарушение авторских прав? ;

Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет

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

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

Разностное уравнение, описывающее связь между входным и выходным сигналами фильтра:

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

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

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

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

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

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

Фильтр с конечной импульсной характеристикой порядка N

Введение

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

КИХ-фильтр и децимация

КИХ-фильтр, структура которого изображена на рис.1, должен работать в соответствии с уравнением, задающим свертку [3]:

где h(k) – массив коэффициентов фильтра и x(n-k) – входной массив данных фильтра.

Рис. 1. Фильтр с конечной импульсной характеристикой порядка N

Число N в уравнении представляет собой число звеньев и определяет эффективность фильтра. КИХ-фильтр с числом звеньев N требует N циклов (операций) умножения с накоплением.

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

Децимация, как правило, используется в высокоскоростных системах для понижения частоты дискретизации входного сигнала [4]. Концепция децимации проиллюстрирована на рис.2. Верхняя диаграмма показывает исходный сигнал с полосой fa, который дискретизирован с частотой fs. Диаграмма, содержащая соответствующий спектр, показывает, что частота дискретизации значительно превышает частоту, требуемую для сохранения информации, содержащейся в полосе fa, то есть сигнал с полосой fa является избыточно дискретизированным сигналом. Полоса между частотами fa и fs-fa не содержит никакой полезной информации. Нижняя диаграмма показывает тот же самый сигнал, но частота дискретизации его уменьшена с коэффициентом М.

Рис. 2. Децимация дискретного сигнала с коэффициентом M

Реализация каскадной структуры фильтров

Каскадная структура фильтрации представлена на рис. 3.

Рис. 3. Процесс многокаскадной децимации

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

Общий шаг децимации выражается как произведение меньших шагов [1]:

где целое число Мi – шаг децимации N-го каскада. Каждый каскад – это независимый дециматор, обозначенный пунктирным прямоугольником. Если М»1, многокаскад­ный подход приводит к значительному снижению требований к вычислениям и памяти, ослаблению характеристик фильтров, используемых в дециматорах, а, следовательно, к использованию фильтров, менее чувствительных к эффектам конечной разрядности.

Названные преимущества возможны за счет увеличения сложности разработки и ре­ализации системы.

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

Рис. 4. Иллюстрация эффекта наложения при децимации:

а) дискретный спектр исходного сигнала, b) дискретный спектр сигнала после децимации

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

Например, для выделения узкополосного сигнала в 5 кГц из сигнала с частотой дискретизации 12,5 МГц необходимо провести прореживание в 2500 раз. Сначала определяется исходный коэффициент децимации (для частот 12,5 МГц и 5 кГц он будет равен, соответственно, 2500). Далее этот коэффициент разбивается на простые сомножители. Для этого реализован алгоритм нахождения простых сомножителей по методу Монте-Карло. В самом алгоритме для нахождения наименьшего общего делителя (НОД) использован алгоритм Евклида [2].

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

Исключение составляет случай, когда получается два простых сомножителя равных 2. В данном случае 2+2 = 2*2, т.е. с точки зрения сложности структуры каскадного фильтра оптимально использовать один каскад с коэффициентом децимации равным 4, чем два каскада с коэффициентами децимации равными 2.

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

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

Рассмотрим пример получения 1 отсчёта сигнала с частотой дискретизации 5 кГц из сигнала с частотой дискретизации 12,5 МГц при помощи описанного выше каскадного фильтра. Один отсчёт отфильтрованного сигнала можно получить из 2500 отсчётов исходного. Составим таблицу (табл. 1) количества операций на каждом каскаде.

Табл. 1. Количество операций на каждом каскаде

Реализация и анализ цифрового фильтра с конечной импульсной характеристикой

«Реализация и анализ цифрового фильтра с конечной импульсной характеристикой»

«Цифровая обработка сигналов»

1. Разработать алгоритм, реализующий заданный тип фильтра в частотной области (с использованием алгоритма БПФ).

2. Составить программу, позволяющую получить:

— спектр входного сигнала;

— спектральную (амплитудно-частотную) характеристику окна;

— отклик фильтра на заданный сигнал;

— спектр выходного сигнала.

3. Проанализировать полученные результаты.

Математическая запись сигнала во времени:

Найдем спектр заданного сигнала, для этого воспользуемся прямым преобразованием Фурье:

Затем найдем энергетический спектр сигнала, для этого возведем в квадрат модуль спектра сигнала:

Энергетический спектр сигнала имеет форму колокола, симметричного относительно начала координат, расходящийся по оси частот до бесконечности в обе стороны. Но так как фильтр с бесконечной полосой пропускания реализовать физически невозможно, определим верхнюю частоту с учетом того, что в задании полоса ФНЧ задается по уровню -3 дБ, т.е. по уровню половинной мощности:

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

Определим значение произведения

Исходя из вышесказанного, для определения

Далее, определим энергию, распределённую в диапазоне от половины частоты дискретизации до бесконечности:

Соотношение энергий будет задавать требуемый уровень неопределённости, а именно:

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

Теперь следует определить число отсчётов N, которое укладывается в периоде повторения Тп при частоте дискретизации равной 1/

Получаем, что число отсчетов, укладывающееся в периоде повторения равно:

Найдем порядок ФНЧ:

Так как полоса фильтра равна единице, то частота среза ФНЧ будет равна:

При сопоставлении частоты среза Ωср ФНЧ и верхней частоты Ωв спектра сигнала получаем ориентировочный порядок L однородного фильтра. Исходя из того, что однородный фильтр является ФНЧ с полосой пропускания на уровне половинной мощности примерно равной p/L.

Полученное значение округляем до целого числа, в итоге получаем L=13.

Теперь можно приступить к синтезу фильтра. Алгоритм, позволяющий получить спектр входного сигнала. АЧХ «окна», АЧХ и ИХ фильтра, отклик фильтра на заданный сигнал, а также спектр выходного сигнала реализован в пакете MathCAD.

В данной работе был рассчитан цифровой фильтр ФНЧ с конечной импульсной характеристикой. Такие фильтры обладают рядом положительных свойств: они всегда устойчивы, позволяют обеспечить совершенно линейную фазочастотную характеристику (постоянное время запаздывания).

Синтез фильтра производился методом окна. По заданию был задан параболический тип окна.

Сначала были найдены параметры сигнала: а, wД , w . Из условий, что уровень наложения спектров не хуже –13дБ. А также через эффективную длительность импульса, которая определяет энергетические характеристики сигнала. Далее сигнал был продискретизирован и найден его спектр.

Далее через нормируемую частоту фильтра было найдено число отсчётов фильтра.

Добавить комментарий