dsp课设Word格式文档下载.docx

上传人:b****6 文档编号:20389525 上传时间:2023-01-22 格式:DOCX 页数:15 大小:101.40KB
下载 相关 举报
dsp课设Word格式文档下载.docx_第1页
第1页 / 共15页
dsp课设Word格式文档下载.docx_第2页
第2页 / 共15页
dsp课设Word格式文档下载.docx_第3页
第3页 / 共15页
dsp课设Word格式文档下载.docx_第4页
第4页 / 共15页
dsp课设Word格式文档下载.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

dsp课设Word格式文档下载.docx

《dsp课设Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《dsp课设Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。

dsp课设Word格式文档下载.docx

  矩形窗属于时间变量的零次幂窗。

矩形窗使用最多,习惯上不加窗就是使信号通过了矩形窗。

这种窗的优点是主瓣比较集中,缺点是旁瓣较高,并有负旁瓣,导致变换中带进了高频干扰和泄漏,甚至出现负谱现象。

  2)三角窗

  三角窗亦称费杰(Fejer)窗,是幂窗的一次方形式。

与矩形窗比较,主瓣宽约等于矩形窗的两倍,但旁瓣小,而且无负旁瓣。

  3)汉宁(Hanning)窗

  汉宁窗又称升余弦窗,汉宁窗可以看作是3个矩形时间窗的频谱之和,或者说是3个sine(t)型函数之和,而括号中的两项相对于第一个谱窗向左、右各移动了π/T,从而使旁瓣互相抵消,消去高频干扰和漏能。

可以看出,汉宁窗主瓣加宽并降低,旁瓣则显著减小,从减小泄漏观点出发,汉宁窗优于矩形窗.但汉宁窗主瓣加宽,相当于分析带宽加宽,频率分辨力下降。

  4)海明(Hamming)窗

  海明窗也是余弦窗的一种,又称改进的升余弦窗。

海明窗与汉宁窗都是余弦窗,只是加权系数不同。

海明窗加权的系数能使旁瓣达到更小。

分析表明,海明窗的第一旁瓣衰减为一42dB.海明窗的频谱也是由3个矩形时窗的频谱合成,但其旁瓣衰减速度为20dB/(10oct),这比汉宁窗衰减速度慢。

海明窗与汉宁窗都是很有用的窗函数。

  5)高斯窗

  高斯窗是一种指数窗。

高斯窗谱无负的旁瓣,第一旁瓣衰减达一55dB。

高斯富谱的主瓣较宽,故而频率分辨力低.高斯窗函数常被用来截断一些非周期信号,如指数衰减信号等。

  对于窗函数的选择,应考虑被分析信号的性质与处理要求。

如果仅要求精确读出主瓣频率,而不考虑幅值精度,则可选用主瓣宽度比较窄而便于分辨的矩形窗,例如测量物体的自振频率等;

如果分析窄带信号,且有较强的干扰噪声,则应选用旁瓣幅度小的窗函数,如汉宁窗、三角窗等;

对于随时间按指数衰减的函数,可采用指数窗来提高信噪比。

不同的窗函数对信号频谱的影响是不一样的,这主要是因为不同的窗函数,产生泄漏的大小不一样,频率分辨能力也不一样。

信号的截断产生了能量泄漏,而用FFT算法计算频谱又产生了栅栏效应,从原理上讲这两种误差都是不能消除的,但是我们可以通过选择不同的窗函数对它们的影响进行抑制。

(矩形窗主瓣窄,旁瓣大,频率识别精度最高,幅值识别精度最低;

布莱克曼窗主瓣宽,旁瓣小,频率识别精度最低,但幅值识别精度最高)

1.2matlab简介

MATLAB作为一种科学计算的高级语言之所以受欢迎,就是因为它有丰富的函数资源和工具箱资源,编程人员可以根据自己的需要选择函数,而无需再去编写大量繁琐的程序代码,从而减轻了编程人员的工作负担。

被称为第四代编程语言的MATLAB最大的特点就是简洁开放的程序代码和直观实用的开发环境。

具体地说MATLAB主要有以下特点:

  

(1)库函数资源丰富

  数百种库函数大大减轻了用户子程序的编写工作量,也避免了一些不必要的错误,因而用户也不必担心程序的可靠性问题。

  

(2)语言精炼,代码灵活

  MATLAB的编程语言符合人们的思维习惯,对代码的书写也没有特别严格的控制,语言精炼,程序的亢余度非常小。

  (3)运算符多而灵活

  MATLAB的内核是用c语言编写的,它为用户提供了和C语言一样多的运算符,用户运用这些运算符可以使程序更加简炼。

  (4)面向对象,控制功能优良

  MATLAB在5.x各版本中优化了数据结构,使得程序的结构化控制更精良,面向对象的功能更加友善。

特别是当前的7.0版,在可视化编程方面比以前的版本又有了更大的提高,使界面编程更方便、自由。

  (5)程序设计自由

  MATLAB7.0版支持长变量名达到63个字符,用户可以不对矩阵进行预定义就使用,变量和数组的应用也有了很大的扩展,这为用户编写程序提供了更大的自由度,使编程更加简单、方便。

  (6)图形功能强大

  在很多程序语言中,绘制图形是一件很麻烦的事情。

但在MATLAB中,只需调用相应的绘图函数即可,既方便又迅速。

随着硬件的发展和MATLAB7.0推出,MATLAB的图形功能更好,可视化编程能力得到更进一步的提高。

  (7)程序的兼容性好

  MATLAB可以在各种PC机、大型计算机和各种操作系统上运行。

  (8)源代码开放

  MATLAB的最重要的特点是源代码的开放性,除了内部函数,所有的MATLAB核心文件和工具箱文件都完全开放,都可渎可改。

用户对源文件修改就可以生成适合自己的源代码文件。

  (9)形形色色的工具箱

  凡有工具箱的软件大都分为两大部分,就是核心部分和形形色色的工具箱。

MATLAB有数百个核心内部函数,数十个形形色色的工具箱。

工具箱大致可以分为两大类,——类是学科性工具箱,另一类是功能性工具箱。

学科性工具箱大都涵盖了本学科所有的已有的基本概念和基本运算,大都十分专业。

如符号数学工具箱,简直就是一个高等数学、工程数学解题器。

极限、导数、微分、积分、级数运算与展开、微分方程求解、Laplace变换等应有尽有。

还有控制系统、信号处理、模糊逻辑、神经网络、小波分析、统计;

优化、金融预测等工具箱,无一不是非常优秀的运算工具。

这些工具箱都可以添加自己根据需要编写的函数,用户可以不断更新自己的工具箱,使之更适合于自己的研究和计算。

2窗函数的应用—FIR滤波器设计

在讨论任何一种滤波器时,都要着重分析其系统函数,FIR滤波器的系统函数为:

从该系统函数可看出,FIR滤波器有以下特点:

1)系统的单位冲激响应h(n)在有限个n值处不为零;

2)系统函数H(z)在|z|>

0处收敛,极点全部在z=0处(稳定系统);

3)结构上主要是非递归结构,没有输出到输入的反馈,但有些结构中(例如频率抽样结构)也包含有反馈的递归部分。

 

2.1线性相位FIR滤波器的特点 

FIR滤波器的单位冲激响应h(n)是有限长的(0≤n≤N-1),其Z变换为:

其傅立叶变换为:

其中H(ω)是幅度函数,是一个纯实数,可正可负,θ(ω)是相位函数。

可以证明,线性相位FIR滤波器的冲激响应满足对称条件:

h(n)=±

h(N-1-n) 

(1)、线性相位FIR滤波器的幅度函数和相位函数:

(a)当h(n)是偶对称时,其幅度函数和相位函数分别为:

特点:

幅度函数H(ω)包括正负值,相位函数是严格线性相位,滤波器有(N-1)/2个抽样周期的延时,它等于单位抽样响应h(n)长度N的一半。

(b)当h(n)是奇对称时,其幅度函数和相位函数分别为:

相位函数是严格线性相位,但在零频率(ω=0)处有π/2的相移。

仍有(N-1)个抽样周期的延时。

因此当h(n)为奇对称时,FIR滤波器将是一个具有准确相位的正交变换网络。

(2)、FIR滤波器的线性相位特性

FIR滤波器的线性相位特性如图所示。

图2.1

(3)、任何一种线性相位FIR滤波器的群延时都为:

(4)FIR滤波器幅度函数的特点

分四种情况分别讨论H(ω)的特点:

(a)当h(n)偶对称,N为奇数时:

幅度函数的特点:

H(ω)对ω=0,

呈偶对称。

(b)当h(n)偶对称,N为偶数 

时 

幅度函数的特点:

时,

,在z=-1处有一个零点,

是奇对称;

如果滤波器在

处幅度不为零(如高通滤波器),则不能用这种滤波器。

(c)当h(n)奇对称,N为奇数时

幅度函数的特点:

H(ω)在ω=0,

处都为零,也就是H(z)在

处为零;

都成奇对称。

(d)当h(n)奇对称,N为偶数时:

处为零,即H(z)在z=1处为零点;

呈奇对称,对ω=

(5)、零点位置:

线性相位FIR滤波器的系统函数有以下关系:

可见,若

是H(z)的零点,则

也一定是H(z)的零点。

又由于当h(n)是实数时,H(z)的零点必成共轭对出现,所以

因而线性相位FIR滤波器的零点必是互为倒数的共轭对。

其有四种可能性:

(1)

既不在实轴上,也不在单位园上,则是互为倒数的两组共轭对。

(2)

不在实轴上,但是在单位园上,则共轭对的倒数是它们本身,故只有一组共轭对。

(3)

在实轴上而不在单位园上,只有倒数部分,无复共轭部分。

(4)

既在实轴上又在单位园上,有两种可能,z=1或z=-1。

2.2用窗函数设计FIR滤波器

这种方法也称为傅立叶级数法。

其设计是在时域进行的,先用傅氏反变换求出理想数字滤波器的单位抽样响应hd(n),然后时域移位并加时间窗w(n)对其截断,从而求得FIR滤波器的单位抽样响应h(n)。

在设计过程中,将无限长序列变为有限长是通过时域加矩形窗乘积实现数据的截断的。

时域乘积对应了频域卷积,从而对频响特征发生的改变。

常见的窗函数有:

矩形窗、三角形(Bartlertt)窗、汉宁(Hanning)窗。

海明(Hamming)窗、布拉克曼(Blackman)窗、凯泽(kaiser)窗等。

(1)矩形窗

(2)汉宁窗(升余弦窗)

=0.5

利用傅氏变换的移位特性,汉宁窗频谱的幅度函数W(ω)可用矩形窗的幅度函数表示为:

三部分矩形窗频谱相加,使旁瓣互相抵消,能量集中在主瓣,旁瓣大大减小,主瓣宽度增加1倍。

(3)汉明窗(改进的升余弦窗)

对汉宁窗的改进,在主瓣宽度(对应第一零点的宽度)相同的情况下,旁瓣进一步减小,可使99.96%的能量集中在主瓣内。

(4)布莱克曼窗(三阶升余弦窗)

增加一二次谐波余弦分量,可进一步降低旁瓣,但主瓣宽度进一步增加,增加N可减少过渡带。

频谱的幅度函数为:

(5)凯塞窗

以上四种窗函数,都是以增加主瓣宽度为代价来降低旁瓣。

凯塞窗则可自由选择主瓣宽度和旁瓣衰减。

I0(x)是零阶贝塞尔函数,参数β可自由选择,决定主瓣宽度与旁瓣衰减。

β越大,w(n)窗越窄,其频谱的主瓣变宽,旁瓣变小。

一般取4<

β<

9,β=5接近汉明;

β=8.5,接近布莱克曼;

β=0,为矩形。

 

除了上述窗口外,还有所谓的“组构窗口”,即由一些简单的窗函数组合构成,如常见的三角形窗(Bartlett窗)

它是由二个长度为(N/2)的矩形窗进行线性卷积而成的。

3窗函数应用实例

例一:

用窗函数设计一个24阶FIR带通滤波器,通带频率为0.35≤ω≤0.65

利用工具函数FIR1编写程序如下:

wp=[0.350.65];

N=24;

%using’FIR1’Designthefilter

b=fir1(2*N,wp);

freqz(b,1,512)

程序运行结果:

图3.1

例二:

用凯塞窗设计一FIR低通滤波器,低通边界频率

,阻带边界频率

,阻带衰减

不小于50dB。

解:

首先由过渡带宽和阻带衰减

来决定凯塞窗的N和

凯塞窗设计对应的MATLAB程序为:

wn=kaiser(30,4.55);

nn=[0:

1:

29];

alfa=(30-1)/2;

hd=sin(0.4*pi*(nn-alfa))./(pi*(nn-alfa));

h=hd.*wn'

;

[h1,w1]=freqz(h,1);

plot(w1/pi,20*log10(abs(h1)));

axis([0,1,-80,10]);

grid;

xlabel('

归一化频率/'

);

ylabel('

幅度/dB'

图3.2

例三:

设计一个长度为8的线性相位FIR滤波器。

其理想幅频特性满足

用矩形窗:

Window=boxcar(8);

b=fir1(7,0.4,Window);

freqz(b,1)

用blackman窗:

Window=blackman(8);

矩形窗程序运行结果:

图3.3

blackman窗程序运行结果:

图3.4

4窗函数抑制频谱泄露的作用

在实际问题中遇到的离散时间序列x(n)通常是无限长序列,因而处理这个序列的时候需要将它截短。

截短相当于将序列乘以窗函数w(n)。

根据频域卷积定理,时域中x(n)和w(n)相乘对应于频域中它们的离散傅立叶变换X(jw)和W(jw)的卷积。

因此,x(n)截矩后的频谱不同于它以前的频谱。

例如,对于频率为fs的正弦序列,它的频谱应该只是在fs处有离散谱。

但是,在利用DFT求它的频谱做了截短,结果使信号的频谱不只是在fs处有离散谱,而是在以fs为中心的频带范围内都有谱线出现,它们可以理解为是从fs频率上“泄露”出去的,这种现象称为频谱“泄露”。

为了减小频谱“泄露”的影响,往往在FFT处理中采用加权技术,典型的加权序列有Hanning、Blackman、Gaussian等窗序列。

此外,增加窗序列的长度也可以减少频谱“泄露”。

中矩形窗主瓣窄,旁瓣大,频率识别精度最高,幅值识别精度最低;

布莱克曼窗主瓣宽,旁瓣小,频率识别精度最低,但幅值识别精度最高;

Hanning窗在大多数场合很有效,由于它具有良好的频率分辨率,并降低了频率泄漏。

当你不了解信号的特性时,从Hanning窗开始。

下面是应用窗函数处理数据集的一般原则:

(1)当信号在“远”频段包含强干扰时,选用具有高旁瓣转降率的窗函数;

(2)当信号在有用频率附近包含强干扰时,选择具有较低的最大旁瓣级别的窗函数;

(3)当你需要在某一频率附近分离两个或多个信号,选择具有窄主瓣而平滑的窗函数;

(4)当信号频率组成的幅值比其频率精确位置更重要的场合,选择具有宽主瓣的窗函数;

(5)当信号的频段较宽,或宽频,采用均衡的窗函数或不加窗函数。

5心得体会

作为一个电子信息类专业的学生,数字信号处理是我们的重要专业课程,是我们将来从事通信事业的基本保障。

通过对该课程的学习,我们对数字通信理论有了更进一步的理解;

通过对该数字滤波器的设计,我们也了解了数字滤波器的基本结构和基本特性,而且还掌握了基本的撰写论文的形式和思路。

通过对作为该论文的重要部分—MATLAB的运用,从而大大提高了我们对集计算,编程与绘图于一体的该应用软件的运用能力。

MATLAB包含的几十个工具箱,覆盖了通信,自动控制,信号处理,图象处理,财经,化工,生命科学等科学技术领域,汲取了当今世界这些领域的最新研究成果,已经成为从事科学研究和工程设计不可缺少的工具软件。

该论文将数字信号处理的有关教学内容和MATLAB语言紧密,有机地结合起来,使我们在学习基础理论知识的同时学会了应用MATLAB,在学习应用MATLAB的同时,加深了对基本知识的理解,增强了我们的计算机应用能力,提高了学习效果。

总之,无论是从教学知识掌握出发,还是从对MATLAB的应用出发,通过对数字滤波器的设计,我们受益非浅。

因为有了这次课程设计,我不得不对其设计原理进行更深一层次的理解,对书中原来学到的理论,仅知道了其表面,而不知其原因。

在设计中也使我对一些概念有了更深刻的认识。

例如:

在指标方面,我混淆了模拟指标和数字指标的概念,经过老师的点拨,自己更加明确,而且记忆深刻。

还有在课程设计中每一次的数据输入都有其重要意义,用MATLAB编译程序时,可以根据滤波器指标的要求实时知道对滤波器的影响。

例如,编好程序后,调试成功,任意改变输入阻带或者通带衰减,可以看到输出波形的变化,改变截止频率wc(带通和带阻滤波器为wclwcu)同样可以看到输出波形的变化。

由此,对理论的理解就更加简单方便,而且记忆力深刻。

除此之外,对程序的编译不是一蹴而就的,而是经过多次的编译与调试。

以前用MATLAB就是简单的输入,可以说都不是自己的劳动成果,但这次不一样,课程设计没有别人给你编好,而是自己写,出错率就大大提高了,但这是过程,学习就是在过程中进行的,经过自己几天的脑力劳动,再加上同学们的帮助,不仅对读程序有了很大提高,而且自己的编译水平也上了一个新台阶,更加熟系了MATLAB的应用,也对其中的函数有了大概的了解,对其中一些函数也相当熟练,abs()、log、exp()这些都很简单,滤波器设计中用到了ceil()、freqz()等很重要的函数,可以用fir1()、fir2()可以直接调用,但那样就达不到对真正理论设计过程的理解和运用。

完成整个设计过程后,学到的东西已经不仅仅上面的那些东西,还有同组员的共同努力和探讨和设计过程中的每一个细节,也许每一个细节的错误就可能导致结局的失败,所以我认为这次收获最大的莫过于静心,学习不能急,一定

冷静,心无旁骛,不放过任何一个细节,就能带来凯旋的消息。

6参考文献

[1]程佩青编.数字信号处理教程.北京:

清华大学出版社,2001

[2]丁玉美.高西全编著.数字信号处理.西安:

西安电子科技大学出版社,2000

[3]黄文梅,熊桂林,杨勇编著.信号分析与处理-MATLAB语言及应用.长沙:

国防科技大学出版社

[4]王世一.数字信号处理(修订版).北京:

北京理工大学出版社,2001

[5]高西全,丁玉美,阔永红.数字信号处理——原理、实现与应用.北京:

电子工业出版社,2006

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 自我管理与提升

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1