数字信号处理实验资料

合集下载

数字信号处理实验报告

数字信号处理实验报告

实验一 信号、系统及系统响应一、实验目的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,观察频谱混淆现象是否明显存在,说明原因,并记录这时候的幅频特性曲线。

数字信号处理综合实验

数字信号处理综合实验

数字信号处理综合实验一、实验目的本实验旨在通过数字信号处理技术的综合应用,加深对数字信号处理原理和方法的理解,提高学生的实际操作能力和问题解决能力。

二、实验原理数字信号处理是利用数字计算机对摹拟信号进行采样、量化和编码,然后进行数字运算和处理的技术。

本实验主要涉及以下几个方面的内容:1. 信号采集与预处理:通过摹拟信号采集电路将摹拟信号转换为数字信号,然后进行预处理,如滤波、降噪等。

2. 数字滤波器设计:设计和实现数字滤波器,包括FIR滤波器和IIR滤波器,可以对信号进行滤波处理,提取感兴趣的频率成份。

3. 时域和频域分析:对采集到的信号进行时域和频域分析,如时域波形显示、功率谱密度估计等,可以了解信号的时域和频域特性。

4. 信号重构与恢复:通过信号重构算法对采集到的信号进行恢复,如插值、外推等,可以还原信号的原始特征。

三、实验内容根据实验原理,本实验的具体内容包括以下几个部份:1. 信号采集与预处理a. 使用摹拟信号采集电路将摹拟信号转换为数字信号,并通过示波器显示采集到的信号波形。

b. 对采集到的信号进行预处理,如去除噪声、滤波等,确保信号质量。

2. 数字滤波器设计a. 设计并实现FIR滤波器,选择合适的滤波器类型和参数,对采集到的信号进行滤波处理。

b. 设计并实现IIR滤波器,选择合适的滤波器类型和参数,对采集到的信号进行滤波处理。

3. 时域和频域分析a. 对采集到的信号进行时域分析,绘制信号的时域波形图,并计算信号的均值、方差等统计指标。

b. 对采集到的信号进行频域分析,绘制信号的功率谱密度图,并计算信号的频域特性。

4. 信号重构与恢复a. 使用插值算法对采集到的信号进行重构,恢复信号的原始特征。

b. 使用外推算法对采集到的信号进行恢复,还原信号的原始特征。

四、实验步骤1. 搭建信号采集电路,将摹拟信号转换为数字信号,并通过示波器显示采集到的信号波形。

2. 对采集到的信号进行预处理,如去除噪声、滤波等,确保信号质量。

数字信号实验报告材料 (全)

数字信号实验报告材料 (全)

数字信号处理实验报告实验一:用 FFT 做谱分析 一、 实验目的1、进一步加深 DFT 算法原理和基本性质的理解。

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

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

二、实验原理用FFT 对信号作频谱分析是学习数字信号处理的重要内容。

经常需要进行谱分析的信号是模拟信号和时域离散信号。

对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。

频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是2π/N ≤D 。

可以根据此时选择FFT 的变换区间N 。

误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时离散谱的包络才能逼近于连续谱,因此N 要适当选择大一些。

周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。

如果不知道信号周期,可以尽量选择信号的观察时间长一些。

对模拟信号的频谱时,首先要按照采样定理将其变成时域离散信号。

如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。

三、实验内容和步骤对以下典型信号进行谱分析:⎪⎩⎪⎨⎧≤≤-≤≤-=⎪⎩⎪⎨⎧≤≤-≤≤+==其它nn n n n n x 其它nn n n n n x n R n x ,074,330,4)(,074,830,1)()()(32414()cos4x n n π=5()cos(/4)cos(/8)x n n n ππ=+6()cos8cos16cos20x t t t t πππ=++对于以上信号,x1(n)~x5(n) 选择FFT 的变换区间N 为8和16 两种情况进行频谱分析。

分别打印其幅频特性曲线。

并进行对比、分析和讨论;;x6(t)为模拟周期信号,选择 采样频率Hz F s 64=,变换区间N=16,32,64 三种情况进行谱分析。

数字信号处理实验4

数字信号处理实验4

实验4 离散时间系统的频域分析一、实验目的(1)了解离散系统的零极点与系统因果性和稳定性的关系; (2)加深对离散系统的频率响应特性基本概念的理解; (3)熟悉MATLAB 中进行离散系统零极点分析的常用子函数; (4)掌握离散系统幅频响应和相频响应的求解方法。

二、知识点提示本章节的主要知识点是频率响应的概念、系统零极点对系统特性的影响;重点是频率响应的求解方法;难点是MATLAB 相关子函数的使用。

三、实验原理1.离散时间系统的零极点及零极点分布图设离散时间系统系统函数为NMzN a z a a z M b z b b z A z B z H ----++++++++==)1()2()1()1()2()1()()()(11 (4-1) MATLAB 提供了专门用于绘制离散时间系统零极点图的zplane 函数: ①zplane 函数 格式一:zplane(z, p)功能:绘制出列向量z 中的零点(以符号"○" 表示)和列向量p 中的极点(以符号"×"表示),同时画出参考单位圆,并在多阶零点和极点的右上角标出其阶数。

如果z 和p 为矩阵,则zplane 以不同的颜色分别绘出z 和p 各列中的零点和极点。

格式二:zplane(B, A)功能:绘制出系统函数H(z)的零极点图。

其中B 和A 为系统函数)(z H (4-1)式的分子和分母多项式系数向量。

zplane(B, A) 输入的是传递函数模型,函数首先调用root 函数以求出它们的零极点。

②roots 函数。

用于求多项式的根,调用格式:roots(C),其中C 为多项式的系数向量,降幂排列。

2.离散系统的频率特性MATLAB 提供了专门用于求离散系统频响特性的freqz 函数,调用格式如下: ①H = freqz(B,A,W)功能:计算由向量W (rad )指定的数字频率点上(通常指[0,π]范围的频率)离散系统)(z H 的频率响应)e (j ωH ,结果存于H 向量中。

数字信号处理实验文档

数字信号处理实验文档

实验任务:1、给出音频信号的时域和频谱特性;2、设计一个IIR数字滤波器,给出滤波器的时域和频谱特性,并利用滤波器对音频信号进行滤波,给出滤波结果(滤波后的时域和频谱特性);3、设计一个FIR数字滤波器,给出滤波器的时域和频谱特性,并利用滤波器对音频信号进行滤波,给出滤波结果(滤波后的时域和频谱特性)。

实验原理:采样频率、位数及采样定理采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。

采样频率的倒数是采样周期或者叫作采样时间,它是采样之间的时间间隔。

通俗的讲采样频率是指计算机每秒钟采集多少个声音样本,是描述声音文件的音质、音调,衡量声卡、声音文件的质量标准。

采样频率越高,即采样的间隔时间越短,则在单位时间内计算机得到的声音样本数据就越多,对声音波形的表示也越精确。

采样位数可以理解为声卡处理声音的解析度。

这个数值越大,解析度就越高,录制和回放的声音就越真实。

我们首先要知道:电脑中的声音文件是用数字0和1来表示的。

所以在电脑上录音的本质就是把模拟声音信号转换成数字信号。

反之,在播放时则是把数字信号还原成模拟声音信号输出。

采样定理又称奈奎斯特定理,在进行模拟/数字信号的转换过程中,当采样频率fs不小于信号中最高频率fm的2倍时,采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的5~10倍。

IIR数字滤波器设计原理利用双线性变换设计IIR滤波器(巴特沃斯数字低通滤波器的设计),首先要设计出满足指标要求的模拟滤波器的传递函数Ha(s),然后由Ha(s)通过双线性变换可得所要设计的IIR滤波器的系统函数H(z)。

如果给定的指标为数字滤波器的指标,则首先要转换成模拟滤波器的技术指标,这里主要是边界频率Wp和Ws的转换,对ap和as 指标不作变化。

边界频率的转换关系为∩=2/T tan(w/2)。

接着,按照模拟低通滤波器的技术指标根据相应设计公式求出滤波器的阶数N 和3dB截止频率∩c ;根据阶数N查巴特沃斯归一化低通滤波器参数表,得到归一化传输函数Ha(p);最后,将p=s/ ∩c 代入Ha(p)去归一,得到实际的模拟滤波器传输函数Ha(s)。

数字信号处理实验报告_五个实验

数字信号处理实验报告_五个实验

实验一 信号、系统及系统响应一、 实验目的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;2、熟悉时域离散系统的时域特性;3、利用卷积方法观察分析系统的时域特性;4、掌握序列傅立叶变换的计算机实现方法,利用序列的傅立叶变换对连续信号、离散信号及系统响应进行频域分析。

二、 实验原理及方法采样是连续信号数字处理的第一个关键环节。

对采样过程的研究不仅可以了解采样前后信号时域和频域特性发生变化以及信号信息不丢失的条件,而且可以加深对傅立叶变换、Z 变换和序列傅立叶变换之间关系式的理解。

对一个连续信号)(t x a 进行理想采样的过程可用下式表示:)()()(^t p t t xx aa=其中)(^t x a 为)(t x a 的理想采样,p(t)为周期脉冲,即∑∞-∞=-=m nT t t p )()(δ)(^t x a的傅立叶变换为)]([1)(^s m a m j X T j a XΩ-Ω=Ω∑∞-∞=上式表明^)(Ωj Xa为)(Ωj Xa的周期延拓。

其延拓周期为采样角频率(T /2π=Ω)。

只有满足采样定理时,才不会发生频率混叠失真。

在实验时可以用序列的傅立叶变换来计算^)(Ωj X a 。

公式如下:Tw jw ae X j X Ω==Ω|)()(^离散信号和系统在时域均可用序列来表示。

为了在实验中观察分析各种序列的频域特性,通常对)(jw e X 在[0,2π]上进行M 点采样来观察分析。

对长度为N 的有限长序列x(n),有:n jw N n jw k ke m x eX--=∑=)()(1其中,k Mk πω2=,k=0,1,……M-1 时域离散线性非移变系统的输入/输出关系为 ∑∞-∞=-==m m n h m x n h n x n y )()()(*)()(上述卷积运算也可在频域实现)()()(ωωωj j j e H e X eY =三、 实验程序s=yesinput(Please Select The Step Of Experiment:\n 一.(1时域采样序列分析 s=str2num(s); close all;Xb=impseq(0,0,1); Ha=stepseq(1,1,10);Hb=impseq(0,0,3)+2.5*impseq(1,0,3)+2.2*impseq(2,0,3)+impseq(3,0,3); i=0;while(s);%时域采样序列分析 if(s==1) l=1; k=0;while(1)if(k==0)A=yesinput('please input the Amplitude:\n',...444.128,[100,1000]); a=yesinput('please input the Attenuation Coefficient:\n',...222.144,[100,600]); w=yesinput('please input the Angle Frequence(rad/s):\n',...222.144,[100,600]); end k=k+1;fs=yesinput('please input the sample frequence:\n',...1000,[100,1200]); Xa=FF(A,a,w,fs); i=i+1;string+['fs=',num2str(fs)]; figure(i)DFT(Xa,50,string); 1=yesinput 1=str2num(1); end%系统和响应分析else if(s==2)kk=str2num(kk);while(kk)if(kk==1)m=conv(Xb,Hb);N=5;i=i+1;figure(i)string=('hb(n)');Hs=DFT(Hb,4,string);i=i+1;figure(i)string('xb(n)');DFT(Xb,2,string);string=('y(n)=xb(n)*hb(n)');else if (kk==2)m=conv(Ha,Ha);N=19;string=('y(n)=ha(n)*(ha(n)');else if (kk==3)Xc=stepseq(1,1,5);m=conv(Xc,Ha);N=14;string=('y(n)=xc(n)*ha(n)');endendendi=i+1;figure(i)DFT(m,N,string);kk=yesinputkk=str2num(kk);end卷积定理的验证else if(s==3)A=1;a=0.5;w=2,0734;fs=1;Xal=FF(A,a,w,fs);i=i+1;figure(i)string=('The xal(n)(A=1,a=0.4,T=1)'); [Xa,w]DFT(Xal,50,string);i=i+1;figure(i)string =('hb(n)');Hs=DFT(Hb,4,string);Ys=Xs.*Hs;y=conv(Xal,Hb);N=53;i=i+1;figure(i)string=('y(n)=xa(n)*hb(n)');[yy,w]=DFT(y,N,string);i=i+1;figure(i)subplot(2,2,1)plot(w/pi,abs(yy));axis([-2 2 0 2]);xlabel('w/pi');ylabel('|Ys(jw)|');title(FT[x(n)*h(n)]');subplot(2,2,3)plot(w/pi,abs(Ys));axis([-2 2 0 2]);xlabel('w/pi');ylabel('|Ys(jw)|');title('FT[xs(n)].FT[h(n)]');endendend子函数:离散傅立叶变换及X(n),FT[x(n)]的绘图函数function[c,l]=DFT(x,N,str)n=0:N-1;k=-200:200;w=(pi/100)*k;l=w;c=x*Xc=stepseq(1,1,5);子函数:产生信号function c=FF(A,a,w,fs)n=o:50-1;c=A*exp((-a)*n/fs).*sin(w*n/fs).*stepseq(0,0,49); 子函数:产生脉冲信号function [x,n]=impseq(n0,n1,n2)n=[n1:n2];x=[(n-n0)==0];子函数:产生矩形框信号function [x,n]=stepseq(n0,n1,n2) n=[n1:n2];x=[(n-n0>=0)];四、 实验内容及步骤1、认真复习采样理论,离散信号与系统,线性卷积,序列的傅立叶变换及性质等有关内容,阅读本实验原理与方法。

最新数字信号处理实验报告

最新数字信号处理实验报告

最新数字信号处理实验报告一、实验目的本次实验旨在加深对数字信号处理(DSP)理论的理解,并通过实践操作掌握数字信号处理的基本方法和技术。

通过实验,学习如何使用相关软件工具进行信号的采集、分析、处理和重构,提高解决实际问题的能力。

二、实验内容1. 信号采集与分析- 使用数字示波器采集模拟信号,并将其转换为数字信号。

- 利用傅里叶变换(FFT)分析信号的频谱特性。

- 观察并记录信号的时域和频域特性。

2. 滤波器设计与实现- 设计低通、高通、带通和带阻滤波器。

- 通过编程实现上述滤波器,并测试其性能。

- 分析滤波器对信号的影响,并调整参数以优化性能。

3. 信号重构实验- 应用所学滤波器对采集的信号进行去噪处理。

- 使用逆傅里叶变换(IFFT)重构经过滤波处理的信号。

- 比较重构信号与原始信号的差异,评估处理效果。

三、实验设备与材料- 计算机及DSP相关软件(如MATLAB、LabVIEW等)- 数字示波器- 模拟信号发生器- 数据采集卡四、实验步骤1. 信号采集- 连接并设置好数字示波器和模拟信号发生器。

- 生成一系列不同频率和幅度的模拟信号。

- 通过数据采集卡将模拟信号转换为数字信号。

2. 滤波器设计- 在DSP软件中设计所需的滤波器,并编写相应的程序代码。

- 调整滤波器参数,如截止频率、增益等,以达到预期的滤波效果。

3. 信号处理与重构- 应用设计的滤波器对采集的数字信号进行处理。

- 利用IFFT对处理后的信号进行重构。

- 通过对比原始信号和重构信号,评估滤波器的性能。

五、实验结果与分析- 展示信号在时域和频域的分析结果。

- 描述滤波器设计参数及其对信号处理的影响。

- 分析重构信号的质量,包括信噪比、失真度等指标。

六、实验结论- 总结实验中所学习到的数字信号处理的基本概念和方法。

- 讨论实验中遇到的问题及其解决方案。

- 提出对实验方法和过程的改进建议。

七、参考文献- 列出实验过程中参考的书籍、文章和其他资源。

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

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

实验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、每个实验完成一份实验报告(必须交);2、实验报告内容包括:实验目的、实验原理、实验过程、实验结果及分析、实验体会;3、报告中要求:格式统一、图表清晰,如果有公式一定要用公式编辑器编写;4、实验报告不能有雷同附:封面格式数字信号处理实验报告实验一:频谱分析与采样定理班级:姓名:学号:二、实验内容实验一频谱分析与采样定理一、实验目的1.观察模拟信号经理想采样后的频谱变化关系。

2.验证采样定理,观察欠采样时产生的频谱混叠现象3.加深对DFT算法原理和基本性质的理解4.熟悉FFT算法原理和FFT的应用二、实验原理根据采样定理,对给定信号确定采样频率,观察信号的频谱三、实验内容和步骤实验内容在给定信号为:1.x(t)=cos(100*π*at)2.x(t)=exp(-at)3.x(t)=exp(-at)cos(100*π*at)其中a为实验者的学号,记录上述各信号的频谱,表明采样条件,分析比较上述信号频谱的区别。

实验步骤1.复习采样理论、DFT的定义、性质和用DFT作谱分析的有关内容。

2.复习FFT算法原理和基本思想。

3.确定实验给定信号的采样频率,编制对采样后信号进行频谱分析的程序四、实验设备计算机、Matlab软件五、实验报告要求1.整理好经过运行并证明是正确的程序,并且加上详细的注释。

2.对比不同采样频率下的频谱,作出分析报告。

实验二卷积定理一、实验目的通过本实验,验证卷积定理,掌握利用DFT和FFT计算线性卷积的方法。

二、实验原理时域圆周卷积在频域上相当于两序列DFT的相乘,因而可以采用FFT的算法来计算圆周卷积,当满足121L N N≥+-时,线性卷积等于圆周卷积,因此可利用FFT 计算线性卷积。

三、实验内容和步骤1.给定离散信号()h n,用图解法求出两者的线性卷积和圆周卷积;x n和()2.编写程序计算线性卷积和圆周卷积;3.比较不同列长时的圆周卷积与线性卷积的结果,分析原因。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告一、实验目的本次数字信号处理实验的主要目的是通过实际操作和观察,深入理解数字信号处理的基本概念和方法,掌握数字信号的采集、处理和分析技术,并能够运用所学知识解决实际问题。

二、实验设备与环境1、计算机一台,安装有 MATLAB 软件。

2、数据采集卡。

三、实验原理1、数字信号的表示与采样数字信号是在时间和幅度上都离散的信号,可以用数字序列来表示。

在采样过程中,根据奈奎斯特采样定理,为了能够准确地恢复原始信号,采样频率必须大于信号最高频率的两倍。

2、离散傅里叶变换(DFT)DFT 是将时域离散信号变换到频域的一种方法。

通过 DFT,可以得到信号的频谱特性,从而分析信号的频率成分。

3、数字滤波器数字滤波器是对数字信号进行滤波处理的系统,分为有限冲激响应(FIR)滤波器和无限冲激响应(IIR)滤波器。

FIR 滤波器具有线性相位特性,而 IIR 滤波器则在性能和实现复杂度上有一定的优势。

四、实验内容与步骤1、信号的采集与生成使用数据采集卡采集一段音频信号,或者在 MATLAB 中生成一个模拟信号,如正弦波、方波等。

2、信号的采样与重构对采集或生成的信号进行采样,然后通过插值算法重构原始信号,观察采样频率对重构信号质量的影响。

3、离散傅里叶变换对采样后的信号进行DFT 变换,得到其频谱,并分析频谱的特点。

4、数字滤波器的设计与实现(1)设计一个低通 FIR 滤波器,截止频率为给定值,观察滤波前后信号的频谱变化。

(2)设计一个高通 IIR 滤波器,截止频率为给定值,比较滤波前后信号的时域和频域特性。

五、实验结果与分析1、信号的采集与生成成功采集到一段音频信号,并在MATLAB 中生成了各种模拟信号,如正弦波、方波等。

通过观察这些信号的时域波形,对不同类型信号的特点有了直观的认识。

2、信号的采样与重构当采样频率足够高时,重构的信号能够较好地恢复原始信号的形状;当采样频率低于奈奎斯特频率时,重构信号出现了失真和混叠现象。

数字信号处理实验讲义

数字信号处理实验讲义

数字信号处理实验讲义实验一序列、频谱、卷积一、实验目的1.掌握序列的输入方法;2.熟悉不同序列的特征;3.了解确定性信号谱分析的方法;4.验证卷积的计算过程;二、实验要求1.利用matlab程序,生成几种常用的序列,如矩形序列,单位脉冲序列;2.绘制图形,观察序列特征;3.研究其频率特性,绘制图形,观察频率响应特征;4.利用matlab程序,验证卷积的过程;三、实验步骤1.矩形序列(1)生成长度为N的矩形序列,观察并记录生成的图形;n=1:50x=sign(sign(10-n)+1);close all;subplot(3,1,1);stem(x);title('单位矩形信号序列');(2)研究其频率特性,()∑∞-∞=-=n nj Nj en R e H ωω)(,分别研究其幅频特性和相频特性,观察并记录生成的图形;k=-25:25;X=x*(exp(-j*pi/25)).^(n'*k); magX=abs(X); %绘制x(n)的幅度谱subplot(3,1,2);stem(magX);title('单位矩形信号的幅度谱'); angX=angle(X); %绘制x(n)的相位谱subplot(3,1,3);stem(angX) ; title ('单位矩形信号的相位谱')2.单位脉冲序列(1)生成单位脉冲序列,观察并记录生成的图形;n=1:50; %定义序列的长度是50x=zeros(1,50); %注意:MATLAB中数组下标从1开始x(1)=1;close all;subplot(3,1,1);stem(x);title('单位冲击信号序列');(2) 研究其频率特性,()∑∞-∞=-=n nj j en x e H ωω)(,分别研究其幅频特性和相频特性,观察并记录生成的图形;k=-25:25;X=x*(exp(-j*pi/12.5)).^(n'*k); magX=abs(X); %绘制x(n)的幅度谱subplot(3,1,2);stem(magX);title('单位冲击信号的幅度谱'); angX=angle(X); %绘制x(n)的相位谱subplot(3,1,3);stem(angX) ; title ('单位冲击信号的相位谱')3.卷积过程∑∞-∞=-= =mmnhmxnhnxny)()()(*)()(,n=1:50; %定义序列的长度是50hb=zeros(1,50); %注意:MATLAB中数组下标从1开始hb(1)=1;hb(2)=2.5;hb(3)=2.5;hb(4)=1;close all;subplot(3,1,1);stem(hb);title('系统hb[n]');m=1:50; %定义序列的长度是50A=444.128; %设置信号有关的参数a=50*sqrt(2.0)*pi;T=0.001; %采样率w0=50*sqrt(2.0)*pi;x=A*exp(-a*m*T).*sin(w0*m*T);subplot(3,1,2);stem(x);title('输入信号x[n]');y=conv(x,hb);subplot(3,1,3);stem(y);title('输出信号y[n]');四、实验报告要求1.写出生成对应序列的matlab程序,并分析;2.记录生成的图形;3.描述对应的序列和频率特性的特征;4.验证卷积计算结果;五、思考:1.如何生成实指数序列?写出对应的matlab程序a1=2n=1:50x1=(a1.^n)subplot(1,1,1)stem(x1);title('实指数序列')2.编写程序验证卷积定律。

数字信号处理实验报告完整版[5篇模版]

数字信号处理实验报告完整版[5篇模版]

数字信号处理实验报告完整版[5篇模版]第一篇:数字信号处理实验报告完整版实验 1利用 T DFT 分析信号频谱一、实验目的1.加深对 DFT 原理的理解。

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

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

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

2.利用 T DFT 求求 DTFT方法 1 1:由恢复出的方法如下:由图 2.1 所示流程可知:101()()()Nj j n kn j nNn n kX e x n e X k W eNωωω∞∞----=-∞=-∞=⎡⎤==⎢⎥⎣⎦∑∑∑由上式可以得到:IDFT DTFT第二篇:数字信号处理实验报告JIANGSUUNIVERSITY OF TECHNOLOGY数字信号处理实验报告学院名称:电气信息工程学院专业:班级:姓名:学号:指导老师:张维玺(教授)2013年12月20日实验一离散时间信号的产生一、实验目的数字信号处理系统中的信号都是以离散时间形态存在的,所以对离散时间信号的研究是数字信号的基本所在。

而要研究离散时间信号,首先需要产生出各种离散时间信号。

使用MATLAB软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大绘图功能,便于用户直观地处理输出结果。

通过本实验,学生将学习如何用MATLAB产生一些常见的离散时间信号,实现信号的卷积运算,并通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。

史上最全数字信号处理实验报告完美版

史上最全数字信号处理实验报告完美版

实验一、零极点分布对系统频率响应的影响Y(n)=x(n)+ay(n-1)1、调用MATLAB函数freqz计算并绘制的幅频特性和相频特性其中:1 代表a=0.7;2代表a=0.8;3代表a=0.9a=0.7时的零极点图A=0.8时的零极点图a=0.9时的零极点图观察零极点的分布与相应曲线易知:小结:系统极点z=a,零点z=0,当B点从w=0逆时针旋转时,在w=0点,由于极点向量长度最短,形成波峰,并且当a越大,极点越接近单位圆,峰值愈高愈尖锐;在w=pi点形成波谷;z=0处零点不影响幅频响应2、先求出系统传函的封闭表达式,通过直接计算法得出的幅频特性和相频特性曲线。

其中:1代表a=0.7;2代表a=0.8;3代表a=0.9附录程序如下:(对程序进行部分注释)>> a=0.7;w=0:0.01:2*pi;%设定w的范围由0到2π,间隔为0.01y=1./(1-a*exp(-j*w)); %生成函数subplot(211);plot(w/2/pi,10*log(abs(y)),'g');%生成图像其中通过调用abs函数计算幅值hold on;xlabel('Frequency(Hz)');%定义横坐标名称ylabel('magnitude(dB)');%定义纵坐标名称title('a=0.8,直接计算h(ejw)');grid on;%定义图片标题subplot(212);plot(w/2/pi,unwrap(angle(y)),'g');grid on;%生成图像其中通过调用angle计算相角,‘g’为规定线条颜色hold on;>> a=0.8;w=0:0.01:2*pi;y=1./(1-a*exp(-j*w));subplot(211);plot(w/2/pi,10*log(abs(y)),'r');hold on;xlabel('Frequency(Hz)');ylabel('magnitude(dB)');title('a=0.8,直接计算h(ejw)');grid on;subplot(212);plot(w/2/pi,unwrap(angle(y)),'r');grid on;hold on;>> a=0.9;w=0:0.01:2*pi;y=1./(1-a*exp(-j*w));subplot(211);plot(w/2/pi,10*log(abs(y)),'b');hold on;xlabel('Frequency(Hz)');ylabel('magnitude(dB)');title('a=0.9,直接计算h(ejw)');grid on;subplot(212);plot(w/2/pi,unwrap(angle(y)),'b');grid on;hold on;2、y(n)=x(n)=ax(n-1)通过调用freqz函数绘图,其中:1代表a=0.7,;2代表a=0.8;3代表a=0.9附录程序如下:(因为程序同实验一相同不再进行注释)a=0.7;A=1;B=[1,a];freqz(B,A,256,'whole',1);title('a=0.7');hold on;a=0.8;A=1;B=[1,a];freqz(B,A,256,'whole',1);title('a=0.8');hold on;a=0.9;A=1;B=[1,a];freqz(B,A,256,'whole',1);title('a=0.9');以下为a为不同数值时的零极点图a=0.7A=0.8A=0.9小结:系统极点z=0,零点z=a,当B点从w=0逆时针旋转时,在w=0点,由于零点向量长度最长,形成波峰:在w=pi点形成波谷;z=a处极点不影响相频响应。

数字信号处理实验报告

数字信号处理实验报告

数字信号处理实验报告数字信号处理实验报告一、实验目的本实验旨在通过数字信号处理的方法,对给定的信号进行滤波、频域分析和采样率转换等操作,深入理解数字信号处理的基本原理和技术。

二、实验原理数字信号处理(DSP)是一种利用计算机、数字电路或其他数字设备对信号进行各种处理的技术。

其主要内容包括采样、量化、滤波、变换分析、重建等。

其中,滤波器是数字信号处理中最重要的元件之一,它可以用来提取信号的特征,抑制噪声,增强信号的清晰度。

频域分析是指将时域信号转化为频域信号,从而更好地理解信号的频率特性。

采样率转换则是在不同采样率之间对信号进行转换,以满足不同应用的需求。

三、实验步骤1.信号采集:首先,我们使用实验室的信号采集设备对给定的信号进行采集。

采集的信号包括噪声信号、含有正弦波和方波的混合信号等。

2.数据量化:采集到的信号需要进行量化处理,即将连续的模拟信号转化为离散的数字信号。

这一步通常通过ADC(模数转换器)实现。

3.滤波处理:将量化后的数字信号输入到数字滤波器中。

我们使用不同的滤波器,如低通、高通、带通等,对信号进行滤波处理,以观察不同滤波器对信号的影响。

4.频域分析:将经过滤波处理的信号进行FFT(快速傅里叶变换)处理,将时域信号转化为频域信号,从而可以对其频率特性进行分析。

5.采样率转换:在进行上述处理后,我们还需要对信号进行采样率转换。

我们使用了不同的采样率对信号进行转换,并观察采样率对信号处理结果的影响。

四、实验结果及分析1.滤波处理:经过不同类型滤波器处理后,我们发现低通滤波器可以有效抑制噪声,高通滤波器可以突出高频信号的特征,带通滤波器则可以提取特定频率范围的信号。

这表明不同类型的滤波器在处理不同类型的信号时具有不同的效果。

2.频域分析:通过FFT处理,我们将时域信号转化为频域信号。

在频域分析中,我们可以更清楚地看到信号的频率特性。

例如,对于噪声信号,我们可以看到其频率分布较为均匀;对于含有正弦波和方波的混合信号,我们可以看到其包含了不同频率的分量。

数字信号处理 实验报告

数字信号处理    实验报告

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

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

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

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

二、实验原理与方法 1. 时域采样定理:对一个连续信号xa(t)进行理想采样的过程如下: xa1(t)=xa(t)p(t)其中xa1(t)为xa(t)的理想采样,p(t)为周期冲击脉冲。

xa1(t)的傅里叶变换Xa1(j Ω)为:11()[()]m Xa j Xa j m s T +∞=-∞Ω=Ω-Ω∑表明Xa1(j Ω)为Xa(j Ω)的周期延拓,其延拓周期为采样角频率(s Ω=2π/T )。

离散信号和系统在时域均可用序列来表示。

2. LTI 系统的输入输出关系: y(n)=x(n)*h(n)=()()m x m h n m +∞=-∞-∑()()()j j j Y e X e H e ωωω=三、实验内容1. 分析采样序列的特性。

1) 取模拟角频w=70.7*pi rad/s ,采样频率fs=1000Hz>2w ,发现无频谱混叠现象。

2) 改变采样频率, fs=300 Hz<2w ,频谱产生失真。

3) 改变采样频率, fs=200Hz<2w,频谱混叠,产生严重失真2. 时域离散信号、系统和系统响应分析。

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

2) 观察系统ha(n)对信号xc(n)的响应特性。

可发现:信号通过系统,相当于x(n)与系统函数h(n)卷积,时域卷积即对应频域函数相乘。

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

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

实验一、离散时间系统及离散卷积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);结果:。

数字信号处理实验

数字信号处理实验

实验二 IIR、FIR数字滤波器设计
三、实验内容
1. 产生三频率叠加的信号。 2. 显示其频谱分布。 3. 设计一低通IIR滤波器,滤除最高频率信号。 4. 设计一低通FIR滤波器, 滤除两个高频信号。
实验二 I个频率分量,三个信号的频率分 别为100Hz,1400Hz,3000Hz,功率大小一样,绘制其时域 及频谱; ②设计一IIR滤波器,滤除1400Hz和3000Hz,IIR滤波器要求 幅度特性图在通带和阻带均为单调下降,阻带衰减大于40dB ,绘制滤波器及滤波后的时域及频谱; ③设计一FIR滤波器,滤除3000Hz的信号,FIR滤波器(任选 一个要求) i.带内波动小于1dB,带外衰减大于47dB
二、学时安排
2学时
实验一模拟信号采样与重构及频谱分析FFT
三、实验内容
1 给定一连续信号,如正弦、矩形等信号,采用 数字化方式进行近似表示,并描述其频谱,绘 制对应的时域及频谱图。
2 对该连续信号,按不同采样频率进行采样,绘 制对应的时域离散信号的时域及频域图,分析 不同采样率对频谱的影响。
3 对按不同采样率离散后的信号分别采用理想低 通或零阶保持器进行恢复,比较恢复效果。
ii. 过渡带小于4 /8
绘制FIR滤波器及滤波后的时域及频谱;
实验报告填写要求
1. 按照电子工程系实验报告格式要求进行填写;
2. 附上实验的MATLAB原程序;
实验结束时
实验设计完成后,请在场指导老师进行检查程 序及结果,得到老师允许后方可离开。 实验指导老师为:
数字信号处理实验
实验一模拟信号采样与重构及频谱分析FFT
一、实验目的
本实验重在使学生通过MATLAB的编程仿真及绘图,对模 拟信号按照采样定理的要求进行采样,图形表示,再对离散信 号进行无失真重构,对采样前后的信号进行频谱分析,使学生 能够利用计算机完成对信号的上述处理与变换功能,分析频谱 现象。

数字信号处理实验教材正文资料

数字信号处理实验教材正文资料

实验一 离散时间信号与系统的实现与表示由于MATLAB 数值计算的特点,用它来分析离散时间信号与系统是很方便的。

一、离散时间信号在MA TLAB 中,可以用一个列向量来表示一个有限长度的序列,例如:(){}3,2,1,3,2,0,1,2-=n x在MA TLAB 中可以表示为: >>x = [2 1 0 2 3 -1 2 3];但是这种表示方法没有包含抽样的位置信息,要完全表示()n x ,要用x 和n 两个向量表示,例如:(){}3,2,1,3,2,0,1,2-=n x在MA TLAB 中可以表示为: >> n=[-4 -3 -2 -1 0 1 2 3]; >> x = [2 1 0 2 3 -1 2 3];由于内存有限,MA TLAB 无法表示无限序列。

下面介绍几种典型离散信号的表示方法。

1、单位脉冲序列()⎩⎨⎧≠==0001n n n δ(1)在MATLAB 中zeros(1,N)函数来实现有限区间的()n δ,例如:>>x= zeros(1,N); >>x(1)=1;(2)我们还可以通过编写impseq 函数来实现,该函数代码如下:(箭头表示第0个抽样点的位置)function [x,n]= impseq(n0,n1,n2) %产生单位脉冲序列x(n)=δ(n-n0) %[x,n]= impseq(n0,n1,n2) % 1,n=n0 % x = % 1,n ≠n0 %n=时间序列 n=n1:n2; x=[(n-n0)==0]该函数产生如下信号,取值区间为],[21n n ,201n n n ≤≤,得到序列()⎩⎨⎧≠==-00001n n n n n n δ例1:输入命令:>>[x,n]= impseq(0,-5,5)得到如下结果: x =0 0 0 0 0 1 0 0 0 0 0 n =-5 -4 -3 -2 -1 0 1 2 3 4 52、单位阶跃序列()⎩⎨⎧<≥=0001n n n u (1)在MATLAB 中ones(1,N)函数来实现有限区间的()n u ,例如:>>x= ones(1,N);(2)我们还可以通过编写impseq 函数来实现,该函数代码如下:function [x,n]= impseq(n0,n1,n2)%产生单位阶跃序列x(n)=u(n-n0);n1≤n0≤n2 %[x,n]= impseq(n0,n1,n2) % 1,n ≥n0 % x = % 1,n<n0 %n=时间序列 n=n1:n2; x=[(n-n0)>=0]该函数产生如下信号,取值区间为],[21n n ,201n n n ≤≤,得到序列()⎩⎨⎧<≥=-0001n n n n n n u例2:输入命令:>>[x,n]= impseq(0,-5,5)得到如下结果: x =0 0 0 0 0 1 1 1 1 1 1 n =-5 -4 -3 -2 -1 0 1 2 3 4 53、正弦序列sin 函数就可以产生正弦波,例如:>>n= 0:N-1; >>x=A*sin(n) 4、实指数序列()R a a n x n ∈=MATLAB 实现:>>n= 0:N-1; >>x=a..^n 5、复指数序列()()n j e n x ωσ+=MATLAB 实现:>>n= 0:N-1;>>x=exp((lu+j*w)*n); 6、随机序列rand(1,N):产生[0,1]上均匀分布的随机序列;randn(1,N):产生均值为0,方差为1的高斯随机序列,即白噪声序列。

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

实验一 自适应滤波器一、实验目的1、掌握功率谱估计方法2、会用matlab 对功率谱进行仿真 二、实验原理功率谱估计方法有很多种,一般分成两大类,一类是经典谱估计;另一类是现代谱估计。

经典谱估计可以分成两种,一种是BT 法,另一种是周期法;BT 法是先估计自相关函数,然后将相关函数进行傅里叶变换得到功率谱函数。

相应公式如下所示:||1*01ˆ()()()(11)ˆˆ()(12)N m xx n jwn BTxx m rm x n x n m N P rm e --=∞-=-∞=+-=-∑∑周期图法是采用功率谱的另一种定义,但与BT 法是等价的,相应的功率谱估计如下所示:211ˆ()()01(13)N jw jwnxx n P e x n en N N--==≤≤--∑其计算框图如下所示:)(jw xx e ∧图1.1周期图法计算用功率谱框图由于观测数据有限,所以周期图法估计分辨率低,估计误差大。

针对经典谱估计的缺点,一般有三种改进方法:平均周期图法、窗函数法和修正的周期图平均法。

三、实验要求信号是正弦波加正态零均值白噪声,信噪比为10dB,信号频率为2kHZ,取样频率为100kHZ。

四、实验程序与实验结果(1)用周期图法进行谱估计A、实验程序:%用周期法进行谱估计clear all;N1=128;%数据长度N2=256;N3=512;N4=1024;f=2;%正弦波频率,单位为kHZfs=100;%抽样频率,单位为kHZn1=0:N1-1;n2=0:N2-1;n3=0:N3-1;n4=0:N4-1;a=sqrt(20);%由信噪比为10dB计算正弦信号的幅度wn1=randn(1,N1);xn1=a*sin(2*pi*f*n1./fs)+wn1; Pxx1=10*log10(abs(fft(xn1).^2)/N1);%周期法求功率谱f1=((0:length(Pxx1)-1))/length(Pxx1);wn2=randn(1,N2);xn2=a*sin(2*pi*f*n2./fs)+wn2; Pxx2=10*log10(abs(fft(xn2).^2)/N2);f2=((0:length(Pxx2)-1))/length(Pxx2);wn3=randn(1,N3);xn3=a*sin(2*pi*f*n3./fs)+wn3; Pxx3=10*log10(abs(fft(xn3).^2)/N3);f3=((0:length(Pxx3)-1))/length(Pxx3);wn4=randn(1,N4);xn4=a*sin(2*pi*f*n4./fs)+wn4; Pxx4=10*log10(abs(fft(xn4).^2)/N4);f4=((0:length(Pxx4)-1))/length(Pxx4);subplot(2,2,1);plot(f1,Pxx1);xlabel('频率');ylabel('功率(dB)'); title('功率谱Pxx,N=128');subplot(2,2,2);plot(f2,Pxx2);xlabel('频率');ylabel('功率(dB)'); title('功率谱Pxx,N=256');subplot(2,2,3);plot(f3,Pxx3);xlabel('频率');ylabel('功率(dB)'); title('功率谱Pxx,N=512');subplot(2,2,4);plot(f4,Pxx4);xlabel('频率');ylabel('功率(dB)'); title('功率谱Pxx,N=1024');B、实验仿真结果:(2)采用汉明窗,分段长度L=32,用修正的周期图求平均法进行谱估计A:实验程序:clear all;N=512;%数据长度Ns=32;%分段长度f1=2;%正弦波频率,单位为kHZfs=100;%抽样频率,单位为kHZn=0:N-1;a=sqrt(20);%由信噪比为10dB计算正弦信号的幅度wn=randn(1,N);xn=a*sin(2*pi*f1*n./fs)+wn;w=hamming(32)';%汉明窗Pxx1=abs(fft(w.*xn(1:32),Ns).^2)/norm(w)^2;Pxx2=abs(fft(w.*xn(33:64),Ns).^2)/norm(w)^2;Pxx3=abs(fft(w.*xn(65:96),Ns).^2)/norm(w)^2;Pxx4=abs(fft(w.*xn(97:128),Ns).^2)/norm(w)^2;Pxx5=abs(fft(w.*xn(129:160),Ns).^2)/norm(w)^2;Pxx6=abs(fft(w.*xn(161:192),Ns).^2)/norm(w)^2;Pxx7=abs(fft(w.*xn(193:224),Ns).^2)/norm(w)^2;Pxx8=abs(fft(w.*xn(225:256),Ns).^2)/norm(w)^2;Pxx9=abs(fft(w.*xn(257:288),Ns).^2)/norm(w)^2;Pxx10=abs(fft(w.*xn(289:320),Ns).^2)/norm(w)^2;Pxx11=abs(fft(w.*xn(321:352),Ns).^2)/norm(w)^2;Pxx12=abs(fft(w.*xn(353:384),Ns).^2)/norm(w)^2;Pxx13=abs(fft(w.*xn(385:416),Ns).^2)/norm(w)^2;Pxx14=abs(fft(w.*xn(417:448),Ns).^2)/norm(w)^2;Pxx15=abs(fft(w.*xn(449:480),Ns).^2)/norm(w)^2;Pxx16=abs(fft(w.*xn(481:512),Ns).^2)/norm(w)^2;Pxx=10*log10((Pxx1+Pxx2+Pxx3+Pxx4+Pxx5+Pxx6+Pxx7+Pxx8+Pxx9 +Pxx10+Pxx11+Pxx12+Pxx13+Pxx14+Pxx15+Pxx16)/16);f=((0:length(Pxx)-1))/length(Pxx);plot(f,Pxx);xlabel('频率');ylabel('功率(dB)');title('加窗平均周期图法功率谱Pxx,N=512');grid on;B:实验仿真结果:五.参考文献:[1]丁玉美,阔永红,高新波.数字信号处理-时域离散随机信号处理[M].西安:西安电子科技大学出版社,2002.[2]万建伟,王玲.信号处理仿真技术[M].长沙:国防科技大学出版社,2008.实验二 卡尔曼滤波器的设计一.实验目的1.熟悉并掌握卡尔曼滤波、自适应滤波和谱估计的原理。

2.可以仿真符合要求的卡尔曼滤波器、自适应滤波器和各种谱估计方法。

3.掌握卡尔曼滤波器的递推公式和仿真方法。

4.熟悉matlab 的用法。

二.实验原理卡尔曼滤波是用状态空间法描述系统的,由状态方程和测量方程所组成。

卡尔曼滤波用前一个状态的估计值和最近一个观测数据来估计状态变量的当前值,并以状态变量的估计值的形式给出。

其状态方程和量测方程如下所示:1(11)(12)k k k k k k k kx A x w y C x v +=+-=+-其中,k 表示时间,输入信号k w 是一白噪声,输出信号的观测噪声k v 也是一个白噪声,输入信号到状态变量的支路增益等于1,即B=1;A 表示状态变量之间的增益矩阵,可随时间变化,k A 表示第k 次迭代的取值,C 表示状态变量与输出信号之间的增益矩阵,可随时间变化,其信号模型如图1.1所示(k 用1k -代替)。

图1.1 卡尔曼滤波器的信号模型卡尔曼滤波是采用递推的算法实现的,其基本思想是先不考虑输入信号k w 和观测噪声k v 的影响,得到状态变量和输出信号的估计值,再用输出信号的估计误差加权矫正状态变量的估计值,使状态变量估计误差的均方值最小。

其递推公式如下所示:0.020.021110.040.041ˆˆ(y x )(112)(1)(112)1(112)(I )(112)k k k k k k k kk k k k k x e x H e a H P P b P e P e c P H P d --------⎧=+--⎪''=+-⎪⎨'=+--⎪⎪'=--⎩ 假设初始条件11,,,,,,-∧-k k k k k k k P x y R Q C A 已知,其中]var[],[0000x P x E x ==∧,那么递推流程见图1.2所示。

-k P kP 式(1-3)kH k x ∧kP图1.2 卡尔曼滤波递推流程图三.实验要求一连续平稳的随机信号x(t),自相关()x r eττ-=,信号x(t)为加性噪声所干扰,噪声是白噪声,测量值的离散值y(k)为已知。

Matlab仿真程序如下:%编卡尔曼滤波递推程序,估计信号x(t)的波形clear all;clc;Ak=exp(-0.02); %各系数由前面确定;Ck=1; Rk=0.1; p(1)=20; %各初值;Qk=1-exp(-0.04);p1(1)=Ak*p(1)*Ak'+Qk; %由p1代表p';x(1)=0; %设信号初值为0;H(1)=p1(1)*Ck'*inv(Ck*p1(1)*Ck'+Rk);zk=[-3.2,-0.8,-14,-16,-17,-18,-3.3,-2.4,-18,-0.3,-0.4,-0.8,-19,-2.0,-1.2,-11, -14,-0.9,0.8,10,0.2,0.5,-0.5,2.4,-0.5,0.5,-13,0.5,10,-12,0.5,-0.6,-15,-0.7,15 ,0.5,-0.7,-2.0,-19,-17,-11,-14] %zk为测量出来的离散值;N=length(zk); %要测量的点数;for k=2:Np1(k)=Ak*p(k-1)*Ak'+Qk; %未考虑噪声时的均方误差阵;H(k)=p1(k)*Ck'*inv(Ck*p1(k)*Ck'+Rk); %增益方程;I=eye(size(H(k))); %产生和H(k)维数相同的单位矩阵;p(k)=(I-H(k)*Ck)*p1(k); %滤波的均方误差阵;x(k)=Ak*x(k-1)+H(k)*(zk(k)-Ck*Ak*x(k-1)); %递推公式;end,x %显示信号x(k)的数据;m=1:N;n=m*0.02;plot(n,zk,'-r*',n,x,'-bo'); %便于比较zk和x(k)在同一窗口输出;xlabel('t/s','Fontsize',16);ylabel('z(t),x(t)','fontsize',16);title('卡尔曼滤波递推——x(t)的估计波形与z(t)波形','fontsize',16) legend('观测数据z(t)','信号估计值x(t)',2);grid;四.实验结果五.实验小结通过卡尔曼滤波估计信号与观测信号比较知,卡尔曼滤波输出的估计信号x与实际观测到的离散值)(t z还是存在一定的误差,卡尔曼滤波是从初始状态)(t就采用递推方法进行滤波,那么在初值迭代后的一段时间内可能会出现较大的误差,随着迭代进行,各参数逐渐趋于稳定,后面的估计值与观察值的误差就减少了。

相关文档
最新文档