МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА»
Кафедра «Захист інформації»
ЗВІТ
до лабораторної роботи №4
з дисципліни:
«Цифрова обробка сигналів»
на тему:
«МОДЕЛЮВАННЯ ТА ДОСЛІДЖЕННЯ РЕКУРСИВНИХ ЦИФРОВИХ ФІЛЬТРІВ»
Львів 2012
Мета роботи: отримати навики розрахунку параметрів і характеристик рекурсивних цифрових фільтрів, а також навчитися застосовувати засоби програмного пакету MatLab для їх реалізації та дослідження.
ЗАВДАННЯ
1.Розрахувати перші 5 коефіцієнтів нерекурсивного фільтра згідно варіанту при відсутності накладання вікна.
2. Розрахувати мінімально необхідний порядок вказаного типу фільтра для забезпечення поставлених вимог. Знайти коефіцієнти фільтра. Побудувати ФЧХ розрахованого фільтра.
3. Оцінити вплив N-бітного квантування коефіцієнтів фільтра на його характеристики при прямій реалізації та каскадній на основі біквадратних ланок.
4. Провести фільтрацію заданого сигналу, що зберігається у файлі Lab_4_варіант у змінній signal.
Таблиця 1
№
Тип фільтру
Fs,
Гц
Fp,
Гц
Rs,
дБ
Rp,
дБ
N,
біт
Fd,
Гц
Сигнал
1
ФНЧ Баттерворта
20
10
60
2.0
14
120
Lab_4_1.mat
РЕЗУЛЬТАТИ ВИКОНАННЯ РОБОТИ
Лістинг програми
clc;
clear;
Fs=20;
Fp=10;
Rs=60;
Rp=2;
N_bit=14;
fd=120;
f_N = fd/2;
Fs_norm = Fs/f_N;
Fp_norm = Fp/f_N;
[n, Wn] = buttord(Fp_norm, Fs_norm, Rp, Rs);
n
fc = Wn * f_N
[b, a] = butter (n,Wn);
b = b(:);
a = a(:);
b
a
f = 0 : 1 : f_N;
h = freqz(b, a, f, fd);
figure(1);
subplot(2,1,1);
plot(f, abs(h)); grid on;
F=[0 0.12 0.12 1];
M=[1 1 0 0];
[by,ay]=yulewalk(2*n,F,M);
hy=freqz (by,ay,f,fd);
subplot(2,1,2);
plot(f, abs(hy)); grid on;
bq = round(2^N_bit * b) / 2^N_bit;
aq = round(2^N_bit * a)/ 2^N_bit;
hq = freqz(bq, aq, f, fd);
figure(2);
plot(f, abs(h), f, abs(hq)); grid on;
sos = tf2sos(b, a);
sosq = round(2^N_bit * sos) / 2^N_bit;
[bs, as] = sos2tf(sosq);
hs = freqz(bs, as, f, fd);
figure(3);
plot(f, abs(hs)); grid on;
load S1
t=0:1:1000;
signal_f1 = filter(b, a, signal);
figure(4);
plot (t,signal,'b',t,signal_f1,'r');
N=length(signal);
df=fd/N;
F0=(N-1)*df;
f=(-F0/2):df:F0/2;
x1=fft(signal);
xx1=fftshift (x1);
xx1=abs(xx1);
figure(5);
subplot(2,1,1);
stem (f,xx1); axis ([-60, 60, 0, 600]);
x2=fft(signal_f1);
xx2=fftshift (x2);
xx2=abs(xx2);
subplot(2,1,2);
stem (f,xx2); axis ([-60, 60, 0, 600]);
Графік до програми:
Рис.1 АЧХ фільтра Баттерворта
Рис. 2 АЧХ РФ Баттерворта до і після квантування
Рис. 3 АЧХ фільтра
Рис.4 Вхідний та вихідний сигнали
Рис.5 Спектр сигналу, результуючий спектр
Висновок: на цій лабораторній роботі я розрахував мінімально необхідний порядок вказаного типу фільтра для забезпечення поставлених вимог. Знайшов коефіцієнти фільтра. Побудував ФЧХ розрахованого фільтра. Оцінив вплив N-бітного квантування коефіцієнтів фільтра на його характеристики при прямій реалізації та каскадній на основі біквадратних ланок.