Главная страница

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


Скачать 0.7 Mb.
Название1. Синтез цф на базе лдс, включающий следующие основные шаги
Анкорпроектирование фильров
Дата16.12.2021
Размер0.7 Mb.
Формат файлаpdf
Имя файлаПроектирование КИХ фильтров.pdf
ТипМетодические указания
#306159
Казанский национальный исследовательский технический университет им. АН. Туполева-КАИ Институт радиоэлектроники и телекоммуникаций Кафедра радиоэлектронных и телекоммуникационных систем Методические указания к лабораторной работе Проектирование цифровых фильтров с конечной импульсной характеристикой по дисциплинам Цифровая обработка сигналов Цифровая обработка сигналов и цифровые сигнальные процессоры в системах связи Казань, 2014 г.

2 Лабораторная работа Синтез оптимальных (по Чебышеву) КИХ-фильтров с использованием MATLAB Цель работы Получение навыков работы в пакете прикладных программ MatLab, закрепление знаний в области проектирования цифровых фильтров, освоения методов проектирования цифровых фильтров с конечной импульсной характеристикой. Теоретический материал. В настоящей работе используется материал из цикла статей Солониной АИ. Моделирование цифровой обработки сигналов в
MATLAB»
(http://www.kit- e.ru/assets/files/pdf/2008_11_146.pdf). Цифровой фильтр (ЦФ) представляет собой линейную дискретную систему, выполняющую преобразование входной последовательности в выходную по алгоритму, описываемому разностным уравнением. Этот алгоритм отображает заданная структура (структура ЦФ), реализованная аппаратно или программно. В зависимости оттого, являются ли параметры ЦФ неизменными или меняющимися во времени, он будет стационарным или адаптивным. По умолчанию речь пойдет о стационарных ЦФ. Проектирование ЦФ производят в четыре этапа
1. Синтез ЦФ на базе ЛДС, включающий следующие основные шаги
1. Выбор типа ЦФ. Двум типам ЛДС — нерекурсивной (КИХ) и рекурсивной (БИХ) — соответствуют два типа ЦФ: – КИХ-фильтры (FIR filters); – БИХ-фильтры (IIR filters).
2. Задание требований к характеристикам ЦФ. Требования к характеристикам ЦФ зависят от его типа (КИХ или БИХ) и назначения (частотно-избирательный, преобразователь Гильберта и т. д. По умолчанию подразумевают частотно- избирательные ЦФ.
3. Выбор метода синтеза.
4. Расчет коэффициентов передаточной функции ЦФ.
2. Выбор структуры ЦФ.
3. Моделирование структуры ЦФ с учетом эффектов квантования.
4. Реализация структуры ЦФ. Структура ЦФ (алгоритм вычисления реакции) преимущественно реализуется программно на базе цифровых процессоров обработки сигналов (ЦПОС) или ПЛИС, поэтому данный этап включает также отладку программной части ЦФ соответствующими аппаратными средствами. В MATLAB имеются десятки функций, предназначенных для проектирования ЦФ, основная часть которых сосредоточена в пакетах расширения Signal Processing Toolbox, Filter Design Toolbox и
Fixed Point Toolbox. На базе этих функций разработаны стандартные программы GUI FDATool и
SPTool. Следует, однако, понимать, что круг задач, решаемых с помощью GUI, ограничен, и для моделирования сложных систем ЦОС необходимо овладеть программными средствами проектирования ЦФ. Кроме того, знакомство с функциями MATLAB обеспечит более глубокое понимание организации GUI. В этой статье рассмотрен первый этап проектирования для оптимальных (по Чебышеву) КИХ- фильтров. Свойства КИХ-фильтров

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

3 Следовательно, для КИХ-фильтров расчет коэффициентов передаточной функции сводится к расчету импульсной характеристики. Длиной и порядком КИХ-фильтра называют соответственно число коэффициентов N и порядок R передаточной функции (1), где Сложность
КИХ-фильтра определяется его длиной N (порядком R).
КИХ-фильтры характеризуются следующими особенностями
 возможностью обеспечить строго линейную ФЧХ (с точностью до скачков на π);
 устойчивостью по определению. Линейная (с точностью до скачков на π) ФЧХ (ЛФЧХ) КИХ-фильтра обеспечивается в томи только том случае, если для его ИХ h(n) выполняется одно из двух условий
 симметрии
 антисимметрии: По признакам симметрии/антисимметрии ИХ h(n) и нечетности/четности длины N различают четыре типа КИХ-фильтров с линейной ФЧХ (ЛФЧХ), представленные в таблице 1. При синтезе
КИХ-фильтров следует быть внимательным к его избирательности (последний столбец таблицы 1). Таблица 1.
Четыре типа КИХ-фильтров с ЛФЧХ Тип КИХ-фильтра

ЛФЧХ (с точностью до скачков на π)
ЦФ Тип 1 (Type-1): длина N — нечетная порядок R — четный h(n) — симметричная
φ( ) = –( R)/2
ФНЧ, ФВЧ, ПФ, РФ Тип 2 (длина N — четная порядок R
— нечетный h(n) — симметричная
φ( ) = –( R)/2
ФНЧ, ПФ Тип 3 (Type-3): длина N — нечетная порядок R — четный h(n) — антисимметричная, h(R/2)=0
φ( ) = (π/2)–((R)/2 ПФ, ЦПГ,
ЦД Тип 4 (Type-4): длина N — четная порядок
R — нечетный h(n) — антисимметричная
φ( ) = (π/2)–((R)/2)
ФВЧ, ПФ,
ЦПГ, ЦД Помимо частотно-избирательных, в таблицу 1 включены два специальных КИХ-фильтра — цифровой преобразователь Гильберта
(ЦПГ) и цифровой дифференциатор
(ЦД), с проектированием которых можно познакомиться в [5]. Задание требований к частотным характеристикам КИХ-фильтров Методы синтеза частотно-избирательных КИХ-фильтров изначально предполагают ЛФЧХ (с точностью до скачков на π), поэтому требования задаются только к АЧХ в основной полосе частот
[0; Д и включают в себя
 частоту дискретизации Д
 граничные частоты полос пропускания (ПП) и полос задерживания (ПЗ), для которых введены условные обозначения

f
χ
— граничная частота ПП для ФНЧ и ФВЧ;

f
k
— граничная частота ПЗ для ФНЧ и ФВЧ;

f–
χ
, f
χ
— левая и правая граничные частоты ПП для ПФ и РФ

4

f
–k
, f
k
— левая и правая граничные частоты ПЗ для ПФ и РФ
 максимально допустимые отклонения АЧХ Â(f ), для которых введены условные обозначения

δ
1
— от единицы в ПП;

δ
2
— от нуля в ПЗ. При синтезе КИХ-фильтров в дополнительно задается вектор значений идеальной АЧХ: единица — в ПП и ноль в ПЗ. На рис. 1 приведен пример идеальной АЧХ и требований к АЧХ для ФНЧ. Риса) Идеальная АЧХ; б) требования к АЧХ для ФНЧ Требования могут задаваться к АЧХ в децибелах — к характеристике ослабления или к характеристике затухания В MATLAB требования задаются к характеристике затухания (6). В требованиях к характеристике затухания (6) вместо значений δ
1
и δ
2
задаются

a
max
дБ — максимально допустимое затухание в ПП;

a
min
дБ — минимально допустимое затухание в ПЗ. Взаимосвязь между значениями δ
1
, δ
2
и amax, amin соответственно устанавливается формулами
Пример Для ФНЧ заданы значения δ
1
= 0,05 и δ
2
= 0,01 (d1 и d2). Необходимо рассчитать значения a
max и a
min
(amax и) по формулам (7, 8):
>> d1=0.05; amax=-20.*log10(1-d1) amax =
0.4455
>> d2=0.01; amin=-20.*log10(d2) amin =
40 Получили a
max
= 0,4455 дБ и a
min
= 40 дБ.

5 Синтез КИХ-фильтров методом наилучшей равномерной (чебышевской) аппроксимации Метод наилучшей равномерной (чебышевской) аппроксимации поясним после знакомства с терминологией и обозначениями (табл. 2). Таблица 2. Термины чебышевской аппроксимации Обозначение Наименование Смысл
Ω Интервал аппроксимации Совокупность ПП и ПЗ в основной полосе частот
ξ() Идеальная АЧХ Аппроксимируемая функция — непрерывная функция на интервале Ω: единица — в ПП, ноль — в ПЗ с линейной интерполяцией в переходных полосах
B( , ) Тригонометрический полином Аппроксимирующая функция — тригонометрический полином порядка M с вектором неизвестных коэффициентов — амплитудная функция КИХ-фильтра с
ЛФЧХ
α Веса Веса (весовые коэффициенты) в ПП и ПЗ на интервале Ω
— вектор
|δ()| Модуль взвешенной ошибки аппроксимации Модуль взвешенной ошибки аппроксимации на интервале Ω: |δ()| = α|B(, )–ξ( )| Максимум модуля взвешенной ошибки аппроксимации Максимальное значение |δ()| на интервале Ω:
δ
max
= max|δ()| = αmax|B(, )–ξ()|
δ
min Минимум максимума модуля взвешенной ошибки аппроксимации
Минимальное значение δ
max на интервале Ω для тригонометрического полинома наилучшего приближения B(, ) по критерию Чебышева αmax|B(, )–
ξ( )| = min, вектор коэффициентов которого находится в результате решения оптимизационной задачи Используя приведенную в таблице 2 терминологию, поясним суть метода чебышевской аппроксимации в приложении к синтезу оптимальных (по Чебышеву) КИХ-фильтров:
1. АЧХ КИХ-фильтра A() связана сего амплитудной функцией (тригонометрическим полиномом B(, )) соотношением При этом вектор коэффициентов связан линейно с импульсной характеристикой h(n), а порядок полинома M — линейно с порядком R передаточной функции. Следовательно, расчет ИХ h(n)
КИХ-фильтра методом чебышевской аппроксимации сводится к расчету вектора коэффициентов . Согласно теореме Чебышева, существует единственный полином B(, ) наилучшего равномерного приближения (единственный вектор ) функции ξ() на интервале Ω заданного порядка M, обеспечивающий δ
min max Наоборот, существует единственный полином B(, ) наилучшего равномерного приближения (единственный вектор ) функции ξ() на интервале Ω при заданном значении δmin max обеспечивающий минимальный порядок полинома Следовательно, при заданных требованиях к АЧХ, полагая можно синтезировать КИХ-фильтр минимального порядка — оптимальный (по Чебышеву) КИХ- фильтр. Во избежание путаницы с порядком полинома R
min
, при котором требования к АЧХ также выполняются (нос другими векторами ), введем обозначение R
opt
, где R
opt
< R
min

6 o
Согласно теореме Чебышева, полином наилучшего приближения B(, ) функции ξ() на интервале Ω имеет равноволновый характер. Частоты, на которых модуль |δ()| достигает значения δ
min max
, называют частотами альтернанса, так как значения δ
min max на этих частотах чередуются по знаку. Для того чтобы обеспечить одинаковое значение δ
min max на интервале Ω при различных заданных максимально допустимых отклонениях АЧХ δ
1
и δ
2
, соответственно в ПП и ПЗ, вводят веса (весовые коэффициенты, рассчитываемые следующим образом o
– вес, равный единице, присваивается полосе с наибольшим максимально допустимым отклонением o
– веса в остальных полосах рассчитываются как отношение наибольшего максимально допустимого отклонения к максимально допустимому отклонению в данной полосе. Поэтому веса — всегда числа, большие единицы. Процедура синтеза КИХ-фильтра Процедура синтеза КИХ-фильтров методом чебышевской аппроксимации включает в себя
1. Задание требований к АЧХ.
2. Оценку порядка фильтра R. Оценку порядка фильтра R производят по эмпирическим формулам на основании требований к АЧХ.
3. Расчет импульсной характеристики фильтра h(n) в (1). Импульсную характеристику рассчитывают по алгоритму Паркса-Мак-Клиллена, разработанному на основе метода аппроксимации Чебышева и обменного алгоритма Ремеза. ИХ может быть как симметричной, таки антисимметричной, поэтому необходимо следить затем, на основе какого из четырех типов КИХ-фильтров может синтезироваться фильтр требуемой избирательности (табл. 1).
4. Проверку выполнения требований к АЧХ. В методе чебышевской аппроксимации проверка выполнения требований заключается в сравнении максимального по модулю отклонения АЧХ от идеальной с δ
min max
(9). Требования выполняются, если максимальное по модулю отклонение АЧХ не превосходит δ
min Возможны две ситуации.
 Требования не выполняются. В этом случае следует увеличить порядок R и вернуться к пп.
3–4. Процедуру повторять до тех пор, пока не будет найден минимальный порядок R
opt
= R
min
, при котором выполняются требования к АЧХ.
 Требования выполняются. В этом случае следует уменьшить порядок R и вернуться к пп. 3–4. Процедуру повторять до тех пор, пока не будет найден минимальный порядок R
opt
= R
min
, при котором выполняются требования к АЧХ. В обоих случаях порядок R
opt принципиально может выбираться среди всех четырех типов КИХ- фильтров, возможных для заданного типа избирательности. Таким образом, процедура синтеза КИХ-фильтра методом чебышевской аппроксимации является итерационной. Синтез КИХ-фильтров методом чебышевской аппроксимации можно выполнить с помощью функции
[b,error,opt]=firpm(R,f0,m0,weight,ftype,{lgrid}) где

R — порядок фильтра R (2);

f0 — вектор-столбец нормированных частот f = д, в основной полосе частот [0;1], включающий левую границу основной полосы частот f0 = 0; граничные частоты ПП и ПЗ в порядке их следования слева направо правую границу основной полосы f0 = 1;

m0 — вектор-столбец значений идеальной АЧХ на частотах вектора f0; длины векторов m0 и f0 совпадают

weight — вектор-столбец весов в ПП и ПЗ в порядке следования слева направо

7

ftype — параметр, указывающий тип КИХ-фильтра и принимающий значения (табл. 1):
'hilbert' — для го иго типов и цифровых преобразователей Гильберта
'differentiator' — для го иго типов и цифровых дифференциаторов;
 по умолчанию (если значение параметра не задано явно) — для го иго типов

lgrid — коэффициент плотности сетки частот (Density Factor); указывается элементом массива ячеек в фигурных скобках и равен целому числу C≥16 (16 — по умолчанию значение lgrid используется для автоматического расчета числа точек на густой сетке частот интервала Ω; с ростом lgrid возрастает точность вычисления коэффициентов b;

b — вектор коэффициентов передаточной функции (1) длины N = R+1;

opt — массив записей со следующими полями
opt.fgrid — сетка нормированных частот (вектор) на интервале аппроксимации Ω совокупности ПП и ПЗ) в шкале нормированных частот f; правая граница основной полосы частот, равная единице, не выводится
opt.H — вектор значений комплексной частотной характеристики на сетке частот opt.fgrid;
opt.error — вектор отклонений АЧХ от идеальной на сетке частот opt.fgrid;
opt.des — вектор значений идеальной
АЧХ на сетке частот opt.fgrid;
opt.wt — вектор весов на сетке частот opt.fgrid;
opt.iextr — вектор номеров элементов вектора opt.fgrid, соответствующих частотам альтернанса;
opt.fextr — вектор нормированных частот альтернанса;
error — максимальное отклонение
АЧХ от идеальной на интервале
Ω; error=max(abs(opt.error)). Оценку порядка R КИХ-фильтра для функции firpm, а также вычисление параметров f0, m0, weight производят по требованиям к АЧХ с помощью функции
[R,f0,m0,weight]=firpmord(f,m,ripple,Fs) Здесь f — вектор граничных абсолютных частот (Гц) в порядке их следования слева направо m— вектор значений идеальной АЧХ в порядке их следования слева направо соблюдается условие length(f)=2*length(m)-2; ripple — вектор максимально допустимых отклонений АЧХ в порядке их следования слева направо Fs — частота дискретизации д (Гц. Остальные параметры были определены ранее для функции firpm. Приведем примеры синтеза оптимальных КИХ-фильтров ФНЧ и ПФ с помощью функции firpm. Пример Заданы требования к АЧХ ФНЧ (рис. 1, табл. 3). Таблица 3. Требования к АЧХ ФНЧ
Частоты(Гц) и их обозначения в
MATLAB Максимально допустимые отклонения АЧХ и их обозначения в MATLAB Частота дискретизации д
Fs 8000 –

– Граничная частота ПП
f
χ
ft 1000 В полосе пропускания (ПП) δ
1
d1 0,05 Граничная частота ПЗ
f
k
fk 1500 В полосе задерживания
(ПЗ)
δ
2
d2 0,01 Синтезировать КИХ-фильтр методом чебышевской аппроксимации можно с помощью функции firpm:
>> Fs=8000;
>> ft=1000; fk=1500;
f=[ft fk];

8
>> m=[1 0];
>> d1=0.05; d2=0.01;
ripple=[d1 d2];
>> [R,f0,m0,weight]=firpmord(f,m,ripple,Fs);
>> [R weight'] ans =
23
1
5
>> [b,error,opt]=firpm(R,f0,m0,weight); В
MATLAB при синтезе
КИХ-фильтров с помощью функции firpm порядок фильтра R определяется с точностью дои для его уточнения необходима проверка выполнения требований к АЧХ. Проверим выполнение требований к АЧХ. Выведем значение error:
>> error error =
0.0675 Сравнивая error св данном случае с δ
1
= d1 = 0,05, видим, что требования не выполняются. Следует увеличить порядок R. ФНЧ можно синтезировать на базе КИХ- фильтров го иго типов (табл. 1), поэтому порядок может быть как четным, таки нечетным
>> R=R+1;
>> [R error] ans =
[b,error,opt]=firpm(R,f0,m0,weight);
24.0000
0.0553 Требования не выполняются. Выполним еще одну итерацию
>> R=R+1;
>> [R error] ans =
[b,error,opt]=firpm(R,f0,m0,weight);
25.0000
0.0435 Требования к АЧХ выполняются. Синтезирован оптимальный ФНЧ с ЛФЧХ порядка R
opt
= 25 на базе КИХ-фильтра го типа. Для построения графиков ИХ, АЧХ и ФЧХ КИХ-фильтра можно создать внешнюю функцию plot_fir:
function plot_fir(R,b,Fs)
% Построение графиков характеристик КИХ-фильтра
% R— порядок КИХ-фильтра
% b— вектор коэффициентов передаточной функции
% a=[1] — коэффициент знаменателя передаточной функции
% Fs — частота дискретизации (Гц) a=[1]; n=0:R; subplot(3,1,1), stem(n,b,'fill','MarkerSize',3), xlabel('n'),... title('Impulse Response'), grid f=0:((Fs/2)/1000):Fs/2;
H=freqz(b,a,f,Fs); MAG=abs(H); PHASE=angle(H); subplot(3,1,2),plot(f,MAG),xlabel('f(Hz)'),title('MAGNITUDE'),grid subplot(3,1,3),plot(f,PHASE),xlabel('f(Hz)'),title('PHASE'),grid

9 Построим графики ИХ,
АЧХ и
ФЧХ оптимального
ФНЧ с помощью внешней функции plot_fir (рис. 2): Рис. 2. Характеристики оптимального КИХ-фильтра ФНЧ: а) импульсная характеристика б) АЧХ; в) ФЧХ
>> plot_fir(R,b,Fs) Поля массива записей opt выводятся по его имени
>> opt Пример Заданы требования к АЧХ ПФ (табл. 4).
Таблица 4. Требования к АЧХ ПФ Частоты (Гц) и их обозначения в
MATLAB Максимально допустимые отклонения
АЧХ и их обозначения в MATLAB Частота дискретизации д
Fs
8000 –

– Граничная частота ПЗ1
f–
k
fk1 1000 В полосе задерживания (ПЗ1) δ
2
d2 0,01 Левая граничная частота ПП f–
χ
ft1 1400 В полосе пропускания (ПП)
δ
1
d1 0,05 Правая граничная частота ПП f
χ
ft2
2000 Граничная частота ПЗ2
f
k
fk2
2400 В полосе задерживания (ПЗ2) δ
2
d2 0,01 Синтезировать КИХ-фильтр методом чебышевской аппроксимации можно с помощью функции firpm:
>> Fs=8000;
>> fk1=1000; ft1=1400; ft2=2000; fk2=2400; f=[fk1 ft1 ft2 fk2];
>> m=[0 1 0];
>> d2=0.01; d1=0.05; ripple=[d2 d1 d2];
>> [R,f0,m0,weight]=firpmord(f,m,ripple,Fs);
>> [R weight']

10 ans =
29 5 1 5
>> [b,error,opt]=firpm(R,f0,m0,weight); Проверим выполнение требований к АЧХ. Выведем значение error:
>> error error =
0.0663 Сравнивая error св данном случае с δ
1
= d1 = 0,05, видим, что требования не выполняются. Следует увеличить порядок R. ПФ можно синтезировать на базе КИХ-фильтров любого из 4 типов (табл. 1), поэтому порядок может быть как четным, таки нечетным
>> R=R+1; [b,error,opt]=firpm(R,f0,m0,weight);
>> [R error] ans =
30.0000
0.0666 Требования не выполняются. Выполним следующую итерацию, изменив тип КИХ-фильтра на й. Выбирая КИХ-фильтр го или го типа, параметру ftype в функции firpm следует присваивать значение 'hilbert':
>> [b,error,opt]=firpm(R,f0,m0,weight,'hilbert');
>> [R error] ans =
30.0000
0.0582 Требования не выполняются, но значение максимальной ошибки уменьшилось. Увеличим порядок R и синтезируем ПФ, например, на базе КИХ-фильтра го типа
>> R=R+1; [b,error,opt]=firpm(R,f0,m0,weight,'hilbert');
>> [R error] ans =
31.0000
0.0412 Требования к АЧХ выполняются. Синтезирован оптимальный ПФ с ЛФЧХ порядка R
opt
= 31 на базе КИХ-фильтра го типа. Рис. 3. Импульсная характеристика (а, АЧХ (б) и ФЧХ (в) оптимального КИХ-фильтра ПФ

11 Построим графики ИХ (антисимметричной, АЧХ и ФЧХ синтезированного ПФ с помощью функции plot_fir, созданной в примере 2 (рис. 3):
>> plot_fir(R,b,Fs) В пакете Filter Design Toolbox имеется функция firgr с форматом
[b,error,opt]=firgr(R,f0,m0,weight,ftype,{lgrid},'check') которая по существу дублирует функцию firpm, стой разницей, что массив записей opt содержит дополнительные поля [5]. Представляет интерес формат функции firgr, позволяющий автоматически синтезировать оптимальный КИХ-фильтр:
[b,err,opt]=firgr({m,R},f0,m0,ripple,ftype,{lgrid},'check') где

{m,R} — двухэлементный массив ячеек, в котором R — оценка порядка (может отсутствовать, а m — параметр, контролирующий выбор минимального порядка и принимающий значения
'minorder' — выбирается минимальный порядок среди четных и нечетных значений
'mineven' — выбирается минимальный четный порядок
'minodd' — выбирается минимальный нечетный порядок

err — параметр, который не следует путать с параметром error вфункции firpm; при синтезе частотно-избирательных
КИХ-фильтров он практического интереса не представляет. Модуль максимального отклонения
АЧХ определяется как max(abs(opt.error)). Все остальные параметры были определены ранее. Параметры f0, m0, ripple, R по-прежнему вычисляются с помощью функции firpmord по требованиям к АЧХ. Приведем примеры синтеза оптимальных КИХ-фильтров ФНЧ и ПФ с помощью функции firgr. Пример Заданы требования к АЧХ ФНЧ (рис. 1, табл. 3). Необходимо синтезировать оптимальный ФНЧ методом чебышевской аппроксимации с помощью функции firgr. Сохранить коэффициенты b на диске для использования в дальнейшем
>> [b,err,opt]=firgr({'minorder',R},f0,m0,ripple);
>> save b
>> opt.order ans =
25 Убедимся в выполнении требований к АЧХ:
>> error=max(abs(opt.error)) error=
0.0436 Требования к АЧХ выполняются. Синтезирован оптимальный ФНЧ с ЛФЧХ порядка R
opt
= 25 на базе КИХ-фильтра го типа, такой же, как в примере 2. Пример Заданы требования к АЧХ ПФ (табл. 4). Необходимо синтезировать оптимальный ПФ методом чебышевской аппроксимации с помощью функции firgr. ПФ может быть синтезирован на базе КИХ-фильтров всех 4 типов. В данном случае выбор параметра m, равного, также не приведет к успеху (проверьте самостоятельно, поэтому выполним следующую последовательность действий

12 1. Синтезируем фильтр на базе КИХ-фильтра го типа с параметром m, равным 'mineven'. Порядок КИХ-фильтра (параметр opt.order) обозначим как R1.
2. Синтезируем фильтр на базе КИХ-фильтра го типа с параметром m, равным 'minodd'. Порядок КИХ-фильтра (параметр opt.order) обозначим как R2.
3. Синтезируем фильтр на базе КИХ-фильтра го типа ('hilbert') с параметром m, равным 'mineven'. Порядок КИХ-фильтра обозначим как R3.
4. Синтезируем фильтр на базе КИХ-фильтра го типа ('hilbert') с параметром m, равным 'minodd'. Порядок КИХ-фильтра обозначим как R4.
5. Выберем из них фильтр минимального порядка — min(R1, R2, R3, R4).
>> Fs=8000;
>> fk1=1000; ft1=1400; ft2=2000; fk2=2400; f=[fk1 ft1 ft2 fk2];
>> m=[0 1 0];
>> d2=0.01; d1=0.05; ripple=[d2 d1 d2];
>> [R,f0,m0,weight]=firpmord(f,m,ripple,Fs);
>> [b,err,opt]=firgr({'mineven',R},f0,m0,ripple); R1=opt.order;
>>[b,err,opt]=firgr({'minodd',R},f0,m0,ripple); R2=opt.order;
>> [b,err,opt]=firgr({'mineven',R},f0,m0,ripple,'hilbert');
>>R3=opt.order;
>> [b,err,opt]=firgr({'minodd',R},f0,m0,ripple,'hilbert');
>>R4=opt.order;
>> [R1 R2 R3 R4] ans =
32 33 32
31 Синтезирован оптимальный ПФ с ЛФЧХ порядка R
opt
= 31 на базе КИХ-фильтра го типа, такой же, как в примере 3. Убедимся в выполнении требований к АЧХ:
>> error=max(abs(opt.error)) error =
0.0413 Анализ КИХ-фильтра В состав MATLAB входит программа GUI FVTool (Filter Visualization Tool — средства визуализации фильтра, предназначенная для анализа характеристик синтезированных ЦФ в окне Figure...: Filter Visualization Tool, обращение к которому производится с помощью функции fvtool:
fvtool(b,a) Здесь b, a — векторы коэффициентов передаточной функции КИХ-фильтра, где a = [1]. Порядок выполнения лабораторной работы.
1. Ознакомится с теоретическим материалом.
2. Провести моделирование примеров, представленных в разделе теоретического материала в пакете MatLab.
3. Получить задание у преподавателя на проектирование цифрового КИХ фильтра.
4. Провести проектирование цифрового фильтра.
5. Проанализировать полученные результаты, сделать выводы.
6. Оформить отчёт по лабораторной работе.
7. Подготовиться к защите лабораторной работы преподавателю. Литература
1. Ingle V., Proakis J. Digital Signal Processing Using MATLAB. Second Edition — Thomson-
Engineering. 2006.
2. Оппенгейм А, Шафер Р. Цифровая обработка сигналов. М Техносфера, 2006.
3. Сергиенко А. Б. Цифровая обработка сигналов, е изд. СПб.: Питер, 2006.

13 4. Солонина АИ, Улахович ДА, Арбузов СМ, Соловьева Е. Б. Основы цифровой обработки сигналов. е изд. СПб.: БХВ-Петербург, 2005.
5. Солонина АИ, Арбузов СМ. Цифровая обработка сигналов. Моделирование в MATLAB.
СПб.: БХВ-Петербург, 2008.


написать администратору сайта