文档视界 最新最全的文档下载
当前位置:文档视界 › 数字信号处理实验指导手册

数字信号处理实验指导手册

数字信号处理实验指导手册
数字信号处理实验指导手册

数字信号处理实验指导手册

西安文理学院

机械电子工程系

目录

实验一离散时间信号 (2)

实验二时域采样定理 (7)

实验三离散时间系统 (10)

实验四线性卷积与圆周卷积 (13)

实验五用FFT作谱分析 (16)

实验六用双线性变换法设计IIR数字滤波器 (18)

实验七 FIR滤波器设计 (20)

实验一 离散时间信号

【实验目的】

用MATLAB 实现离散时间信号的表示和运算,掌握MATLAB 的基本命令和编程方法,为后续实验打基础。

【实验原理】

在数字信号处理中,所有的信号都是离散时间信号,因此应首先解决在MATLAB 中如何表示离散信号。

设一模拟信号经A/D 变换后,得到序列信号

}),1(),0(),1(,{)}({)( x x x n x n x -==

由于MATLAB 对下标的约定为从1开始递增,因此要表示)(n x ,一般应采用两个矢量,如:

]5,4,3,2,1,0,1,2,3[---=n ]1,2,5,4,0,2,3,1,1[-=y

这表示了一个含9个采样点的矢量:

)}5(,),1(),2(),3({)(x x x x n y ---=

【实验内容】

熟悉下面序列(信号)的产生方法及相关运算 1、 单位采样序列 2、 单位阶跃序列 3、 信号翻转 4、 信号相加 5、 信号折叠 6、 信号移位

【参考程序】

单位采样序列

1、impluse1.m (图1-1) n=10; x=zeros(1,n); x(1)=1;

plot(x,'*');

2、 impluse2.m (图1-2)

n=-5:5; x=[n==0]; stem(x,'*');

3、impluse3.m (图1-3) n=1:10; n0=3;

x=[(n-n0)==1]; plot(x,'*');

单位阶跃序列

1、steps1.m (图1-4) n=10; x=ones(1,n); plot(x,'*');

2、steps2.m (图1-5) n=10; x=ones(1,n); x(1)=0; x(2)=0;

图1-1 单位采样序列1

图1-2 单位采样序列2

图1-3 单位采样序列3

plot(x,'*');

3、steps3.m (图1-6) n=0:10; n0=4;

x=[(n-n0)>=0]; plot(x,'*');

信号翻转(中心对称)

flip.m (图1-7)

x=0:6; figure(1); subplot(211); plot(x,'*'); y=fliplr(x); subplot(212); plot(y,'*');

信号相加

Showsigadd.m (图1-8) clear all figure(1);

[x1 n1]=impseq(-4,-5,5);

图1-4 单位阶跃序列1

图1-5 单位阶跃序列2

图1-6 单位阶跃序列3

图1-7 信号翻转

subplot(3,1,1);

stem(n1,x1,'*');

title('信号相加演示');

ylabel('x1');

[x2 n2]=stepseq(0,-3,7);

subplot(3,1,2);

stem(n2,x2,'*');

ylabel('x2');

[y n]=sigadd(x1,n1,x2,n2);

subplot(3,1,3);

stem(n,y,'*');

ylabel('y=x1+x2)')

图1-8 信号相加信号折叠

%showfold.m(图1-9)

clear all

[x n]=impseq(2,-5,3);

subplot(2,1,1);

stem(n,x);

title('信号折叠演示');

[y,n]=sigfold(x,n);

subplot(2,1,2);

stem(n,y);

信号移位

%showsigshift.m(图1-10)

figure(1)

clear all

[x,n]=stepseq(0,-5,5);

subplot(211); stem(n,x,'*');

title('信号移位演示’); [y,n]=sigshift(x,n,3); subplot(212) stem(n,y);

【思考题】

1、用MATLAB 实现信号的相加、移位、反转运算。

2、用MATLAB 计算信号的能量。

1-9 信号折叠

图1-10 信号移位

实验二 时域采样定理

【实验目的】

1、掌握奈奎斯特抽样定理的含义,以及在实际应用中需要注意的问题。

2、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。

【实验原理】

1、理想抽样

信号连续信号)(t x a 经过时间间隔为T 的均匀采样后,得到的理想抽样信号)(t x a

可表示为

)()()(t t x t x T a a δ?=

其傅里叶变换为

∑∞

-∞

=-=

k a a T

jk

j X

T

j X )2(1

)(πΩΩ 可见,一个连续时间信号经过理想抽样后,其频谱将以抽样频率s πΩ2=为间隔而重复,这就是频谱产生周期延拓。如果信号的最高频谱h Ω超过2s Ω,则各周期延拓分量产生频谱的交叠,称为混叠现象。

要想抽样后能够不失真地还原出原信号,则抽样频率必须大于两倍信号谱的最高频率()2h s Ω>Ω,这就是奈奎斯特抽样定理。 2、抽样恢复

如果满足奈奎斯特抽样定理,即信号谱的最高频率小于折叠频率,则抽样后不产生频谱混叠,有

)2

()(1

)(s

a a j X T

j X ΩΩΩΩ<

=

故将)(Ωj X a

通过以下理想低通滤波器:

就可得到原信号频谱

)()()()(ΩΩΩΩj X j H j X j Y a a a =?=

???

?

???≥

<=)

2

(0)2

()(s

s

T

j H ΩΩΩΩΩ

所以输出端即为原模拟信号

)()(t x t y a a =

【实验内容】

用实验的方法验证抽样定理。对下面连续信号:

0()sin()()at a x t Ae t u t -=Ω

进行采样,可得到采样序列

)()sin()()(0n u nT Ae nT x n x nT a a Ωα-==

其中A 为幅度因子,α为衰减因子,0Ω是模拟角频率,T 为采用间隔。这些参数都要在实验过程中由键盘输入,产生不同的)(t x a 和)(n x a 。

产生采样信号序列)(n x a ,使A=144.128,πα250=,π250=0Ω ,

图2—1给出了连续信号)(t x a 的幅频特性曲线,由此图可以确定对)(t x a 应采用的采样频率。

1、取采样频率

KHz s

f 1=,即T =1ms .观察所得采样()a x n 的幅频特性|)(|ωj e X 和

图2-1中的|)(|jf X a ,在折叠频率附近有无明显差别。应当注意,实验中所得频谱是用序列()a x n 的傅里叶变换公式求得的,所以在频率度量上存在关系:T Ωω=为数字频率,Ω为模拟频率。

2、改变采样频率,Hz s

f 300= ,观察|)(|

ωj e X 的变化,并作记录(打印曲线);

进一步降低采样频率,

Hz

s f 200= ,观察频谱混叠是否明显存在,说明原因,并记

录(打印)这时的|)(|ωj e X 曲线。

3、变采样频率,

KHz s f 2= ,观察|)(|

ωl e X 的变化,并作记录(打印曲线);

观察过采样时的曲线,并记录(打印)这时的|)

| j e

X曲线。

(

【思考题】

采样频率不同时,相应理想采样序列的傅里叶变换频谱的数字频率刻度是否都相同。它们所对应的模拟频率是否相同?为什么?

实验三 离散时间系统

【实验目的】

1、熟悉时域离散系统的时域特性。

2、利用卷积方法观察分析系统的时域特性。

3、掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。

【实验原理】

离散信号和系统在时域均可用序列来表示。序列图形给人以形象直观的印象,他可加深我们对信号和系统的时域特征的理解。本实验将观察分析几种信号及系统的时域特性。

为了在数字计算机上观察分析各种序列的频域特性,通常对)

(ωj e X 在]2,0[π上

进行M 点采样来观察分析。对长度为N 的有限长序列x(n),有

∑-=-=

1

)()(N n n

j j k k

e

m x e

X ωω (3-1)

其中 1,1,02-==

M k k M

k πω

通常M 应该取得大一些,以便观察谱的细节变化。取模|)(k j e X ω|可绘出幅频特性曲线。

一个时域离散线性非移变系统的输入/输出关系为

y(n)=x(n)*h(n)=∑-∞

-∞=m m n h m x )()( (3-2)

这里,y(n)为系统的输出序列,x(n)为输入序列。h(n)、x(n)可以无限长,也可以是有限长。为了计算机绘图观察方便,主要讨论有限长情况。如果h(n)和x(n)的长度分别为N 和M ,则y(n)的长度为L=N+M-1。这样,(3-2)式所描述的卷积运算就是序列移位、相乘和累加的过程。上述卷积运算也可以在频域实现

)()()(ωωωj j j e H e X e Y ?= (3-3)

式(3-3式右边的相乘是在各频域点上的频谱值相乘。

【实验内容】

一、认真复习离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读本实验原理。

二、编制实验用相关子程序。

①信号产生子程序,用于产生实验中要用到的下列信号序列: a.单位采样序列:)()(n n x a δ= b.矩形序列: 10),

()(==N n R n x N b

②系统单位脉冲响应序列产生子程序。本实验要用到两种FIR 系统。

a. 10()()a h n R n =

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

③有限长序列线性卷积子程序,用于完成两个给定长度的序列的卷积。可以直接调用MATLAB 语言中的卷积函数conv 。conv 用于两个有限长序列的卷积,它假定两个序列都从n=0开始。调用格式如下:

y=(,)conv x h

其中参数x 和y 是两个已赋值的行向量序列。

三、在完成编制上述子程序的基础上,完成时域离散信号、系统和系统响应分析。

1、观察信号)(n x a 和系统()b h n 的时域和频域特性;利用线性卷积求得信号

()b x n 通过系统()b h n 的响应y(n),比较所求响应y(n)和()b h n 的时域及频域特性,

注意它们之间有无差别,绘图说明,并用所学理论解释所得结果。

2、观察系统)(n h a 对信号)(n x b 的响应特性。利用线性卷积求系统响应y(n),并判断y(n)图形及其非零值序列长度是否与理论结果一致。调用序列傅里叶变换数值计算子程序,求得)(k j e Y ω,观察|)(|k j e Y ω特性曲线,定性判断结果的正确性。改变

)(n x b 的长度,取N=5,重复该实验。注意参数变化的影响,说明变化前后的差异,

并解释所得结果。

3、卷积定理的验证。对信号)(n h a 和分别求出其频谱,按(3-3)式计算:

)()()(k k k j b j b j e H e X e Y ωωω?=

并绘出|)(|k j e Y ω曲线与直接对y(n)进行傅里叶变换所得幅频特性进行比较,验证时域卷积定理。 【思考题】

1、试用MATLAB 编写卷积函数y(n)=conv(x,n)。

2、在卷积定理验证的实验中,如果选用不同的频率采样点数M 值,例如,选M=10和M=20,分别做序列的傅里叶变换,求得

=?=k e H e X e Y k k k j b j a j )

()()(ωωω0,1,…,M-1

所得结果之间有无差异?为什么?

实验四 线性卷积与圆周卷积

【实验目的】

理解离散序列的线性卷积与圆周卷积的原理,比较其相同点和不同点,掌握线性卷积与圆周卷积的计算步骤和计算方法,能熟练使用MATLAB 的相关命令。

【实验原理】

1.线性卷积

设两序列为)(n x 和)(n h ,则)(n x 和)(n h 的线性卷积定义为

)()()()()(n h n x m n h m x n y *=∑-=+∞

-

卷积和的运算在图形表示上可分为4步(图4-1):

(1)翻褶:先在哑变量坐标m 上做出x(m)和h(m),将h(m)以m=0的垂直轴为对称轴翻褶成h(-m)。

(2)移位:将h(-m)移位,即得h(n-m)。当n 为正整数时,右移n 位。当n 为负整数时,左移n 位。

(3)相乘:再将h(n-m)和x(m)的相同m 值的对应点值相乘。

(4)相加:把以上所有对应点的乘积叠加起来,即得y(n)值。

注意:对于得到的结果仍然是一个序列,若x(n)的长度是N ,h(n)的长度是M ,则y(n)的长度是N+M-1。 2.圆周卷积

设两序列为x(n)和h(n),则x(n)和h(n)的圆周卷积和定义为

)())(()()()()(10n R m n h m x n h n x n y N N m N ??

?

???-=?=∑-=

=)())(()(10n R m n x m h N N m N ??

?

???-∑-=

圆周卷积过程(图4-2):

(1)补零:若x(n)的长度是N ,h(n)的长度是M ,取H>=max(N,M),对序列补零至点H 。 (2)周期延拓:先在哑变量坐标m 上做出x(m)和h(m),将h(m)周期延拓。 (3)翻褶,取主值序列:对h(m)以m=0的垂直轴为对称轴翻褶成h(-m),然后取主值序列。

(4)圆周移位:对得到的序列进行圆周移位。

(5)相乘相加:与x(m)对应项相乘,并累加,得到y(n)。 3.线性卷积与圆周卷积的关系

时域的圆周卷积在频域上相当于两序列的DFT 相乘,因而可以采用DFT 的快速算法。它与线性卷积相比,计算速度可以大大加快。但是,一般实际问题都是线性卷积运算。 4.结论

若两序列为x(n)和h(n),长度分别为N 、M ;则其线性卷积的长度为N+M-1,而圆周

卷积的长度为K=max(N,M)。只有L>=N1+N2-1时,则L 点圆周卷积和线性卷积相等。

【实验内容】

(1)计算下面信号的线性卷积、圆周卷积,比较什么情况下二者相等。

)(9.0)()]

10()([)(n u n h n u n u n x n =--=

(2)用FFT 快速运算上述线性卷积。

【思考题】

自己给定两个序列,仿照上面的例程,实现其线性卷积和圆周卷积,并比较其结果。

图4-2 圆周卷积运算

实验五 用FFT 作谱分析

【实验目的】

1、进一步加深DFT 算法原理和基本性质的理解(因为FFT 只是DFT 的一种快速算法,所以FFT 的运算结果必然满足DFT 的基本性质)。

2、熟悉FFT 算法原理和FFT 子程序的应用。

3、学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT 。

【实验步骤】

1、复习DFT 的定义、性质和用DFT 作谱分析的有关内容。

2、复习FFT 算法原理与编程思想,并对照DIT-FFT 运算流图和程序框图,编写FFT 子程序。

3、编制信号产生子程序,产生以下典型信号供谱分析用:

)()(41n R n x =

???

??≤≤-≤≤+=n n n

n n n x 其它0748301

)(2 ??

?

??≤≤-≤≤-=n

n n n n n x 其它0743

304)(3 n n x 4cos )(4π

=

n n x 8

sin

)(5π

=

t t t n x πππ20cos 16cos 8cos )(6++=

应当注意,如果给出的是连续信号,则首先要根据其最高频率确定采样速率s f 以及由频率分辨率选择采样点数N ,产生对应序列)(n x 。对周期序列,最好截取周期的整数倍进行谱分析,否则有可能产生较大的分析误差。请根据DFT 的隐含周期

性思考这个问题。

【实验内容】

按照图5-1所给程序框图,完成下述实验内容:

1、对所给信号逐个进行谱分析。下面给出针对各信号的FFT 变换区间N 以及对连续信号)(6t x 的采样频率

s

f ,供实验时参考。

)(1n x ,)(2n x ,)(3n x ,)(4n x ,)(5n x : N=8, 16

Hz f t x s 64:)(6=,

N =16, 32, 64

2、令)()()(54n x n x n x +=,用FFT 计算8点和16点离散傅里叶变换。

【思考题】

1、在N=8时,)(2n x 和)(3n x 的幅频特性会相同吗?为什么?N=16呢?

2、如果周期信号的周期预先不知道,如何用FFT 进行谱分析?

图5-1 程序框图

实验六 用双线性变换法设计IIR 数字滤波器

【实验目的】

1、熟悉用双线性变换法设计IIR 数字滤波器的原理与方法。

2、掌握数字滤波器的计算机仿真方法。

3、通过观察对实际心电图信号的滤波作用,获得数字滤波的感性认识。

【实验内容】

1、用双线性变换法设计一个巴特沃斯低通IIR 数字滤波器。设计指标参数为:在通带内频率低于0.2π时,最大衰减小于1dB ;在阻带内[0.3π,π]频率区间上,最小衰减低于15db.

2、以0.02π为采样间隔,打印出数字滤波器在频率区间[0,π/2]上的幅频响应特性曲线。

3、用所设计的滤波器对实际心电图信号采样序列(在本实验后面给出)进行仿真滤波处理,并分别打印出滤波前后的心电图信号波形图,观察总结滤波作用与效果。

【实验步骤】

1、复习有关巴特沃斯模拟滤波器设计和用双线性变换法设计IIR 数字滤波器的内容,按照教材例6.4.2,用双线性变换法设计数字滤波器系统函数H(z).例6.4.2中已求出满足本实验要求的数字滤波器系统函数:

)

358.0010.11)(7051.0268.11()1(0007378.0)(21216

1-----+-+-+=

z z z z z z H

2

2155.019044.011

-+--?

z z

∏==

3

1

)

()(k k z H

z H

式中 3,2,1,

1)21()(2

121=--++=

----k z C z B z z A z H k k k

其系数为:

2155

.09044

.03583.00106.17051.02686.109036.0332211-==-==-===C B C B C B A

由上式可见,滤波器H(z)由三个二阶滤波器

1

()

H z、

2

()

H z和

3

()

H z级联组成,如图5-1所示。

2、编写滤波器仿真程序,计算H(z)对心电图信号采样序列x(n)的响应序列y(n)。

3、在通用计算机上运行仿真滤波程序,并调用通用绘图子程序,完成实验内容2和3。

心电图信号采样序列x(n)如下所示:

人体心电图信号在测量过程中往往受到工业高频干扰,所以必须经过低通滤波器处理后,才能作为判断心脏功能的有用信息。下面给出一实际心电图信号采样序列样本()

x n,其中存在高频干扰。在试验中,以()

x n作为输入序列,滤除其中的干扰成分。【思考题】

用双线性变换法设计数字滤波器过程中,变换公式为

1

1

1

2

1

z

s

T z

-

-

-

=

+

其中T的取值,对设计结果有无影响?为什么?

图5-1 滤波器H(z)的组成

)

(

)

(3n

y

n

y=

)

(2n

y

)

(1n

y

)

(n

x

)

(z

H

)

(1z

H)

(2z

H)

(3z

H

数字信号处理实验一

一、实验目的 1. 通过本次实验回忆并熟悉MATLAB这个软件。 2. 通过本次实验学会如何利用MATLAB进行序列的简单运算。 3. 通过本次实验深刻理解理论课上的数字信号处理的一个常见方法——对时刻n的样本附近的一些样本求平均,产生所需的输出信号。 3. 通过振幅调制信号的产生来理解载波信号与调制信号之间的关系。 二、实验内容 1. 编写程序在MATLAB中实现从被加性噪声污染的信号中移除噪声的算法,本次试验采用三点滑动平均算法,可直接输入程序P1.5。 2. 通过运行程序得出的结果回答习题Q1.31-Q1.33的问题,加深对算法思想的理解。 3. 编写程序在MATLAB中实现振幅调制信号产生的算法,可直接输入程序P1.6。 4. 通过运行程序得出的结果回答习题Q1.34-Q1.35的问题,加深对算法思想的理解。 三、主要算法与程序 1. 三点滑动平均算法的核心程序: %程序P1.5 %通过平均的信号平滑 clf; R=51; d=0.8*(rand(R,1)-0.5);%产生随噪声 m=0:R-1; s=2*m.*(0.9.^m);%产生为污染的信号 x=s+d';%产生被噪音污染的信号 subplot(2,1,1); plot(m,d','r-',m,s,'g--',m,x,'b-.');

xlabel('时间序号n');ylabel('振幅'); legend('d[n]','s[n]','x[n]'); x1=[0 0 x];x2=[0 x 0];x3=[x 0 0]; y=(x1+x2+x3)/3; subplot(2,1,2); plot(m,y(2:R+1),'r-',m,s,'g--'); legend('y[n]','s[n]'); xlabel('时间序号n');ylabel('振幅'); 2. 振幅调制信号的产生核心程序:(由于要几个结果,因此利用subplot函数画图) %程序P1.6 %振幅调制信号的产生 n=0:100; m=0.1;fH=0.1;fL=0.01; m1=0.3;fH1=0.3;fL1=0.03; xH=sin(2*pi*fH*n); xL=sin(2*pi*fL*n); y=(1+m*xL).*xH; xH1=sin(2*pi*fH1*n); xL1=sin(2*pi*fL1*n); y1=(1+m1*xL).*xH; y2=(1+m*xL).*xH1; y3=(1+m*xL1).*xH; subplot(2,2,1); stem(n,y); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.1;fH=0.1;fL=0.01;'); subplot(2,2,2); stem(n,y1); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.1;fL=0.01;'); subplot(2,2,3); stem(n,y2); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.3;fL=0.01;'); subplot(2,2,4); stem(n,y3); grid;

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

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

实验一离散时间信号分析 一、实验目的 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 实验中所产生的正弦序列的频率是多少?是否是周期序列?

数字信号处理实验一

实验一 离散时间信号分析 班级 信息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)完成实验报告。 五、实验结果 六、实验总结

《数字信号处理》课程研究性学习报告解读

《数字信号处理》课程研究性学习报告 指导教师薛健 时间2014.6

【目的】 (1) 掌握IIR 和FIR 数字滤波器的设计和应用; (2) 掌握多速率信号处理中的基本概念和方法 ; (3) 学会用Matlab 计算小波分解和重建。 (4)了解小波压缩和去噪的基本原理和方法。 【研讨题目】 一、 (1)播放音频信号 yourn.wav ,确定信号的抽样频率,计算信号的频谱,确定噪声信号的频率范围; (2)设计IIR 数字滤波器,滤除音频信号中的噪声。通过实验研究s P ,ΩΩ,s P ,A A 的选择对滤波效果及滤波器阶数的影响,给出滤波器指标选择的基本原则,确定你认为最合适的滤波器指标。 (3)设计FIR 数字滤波器,滤除音频信号中的噪声。与(2)中的IIR 数字滤波器,从滤波效果、幅度响应、相位响应、滤波器阶数等方面进行比较。 【设计步骤】 【仿真结果】

【结果分析】 由频谱知噪声频率大于3800Hz。FIR和IIR都可以实现滤波,但从听觉上讲,人对于听觉不如对图像(视觉)明感,没必要要求线性相位,因此,综合来看选IIR滤波器好一点,因为在同等要求下,IIR滤波器阶数可以做的很低而FIR滤波器阶数太高,自身线性相位的良好特性在此处用处不大。【自主学习内容】 MATLAB滤波器设计 【阅读文献】 老师课件,教材 【发现问题】(专题研讨或相关知识点学习中发现的问题): 过渡带的宽度会影响滤波器阶数N 【问题探究】 通过实验,但过渡带越宽时,N越小,滤波器阶数越低,过渡带越窄反之。这与理论相符合。 【仿真程序】 信号初步处理部分: [x1,Fs,bits] = wavread('yourn.wav'); sound(x1,Fs); y1=fft(x1,1024); f=Fs*(0:511)/1024; figure(1) plot(x1) title('原始语音信号时域图谱'); xlabel('time n'); ylabel('magnitude n'); figure(2) freqz(x1) title('频率响应图') figure(3) subplot(2,1,1); plot(abs(y1(1:512))) title('原始语音信号FFT频谱') subplot(2,1,2); plot(f,abs(y1(1:512))); title(‘原始语音信号频谱') xlabel('Hz'); ylabel('magnitude'); IIR: fp=2500;fs=3500; wp = 2*pi*fp/FS; ws = 2*pi*fs/FS; Rp=1; Rs=15;

数字信号处理实验

实验一 离散傅里叶变换(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)

数字信号处理课程实验报告4

数字信号处理课程实验报告 实验名称FIR数字滤 班级姓名 波器设计 教师姓名实验地点实验日期 一、实验内容 1、设计一个最小阶次的低通FIR数字滤波器,性能指标为:通带0Hz~1500Hz,阻带截 止频率2000Hz,通带波动不大于1%,阻带波动不大于1%,采样频率为8000Hz; 2、用一个仿真信号来验证滤波器的正确性(注意:要满足幅度要求和线性相位特性)。 二、实验目的 1、利用学习到的数字信号处理知识解决实际问题; 2、了解线性相位滤波器的特殊结构; 3、熟悉FIR数字滤波器的设计方法。 三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况) 计算机一台(安装MATLAB6.5版本或以上版本) 四、实验记录(以下1~5项必须完成,第6项为选择性试做) 1.原理基础 令希望设计的滤波器的传输函数是H(ejw,hd(n)是与其对应的单位脉冲响应。一般情况下,由Hd(ejw)求出hd(n),然后由Z变换求出滤波器的系统函数。但是通常Hd(ejw)在边界频率处有不连续点,这使得hd(n)是无限长的非因果序列,所以实际是不能实现的。为了构造一个长度为N的线性相位滤波器,可以将hd(n)截取一段来近似,并且根据线性相位的特点,需要保证截取后的序列关于(N-1)/2对称。设截取的一段为h(n),则 Wr(n)称为矩形窗函数。 当hd(n的对称中心点取值为(N-1)/2时,就可以保证所设计的滤波器具有线性相位。 2 实验流程

1.信号的谱分析 2.信号的采样 3.信号的恢复 3源程序代码 clc; clear all; close all; fs=700;%采样频率 f=[30 40];%截止频率 a=[1 0]; dev=[0.01 0.1]; % dev纹波 [n,fo,ao,w]=remezord(f,a,dev,fs);%n滤波器阶数fo过渡带起止频率ao频带内幅度————firpmord b=remez(n,fo,ao,w);%firpm b=b.*blackman(length(b))'; b=b; a=1; figure(1) % [H,W]=freqz(b,1,1024,Fs); % plot(W,20*log10(abs(H))); freqz(b,1,1024,fs);grid title('滤波器') grid %%%%%%%%%%%%%%%% fc=28; fcl1=50; fcl2=100; fcl3=150; N=1024; n=1:N; % x=2*cos(2*pi*fc/fs*n)+j*2*sin(2*pi*fc/fs*n)+cos(2*pi*fcl/fs*n)+j*sin(2*pi*fcl/fs*n)+1*r and(1,N); xc=2*cos(2*pi*fc/fs*n); x=2*cos(2*pi*fc/fs*n)+2*cos(2*pi*fcl1/fs*n)+2*cos(2*pi*fcl2/fs*n)+0.1*rand(1,N); % x=2*cos(2*pi*fc/fs*n); xfft=abs(fft(x,N));

数字信号处理实验1,2,3,4

实验一 连续时间系统的时域和频域分析相关MATLAB 函数1.设描述连续时间系统的微分方程为:)()()()()()()()(01)1(1)(01)1(1)(t f b t f b t f b t f b t y a t y a t y a t y a m m m m n n n n +'+++=+'+++---- 则可用向量和表示该系统,即 a b ] ,,,,[011a a a a a n n -=],,,,[011b b b b b m m -=注意,向量和的元素一定要以微分方程时间求导的降幂次序排列,且缺项要用0补齐。a b 如微分方程)()()(2)(3)(t f t f t y t y t y +''=+'+''表示该系统的向量为 ]2 3 1[=a ]1 0 1[=b (1)求解冲激响应:impulse()函数impulse()函数有以下四种调用格式: ① impulse(b,a) 该调用格式以默认方式绘制由向量和定义的连续时间系统的冲激响应的时域波形。a b ② impulse(b,a,t)该调用格式绘制由向量和定义的连续时间系统在时间范围内的冲激响应的时a b t ~0域波形。③ impulse(b,a, t1:p:t2)该调用格式绘制由向量和定义的连续时间系统在时间范围内,且以时间间a b 21~t t 隔均匀抽样的冲激响应的时域波形。p ④ y=impulse(b,a,t1:p:t2)该调用格式并不绘制系统冲激响应的波形,而是求出由向量和定义的连续时间系a b 统在时间范围内以时间间隔均匀抽样的系统冲激响应的数值解。21~t t p (2)求解阶跃响应:step()函数 step()函数也有四种调用格式:① step(b,a) ② step(b,a,t) ③ step(b,a, t1:p:t2) ④ y=step(b,a,t1:p:t2) 上述调用格式的功能与impulse()函数完全相同。

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

数字信号处理实验答案 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('随机序列');

数字信号处理实验三

实验三:离散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 单位冲激序列

数字信号处理实验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))'); 单位脉冲响应曲线 幅频和相频特性曲线 第二题结果:

数字信号处理实验报告(实验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;

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

本科生实验报告 实验课程数字信号处理基础 学院名称地球物理学院 专业名称地球物理学 学生姓名 学生学号 指导教师王山山 实验地点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

郑州大学数字信号处理课程设计报告

实验一:基于DFT的数字谱分析以及可能出现的问题 一、实验目的: 1.进一步加深对DFT的基本性质的理解。 2.掌握在MATLAB环境下采用FFT函数编程实现DFT的语句用法。 3.学习用DFT进行谱分析的方法,了解DFT谱分析中出现的频谱泄露和栅栏效应现 象,以便在实际中正确应用DFT。 二、实验步骤: 1.复习DFT的定义、物理含义以及主要性质。 2.复习采用DFT进行谱分析可能出现的三个主要问题以及改善方案。 3.按实验内容要求,上机实验,编写程序。 4.通过观察分析实验结果,回答思考题,加深对DFT相关知识的理解。 三、上机实验内容: 1.编写程序产生下列信号供谱分析用: 离散信号: x1=R10(n) x2={1,2,3,4,4,3,2,1},n=0,1,2,3,4,5,6,7 x3={4,3,2,1, 1,2,3,4},n=0,1,2,3,4,5,6,7 连续信号: x4=sin(2πf1t)+sin(2πf2t) f1=100Hz, f2=120Hz,采样率fs=800Hz 2.对10点矩形信号x1分别进行10点、16点、64点和256点谱分析,要求256点 频谱画出连续幅度谱,10点、16点和64点频谱画出离散幅度谱,观察栅栏效应。 3.产生信号x2和x3分别进行8点、16点谱分析,画出离散幅度谱,观察两个信 号的时域关系和幅度谱的关系。 4.对双正弦信号x4以采样率fs=800Hz抽样,生成离散双正弦信号并画出连续波形; 对离散双正弦信号进行时域截断,截取样本数分别为1000、250、50。对不同样本的双正弦信号分别进行1024点谱分析,画出连续幅度谱,观察频谱泄露现象。

数字信号处理实验1认识实验

实验1认识实验-MATLAB语言上机操作实践 一、实验目的 ㈠了解MATLAB语言的主要特点、作用。 ㈡学会MATLAB主界面简单的操作使用方法。 ㈢学习简单的数组赋值、运算、绘图、流程控制编程。 二、实验原理 ㈠简单的数组赋值方法 MATLAB中的变量和常量都可以是数组(或矩阵),且每个元素都可以是复数。 在MATLAB指令窗口输入数组A=[1 2 3;4 5 6;7 8 9],观察输出结果。然后,键入:A(4,2)= 11 键入:A (5,:) = [-13 -14 -15] 键入:A(4,3)= abs (A(5,1)) 键入:A ([2,5],:) = [ ] 键入:A/2 键入:A (4,:) = [sqrt(3) (4+5)/6*2 –7] 观察以上各输出结果。将A式中分号改为空格或逗号,情况又如何?请在每式的后面标注其含义。 2.在MATLAB指令窗口输入B=[1+2i,3+4i;5+6i ,7+8i], 观察输出结果。 键入:C=[1,3;5,7]+[2,4;6,8]*i,观察输出结果。 如果C式中i前的*号省略,结果如何? 键入:D = sqrt (2+3i) 键入:D*D 键入:E = C’, F = conj(C), G = conj(C)’ 观察以上各输出结果, 请在每式的后面标注其含义。 3.在MATLAB指令窗口输入H1=ones(3,2),H2=zeros(2,3),H3=eye(4),观察输出结果。 ㈡、数组的基本运算 1.输入A=[1 3 5],B= [2 4 6],求C=A+B,D=A-2,E=B-A 2.求F1=A*3,F2=A.*B,F3=A./B,F4=A.\B, F5=B.\A, F6=B.^A, F7=2./B, F8=B.\2 *3.求B',Z1=A*B’,Z2=B’*A 观察以上各输出结果,比较各种运算的区别,理解其含义。 ㈢、常用函数及相应的信号波形显示 例1:显示曲线f(t)=2sin(2πt),(t>0) ⅰ点击空白文档图标(New M-file),打开文本编辑器。 ⅱ键入:t=0:0.01:3; (1) f=2*sin(2*pi*t); (2) plot(t,f); title(‘f(t)-t曲线’); xlabel(‘t’),ylabel(‘f(t)’);

数字信号处理基础实验报告 (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:频谱分析与显示 一、实验目的 初步认识频谱分析

《数字信号处理》课程实验题目

计电学院《数字信号处理》课程实验 适用专业:电子通信工程专业;实验学时:9 学时 一、实验的性质、任务和基本要求 (一)本实验课的性质、任务 数字信号处理课程实验是数字信号处理课程的有效的补充部分,通过实验,使学生巩固和加深数字信号处理的理论知识的理解和掌握,在实验过程中了解简单但是完整的数字信号处理的工程实现方法和流程。通过实践进一步加强学生独立分析问题和解决问题的能力、实际动手能力、综合设计及创新能力的培养。 (二)基本要求 掌握数字信号处理基本理论知识和滤波器设计及应用。 (三)实验选项

二、实验教学内容 实验一 1、实验目的和要求 1)加深理解时域采样定理、体会使用MATLAB的离散FT函数fft( )来解决涉及模拟信号的问题; 2)加深理解对带通信号的采样特性,学会采用MATLAB解决该问题; 3)加深理解在频率采样法中,过渡点对所设计滤波器特性的影响。 2、实验要求 1)提供MATLAB程序,画出每个步骤的曲线图; 2)写实验报告,包含有对所得结果进行分析和说明。 第一组:张毅雷凌峰白法聪覃昱滔刘强何新文 第二组:邓志强林盛勇李日胜黎少锋梁聪杨晨 实验二 1、实验目的和要求 (1)加深理解采用数字信号处理方法对模拟信号处理的过程、掌握使用MATLAB处理的方法;对一段音乐信号进行处理和输出;要求画出滤波前后语音信号时域波形、信号和滤波器的幅度频率特性曲线、相位频率特性曲线; (2)加深对截断效应的理解; (3)掌握使用MATLAB设计滤波器,并对语音信号处理的方法。对一段音乐信号进行处理和输出;要求画出滤波前后语音信号时域波形、信号和滤波器的幅度频率特性曲线、相位频率特性曲线。 2、实验要求 1)提供MATLAB程序,画出每个步骤的曲线图; 2)写实验报告,包含有对所得结果进行分析和说明。 第九组:汪涛张汉毅巫金敏张经中柳泽举 第六组:罗涛梁乐杰黄乃生 实验三 1、实验目的和要求 掌握采用MATLAB数字滤波器设计软件编制方法。软件要求在界面内有不同类型(高通低通带通带阻)滤波器的选择、或者只对低通滤波器采用不同方法设

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

数字信号处理上机实验 答案 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函数。也可

相关文档
相关文档 最新文档