通信大四实训报告_第1页
通信大四实训报告_第2页
通信大四实训报告_第3页
通信大四实训报告_第4页
通信大四实训报告_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、专业技能实训报告 题 目 基于Matlab的数字带通和高通滤波器 的设计与仿真 学 院 信息科学与工程学院 专 业 通信工程 班 级 通信 学 生 学 号 2009 指导教师 二一三年一月四日 目 录1 前言.11.1 数字滤波器基本概念.11.2 数字滤波器的主要分类.11.3 数字滤波器的主要应用.12 数字滤波器的设计方法.32.1数字滤波器的工作原理.33 利用Matlab实现FRI滤波器设计.53.1 窗函数法Matlab的实现.53.2 利用窗函数法设计带通滤波器.53.3利用窗函数法设计高通滤波器.,.9结语.12参考文献.131前言1.1 数字滤波器基本概念所谓数字滤波器,是指

2、输入、输出均为数字信号,通过数值运算处理改变输入信号所含频率成分的相对比例,或者滤除某些频率成分的数字期间或程序。因此,数字滤波器的概念和模拟滤波器的概念相同,只是信号的形式和实现滤波的方法不同。正因为数字滤波器通过数值运算实现滤波,所以数字滤波器处理精度高、稳定、体积小、重量轻、灵活、不存在阻抗匹配问题,可以实现模拟滤波器无法实现的特殊滤波功能。由于数字滤波器是一个离散时间系统,应用数字滤波器处理模拟信号时,首先须对输入模拟信号进行限带、抽样和模数转换,同样可以使用数字滤波器对模拟信号进行滤波。数字滤波器是一种用来过滤时间离散信号的数字系统,通过对抽样数据进行数学处理来达到频域滤波的目的。根

3、据其单位冲击响应函数的时域特性可以分为两类:无限冲激响应(IIR)滤波器和有限冲激响应(FIR)滤波器。与IIR相比,FRI实现是非递归的,总是稳定的;更重要的是,FRI滤波器在满足幅频响应要求的同时,可以获得严格的线性相位特性,因此,它在高保真信号处理,如数字音频、图像处理、数据传输、生物医学等领域得到广泛应用。1.2 数字滤波器的主要分类 数字滤波器有许多种类,但总的来说可以分为两大类即经典滤波器和现代滤波器。经典滤波器的特点:输入的信号中所需要的信号与不需要的信号分别占有不同的频率带,选择一个合适的选频滤波器把不需要的信号过滤掉,得到一个纯净的信号,从而达到滤波的效果。现代滤波器的特点:

4、当输入的信号中各种信号掺杂在一起时,通过这种滤波器可以得到所需要的信号,达到滤波效果。比如维纳滤波器、卡尔曼滤波器、自适应滤波器等。经典滤波器从滤波特性上分类,可以分为低通、高通、带通和带阻等滤波器它可以是时不变的或时变的、因果的或非因果的、线性的或非线性的。应用最广的是线性、时不变数字滤波器以及Fir滤波器。数字滤波器从实现的网络结构或者从单位脉冲响应长度分类可分为无限长单位脉冲响应滤波器和有限长单位脉冲响应滤波器。1.3 数字滤波器的主要应用 (1)语音处理 语音处理是最早应用数字滤波器的领域之一,也是最早推动数字信号处理理论发展的领域之一。 (2)生物医学信号处理数字滤波器在医学中的应用

5、日益广泛,如对脑电图和心电图的分析、层析 X 射线摄影的计算机辅助分析、胎儿心音的自适应检测等。 (3)雷达 在现代雷达系统中,数字信号处理部分是不可缺少的,因为从信号的产生、滤波、加工到目标参数的估计和目标成像显示都离不开数字滤波技术。2带通数字滤波器的设计方法2.1数字滤波器的工作原理数字滤波器的的数学表达式:y(n)=x(n)*h(n) (2.1)如果滤波器的输入输出信号都是离散信号,那么该滤波器的脉冲响应也一定是离散信号,这样的滤波器就成了数字滤波器。其频率特性为: (2.2)其中,分别是数字滤波器的输出序列和输入序列的频率响应,是数字滤波器的频率响应。可以看见按照输入信号的频率特性和

6、处理信号的目的适当选择滤波器的频率响应,使得滤波后的输出信号满足设计性能要求。由于FIR数字滤波器具有严格的相位特性,对于信号处理和数据传输是很重要的。目前FIR滤波器的设计方法主要有三种:窗函数法、频率取样法和优化设计方法。常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。 其中利用窗函数法设计FIR滤波器的基本思路是:先给定频率响应函数,利用IDFT求出理想滤波器的单位响应在时域表达,从时域出发设计 h(n)逼近理想 。要想得到一个因果的有限长的滤波器单位抽样响应 h(n),最直接的方法是将进行截断,即利用截取为有限长因果序列。按照线性相位滤波器的要求,线性相位FIR数字低通滤波器的单

7、位抽样响应h(n)必须是偶对称的。矩形窗设计的FIR低通滤波器,所设计滤波器的幅度函数在通带和阻带都呈现出振荡现象,且最大波纹大约为幅度的9%,这个现象称为吉布斯(Gibbs)现象。为了消除吉布斯效应,一般采用其他类型的窗函数,Matlab设计FIR滤波器有多种方法和对应的函数。窗函数设计法不仅在数字滤波器的设计中占有重要的地位,同时可以用于功率谱的估计,从根本上讲,使用窗函数的目的就是消除由无限序列的截短而引起的Gibbs现象所带来的影响。利用频率取样法的基本思路是:设所需滤波器的频率响应为。现要求设计一个M阶的FIR滤波器hk,使得在M+1个取样点上,FIR滤波器的频率响应与所需的频率响应

8、相等,即 (2.3)由设计要求给定,hk需要通过设计来确定。如果M+1个方程是线性无关的,则可以通过求解M+1阶的线性方程得出FIR滤波器的hk。对的一些特殊取样法,上式方程的解可以直接由IDFT得到。由于要求设计出的滤波器是实系数的线性相位FIR滤波器,所以的取样值还需要满足线性相位滤波器的约束条件。利用优化设计方法设计等波纹FIR滤波器是指在FIR滤波器的阶数M固定的条件下,利用切比雪夫误差准则设计出的FIR滤波器的幅度响应在通带和阻带都会呈现等波纹的波动。所以这类滤波器称为等波纹FIR滤波器。等波纹FIR滤波器的设计方法是由Parks-McClellan提出。在解决问题过程中使用了数学优

9、化中的Remez交换算法。3 利用Matlab实现FRI滤波器设计在利用Matlab设计FIR滤波器时,分别采用窗函数法、频率取样法和优化设计方法去设计所需的滤波器。在设计的过程中,用设计的滤波器对加有噪声的语音信号或不同频率叠加的正弦输入信号进行滤波,对比输入前后的图像,以此验证滤波器的性能。在程序绘制的图像中,有滤波器的特性图、输入信号的时域频域图和输出信号的时域频域图。3.1 窗函数法Matlab的实现在窗函数法的Matlab实现中,程序中经常使用的函数有fir1和kaiserord。 程序中fir1函数的用法:b=fir1(n,Wn,ftype,window)n为滤波器的阶数Wn为滤波

10、器的截止频率,它是一个0到1的数。如果Wn是一个含有两个数的向量,则函数返回一个带通滤波器ftype为滤波器的类型,ftype=high时,设计的是高通滤波器;ftype=stop时,设计的是带阻滤波器;没有此参数时,设计的是低通滤波器window为指定的窗函数,矩形窗为boxcar(n),汉宁窗为hanning(n),海明窗为hamming(n),布莱克曼窗为blackman(n),凯撒窗为kaiser(n,beta),没有此参数时,默认为hamming窗程序中kaiserord函数的用法:n,Wn,beta,ftype=kaiserord(f,a,dev,Fs)f是一个向量,为设计滤波器过

11、渡带的起始点和结束点a是一个向量,指定频率段的幅度值dev是一个向量,长度和a相同,为各个通带和阻带内容许的幅度最大误差n为能够满足要求的滤波器的最小阶数Wn为滤波器的截止频率ftype为根据待设计滤波器的要求得到的滤波器的类型3.2 利用窗函数法设计带通滤波器设计要求:使用Kaiser窗,采样频率8000Hz通带截频0.325与0.5525,阻带截频0.25与0.6025阻带衰减大于等于40dB,通带和阻带波纹0.01程序代码:Rs=0.01;fs=8000;%采样频率fcuts=1000 1300 2210 2410;a=0 1 0;dev=Rs*ones(1,length(a);M,Wc

12、,beta,ftype=kaiserord(fcuts,a,dev,fs);%M为能够满足设计要求的滤波器的最小阶数,Wc为滤波器的截止频率点%第一个元素f为待设计滤波器的过渡带的起始点和结束点%第二个元素a指定第一个元素频率段的理想幅度值%第三个元素dev中的元素为各通带和阻带内允许的幅度最大误差M=mod(M,2)+M;window=Kaiser(M+1,beta);b=fir1(M,Wc,ftype,window);%输入的第一个参数是滤波器的阶数%第二个参数是滤波器的截止频率%第三个参数是滤波器的类型,stop为带阻滤波器%第四个参数是采用的窗函数h,f=freqz(b,1,512);

13、%滤波器的幅频特性图%H,W=freqz(B,A,N)当N是一个整数时函数返回N点频率向量和幅频响应向量figure(1)plot(f*fs/(2*pi),20*log10(abs(h)%参数分别是频率与幅值xlabel(频率/赫兹);ylabel(增益/分贝);title(滤波器的增益响应);f1=500;f2=1500;f3=2000;f4=3000;%待滤波正弦信号频率t=(0:200)/fs;%定义时间的步长s=sin(2*f1*pi*t)+sin(2*f2*pi*t)+sin(2*f3*pi*t)+sin(2*f4*pi*t);sf=filter(b,1,s);%使用filter函数

14、对信号进行滤波figure(2)subplot(211)plot(t,s);%滤波前的信号图像xlabel(时间/秒);ylabel(幅度);title(信号滤波前时域图);subplot(212)Fs=fft(s,512);AFs=abs(Fs);f=fs/512*(0:255);plot(f,AFs(1:256);%滤波前的信号频域图xlabel(频率/赫兹);ylabel(幅度);title(信号滤波前频域图);figure(3)subplot(211)plot(t,sf)%滤波后的信号图像xlabel(时间/秒);ylabel(幅度);title(信号滤波后时域图);axis(0.00

15、5 0.025 -4 4);subplot(212)Fsf=fft(sf,512);%滤波后的信号频域图AFsf=abs(Fsf);%信号频域图的幅值f=(0:255)*fs/512;%频率采样plot(f,AFsf(1:256)%滤波后的信号频域图xlabel(频率/赫兹);ylabel(幅度);title(信号滤波后频域图);图3.1 窗函数法设计带通滤波器的增益响应从参考程序及图3.1可以得到所设计出滤波器的参数如下:滤波器的采样频率为8000Hz,滤波器的阶数为90滤波器的通带截频0.325与0.5525,阻带截频0.25与0.6025,过渡带宽0.075与0.05阻带衰减为40dB,

16、通带和阻带的波纹均为0.01对比设计要求与所设计出滤波器的参数可知,其各项参数均满足设计指标,所设计出的滤波器即为设计所要求的滤波器。图3.2 信号滤波前的时域图和频域图 图3.3 信号滤波后的时域图和频域图从图3.2和图3.3的图像中可以看到:输入信号是由四个不同频率的正弦信号叠加而成,信号频域图中位于滤波器通带内的频率分量保留了下来,位于滤波器阻带内的频率分量被滤除,滤波器的效果符合设计要求。3.3 利用窗函数法设计高通滤波器利用Matlab编程:f1=60;f2=100;fs=500;wp=2*pi*f2/fs; ws=2*pi*f1/fs; bt=wp-ws; %计算过渡带宽度n0=c

17、eil(1.8*pi/bt); %矩形窗计算h(n)长度n0,ceil(x)取大于等于x的最小整数n=n0+mod(n0+1,2); %确保好h(n)长度n是奇数wc=(wp+ws)/2/pi; %计算高通滤波器通带截止频率b=fir1(n-1,0.5,high,boxcar(n); %调用firl计算高通FIR数字滤波器的h(n)figure(1)H,W = freqz(b,1,512); plot(W*fs/(2*pi), 20*log10(abs(H);xlabel(频率/Hz);ylabel(幅度/dB);title(滤波器的幅频特性);figure(2)subplot(2,1,1)t

18、=0:1/fs:0.25; %定义时间范围和步长x=sin(2*pi*20*t)+sin(2*pi*120*t); %滤波前信号plot(t,x);xlabel(时间/s);ylabel(幅度);title(信号滤波前时域图);subplot(2,1,2)X=fft(x,512); %将信号变换到频域f=(0:255)/256*(fs/2); %频率采样plot(f,abs(X(1:256); %滤波前的信号频域图xlabel(频率/Hz);ylabel(幅度);title(信号滤波前频域图);figure(3)y=filter(b,1,x); %使用filter函数对信号进行滤波subplo

19、t(2,1,1)plot(t,y); %滤波后的信号图像xlabel(时间/s);ylabel(幅度);title(信号滤波后时域图);subplot(2,1,2)Y=fft(y,512); %滤波后的信号频域图f=(0:255)/256*(fs/2); %频率采样plot(f,abs(Y(1:256); %滤波后的信号频域图xlabel(频率/Hz)ylabel(幅度)title(信号滤波后时域图);仿真结果: 图3.4高通滤波器的幅频特性 图3.5 信号滤波前波形图 图3.6 信号滤波后波形图设计结果分析:(1) 求的阶数n=13,根据阻带衰减和过渡带选择矩形窗,尽量选择主瓣窄的窗函数。(

20、2) 用滤波器进行滤波时,要选择好滤波器的通带频率和阻带频率,如果选择不好,可能会使得滤波滤的不干净,产生误差。 实 训 结 语 数字滤波器是提取有用信息非常重要、非常灵活的方法,是现代信号处理的重要内容。因而在数字通信、语音信号处理、谱分析、模式识别自动控制等领域得到了广泛的应用,相对于模拟滤波器,数字滤波器没有漂移,能够处理低频信号。频率响应特性可以转化为非常接近理想的特性,且精度高、容易集成,这些特性决定了数字滤波器的应用将会越来越广泛,同时FPGA和DSP等有关器件的发展也促进了数字滤波器的发展,并且为数字滤波器的硬件实现提供了更多的选择。Matlab信号处理工具箱为滤波器设计及分析提供了非常优秀的辅助设计工具,在设计数字滤波器时,善于应用Matlab进行辅助设计,能够大大提高设计效率且参数的修改也十分方便,还可以进一步进行优化设计。相信随着版本的不断提高,MATLAB在数字滤波器技术中必将发挥更大的作用。同时,用MATLAB计算有关数字滤波器的设计参数,如H(z)、h(n)等,对于数字滤波器的硬件实现也提供了一条简单而准确的途径和依据。 参 考 文 献1 高西全,丁玉美. 数字信号处理(第3版)M. 西安: 西安电子科技大学出版社 2008,3:1-22万永革.数字信号处理的MATLAB实现M, 北京: 科学出版社, 201

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论