河北大学数字信号处理实验三报告(含思考题)

合集下载

数字信号处理实验报告 3

数字信号处理实验报告 3

数字信号处理实验报告姓名:班级:通信学号:实验名称:频域抽样定理验证实验类型:验证试验指导教师:实习日期:2013.频域采样定理验证实验一. 实验目的:1. 加深对离散序列频域抽样定理的理解2.了解由频谱通过IFFT 计算连续时间信号的方法3.掌握用MATLAB 语言进行频域抽样与恢复时程序的编写方法 4、用MATLAB 语言将X(k)恢复为X(z)及X(e jw )。

二. 实验原理:1、1、频域采样定理: 如果序列x(n)的长度为M ,频域抽样点数为N ,则只有当频域采样点数N ≥M 时,才有x N (n)=IDFT[X(k)]=x(n),即可由频域采样X(k)无失真的恢复原序列 x(n)。

2、用X(k)表示X(z)的内插公式:∑-=-----=10111)(1)(N k kNNzWz k X Nz X内插函数: zWzkNNN z 1k111)(-----=ϕ频域内插公式:∑-=-=10)2()()(N K j k Nk X e X πωϕω频域内插函数:e N j N N )21()2sin()2sin(1)(--=ωωωωϕ三. 实验任务与步骤:实验一:长度为26的三角形序列x(n)如图(b)所示,编写MATLAB 程序验证频域抽样定理。

实验二:已知一个时间序列的频谱为X(e jw )=2+4e -jw +6e -j2w +4e -j3w +2e -j4w分别取频域抽样点数N为3、5和10,用IPPT计算并求出其时间序列x(n),用图形显示各时间序列。

由此讨论原时域信号不失真地由频域抽样恢复的条件。

实验三:由X32(k)恢复X(z)和X(e jw)。

四.实验结论与分析:实验一:源程序:M=26;N=32;n=0:M; %产生M长三角波序列x(n)xa=0:floor(M/2);xb= ceil(M/2)-1:-1:0; xn=[xa,xb];Xk=fft(xn,512); %1024点FFT[x(n)], 用于近似序列x(n)的TFX32k=fft(xn,32); %32点FFT[x(n)]x32n=ifft(X32k); %32点IFFT[X32(k)]得到x32(n)X16k=X32k(1:2:N); %隔点抽取X32k得到X16(K)x16n=ifft(X16k,N/2); %16点IFFT[X16(k)]得到x16(n)subplot(3,2,2);stem(n,xn,'.');box ontitle('(b) 三角波序列x(n)');xlabel('n');ylabel('x(n)');axis([0,32,0,20])k=0:511;wk=2*k/512;subplot(3,2,1);plot(wk,abs(Xk));title('(a)FT[x(n)]');xlabel('\omega/\pi');ylabel('|X(e^j^\omega)|');axis([0,1,0,200])k=0:N/2-1;subplot(3,2,3);stem(k,abs(X16k),'.');box ontitle('(c) 16点频域');xlabel('k');ylabel('|X_1_6(k)|');axis([0,8,0,200])n1=0:N/2-1;subplot(3,2,4);stem(n1,x16n,'.');box ontitle('(d) 16点IDFT[X_1_6(k)]');xlabel('n');ylabel('x_1_6(n)');axis([0,32,0,20])k=0:N-1;subplot(3,2,5);stem(k,abs(X32k),'.');box ontitle('(e) 32点频域采样');xlabel('k');ylabel('|X_3_2(k)|');axis([0,16,0,200])n1=0:N-1;subplot(3,2,6);stem(n1,x32n,'.');box ontitle('(f) 32点IDFT[X_3_2(k)]');xlabel('n');ylabel('x_3_2(n)');axis([0,32,0,20])结果如下所示:实验一分析:序列x(n)的长度M=26,由图中可以看出,当采样点数N=16<M时,x16(n)确实等于原三角序列x(n)以16为周期的周期延拓序列的主值序列。

数字信号处理实验报告

数字信号处理实验报告

实验一 信号、系统及系统响应一、实验目的1、熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对时域采样定理的理解。

2、熟悉离散信号和系统的时域特性。

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

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

二、 实验原理1.理想采样序列:对信号x a (t)=A e −αt sin(Ω0t )u(t)进行理想采样,可以得到一个理想的采样信号序列x a (t)=A e −αt sin(Ω0nT ),0≤n ≤50,其中A 为幅度因子,α是衰减因子,Ω0是频率,T 是采样周期。

2.对一个连续时间信号x a (t)进行理想采样可以表示为该信号与一个周期冲激脉冲的乘积,即x ̂a (t)= x a (t)M(t),其中x ̂a (t)是连续信号x a (t)的理想采样;M(t)是周期冲激M(t)=∑δ+∞−∞(t-nT)=1T ∑e jm Ωs t +∞−∞,其中T 为采样周期,Ωs =2π/T 是采样角频率。

信号理想采样的傅里叶变换为X ̂a (j Ω)=1T ∑X a +∞−∞[j(Ω−k Ωs )],由此式可知:信号理想采样后的频谱是原信号频谱的周期延拓,其延拓周期为Ωs =2π/T 。

根据时域采样定理,如果原信号是带限信号,且采样频率高于原信号最高频率分量的2倍,则采样以后不会发生频率混叠现象。

三、简明步骤产生理想采样信号序列x a (n),使A=444.128,α=50√2π,Ω0=50√2π。

(1) 首先选用采样频率为1000HZ ,T=1/1000,观察所得理想采样信号的幅频特性,在折叠频率以内和给定的理想幅频特性无明显差异,并做记录;(2) 改变采样频率为300HZ ,T=1/300,观察所得到的频谱特性曲线的变化,并做记录;(3) 进一步减小采样频率为200HZ ,T=1/200,观察频谱混淆现象是否明显存在,说明原因,并记录这时候的幅频特性曲线。

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

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

实验一信号、系统及系统响应一、实验目的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定的理解。

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

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

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

二、实验原理采样的的过程既是连续信号离散化的过程。

采用单位冲击串进行采样,为使采样信号能不失真的还原为采样前的信号,根据奈奎斯特采样率,采样频率应该大于信号最高频率的2倍。

因为时域的采样既是对时域的离散化处理,时域离散频域会进行周期延拓,为了防止频域频谱混叠,必须满足奈奎斯特采样定律。

线性卷积的过程为:反褶,移位,相乘,相加。

设一个N1点的序列与一个N2的序列进行卷积则得到N1+N2-1点的序列。

时域卷积,对应频域的相乘。

序列的傅里叶变换即DTFT 。

具有的性质有: 线性,移位性,对偶性,等等。

三、实验内容及步骤1)分析采样序列的特性。

产生采样序列()a x n ,A 444.128=,a =,0Ω=。

a 、 取采样频率s f 1kHz =,即T 1ms =。

观察所采样()a x n 的幅频特性()j X e ω和)(t x a 的幅频特性()X j Ω在折叠频率处有无明显差别。

应当注意,实验中所得频谱是用序列的傅立叶变换公式求得的,所以在频率量度上存在关系:T ω=Ω。

b 、改变采样频率,s f 300Hz =,观察()j X eω的变化并做记录。

c 、 进一步降低采样频率,s f 200Hz =,观察频谱混叠是否明显存在,说明原因,并记录()j X e ω的幅频曲线。

上图是采用不同采样频率时所得到的序列及其对应的傅里叶变换,从图中可以看到,当采样频率比较低时,频谱会发生混叠,且频率越低,混叠现象越明显。

增大采样频率可以有效地防止混叠。

2) 离散信号、系统和系统响应分析。

a 、观察信号()b x n 和系统h ()b n 的时域和频域持性;利用线形卷积求信号()b x n 通过系统h ()b n 的响应y(n),比较所求响应y(n)和h ()b n 的时域及频域特性,注意它们之间有无差异,绘图说明,并用所学结论解释所得结果。

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

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

实验一 MATLAB 仿真软件的基本操作命令和使用方法实验容1、帮助命令使用 help 命令,查找 sqrt (开方)函数的使用方法;2、MATLAB 命令窗口(1)在MATLAB 命令窗口直接输入命令行计算31)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;t=0:pi/10:4*pi;y=10*sin(t);plot(t,y);plot(t,y,'-+r');grid>> xlabel('X'),ylabel('Y');>> title('Plot:y=10*sin(t)');>> text(14,10,'完整图形');实验二常见离散信号的MATLAB产生和图形显示实验容与步骤1. 写出延迟了np个单位的单位脉冲函数impseq,单位阶跃函数stepseq, n=ns:nf function [x,n]=impseq[np,ns,nf];function [x,n]=stepseq[np,ns,nf];2. 产生一个单位样本序列x1(n),起点为ns= -10, 终点为nf=20, 在n0=0时有一单位脉冲并显示它。

数字信号处理实验报告_完整版

数字信号处理实验报告_完整版

实验1 利用DFT 分析信号频谱一、实验目的1.加深对DFT 原理的理解。

2.应用DFT 分析信号的频谱。

3.深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。

二、实验设备与环境 计算机、MATLAB 软件环境 三、实验基础理论1.DFT 与DTFT 的关系有限长序列 的离散时间傅里叶变换 在频率区间 的N 个等间隔分布的点 上的N 个取样值可以由下式表示:212/0()|()()01N jkn j Nk N k X e x n eX k k N πωωπ--====≤≤-∑由上式可知,序列 的N 点DFT ,实际上就是 序列的DTFT 在N 个等间隔频率点 上样本 。

2.利用DFT 求DTFT方法1:由恢复出的方法如下:由图2.1所示流程可知:101()()()N j j nkn j nN n n k X e x n eX k W e N ωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑ 由上式可以得到:IDFTDTFT( )12()()()Nj k kX e X k Nωπφω==-∑ 其中为内插函数12sin(/2)()sin(/2)N j N x eN ωωφω--= 方法2:实际在MATLAB 计算中,上述插值运算不见得是最好的办法。

由于DFT 是DTFT 的取样值,其相邻两个频率样本点的间距为2π/N ,所以如果我们增加数据的长度N ,使得到的DFT 谱线就更加精细,其包络就越接近DTFT 的结果,这样就可以利用DFT 计算DTFT 。

如果没有更多的数据,可以通过补零来增加数据长度。

3.利用DFT 分析连续信号的频谱采用计算机分析连续时间信号的频谱,第一步就是把连续信号离散化,这里需要进行两个操作:一是采样,二是截断。

对于连续时间非周期信号,按采样间隔T 进行采样,阶段长度M ,那么:1()()()M j tj nT a a a n X j x t edt T x nT e ∞--Ω-Ω=-∞Ω==∑⎰对进行N 点频域采样,得到2120()|()()M jkn Na a M kn NTX j T x nT eTX k ππ--Ω==Ω==∑因此,可以将利用DFT 分析连续非周期信号频谱的步骤归纳如下: (1)确定时域采样间隔T ,得到离散序列(2)确定截取长度M ,得到M 点离散序列,这里为窗函数。

数字信号处理实验三报告

数字信号处理实验三报告

实验三:用双线性变换法设计IIR 数字滤波器1. 实验目的(1) 熟悉用双线性变换法设计IIR 数字滤波器的原理与方法。

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

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

2. 实验内容(1) 用双线性变换法设计一个巴特沃斯低通IIR 数字滤波器。

设计指标参数为:在通带内频率低于0.2π时,最大衰减小于1dB ;在阻带内[0.3π, π] 频率区间上,最小衰减大于15dB 。

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

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

3. 实验步骤(1) 复习有关巴特沃斯模拟滤波器设计和用双线性变换法设计IIR 数字滤波器的内容,按照“2. 实验内容(1)”的要求设计满足指标的数字滤波器函数H(z)。

现给出满足本实验要求的数字滤波器系统函数:H(z) =)2155.09044.01)(3583.00106.11)(7051.02686.11()1(0007378.021212161-------+-+-+-+z z z z z z z = ∏=31)(k k z H—— (3.1)式中 H k (z) = 21211)21(------++z C z B z z A k k , k = 1 , 2 , 3 —— (3.2) A = 0.09036B 1 = 1.2686 ,C 1 =-0.7051B 2 = 1.0106 ,C 2 =-0.3583B 3 = 0.9044 ,C 3 =-0.2155由 (3.1) 式和(3.2)式可见,滤波器H(z)由三个二阶滤波器H 1(z)、H 2(z)和H 3(z)级联组成,如图3.1 所示。

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

课程大作业——数字信号处理实验报告

课程大作业——数字信号处理实验报告

实验一 信号、系统及系统响应一.实验目的1.熟悉理想采样的性质,了解信号采用前后的频谱变化,加深对采样定理的理解。

2.熟悉离散信号和系统的时域特性。

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

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

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

对一个连续时间信号进行理想采样的过程可以表示为该信号和个周期冲激脉冲的乘积,即)()()(ˆt M t x t xa a = (1-1) 其中)(ˆt xa 是连续信号)(t x a 的理想采样,)(t M 是周期冲激脉冲 ∑+∞-∞=-=n nT t t M )()(δ (1-2)它也可以用傅立叶级数表示为:∑+∞-∞=Ω=n tjm s e T t M 1)( (1-3)其中T 为采样周期,T s /2π=Ω是采样角频率。

设)(s X a 是连续时间信号)(t x a 的双边拉氏变换,即有:⎰+∞∞--=dt e t xs X st aa )()( (1-4)此时理想采样信号)(ˆt xa 的拉氏变换为 ∑⎰+∞-∞=+∞∞--Ω-===m s a sta a jm s X T dt e t x s X )(1)(ˆ)(ˆ (1-5)作为拉氏变换的一种特例,信号理想采样的傅立叶变换[]∑+∞-∞=Ω-Ω=Ωm s a a m j X T j X )(1)(ˆ (1-6)由式(1-5)和式(1-6)可知,信号理想采样后的频谱是原信号频谱的周期延拓,其延拓周期等于采样频率。

根据Shannon 采样定理,如果原信号是带限信号,且采样频率高于原信号最高频率分量的2倍,则采样以后不会发生频率混淆现象。

数字信号处理课程设计报告实验三

数字信号处理课程设计报告实验三

数字信号处理课程设计报告实验三目录1. 实验三概述 (2)1.1 实验目的 (2)1.2 实验要求 (3)1.3 实验内容 (4)2. 实验原理 (5)2.1 数字信号处理的简介 (6)2.2 数字滤波器的类型 (6)2.3 FIR和IIR滤波器的区别 (7)3. 实验软件与硬件环境 (9)3.1 软件环境 (10)3.2 硬件环境 (12)3.3 实验设备介绍 (13)4. 实验步骤 (14)4.2 设计数字滤波器 (15)4.3 滤波器实现与调试 (16)4.4 实验数据分析 (17)5. 实验设计 (18)5.1 数字滤波器的设计方法 (19)5.2 滤波器参数的选择 (20)5.3 滤波器实现代码实现 (21)6. 实验结果 (22)6.1 滤波前后的信号对比 (24)6.2 滤波效果分析 (25)6.3 滤波器性能指标评价 (26)7. 实验讨论 (27)7.1 实验中发现的问题 (29)7.2 解决问题的方法与思考 (29)8. 实验心得 (32)8.1 数字信号处理的理解加深 (33)8.2 编程能力的提升 (34)8.3 对实验中遇到的挑战的看法 (35)1. 实验三概述本实验课题为“数字滤波器设计与分析”,旨在使学生深入理解数字滤波器的原理及设计方法,并掌握使用仿真工具进行实际滤波器设计与性能分析的能力。

实验通过MATLAB平台,分别实现低通、高通及带通滤波器的设计与模拟,并进行频率响应分析、时域响应分析以及信号处理效果的评价。

不同类型的数字滤波器设计方法原理介绍,包括IIR和FIR滤波器。

不同设计方法的优缺点分析,并结合实际应用场景选择合适的滤波器类型。

使用MATLAB自带函数和滤波器设计工具包进行滤波器设计,以及根据不同指标对滤波器参数进行调整。

通过完成本实验,学生将能掌握数字滤波器的理论知识和应用技能,并对其优缺点及应用场景有更深入的理解。

1.1 实验目的加载、分析和可视化语音信号:学生需学会使用高级软件工具加载语音信号数据,并运用绘图工具展示信号的时域波形及频谱图。

河北大学数字信号处理实验三报告(含思考题)

河北大学数字信号处理实验三报告(含思考题)

班级 学号 姓名实验三 离散时间系统的频域分析一、实验目的(1)了解DFS 、DFT 与DTFT 的联系;加深对FFT 基本理论的理解;掌握用MATLB 语言进行傅里叶变换时常用的子函数;(2)了解离散系统的零极点与系统因果性和稳定性的关系;加深对离散系统的频率响应特性基本概念的理解;熟悉MATLAB 中进行离散系统零极点分析的常用子函数;掌握离散系统幅频响应和相频响应的求解方法。

二、实验内容1. 已知离散时间系统函数为()432143213.07.05.11.112.01.03.01.02.0--------+-+-++++=z z z z z z z z z H求该系统的零极点;画出零极点分布图(提示:用zplane 实现);判断系统的因果、稳定性。

程序代码:a=[0.2 0.1 0.3 0.1 0.2];b=[1 -1.1 1.5 -0.7 0.3];r1=roots(a) %求分子多项式的根,即系统的零点r2=roots(b) %求分母多项式的根,即系统的极点figure(1)zplane(a,b); %调用zplane 函数画零极点图运行结果:r1 =-0.5000 + 0.8660i-0.5000 - 0.8660i0.2500 + 0.9682i0.2500 - 0.9682ir2 =0.2367 + 0.8915i0.2367 - 0.8915i0.3133 + 0.5045i0.3133 - 0.5045i由图像可知该系统的全部极点都在单位圆内,所以该系统因果稳定。

2. 已知离散时间系统的系统函数为()432143213.07.05.11.112.01.03.01.02.0--------+-+-++++=z z z z z z z z z H 求该系统在π~0频率范围内的幅频响应、相频响应。

(提示:用freqz 实现)程序文件:a=[0.2 0.1 0.3 0.1 0.2];b=[1 -1.1 1.5 -0.7 0.3];[h,w]=freqz(a,b);c=abs(h); %取幅度d=angle(h); %取相角figure(1)subplot(2,1,1)plot(w,c); %画幅频特性曲线title('幅频特性曲线');subplot(2,1,2)plot(w,d); %画相频特性曲线title('相频特性曲线');运行结果:3. 已知()[]301,2,4,8≤≤=n n x ,画出由离散时间傅里叶变换求得的幅度谱()()[]ωωj j e arg e X X 和图形。

数字信号处理实验报告 3

数字信号处理实验报告 3

数字信号处理实验报告姓名:班级:通信学号:实验名称:频域抽样定理验证实验类型:验证试验指导教师:实习日期:2013.频域采样定理验证实验一. 实验目的:1. 加深对离散序列频域抽样定理的理解2.了解由频谱通过IFFT 计算连续时间信号的方法3.掌握用MATLAB 语言进行频域抽样与恢复时程序的编写方法 4、用MATLAB 语言将X(k)恢复为X(z)及X(e jw )。

二. 实验原理:1、1、频域采样定理: 如果序列x(n)的长度为M ,频域抽样点数为N ,则只有当频域采样点数N ≥M 时,才有x N (n)=IDFT[X(k)]=x(n),即可由频域采样X(k)无失真的恢复原序列 x(n)。

2、用X(k)表示X(z)的内插公式:∑-=-----=10111)(1)(N k kNN zWz k X Nz X内插函数: zWzkNNN z 1k111)(-----=ϕ频域内插公式:∑-=-=10)2()()(N Kj k Nk X e X πωϕω频域内插函数:e N j N N )21()2sin()2sin(1)(--=ωωωωϕ三. 实验任务与步骤:实验一:长度为26的三角形序列x(n)如图(b)所示,编写MATLAB 程序验证频域抽样定理。

实验二:已知一个时间序列的频谱为X(e jw )=2+4e -jw +6e -j2w +4e -j3w +2e -j4w分别取频域抽样点数N为3、5和10,用IPPT计算并求出其时间序列x(n),用图形显示各时间序列。

由此讨论原时域信号不失真地由频域抽样恢复的条件。

实验三:由X32(k)恢复X(z)和X(e jw)。

四.实验结论与分析:实验一:源程序:M=26;N=32;n=0:M; %产生M长三角波序列x(n)xa=0:floor(M/2);xb= ceil(M/2)-1:-1:0; xn=[xa,xb];Xk=fft(xn,512); %1024点FFT[x(n)], 用于近似序列x(n)的TF X32k=fft(xn,32); %32点FFT[x(n)]x32n=ifft(X32k); %32点IFFT[X32(k)]得到x32(n)X16k=X32k(1:2:N); %隔点抽取X32k得到X16(K)x16n=ifft(X16k,N/2); %16点IFFT[X16(k)]得到x16(n)subplot(3,2,2);stem(n,xn,'.');box ontitle('(b) 三角波序列x(n)');xlabel('n');ylabel('x(n)');axis([0,32,0,20])k=0:511;wk=2*k/512;subplot(3,2,1);plot(wk,abs(Xk));title('(a)FT[x(n)]');xlabel('\omega/\pi');ylabel('|X(e^j^\omega)|');axis([0,1,0,200])k=0:N/2-1;subplot(3,2,3);stem(k,abs(X16k),'.');box ontitle('(c) 16点频域');xlabel('k');ylabel('|X_1_6(k)|');axis([0,8,0,200])n1=0:N/2-1;subplot(3,2,4);stem(n1,x16n,'.');box ontitle('(d) 16点IDFT[X_1_6(k)]');xlabel('n');ylabel('x_1_6(n)');axis([0,32,0,20]) k=0:N-1;subplot(3,2,5);stem(k,abs(X32k),'.');box on title('(e) 32点频域采样');xlabel('k'); ylabel('|X_3_2(k)|');axis([0,16,0,200]) n1=0:N-1;subplot(3,2,6);stem(n1,x32n,'.');box on title('(f) 32点IDFT[X_3_2(k)]');xlabel('n'); ylabel('x_3_2(n)');axis([0,32,0,20])结果如下所示:实验一分析:序列x(n)的长度M=26,由图中可以看出,当采样点数N=16<M 时,x 16(n)确实等于原三角序列x(n)以16为周期的周期延拓序列的主值序列。

数字信号处理实验指导书思考题答案实验图

数字信号处理实验指导书思考题答案实验图

目录实验一 Matlab与数字信号处理基础 (2)实验二离散傅里叶变换与快速傅里叶变换 (4)实验三数字滤波器结构 (6)注释 (9)主要参考文献 (9)实验一 Matlab与数字信号处理基础一、实验目的和任务1、熟悉Matlab的操作环境2、学习用Matlab建立基本序列的方法;3、学习用仿真界面进行信号抽样的方法。

二、实验内容1、基本序列的产生:单位抽样序列、单位阶跃序列、矩形序列、实指数序列和复指数序列的产生2、用仿真界面进行信号抽样练习:用simulink建模仿真信号的抽样三、实验仪器、设备及材料计算机、Matlab软件四、实验原理序列的运算、抽样定理五、主要技术重点、难点Matlab的各种命令与函数、建模仿真抽样定理六、实验步骤1、基本序列的产生:单位抽样序列δ(n): n=-2:2;x=[0 0 1 0 0];stem(n,x);单位阶跃序列u(n):n=-10:10;x=[zeros(1,10) ones(1,11)];stem(n,x);矩形序列R N(n):n=-2:10;x=[0 0 ones(1,5) zeros(1,6)];stem(n,x);实指数序列0.5n:n=0:30;x=0.5.^nstem(n,x);复指数序列e(-0.2+j0. 3)n:n=0:30;x=exp((-0.2+j*0.3)*n);模:stem(n,abs(x));幅角:stem(n,angle(x));2、用仿真界面进行信号抽样练习:(1)在Matlab命令窗口中输入simulink 并回车,以打开仿真模块库;(2)按CTRL+N,以新建一仿真窗口;在仿真模块库中用鼠标点击Sources(输入源模块库),从中选择sine wave(正弦波模块)并将其拖至仿真窗口;(3)在仿真模块库中用鼠标点击Discrete(离散模块库),从中选择Zero-Order Hold(零阶保持器模块)并将其拖至仿真窗口;(4)在仿真模块库中用鼠标点击Sinks(显示模块库),从中选择Scope(示波器模块)并将其拖至仿真窗口;(5)在仿真窗口中把上述模块依次连接起来;(6)用鼠标双击Scope模块,以打开示波器的显示界面;(7)用鼠标点击仿真窗口工具条中的►图标开始仿真,结果显示在示波器中;(8)用鼠标双击Zero-Order Hold模块,打开其参数设置窗口,改变sample time参数值,例如1、0.5、0.1、0.05…,用鼠标点击仿真窗口工具条中的►图标开始仿真,比较示波器显示结果(选三个参数值,得三个结果);(9)在仿真模块库中用鼠标点击Sinks(显示模块库),从中选择To Workspace(输出到当前工作空间的变量模块)并将其拖至仿真窗口;(10)用鼠标双击To Workspace模块,打开其参数设置窗口,改变variable name参数值为x ;同时把save format参数值设置为Array ;(11)在仿真窗口中先用鼠标点击Zero-Order Hold模块与Scope模块的连线,然后按住CTRL 键,从选中连线的中部引出一条线到To Workspace模块;(12)用鼠标双击Zero-Order Hold模块,打开其参数设置窗口,改变sample time参数值,例如1、0.5、0.1、0.05…,用鼠标点击仿真窗口工具条中的►图标开始仿真,并返回命令窗口,用stem(x)作图,比较序列图显示结果(选三个参数值,得三个结果);七、实验报告要求1、实验步骤按实验内容指导进行;2、对于实验内容1和2的数据必须给出的离散图,其相关参数应在图中注明;3、具有关联性和比较性的图形最好用subplot()函数,把它们画在一起;4、实验报告按规定格式填写,要求如下:(1)实验步骤根据自己实际操作填写;(2)各小组实验数据不能完全相同,否则以缺席论处;5、实验结束,实验数据交指导教师检查,得到允许后可以离开,否则以缺席论处;八、实验注意事项1、Matlab编程、文件名、存盘目录均不能使用中文。

数字信号处理实验报告

数字信号处理实验报告

实验一:离散时间信号的表示与运算一:实验内容、原理描述及实验结果 1. 离散时间信号的表示离散时间信号定义为一时间函数,它只在某些离散的瞬时给出函数值,而在其他处无定义。

因此,它是时间上不连续按一定先后次序排列的一组数的集合,故称为时间序列,简称序列,通常表示为{x (n )} -∞<n<+∞ (1) 单位采样序列例1.1 用matlab 编写生成单位脉冲序列函数的程序,n ∈(-5,5)。

程序代码如下:n0=0;n1=-5;n2=5;n=[n1:n2];nc=length(n);x=zeros(1,nc);for i=1:ncif n(i)==n0 x(i)=1; endendstem(n,x)xlabel('n');ylabel('x(n)');title('delta sequence'); grid或者:n0=0;n1=-5;n2=5;n=[n1:n2];x=[(n-n0)==0];stem(n,x);xlabel('n');ylabel('x(n)');title('delta sequence');grid 图形如下:nx (n )(2)单位阶跃序列例1.2 用matlab 编写生成单位阶跃序列函数的程序,n ∈(-5,5)。

程序代码如下:n0=0;n1=-5;n2=5;n=[n1:n2];x=[(n-n0)>=0];stem(n,x)xlabel('n');ylabel('x(n)');title('step sequence');grid图形如下:nx (n )(3)单位斜坡序列例1.3 用matlab 编写生成单位斜坡序列函数的程序,n ∈(0,5)。

程序代码如下:n1=0;n2=5;n=[n1:1:n2];x=n;stem(n,x)xlabel('n');ylabel('x(n)');title('ramp sequence');grid图形如下:nx (n )(4)正余弦序列例1.4 用matlab 编写正弦序列x(n)=5sin(0.1πn+π/3)函数的程序。

数字信号处理与分析实验报告

数字信号处理与分析实验报告

h (n) d
理 想 滤 波 器 单 位 抽 样 响 应 Hanning窗 N=15
1
1
0.8
0.8
0.6
0.6
滤波器单位抽样响应 0.2 0.15
h(n)
(n)
0.4
0.4
0.1
0.2
0.2
0.05
0
0
0
0
10
20 0
10
20 0
10
20
|H(ej)| 0
3dB衰 减 和 20dB衰 减
0
0
()
-20
图一:fp=25Hz;fs=40Hz;Ap=1dB;As=15dB。
Magnitude (dB)
0
-10
-20
-30
-40
0
10
20
30
40
50
60
Frequency (Hz)
0
-100
-200
-300
-400
0
10
20
30
40
50
60
Frequency (Hz)
1.5
1
0.5
0
-0.5
0
0.5
1
1.5
3
|X(k)|
2
1
0
0
2
4
6
8
k
图五
|X(k)|
1 0.5
0 -0.5
-1 0
8 6 4 2 0
0
图六
N = 16
5
10
15
n
5
10
15
k
(k)
(k)
(k)

数字信号处理实验三报告 数字信号处理上机实验报告.doc

数字信号处理实验三报告 数字信号处理上机实验报告.doc

数字信号处理实验三报告数字信号处理上机实验报告实验一系统响应及系统稳定性一、实验目的(1)掌握求系统响应的方法。

(2)掌握时域离散系统的时域特性。

(3)分析、观察及检验系统的稳定性。

二、实验内容(1)给定一个低通滤波器的差分方程为y(n)=0.05x(n)+0.05x(n-1)+0.9y(n-1)输入信号x1(n)=R8(n)x2(n)=u(n)(a) 分别求出系统对x1(n)=R8(n) 和x2(n)=u(n)的响应序列,并画出其波形。

(b) 求出系统的单位冲响应,画出其波形。

实验程序:A=[1,-0.9];B=[0.05,0.05]; %%系统差分方程系数向量 B 和 Ax1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %产生信号 x1(n)=R8(n)x2n=ones(1,8); %产生信号 x2(n)=u(n)y1n=filter(B,A,x1n); %求系统对 x1(n)的响应 y1(n)n=0:length(y1n)-1;subplot(2,2,1);stem(n,y1n,".");title("(a) 系统对 R_8(n)的响应y_1(n)");xlabel("n");ylabel("y_1(n)");y2n=filter(B,A,x2n); %求系统对 x2(n)的响应 y2(n) n=0:length(y2n)-1;subplot(2,2,2);stem(n,y2n,".");title("(b) 系统对 u(n)的响应y_2(n)");xlabel("n");ylabel("y_2(n)");hn=impz(B,A,58); %求系统单位脉冲响应 h(n)n=0:length(hn)-1;subplot(2,2,3);y=hn;stem(n,hn,".");title("(c) 系统单位脉冲响应h(n)");xlabel("n");ylabel("h(n)");运行结果图:(2)给定系统的单位脉冲响应为h1(n)=R10(n)h2(n)= δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3)用线性卷积法分别求系统h1(n)和h2(n)对x1(n)=R8(n)的输出响应,波形。

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

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

数字信号处理实验报告13050Z011305024237数字信号处理实验报告实验一 采样定理(2学时) 内容:给定信号为()exp()cos(100**)x t at at π=-,其中a 为学号, (1)确定信号的过采样和欠采样频率(2)在上述采样频率的条件下,观察、分析、记录频谱,说明产生上述现象的原因。

基本要求:验证采样定理,观察过采样和欠采样后信号的频谱变化。

a=37; %1305024237 fs=10000; %抽样频率 t=0:1/fs:0.05;x1=exp(-a*t).*cos(100*pi*a*t);N=length(x1); %信号时域横轴向量 k=(0:N-1); %信号频域横轴向量 Y1=fft(x1); Y1=fftshift(Y1); subplot(2,1,1); plot(t,x1);hold on ; stem(t,x1,'o'); subplot(2,1,1); plot(k,abs(Y1)); gtext('1305024237');051015201305024237 刘德文a=37; %1305024237 fs=800; %抽样频率 t=0:1/fs:0.05;x1=exp(-a*t).*cos(100*pi*a*t);N=length(x1); %信号时域横轴向量 k=floor(-(N-1)/2:(N-1)/2); %信号频域横轴向量 Y1=fft(x1); Y1=fftshift(Y1); subplot(2,1,1); plot(t,x1);hold on ; stem(t,x1,'o'); subplot(2,1,2); plot(k,abs(Y1)); title('1305024237 ');0.0050.010.0150.020.0250.030.0350.040.0450.05-20-15-10-50510152005101305024237 刘德文实验二 信号谱分析(2学时) 内容: 给定信号为:(1)()cos(100**)x t at π= (2)()exp()x t at =-(3)()exp()cos(100**)x t at at π=-其中a 为实验者的学号,记录上述各信号的频谱,表明采样条件,分析比较上述信号频谱的区别。

数字信号处理实验报告_完整版

数字信号处理实验报告_完整版

实验1 利用DFT 分析信号频谱一、实验目的1.加深对DFT 原理的理解。

2.应用DFT 分析信号的频谱。

3.深刻理解利用DFT 分析信号频谱的原理,分析实现过程中出现的现象及解决方法。

二、实验设备与环境 计算机、MATLAB 软件环境 三、实验基础理论1.DFT 与DTFT 的关系有限长序列 的离散时间傅里叶变换 在频率区间 的N 个等间隔分布的点 上的N 个取样值可以由下式表示:212/0()|()()01N jkn j Nk N k X e x n eX k k N πωωπ--====≤≤-∑由上式可知,序列 的N 点DFT ,实际上就是 序列的DTFT 在N 个等间隔频率点 上样本 。

2.利用DFT 求DTFT方法1:由恢复出的方法如下:由图2.1所示流程可知:101()()()N j j nkn j nN n n k X e x n eX k W e N ωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑ 由上式可以得到:IDFTDTFT( )12()()()Nj k kX e X k Nωπφω==-∑ 其中为内插函数12sin(/2)()sin(/2)N j N x eN ωωφω--= 方法2:实际在MATLAB 计算中,上述插值运算不见得是最好的办法。

由于DFT 是DTFT 的取样值,其相邻两个频率样本点的间距为2π/N ,所以如果我们增加数据的长度N ,使得到的DFT 谱线就更加精细,其包络就越接近DTFT 的结果,这样就可以利用DFT 计算DTFT 。

如果没有更多的数据,可以通过补零来增加数据长度。

3.利用DFT 分析连续信号的频谱采用计算机分析连续时间信号的频谱,第一步就是把连续信号离散化,这里需要进行两个操作:一是采样,二是截断。

对于连续时间非周期信号,按采样间隔T 进行采样,阶段长度M ,那么:1()()()M j tj nT a a a n X j x t edt T x nT e ∞--Ω-Ω=-∞Ω==∑⎰对进行N 点频域采样,得到2120()|()()M jkn Na a M kn NTX j T x nT eTX k ππ--Ω==Ω==∑因此,可以将利用DFT 分析连续非周期信号频谱的步骤归纳如下: (1)确定时域采样间隔T ,得到离散序列(2)确定截取长度M ,得到M 点离散序列,这里为窗函数。

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

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

实验一、离散时间系统及离散卷积1、单位脉冲响应源程序:function pr1() %定义函数pr1a=[1,-1,0.9]; %定义差分方程y(n)-y(n-1)+0.9y(n-2)=x(n) b=1;x=impseq(0,-20,120); %调用impseq函数n=[-40:140]; %定义n从-20 到120h=filter(b,a,x); %调用函数给纵座标赋值figure(1) %绘图figure 1 (冲激响应) stem(n,h); %在图中绘出冲激title('冲激响应'); %定义标题为:'冲激响应'xlabel('n'); %绘图横座标为nylabel('h(n)'); %绘图纵座标为h(n)figure(2) %绘图figure 2[z,p,g]=tf2zp(b,a); %绘出零极点图zplane(z,p)function [x,n]=impseq(n0,n1,n2) %声明impseq函数n=[n1:n2];x=[(n-n0)==0];结果:Figure 1:Figure 2:2、离散系统的幅频、相频的分析源程序:function pr2()b=[0.0181,0.0543,0.0543,0.0181];a=[1.000,-1.76,1.1829,-0.2781];m=0:length(b)-1; %m从0 到3l=0:length(a)-1; %l从0 到3K=5000;k=1:K;w=pi*k/K; %角频率wH=(b*exp(-j*m'*w))./(a*exp(-j*l'*w));%对系统函数的定义magH=abs(H); %magH为幅度angH=angle(H); %angH为相位figure(1)subplot(2,1,1); %在同一窗口的上半部分绘图plot(w/pi,magH); %绘制w(pi)-magH的图形grid;axis([0,1,0,1]); %限制横纵座标从0到1xlabel('w(pi)'); %x座标为 w(pi)ylabel('|H|'); %y座标为 angle(H)title('幅度,相位响应'); %图的标题为:'幅度,相位响应' subplot(2,1,2); %在同一窗口的下半部分绘图plot(w/pi,angH); %绘制w(pi)-angH的图形grid; %为座标添加名称xlabel('w(pi)'); %x座标为 w(pi)ylabel('angle(H)'); %y座标为 angle(H)结果:3、卷积计算源程序:function pr3()n=-5:50; %声明n从-5到50u1=stepseq(0,-5,50); %调用stepseq函数声用明u1=u(n)u2=stepseq(10,-5,50); %调用stepseq函数声用明u2=u(n-10) %输入x(n)和冲激响应h(n)x=u1-u2; %x(n)=u(n)-u(n-10)h=((0.9).^n).*u1; %h(n)=0.9^n*u(n)figure(1)subplot(3,1,1); %绘制第一个子图stem(n,x); %绘制图中的冲激axis([-5,50,0,2]); %限定横纵座标的范围title('输入序列'); %规定标题为:'输入序列'xlabel('n'); %横轴为nylabel('x(n)'); %纵轴为x(n)subplot(3,1,2); %绘制第二个子图stem(n,h); %绘制图中的冲激axis([-5,50,0,2]); %限定横纵座标的范围title('冲激响应序列'); %规定标题为:'冲激响应序列'xlabel('n'); %横轴为nylabel('h(n)'); %纵轴为h(n)%输出响应[y,ny]=conv_m(x,n,h,n); %调用conv_m函数subplot(3,1,3); %绘制第三个子图stem(ny,y);axis([-5,50,0,8]);title('输出响应'); %规定标题为:'输出响应'xlabel('n');ylabel('y(n)'); %纵轴为y(n)%stepseq.m子程序%实现当n>=n0时x(n)的值为1function [x,n]=stepseq(n0,n1,n2)n=n1:n2;x=[(n-n0)>=0];%con_m的子程序%实现卷积的计算function [y,ny]=conv_m(x,nx,h,nh)nyb=nx(1)+nh(1);nye=nx(length(x))+nh(length(h));ny=[nyb:nye];y=conv(x,h);结果:实验二、离散傅立叶变换与快速傅立叶变换1、离散傅立叶变换(DFT)源程序:function pr4()F=50;N=64;T=0.000625;n=1:N;x=cos(2*pi*F*n*T); %x(n)=cos(pi*n/16)subplot(2,1,1); %绘制第一个子图x(n)stem(n,x); %绘制冲激title('x(n)'); %标题为x(n)xlabel('n'); %横座标为nX=dft(x,N); %调用dft函数计算x(n)的傅里叶变换magX=abs(X); %取变换的幅值subplot(2,1,2); %绘制第二个子图DFT|X|stem(n,X);title('DFT|X|');xlabel('f(pi)'); %横座标为f(pi)%dft的子程序%实现离散傅里叶变换function [Xk]=dft(xn,N)n=0:N-1;k=0:N-1;WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=xn*WNnk;结果:F=50,N=64,T=0.000625时的波形F=50,N=32,T=0.000625时的波形:2、快速傅立叶变换(FFT)源程序:%function pr5()F=50;N=64;T=0.000625;n=1:N;x=cos(2*pi*F*n*T); %x(n)=cos(pi*n/16) subplot(2,1,1);plot(n,x);title('x(n)');xlabel('n'); %在第一个子窗中绘图x(n)X=fft(x);magX=abs(X);subplot(2,1,2);plot(n,X);title('DTFT|X|');xlabel('f(pi)'); %在第二个子图中绘图x(n)的快速傅%里叶变换结果:3、卷积的快速算法源程序:function pr6()n=0:14;x=1.^n;h=(4/5).^n;x(15:32)=0;h(15:32)=0;%到此 x(n)=1, n=0~14; x(n)=0,n=15~32% h(n)=(4/5)^n, n=0~14; h(n)=0,n=15~32subplot(3,1,1);stem(x);title('x(n)');axis([1,32,0,1.5]); %在第一个子窗绘图x(n)横轴从1到32,纵轴从0到1.5 subplot(3,1,2);stem(h);title('h(n)');axis([1,32,0,1.5]); %在第二个子窗绘图h(n)横轴从1到32,纵轴从0到1.5 X=fft(x); %X(n)为x(n)的快速傅里叶变换H=fft(h); %H(n)为h(n)的快速傅里叶变换Y=X.*H; %Y(n)=X(n)*H(n)%Y=conv(x,h);y=ifft(Y); %y(n)为Y(n)的傅里叶反变换subplot(3,1,3) %在第三个子窗绘图y(n)横轴从1到32,纵轴从0到6 stem(abs(y));title('y(n=x(n)*h(n))');axis([1,32,0,6]);结果:实验三、IIR数字滤波器设计源程序:function pr7()wp=0.2*pi;ws=0.3*pi;Rp=1;As=25;T=1;Fs=1/T;OmegaP=(2/T)*tan(wp/2); %OmegaP(w)=2*tan(0.1*pi) OmegaS=(2/T)*tan(ws/2); %OmegaS(w)=2*tan(0.15*pi)ep=sqrt(10^(Rp/10)-1);Ripple=sqrt(1/(1+ep.^2));Attn=1/10^(As/20);N=ceil((log10((10^(Rp/10)-1)/(10^(As/10)-1)))/(2*log10(OmegaP/OmegaS) ));OmegaC=OmegaP/((10.^(Rp/10)-1).^(1/(2*N)));[cs,ds]=u_buttap(N,OmegaC);[b,a]=bilinear(cs,ds,Fs);[mag,db,pha,w]=freqz_m(b,a);subplot(3,1,1); %在第一个子窗绘制幅度响应的图形plot(w/pi,mag);title('幅度响应');xlabel('w(pi)');ylabel('H');axis([0,1,0,1.1]);set(gca,'XTickmode','manual','XTick',[0,0.2,0.35,1.1]);set(gca,'YTickmode','manual','YTick',[0,Attn,Ripple,1]);grid;subplot(3,1,2); %在第二个子窗以分贝为单位绘制幅度响应的图形plot(w/pi,db);title('幅度响应(dB)');xlabel('w(pi)');ylabel('H');axis([0,1,-40,5]);set(gca,'XTickmode','manual','XTick',[0,0.2,0.35,1.1]);set(gca,'YTickmode','manual','YTick',[-50,-15,-1,0]);grid;subplot(3,1,3); %在第三个子窗绘制相位响应的图形plot(w/pi,pha);title('相位响应');xlabel('w(pi)');ylabel('pi unit');%axis([0,1,0,1.1]);set(gca,'XTickmode','manual','XTick',[0,0.2,0.35,1.1]);set(gca,'YTickmode','manual','YTick',[-1,0,1]);grid;function [b,a]=u_buttap(N,OmegaC)[z,p,k]=buttap(N);p=p*OmegaC;k=k*OmegaC.^N;B=real(poly(z));b0=k;b=k*B;a=real(poly(p));function [mag,db,pha,w]=freqz_m(b,a)[H,w]=freqz(b,a,1000,'whole');H=(H(1:501))';w=(w(1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);结果:实验四、FIR数字滤波器的设计源程序:function pr8()wp=0.2*pi;ws=0.35*pi;tr_width=ws-wp;M=ceil(6.6*pi/tr_width)+1;n=0:M-1;wc=(ws+wp)/2;alpha=(M-1)/2;m=n-alpha+eps;hd=sin(wc*m)./(pi*m);w_ham=(hamming(M))';h=hd.*w_ham;[mag,db,pha,w]=freqz_m(h,[1]);delta_w=2*pi/1000;Rp=-(min(db(1:wp/delta_w+1)));As=-round(max(db(ws/delta_w+1:501)));subplot(2,2,1);stem(n,hd);title('理想冲激响应');axis([0,M-1,-0.1,0.3]);ylabel('hd(n)');subplot(2,2,2);stem(n,h);title('实际冲激响应');axis([0,M-1,-0.1,0.3]);ylabel('h(n)');subplot(2,2,3);plot(w/pi,pha);title('滤波器相位响应');axis([0,1,-pi,pi]);ylabel('pha');set(gca,'XTickmode','manual','XTick',[0,0.2,0.3,1.1]); set(gca,'YTickmode','manual','YTick',[-pi,0,pi]); grid;subplot(2,2,4);plot(w/pi,db);title('滤波器幅度响应');axis([0,1,-100,10]);ylabel('H(db)');set(gca,'XTickmode','manual','XTick',[0,0.2,0.3,1.1]); set(gca,'YTickmode','manual','YTick',[-50,-15,0]);function [mag,db,pha,w]=freqz_m(b,a)[H,w]=freqz(b,a,1000,'whole');H=(H(1:501))';w=(w(1:501))';mag=abs(H);db=20*log10((mag+eps)/max(mag));pha=angle(H);结果:。

数字信号处理的实习和实验报告

数字信号处理的实习和实验报告

数字信号处理实习报告指导老师:姓名:班级:学号:实验一离散卷积的计算一、实验内容设线性时不变(LTI)系统的冲激响应为h(n),输入序列为x(n)1、h(n)=(0.8)n,0≤n≤4;x(n)=u(n)-u(n-4)2、h(n)=(0.8)n u(n), x(n)=u(n)-u(n-4)3、h(n)=(0.8)n u(n), x(n)=u(n)求以上三种情况下系统的输出y(n)。

二、实验程序及实验结果1.1 matlab程序x = [ones(1,4)];N1 = length(x);n1 = 0:N1-1;N2 = 5;n2 = 0:N2-1;h = 0.8.^n2;y = conv(x,h);N = N1+N2-1;n = 0:N-1;subplot(2,2,1);stem(n1,x);title('序列x');xlabel('n');ylabel('x(n)');subplot(2,2,2);stem(n2,h);title('序列h');xlabel('n');ylabel('h(n)');subplot(2,2,3);stem(n,y);title('两序列的卷积');xlabel('n');ylabel('y(n)');1.2实验结果2.1 matlab程序x = [ones(1,4)];N1 = length(x);n1 = 0:N1-1;N2 = 100;n2 = 0:N2-1;h = 0.8.^n2;y = conv(x,h);N = N1+N2-1;n = 0:N-1;subplot(1,2,1);stem(n1,x);title('序列x'); xlabel('n');ylabel('x(n)');subplot(1,2,2);stem(n2,h);title('序列h'); xlabel('n');ylabel('h(n)');figure,stem(n,y);title('两序列的卷积'); xlabel('n');ylabel('y(n)');2.2实验结果3.1 matlab程序x = [ones(1,100)];N1 = length(x);n1 = 0:N1-1;N2 = 100;n2 = 0:N2-1;h = 0.8.^n2;y = conv(x,h);N = N1+N2-1;n = 0:N-1;subplot(2,2,1);stem(n1,x);title('序列x'); xlabel('n');ylabel('x(n)');subplot(2,2,2);stem(n2,h);title('序列h'); xlabel('n');ylabel('h(n)');figure,stem(n,y);title('两序列的卷积'); xlabel('n');ylabel('y(n)');3.2实验结果三.实验结果分析实验程序通过直接调用卷积函数实现卷积运算,题目中h(n)=(0.8)n u(n)理论上为一个无限长序列,但在matlab的编程中,只有有限长的序列才可以参与运算,因此只是选取了有限点(100点)的h(n)。

《数字信号处理》实验报告汇总

《数字信号处理》实验报告汇总

物理与电子电气工程学院实验报告
课程名称:数字信号处理
院系:物电学院
专业:电子信息科学与技术班级:
学号:
姓名:
实验报告(1)
实验名称常见离散信号产生与实现
实验日期2016年9月13日指导教师曹凤莲
实验报告(2)
实验名称离散时间系统的时域分析
实验日期2016年9月20日指导教师曹凤莲
实验报告(3)
实验名称离散时间LTI系统的z域分析
实验日期2016年9月27日指导教师曹凤莲
实验报告(4)
实验名称用FFT进行谱分析
实验日期2016年10月10日指导教师曹凤莲
实验报告(5)
实验名称实验五数字滤波器结构的实现
实验日期2016年10月17日指导教师曹凤莲
实验报告(6)
实验名称实验六IIR数字滤波器的设计
实验日期2016年10月25日指导教师曹凤莲。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

班级 学号 姓名实验三 离散时间系统的频域分析一、实验目的(1)了解DFS、DFT与DTFT的联系;加深对FFT基本理论的理解;掌握用MATLB语言进行傅里叶变换时常用的子函数;(2)了解离散系统的零极点与系统因果性和稳定性的关系;加深对离散系统的频率响应特性基本概念的理解;熟悉MATLAB中进行离散系统零极点分析的常用子函数;掌握离散系统幅频响应和相频响应的求解方法。

二、实验内容1. 已知离散时间系统函数为求该系统的零极点;画出零极点分布图(提示:用zplane实现);判断系统的因果、稳定性。

程序代码:a=[0.2 0.1 0.3 0.1 0.2];b=[1 -1.1 1.5 -0.7 0.3];r1=roots(a) %求分子多项式的根,即系统的零点r2=roots(b) %求分母多项式的根,即系统的极点figure(1)zplane(a,b); %调用zplane函数画零极点图运行结果:r1 =-0.5000 + 0.8660i-0.5000 - 0.8660i0.2500 + 0.9682i0.2500 - 0.9682ir2 =0.2367 + 0.8915i0.2367 - 0.8915i0.3133 + 0.5045i0.3133 - 0.5045i由图像可知该系统的全部极点都在单位圆内,所以该系统因果稳定。

2. 已知离散时间系统的系统函数为求该系统在频率范围内的幅频响应、相频响应。

(提示:用freqz实现)程序文件:a=[0.2 0.1 0.3 0.1 0.2];b=[1 -1.1 1.5 -0.7 0.3];[h,w]=freqz(a,b);c=abs(h); %取幅度d=angle(h); %取相角figure(1)subplot(2,1,1)plot(w,c); %画幅频特性曲线title('幅频特性曲线');subplot(2,1,2)plot(w,d); %画相频特性曲线title('相频特性曲线');运行结果:3. 已知,画出由离散时间傅里叶变换求得的幅度谱图形。

(提示:根据DTFT定义编写程序或者用freqz实现)程序代码:xn=[8,4,2,1];N=length(xn); %求xn的长度n=0:N-1; %确定n的范围k=0:N-1; %确定k的范围Xk=xn*exp(-j*2*pi/N).^(n'*k); %求xn的离散时间傅里叶变换Xksubplot(2,1,1),stem(n,abs(Xk)); %画离散时间傅里叶变换后的幅度谱title('离散时间傅里叶变换后的幅度谱');subplot(2,1,2),stem(n,angle(Xk)); %画离散时间傅里叶变换后的相位谱title('离散时间傅里叶变换后的相位谱');运行结果:4. 已知周期序列的主值,求周期重复次数为4次时的DFS。

要求画出原主值和周期序列信号,并画出序列傅里叶变换对应的图形。

程序代码:xn1=[8 4 2 1];xn=[xn1 xn1 xn1 xn1]; %周期重复4次a=0:length(xn1)-1; %a的取值为0到3N=length(xn); %求周期重复后的长度n=0:N-1;k=0:N-1;Xk=xn*exp(-j*2*pi/N).^(n'*k); %求周期重复后的序列的DFSsubplot(2,2,1),stem(a,xn1); %画原序列title('原主值序列');subplot(2,2,2),stem(n,xn); %画周期重复后的序列title('周期重复后的序列');subplot(2,2,3),stem(n,abs(Xk)); %画序列傅里叶变换后的幅度谱' title('序列傅里叶变换后的幅度谱');subplot(2,2,4),stem(n,angle(Xk)); %画序列傅里叶变换后的相位谱title('序列傅里叶变换后的相位谱');运行结果:5. 已知序列,,,,求、g(n)、y(n)、h(n)的DFT。

要求:(1)画出各DFT的幅频特性和相频特性图(包括、、、图形);(提示:可考虑用FFT计算DFT;幅频特性用abs函数;相频特性用angle函数);(2)比较四种信号的频谱,并且与第4题比较,看能得出什么结论?(1)程序代码:xn=[8 4 2 1];gn=[8 4 2 1 0 0 0 0];yn=[8 0 4 0 2 0 1 0];hn=[8 4 2 1 8 4 2 1];y1=fft(xn); %求xn的ffty2=fft(gn); %求gn的ffty3=fft(yn); %求yn的ffty4=fft(hn); %求hn的ffta1=length(xn);b1=0:a1-1;a2=length(gn);b2=0:a2-1;a3=length(yn);b3=0:a3-1;a4=length(hn);b4=0:a4-1;subplot(2,4,1),stem(b1,abs(y1)); %画X(k)的幅频特性title('X(k)幅频特性');subplot(2,4,2),stem(b1,angle(y1)); %画X(k)的相频特性title('X(k)相频特性');subplot(2,4,3),stem(b2,abs(y2)); %画G(k)的幅频特性title('G(k)幅频特性');subplot(2,4,4),stem(b2,angle(y2)); %画G(k)的相频特性title('G(k)相频特性');subplot(2,4,5),stem(b3,abs(y3)); %画Y(k)的幅频特性title('Y(k)幅频特性');subplot(2,4,6),stem(b3,angle(y3)); %画Y(k)的相频特性title('Y(k)相频特性');subplot(2,4,7),stem(b4,abs(y4)); %画H(k)的幅频特性title('H(k)幅频特性');subplot(2,4,8),stem(b4,angle(y4)); %画H(k)的相频特性title('H(k)相频特性');运行结果:(2)比较后可得:G(K)与X(K)的频谱是相对应的,G(K)比X(K)频谱间隔小,谱线密;Y(K)是X(K)的重复,改变了对信号的取样频率,H(K)与X(K)相比,改变了谱线间隔及谱线的比例。

6.已知系统单位脉冲响应为,如果输入为,求系统输出。

(提示:可考虑用FFT和conv两种方式)程序代码:(1)用FFT实现:n1=0:19;hn=cos(0.5*n1)+sin(0.2*n1);n2=0:9;xn=exp(0.2*n2);n=0:28;y1=fft(hn,29);y2=fft(xn,29);y=y1.*y2;yn=ifft(y);subplot(3,1,1),stem(n1,hn);title('系统单位脉冲响应h(n)');subplot(3,1,2),stem(n2,xn); title('系统输入x(n)');subplot(3,1,3),stem(n,yn);title('系统输出y(n)');(2)用conv实现:n1=0:19;hn=cos(0.5*n1)+sin(0.2*n1);n2=0:9;xn=exp(0.2*n2);y=conv(hn,xn);n=0:28;subplot(3,1,1),stem(n1,hn); title('系统单位脉冲响应h(n)'); subplot(3,1,2),stem(n2,xn); title('系统输入x(n)');subplot(3,1,3),stem(n,y);title('系统输出y(n)');运行结果:三、思考题1. 离散序列的周期重复次数对信号的幅度谱有何影响?答:离散序列的周期重复次数改变信号幅度谱的谱线间隔及谱线的比例。

2. z变换、DTFT、DFS及DFT之间有什么关系?答:DTFT是z变换X(z)在z平面单位圆上的连续取值,频谱是连续的函数;DFT是DTFT的等间隔采样,采样间隔2π/N,是z变换X(z)在z平面单位圆上N等间隔采样点的值,频谱是离散的;DTS可以看做DTFT时域的周期延拓,周期延拓信号的频谱是原频谱的等间隔采样。

3. 离散傅里叶级数与连续性周期信号的傅里叶级数有何区别?离散周期序列的频谱有何特点?答:离散傅里叶级数可以看做是连续性周期信号的傅里叶级数在时域的进行等间隔采样,采样以后的频谱是原频谱的周期延拓。

离散周期序列的频谱是连续的。

4. 使用MATLAB语言提供的快速傅里叶变换有关子函数进行有限长和无限长序列频谱分析时需注意哪些问题?答:使用MATLAB语言提供的快速傅里叶变换函数Y=fft(x,n)可以对x 求n点的fft。

当x的长度小于n时,则在x的末尾补零,当x的长度大于n 时,截断x序列。

当x为矩阵时,可以以同样的方式调整x的列长度。

5. 因果稳定的离散系统必须满足的充分必要条件是什么?系统函数零极点的位置与系统冲激响应有何关系?对系统的幅度响应有何影响?答:因果稳定的离散系统必须满足的充分必要条件是:系统函数H(z) 必须从单位圆到∞的整个z区域内收敛。

系统函数极点决定系统冲激响应的形式,而零点无影响。

在极点的频率值附近,幅度出现峰值,极点越靠近单位圆,峰值越尖锐。

而在零点的频率值附近,幅度出现谷点,零点在单位圆上的谷点为零值。

6. 利用MATLAB如何求解离散系统的幅频响应和相频响应?答:先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数求出幅度和相位,再调用polt函数画出系统的幅频响应和相频响应曲线。

四、实验总结(1) 使用FFT时应注意序列的长度L,若x(n)的长度为N1,h(n)长度为N2,则L>=N1+N2-1。

(2) 调用zplane(a,b)函数画零极点图时,应注意a,b分别为分子分母多项式的系数。

(3) 因果稳定的离散系统必须满足的充分必要条件是:系统函数H(z) 必须从单位圆到∞的整个z区域内收敛。

即当系统的全部极点都在单位圆内,该系统因果稳定。

(4) 求解离散系统的幅频响应和相频响应时先调用freqz()函数计算系统的频率响应,然后利用abs()和angle()函数求出幅度和相位,再调用polt函数画出系统的幅频响应和相频响应曲线。

相关文档
最新文档