为了提高fft和ifft得运算效率,应尽量是序列长度M=2r,或对序列补零使N=2r。
三 实验内容
1、 已知一长度为16的有限序列x(n)?cos(2*?*r*n/N),N?16,r?4;试利用MATLAB计算序列x(n)的16点和512点DFT。 2、计算长度为N=30的余弦序列x(n)?cos(2*?*n/N),(n?0,1,...,N?1)的频谱。
3、已知x(n)={1,2,0,1},h(n)={2,2,1,1},试利用MATLAB实现由FFT计算有限长序列x(n)与h(n)的线性卷积,并与线性卷积直接计算的结果进行比较。
四 实验报告要求
1、给出实验结果及相应程序,要求在编制的程序中加上详细的注释,与DFT计算法比较,总结FFT算法在运算量上的优势。 2、总结实验中遇到的难点及解决方法。
5
实验三 双线性变换法设计IIR数字滤波器
一 实验目的
1、设计巴特沃斯模拟低通滤波器.
2、熟悉用双线性变换法设计IIR 数字滤波器的原理与方法。 3、掌握数字滤波器的计算机仿真方法。
二 实验原理
IIR 数字滤波器设计的主要方法是先设计低通模拟滤波器,通过频率变换,将其转换为高通、带通或带阻数字滤波器。具体的实验原理如下:
(1)复习有关巴特沃斯模拟滤波器设计和用双线性变换法设计IIR 数字滤波器的内容。
低通巴特沃斯模拟滤波器的系统函数的一般形式如下:
,。
由此可见,低通巴特沃斯模拟滤波器的系统函数完全由阶数N 和3dB 截止频率Ωc 决定。而N和Ωc是由滤波器设计指标决定的。其计算公式如下:
,
。
取Ωc = Ωc1 ,则所设计的滤波器通带指标刚好满足,阻带指标富裕。 取Ωc= Ωc2 ,则所设计的滤波器阻带指标刚好满足,通带指标富裕。
6
(2) 双线形变换法的原理是用:
2?tan()将数字滤波器的频率指标转换为模T2代换Ha(s)中的s值,得到H(z) 。bilinear 函数用来实现这个变换。本设计的基本思想是用??拟滤波器的指标,然后设计模拟滤波器,最后用双线性变换把模拟滤波器转换为数字滤波器。由于学时和实验课时的限制,本实验只进行了巴特沃斯型模拟低通滤波器的函数调用实验。
MATLAB信号处理工具箱函数buttord和butter的调用方法如下。
[N,?c]?buttord(?p,?s,Ap,As);[num,den]?butter(N,?c)。buttord函数返回
参数N为滤波器的阶数,butter函数返回参数num和den分别是滤波器的分子多项式和分母多项式系数。
(3)通过编写滤波器的仿真程序,最后调用freqz函数即可得到滤波器的频率特性曲线。
三 实验内容
设计满足下列指标的数字高通滤波器,它的通带为400~500Hz,采样频率为fs=1kHz,通带截止频率为fc=400Hz,阻带内衰减在不小于371Hz的频带内至少为18dB。
四 实验报告要求
1、给出实验结果及相应程序;
2、简要说明题目中采用双线性变换法的依据和设计思路。 3、总结试验中遇到的难点及解决方法。
7
实验四 窗函数法设计FIR数字滤波器
一 实验目的
1、掌握窗函数法设计FIR数字滤波器的原理及具体方法; 2、深入理解吉布斯现象,理解不同窗函数的特点。 3、熟悉线性相位FIR 数字滤波器特性。
二 实验原理
设x(n)是一个长序列,w(n)是长度为N 的窗函数,用w(n)截断x(n),得到N点序列xn(n),即:
,
在频域上则有:
。
由此可见,窗函数w(n)不仅仅会影响原信号x(n)在时域上的波形,而且也会影响到频域内的形状。
用函数法设计FIR数字滤波器时,先根据?c和N求出相应的理想滤波器单位脉冲响应hd(n):
由 MATLAB 得出的hd(n)是一个无限长序列,因而不可用FIR 滤波器实现。所以第二步要选择合适的窗函数w(n)来截取hd(n)的适当长度(即阶数),以保证实现要求的组带衰减:最后得到FIR滤波器单位脉冲响应为:
8
相关推荐: