资源描述:
《实验四:体验制备细胞膜的方法.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验报告课程名称通信系统建模与仿真实验项目名称实验四用频率取样法设计FIR数字滤波器实验类型综合设计实验学时2班级通信二班学号姓名蒋力指导教师何忠秋实验室名称21B261实验时间实验成绩预习部分实验过程表现实验报告部分总成绩教师签字日期2017.哈尔滨工程大学教务处制实验四用频率取样法设计FIR数字滤波器一、实验目的1、掌握频率取样法设计线性相位FIR数字滤波器的方法,并用Matlab工具编程实现。2、熟悉频率取样理论,熟悉内插函数及其应用。3、观察过渡带取样点或优化数值对滤波器幅频特性的影响。二、实验原理频率采样法就是根据频域采样理论,由滤波特性指标构造希望逼近的滤波器
2、频响函数Hd(ejω),对其在[0,2π]上采样得到。然后,就可求出单位脉冲响应h(n),或是系统函数H(z)。这样,h(n)或是H(z)就是滤波器的设计结果。三、实验内容1.用频率取样法设计一个线性相位低通数字滤波器,N=15,[0,π]之间的幅度取样值如下,求出其单位脉冲响应h[k]及幅频和相频特性曲线。尝试增加过渡点,观察并分析过渡点对滤波器性能的影响。,2.设计一个以下幅度响应的FIR数字滤波器,期望的幅度响应为:,fc为3dB频率点,n是滤波器阶数。3.思考题四、方案设计和实现步骤方案设计[1].频率取样设计法的流程:幅频特性根据N的奇偶可得到,N为奇数;或,N
3、为偶数数。[2].离散频率特性的幅度和相位约束条件:数字滤波器实现步骤:(1)确定所设计DF的性能要求和阶数N=2π/Δω。(2)根据要求,合理选择单位脉冲响应的奇、偶对称性,从而确定理想频率响应的幅度和相位。(3)对理想频率响应在0~2π区间等间隔取样,得到H(k)。(4)根据内插公式,求出H(z)的幅频特性曲线。(5)检查幅频特性是否满足性能要求,若不满足,可调整过渡带取样点值,重复第(2)步,直到满足条件为止。(6)对H(k)作IDFT求得h(k)。五、仿真结果六、分析和结论由实验结果可知:信号的幅度谱大约在0.6出开始出现衰减,而相频响应都是在大于或等于0.6后开
4、始出现波动并逐渐趋于平缓。(1)用频率取样法设计FIRDF的特点答:为了提高逼近质量,使逼近误差更小,也就是减小在通带边缘由于抽样点的徒然变化而引起的起伏变化。和窗口法的平滑截断一样,这里是使理想频率响应的不连续点的边缘加上一些过渡的抽样点,从而增加过渡带,减小频带边缘的突变,也就是减小了起伏振荡,增大了阻带最小衰减。这些抽样点上的取值不同,效果也就不同。如果精心设计过渡带的抽样值,就有可能使它的有用频带的波纹减小,从而设计出较好的滤波器。一般过渡带取一、二、三点抽样值即可得到满意结果。在理想低通滤波器的设计中,若不增加过渡点,阻带和通带之间的衰减约为-21dB,如果在通
5、带和阻带之间增加一个采样点,阻带的最小衰减可以提高到-65dB,如果增加两个采样点,阻带的最小衰减可以提高到-75dB,如果增加3个采样点,阻带的最小衰减可以提高到-85dB至-95dB。频率抽样法的优点是可以在频域直接设计,并且适合于最优化设计;缺点是抽样频率只能等于2pi/M的整数倍或等于2pi/M的整数倍上加上pi/M,因而不能确保截止频率Wc的自由取值。要想实现自由选择频率,则必须增加抽样点数M,但这种计算量加大。频率采样法是从频域出发,将给定的理想频率响应加以等间隔的采样,然后以Hd(k)作为实际的FIR数字滤波器的频率特性的采样值H(k)。采样点之间的频率响应
6、是由各采样点的加权内插函数的延伸叠加形成的,因而有一定的逼近误差,误差取决于理想频率响应曲线形状。内插值和理想值之间的误差越大,在理想频率特性不连续点附近,就会产生肩峰和波纹。(2)实现线性相位的H(k)应满足什么条件?七、程序附录%program1N=33;H=[ones(1,9),0.4,zeros(1,13),0.4,ones(1,9)];k=0:N-1;A=exp(-j*pi*k*(N-1)/N);HK=H.*A;hn=ifft(HK,N);freqz(hn,1,256);figure(2);stem(real(hn),'.');line([0,35],[0,0]
7、);xlabel('n');ylabel('Real(h(n))');%Program2N=33;%N=input('N=');M=N-1;L=M/2;F=[0:1/L:1];A=[ones(1,9),zeros(1,L-8)];B=fir2(M,F,A);[H,W]=freqz(B);subplot(2,1,1),plot(W/pi,10*log10(abs(H)));gridon;subplot(2,1,2),plot(W/pi,unwrap(angle(H)));gridon;figure;stem(real(B),'.