Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
to print.doc
Скачиваний:
8
Добавлен:
20.11.2018
Размер:
1.16 Mб
Скачать

1.3.1. Розрахунок цифрових фільтрів в командному вікні

Розрахунок коефіцієнтів ак нерекурсивного фільтра за допомогою функції fir1. Функція fir1 реалізує обчислення по методу зворотнього перетворення Фурьє з викоритсанням вікон:

a=fir1(n,Wn,’ftype’,window,’normalization’)

Тут:

n - порядок фільтра - ціле парне число (кількість коефіцієнтів фільтра рівне n+1);

Wn — відносна частота зрізу (по відношеню до частоти Найквіста, рівної половині частоти дискретизації Fd) - число в діапазоні (0,1); являється вектором з двух чисел, якщо фільтр смуговий або режекторний;

'ftype' - тип фільтра ('low'- ФНЧ; 'high' - ФВЧ; 'bandpass' - смуговий; 'stop' -режекторний);

window — вектор-стовбець з n+1 елементів (за замовчуванням застосовується вікно Хемінга hamming(n+l));

'normalization' - норміровка АЧХ и ІПХ (по умолчанню значення 'scale' -одиничне значення АЧХ в центрі полоси пропускання; 'noscale' - норміровка не проводиться).

При нормалізації максимальне значення АЧХ в точності рівне одиниці. При відсутності нормалізації із-за ефекта Гібса максимальне значення АЧХ більше одиниці. Цим і пояснюється, що розраховані коефіцієнти фільтра в відсутності нормалізації більше таких при наявності нормалізації.

>> window=blackman(7) % синтез прамоугольного окна из 7 отсчетов

a=fir1(6,0.187,window,'noscale') % расчет коэфф-в КИХ-фильтра без нормализации

Результат:

a =

1.3.2.Побудова графіківАчх і фчх

a=fir1(6,0.187,window,'noscale')

[H,f] = freqz(a,6,3300);

figure;plot(f,20*log10(abs(H))); grid on % Графік АЧХ

xlabel('f')

ylabel('20*log10(abs(H))')

title ('Графік АЧХ ФНЧ')

[phi,f] = phasez(a,6,3300);

figure;plot(f,phi/pi*180); grid on % Графік ФЧХ

xlabel('f')

ylabel('phi/pi*180')

title ('Графік ФЧХ ФНЧ')

Рис. 1.3.5- Графік АЧХ ФНЧ.

Рис. 1.3.6- Графік ФЧХ ФНЧ.

1.3.3. Побудова графіку іпх

Побудову графіку ІПХ зручно виконувати командами:

a=fir1(6,0.187,window,'noscale')

[h,t] = impz(a);

stem(t,h)

xlabel('t')

ylabel('h')

title ('Графік ІПХ ФНЧ')

Рис. 1.3.7- Графік ІПХ ФНЧ.

1.3.4. Розрахунок фільтра ак за допомогою пакета sptool

В з'явівшомуся вікні Filter Designer:

1) задати частоту дискретизації (задаємо 3300 Гц);

2) вибрати в позиції Algoritm значення Kaiser Window FIR;

3) відключити прапорець Minimum Order;

4) задати Order=6;

5) задати Type=lowpass;

6) задати Passband Fp=310 Гц;

7) відключити прапорець Autodesigne;

8) натиснути кнопку Apply;

9) в вікні sptool в колонкі Filters натиснути кнопку View;

10) в з'явившомуся вікні Filter Viewer спостерігаємо графіки АЧХ, ФЧХ, ІПХ (ІПХ спостерігаємо після активізації відповідного прапорця).

Рисунок 1.3.8 -Вікно Filter Designer

Рис. 1.3.9- Вікно Filter Viewer

Пакет sptool дозволяє моделювати процес фільтрації за допомогою розрахованого фільтра. Для цього в середу пакета sptool потрібно імпортувати вхідний сигнал, генерований в робочому вікні програми Matlab. Фільтрація відбувається після натиску кнопки Apply.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]