欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

程序员文章站 2022-07-12 14:28:44
...

1.实验目的

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

2.实验原理

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

3.实验内容

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

4.实验报告要求

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

Matlab程序1:

Problem1
N=15
wn=[0.3 0.5];
n=input('Type in the length n=');
win=hanning(n+1);%hanning窗函数
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')



N=45
wn=[0.3 0.5];
n=input('Type in the length n=');
win=hanning(n+1);%hanning窗函数
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')

运行结果1:

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

实验分析1:

实验分析:随着N值的增大,主瓣变窄,旁瓣数量增加,波纹减小。

Matlab程序2_1:

Problem2_1
N=15
wn=[0.3 0.5];
n=input('Type in the length n=');
win=boxcar(n+1);%矩形窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')


N=45

wn=[0.3 0.5];
n=input('Type in the length n=');
win=boxcar(n+1);%矩形窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')

运行结果2_1:
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

Matlab程序2_2:

Problem2_2

N=15
wn=[0.3 0.5];
n=input('Type in the length n=');
win=blackman(n+1);%blackman窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')



N=45
wn=[0.3 0.5];
n=input('Type in the length n=');
win=blackman(n+1);%blackman窗
b1=fir1(n,wn,'bandpass',win)%带通
freqz(b1,1);
title('Made by LEI')

运行结果2_2:

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

实验分析2:

实验分析:矩形窗的旁瓣比hanning窗的旁瓣水平降低,Blackman窗旁瓣水平最低。

Matlab程序3:

Problem3


wn=[0.2 0.4 0.6 0.8];
n=40;
beta=input('beta=');
win=kaiser(n+1,beta);%kaiser窗
b1=fir1(n,wn,win)
freqz(b1,1);
title('Made by LEI')










wn=[0.2 0.4 0.6 0.8];
n=40;
beta=input('beta=');
win=kaiser(n+1,beta);%kaiser窗
b1=fir1(n,wn,win)
freqz(b1,1);
title('Made by LEI')




wn=[0.2 0.4 0.6 0.8];
n=40;
beta=input('beta=');
win=kaiser(n+1,beta);%kaiser窗
b1=fir1(n,wn,win)
freqz(b1,1);
title('Made by LEI')

运行结果3:

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计

实验分析3:

实验分析:Kaiser窗的频带内能量主要集中在主瓣中,它有最好的旁瓣抑制性能。随着B值的增大,对旁瓣的一直性能越好。

Matlab程序4:

Problem4

clear
wn=0.3;
n=input('Type in the length n=');
win=hanning(n+1);
b1=fir1(n,wn,'low',win)
figure(1)
freqz(b1,1);
title('Made by LEI')
x=[-4 -2 0 -4 -6 -4 -2 -6 -6 -4 -4 -6 -6 -2 6 12 8 0 -16 -38 -60 -84 -90 -66 -32 -4 -2 -4 8 12 12 10 6 6 6 4 0 0 0 0 0 -2 -4 0 0 0 -2 -2 0 0 -2 -2 -2 -2 0];
figure(2)
subplot(211)
plot(x)
title('Made by LEI')
y=filter(b1,1,x);
subplot(212)
plot(y)
 
figure(3)
subplot(211)
N=100
n=0:N-1;
mf=fft(x,N);
stem(n,abs(mf));
title('Made by LEI')
y=filter(b1,1,x);
mfa=fft(y,N);
subplot(212)
stem(n,abs(mfa));

运行结果4:

数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
数字信号仿真实验——实验四 有限冲激响应数字滤波器的设计
本人能力有限,解释尚不清楚明了,如遇任何问题,大家可留言或私信。后续将程序文件打包上传,供大家学习使用。

本文希望对大家有帮助,当然上文若有不妥之处,欢迎指正。

分享决定高度,学习拉开差距