Xreferat.com » Рефераты по информатике и программированию » Расчет цифровых фильтров с бесконечными импульсными характеристиками

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

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

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

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


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

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


Выполнила:

Студентка гр. 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;

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');

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');

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- преобразования для перевода фильтра из ВЧ в НЧ. Увидели, что при усечение коэффициентов происходит пропускание ненужных нам частот.

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту
Нужна помощь в написании работы?
Мы - биржа профессиональных авторов (преподавателей и доцентов вузов). Пишем статьи РИНЦ, ВАК, Scopus. Помогаем в публикации. Правки вносим бесплатно.

Похожие рефераты: