信号与系统实验四 答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四 基于窗函数的FIR DF 的设计
提示:
1. Matlab 中提供了很多常用的窗函数,其中一些窗函数的调用形式为:
矩形窗:w=boxcar(N)
三角形窗:w=bartlett(N) 汉宁窗:w=hanning(N) 哈明窗:w=hamming(N) 布莱克曼窗:w=blackman(N)
其中,输入参数N 表示窗口的长度,返回的变量w 是一个长度为N 的列向量,表示窗函数在这N 点的取值。
2. b=fir1(N,Wc,'ftype',Window)
fir1函数用来设计FIR 滤波器。其中N 为滤波器的阶数;Wc 是截止频率,其取值在0~1之间,它是以π为基准频率的标称值,设计低通和高通滤波器时,Wc 是标量,设计带通和带阻滤波器时,Wc 是1×2的向量;设计低通和带通滤波器时,无需 'ftype',当ftype=high 时,设计高通滤波器,当ftype=stop 时,设计带阻滤波器;Window 表示设计滤波器所采用的窗函数类型,Window 的长度为N+1,若Window 缺省,则fir1默认使用哈明窗;b 对应设计好的滤波器的系数h(n),即单位冲激响应,h(n)的长度为N+1。
需注意)(n h 的长度与滤波器的阶数间的关系。FIR 滤波器的系统函数可表示为:
∑-=-=1
)()(N n n z n h z H
)(n h 的长度为N ,而滤波器的阶数为1-N 阶。
3. 求数字滤波器的频率响应
h=freqz(b,a,w)
其中,b 和a 分别为系统函数)(z H 的分子多项式和分母多项式的系数。对于FIR 滤波器,此处的b 即为h(n),a 可看作1。
实验题目:
1. 分别用矩形窗和哈明窗设计FIR 低通滤波器,设窗宽11=N ,截止频率rad c πω
2.0=,要求绘出两种窗函数设计的滤波器幅频曲线,并进行比较。
2. 设计一个线性相位FIR 低通滤波器,通带截止频率为rad p πω2.0=,阻带截止频率为
rad s πω4.0=,阻带最小衰减为dB s 50=α。要求分别绘制理想冲激响应,窗函数的时域
波形及幅频特性,实际冲激响应,FIR 滤波器的幅频特性和相频特性。
0.51
0.2
0.4
0.6
0.8
1
1.2
w/pi
幅频响应
0.51
-120
-100-80-60-40
-20
020w/pi
d B
N=11;
h1=fir1(N-1,0.2,boxcar(N)); h2=fir1(N-1,0.2,hamming(N)); w=0:0.01:pi; H1=freqz(h1,1,w);
H1db=20*log10(abs(H1)/max(abs(H1))); H2=freqz(h2,1,w);
H2db=20*log10(abs(H2)/max(abs(H1))); subplot(1,2,1);
plot(w/pi,abs(H1),'-.',w/pi,abs(H2)); legend('矩形窗','哈明窗'); xlabel('w/pi');ylabel('幅频响应');
subplot(1,2,2);
plot(w/pi,H1db,'-.',w/pi,H2db); xlabel('w/pi');ylabel('dB'); legend('矩形窗','哈明窗');
2040
理想单位响应n h d (n )
2040哈明窗
n
w (n )
2040
实际单位响应
n
h (n )
0.51
-150
-100
-50
0幅频响应
w/pi
分贝数
0.5
1
-200
-150
-100
-500哈明窗幅频特性00.51
-1500
-1000
-500
滤波器相频特性
wp=0.2*pi; ws=0.4*pi; tr_width=ws-wp; N=ceil(8*pi/tr_width); n=0:N-1; wc=(ws+wp)/2; alpha=(N-1)/2; m=n-alpha;
hd=sin(wc*m)./(pi*m); w_ham=(hamming(N))';
h=hd.*w_ham;
w=0:0.01:pi;
H=freqz(h,1,w);
H1=freqz(hd,1,w);
dbH=20*log10(abs(H)/max(abs(H)));
dbH1=20*log10(abs(H1)/max(abs(H1)));
subplot(231);stem(n,hd,'.');title('理想单位响应');
xlabel('n');ylabel('hd(n)');
subplot(232);stem(n,w_ham,'.');title('哈明窗');
xlabel('n');ylabel('w(n)');
subplot(233);stem(n,h,'.');title('实际单位响应');
xlabel('n');ylabel('h(n)');
subplot(234);plot(w/pi,dbH);title('幅频响应');
xlabel('w/pi');ylabel('分贝数');
subplot(235);plot(w/pi,dbH1);title('哈明窗幅频特性');
subplot(236);plot(w/pi,180/pi*unwrap(angle(H)));title('滤波器相频特性');