当前位置:文档之家› 数字信号处理实验参考书

数字信号处理实验参考书

数字信号处理实验参考书
数字信号处理实验参考书

目录

目录 (1)

实验一信号、系统及系统响应 (2)

实验二应用FFT对信号进行频谱分析 (6)

实验三用双线性变换法设计IIR滤波器 (11)

实验四用窗函数设计FIR滤波器 (16)

附录A C语言实现数字信号处理算法 (21)

附录B MATLAB的信号表示和处理 (32)

附录C MATLAB 下的数字信号处理实现示例 (56)

附录D MA TLAB 下的数字滤波器设计示例 (64)

实验一 信号、系统及系统响应

一.实验目的

1. 1. 熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对采样定理的理解。 2. 2. 熟悉离散信号何系统的时域特性。

3. 3. 熟悉线性卷积的计算编程方法:利用卷积的方法,观察、分析系统响应的时域特性。

4. 4. 掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号、系统

及系统响应进行频域分析。

二.实验原理

(一)连续时间信号的采样

采样是从连续信号到离散时间信号的过渡桥梁,对采样过程的研究不仅可以了解采样前后信号时域何频域特性发生的变化以及信号内容不丢失的条件,而且有助于加深对拉氏变换、傅氏变换、Z 变换和序列傅氏变换之间关系的理解。

对一个连续时间信号进行理想采样的过程可以表示为信号与一个周期冲激脉冲的乘积,即:

)()()(t M t x t x a a =

(1-1)

其中,)(t x a 是连续信号)(t x a 的理想采样,)(t M 是周期冲激脉冲

∑+∞

-∞

=-=

n nT t t M )

()(δ(1-2)

此时,采样信号)(t x a

的拉氏变换可以表示为:

∑?

+∞

-∞

=+∞

-Ω-=m s a a jm s X T s X )

(1

)( ,其中

)(s X a

是信号)(t x a 的拉氏变换

作为拉氏变换的一种特例,信号理想采样的傅立叶变换为:

∑+∞

-∞

=Ω-Ω=

Ωm s a

a jm j X

T

j X )

(1)( (1-3)

由(1-3)式可知,信号理想采样后的频谱式原来信号频谱的周期延拓,其延拓周期等于采样频率。根据香农定理,如果原信号是带限信号,且采样频率高于原信号最高频率的2倍,则采样后的离散序列不会发生频谱混叠现象。

在计算机处理时,不采用时计算信号的频谱,而是利用序列的傅立叶变换计算信号的频谱,定义序列:

)()()()()(t M t x t x nT x n x a a a ===

(1-4)

根据Z 变换的定义,可以得到序列的Z 变换为:

n

n z

n x Z X -+∞

-∞

=∑=

)()((1-5)

以ω

j e

代替上式中的Z ,就可以得到序列的傅立叶变换:

∑+∞

-∞

=-=

n jn j e

n x e

X ω

ω

)()((1-6)

式(1-3)和式(1-6)具有如下关系:

T j a e

X j X Ω==Ωωω

)()(

(1-7)

由式可知,在分析一个连续时间信号的频谱时,可以通过取样将有关的计算转化为序列傅立叶变换的计算。 (二)有限长序列的分析

一般来说,在计算机上不可能、也不必要处理连续的曲线,通常,我们的做饭时只要观察、分析在某些频率点上的值。对于长度为N 的有限长序列:

??

?-≤≤=n

N n n f n x 其它0

1

0),

()( (1-8)

一般只需要在π20-之间均匀的取M 个频率点,计算这些点上的序列傅立叶变换:

∑-=-=

1

)()(N n jn j k

k

e

n x e X ωω (1-9)

其中,M k k /2πω=,1,......,1,0-=M k 。)(k

j e X ω是一个复函数,它的模就是幅频

特性曲线。

(三)信号卷积

一个线性时不变离散系统的响应可以用它的单位冲激响应和输入信号的卷积来表示:

∑+∞

-∞

=-=

*=m m n h m x n h n x n y )

()()()()( (1-6)

根据傅立叶变换和 Z 变换的性质,应该有:

)()()(Z H Z X Z Y = (1-7) )()()(ω

ω

ω

j j j e

H e

X e

Y =(1-8)

上两式告诉我们:可以通过对两个序列的移位、相乘和累加计算信号响应;卷积运算可以在频域通过乘积实现。

三.实验内容及步骤

(一) 编制实验用主程序及相应子程序 1.信号产生子程序,包括:

(1)理想采样信号序列:对信号)()sin()(0t u t Ae t x t

a Ω=-α进行理想采样,可以得到一个

理想的采样信号序列500),sin()(0≤≤Ω=-n nT Ae

t x t

a α,其中A 为幅度因子,α是衰减

因子,0Ω是频率,T 为采样周期。根据实验内容的需要,这些参量请设计为在程序运行过

程中输入。

(2)单位脉冲序列

??

?==n n n n x b 其它0

0),

()(δ

(3)矩形序列

??

?-≤≤==n

N n n R n x N c 其它0

1

0,

1)()(, 其中取:N=10

2.系统单位冲激响应序列产生子程序,本实验中用到两种FIR 系统: (1))()(10n R n h a =

(2))3()2(5.2)1(5.2)()(-+-+-+=n n n n n h b δδδδ

3.有限长序列线性卷积子程序,用于计算两个给定长度(分别为M 和N )的序列的卷积,输出序列长度为L=M+N-1。 (二)上机实验内容

在编制以上各部分程序以后,编制主程序调用各个功能模块实现对信号、系统和系统响应的时域和频域分析,完成以下实验内容。

1.分析理想采样信号序列的特性 产生理想采样信号序列,使:

(1)首先选用采样频率为1000Hz ,T=1/1000,观察所得理想采样信号的幅频特性,在折叠频率以内和给定的理想幅频特性无明显差异,并作记录。

(2)改变采样频率为300Hz ,T=1/300,观察所得理想采样信号的幅频特性曲线的变化,并作记录。

(3)进一步减小采样频率为200Hz ,T=1/200,观察频谱混叠现象是否明显存在,说明原因,并记录此时的幅频特性曲线。

2.离散信号、系统和系统响应的分析

(1)观察信号)(n x b 和系统)(n h b 的时域和频域特性;利用线性卷积求信号通过系统以后的响应。比较系统响应和系统)(n h b 的时域和幅频特性。注意它们之间有无差异,绘出图形。

(2)观察信号)(n x c 和系统)(n h a 的时域和幅频特性,利用线性卷积求系统响应。判断响应序列图形及序列非零值长度是否与理论结果一致,说出一种定性判断响应序列图形正确与否的方法(提示:=)(n x c )(n h a )(10n R =)。利用序列的傅立叶变换数值计算子程序求出)(ω

j e

Y ,观察响应序列的幅频特性。定性判断结果是否正确。改变信号

)(n x c 的矩形宽度,使N=5,重复以上动作,观察变化,记录改变参数前后的差异。

(3)将(2)中的信号换为)(n x a ,其中1=A ,4.0=α,0734.20=Ω,1=T ,重复(2)中的实验各步;改变参数1.0=α再重复(2)中的实验各步;改变参数2516.10=Ω重复(2)中的实验各步。观察参数的改变对信号与系统响应的时域和幅频特性的影响,绘制相应的图形。

3.卷积定律的验证。利用式(1-8)将)(n x a 和系统)(n h a 的傅氏变换相乘,直接求得

)(ω

j e

Y ,将得到的幅频特性曲线和实验2-(3)中得到的曲线进行比较,观察二者有

无差异,验证卷积定律。 (三)MA TLAB 上机内容

1.阅读本实验指导书中有关MA TLAB 进行数字信号处理部分,熟悉MA TLAB 下信号处理的过程和方法。

2.在MA TLAB 下重复(二)上机内容的所有要求,将MA TLAB 的输出结果同自己程序的输出结果进行比较。

3.改变信号)(t x a 中的衰减因子α,先定性估计频谱可能发生的变化,然后观察其频谱的变化,记录结结果,变化是否与你所想的一致?着这说明了什么?

4.一个LTI 系统的冲激响应为)()9.0()(n u n h n

=,输入序列为)(n x ,求系统响应

)(ω

j e

H 和输出信号)(n y 及其频谱)(ω

j e

Y ;如果)()(n x n h c =,结果又如何呢?

5.编写一个程序,将)(n x c 分解为奇偶序列,绘制奇偶序列时域图形并求出它们频谱

)(ω

j e e

X 和)(ω

j o e

X ,同)(n x 的频谱)(ω

j c e

X 进行比较,可以得出什么结论?

四.思考题

1.回答上机内容2-(2)中的问题。

2.在分析理想采样信号序列的特性实验中,利用不同采样频率所得到的采样信号序列的傅氏变化频谱,数字频率度量是否相同?它们所对应的模拟频率是否都相同? 3.在卷积定律的验证实验中,如果选用不同的M 值,例如选M=50和M=30,分别作序列的傅氏变换,并求得,1,......,1,0),()()(-==M k e

H e

X e Y k

k

k

j b j a j ωωω,所得的结

果之间有何差异,为什么?

五.实验报告要求

1.在实验报告中简述实验目的和实验原理要点。

2.总结在上机实验内容中要求比较时域、幅频曲线差异部分内容的结果,定性分析它

们正确与否,并简要说明这些结果的含义。

3.总结实验中的主要结论。

4.回答思考题。

5.总结一下你在用MA TLAB进行数字信号处理实验项目的时候常用的函数及其功能。6.在用MA TLAB 处理时和你自己的程序实验时结果是否一致?对不一致的情况进行一个简要的分析。

实验二 应用FFT 对信号进行频谱分析

一.实验目的

1.在理论学习的基础上,通过本次实验,加深对FFT 的理解,熟悉FFT 算法及其程序的编写。

2.熟悉应用FFT 对典型信号进行频谱分析的方法。

3.了解应用FFT 进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT 。

二、实验原理与方法

一个连续信号的频谱可以用它的傅立叶变换表示为

?

+∞

-Ω-=

Ωdt

e

t x j X t

j a a )()( (2-1)

如果对该信号进行理想采样,可以得到采样序列

)()(nT x n x a = (2-2)

同样可以对该序列进行Z 变换,其中T 为采样周期

∑+∞

-∞

=-=

n n

z

n x Z X )()( (2-3)

当ω

j e

z =的时候,我们就得到了序列的傅立叶变换

∑+∞

-∞

=-=

n n

j j e

n x e X ωω

)()( (2-4)

其中ω为数字角频率,和模拟域频率的关系为

s f T /Ω=Ω=ω (2-5)

式中的s f 是采样频率。上式说明数字角频率是模拟频率对采样速率s f 的归一化。同模拟域的情况相似,数字角频率代表了序列值变化的速率,而序列的傅立叶变换称为序列的频谱。序列的傅立叶变换和对应的采样信号频谱具有下式的对应关系:

+∞

--=

)

2(1)(T

m

j

X T

e

X a j πωω

(2-6)

即序列的频谱是采样信号频谱的周期延拓。从式(2-6)可以看出,只要分析采样序列的频谱,就可以得到相应的连续信号的频谱。

在各种信号序列中,有限长序列在数字信号处理中占有很重要的地位。无限长的序列也往往可以用有限长序列来逼近。对于有限长的序列我们可以使用离散傅立叶变换(DFT ),

这一变换可以很好的反映序列的频域特性,并且容易利用快速算法在计算机上实现。当序列的长度为N 时,定义DFT 为:

∑-==

1

)()(N n nk

N

W

n x k X (2-7)

其中N

j

N e

W π2-=,它的反变换定义为:

-=-=

1

0)(1)(N k nk

N

W k X N

n x (2-8)

令k N

W

z -=,则有:

∑-=-==

1

)()

(N n nk N

k N

W

z W

n x z X (2-9)

可以得到,k N

W

z z X k X -==)

()(,k N

W

z -=是Z 平面单位圆上幅角为k

N πω2=

的点,

就是将单位圆进行N 等分以后第K 个点。所以,X(K)是Z 变换在单位圆上的等距采样,或者说是序列傅立叶变换的等距采样。时域采样在满足Nyquist 定理时,就不会发生频谱混叠。

DFT 是对序列傅立叶变换的等距采样,因此可以用于序列的频谱分析。如同理论课教材所讨论的,在运用DFT 进行频谱分析的时候可能有三种误差,即:

(1)混叠现象

从中可以看出,序列的频谱时采样信号频谱的周期延拓,周期是T π

2,因此当采样速率不满足定理Nyquist ,经过采样就会发生频谱混叠。这导致采样后的信号序列频谱不能真实的反映原信号的频谱。所以,在利用DFT 分析连续信号频谱的时候,必须注意这一问题。避免混叠现象的唯一方法是保证采样的速率足够高,使频谱交叠的现象不出现。这告诉我们,在确定信号的采样频率之前,需要对频谱的性质有所了解。在一般的情况下,为了保证高于折叠频率的分量不会出现,在采样之前,先用低通模拟滤波器对信号进行滤波。

(2)泄漏现象

实际中的信号序列往往很长,甚至是无限长。为了方便,我们往往用截短的序列来近似它们。这样可以使用较短的DFT 来对信号进行频谱分析。这种截短等价于给原信号序列乘以一个矩形窗函数。值得一提的是,泄漏是不能和混叠完全分离开的,因为泄漏导致频谱的扩展,从而造成混叠。为了减少泄漏的影响,可以选择适当的窗函数使频谱的扩散减到最小。 (3)栅栏效应

因为DFT 是对单位圆上Z 变换的均匀采样,所以它不可能将频谱视为一个连续函数。这样就产生了栅栏效应,从某种角度看, 用DFT 来观看频谱就好像通过一个栅栏来观看一幅景象,只能在离散点上看到真是的频谱。这样的话就会有一些频谱的峰点或谷

点被“栅栏”挡住,不能被我们观察到。减小栅栏效应的一个方法是在源序列的末端补一些零值,从而变动DFT 的点数。这种方法的实质是改变了真是频谱采样的点数和位置,相当于搬动了“栅栏”的位置,从而使得原来被挡住的一些频谱的峰点或谷点显露出来。注意,这时候每根谱线所对应的频和原来的已经不相同了。

从上面的分析过程可以看出,DFT 可以用于信号的频谱分析,但必须注意可能产生的误差,在应用过程中要尽可能减小和消除这些误差的影响。

FFT 并不是DFT 不相同的另一种变换,而是为了减少DFT 运算次数的一种快速算法。它是对变换式进行一次次的分解,使其成为若干小店数DFT 的组合,从而减小运算量。常用的FFT 是以2为基数的,其长度为M

N 2

=。它的运算效率高,程序比较简单,使用也

十分的方便。当需要进行变换的序列的长度不是2的整数次方的时候,为了使用以2为基的FFT ,可以用末尾补零的方法,使其长度延长至2的整数次方。IFFT 一般也可以通过FFT 程序来完成,比较式和,只要对取共轭,进行FFT 运算,然后再去共轭,并乘以因子,就可以完成IFFT 。

三.实验内容及步骤

(一) 编制实验用主程序及相应子程序

1.在实验之前,认真复习DFT 和FFT 有关的知识,阅读本实验原理和实验附录部分中和本实验有关的子程序,掌握子程序的原理并学习调用方法。

2.编制信号产生子程序及本实验的频谱分析主程序。实验中需要用到的基本信号包括:

(1)高斯序列:

???

??≤≤=--else

n e

n x q p n a 0150)(2

)

( (2)衰减正旋序列:

??

?≤≤=-else

n fn e n x n b 01502sin )(πα

(3)三角波序列

???

??≤≤-≤≤+=else

n n

n n n x c 0748301

)(

(4)反三角序列

???

??≤≤-≤≤-=else

n n n n n x d 0743

304)(

(二)上机实验内容

1.观察高斯序列的时域和频域特性

(1)固定信号)(n x a 中的参数8=p ,改变q 的值,使q 分别等于2,4,8。观察它们的时域和幅频特性,了解q 取不同值的时候,对信号时域特性和幅频特性的影响。 (2)固定8=q ,改变p ,使p 分别等于8,13,14,观察参数p 变化对信号序列时域及幅频特性的影响。注意p 等于多少时,会发生明显的泄漏现象,混叠现象是否也随之出现?记录实验中观察到的现象,绘制相应的时域序列和幅频特性曲线。 2.观察衰减正旋序列的时域和幅频特性

(1)令1.0=α并且0625.0=f ,检查谱峰出现的位置是否正确,注意频谱的形状,绘制幅频特性曲线。

(2)改变4375.0=f ,再变化5625.0=f ,观察这两种情况下,频谱的形状和谱峰出现的位置,有无混叠和泄漏现象出现?说明出现的原因。 3.观测三角波序列和反三角波序列的时域和幅频特性

(1)用8点FFT 分析信号)(n x c 和)(n x d 的幅频特性,观察两者的序列形状和频谱曲线有什么异同?绘制两者的序列和幅频特性曲线。

(2)在)(n x c 和)(n x d 的末尾补零,用16点FFT 分析两个信号的幅频特性,观察幅频特性发生了什么变化?两个信号之间的FFT 频谱还有没呀相同之处?这些变化说明了什么?

(三)MA TLAB 上机内容

1.在MA TLAB 下重复(二)中上机实验内容的所以要求,将MA TLAB 的输出结果同自己程序的输出结果进行比较。

2.将)(n x b 信号的长度N 设为63,用MA TLAB 中randn (1,N )函数产生一个噪声信号w(n),计算将这个噪声信号叠加到)(n x b 上以后新信号)()()(n w n x n y b +=的频谱,观察发生的变化并记录。

3.在步骤2的基础上,改变参数α和f ,观察在出现混叠现象和泄漏现象的时候有噪声的)(n y 信号的频谱有什么变化,是否明显?

四.思考题

1.实验中的信号序列)(n x c 和)(n x d ,在单位圆上的Z 变化频谱

)

j c e X 和

)

j d e

X 和会相同吗?如果不同,你能说出哪一个低频分量更多一些吗?为什么?

2.对一个有限长序列进行离散傅立叶变换(DFT ),等价于将该序列周期延拓后进行傅立叶级数展开(DFS)。因为DFS 也只是取其中一个周期来运算,所以FFT 在一定条件下也可以用以分析周期信号序列。如果实正弦信号)2sin(fn π,1.0=f ,用16点的FFT 来作DFS 运算,得到的频谱是信号本身的真是谱吗?

五.实验报告要求

1.在实验报告中简述实验目的和实验原理要点。

2.在实验报告中附上在实验过程中记录的各个信号序列的时域和幅频特性曲线,分析所得到的结果图形,说明各个信号的参数变化对其时域和幅频特性的影响。 3.总结实验中的结论。 4.回答思考题。

实验三 用双线性变换法设计IIR 滤波器

一.实验目的

1.了解工程上两种最常用的变换方法:脉冲响应不变法和双线性变换法。 2.掌握双线性变换法设计IIR 滤波器的原理及具体设计方法,熟悉用双线性设计法设计低通、带通和高通IIR 数字滤波器的计算机程序。

3.观察用双线性变换法设计的滤波器的频域特性,并与脉冲响应不变法相比较,了解双线性变换法的特点。

4.熟悉用双线性变换法设计数字Butterworth 和Chebyshev 滤波器的全过程。 5.了解多项式乘积和多项式乘方运算的计算机编程方法。

二.实验原理与方法

从模拟滤波器设计IIR 数字滤波器具有四种方法:微分-差分变换法、脉冲响应不变法、双线性变换法、z 平面变换法。工程上常用的是其中的两种:脉冲响应不变法、双线性变换法。脉冲响应不变法需要经历如下基本步骤:由已知系统传输函数H(S)计算系统冲激响应h(t);对h(t)等间隔采样得到h(n)=h(n T);由h(n)获得数字滤波器的系统响应H(Z)。这种方法非常直观,其算法宗旨是保证所设计的IIR 滤波器的脉冲响应和模拟滤波器的脉冲响应在采样点上完全一致。而双线性变换法的设计准则是使数字滤波器的频率响应与参考模拟滤波器的频率响应相似。

脉冲响应不变法一个重要的特点是频率坐标的变换是线性的(T Ω=ω),其确定是有频谱的周期延拓效应,存在频谱混叠的现象。为了克服脉冲响应不变法可能产生的频谱混叠,提出了双线性变换法,它依靠双线性变换式:

1

111--+-=

z

z s ,

s s

z -+=

11, 其中 Ω+=j s σ,ω

j re

z =

建立其S 平面和Z 平面的单值映射关系,数字域频率和模拟域频率的关系是:

)2/(ωtg =Ω, )(2Ω=arctg ω (3-1)

由上面的关系式可知,当∞→Ω时,ω终止在折叠频率πω=处,整个Ωj 轴单值的对应于单位圆的一周。因此双线性变换法不同于脉冲响应不变法,不存在频谱混叠的问题。从式(3-1)还可以看出,两者的频率不是线性关系。这种非线性关系使得通带截至频率、过渡带的边缘频率的相对位置都发生了非线性畸变。这种频率的畸变可以通过预畸变来校正。用双线性变换法设计数字滤波器时,一般总是先将数字滤波器的个临界频率经过式(3-1)的频率预畸变,求得相应参考模拟滤波器的个临界频率,然后设计参考模拟滤波器的传递函数,最后通过双线性变换式求得数字滤波器的传递函数。这样通过双线性变换,正好将这些频率点映射到我们所需要的位置上。参考模拟滤波器的设计,可以按照一般模拟滤波

器设计的方法,利用已经成熟的一整套计算公式和大量的归一化设计表格和曲线。这些公式、表格主要是用于归一化低通原型的。通过原型变换,可以完成实际的低通、带通和高通滤波器的设计。在用双线性变换法设计滤波器的过程中,我们也可以通过原型变换,直接求得归一化参考模拟滤波器原型参数,从而使得设计更加简化。理论课教材给出了IIR 低通、带通和高通滤波器设计双线性原型变换公式的总结,请参阅。

在本实验中,我们只设计两种滤波器(Butterworth 和Chebyshev )的设计,相应的这两种参考模拟原型滤波器的设计公式见理论课教材。

综上所述,以低通数字滤波器设计为例,可以将双线性变换法设计数字滤波器的步骤归纳如下:

1.确定数字滤波器的性能指标。这些指标包括:通带、阻带临界频率s p f f ,;通带内的最大衰减p α;阻带内的最小衰减s α;采样周期T 。 2.确定相应的数字频率,T f p p πω2=,T f s s πω2=。

3.计算经过频率预畸变的相应参考模拟低通原型的频率,)2/(p p tg ω=Ω,

)2/(s s tg ω=Ω

4.计算低通原型阶数N ;计算3dB 归一化频率c Ω,从而求得低通原型的传递函数

)(s H a 。

5.用表(3-1)中所列变换公式1

111--+-=

z

z s ,代入)(s H a ,求得数字滤波器的传世

函数)(z H 。

6.分析滤波器频域特性,检查其指标是否满足要求。

三.实验内容及步骤

(一)编制实验用主程序和相应子程序

1.在实验前复习数字信号处理理论课中有关滤波器设计的知识,认真阅读本实验的原理部分,读懂本指导书附录A4“滤波器有关算法”中列举的有关算法。有理分式代换子程序BSF 、多项式乘方展开子程序PNPE 和多项式乘积展开子程序YPMP ,掌握模拟滤波器传递函数产生子程序BCG 、有理分式代换子程序BSF 的调用方法。

2.编制一个用双线性变换法设计IIR 数字和滤波器的通用程序。采样周期、通带和阻带临界频率以及相应的衰减等参数在程序运行时输入;根据这些输入参数,计算阶数N 、传递函数)(s H a ;输出)(s H a 分子分母系数;绘制)(ω

j e H 幅频特性曲线,绘制点数为50点,

(π~0)

3.实验用子程序介绍。附录A4部分中编排的子程序较多,下面简要介绍一下,大家首先要弄清程序的功能、作用,函数的调用参数及意义,再具体了解子程序的编写。

(1)模拟滤波器传递函数产生子程序BCG

该程序用于产生表中两种逼近方法的传递函数,根据实际需要,产生的传递函数有两种逼近形式的输出:分母以根的形式;分母以多项式的形式。具体见下式: N

N N

k k

a s

b s b b s

s a s H ++=

-=

∑=101

1

)

()(

采样Butterworth 逼近,还是Chebyshev 逼近在子程序运行过程中,由同学们自己选择。调用该子程序的时候,需要输入滤波器的临界频率p Ω、s Ω和相应衰减p α、s α。根据这些条件,子程序可以计算阶数N ,产生传递函数)(s H a 。调用格式为:

Bcg(AP,AS,WP,WS,&N,*H,*B,&C);

其中参数的具体说明如下:

AP,AS 是浮点数,对应通带衰减p α、阻带衰减s α。

WP,WS 是浮点数,对应通带临界频率p Ω、阻带临界频率s Ω。 N 是浮点数,存放模拟滤波器的阶数

H 是浮点型一维数组,提供分母为多项式形式的传递函数的分母多项式的系数,

H(0)=b 0,H(1)=b 1,…,H(N)=b N

B 是浮点型一维复数数组,存放H(S)的分母多项式的根,

B(0)=s 1,B(1)=s 2,…,B(N-1)=s N

C 是浮点型数,存放H(S)的分子常数a 0,和用于提供分母为根形式的传递函数。

(2)有理分式代换子程序BSF

该子程序用于双线性变换中的有理分式代换

)()()()(21z F z F s s H z H a =

= (3-3)

这里只考虑传递函数)(s H a 分子为常数1的情况,这也是通常低通原型的形式。子程序的调用格式为:Bsf(*C,NO,*F1,*F2,NF,*A,*B,&Nob) 其中具体参数含义如下:

C :浮点型一维数组,存放H(S)分母多项式系数 NO:整型数,存放H(S)分母多项式阶次

F1:浮点型一维数组,存放变换式的分子多项式系数,对应式(3-3)中F 1(z) F2:浮点型一维数组,存放变换式的分母多项式系数,对应式(3-3)中F 2(z)

NF:整型数,存放变换式s=F1(z)/ F 2(z)的阶次

A:浮点型一维数组,存放变换结果H(Z)的分子多项式系数 B:浮点型一维数组,存放变换结果H(Z)的分母多项式系数 Nob:整型数,存放H(Z)的阶次

(3)多项式乘方展开子程序PNPE 用于多项式的乘方展开,见下式所示:

[]

mn

mn n

m m x

b x b b x

a x a a

++=++1010

调用格式为:Pnpe(*A,M,N,*B,&MNB)

具体参数说明:

A:浮点型一维数组,存放多项式的系数数组 M: 整型数,存放多项式的阶次 N: 整型数,存放乘方次数

B: 浮点型一维数组,输出参数,存放展开结果 MNB: 整型数,输出展开以后多项式的阶次

(4)多项式乘积展开子程序YPMP

用于两个多项式的乘积展开,见下式所示:

))(()()()(1010n

n m

m x b x b b x a x a a x b x a x c ++++==

n

m n m

x

c x c c x c ++++= 10)(

调用格式为:Ypmp(*A,M,*B,N,*C,&MN) 具体参数说明:

A:浮点型一维数组,存放第一个多项式)(x a 的系数 M:整型数,存放第一个多项式的阶次m

B:浮点型一维数组,存放第二个多项式)(x b 的系数 N:整型数,存放第二个多项式的阶次n

C:浮点型一维数组,存放结果多项式的)(x c 系数 MN:整型数,存放结果多项式的阶次

(二)上机实验内容

1.采样频率为1Hz ,设计一个Chebyshev 高通数字滤波器,其中通带临界频率Hz f p 3.0=,通带内衰减小于0.8dB ,阻带临界频率Hz f S 2.0=,阻带内衰减大于20dB 。求这个数字滤波器的传递函数H(Z),输出它的幅频特性曲线,观察其通带衰减和阻带衰减是否满足要求。

2.采样频率为1Hz ,设计一个低通数字滤波器,其中通带临界频率Hz f p 2.0=,通带内衰减小于1dB ,阻带临界频率Hz f S 3.0=,阻带内衰减大于25dB 。求这个数字滤波器的传递函数H(Z),输出它的幅频特性曲线,观察其通带衰减和阻带衰减是否满足要求。 3.设计一个Butterworth 带通数字滤波器,其上、下边带1dB 处的通带临界频率分别为20kHz 和30kHz ,当频率低于15kHz 时,衰减要大于40dB ,采样周期为10微妙,求这个数字滤波器的传递函数,输出它的幅频特性曲线,观察其通带衰减和阻带衰减是否满足要求。 (三)MA TLAB 上机内容

1.在MA TLAB 下重复(二)上机实验内容的所有要求,将MA TLAB 的输出结果同自己程序的输出结果进行比较。

2.在(二)上机实验内容部分只要求用双线性变换法实现IIR 滤波器,在MA TLAB 下将已经实现的滤波器用冲激响应不变法再实现一遍,并将得到的结果进行比较。

四.思考题

1.双线性变换法和冲激响应不变法相比较,有哪些优点和缺点?为什么?

2.双线性变换是一种非线性变换,在实验中你观测到了这种非线性关系吗?应该怎样从哪种数字滤波器的幅频特性曲线中取观察这种非线性关系?

3.在用MA TLAB 实现冲激响应不变法设计滤波器的时候,你有没有观察到频谱混叠的现象?请解释。

五.实验报告要求

1.在实验报告中简述实验目的和实验原理要点。

2.记录在上机内容中所设计的滤波器的传递函数H(z)及对应的幅频特性曲线定性分析它们的性能,判断设计是否满足要求。 3.总结实验中的主要结论。 4.回答思考题。

实验四 用窗函数设计FIR 滤波器

一.实验目的

1.熟悉FIR 滤波器的设计基本方法

2.掌握用窗函数设计FIR 数字滤波器的原理与方法,熟悉相应的计算机高级语言编程。 3.熟悉线性相位FIR 滤波器的幅频特性和相位特性。 4.了解各种不同窗函数对滤波器性能的影响。

二.实验原理与方法

(一)FIR 滤波器的设计

在前面的实验中,我们介绍了IIR 滤波器的设计方法并实践了其中的双线性变换法,IIR 具有许多诱人的特性;但如此同时,也具有一些缺点。例如:若想利用快速傅立叶变换技术进行快速卷积实现滤波器,则要求单位脉冲响应是有限长的。此外,IIR 滤波器的优异幅度响应,一般是以相位的非线性为代价的,非线性相位会引起频率色散。FIR 滤波器具有严格的相位特性,这对于语音信号处理和数据传输是很重要的。目前FIR 滤波器的设计方法主要有三种:窗函数法、频率取样法和切比雪夫等波纹逼近的最优化设计方法。常用的是窗函数法和切比雪夫等波纹逼近的最优化设计方法。本实验中的窗函数法比较简单,可应用现成的窗函数公式,在技术指标要求不高的时候是比较灵活方便的。它是从时域出发,用一个窗函数截取理想的)(n h d 得到)(n h ,以有限长序列)(n h 近似理想的)(n h d ;如果从频域出发,用理想的)(ω

j d e

H 在单位圆上等角度取样得到)(k H ,根据)(k H 得到)(z H 将逼近理

想的)(z H d ,这就是频率取样法。 (二)窗函数设计法

同其它的数字滤波器的设计方法一样,用窗函数设计滤波器也是首先要对滤波器提出性能指标。一般是给定一个理想的频率响应)(ω

j d e

H ,使所设计的FIR 滤波器的频率响应

)(ω

j e

H 去逼近所要求的理想的滤波器的响应)(ω

j d e H 。窗函数法设计的任务在于寻找一个

可实现(有限长单位脉冲响应)的传递函数

n

j N n j e

n h e

H ωω

--=∑=

1

)()(

去逼近)(ω

j d e

H 。我们知道,一个理想的频率响应)(ω

j d e

H 的傅立叶反变换

ω

π

ωπ

ω

d e

e

H n h n

j j d d ?

=

20

)(21)(

所得到的理想单位脉冲响应)(n h d 往往是一个无限长序列。对)(n h d 经过适当的加权、

截短处理才能得到一个所需要的有限长脉冲响应序列。对应不同的加权、截短,就有不同的窗函数。所要寻找的滤波器脉冲响应就等于理想脉冲响应和窗函数的乘积,即

)()()(n w n h n h d =

由此可见,窗函数的形状就决定了滤波器的性质。例如:窗函数的主瓣宽度决定了滤波器的过渡带宽;窗函数的旁瓣大小决定了滤波器的阻带衰减。以下是几种常见的窗函数: 1.矩形窗

)()(n R n w N =

2.Hannning 窗

)

()12cos(15.0)(n R N n n w N ??????

--=π

3.Hamming 窗

)

()12cos(46.054.0)(n R N n n w N ??????

--=π

4.Blackman 窗

)

()14cos(08.0)12cos(5.042.0)(n R N n N n n w N ??????

-+--=ππ

5.Kaiser 窗

[])

()

1))1/(2(1()(02

0ββI N n I n w ---=

其中)(0βI 是零阶贝塞尔函数,可以通过改变参数)(β,改变其主瓣宽度和旁瓣大小。 在实际设计过程中,上述几种窗函数可以根据对滤波器过渡带宽带和阻带衰减的要求,适当选取窗函数的类型和长度N ,以得到比较满意的设计效果。

如何根据滤波器长度N 的奇偶性,选择)(n h 的奇偶对称性则是另外一个需要考虑的问题。线性相位实系数FIR 滤波器按其N 值奇偶和)(n h 的奇偶对称性,可以分为四种,它们具有不同的幅频和相位特性: 1.)(n h 为偶对称,N 为奇数

2

12

/)1(1

cos )2

1(

2)21

()(---=??

???

?+-+

-=∑N j N n j e

n n N h N h e

H ω

ω

ω

它的幅度是关于ππω2,,0=点成偶对称。

2.)(n h 为偶对称,N 为偶数

2

12/)1(1

)21(cos )12(2)(---=??????-+-=∑N j N n j e

n n N h e

H ωω

ω

它的幅度是关于πω=点成奇对称,πω=处有零点,所以它不适合用于高通滤波器。 3.)(n h 为奇对称,N 为奇数

)2

21(2/)1(1sin )21(2)(π

ωω

ω+---=??

????+-=∑N j N n j e

n n N h e H

它的幅度是关于点ππω2,,0=成奇对称,在ππω2,,0=处都有零点,所以它不适合用于低通和高通滤波器。

4.)(n h 为奇对称,N 为偶数

)2

21(2/)1(1

)21(sin )12(2)(π

ωω

ω+---=??????-+-=∑N j N n j e

n n N h e H

它的幅度是关于πω2,0=点成奇对称,πω2,0=处有零点,所以它不适合用于低通滤波器。

在滤波器设计过程中,只有根据上述四种线性相位滤波器传递函数的性质,合理的选择应采用的种类,构造出)(ω

j d e

H 的幅频特性和相位特性,才能求得所需要的、具有单位脉冲

响应的线性相位FIR 滤波器传递函数。

窗函数法设计线性相位FIR 滤波器可以按照如下步骤进行:

(1) (1) 确定数字滤波器的性能要求。确定个临界频率{}k ω和滤波器单位脉冲

响应长度N 。

(2) (2) 根据性能要求和N 值,合理选择单位脉冲响应)(n h 的奇偶对称性,从

而确定理想频率响应)(ω

j d e

H 的幅频和相位特性。

(3) (3) 用傅立叶反变换公式(4-2),求得理想单位脉冲响应)(n h d 。 (4) (4) 选择适当的窗函数w(n),根据式(4-3),求得所设计的FIR 滤波器

单位脉冲响应。

(5) (5) 用傅立叶变换求得其频率响应)(ω

j e

H ,分析它的幅频特性,若不满足

要求,可适当改变窗函数形式或长度N ,重复上述过程,直至得到满意的结果。

注意:在上述步骤(3)中,从)(ω

j d e

H 到)(n h d 的反变换要用到式(4-2),这里的

积分运算,在计算机上可取其数值解

kn

M

j

M k k

M

j

d d e

e

H M

n h ππ21

2)(1)(∑

-=≈

其中10-≤≤N n ,而N M 8≥,这样,数值解才能较好的逼近解析解。

三.实验内容及步骤

(一)编制实验用主程序及相应子程序

1.在实验编程之前,认真复习有关FIR 滤波器设计的有关知识,尤其是窗函数的有关内容,阅读本次实验指导,熟悉窗函数及四种线性相位FIR 滤波器的特性,掌握窗函数设计滤波器的具体步骤。

2.编制窗函数设计FIR 滤波器的主程序及相应子程序。

(1)傅立叶反变换数值计算子程序,用于计算设计步骤(3)中的傅立叶反变换,给定)(2k

M j d e

H π,1,.....,1,0-=M k 。按照公式求得理想单位脉冲响应)(n h d ,

1,.....,1,0-=N n 。

(2)窗函数产生子程序,用于产生几种常见的窗函数序列。本实验中要求产生的窗函数序列有:矩形窗、Hanning 窗、Hamming 窗、Blackman 窗、Kaiser 窗。根据给定的长度N ,按照公式(4-4)到公式(4-8)生成相应的窗函数序列。在产生Kaiser 窗函数的时候需要用到零阶贝塞尔函数,在实验指导书的附录部分提供了零阶贝塞尔函数计算子程序。

(3)主程序,在上述子程序的基础上,设计主程序完成线性相位FIR 滤波器的窗函数法设计。其中理想滤波器幅频特性的一半(从0=ω到πω=区间)频率点上的值

)

(2k

M j d e H π,12/,.....,1,0-=M k ,以及滤波器的长度N 可以从数据文件或其它形式

输入。

)

(2k

M j d e

H π的另外一半(从πω=到πω2=区间)的幅频特性和全部相位特性

在程序中根据N 的奇偶性和幅频特性的要求,在四种滤波器中选择一种,自动产生。 (二)上机实验内容

在计算机上调试自己设计好的窗函数法设计FIR 线性相位滤波器设计程序。以下是一个例题及其标准答案,供同学们在设计过程中参考,若有不清楚的地方,请大家在翻阅理论课教材。

例:用窗函数法设计一个长度N 为8的线性相位FIR 滤波器,其理想的幅频特性为:

数字信号处理基础实验指导书

《数字信号处理》实验指导书 光电工程学院二○○九年十月

实验一离散时间信号分析 一、实验目的 1.掌握各种常用的序列,理解其数学表达式和波形表示。 2.掌握在计算机中生成及绘制数字信号波形的方法。 3.掌握序列的相加、相乘、移位、反转等基本运算及计算机实现与作用。 4.掌握线性卷积软件实现的方法。 5.掌握计算机的使用方法和常用系统软件及应用软件的使用。 6.通过编程,上机调试程序,进一步增强使用计算机解决问题的能力。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列来表示,其中代表序列的第n个数字,n代表时间的序列,n的取值范围为的整数,n取其它值没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号进行等间隔采样,采样间隔为T,得到一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)、单位阶跃序列、矩形序列、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反转、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。 (1)反褶:先将和的变量换成,变成和,再将以纵轴为对称轴反褶成。 (2)移位:将移位,得。当为正数时,右移位;当为负数时,左

移位。 (3)相乘:将和的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得。 三、主要实验仪器及材料 微型计算机、Matlab软件6.5或更高版本。 四、实验内容 1.知识准备 认真复习以上基础理论,理解本实验所用到的实验原理。 2.离散时间信号(序列)的产生 利用MATLAB或C语言编程产生和绘制下列有限长序列: (1)单位脉冲序列 (2)单位阶跃序列 (3)矩形序列 (4)正弦型序列 (5)任意序列 3.序列的运算 利用MATLAB编程完成上述两序列的移位、反转、加法、乘法等运算,并绘制运算后序列的波形。 4.卷积运算 利用MATLAB编制一个计算两个序列线性卷积的通用程序,计算上述两序列,并绘制卷积后序列的波形。 5.上机调试并打印或记录实验结果。 6.完成实验报告。 五、实验报告要求 1. 简述实验原理及目的。 2. 给出上述序列的实验结果。 3. 列出计算卷积的公式,画出程序框图,并列出实验程序清单 (可略)(包括必要的程序说明)。 4. 记录调试运行情况及所遇问题的解决方法。 5. 给出实验结果,并对结果做出分析。 6. 简要回答思考题。 1 如何产生方波信号序列和锯齿波信号序列? 2 实验中所产生的正弦序列的频率是多少?是否是周期序列?

数字信号处理实验(吴镇扬)答案-2

(1) 观察高斯序列的时域和幅频特性,固定信号)(n x a 中参数p=8,改变q 的 值,使q 分别等于2、4、8,观察他们的时域和幅频特性,了解当q 取不同值时,对信号序列的时域和幅频特性的影响;固定q=8,改变p,使p 分别等于8、13、14,观察参数p 变化对信号序列的时域和幅频特性的影响,注意p 等于多少时会发生明显的泄漏现象,混叠是否也随之出现?记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。 ()() ?????≤≤=-其他0150,2n e n x q p n a 解:程序见附录程序一: P=8,q 变化时: t/T x a (n ) k X a (k ) t/T x a (n ) p=8 q=4 k X a (k ) p=8 q=4 t/T x a (n ) p=8 q=8 k X a (k ) p=8 q=8 幅频特性 时域特性

t/T x a (n ) p=8 q=8 k X a (k ) p=8 q=8 t/T x a (n ) 5 10 15 k X a (k ) p=13 q=8 t/T x a (n ) p=14 q=8 5 10 15 k X a (k ) p=14 q=8 时域特性幅频特性 分析: 由高斯序列表达式知n=p 为期对称轴; 当p 取固定值时,时域图都关于n=8对称截取长度为周期的整数倍,没有发生明显的泄漏现象;但存在混叠,当q 由2增加至8过程中,时域图形变化越来越平缓,中间包络越来越大,可能函数周期开始增加,频率降低,渐渐小于fs/2,混叠减弱; 当q 值固定不变,p 变化时,时域对称中轴右移,截取的时域长度渐渐地不再是周期的整数倍,开始无法代表一个周期,泄漏现象也来越明显,因而图形越来越偏离真实值, p=14时的泄漏现象最为明显,混叠可能也随之出现;

数字信号处理实验一

实验一 离散时间信号分析 班级 信息131班 学号 201312030103 姓名 陈娇 日期 一、实验目的 掌握两个序列的相加、相乘、移位、反褶、卷积等基本运算。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列)}({n x 来表示,其中)(n x 代表序列的第n 个数字,n 代表时间的序列,n 的取值范围为+∞<<∞-n 的整数,n 取其它值)(n x 没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号)(t x a 进行等间隔采样,采样间隔为T ,得到)}({nT x a 一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)) (n δ、单位阶跃序列)(n u 、矩形序列)(n R N 、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 ∑∞ -∞==-= m n h n x m n h m x n y )(*)()()()( 上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。 (1)反褶:先将)(n x 和)(n h 的变量n 换成m ,变成)(m x 和)(m h ,再将)(m h 以纵轴为对称轴反褶成)(m h -。

(2)移位:将)(m h -移位n ,得)(m n h -。当n 为正数时,右移n 位;当n 为负数时,左移n 位。 (3)相乘:将)(m n h -和)(m x 的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得)(n y 。 三、主要实验仪器及材料 微型计算机、Matlab6.5 教学版、TC 编程环境。 四、实验内容 (1)用Matlab 或C 语言编制两个序列的相加、相乘、移位、反褶、卷积等的程序; (2)画出两个序列运算以后的图形; (3)对结果进行分析; (4)完成实验报告。 五、实验结果 六、实验总结

数字信号处理实验报告

数字信号处理作业提交日期:2016年7月15日

实验一 维纳滤波器的设计 第一部分 设计一维纳滤波器。 (1)产生三组观测数据,首先根据()(1)()s n as n w n =-+产生信号()s n ,将其加噪(信噪比分别为20,10,6dB dB dB ),得到观测数据123(),(),()x n x n x n 。 (2)估计()i x n ,1,2,3i =的AR 模型参数。假设信号长度为L ,AR 模型阶数为N ,分析实验结果,并讨论改变L ,N 对实验结果的影响。 1 实验原理 滤波技术是信号分析、处理技术的重要分支,无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传递是至关重要的。信号分析检测与处理的一个十分重要的内容就是从噪声中提取信号,实现这种功能的有效手段之一是设计一种具有最佳线性过滤特性的滤波器,当伴有噪声的信号通过这种滤波器的时候,它可以将信号尽可能精确地重现或对信号做出尽可能精确的估计,而对所伴随噪声进行最大限度地抑制。维纳滤波器就是这种滤波器的典型代表之一。 维纳(Wiener )是用来解决从噪声中提取信号的一种过滤(或滤波)方法。这种线性滤波问题,可以看做是一种估计问题或一种线性估计问题。 设一线性系统的单位样本响应为()h n ,当输入以随机信号()x n ,且 ()() () x n s n v n =+,其中()s n 表示原始信号,即期望信号。()v n 表示噪声,则输出()y n 为()=()()m y n h m x n m -∑,我们希望信号()x n 经过线性系统()h n 后得到的()y n 尽可能接近 于()s n ,因此称()y n 为估计值,用?()s n 表示。 则维纳滤波器的输入-输出关系可用下面表示。 设误差信号为()e n ,则?()()()e n s n s n =-,显然)(n e 可能是正值,也可能是负值,并且它是一个随机变量。因此,用它的均方误差来表达误差是合理的,所谓均方误差最小即 它的平方的统计期望最小:222?[|()|][|()()|][|()()|]E e n E s n s n E s n y n =-=-=min 。而要使均方误差最小,则需要满足2[|()|]j E e n h ?=0. 进一步导出维纳-霍夫方程为:()()()()*(),0,1,2...xs xx xx i R m h i R m i R m h m m =-==∑ 写成矩阵形式为:xs xx R R h =,可知:1xs xx h R R -=。表明已知期望信号与观测数据的互相关函数以及观测信号的自相关函数时,可以通过矩阵求逆运算,得到维纳滤波器的

数字信号处理实验报告(实验1_4)

实验一 MATLAB 仿真软件的基本操作命令和使用方法 实验容 1、帮助命令 使用 help 命令,查找 sqrt (开方)函数的使用方法; 2、MATLAB 命令窗口 (1)在MATLAB 命令窗口直接输入命令行计算3 1)5.0sin(21+=πy 的值; (2)求多项式 p(x) = x3 + 2x+ 4的根; 3、矩阵运算 (1)矩阵的乘法 已知 A=[1 2;3 4], B=[5 5;7 8],求 A^2*B

(2)矩阵的行列式 已知A=[1 2 3;4 5 6;7 8 9],求A (3)矩阵的转置及共轭转置 已知A=[1 2 3;4 5 6;7 8 9],求A' 已知B=[5+i,2-i,1;6*i,4,9-i], 求B.' , B' (4)特征值、特征向量、特征多项式 已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵A的特征值、特征向量、特征多项式;

(5)使用冒号选出指定元素 已知:A=[1 2 3;4 5 6;7 8 9];求A 中第3 列前2 个元素;A 中所有列第2,3 行的元素; 4、Matlab 基本编程方法 (1)编写命令文件:计算1+2+…+n<2000 时的最大n 值;

(2)编写函数文件:分别用for 和while 循环结构编写程序,求 2 的0 到15 次幂的和。

5、MATLAB基本绘图命令 (1)绘制余弦曲线 y=cos(t),t∈[0,2π]

(2)在同一坐标系中绘制余弦曲线 y=cos(t-0.25)和正弦曲线 y=sin(t-0.5), t∈[0,2π] (3)绘制[0,4π]区间上的 x1=10sint 曲线,并要求: (a)线形为点划线、颜色为红色、数据点标记为加号; (b)坐标轴控制:显示围、刻度线、比例、网络线 (c)标注控制:坐标轴名称、标题、相应文本; >> clear;

数字信号处理实验

实验一 离散傅里叶变换(DFT )对确定信号进行谱分析 一.实验目的 1.加深对DFT 算法原理和基本性质的理解。 2.熟悉DFT 算法和原理的编程方法。 3.学习用DFT 对信号进行谱分析的方法,了解可能出现的误差及其原因,以便在实际中正确利用。 二.实验原理 一个连续信号)(t x a 的频谱可以用其傅里叶变换表示,即 dt e t x j X t j a a Ω-∞ ∞ -? = Ω)()( 若对)(t x a 进行理想采样可得采样序列 )(|)()(nT x t x n x a nT t a === 对)(n x 进行DTFT ,可得其频谱为: ∑∞ -∞ =-= n n j j e n x e X ωω )()( 其中数字频率ω与模拟频率Ω的关系为: s f T Ω = Ω=ω )(n x 的DFT 为∑∞ -∞ =-= n nk N j e n x k X π 2)()( 若)(t x a 是限带信号,且在满足采样定理的条件下,)(ω j e X 是)(Ωj X a 的周期延拓, )(k X 是)(ωj e X 在单位圆上的等间隔采样值,即k N j e X k X πωω2| )()(= =。 为在计算机上分析计算方便,常用)(k X 来近似)(ω j e X ,这样对于长度为N 的有限 长序列(无限长序列也可用有限长序列来逼近),便可通过DFT 求其离散频谱。 三.实验内容 1.用DFT 对下列序列进行谱分析。 (1))()04.0sin(3)(100n R n n x π=

1 (2)]0,0,0,0,0,0,0,0,1,1,1,1[)(=n x 2.为了说明高密度频谱和高分辨率频谱之间的区别,考察序列 )52.0cos()48.0cos()(n n n x ππ+= (1)当0≤n ≤10时,确定并画出x(n)的离散傅里叶变换。 (2)当0≤n ≤100时,确定并画出x(n)的离散傅里叶变换。 四.实验结果 1. (1) (2)

数字信号处理实验报告

实验一MATLAB语言的基本使用方法 实验类别:基础性实验 实验目的: (1)了解MATLAB程序设计语言的基本方法,熟悉MATLAB软件运行环境。 (2)掌握创建、保存、打开m文件的方法,掌握设置文件路径的方法。 (3)掌握变量、函数等有关概念,具备初步的将一般数学问题转化为对应计算机模型并进行处理的能力。 (4)掌握二维平面图形的绘制方法,能够使用这些方法进行常用的数据可视化处理。 实验内容和步骤: 1、打开MATLAB,熟悉MATLAB环境。 2、在命令窗口中分别产生3*3全零矩阵,单位矩阵,全1矩阵。 3、学习m文件的建立、保存、打开、运行方法。 4、设有一模拟信号f(t)=1.5sin60πt,取?t=0.001,n=0,1,2,…,N-1进行抽样,得到 序列f(n),编写一个m文件sy1_1.m,分别用stem,plot,subplot等命令绘制32 点序列f(n)(N=32)的图形,给图形加入标注,图注,图例。 5、学习如何利用MATLAB帮助信息。 实验结果及分析: 1)全零矩阵 >> A=zeros(3,3) A = 0 0 0 0 0 0 0 0 0 2)单位矩阵 >> B=eye(3) B = 1 0 0 0 1 0 0 0 1 3)全1矩阵 >> C=ones(3) C = 1 1 1 1 1 1 1 1 1 4)sy1_1.m N=32; n=0:N-1; dt=0.001; t=n*dt; y=1.5*sin(60*pi*t); subplot(2,1,1), plot(t,y); xlabel('t'); ylabel('y=1.5*sin(60*pi*t)'); legend('正弦函数'); title('二维图形'); subplot(2,1,2), stem(t,y) xlabel('t'); ylabel('y=1.5*sin(60*pi*t)'); legend('序列函数'); title('条状图形'); 00.0050.010.0150.020.0250.030.035 t y = 1 . 5 * s i n ( 6 * p i * t ) 二维图形 00.0050.010.0150.020.0250.030.035 t y = 1 . 5 * s i n ( 6 * p i * t ) 条状图形

数字信号处理实验答案完整版

数字信号处理实验答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

实验一熟悉Matlab环境 一、实验目的 1.熟悉MATLAB的主要操作命令。 2.学会简单的矩阵输入和数据读写。 3.掌握简单的绘图命令。 4.用MATLAB编程并学会创建函数。 5.观察离散系统的频率响应。 二、实验内容 认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。在熟悉了MATLAB基本命令的基础上,完成以下实验。 上机实验内容: (1)数组的加、减、乘、除和乘方运算。输入A=[1 2 3 4],B=[3 4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。 clear all; a=[1 2 3 4]; b=[3 4 5 6]; c=a+b; d=a-b; e=a.*b; f=a./b; g=a.^b; n=1:4; subplot(4,2,1);stem(n,a); xlabel('n');xlim([0 5]);ylabel('A'); subplot(4,2,2);stem(n,b); xlabel('n');xlim([0 5]);ylabel('B'); subplot(4,2,3);stem(n,c); xlabel('n');xlim([0 5]);ylabel('C'); subplot(4,2,4);stem(n,d); xlabel('n');xlim([0 5]);ylabel('D'); subplot(4,2,5);stem(n,e); xlabel('n');xlim([0 5]);ylabel('E'); subplot(4,2,6);stem(n,f); xlabel('n');xlim([0 5]);ylabel('F'); subplot(4,2,7);stem(n,g); xlabel('n');xlim([0 5]);ylabel('G'); (2)用MATLAB实现下列序列: a) x(n)= 0≤n≤15 b) x(n)=e+3j)n 0≤n≤15 c) x(n)=3cosπn+π)+2sinπn+π) 0≤n≤15 d) 将c)中的x(n)扩展为以16为周期的函数x(n)=x(n+16),绘出四个周期。

数字信号处理实验报告一

武汉工程大学 数字信号处理实验报告 姓名:周权 学号:1204140228 班级:通信工程02

一、实验设备 计算机,MATLAB语言环境。 二、实验基础理论 1.序列的相关概念 2.常见序列 3.序列的基本运算 4.离散傅里叶变换的相关概念 5.Z变换的相关概念 三、实验内容与步骤 1.离散时间信号(序列)的产生 利用MATLAB语言编程产生和绘制单位样值信号、单位阶跃序列、指数序列、正弦序列及随机离散信号的波形表示。 四实验目的 认识常用的各种信号,理解其数字表达式和波形表示,掌握在计算机中生成及绘制数字信号波形的方法,掌握序列的简单运算及计算机实现与作用,理解离散时间傅里叶变换,Z变换及它们的性质和信号的频域分

实验一离散时间信号(序列)的产生 代码一 单位样值 x=2; y=1; stem(x,y); title('单位样值 ') 单位阶跃序列 n0=0; n1=-10; n2=10; n=[n1:n2]; x=[(n-n0)>=0]; stem(n,x); xlabel('n'); ylabel('x{n}'); title('单位阶跃序列');

实指数序列 n=[0:10]; x=(0.5).^n; stem(n,x); xlabel('n'); ylabel('x{n}'); title('实指数序列');

正弦序列 n=[-100:100]; x=2*sin(0.05*pi*n); stem(n,x); xlabel('n'); ylabel('x{n}'); title('正弦序列');

随机序列 n=[1:10]; x=rand(1,10); subplot(221); stem(n,x); xlabel('n'); ylabel('x{n}'); title('随机序列');

数字信号处理实验(吴镇扬)答案-4

实验四 有限长单位脉冲响应滤波器设计 朱方方 0806020433 通信四班 (1) 设计一个线性相位FIR 高通滤波器,通带边界频率为0.6π,阻带边界频率为0.4π,阻 带衰减不小于40dB 。要求给出h(n)的解析式,并用MATLAB 绘出时域波形和幅频特性。 解: (1) 求数字边界频率: 0.6 , .c r ωπωπ== (2) 求理想滤波器的边界频率: 0.5n ωπ= (3) 求理想单位脉冲响应: []d s i n ()s i n [()] () ()1n n n n n n h n n παωαα παωα π?-- -≠??-=? ? -=?? (4) 选择窗函数。阻带最小衰减为-40dB ,因此选择海明窗(其阻带最小衰减为-44dB);滤 波器的过渡带宽为0.6π-0.4π=0.2π,因此 6.21 0.231 , 152 N N N ππα-=?=== (5) 求FIR 滤波器的单位脉冲响应h(n): []31d sin (15)sin[0.5(15)] 1cos ()15()()()15(15)1 15 n n n R n n h n w n h n n n ππππ?---????-? ?≠? ???==-???? ? ?=? 程序: clear; N=31; n=0:N-1; hd=(sin(pi*(n-15))-sin(0.5*pi*(n-15)))./(pi *(n-15)); hd(16)=0.5; win=hanning(N); h=win'.*hd; figure; stem(n,h); xlabel('n'); ylabel('h(n)'); grid; title('FIR 高通滤波单位脉冲响应h(n)'); [H,w]=freqz(h,1); H=20*log10(abs(H)); figure;3 plot(w/pi,H); axis([0 1 -100 10]); xlabel('\omega/\pi'); ylabel('幅度/dB'); grid; title('FIR 高通滤波器,hanning 窗,N=31');

数字信号处理实验三

实验三:离散LSI 系统的频域分析 一、实验内容 2、求以下各序列的z 变换: 12030() ()sin() ()sin()n an x n na x n n x n e n ωω-=== 程序清单如下: syms w0 n z a; x1=n*a^n;X1=ztrans(x1) x2=sin(w0*n);X2=ztrans(x2) x3= exp(-a*n)*sin(w0*n);X3=ztrans(x3) 程序运行结果如下: X1 =z/(a*(z/a - 1)^2) X2 =(z*sin(w0))/(z^2 - 2*cos(w0)*z + 1) X3 =(z*exp(a)*sin(w0))/(exp(2*a)*z^2 - 2*exp(a)*cos(w0)*z + 1) 3、求下列函数的逆z 变换 0 312342 1 1() () () ()() 1j z z z z X z X z X z X z z a z a z e z ω---= = = = ---- 程序清单如下: syms w0 n z a; X1=z/(z-a);x1=iztrans(X1) X2= z/(a-z)^2;x2=iztrans(X2) X3=z/ z-exp(j*w0);x3=iztrans(X3) X4=(1-z^-3)/(1-z^-1);x4=iztrans(X4) 程序运行结果如下: x1 =a^n x2 =n*a^n/a 课程名称 数字信号 实验成绩 指导教师 实 验 报 告 院系 信息工程学院 班级 学号 姓名 日期

x3 =charfcn[0](n)-iztrans(exp(i*w0),w0,n) x4 =charfcn[2](n)+charfcn[1](n)+charfcn[0](n) 4、求一下系统函数所描述的离散系统的零极点分布图,并判断系统的稳定性 (1) (0.3)()(1)(1) z z H z z j z j -= +-++ z1=[0,0.3]';p1=[-1+j,-1-j]';k=1; [b1,a1]=zp2tf(z1,p1,k); subplot(1,2,1);zplane(z1,p1); title('极点在单位圆外); subplot(1,2,2);impz(b1,a1,20); 由图可见:当极点位于单位圆内,系统的单位序列响应随着频率的增大而收敛;当极点位于单位圆上,系统的单位序列响应为等幅振荡;当极点位于单位圆外,系统的单位序列响应随着频率的增大而发散。由此可知系统为不稳定系统。 -1 -0.5 00.51 -2 -1.5-1-0.500.511.5 2Real Part I m a g i n a r y P a r t 极点在单位圆外 n (samples) A m p l i t u d e Impulse Response

实验一 基于Matlab的数字信号处理基本

实验一 基于Matlab 的数字信号处理基本操作 一、 实验目的:学会运用MA TLAB 表示的常用离散时间信号;学会运用MA TLAB 实现离 散时间信号的基本运算。 二、 实验仪器:电脑一台,MATLAB6.5或更高级版本软件一套。 三、 实验内容: (一) 离散时间信号在MATLAB 中的表示 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。 离散时间信号的波形绘制在MATLAB 中一般用stem 函数。stem 函数的基本用法和plot 函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。如果要实心,需使用参数“fill ”、“filled ”,或者参数“.”。由于MATLAB 中矩阵元素的个数有限,所以MA TLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。 1. 单位取样序列 单位取样序列)(n δ,也称为单位冲激序列,定义为 ) 0() 0(0 1)(≠=?? ?=n n n δ 要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n =0处是取确定的值1。在MATLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即 function y=impDT(n) y=(n==0); %当参数为0时冲激为1,否则为0 调用该函数时n 必须为整数或整数向量。 【实例1-1】 利用MATLAB 的impDT 函数绘出单位冲激序列的波形图。 解:MATLAB 源程序为 >>n=-3:3; >>x=impDT(n); >>stem(n,x,'fill'),xlabel('n'),grid on >>title('单位冲激序列') >>axis([-3 3 -0.1 1.1]) 程序运行结果如图1-1所示。 图1-1 单位冲激序列

数字信处理上机实验答案全

数字信处理上机实验答 案全 Document number【SA80SAB-SAA9SYT-SAATC-SA6UT-SA18】

第十章 上机实验 数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。 实验一系统响应及系统稳定性。 实验二时域采样与频域采样。 实验三用FFT对信号作频谱分析。 实验四 IIR数字滤波器设计及软件实现。 实验五 FIR数字滤波器设计与软件实现 实验六应用实验——数字信号处理在双音多频拨号系统中的应用 任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。 实验一: 系统响应及系统稳定性 1.实验目的 (1)掌握求系统响应的方法。 (2)掌握时域离散系统的时域特性。 (3)分析、观察及检验系统的稳定性。 2.实验原理与方法 在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。也可以用MATLAB语言的工具箱函数conv函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。 系统的时域特性指的是系统的线性时不变性质、因果性和稳定性。重点分析实验系统的稳定性,包括观察系统的暂态响应和稳定响应。 系统的稳定性是指对任意有界的输入信号,系统都能得到有界的系统响应。或者系统的单位脉冲响应满足绝对可和的条件。系统的稳定性由其差分方程的系数决定。 实际中检查系统是否稳定,不可能检查系统对所有有界的输入信号,输出是否都是有界输出,或者检查系统的单位脉冲响应满足绝对可和的条件。可行的方法是在系统的输入端加入单位阶跃序列,如果系统的输出趋近一个常数(包括零),就可以断定系统是稳定的[19]。系统的稳态输出是指当∞ n时,系统的输出。如果系统稳定,信号加入 → 系统后,系统输出的开始一段称为暂态效应,随n的加大,幅度趋于稳定,达到稳态输出。 注意在以下实验中均假设系统的初始状态为零。 3.实验内容及步骤

数字信号处理实验4

数字信号处理实验四 第一题结果: (1)没有增加过渡点 源码如下: N = 15; H = [1 1 1 0.5 zeros(1,7) 0.5 1 1 1]; %确定抽样点的幅度大小 %H(3,13) = 0.75;H(5,11) = 0.25; %设置过渡点 k = 0:N-1; A = exp(-j*pi*k*(N-1)/N); %抽样点相位大小 HK = H.*A; %求抽样点的H(k) hn = ifft(HK,N); %求出FIR的单位冲激响应h(n) freqz(hn,1,256); %画出幅频相频曲线figure(2); stem(real(hn),'.'); %绘制单位冲激响应的实部 line([0,35],[0,0]);xlabel('n');ylabel('Real(h(n))'); 单位脉冲响应曲线 幅频和相频特性曲线

(2)增加过渡点 源码如下: N = 15; H = [1 1 1 0.5 zeros(1,7) 0.5 1 1 1]; %确定抽样点的幅度大小 H(3) = 0.75;H(13) = 0.75;H(5) = 0.25;H(11) = 0.25; %设置过渡点 k = 0:N-1; A = exp(-j*pi*k*(N-1)/N); %抽样点相位大小 HK = H.*A; %求抽样点的H(k) hn = ifft(HK,N); %求出FIR的单位冲激响应h(n) freqz(hn,1,256); %画出幅频相频曲线figure(2); stem(real(hn),'.'); %绘制单位冲激响应的实部 line([0,35],[0,0]);xlabel('n');ylabel('Real(h(n))'); 单位脉冲响应曲线 幅频和相频特性曲线 第二题结果:

西南交大数字信号处理报告

信息科学与技术学院本科三年级 数字信号处理实验报告 2011 年12 月21日

实验一 序列的傅立叶变换 实验目的 进一步加深理解DFS,DFT 算法的原理;研究补零问题;快速傅立叶变换 (FFT )的应用。 实验步骤 1. 复习DFS 和DFT 的定义,性质和应用; 2. 熟悉MATLAB 语言的命令窗口、编程窗口和图形窗口的使用;利用提供的 程序例子编写实验用程序;按实验内容上机实验,并进行实验结果分析;写出完整的实验报告,并将程序附在后面。 实验内容 1. 周期方波序列的频谱试画出下面四种情况下的的幅度频谱,并分析补零后,对信号频谱的影响。 实验结果: 60 ,7)4(;60,5)3(; 40,5)2(;20,5)1()] (~[)(~,2,1,01 )1(,01,1)(~=========±±=???-+≤≤+-+≤≤=N L N L N L N L n x DFS k X m N m n L m N L m N n m N n x ) 52.0cos()48.0cos()(n n n x ππ+=

2. 有限长序列x(n)的DFT (1) 取x(n)(n=0:10)时,画出x(n)的频谱X(k) 的幅度; (2) 将(1)中的x(n)以补零的方式,使x(n)加长到(n:0~100)时,画出 x(n)的频谱X(k) 的幅度; (3) 取x(n)(n:0~100)时,画出x(n)的频谱X(k) 的幅度。利用FFT 进行谱分析 已知:模拟信号 以t=0.01n(n=0:N-1)进行采样,求N 点DFT 的幅值谱。 请分别画出N=45; N=50;N=55;N=60时的幅值曲线。 实验结果: ) 8cos(5)4sin(2)(t t t x ππ+=

数字信号处理基础实验报告_

本科生实验报告 实验课程数字信号处理基础 学院名称地球物理学院 专业名称地球物理学 学生姓名 学生学号 指导教师王山山 实验地点5417 实验成绩 二〇一四年十一月二〇一四年十二月

填写说明 1、适用于本科生所有的实验报告(印制实验报告册除外); 2、专业填写为专业全称,有专业方向的用小括号标明; 3、格式要求: ①用A4纸双面打印(封面双面打印)或在A4大小纸上用蓝黑色水笔书写。 ②打印排版:正文用宋体小四号,1.5倍行距,页边距采取默认形式(上下2.54cm, 左右2.54cm,页眉1.5cm,页脚1.75cm)。字符间距为默认值(缩放100%,间距:标准);页码用小五号字底端居中。 ③具体要求: 题目(二号黑体居中); 摘要(“摘要”二字用小二号黑体居中,隔行书写摘要的文字部分,小4号宋体); 关键词(隔行顶格书写“关键词”三字,提炼3-5个关键词,用分号隔开,小4号黑体); 正文部分采用三级标题; 第1章××(小二号黑体居中,段前0.5行) 1.1 ×××××小三号黑体×××××(段前、段后0.5行) 1.1.1小四号黑体(段前、段后0.5行) 参考文献(黑体小二号居中,段前0.5行),参考文献用五号宋体,参照《参考文献著录规则(GB/T 7714-2005)》。

实验一生成离散信号并计算其振幅谱 并将信号进行奇偶分解 一、实验原理 单位脉冲响应h(t)=exp(-a*t*t)*sin(2*3.14*f*t)进行离散抽样,分别得到t=0.002s,0.009s,0.011s采样的结果。用Excel软件绘图显示计算结果。并将信号进行奇偶分解,分别得到奇对称信号h(n)-h(-n)与偶对称信号h(n)+h(-n)。用Excel 软件绘图显示计算结果。 二、实验程序代码 (1)离散抽样 double a,t; a=2*f*f*log(m); int i; for(i=0;i

数字信号处理基础实验报告 (2)

成都理工大学 《信号处理基础》实验 开设时间:2013—2014学年第2学期

题目1:信号的产生和显示 一、实验目的: 认识基本信号 通过使用MATLAB 设计简单程序, 掌握对MATLAB 的基本使用方法 二、实验原理: 找出下列表达式的信号与:正弦信号、最小相位信号、最大相位信号、零相位信号的对应关系。 1、sin60t 2、e-60t sin60t 3、(1- e-60t)sin60t 4、e60t sin60t 三、实验内容: 产生上述信号的信号并显示 (1)t=[-pi/30:0.001:pi/30]; f=sin(60*t); plot(t,f) 产生图形如下:

(2)t=[0:0.001:pi/30]; f=exp(-60*t).*sin(60*t); plot(t,f) 产生图形如下:

(3)t=[-5*pi/30:0.001:5*pi/30]; f=(1-exp(-60*t)).*sin(60*t); plot(t,f) 产生图形如下: (4) t=[-pi/30:0.001:pi/30]; f=exp(6*t).*sin(60*t); plot(t,f) 产生如下波形:

四、实验结果与讨论: 讨论上述信号的特点 从第一个波形图可以看出,它的波形与正弦函数sin(t)的相像,只是相位上有改变,是一个正弦信号。最大相位信号的能量集中在后面,最小相位能量集中在前面,所以第二个是一个最小相位,第四个是一个最大相位信号。第三个由于波形在t>0时没有,所以是一个零相位信号。 题目2:频谱分析与显示 一、实验目的 初步认识频谱分析

习题集-02 数字信号处理习题答案

§ Z 变换 ? Z 变换的定义及收敛域 【习题】 1. 假如)(n x 的z 变换代数表示式是下式,问)(z X 可能有多少不同的收敛域。 )83451)(411(411)(2122----+++- =z z z z z X 【分析】 )要单独讨论,(环状、圆外、圆内:有三种收敛域:双边序列的收敛域为:特殊情况有:左边序列的收敛域为:因果序列的收敛域为:右边序列的收敛域为:特殊情况有:有限长序列的收敛域为 0 0 , , 0 0 , , 0 , 0 0 , 0 , 0 22 11 212 1∞==<<≤≤<≤<<≥≥∞≤<≥∞<<≤∞<≤≥∞≤<≤≤∞<<+ -++--z z R z R n n R z n n R z n n z R n n z R n z n z n n n z x x x x x x

解:对X (Z )的分子和分母进行因式分解得 )43 1 )(21 1)(211(2111111----+-+- =Z jZ jZ Z X (Z )的零点为:1/2,极点为:j/2,-j/2,-3/4 ∴ X (Z )的收敛域为: (1) 1/2 < | Z | < 3/4,为双边序列,见图一 (2) | Z | < 1/2,为左边序列,见图二 (3) | Z | > 3/4,为右边序列,见图三 图一 图二 图三 )431)(211)(411()211)(211()(11211-----++++- =Z Z Z Z Z Z X

? Z 反变换 【习题】 2. 有一右边序列 )(n x ,其 z 变换为)1)(211(1 )(11----=z z z X (a) 将上式作部分分式展开(用 1-z 表示),由展开式求 )(n x 。 (b) 将上式表示成 z 的多项式之比,再作部分分式展开,由展开式求 )(n x ,并说明所得到的序列 与(a)所得的是一样的。 【注意】不管哪种表示法最后求出 x (n ) 应该是相同的。 解:(a) 因为11122 111)(---+--=z z z X 且x(n)是右边序列 所以 )()212()(n u n x n ?? ? ??-= (b) 122 1211 )1)(2 1(21231 )1)(2 1()(2 -+--+=---+=--=z z z z z z z z z X )()212( )1(2)1(21)()( n u n u n u n n x n n ??? ??-=-+-?? ? ??-=δ则

数字信号处理实验报告

3.(1)用双线性变换法设计一个Chebyshev型高通滤波器程序如下 Rp=1.2;Rs=20;T=0.001;fp=300;fs=200; wp=2*pi*fp*T;ws=2*pi*fs*T; wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2); [n,wn]=cheb1ord(wp1,ws1,Rp,Rs,'s'); [b,a]=cheby1(n,Rp,wn,'high','s'); [bz,az]=bilinear(b,a,1/T); [db,mag,pha,grd,w]=freqz_m(bz,az);plot(w/pi,db); axis([0,1,-30,2]); 3.(2) a用双线性变换法设计一个Butterworth型数字低通滤波器程序如下Rp=1;Rs=25;T=0.001;fp=300;fs=200; wp=2*pi*fp*T;ws=2*pi*fs*T; wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2); [n,wn]=buttord(wp1,ws1,Rp,Rs,'s'); [b,a]=butter(n,wn,'low','s'); [bz,az]=bilinear(b,a,1/T); [db,mag,pha,grd,w]=freqz_m(bz,az);plot(w/pi,db); axis([0,1,-30,2]); b用脉冲响应不变法设计一个Butterworth数字低通滤波器的程序如下:wp=400*pi;ws=600*pi;Rp=1;Rs=25; [n,wn]=buttord(wp,ws,Rp,Rs,'s') [b,a]=butter(n,wn,'s') [db,mag,pha,w]=freqs_m(b,a,500*2*pi);

数字信号处理上机实验答案完整版

数字信号处理上机实验 答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

第十章上机实验 数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。 实验一系统响应及系统稳定性。 实验二时域采样与频域采样。 实验三用FFT对信号作频谱分析。 实验四 IIR数字滤波器设计及软件实现。 实验五 FIR数字滤波器设计与软件实现 实验六应用实验——数字信号处理在双音多频拨号系统中的应用 任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。 functiontstem(xn,yn) %时域序列绘图函数 %xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串) n=0:length(xn)-1; stem(n,xn,'.');boxon xlabel('n');ylabel(yn); axis([0,n(end),min(xn),*max(xn)]) 实验一: 系统响应及系统稳定性 1.实验目的 (1)掌握求系统响应的方法。 (2)掌握时域离散系统的时域特性。 (3)分析、观察及检验系统的稳定性。 2.实验原理与方法 在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。也可

相关主题
文本预览
相关文档 最新文档