ЦОС-2. ЛАБОРАТОРНАЯ РАБОТА ПО ФИЛЬТРАМ
.pdf21
(0; - ) — в точку (-1; 0).
Билинейное преобразование (31) – однозначная функция. Это означает,
что каждой точке в z-плоскости соответствует только одна точка в s-плос-
кости и наоборот. Из этого свойства однозначности следует, что отсутствует эффект наложения спектров при билинейной процедуре отображения. Мето-
дика расчета цифровых фильтров на основе метода билинейного преобразо-
вания включает в себя нахождение подходящей передаточной функции Н(s)
аналогового фильтра и применение к ней билинейного преобразования (31)
для получения передаточной функции Н(z) требуемого цифрового фильтра.
При этом преобразовании будут сохраняться и частотные характеристи-
ки, и свойства устойчивости аналогового фильтра. Однако это не означает,
что частотные характеристики аналогового и цифрового фильтров идентич-
ны, одинакова только их “форма”. Например, если амплитудно-частотная ха-
рактеристика аналогового фильтра монотонно спадает для 0< < , то соот-
ветствующий цифровой фильтр, полученный с помощью соотношения (31),
будет обладать монотонно спадающей амплитудно-частотной характеристи-
кой от 0 до . Однако соотношение между цифровой частотной переменной и аналоговой частотной переменной нелинейно:
tg . (32)
2
Билинейное преобразование обеспечивает простую процедуру перехода от аналоговых к цифровым фильтрам и сохраняет вид частотных характери-
стик при преобразовании. Это означает, что широкополосные аналоговые фильтры с крутой переходной областью отображаются в широкополосные цифровые фильтры без эффекта наложения. В этом заключается основное преимущество этого метода по сравнению с методом инвариантности им-
пульсной характеристики. Недостатком билинейного преобразования являет-
ся то, что нелинейность соотношения между цифровой частотой и аналого-
22
вой частотой приводит к искажению частотных характеристик аналоговых фильтров. Кроме того, при этом преобразовании не сохраняется импульсная характеристика.
3. Частотные преобразования.
В предыдущих подразделах были рассмотрены три метода расчета циф-
ровых фильтров. Во всех этих методах на первом этапе находится подходя-
щий аналоговый фильтр, который удовлетворяет исходным требованиям.
Расчет аналогового фильтра начинается с нахождения соответствующего аналогового фильтра-прототипа нижних частот. В дальнейшем используется подходящее частотное преобразование для перевода этого прототипа нижних частот в требуемый аналоговый фильтр. Наконец, на основе процедуры ото-
бражения этот аналоговый фильтр преобразуется в желаемый цифровой БИХ-фильтр, который удовлетворяет предъявленным требованиям. Проце-
дура перехода на основе метода инвариантности импульсной характеристики по существу не обеспечивают хороших методов расчета цифровых фильтров,
если полоса аналогового фильтра не ограничена низкими частотами. Метод билинейного преобразования (из-за нелинейного соотношения между цифро-
вой и аналоговой частотой) дает лучшие результаты только для тех частот-
ных характеристик аналогового фильтра, которые представляют собой сту-
пенчатообразную функцию. Это означает, что такая процедура расчета не обеспечивает хороших методов расчета фильтров верхних частот, заграж-
дающих и некоторых типов полосовых фильтров.
Для исключения этих недостатков используется другой подход к расчету цифровых БИХ-фильтров на основе методов расчета аналоговых фильтров. В
этом случае процедура перехода всегда имеет дело с нормированным прото-
типом нижних частот. Следовательно, рассмотренные в предыдущих подраз-
делах процедуры перехода смогут обеспечить хорошие результаты. В основ-
ном этот подход состоит в нахождении подходящего нормированного анало-
гового фильтра нижних частот. Аналоговый прототип отображается в цифро-
вой фильтр-прототип нижних частот. Наконец, используется цифровое час-
23
тотное преобразование для перехода от цифрового прототипа нижних частот к окончательному варианту, т. е. цифровому фильтру с подходящими харак-
теристиками в полосе пропускания и полосе задерживания и удовлетворяю-
щему предъявленным требованиям.
2.3.2. Расчет цифровых КИХ-фильтров.
Передаточная функция цифрового КИХ-фильтра представляется в виде
N 1 |
|
H(z) h(n)z n , |
(33) |
n 0
где импульсная характеристика имеет длительность 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 1 |
|
H(k) |
h(n)exp ( j2 nk/N) , |
(35) |
n 0
24
~
где H(k) – в действительности дискретизированная N-точечная частотная характеристика цифрового фильтра с равномерно расположенными отсчета-
ми. Вследствие этого импульсная характеристика h(n) и передаточная функ-
ция Н(z) цифрового КИХ-фильтра определяется через ДПФ (35) таким обра-
зом:
|
|
|
1 |
N 1 |
~ |
|
|
|
h(n) |
|
H(k)exp[j2 nk/N] |
(36) |
|||||
|
||||||||
|
|
|
N k 0 |
|
|
|
|
|
|
1 N 1 ~ |
|
1 z N |
|
||||
и H(z) |
|
k 0 H |
(k) |
|
. |
(37) |
||
N |
1 z 1 exp[j2 k / N] |
Уравнение (37) является основным при расчете цифрового КИХ-
фильтра.
Предположим, что частотная характеристика Hd(ej ) задана для частот–
< < . Это означает, что она определена и для всех частот . Процедура рас-
~
чета должна давать значения H(k), т. е. дискретизированную N-точечную требуемую частотную характеристику с равномерным расположением отсче-
тов:
~ |
(e |
j |
), при =2 k/N, |
(38) |
H(k) Hd |
|
где k=0, 1, 2, …, N–1. Используя непосредственно данные соотношения (38),
можно получить подходящую КИХ-передаточную функцию из уравнения
(37). Эта методика обеспечивает совпадение полученной и требуемой час-
тотных характеристик в точках дискретизации =2 k/N для k=0, 1, 2,..., N–l. 2. Метод взвешивания.
Поскольку частотная характеристика Н(еj ) любого цифрового фильтра представляет собой периодическую функцию частоты , она имеет разложе-
|
|
|
|
25 |
ние в ряд Фурье: |
|
|
||
|
|
H(ej ) |
|
(39) |
|
|
h(n)e j n , |
||
|
|
|
n |
|
где h(n) |
1 |
H(ej )ej n d . |
|
(40) |
2 |
|
|||
|
|
|
|
Очевидно, что коэффициенты ряда Фурье h(n) фактически представляют собой импульсную характеристику цифрового фильтра.
Одним из возможных способов получения цифровых КИХ-фильтров,
аппроксимирующих функцию Н(еj ), является усечение бесконечного ряда
(39) до конечного числа членов. Однако из хорошо известного явления Гиб-
бса следует, что усечение бесконечного ряда вызывает выбросы и колебания в требуемой частотной характеристике до и после любой точки разрыва.
Кроме того, величина этих выбросов и колебаний не уменьшается с увеличе-
нием длины последовательности при условии сохранения ее конечности. Это по существу означает, что прямое усечение уравнения (39) для получения аппроксимации цифрового КИХ-фильтра не обеспечивает хороших результа-
тов.
Метод взвешивания используется для получения конечных весовых по-
следовательностей w(n), называемых окнами, которые модифицируют коэф-
фициенты Фурье в уравнении (39) для получения требуемой импульсной ха-
рактеристики hd(n) конечной длительности, где:
hd(n)=h(n)w(n), |
(41) |
а w(n) – последовательность конечной длительности, т. е. w(n)=0 для n>N и n<0. Из соотношения (41) следует, что результирующая импульсная характе-
ристика hd(n) также имеет протяженность N отсчетов.
26
Поскольку умножение двух последовательностей во временной области эквивалентно свертке двух частотных характеристик в частотной области,
метод взвешивания обеспечивает сглаживание выбросов первоначальной частотной характеристики, т. е. подавление ее отклонений и пульсаций. Не-
достатком является расширение переходной полосы.
Для завершения этого подраздела приведем некоторые характерные функции окна:
а) прямоугольное окно:
1 для 0 n N 1; w(n) 0 для n 0,n N 1;
б) окно Бартлетта или треугольное окно:
|
2n/ N 1 |
для |
0 n N 1 /2; |
|
|
|
N 2 /2 n N 1; |
w(n) 2 2 2n / N 1 для |
|||
|
0 |
для |
n 0,n N 1; |
|
в) окно Ханна: |
|
|
|
0,51 cos 2 n/ N 1 |
для |
0 n N 1; |
|
w(n) |
0 |
для |
n 0,n N 1. |
|
Как и в случае аналоговых фильтров, цифровые БИХ-фильтры не могут обеспечить совершенные линейные фазовые характеристики. В противопо-
ложность им цифровые КИХ-фильтры могут быть рассчитаны для обеспече-
ния линейных фазовых характеристик. Кроме того, цифровые КИХ-фильтры всегда устойчивы. Это положительные качества цифровых КИХ-фильтров. К
отрицательным чертам относится то, что исполнение цифрового КИХ-
фильтра требует большего числа вычислений и большего числа цифровых
27
элементов. Однако во многих ситуациях требуются цифровые КИХ-фильтры для выполнения тех задач, которые невозможно решить на основе цифровых БИХ-фильтров, а именно: получение фильтров с линейной фазой и много-
скоростных фильтров, где входной и соответствующий выходной сигналы дискретизированы на разных скоростях.
2.3.3 Представление цифровых фильтров на z-плоскости.
Цифровой фильтр может быть синтезирован путем размещения полюсов и нулей передаточной функции на z-плоскости, основанном на следующих правилах:
1.Полюса и нули должны быть либо действительными, либо иметь комплексно-сопряженную пару.
2.Полюс в точке z=0 оказывает влияние на фазо-частотную характери-
стику фильтра и не изменяет амплитудно-частотную.
3. Полюс (или ноль) на единичной окружности означает, АЧХ на дан-
ной частоте бесконечно возрастает (или обращается в ноль).
4. Полюс вне единичной окружности означает, что фильтр нестабилен,
т.е. отклик фильтра на импульс не затухает, а возрастает.
Амплитудно-частотная характеристика и представление на z-плоскости цифрового полосовой фильтр 6-го порядка, где:
• – ноль, –полюс.
28
ИЗУЧЕНИЕ СВОЙСТВ И ПАРАМЕТРОВ ЦИФРОВЫХ ФИЛЬТРОВ
Целью работы является генерация сигнала, состоящего из нескольких гармоник, в системе MATLAB 6.1 и исследование в приложении Signal Processing Tool (SPTool) действия фильтров нижних, верхних частот, полосо-
вых и режекторных фильтров на этот сигнал.
Первой задачей является генерация сигнала. Для этого запустите MATLAB 6.1. В начале создания некоторого сигнала зададим вектор-столбец вре-
мени t. Для этого в окне Command Window наберите строку: >> t=(0:.01:2)’;
Эта команда задает изменение t от 0 до 2 с шагом 0,01 и обеспечивает дис-
кретизацию сигнала по времени.
Теперь зададим вектор некоторой функции y(t), которая представляет собой сумму синусоиды с амплитудой 1 и частотой 1 Гц с синусоидой,
имеющей амплитуду 0.25 и частоту 3 Гц: >> y=sin(2*pi*1*t)+0.25*sin(2*pi*3*t);
Обратите внимание на то, что в этом выражении t – вектор, а потому и y
тоже будет вектором. Частота f=1 Гц в первой компоненте сигнала указана в явном виде (как 1) только ради наглядности. Полезно учесть, что в большин-
стве расчетов MATLAB не использует размерные величины, поэтому лучше сразу привыкнуть к безразмерным величинам.
Теперь можно задать построение графика y(t): >> plot(t,y);
Обрабатывать сигналы удобно используя приложение Signal Processing Tool (SPTool), которое вызывается следующей командой:
>> sptool
Чтобы импортировать сохраненный нами сигнал в это приложение вы-
берите в меню File пункт Import… В раскрывшимся окне поставьте переклю-
чатель Source в положение From Workspace. В поле Workspace Contents выбе-
29
рите строку, в которой записано имя функции описывающей сигнал (в дан-
ном примере это y), и нажмите на верхнюю кнопку со стрелкой. В поле Sampling Frequency введите частоту дискретизации. Эта величина обратна шагу изменения времени t, заданному при формировании сигнала (в данном при-
мере шаг изменения t равен 0,01, а частота дискретизации, следовательно,
равна 100).
Fдискр |
|
1 |
(42) |
|
t |
||||
|
|
|
Вполе Name записано имя, под которым будет значиться данный сигнал
вприложении SPTool. На данной стадии это имя можно изменить по собст-
венному усмотрению. Нажмите кнопку Ok.
Теперь в списке Signals наряду с именами встроенных сигналов появи-
лось имя импортированного сигнала. Нажав кнопку View под списком
Signals, можно посмотреть график выделенного сигнала.
В данном приложении можно проектировать и использовать цифровые фильтры для обработки сигналов. В списке Filters записаны имена трех встроенных фильтров. При нажатии кнопки View под списком Filters, поя-
вится окно Filter Viever. В нем можно посмотреть:
-АЧХ-фильтра (амплитуду можно задать либо в линейном, либо в ло-
гарифмическом масштабе либо в децибелах; частоту – либо в линей-
ном, либо в логарифмическом масштабе);
-ФЧХ-фильтра (угол можно задать либо в радианах, либо в градусах;
частоту – либо в линейном, либо в логарифмическом масштабе);
-групповое время задержки фильтра;
-нули и полюса фильтра;
-отклик на единичный импульс.
Нажав на кнопку New, получаем возможность проектирования фильтров.
Кнопка Edit дает возможность редактировать ранее созданные фильтры. В
30
раскрывшемся окне Filter Designer задаются параметры фильтра, произво-
дится расчет порядка фильтра и вывод АЧХ.
В поле Sampling Frequency введите частоту дискретизации обрабатывае-
мого сигнала. В поле Algorithm можно выбрать один из следующих видов цифровых фильтров:
-КИХ-фильтр Ремеза;
-КИХ-фильтр с минимальным среднеквадратическим отклонением;
-КИХ-фильтр с окном Кайзера;
-БИХ-фильтр с аппроксимацией Баттерворта;
-БИХ-фильтр с аппроксимацией Чебышева;
-БИХ-фильтр с аппроксимацией инверсной Чебышева;
-БИХ-фильтр с эллиптической аппроксимацией.
Выбрав пункт Pole/Zero Editor можно задать с помощью мыши или вво-
дя координаты на Z-плоскости полюса и нули передаточной функции.
Порядок фильтра либо рассчитывается (если стоит птичка в поле Minimum Order), если вводится в поле Order (если птичка снята). В данной работе порядок фильтров будет рассчитываться.
В поле Type задается тип фильтра: ФНЧ, ФВЧ, полосовой или режектор-
ный фильтр.
Ниже вводятся граничные частоты и затухания полос пропускания и за-
держивания.
Все вносимые изменения будут тут же отображаться на графике, если поставить птичку в поле Auto Design.
Чтобы отфильтровать сигнал, выберите его в списке Signals, затем в спи-
ске Filters выберите фильтр и нажмите на кнопку Apply. В раскрывшимся ок-
не введите (или оставьте введенное по умолчанию) имя отфильтрованного сигнала. Нажмите Ok. Теперь это имя добавилось в списке Signals. Посмот-
реть график отфильтрованного сигнала можно описанным выше способом.