《数字信号处理》实验讲义(信息计算)_第1页
《数字信号处理》实验讲义(信息计算)_第2页
《数字信号处理》实验讲义(信息计算)_第3页
《数字信号处理》实验讲义(信息计算)_第4页
《数字信号处理》实验讲义(信息计算)_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

wordword文档可自由复制编辑wordword文档可自由复制编辑《数字信号处理》试验指导书一、试验目的

试验一常见离散信号的产生加深对离散信号的理解。把握典型离散信号的Matlab产生和显示。二、试验原理及方法在MATLAB中,序列是用矩阵向量表示但它没有包含采样信息即序列位置信息为此,要表示一个序列需要建立两个向量;一是时间序列n,或称位置序列,另一个为取值序列x,表示如下: n=[…,-3,-2,-1,0,1,2,3,…]x=[…,6,3,5,2,1,7,9,…]一般程序都从0位置起始,则x=[x(0),x(1),x(2),…]对于多维信号需要建立矩阵来表示,矩阵的每个列向量代表一维信号。数字信号处理中常用的信号有指数信号、正弦信号、余弦信号、方波信号、锯齿波信号等,在MATLAB语言中分别由exp,sin,cos,square,sawtooth等函数来实现。三、试验内容1.用MATLAB编制程序,分别产生长度为N(由输入确定)的序列:①单位冲击响应序列:(n可用MATLAB中zeros函数来实现;②单位阶跃序列:u(n)可用MATLAB中ones函数来实现;x(n)sin(n);④指数序列:x(n)an, n⑤复指数序列用exp函数实现x(n)Ke(ajb)n ,并给出该复指数序列的实部虚部、0幅值和相位的图形。(其中a0.2,b0.5,K 4,N40.)0参考流程图:四、试验报告要求写出试验程序,绘出单位阶跃序列、单位阶跃序列、正弦序列、指数序列的图形以及绘出复指数序列的实部、虚部、幅值和相位的图形。序列信号的实现方法。在计算机上实现正弦序列x(n)A0

sin(2fn)。试验二离散信号的运算一、试验目的把握离散信号的时域特性。用MATLAB实现离散信号的各种运算。二、试验原理及方法运算,信号的根本运算包括加法、乘法、加权﹑移位、翻转、尺度变换、卷积等。设有两个序列x1(n)和x2(n):x(n)x1

(n)x2

(n),在MATLAB中可用“+”x1

(n)和x(n的长度必需一样,假设序列长度不同,或者长度一样的序列而样本位置不同,也2不能直接用算符+x1

(n)x2

(n)扩大或延长以使它们具有一样位置的向量n。此时可以用函数sigadd来实现。x(nx1

(n)x2

(n)可用“.*”实现,对+算符所加的限制同样对算符.*使用,此时用函数sigmult实现。加权在MATLAB中可用“*”来实现;移位在MATLABysigshift(xmn0

来实现,其中n0

时所移动的位数。y(nx1

(n,样本值可由函数fliplr(x)实现,翻转序列y(n)可由函数[y,n]=sigfold(x,n)实现。尺度变换可用类似于y(n)=x(2n)的式子实现;y(n)x1

(n)*x2

(n)可由函数y=conv(x,h)实现但conv函数默认两个序列都是从n=0conv_m(所使用的各种库函数见教材,可直接使用)三、试验内容1、先输入两个序列(长短不一),然后变成一样长度的序列,再分别实现相加和相乘。1)序列:x(n)n2n 0n101x(n)n2n 0n101用MATLABy1

x(n)x1

,并画出其序列波形。x1

(n)sin(0

n), 0

, 2020x(n)an, a1.05, 20n202用MATLABy1

x(n).*x1

(n)并画出其序列波形。x1

(n)cos(0

n), 0

, 10n1020x(n)(0.6)n,2

5n5MATLABy1

x(n)*x1

,并画出其序列波形参考流程图:2、计算机上输入一个序列,然后实现该序列的翻转。n的范围=0:4序列x=[12345]四、试验报告要求,验证明验的准确性。试验三 序列的傅里叶变换一、试验目的学习并把握序列的傅里叶变换及其性质.了解其在计算机上的实现方法.二、试验原理及方法所谓傅立叶变换就以时间为自变量的“信号”与频率为自变量的“频谱”函数之间的某种变换“时间”或频率取连续形式和离散形式的不同组合就可形成各种不同的傅立叶变换对。离散时间非周期信号及其频率之间的关系,可以用序列的傅立叶变换对来表示。设x(n)是非周期序列,它的傅里叶变换对定义如下:X(ej)DTFT[x(n

n

x(n)ejn, n反变换:x(n)IDTFT[X(ej)] 12

X(ej)ejnd, (32)式(3-1)、式(3-2)表示了非周期序列与频谱的相互关系,称为傅立叶变换对.式(3-1)成立的充分条件是序列x(n)满足确定可和的条件,即满足下式:由于n取整数,当M也取整数时有

n

x(n)znX(ej)

n

x(n)ejn

n

x(n)ejn(2M)它说明x(n)X(ej)是的周期函数,周期为2。序列的傅立叶变换的性质主要有以下几方面:X(ej)是的周期函数,周期为2。X(ej)X(ej(2) X(ej)的一个周期,而不需整个域。线性性DTFT[x(n)]:对任何a,bx1

(nx2

(n)有:DTFT[ax1

bx2

(n)]aDTFT[x1

(n)]bDTFT[x2

(n)],时移与频移DTF[ xn

j

j e)DTFT[x(n)ejn

]X(ej())00对称性:对于实值x(n), X(ej)是共轭对称的,即00X(ej)X*(ej)或者:Re[X(ej)]Re[X(ej)] (偶对称)Im[X(ejIm[X(ej)] (奇对称)X(ej)X(ej)(偶对称)□ X(ej)Xj ) (奇对称)X(ej)的半个周期,一般都选[0,。三、试验内容x(n)(0.8)nu(n),求x(n)的DTFT.并绘制图形显示其幅度和相位。x(n)ejn的对称性,并绘制其波形进展验证.参考流程图:1:2:四、试验报告要求总结序列的离散傅立叶变换的性质.在计算机上验证序列的离散傅立叶变换的时移与频移性质,并绘制图形比较其外形有什么区分.写出试验程序.

试验四 模拟信号的数字处理(采样定理)把握信号的采样的方法。分析信号的采样频率对频率特性的影响。二.试验原理及方法在现实世界里,声音、图像等各种信号多为模拟信号,要对它进展数字化处理,首先要将模拟信号经过采样、量化、编码,变成数字信号,即进展A/D转换,然后用数字技术进展数字信号处理,最终经过D/A转换成为模拟信号,这一处理过程称为模拟信号的数字信号处理.在这一过程中最主要的是采样定理.采样定理是指对于一个c

的带限信号,只要采样频率高于带限信号最高频率的两倍,即s信号.2c

时,则可以由其采样信号惟一正确地重建原始严格地说,在MATLAB中不能分析模拟信号,但当采样时间间隔充分小的时候,可以产生平滑的曲线,当时间足够长,可显示全部的模型,即近似的分析.三.试验内容及步骤xa

e1000|t|fs

5000Hzfs

1000HzXj曲线,并比照两次结果说明采样频率对曲线的影响。参考流程图:四.试验报告要求简述试验原理及目的.写出程序并绘制图形,分析图形并指出频谱混迭的缘由.一、试验目的

试验五 离散傅里叶变换通过试验加深对DFT的理解。理解如何用DFT计算离散信号频谱。二、试验原理及方法频率的周期函数。必定是周期的。但是,用计算机去完成这样无限长序列的运算,明显是不行能的。同时,由于这些序列的周期性,他们的信息均包含在一个周期之中,因此也没有必要作无限长序列的运算样,就有必要从时域和频域都缩减到一个限定的范围内来进展。这个范围周期Tp

和频谱函数的一个周期

p是离散傅里叶变换对,如以DFT表示离散傅里叶正变换,IDFT表示离散傅里叶反变换,则有X(k)DFT[x(n)]x(n)IDFT[X(k)]函数和周期性得离散频率函数时,他们才成为通常意义的傅里叶变换对。说明白离散傅里叶变换的意义后,现在可以来进一步争论如何计算离散傅里叶变换,既由x(n计算X(k。有了周期的离散信号(n)的频谱函数(k),按定义,只要取(k)的一个周期X(k,它就是(n)一个周期x(n的离散傅里叶变换。(k:N(k)N1x(n)ej2knNn0现在依据离散傅里叶变换的定义,只取频谱函数的一个周期,于是得:NX(k)N1x(n)ej2kn, 0kN1Nn0X(k)x(n)的离散傅里叶变换DFT。k0N-1之间每取一整数值,即可算出频谱函数的一个样点,总共有N个样点。三、试验内容及步骤用DFT分析各种离散信号的幅频特性。xa

(t)0.15sin(2ft)sin(2f1

t)0.1sin(2f2

,其中31Hz, f1

2hz,f3

3Hzfs

32Hz,其抽样点数N=32时的DFT。x(n)sin(n/8)sin(n/4),求其N=16时的DFT。1ej4x(n)R4

(n),X(ej)DFT[x(n 绘出相应的幅频和相频曲1ej线,并计算N=8,16时的DFT,由此说明N点DFT的物理意义.1:3:设x(n)为长度N=5的矩形序列,求离散傅立叶变换X(k)绘出有限长序列x(n);由n形成的周期序列(n);对应于(n)的傅立叶级(k)和x(n)的傅立叶变换的幅度特性X(ej);x(n)的DFTX(k)。假设将长度改成N=10的矩形序列,绘出有限长序列x(n);周期序列~x(n);DFT的幅值。程序流程图:四、思考题用连续傅里叶变换分析(被抽样的)连续信号,将其结果与抽样信号的离散傅里叶变换结果相比较,你能觉察什么问题?如何解释?计算抽样序列的连续傅里叶变换,将其结果与抽样序列的离散傅里叶变换结果相比较,你又能觉察什么问题?五、试验报告要求简述试验原理及目的。有力气者自行编制信号频谱的相频特性程序,分析信号的相频特性。写出试验程序绘制图形,总结DFT的物理意义.简要答复思考题。试验六离散信号的DTFT和DFT一、试验目的加深对离散信号的DTFT和DFT的及其相互关系的理解。二、试验原理及方法散Fouier变换(DFT)。这一变换不但可以很好的反映序列的频谱特性,而且易于用快速算法在计算机上实现。DTFT和DFT的主要区分就是DFT在时域和频域都是离散的,它带来的最大好处就是适合于数值计算,适合于计算机处理,DTFT和DFT有很多相像的性质。利用MATLAB工程计算语言按要求编写程序算法,实现对有限长序列的离散时间傅立叶变换(DTFT)和离散傅立叶变换(DFT)的求解。三、试验内容序列:x(n)cos516

n,0n15x(n)的16点和32点DTFTX(ej)幅度谱图形;x(n)的16点和32点DFT,绘出X(k)幅度谱图形;争论对正弦信号抽样及DTFT和DFT2.序列:x(n)={1,2,3,4,5,6,6,5,4,3,2,1}计算x(n)的DFT为X(k),绘出它的幅度和相位图;计算x(n)的DTFTX(ej),绘出它的幅度和相位图;利用hold函数,比较并验证X(k)X(ej)的采样。参考流程图:四、试验报告要求简述试验原理及目的.写出试验程序,绘制试验结果.总结试验结论.一、试验目的学习分段卷积的概念及其应用。把握如何来实现分段卷积。二、试验原理及方法积,假设将整个序列存储起来再作大点数的运算,不但运算量大,而且往往时延也不允许,并且在实际应用中,往往要求实时处理。在这些状况下,就要将长序列分段,每一段分别与短序列进展卷积,即分段卷积。有两种方法:重叠相加法和重叠保存法。重叠相加法设序列h(n)长为M,x(n)是长序列。这种方法是将x(n)分段,每段长与h(n)接近设为N1,将每一段分别与h(n)进展线性卷积,再将分段卷积各段重叠的局部相加构成总的卷积输出。设x(n)x0

(n),x1

(n),...,,第kxk

(n)表示为x(n), kNn(k1)N0,x(n) 1 10,k其它k故x(nk0

x(n)ky(n)x(n)*h(n)x(n)*h(n)[x(n)*h(n)]y(n)k k k0 k0 k0y(n)x(n)*h(nk段线性卷积的结果。k k重叠保存法将各段线性卷积局部直接连接起来,省掉了输出段的直接相加。设序列h(n)长为M,x(n)是长序列,将x(n)分段,每段长为N1,然后各段再往前多取个M-1样值,这样,取出的各段xk

(nNN1

M1。为了保证最前面的一段x0

(n)之长也为N,取出开头的N1个样值之后,再在其前面补上M-1个0。x(n为其中的一段,将其取出后要与h(n)进展N点循环卷积,故h(n)Nk 1

1个0使其长度为Ny”(n)x

()()为这段的循环卷积,则”()N的周期y

k(n)x

k(nh(ny

k(n的长度应为k k kN”NM1N2(M1)”(n)应是线性卷积

(n)1 k k期为Nyk

(n)N>N,因此必定产生混叠,即y”(n)-个值都k是() yk

(n)的前一个周期的后M-1个值与后一个周期的前M-1个值的混叠。也就是说,该段循y”(n)的N个值中,前M-1y(n)前面的M-1个值与后面的M-1个值的混k k叠,后N1yk(n)的中间的N1xk(n是往前M-1个点混叠取出的,故这N1个值也正是要求的线性卷积y(n)相应于此段的N1个值。因此,只需将每一段所得的循环卷积的前M-1个值去掉,保存后面的N1个值,再将各段保存的N1个值前后拼接起来,就得到所要求的线性卷积y(n)。三、试验内容1.设x(n)3n2(0n18), h(n){1,2,3,4},按N=7用重叠保存法计算线性卷积y(n)x(n)*h(n)。用重叠相加法(N7)重复上面的计算,看结果是否一样?参考流程图:四、试验报告要求简述试验原理及目的。写出试验程序及结果,比较重叠保存法与重叠相加法及与直接线性卷积有无异同?试验八 FFT及信号的谱分析一、试验目的1.通过试验加深对FFT的理解,生疏FFT程序、构造及编程方法。2.娴熟应用FFT对典型信号进展谱分析的方法。3.了解应用FFT进展信号频域分析可能消灭的问题以便在实际中正确应用FFT。理解FFT与IFFT的关系。生疏应用FFT实现两个序列的线性卷积的方法。二、试验原理及方法离散Fourier变换〔DFT〕。这一变换不但可以很好地反映序列的频谱特性,而且已于永快速算法在计算机上实现,当序列x(n)的长度为N时,它的DFT定义为:X(k)DFT[x(n)]

N

kn,

j2反变换为:

N Nn0x(n)IDFT[X(k)]

1N1X(KWknN Nk0有限长序列的DFT是其ZFourier变换的等距采样,因此可以用于序列的谱分析。FFT并不是与DFT不同的另一种变幻,而是为了削减DFT运算次数的一种快速算法。FFT是以2为基数的,其长度N2L。它的效率高,程序简洁,使用格外便利,当要变换的序列长度不等于2的整数次方时,为了使用以2为基数的FFT,可以用末位补零的方法,是其长度延长至2的整数次方。〔一〕、在利用DFT进展频谱分析时可能会消灭三种误差。混叠低,也即抽样周期太大,在频域内将产生混叠现象,这样就不行能无失真的恢复原连续信号。对带限信号,当所处理模拟信号最高频率fh

f满足sf2fs h时就不会消灭频谱混叠现象。然而,时域内有限长的信号,其频谱宽度是无限的,为了使有限长信号满足抽样定理,在进展抽样之前,可以先用低通模拟滤波器对信号进展滤波,从而保证高于折叠频率的重量不会消灭。〔2〕泄漏们。这样可以使用较短的DFT来对信号进展频谱分析。对序列x(n)截短的过程就是将原信号到的频谱不同于信号原来的频谱,这种现象叫做泄漏。在实际应用中,可以选用频谱主瓣小、旁瓣小、尽量接近于(的窗函数来削减泄漏。泄漏不能与混叠完全分开,由于泄漏导致频小。栅栏效应DFT是对单位园上z变换的均匀取样,所以它不行能将频谱视为一个连续函数。这样就产生了栅栏效应。就确定的意义上看,用DFT来观看频谱就似乎通过一个尖桩的栅栏来观看一个桩的栅栏”所挡住,不能被我们观看到。减小栅栏效应的一个方法是借助于原序列的末端增加一些零值,从而变动DFT的点数。这一方法实际上是人为的转变了对真实频谱采样的点数和位置,相当于搬动了每一根“尖桩栅栏”的位置,从而使得原来看不到的频谱的峰点或谷点就有IFFT一般可以通过FFTX[k]FFT取共轭,并乘以因子1/N,就可以完成IFFT。试验中用到的信号序列:Gaussian序列:xa

(n)(n)e0,

(np)2q

, 0n15others衰减正弦序列:xb

easinsfn, 0n150, 0, others三、试验内容用三种不同的DFTx(n)R8

X(ej),并比较三种程序计算机运行时间。用forloop语句的M函数文件dft1.m,用循环变量逐点计算X(k);编写用MATLAB矩阵运算的M函数文件dft2.m,完成以下矩阵运算;调用FFT库函数,直接计算X(k);分别利用上述三种不同方式编写的DFT程序计算序列x(n)X(ej),并画出相应的幅频和相频特性,再比较各个程序的计算机运行时间。M函数文件如下:dft1.m:function[Am,pha]=dft1(x);N=length(x);w=exp(-j*2*pi/N);fork=1:Nsum=0;forn=1:Nsum=sum+x(n)*w^((k-1)*(n-1));endAm(k)=abs(sum);pha(k)=angle(sum);enddft2.m:function[Am,pha]=dft2(x)N=length(x);n=[0:N-1];k=[0:N-1];w=exp(-j*2*pi/N);nk=n”*k;wnk=w.^(nk);Xk=x*wnk;Am=abs(Xk);pha=angle(Xk);2、编制信号频谱分析的主程序〔见参考流程图〕和产生信号的子程序。x(n)中参数p=8,转变qq分别等于2,a4,8,观看它们的时域和频域特性,了解当q取不同值时,对信号序列的时域幅频特性的影响;固定q=8,转变p,使p分别等于8,13,14,观看参数p变化对信号序列的时域及幅频特性的影响,观看p等于多少时,会发生明显的泄漏现象,混叠是否也随之消灭?记录试验中观看到的现象,绘出相应的时域序列和幅频特性曲线。观看衰减正弦序列x(n)b的时域和幅频特性,=0.1,f=0.0625,检查谱峰消灭位置是否正确,留意频谱的外形,绘出幅频特性曲线,转变f,使f分别等于0.4375和0.5625,观看这两种状况下频谱的外形和谱峰消灭为止,又无混叠和泄露现象?说明产生现象的缘由。用FFT对如下信号进展谱分析:x(t)cos8tcos16tcos20t选择抽样频率f 64Hz,抽样点数分别取16,32,64。s(4)、实现序列的内插和抽取所对应的傅里叶变换。 1.5给定序列x(n)[cos ncos n]R

(n,N

128点的傅里叶变换,并求36 36

128n, n4k

fftx(nx(4n)和x1

40, n4k对应的傅里叶变换(N=128点)缘由。参考流程图:四、思考题FFT在什么条件下也可以用来分析周期信号序列的频谱?假设正弦信号sin(2f0k),f00.1Hz16点来做FFT五、试验报告要求简述试验原理及目的。给出所编制的试验主程序、试验信号序列的时域和频域图形并分析所得图形,说明参数转变时对时域和频域信号波形的影响。简要答复思考题。试验九IIR数字滤波器三种构造形式的软件实现一.试验目的把握IIR数字滤波器设计的方法;把握IIR数字滤波器直接型、级联型和并联型的根本特点并依据给定的传递函数形式正确选择是否承受直接型、级联型和并联型。生疏直接型、级联型和并联型软件实现的编程方法。二.试验原理一个IIR滤波器的系统函数给出为:Y(z)

Mbzi

bbz1b

zMH(z) i0 0 1 M ; a1X(z)

1Ni1

azii

1az1 a1

zN 0其中b和a是滤波器系数。不是一般性假定a=1。假设a 0,N就是这个IIR滤波器的阶。n n 0 N其差分方程表示是:y(n)M

bx(ni)i

ay(ni)ii0 i0有三种构造用于实现一个IIR滤波器。直接型:构造数字滤波器按给出的差分方程式直接与以实现。有两种型式:直接Ⅰ型和{bn}的向量b和含有系数{an}的向量a,MATLAB中其构造实现是用filter函数。级联型:将系统函数H(z)写成具有实系数的二阶节的乘积。马上分子分母多项式分解为它们各自的根,然后将一对复数共轭根或者任意两个实数根组合成二阶多项式。一般假定N为偶数,有:bbz1b zMH(z) 0 1 M1az1 1b

zNNb1 1b

z1 MzMbb 0 0 0 1az1 a1 N

zNK1B z1B z2b k,1 k,2 0

1Ak,1

z1Ak,2

z2式中K是等于N,B

,A

都是代表实数的二阶节系数。整个滤波器作为双二2 k,1

k,1 k,2阶节的级联实现。直接型滤波器系数{bn

和{an

},必需求得系数b,{B0k,i0

},{A}。k,iMATLAB中用函数dir2cas来完成。然后利用函数casfiltr实现级联型式。并联型:这种型式中,利用局局部式开放将系统函数H(z)写成二阶节之和:bbz1b zMH(z) 0 1 M1az1 a1 N

zNK B B z

N k,0 k,1

Czk

1Ak,1

z1Ak,2

z2

kk0其中K是等于

N,B

,B ,A

是代表实数的二阶节系数。MATLAB中用函数2 k,0

k,1 k,1 k,2dir2par将直接型系数{b和{a

},{B

},{A

}。转换为并联系数{B

},{A

}。然后利用n nparfiltr实现并联型式。三.试验内容

k,i

k,i

k,i

k,i依据程序参考流程图,分别编制以下给出的IIR数字滤波器直接型、级联型和并联型构造的单位脉冲响应,单位阶跃响应及频率特性的程序。利用所编的程序,对以下IIR数字滤波器,给出三种构造形式下的滤波器构造及信号流图,并画出此构造下单位脉冲响应和单位阶跃响应曲线。H(z)13z111z227z318z41612z12z24z3z4参考流程图:四、思考题?所给出的IIR数字滤波器是低通、高通还是带通?3dB截止频率大约是多少?是否是线性相位的?为何要将系统函数转换为三种不同的构造,三种构造的优缺点各是什么?五、试验报告要求简述试验目的及原理。给出数字滤波器三种构造形式的结果。对三种构造形式滤波器的优缺点进展分析比较。简要答复思考题。试验十FIR滤波器四种构造形式的实现一、试验目的把握FIR滤波器的各种实现形式。了解FIR滤波器的各种实现形式之间的转化。学会用MATLAB工具实现FIR滤波器二、试验原理FIR滤波器的构造特点是没有环路,它的单位脉冲响应的长度是有限的,设它的长度为N,它的系统函数为□H(z)b0

bz11

...b

N1bkk0

zn (1)FIR滤波器的构造稳定,且比IIR滤波器简洁实现。它包括:直接型,级联型,线性相位型和频率采样型。直接型FIR直接型的系统函数为H(z)b0

bz11

...b

N1bkk0

zn (2)FIR滤波器的直接型构造由行向量b表示,分母向量a1。MATLABfilter函数实现这个构造。级联型FIR滤波器就是全部二阶节的级联。系统函数为:H(z)b0

K

k,1

z1Bk,2

z2

(3)级联型FIR滤波器可以用MATLAB函数dir2cas从直接型转化而来。线性相位型对于一个具有在[0,M-1] 区间上的脉冲相应的因果FIR 滤波器来说,满足hn)hM1)

脉冲响应称为对称脉冲响应,满足h(n)h(M1n)的脉冲响应称为反对称脉冲响应。线性相位型的构造就是利用这些对称条件。在MATLAB中线性相位构造的实现是等效于直接型的。频率采样型FIR滤波器的系数为实数,利用H(k)和W

k的对称性,它的系统函数可以表示为N H(M) H(z)1zN

H(0)

2 L12|H(k)|H(z) (4) kM 1z1 1z1k

k1 当NL(M1)/2;当NLM/21。H(z)k

cos[H(k)]z1cos[H(k)2

]M 〔5〕12z1cos(N

z2依据(4),(5)两式,可以自己编写函数dir2fs实现从直接型转化为频率采样型。三、试验内容参看教材第五章有关内容,并阅读本试验原理。假设FIR滤波器的直接型构造为b=[13531],把它转化级联型构造。(提示:可以直接调用函数dir2cas)。编写MATLAB函数dir2fsFIR滤波器转化为频率采样型。设h=[1,3,5,-3,-1]/9。参考流程图四、思考题FIR滤波器的直接实现形式有什么缺点?FIR滤波器的级联形式在那些方面比直接形式有改进?为此它付出了什么代价?频率采样构造有什么优缺点?为了抑制它的缺点,可以承受什么改进方法?五、试验报告要求简述试验目的及原理。整理好经过运行并证明是正确的试验程序并加上注释。绘出相应的图形。简要答复思考题。试验十一 FIR滤波器的相位特性和幅度特性一、试验目的了解FIR滤波器具有线性相位的条件。了解四种类型FIR滤波器的幅频特性和相频特性及用途。学会用MATLAB工具分析FIR滤波器。二、试验原理与方法试验八中已经讲过脉冲相应的对称与反对称,即满足h(n)h(M1n为对称,满足h(n)h(M1nM四种类型的线性相位FIRH(ej)写成:Hr

H(ej)Hr(是振幅响应函数。

()ej();

,2

N12线性相位实系数FIR滤波器按其Mh(n)的奇偶对称性分为四种:1、Ⅰ类线性相位FIR滤波器:h(n)为对称,N奇数。可以证明: j(N1)(1)/2H(ej)e 2 a(n)cosnn0式中a(n)由h(n)求得为:a(0)h(N1 2 )Hr

a(n)2h(N1n),n1,2,3,,N3 2 2)(1)/2a(n)cosnn00,,2成偶对称。MATLAB中用函数Hr_Type1来计算振幅响应。2、Ⅱ类线性相位FIR滤波器:h(n)为对称,N偶数.可以证明: j(N1)N/2 1H(ej

2n1

b(n)cos[(n )]2式中b(n)2hNn),n1,2,...,M2 2且幅频响应应函数Hr

)N/2n1

b(n)cos[(n1)]2Hr

()0MATLAB中用函数Hr_Type2来计算振幅响应。3、Ⅲ类线性相位FIR滤波器:h(n)为反对称,M为奇数。可以证明:j(N1)(N1)/2H(ej)e

2

n1

c(n)sinn式中c(n)2h(

N1n),n1,2,,N12 2Hr

)(1)/2c(n)sinnn1Hr

(0)Hr

()0所以该幅值关于0,,2成奇对称,不适合作高通和低通滤波器,MATLAB中用函数Hr_Type3来计算振幅响应。4、Ⅳ类线性相位FIR滤波器:h(n)为反对称,N为偶数。可以证明:j(N1)N/2 1H(ej)e

2 n1

d(n)sin[(n )]2式中d(n)2hNnn1,2,3,N2 2Hr

)N/2n1

d(n)sin[(n1)]2□ Hr

0,不适合作低通。也是适合用来设计数字希尔伯特变换器和微分器来计算振幅响应。三、试验内容复习课本中的有关内容,并阅读本试验原理。设一个FIR滤波器的单位脉冲响应为h=[1,2,3,2,1],编写一个MATLAB函数验证它具有线性相位。可能用到的MATLAB函数有:freqz—求频率特性,real—求复数的实部,atan—求反正切。3. 当h=[1,2,3,-3-2,-1]时,重复试验内容2,并比较两者的差异。4. 当FIR滤波器的单位脉冲响应分别为h=[1,-2,3,5,3,-2,1],h=[1,-2,3,3,-2,1],h=[1,-2,3,5,-3,2,-1],h=[1,-2,3,-3,2,-1]时,指出它们各属于何种类型的滤波器,并编写MATLAB函数画出它们的幅频特性曲线和H(z)的零点位置。参考流程图线性相位幅频特性四、思考题①什么FIR滤波器必需具有对称性?分别有哪几对称性?②在四种类型的滤波器中,那种滤波器的应用最为广泛?为什么?③Ⅱ型滤波器,Ⅲ型滤波器,Ⅳ型滤波器各不能用于何种滤波器?五、试验报告要求简述试验目的及原理。整理好经过运行并证明是正确的试验程序并加上注释。绘出相应的图形。简要答复思考题。一、试验目的

试验十二窗函数法设计FIR数字滤波器生疏线性相位FIR数字滤波器特性。了解各种窗函数对滤波特性的影响。把握用窗函数法设计FIR数字滤波器的原理、方法及计算机编程。二、试验原理FIR截取抱负滤波器的单位脉冲响应hd

(n),得到有限长的单位脉冲响应h(n),实际上是用有限长的h(n)去靠近hd

(n),通过这种方式得到频率响应H(ej)。近似于抱负频率响应函数为Hd

(ej),c的LPF由下式给出:

e, Hd(ej)0, c

c假设所期望的滤波器的抱负频率响应函数为Hd

(ej),则其对应的单位脉冲响应为h(n)

1

H(e

)edc d 2c 1

djncjnc ejejndcsin(n)]n (cn

) 是截止频率,hc

(n)是关于对称的从而保证线性相位。由于hd

(n)是无限长的,所以这种滤波器是物理不行实现的。所以用窗函数w(n)将其截断,h(n)w(n)hd

w(n)是长度为N的窗函数。从而有h(n), 0nN1h(n)d0,

others此时的h(n)是有限长的,物理可实现。因此用h(n)作为实际滤波器的系数。最终所得滤波器的性能主要由所选窗函数w(n)的类型和它的长度M打算的。这种运算就称为“加窗”。以低通滤波器为例,说明用MATLAB实现窗函数法设计FIR滤波器的步骤:确定数字滤波器的性能要求:临界频率{k},滤波器单位脉冲响应长度N;依据性能要求,合理选择单位脉冲响应h(n)的奇偶对称性,从而确定抱负频率相应H(ej的幅频特性和相频特性;d求抱负单位脉冲响应hd

(n)(在实际计算中,可对Hd

(ejNN(NNN)点等距离采样,并对其求IDFT得hNN

(n),用hNN

(n)代替hd

(n);选择适当的窗函数w(n),依据h(n)w(n)hd

(nFIR滤波器单位脉冲响应;H(ej),分析其幅频特性,假设不满足要求,可适当转变窗函数形式或长度N,重复上述设计过程已得到满足的结果。窗函数的傅式变换W(ej)H(ej)过渡带宽,W(ej)的旁瓣大小和多少打算H(ej在通带和阻带范围内波动幅度,常用的几种窗函数有:w(n)RN

(n);Hanningw(n11cos(

(n)2N1NHammingw(n0.540.46cos(2n)R

(n)N1NBlackmenw(n0.420.5cos(2n0.08cos(4n)R

(n)N1 N1NI[ 1I[ 1(10N12n)2]I[]为零阶贝塞尔函数。0三、试验内容

I[]0

R(n)N复习用窗函数法设计FIR用矩形窗和汉明窗设计一线性相位低通数字滤波器截止频率 1rad窗口长度N=25,c49。要求在两种窗口长度状况下,分别求出h(n)及其频率响应函数,并画出幅频特性和相频特性曲线,观看3dB带宽和20dB带宽。争论窗口长度N对滤波特性的影响。设计低通FIRH(ej)d理中已给出h(n)

sin[c

(n)]d (n)提示:该抱负滤波器的脉冲响应hd

以为中心对称。依据线性相位条件实际滤波器的脉冲响应长度为N=25,分别使用矩形函数和哈明函数对其进展截断。用矩形窗函数得□ h(n)0,

(n)), 0nN1其它使用哈明窗函数得

参考流程图:

h(n)c0,

(n

))(0.540.46cos(N

)), 0nN11其它分别用三角、汉明窗、布莱克曼窗设计FIR低通滤波器,设N=13,窗函数对滤波特性的影响。参考流程图:

0.2,比较三种c依据以下指标设计一个FIRp

0.3,阻带截止频率s

,通带最大衰减为Ap

0.25dB,阻带最小衰减为As

50dB。选择一个适宜的窗函数实现FIR(函数的过渡带宽计算公式来确定窗的长度)程序流程跟3的根本一样,只是要通过分析设计结果选择一个最好的窗函数用来做最终的设计。依据以下技术指标设计一数字带通滤波器:下阻带:sl下通带:pl上通带:ph上阻带:sh

0.2, AsAp0.6, ApAs

20dB20dB单位脉冲响应频谱及所设计的滤波器的幅度响应。参考流程

温馨提示

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

评论

0/150

提交评论