рефератырефератырефератырефератырефератырефератырефератырефераты

рефераты, скачать реферат, современные рефераты, реферат на тему, рефераты бесплатно, банк рефератов, реферат культура, виды рефератов, бесплатные рефераты, экономический реферат

"САМЫЙ БОЛЬШОЙ БАНК РЕФЕРАТОВ"

Портал Рефератов

рефераты
рефераты
рефераты

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

Белорусский Государственный Университет

Информатики и Радиоэлектроники

Кафедра электронных вычислительных средств

Отчёт по лабораторной работе

"Расчет цифровых фильтров с бесконечными импульсными характеристиками"

Выполнила:

Студентка гр. 610701

Лыпка Ю.А.

Проверил:

Родионов М.М.

Минск 2009

Цель работы: Расчёт БИХ-фильтров с различными аппроксимациями идеальной АЧХ в пакете Matlab и изучение их свойств.

Задание №1: Рассчитайте аналоговый фильтр-прототип НЧ в соответствии с вариантом (вариант №8). Для полученного фильтра постройте его АЧХ, ФЧХ а также диаграмму нулей и полюсов.

Фильтр Чебышева 1 рода, 4 порядка.

n=4;

Rp=1;

[z,p,k]=cheb1ap(n,Rp);

[b,a]=zp2tf(z,p,k);

figure(1);

zplane(z,p);

title('Lowpass Chebyshev Filter');

figure(2);

subplot(211);

[h,w]=freqs(b,a);

plot(w,abs(h),'r');

title('Amplitude response');

subplot(212);

plot(w,unwrap(angle(h)),'r');

title('Phase response');

Рисунок 1 - Диаграмма нулей и полюсов

Рисунок 2 - АЧХ и ФЧХ фильтра НЧ вида Чебышева 1 рода

Задание 2: Преобразовать полученный фильтр- прототип в фильтр заданного вида с требуемыми частотами среза (Вариант 8- 650Гц). Постройте графики АЧХ, ФЧХ и диаграмму нулей и полюсов.

fs=650;% частота среза

[b1,a1]=lp2lp(b,a,fs);

[z1,p1,k1]=tf2zp(b1,a1);

figure(3);

zplane(z1,p1);

title('Lowspass Chebyshev Filter');

figure(4);

subplot(211);

[h,w]=freqs(b1,a1);

plot(w,abs(h),'m');

title('Amplitude response');

subplot(212);

plot(w,unwrap(angle(h)),'m');

title('Phase response');

Рисунок 3 - Диаграмма нулей и полюсов

Рисунок 4 - АЧХ и ФЧХ фильтра НЧ вида Чебышева 1 рода

Задание №3: Используя функцию Matlab bilinear, которая реализует метод билинейного z- преобразования, получите дискретизированный аналог фильтра из предыдущего задания. Постройте АЧХ, ФЧХ, групповую задержку и диаграмму нулей и полюсов полученного фильтра.

Fs=2600;

[zt,pt,kt]=bilinear(z1,p1,k1,Fs);

[bt,at]=zp2tf(zt,pt,kt);

figure(5)

zplane(zt,kt);

title('Bilinear Conversion');

figure(6);

subplot(311);

[h,w]=freqz(bt,at)

plot(w,abs(h),'g');

subplot(312);

plot(w,unwrap(angle(h)),'g');

subplot(313);

grpdelay(bt,at,64,Fs);%%%групповая задержка

Рисунок 5 - Диаграмма нулей и полюсов

Рисунок 6 - АЧХ , ФЧХ и групповая задержка фильтра

Задание №4: Рассчитайте цифровой ФВЧ с параметрами заданными для каждого варианта. Определить какой порядок будут иметь разные типы фильтров. Сравнить эффективность аппроксимаций при более жестких и более мягких требованиях к АЧХ.

close all;

clear all;

clear all;

Wp = 0.4; % нормированная граничная частота подавления

Ws = 0.7; % нормированная граничная частота пропускания

Rp = 0.5; % допустимая неравномерность в полосе пропускания

Rs = 70; % минимальное затухание в полосе подавления

%%%%%%%%%%%%%%Фильтр Баттерворта%%%%%%%%%%%%

[n1, Wn1] = buttord(Wp, Ws, Rp, Rs);

sprintf( 'battervorta - %d',n1)

[z,p,k] = butter(n1,Wn1,'high');

[b,a]=zp2tf(z,p,k);

figure;

zplane(z,p);

figure;

title('battervorta');

freqs(z,p);

%%%%%%%%%%%%%%Фильтр Чебышева 1 рода%%%%%%%%

[n2, Wn2] = cheb1ord(Wp, Ws, Rp, Rs);

[z,p,k] = cheby1(n2,Rp,Wn2,'high');

[b,a]=zp2tf(z,p,k);

figure;

zplane(z,p);

figure;

freqs(z,p);

%%%%%%%%%%%%Фильтр Чебышева 2 рода%%%%%%%%%%

[n3, Wn3] = cheb2ord(Wp, Ws, Rp, Rs);

[z,p,k] = cheby2(n3,Rs,Wn3,'High');

[b,a]=zp2tf(z,p,k);

figure;

zplane(z,p);

figure;

freqs(z,p);

%%%%%%%%%%%Фильтр Эллиптический%%%%%%%%%%%%%

[n4, Wn4] = ellipord(Wp, Ws, Rp, Rs);

[z,p,k] = ellip(n4,Rp,Rs,Wn4,'high');

[b,a]=zp2tf(z,p,k);

figure;

zplane(z,p);

figure;

freqs(z,p);

sprintf( 'chebysheva1 - %d',n2)

sprintf( 'chebysheva2 - %d',n3)

sprintf( 'elipticheskiy - %d',n4)

Рисунок 7- Диаграмма нулей и полюсов фильтра Баттерворта

.

Рисунок 8- АЧХ , ФЧХ фильтра Баттерворта

Рисунок 9- Диаграмма нулей и полюсов фильтра Чебышева 1 рода

Рисунок 10- АЧХ , ФЧХ фильтра Чебышева 1 рода

Рисунок 11- Диаграмма нулей и полюсов фильтра Чебышева 2 рода

Рисунок 12- АЧХ , ФЧХ фильтра Чебышева 2 рода

Рисунок 13- Диаграмма нулей и полюсов эллиптического фильтра

Рисунок 14- АЧХ , ФЧХ эллиптического фильтра

Задание №5: Исследуйте как скажется на АЧХ и ФЧХ фильтров из заданий 1-3 усечение коэффициентов передаточной функции до четырёх десятичных разрядов. До двух десятичных разрядов.

close all;

clear all;

n = 4;

fs = 1000;

fc = 300;

Rp = 1;

Rs = 70;

Wn = fc * 2 / fs;

%%%%%%%%%%%%Butterworth%%%%%%%%%%%

figure;

[b, a] = butter(n, Wn);

[h, f] = freqz(b, a, 1024, fs);

b = round(b * 10000) / 10000;

a = round(a * 10000) / 10000;

[h2, f] = freqz(b, a, 1024, fs);

b = round(b * 1000) / 1000;

a = round(a * 1000) / 1000;

[h3, f] = freqz(b, a, 1024, fs);

b = round(b * 100) / 100;

a = round(a * 100) / 100;

[h4, f] = freqz(b, a, 1024, fs);

subplot(211);

plot(f, 20 * log10(abs(h)), 'k');

hold on;

plot(f, 20 * log10(abs(h2)), 'g');

plot(f, 20 * log10(abs(h3)), 'b');

plot(f, 20 * log10(abs(h4)), 'r');

legend('Ideal', '4 categories', '3 categories', '2 categories');

grid on;

title('Amlitude response');

ylabel('Butterworth');

subplot(212);

plot(f,angle(h), 'k');

hold on;

plot(f,angle(h2), 'g');

plot(f,angle(h3), 'b');

plot(f,angle(h4), 'r');

grid on;

title('Phase response');

ylabel('Butterworth');

%%%%%%%%%%%%Chebyshev1%%%%%%%%%%%

figure;

[b, a] = cheby1(n, Rp, Wn);

[h, f] = freqz(b, a, 1024, fs);

b = round(b * 10000) / 10000;

a = round(a * 10000) / 10000;

[h2, f] = freqz(b, a, 1024, fs);

b = round(b * 1000) / 1000;

a = round(a * 1000) / 1000;

[h3, f] = freqz(b, a, 1024, fs);

b = round(b * 100) / 100;

a = round(a * 100) / 100;

[h4, f] = freqz(b, a, 1024, fs);

subplot(211);

plot(f, 20 * log10(abs(h)), 'k');

hold on;

plot(f, 20 * log10(abs(h2)), 'g');

plot(f, 20 * log10(abs(h3)), 'b');

plot(f, 20 * log10(abs(h4)), 'r');

legend('Ideal', '4 categories', '3 categories', '2 categories');

grid on;

title('Amlitude response');

ylabel('Chebyshev1');

subplot(212);

plot(f,angle(h), 'k');

hold on;

plot(f,angle(h2), 'g');

plot(f,angle(h3), 'b');

plot(f,angle(h4), 'r');

grid on;

title('Phase response');

ylabel('Chebyshev1');

%%%%%%%%%%%%Elliptic%%%%%%%%%%%%%

figure;

[b, a] = ellip(n, Rp, Rs, Wn);

[h, f] = freqz(b, a, 1024, fs);

b = round(b * 10000) / 10000;

a = round(a * 10000) / 10000;

[h2, f] = freqz(b, a, 1024, fs);

b = round(b * 1000) / 1000;

a = round(a * 1000) / 1000;

[h3, f] = freqz(b, a, 1024, fs);

b = round(b * 100) / 100;

a = round(a * 100) / 100;

[h4, f] = freqz(b, a, 1024, fs);

subplot(211);

plot(f, 20 * log10(abs(h)), 'k');

hold on;

plot(f, 20 * log10(abs(h2)), 'g');

plot(f, 20 * log10(abs(h3)), 'b');

plot(f, 20 * log10(abs(h4)), 'r');

legend('Ideal', '4 categories', '3 categories', '2 categories');

grid on;

title('Amlitude response');

ylabel('Elliptic');

subplot(212);

plot(f,angle(h), 'k');

hold on;

plot(f,angle(h2), 'g');

plot(f,angle(h3), 'b');

plot(f,angle(h4), 'r');

grid on;

title('Phase response');

ylabel('Elliptic');

Рисунок 15 - АЧХ и ФЧХ фильтра Баттерворта

Рисунок 16 - АЧХ и ФЧХ фильтра Чебышева 1 рода

Рисунок 17 - АЧХ и ФЧХ эллиптического фильтра

Вывод: В результате выполненной лабораторной работы, были изучены фильтры НЧ и ВЧ и их типы. Программирование их в Matlab. Изучен метод билинейного z- преобразования для перевода фильтра из ВЧ в НЧ. Увидели, что при усечение коэффициентов происходит пропускание ненужных нам частот.

рефераты
РЕФЕРАТЫ © 2010