Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лабы / L 4 / Lf6

.txt
Скачиваний:
31
Добавлен:
16.04.2013
Размер:
5.54 Кб
Скачать

ЛАБОРАТОРНАЯ РАБОТА 6.
ПРОЕКТИРОВАНИЕ ЦИФРОВЫХ ФИЛЬТРОВ РАЗЛИЧНЫХ ТИПОВ.


Для построения и использования нерекурсивных фильтров различ-
ных типов в пакете МАТЛАБ имеются следующие функции:
FIR1 - нахождение коэффициентов нерекурсивного фильтра с
использованием окон.
FILTER -фильтрация данных с помощью построенного фильтра.
FILTFILT- двойная фильтрация (без сдвига фаз).
FREQZ - построение передаточной функции фильтра.
BUTTER- рекурсивный фильтр Баттерворда.

ЗАДАНИЕ 1.
Изучите возможности пакета МАТЛАБ построения нерекурсивных
фильтров с помощью соответствующих help-ов .

Смоделируйте сигнал как сумму синусоид трех различных частот,
например, 1/50 Гц,1/20 Гц, 1 Гц(свой вариант задания см.в
конце текста).
Правильно выбирите интервал дискретизации сигнала и сформируйте
входной вектор х.

1. С помощью функции FIR1(N,Vs) найдите коэффициенты низкочастотно-
го нерекурсивного фильтра, не пропускающего две высокочастотные
составляющие сигнала.Для этого найдите нужную частоту среза,
сначала возьмите небольшой порядок фильтра.
С помощью команды FILTER или FILTFILT (посленяя не дает сдвига
фазы сигнала за счет двойной фильтрации) отфильтруйте исходный
сигнал ,сравните графически исходный и отфильтрованный сигнал.
Если полученный результат не удовлетворительный, пересчитайте
коэффициенты фильтра, изменяя порядок фильтра N. Постройте пере-
даточную функцию полученного фильтра с помощью команды freqz
(см.help freqz). Для выполнения этого задания создайте m-файл,
аналогичный следующему:
t=0:T:99;
x1=sin(2*pi*t/50);
x2=sin(2*pi*t/20);
x3=sin(2*pi*t);
x=x1+x2+x3;
plot(t,x);
pause;
b=fir1(N,Vs);
a=[];
a=[1 a];
n=256;
y=filter(b,a,x);
h=abs(freqz(b,a,n));
ff=(1/n)*(0:n-1);
subplot(211),plot(ff,h);
pause;
subplot(212),plot(t,x,t,y);
pause;

2. Найдите коэффициенты высокочастотного нерекурсивного филь-
тра, пропускающего только высокочастотную составляющую сигнала
с помощью функции b1=FIR1(N,Vs,'high'). Постройте передаточную
функцию этого фильтра. Отфильтруйте высокочастотную компоненту
и сравните исходный и отфильтрованный сигналы графи-
чески.

3. Аналогично отфильтруйте низкочастотную компоненту 1/50 Гц из
входного сигнала. Обратите внимание, что поскольку в сигнале
присутствует близкая частота 1/20 Гц, то фильтр должен иметь
достаточно узкую переходную полосу . Поэтому порядок фильтра
нужно взять достаточно большим. Найдите минимальный порядок
фильтра, осуществляющего такую задачу.

4. Выполните задание 3 при помощи рекурсивного фильтра Баттервор-
да [b,a] =butter(N,Vs). Найдите минимальный порядок такого
фильтра .Убедитесь, что он в несколько раз меньше, чем у со-
ответствующего нерекурсивного.

5. Сравните действие окон различных модификаций при построении
нерекурсивных фильтров построив передаточные функции низко-
частотного фильтра порядка 10 с частотой отсечки 0.5 с ис-
пользованием прямоугольного (Boxcar), треугольного (Bartlett)
и косинусного окна ( Hamming), используемого по умолчанию.
N=10;
Vs=0.5;
b1=FIR1(N,Vs,'boxcar');
b2=FIR1(N,Vs,'bartlett');
b3=FIR1(N,Vs,'hamming');
a=[];
a=[1 a];
h1=abs(freqz(b1,a,256));
h2=abs(freqz(b2,a,256));
h3=abs(freqz(b3,a,256));
h=[0 Vs Vs 1];
v=[1 1 0 0];
ff=(1/n)*[0:n-1];
plot(h,v,ff,ha1,ff,ha2,ff,ha3);


6. Постройте передаточные функции низкочастотного фильтра с час-
тотой среза 0.5 используя рекурсивные фильтры 6-го порядка
Баттерворва, Чебышева и элллиптический. Сравните их .
Постройте фазовый сдвиг для любого рекурсивного фильтра.
Убедитесь, что он имеет нелинейный характер.

N=10;
Vs=0.5;
[b1,a1]= butter(N,Vs);
[b2,a2]=cheby(N,0.5,Vs);
[b3,a3]=ellip(N,0.5,2,Vs);
h1=abs(freqz(b1,a1,256));
h2=abs(freqz(b2,a2,256));
h3=abs(freqz(b3,a3,256));
h=[0 Vs Vs 1];
v=[1 1 0 0];
ff=(1/n)*[0:n-1];
plot(h,v,ff,ha1,ff,ha2,ff,ha3);
pause;
ang=angle(freqz(b3,a3,256));
plot(ff,аng);
вариант 1: 1/20, 1/10,1 гц
вариант 2 :1/15,1/30,1 гц
вариант 3:1/10,1/30,1 гц
вариант 4:1/10,1/40,1 гц
вариант 5:1/2,1/5, 10 гц
вариант 6 : 1/3,1/5, 8 гц
вариант 7 :1/2,1/4,9 гц
вариант 8: 1/2,1/3,10 гц
вариант 9: 1/2,1/25,11гц
вариант 10: 1/3,1/35,12 гц
вариант 11:1/4,1/45,7 гц
вариант 12: 1/25,1/35,6 гц
вариант 13: 1/25,1/30,6 гц
вариант 14: 1/15,1/20,3 гц
вариант 15 : 1/2,1/3,12 гц
вариант 16:1/3,1/4,11 гц
вариант 17 :1,2 ,50 гц
вариант 18: 1,3, 45 гц
вариант 19: 1,2,40 гц
вариант 20: 2,3, 30 гц
вариант 21: 2,4,55 гц
вариант 22:1,4,50 гц
вариант 23:2,3,60 гц
вариант 24: 1,4,55 гц
вариант 25: 1,5,54 гц
вариант 26: 1,3, 50 гц
вариант 27:2,4,44 гц
Соседние файлы в папке L 4
  • #
    16.04.201396 б31L61.m
  • #
    16.04.20131.4 Кб30l6aa.m
  • #
    16.04.20131.67 Кб31l6aaa.m
  • #
    16.04.20135.54 Кб31Lf6.txt
  • #
    16.04.20131.52 Кб30zxc.m