数字信号处理实验二()
数字信号处理 实验报告 实验二 应用快速傅立叶变换对信号进行频谱分析

数字信号处理实验报告实验二应用快速傅立叶变换对信号进行频谱分析2011年12月7日一、实验目的1、通过本实验,进一步加深对DFT 算法原理合基本性质的理解,熟悉FFT 算法 原理和FFT 子程序的应用。
2、掌握应用FFT 对信号进行频谱分析的方法。
3、通过本实验进一步掌握频域采样定理。
4、了解应用FFT 进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT 。
二、实验原理与方法1、一个连续时间信号)(t x a 的频谱可以用它的傅立叶变换表示()()j t a a X j x t e dt +∞-Ω-∞Ω=⎰2、对信号进行理想采样,得到采样序列()()a x n x nT =3、以T 为采样周期,对)(n x 进行Z 变换()()n X z x n z +∞--∞=∑4、当ωj ez =时,得到序列傅立叶变换SFT()()j j n X e x n e ωω+∞--∞=∑5、ω为数字角频率sT F ωΩ=Ω=6、已经知道:12()[()]j a m X e X j T T Tωωπ+∞-∞=-∑ ( 2-6 )7、序列的频谱是原模拟信号的周期延拓,即可以通过分析序列的频谱,得到相应连续信号的频谱。
(信号为有限带宽,采样满足Nyquist 定理)8、无线长序列可以用有限长序列来逼近,对于有限长序列可以使用离散傅立叶变换(DFT )。
可以很好的反映序列的频域特性,且易于快速算法在计算机上实现。
当序列()x n 的长度为N 时,它的离散傅里叶变换为:1()[()]()N knN n X k DFT x n x n W-===∑ 其中2jNN W eπ-=,它的反变换定义为:101()[()]()N knN k x n IDFT X k X k W N --===∑比较Z 变换式 ( 2-3 ) 和DFT 式 ( 2-7 ),令kN z W -=则1()()[()]|kNN nkN N Z W X z x n W DFT x n ---====∑ 因此有()()|kNz W X k X z -==k N W -是Z 平面单位圆上幅角为2kNπω=的点,也即是将单位圆N 等分后的第k 点。
数字信号处理实验报告(实验二)

实验二 时域采样与频域采样1. 实验目的:(1) 掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息。
(2) 掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。
(3) 会用MATLAB 语言进行时域抽样与信号重建的方法,以及频域抽样与恢复时程序的编写方法。
2. 实验原理:了解时域采样定理的要点,理解理想采样信号)(ˆt xa 和模拟信号)(t x a 之间的关系,了解频域采样定理的要点,掌握这两个采样理论的结论:“时域采样频谱周期延拓,频域采样时域信号周期延拓”。
3. 实验内容:(1)时域采样理论的验证。
给定模拟信号,)()sin()(0t u t Ae t x t a Ω=-α式中A=444.128,α=502π,0Ω=502πrad/s(2)用DFT(FFT)求该模拟信号的幅频特性,选取三种采样频率,以验证时域采样理论。
(3)编写实验程序,计算)(1n x 、)(2n x 和)(3n x 的幅度特性,并绘图显示。
观察分析频谱混叠失真。
(4)频域采样理论的验证。
给定信号如下:⎪⎩⎪⎨⎧≤≤-≤≤+=其它02614271301)(n n n n n x(5)编写程序分别对频谱函数()FT[()]j X e x n ω=在区间]2,0[π上等间隔采样32和16点,得到)()(1632k X k X 和,再分别对)()(1632k X k X 和进行32点和16点IFFT ,得到)()(1632n x n x 和。
(6)分别画出()j X e ω、)()(1632k X k X 和的幅度谱,并绘图显示x(n)、)()(1632n x n x 和的波形,进行对比和分析,验证总结频域采样理论。
4. 思考题:如果序列x(n)的长度为M ,希望得到其频谱()j X e ω在]2,0[π上的N 点等间隔采样,当N<M 时, 如何用一次最少点数的DFT 得到该频谱采样?答:将长序列分段分段计算,这种分段处理方法有重叠相加法和重叠保留法两种。
数字信号处理实验2

常见离散信号的 M ATLAB 产生和图形显示 姓名: 刘雷明 学号:222015327012037 一、实验目的(1)熟悉MATLAB 应用环境,常用窗口的功能和使用方法。
(2)加深对常用离散时间信号的理解。
(3)掌握简单的绘图命令。
(4)掌握线性卷积的计算机编程方法。
二、实验原理与方法1)单位抽样序列⎧1 n = 0δ (n ) = ⎨ n ≠ 0⎩0 如果δ (n ) 在时间轴上延迟了 k 个单位,得到δ (n - k ) 即:1 n = kδ (n - k ) = ⎨ n ≠ 0⎩0(2)单位阶跃序列 ⎧1 n ≥ 0u (n ) = ⎨ n < 0⎩0 ⎧1 0 ≤ n ≤ N -1 (3)矩形序列R N (n ) = ⎨ ⎩0 其他(4)正弦序列x (n ) = A sin(wn +ϕ)(5)复正弦序列x (n ) = e jwn(6)指数序列x(n)= a n(7)线性时不变系统的响应为如下的卷积计算式:∞y(n)= x (n)* h(n)=∑x(m)h(n - m)m=-∞三、实验内容及步骤(1)复习常用离散时间信号的有关内容。
(2)编制程序产生上述 6 种序列(长度可输入确定,对(4) (5) (6)中的参数可自行选择),并绘出其图形。
(3)已知系统的单位脉冲响应h(n)=0.9n u(n),输入信号x(n)= R10 (n),试用卷积法求解系统的输出y(n),并绘出x(n) ~ n 、h(n) ~ n 及y(n) ~ n 图形。
四、实验结果一:二:五思考题MATLAB 在处理数据运算时与其他高级语言相比有何不同?答:m atlab确切说不是一个程序设计语言,而是一个数学运算工具。
与c、java等有本质区别。
matlab里数据存储的基本单元是矩阵,即使一个数,内部也是看做一个矩阵。
数组也是矩阵。
所以对矩阵的运算是最快的。
即如果在matlab里,你用for循环对一个数组进行操作,与直接矩阵操作,运算时间有很大的差别。
数字信号处理第二版(实验二) 信号的采样与重建

实验二信号的采样与重建一,实验目的(1)通过观察采样信号的混叠现象,进一步理解奈奎斯特采样频率的意义。
(2)通过实验,了解数字信号采样转换过程中的频率特征。
(3)对实际的音频文件作内插和抽取操作,体会低通滤波器在内插和抽取中的作用。
二,实验内容(1)采样混叠,对一个模拟信号Va(t)进行等间采样,采样频率为200HZ,得到离散时间信号V(n).Va(t)由频率为30Hz,150Hz,170Hz,250Hz,330Hz的5个正弦信号的加权和构成。
Va(t)=6cos(60pi*t)+3sin(300pi*t)+2cos(340pi*t)+4cos(500pi*t )+10sin(660pi*t)观察采样后信号的混叠效应。
程序:clear,close all,t=0:0.1:20;Ts=1/2;n=0:Ts:20;V=8*cos(0.3*pi*t)+5*cos(0.5*pi*t+0.6435)-10*sin(0.7*pi*t);Vn=8*cos(0.3*pi*n)+5*cos(0.5*pi*n+0.6435)-10*sin(0.7*pi*n);subplot(221)plot(t,V),grid on,subplot(222)stem(n,Vn,'.'),gridon,05101520-40-200204005101520-40-2002040(2)输入信号X(n)为归一化频率f1=0.043,f2=0.31的两个正弦信号相加而成,N=100,按因子M=2作抽取:(1)不适用低通滤波器;(2)使用低通滤波器。
分别显示输入输出序列在时域和频域中的特性。
程序:clear;N=100; M=2;f1=0.043; f2=0.31; n=0:N-1;x=sin(2*pi*f1*n)+sin(2*pi*f2*n); y1=x(1:2:100);y2=decimate(x,M,'fir'); figure(1);stem(n,x(1:N));title('input sequence'); xlabel('n');ylabel('fudu'); figure(2); n=0:N/2-1; stem(n,y1);title('output sequence without LP'); xlabel('n');ylabel('fudu'); figure(3); m=0:N/M-1;stem(m,y2(1:N/M));title('output sequence with LP'); xlabel('n');ylabel('fudu'); figure(4);[h,w]=freqz(x);plot(w(1:512),abs(h(1:512)));title('frequency spectrum of the input sequence'); xlabel('w');ylabel('fudu'); figure(5);[h,w]=freqz(y1);plot(w(1:512),abs(h(1:512)));title('frequency spectrum of the output sequence without LP'); xlabel('w');ylabel('fudu'); figure(6);[h,w]=freqz(y2);plot(w(1:512),abs(h(1:512)));title('frequency spectrum of the output sequence without LP'); xlabel('w');ylabel('fudu');0102030405060708090100-2-1.5-1-0.500.511.52input sequencenf u d u05101520253035404550-2-1.5-1-0.500.511.52output sequence without LPnf u d u05101520253035404550-1.5-1-0.50.511.5output sequence with LPnf u d u0.511.522.533.505101520253035404550frequency spectrum of the input sequencewf u d u00.51 1.52 2.53 3.551015202530frequency spectrum of the output sequence without LPwf u d u00.51 1.52 2.53 3.5510152025frequency spectrum of the output sequence without LPwf u d u(3)输入信号X(n)为归一化频率f1=0.043,f2=0.31的两个正弦信号相加而成,长度N=50,内插因子为2.(1)不适用低通滤波器;(2)使用低通滤波器。
数字信号处理实验报告

数字信号处理实验报告引言数字信号处理(Digital Signal Processing,DSP)是一门研究数字信号的获取、分析、处理和控制的学科。
在现代科技发展中,数字信号处理在通信、图像处理、音频处理等领域起着重要的作用。
本次实验旨在通过实际操作,深入了解数字信号处理的基本原理和实践技巧。
实验一:离散时间信号的生成与显示在实验开始之前,我们首先需要了解信号的生成与显示方法。
通过数字信号处理器(Digital Signal Processor,DSP)可以轻松生成和显示各种类型的离散时间信号。
实验设置如下:1. 设置采样频率为8kHz。
2. 生成一个正弦信号:频率为1kHz,振幅为1。
3. 生成一个方波信号:频率为1kHz,振幅为1。
4. 将生成的信号通过DAC(Digital-to-Analog Converter)输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的正弦信号和方波信号的图片)实验分析:通过示波器的显示结果可以看出,正弦信号在时域上呈现周期性的波形,而方波信号则具有稳定的上下跳变。
这体现了正弦信号和方波信号在时域上的不同特征。
实验二:信号的采样和重构在数字信号处理中,信号的采样是将连续时间信号转化为离散时间信号的过程,信号的重构则是将离散时间信号还原为连续时间信号的过程。
在实际应用中,信号的采样和重构对信号处理的准确性至关重要。
实验设置如下:1. 生成一个正弦信号:频率为1kHz,振幅为1。
2. 设置采样频率为8kHz。
3. 对正弦信号进行采样,得到离散时间信号。
4. 对离散时间信号进行重构,得到连续时间信号。
5. 将重构的信号通过DAC输出到示波器上进行显示。
实验结果如下图所示:(插入示波器显示的连续时间信号和重构信号的图片)实验分析:通过示波器的显示结果可以看出,重构的信号与原信号非常接近,并且能够还原出原信号的形状和特征。
这说明信号的采样和重构方法对于信号处理的准确性有着重要影响。
重邮课程实验报告

一、实验名称数字信号处理实验二、实验目的1. 理解数字信号处理的基本概念和原理。
2. 掌握数字滤波器的设计方法及其应用。
3. 熟悉数字信号处理软件的使用,提高实验技能。
三、实验原理数字信号处理(Digital Signal Processing,DSP)是研究数字信号的产生、处理、分析和应用的科学。
本实验主要涉及以下几个方面:1. 数字滤波器的基本概念:数字滤波器是一种对数字信号进行频率选择的装置,可以用于信号的滤波、增强、抑制等。
2. 滤波器的设计方法:主要包括有限脉冲响应(FIR)滤波器和无限脉冲响应(IIR)滤波器的设计方法。
3. 数字信号处理软件的使用:利用MATLAB等软件进行数字信号处理实验,提高实验效率。
四、实验器材1. 实验计算机2. MATLAB软件3. 实验指导书五、实验步骤1. 实验一:FIR滤波器设计(1)打开MATLAB软件,创建一个新的脚本文件。
(2)根据实验指导书的要求,输入FIR滤波器的参数,如滤波器的阶数、截止频率等。
(3)运行脚本文件,观察滤波器的频率响应曲线。
(4)根据实验结果,分析滤波器的性能。
2. 实验二:IIR滤波器设计(1)打开MATLAB软件,创建一个新的脚本文件。
(2)根据实验指导书的要求,输入IIR滤波器的参数,如滤波器的阶数、截止频率等。
(3)运行脚本文件,观察滤波器的频率响应曲线。
(4)根据实验结果,分析滤波器的性能。
3. 实验三:数字信号处理软件的使用(1)打开MATLAB软件,创建一个新的脚本文件。
(2)根据实验指导书的要求,输入信号处理的参数,如采样频率、滤波器类型等。
(3)运行脚本文件,观察信号处理的结果。
(4)根据实验结果,分析数字信号处理软件的应用。
六、实验结果与分析1. 实验一:FIR滤波器设计实验结果表明,所设计的FIR滤波器具有较好的频率选择性,滤波效果符合预期。
2. 实验二:IIR滤波器设计实验结果表明,所设计的IIR滤波器具有较好的频率选择性,滤波效果符合预期。
数字信号处理-实验二-FFT频谱分析

实验三:用FFT对信号作频谱分析10.3.1实验指导1.实验目的学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便正确应用FFT。
2.实验原理用FFT对信号作频谱分析是学习数字信号处理的重要内容。
经常需要进行谱分析的信号是模拟信号和时域离散信号。
对信号进行谱分析的重要问题是频谱分辨率D和分析误差。
频谱分辨率直接和FFT的变换区间N有关,因为FFT能够实现的频率分辨率是2 /N,因此要求2 /N D。
可以根据此式选择FFT的变换区间N。
误差主要来自于用FFT作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N较大时离散谱的包络才能逼近于连续谱,因此N要适当选择大一些。
周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT,得到的离散谱才能代表周期信号的频谱。
如果不知道信号周期,可以尽量选择信号的观察时间长一些。
对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。
如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。
3•实验步骤及内容(1)对以下序列进行谱分析。
X1 (n) RHn)n 1, 0 n 3X2 (n) 8 n, 4 n 70 ,其它n4 n, 0 n 3X3( n) n 3, 4 n 70, 其它n选择FFT的变换区间N为8和16两种情况进行频谱分析。
分别打印其幅频特性曲线。
并进行对比、分析和讨论。
(2)对以下周期序列进行谱分析。
x4(n) cos—n44x5(n) cos( n/4) cos( n/8)选择FFT的变换区间N为8和16两种情况分别对以上序列进行频谱分析。
分别打印其幅频特性曲线。
并进行对比、分析和讨论。
(3)对模拟周期信号进行谱分析x6(t) cos8 t cos16 t cos20 t选择采样频率F s 64Hz ,变换区间N=16,32,64 三种情况进行谱分析。
数字信号处理实验(吴镇扬)答案-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=4k X a (k )p=8 q=4t/Tx a (n )p=8 q=8kX a (k )p=8 q=8幅频特性时域特性t/T x a (n )p=8 q=8k X a (k )p=8 q=8t/T x a (n )51015k X a (k )p=13 q=8t/Tx a (n )p=14 q=851015kX a (k )p=14 q=8时域特性幅频特性分析:由高斯序列表达式知n=p 为期对称轴; 当p 取固定值时,时域图都关于n=8对称截取长度为周期的整数倍,没有发生明显的泄漏现象;但存在混叠,当q 由2增加至8过程中,时域图形变化越来越平缓,中间包络越来越大,可能函数周期开始增加,频率降低,渐渐小于fs/2,混叠减弱;当q 值固定不变,p 变化时,时域对称中轴右移,截取的时域长度渐渐地不再是周期的整数倍,开始无法代表一个周期,泄漏现象也来越明显,因而图形越来越偏离真实值,p=14时的泄漏现象最为明显,混叠可能也随之出现;(2) 观察衰减正弦序列 的时域和幅频特性,a=0.1,f=0.0625,检查谱峰出现的位置是否正确,注意频谱的形状,绘出幅频特性曲线,改变f ,使f 分别等于0.4375和0.5625,观察这两种情况下,频谱的形状和谱峰出现的位置,有无混叠和泄漏现象?说明产生现象的原因。
数字信号处理实验二

实验二信号的分析与处理综合实验一、实验目的目的:综合运用数字信号处理的理论知识进行信号的采样,重构,频谱分析和滤波器的设计,通过理论推导得出相应结论,再利用Matlab作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。
二、基本要求1.掌握数字信号处理的基本概念、基本理论和基本方法;2.学会MA TLAB的使用,掌握MA TLAB的程序设计方法;3.掌握用MA TLAB设计简单实验验证采样定理的方法;4.掌握在Windows环境下语音信号采集的方法;5.学会用MA TLAB对信号进行频谱分析;6.掌握MA TLAB设计FIR和IIR数字滤波器的方法;三、实验内容1.利用简单正弦信号设计实验验证采样定理:(1)Matlab产生离散信号的方法,作图的方法,以及基本运算操作(2)对连续正弦信号以不同的采样频率作采样(3)对采样前后信号进行傅立叶变换,并画频谱图(4)分析采样前后频谱的有变化,验证采样定理。
掌握画频谱图的方法,深刻理解采样频率,信号频率,采样点数,频率分辨率等概念2.真实语音信号的采样重构:录制一段自己的语音信号,并对录制的信号进行采样;画出采样前后语音信号的时域波形和频谱图;对降采样后的信号进行插值重构,滤波,恢复原信号。
(1)语音信号的采集(2)降采样的实现(改变了信号的采样率)(3)以不同采样率采样后,语音信号的频谱分析(4)采样前后声音的变化(5)对降采样后的信号进行插值重构,滤波,恢复原信号3.带噪声语音信号的频谱分析(1)设计一频率已知的噪声信号,与实验2中原始语音信号相加,构造带噪声信号(2)画出原始语音信号和加噪声后信号,以及它们的频谱图(3)利用频谱图分析噪声信号和原语音信号的不同特性4.对带噪声语音信号滤波去噪:给定滤波器性能指标,采样窗函数法或双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采样的语音信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;(1)分析带噪声信号频谱,找出噪声所在的频率段(2)利用matlab中已有的滤波器滤波(3)根据语音信号特点,自己设计滤波器滤波(4)比较各种滤波器性能(至少四种),选择一种合适的滤波器将噪声信号滤除(5)回放语音信号,比较滤波前后声音的变化四、实验原理参考《数字信号处理》教材《数字信号处理的MATLAB实现》万永革编著五、主要实验仪器及材料微型计算机、Matlab。
数字信号处理实验二

实验二信号的分析与处理综合实验一、实验目的目的:综合运用数字信号处理的理论知识进行信号的采样,重构,频谱分析和滤波器的设计,通过理论推导得出相应结论,再利用Matlab作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。
二、基本要求1.掌握数字信号处理的基本概念、基本理论和基本方法;2.学会MATLAB的使用,掌握MA TLAB的程序设计方法;3.掌握用MA TLAB设计简单实验验证采样定理的方法;4.掌握在Windows环境下语音信号采集的方法;5.学会用MA TLAB对信号进行频谱分析;6.掌握MATLAB设计FIR和IIR数字滤波器的方法;三、实验内容1.利用简单正弦信号设计实验验证采样定理:(1)Matlab产生离散信号的方法,作图的方法,以及基本运算操作(2)对连续正弦信号以不同的采样频率作采样(3)对采样前后信号进行傅立叶变换,并画频谱图(4)分析采样前后频谱的有变化,验证采样定理。
掌握画频谱图的方法,深刻理解采样频率,信号频率,采样点数,频率分辨率等概念2.真实语音信号的采样重构:录制一段自己的语音信号,并对录制的信号进行采样;画出采样前后语音信号的时域波形和频谱图;对降采样后的信号进行插值重构,滤波,恢复原信号。
(1)语音信号的采集(2)降采样的实现(改变了信号的采样率)(3)以不同采样率采样后,语音信号的频谱分析(4)采样前后声音的变化(5)对降采样后的信号进行插值重构,滤波,恢复原信号3.带噪声语音信号的频谱分析(1)设计一频率已知的噪声信号,与实验2中原始语音信号相加,构造带噪声信号(2)画出原始语音信号和加噪声后信号,以及它们的频谱图(3)利用频谱图分析噪声信号和原语音信号的不同特性4. 对带噪声语音信号滤波去噪:给定滤波器性能指标,采样窗函数法或双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采样的语音信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;(1) 分析带噪声信号频谱,找出噪声所在的频率段(2) 利用matlab 中已有的滤波器滤波(3) 根据语音信号特点,自己设计滤波器滤波(4) 比较各种滤波器性能(至少四种),选择一种合适的滤波器将噪声信号滤除(5) 回放语音信号,比较滤波前后声音的变化四、实验原理参考《数字信号处理》教材《数字信号处理的MATLAB 实现》万永革 编著五、主要实验仪器及材料微型计算机、Matlab 。
数字信号处理第2次实验

信号与系统实验报告(第二次实验)实验一:给定两个序列x1和x2,X1=[0,1,2,3,4,3,2,1,0],起始位置ns1=-2;X2=[2,2,0,0,0,-2,-2],起始位置ns2=2;求它们的和ya及乘积yp,并画出序列x1,x2,ya和yp的图实验要求:分析参考程序,写实验报告,说明编程思路。
参考程序中给出了中间序列y1和y2的计算及图示,握有关函数length、min、max、find的用法,以及有关逻辑操作运算和点乘运算。
掌握有关绘图函数的使用。
参考程序:% 离散信号序列相加和相乘参考程序如下:%x1=[0,1,2,3,4,3,2,1,0];ns1=-2; % 给定x1及ns1x2=[2,2,0,0,0,-2,-2]; ns2=2; % 给定x2及ns2nf1=ns1+length(x1)-1; nf2=ns2+length(x2)-1;ny= min(ns1,ns2):max(nf1,nf2); % y(n)的位置向量y1 = zeros(1,length(ny)); y2 = y1; % 延拓序列初始化y1(find((ny>=ns1)&(ny<=nf1)==1))=x1; % 给y1赋值x1y2(find((ny>=ns2)&(ny<=nf2)==1))=x2; % 给y2 赋值x2ya = y1 + y2; % 序列相加yp = y1.* y2; % 序列相乘subplot(4,2,1), stem(ns1:nf1,x1,'.') % 绘图xlabel('nx1'),ylabel('x1'),axis([-5,10,0,4])subplot(4,2,3), stem(ns2:nf2,x2,'.'),axis([-5,10,-2,2])xlabel('nx2'),ylabel('x2')subplot(4,2,2), stem(ny,y1,'.') % 绘图xlabel('ny'),ylabel('y1')subplot(4,2,4), stem(ny,y2,'.')xlabel('ny'),ylabel('y2')line([ny(1),ny(end)],[0,0]) % 画x轴subplot(4,2,6), stem(ny,ya,'.')xlabel('ny'),ylabel('ya')line([ny(1),ny(end)],[0,0]) % 画x轴subplot(4,2,8), stem(ny,yp,'.')xlabel('ny'),ylabel('yp')line([ny(1),ny(end)],[0,0]) % 画x轴set(gcf,'color','w') % 置图形背景色为白实验结果:编程思路:实验中给出的两个序列的起始位置和长度都不同,对该两个序列进行的操作实际上是对两个矩阵进行的操作,根据矩阵的运算性质可知,要想实现需要的操作,这两个序列起始位置和长度必须相等,所以先要对其进行序列的延拓之后才能进行相应的操作。
数字信号处理实验二时域采样和频域采样

数字信号处理实验二时域采样和频域采样数字信号处理是一门研究信号的数字化表示、处理和传输的学科。
在数字信号处理中,时域采样和频域采样是两种常用的信号分析方法。
下面我们将对这两种采样方法进行详细介绍和比较。
一、时域采样时域采样是数字信号处理中最基本的采样方法之一。
它通过对连续时间信号进行离散时间采样,将连续时间信号转换为离散时间信号。
时域采样的基本原理是,如果一个连续时间信号f(t)在采样时刻t=kT(k=0,1,2,)上的值f(kT)能够被准确地测量,则可以通过这些采样值重建出原始信号。
时域采样的优点是简单易行,适用于大多数信号的采样。
但是,时域采样也存在一些缺点。
首先,如果信号中含有高于采样率的频率成分,这些高频成分将会被混叠到低频部分,导致信号失真。
这种现象被称为混叠效应。
其次,时域采样需要大量的采样数据才能准确地重建出原始信号,这会占用大量的存储空间和计算资源。
二、频域采样频域采样是一种在频域上对信号进行采样的方法。
它通过对信号进行傅里叶变换,将信号转换到频域,然后对频域中的信号进行采样。
频域采样的基本原理是,如果一个离散时间信号f(n)的傅里叶变换在频域上有有限的带宽,那么频域上的信号可以被认为是无穷多个离散的冲激函数的线性组合。
通过对这些冲激函数的幅度和相位进行采样,可以得到频域采样值。
相比时域采样,频域采样具有一些优点。
首先,频域采样可以避免混叠效应,因为高频成分在频域中可以被准确地表示和处理。
其次,频域采样只需要采样信号的幅度和相位信息,而不必存储大量的采样数据,可以节省存储空间和计算资源。
此外,频域采样还可以用于对信号进行压缩和编码,以便于信号的传输和存储。
然而,频域采样也存在一些缺点。
首先,傅里叶变换需要将信号从时域转换到频域,这需要使用复杂的数学运算和计算。
其次,频域采样的结果通常需要经过逆傅里叶变换才能得到原始信号的离散时间表示,这同样需要复杂的数学运算和计算。
此外,频域采样的结果可能存在频率混叠和泄漏现象,这会影响到重建出的原始信号的质量。
数字信号处理实验二时域采样和频域采样

实验二-时域采样和频域采样一、实验目的时域采样理论与频域采样理论是数字信号处理中的重要理论。
要求掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息;要求掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。
二、实验原理及方法1、时域采样定理的要点:a)对模拟信号)(t x a 以间隔T 进行时域等间隔理想采样,形成的采样信号的频谱)(ˆΩj X是原模拟信号频谱()a X j Ω以采样角频率s Ω(T s /2π=Ω)为周期进行周期延拓 b)采样频率s Ω必须大于等于模拟信号最高频率的两倍以上,才能使采样信号的频谱不产生频谱混叠。
利用计算机计算上式并不方便,下面我们导出另外一个公式,以便用计算机上进行实验。
2、频域采样定理的要点:a)对信号x(n)的频谱函数X(ej ω)在[0,2π]上等间隔采样N 点则N 点IDFT[()N X k ]得到的序列就是原序列x(n)以N 为周期进行周期延拓后的主值区序列。
三、实验内容及步骤1、时域采样理论的验证程序:clear;clcA=444.128;a=50*sqrt(2)*pi;w0=50*sqrt(2)*pi; Tp=50/1000;F1=1000;F2=300;F3=200;T1=1/F1;T2=1/F2;T3=1/F3;n1=0:Tp*F1-1;n2=0:Tp*F2-1;n3=0:Tp*F3-1;x1=A*exp(-a*n1*T1).*sin(w0*n1*T1);x2=A*exp(-a*n2*T2).*sin(w0*n2*T2);x3=A*exp(-a*n3*T3).*sin(w0*n3*T3);f1=fft(x1,length(n1));f2=fft(x2,length(n2)); % f3=fft(x3,length(n3)); % k1=0:length(f1)-1;fk1=k1/Tp; % k2=0:length(f2)-1;fk2=k2/Tp; % k3=0:length(f3)-1;fk3=k3/Tp; % subplot(3,2,1)stem(n1,x1,'.')title('(a)Fs=1000Hz');xlabel('n');ylabel('x1(n)');subplot(3,2,3)stem(n2,x2,'.')title('(b)Fs=300Hz');xlabel('n');ylabel('x2(n)');subplot(3,2,5)stem(n3,x3,'.')title('(c)Fs=200Hz');xlabel('n');ylabel('x3(n)');subplot(3,2,2)plot(fk1,abs(f1))title('(a) FT[xa(nT)],Fs=1000Hz');xlabel('f(Hz)');ylabel('·ù?è')subplot(3,2,4)plot(fk2,abs(f2))title('(b) FT[xa(nT)],Fs=300Hz');xlabel('f(Hz)');ylabel('·ù?è')subplot(3,2,6)plot(fk3,abs(f3))title('(c) FT[xa(nT)],Fs=200Hz');xlabel('f(Hz)');ylabel('·ù?è')结果分析:由图2.2可见,采样序列的频谱的确是以采样频率为周期对模拟信号频谱的周期延拓。
数字信号处理实验二

实验二 快速傅里叶变换(FFT)及其应用一、思考题(1) 实验中的信号序列()c x n 和()d x n 在单位圆上的z 变换频谱()()c j j d X e X e ωω和会相同吗如果不同,说出哪一个低频分量更多一些,为什么答:设j Z r e ω=⨯ ()()n n G z g n z ∞-=-∞=⨯∑因为为单位圆,故r=1.因为()()j j n n G e g n eωω∞-=-∞=⨯∑,故3723456704()(8)23432j j n j n j j j j j j j c n n X e nen e e e e e e e e ωωωωωωωωωω---------===+-=++++++∑∑ 7235670()(4)43223j j n j j j j j j d n X e n ee e e e e e ωωωωωωωω-------==-=+++---∑比较可知频谱不相同,()c X n 的低频分量多。
(2) 对一个有限长序列进行DFT 等价于将该序列周期延拓后进行DFS 展开,因为DFS 也只是取其中一个周期来运算,所以FFT 在一定条件下也可以用以分析周期信号序列。
如果实正弦信号()sin(2),0.1x n fn f π== 用16点FFT 来做DFS 运算,得到的频谱是信号本身的真实谱吗为什么答:针对原来未经采样的连续时间信号来说,FFT 做出来的永远不会是信号本身的真实频谱,只能够是无限接近。
FFT 频谱泄露问题是一定会存在的,因为毕竟采样率再高,也不能完全达到原来的连续时间信号准确。
原题的采样率是1/10,就是将2*pi 分成10份,即每个正弦波周期进行10次采样,这样的采样率很低,而最后你只截取16个点来做分析,泄露一般会挺严重,看到的频谱,应该是一个上头尖,下面慢慢变宽的尖锥形,而纯正的正弦波的理想频谱应该是在某频点只有一个尖峰。
二.?实验原理:?(1)混叠:采样序列的频谱是被采样信号频谱的周期延拓,当采样频率不满足奈奎斯特采样定理的时候,就会发生混叠,使得刺痒后的序列信号的频谱不能真实的反映原采样信号的频谱。
数字信号处理实验02

实验二2019年11月16日一、实验目的(1)通过实验进一步理解卷积定理,了解卷积的过程。
(2)掌握应用线性卷积求解离散时间系统响应的基本方法。
(3)加深对离散LSI系统时域特性的认识。
(4)掌握MATLAB求解离散时间系统相应的基本方法。
(5)了解MATLAB中求解系统响应的子函数及其应用方法。
(6)加深对离散系统变换域分析——z变换的理解。
(7)掌握进行z变换和z反变换的基本方法,了解部分分式法在z反变换中的应用。
(8)掌握使用MATLAB语言进行z变换和z反变换的常用子函数。
(9)了解离散系统的基本描述模型。
(10)掌握各种模型相互间的关系及转换方法。
(11)熟悉MATLAB中进行离散系统模型间转换的常用子函数。
二、实验用到的MATLAB函数(1)conv 进行两个序列间的卷积运算。
(2)sum 求各元素之和。
(3)hold 控制当前图形是否刷新的双向切换开关。
(4)pause 暂停执行文件。
(5)dlsim 求解离散系统的响应。
(6)ztrans 返回无限长序列函数x[n]的z变换。
(7)iztrans 求函数X(z)的z反变换x[n]。
(8)syms 定义多个符号变量。
(9)residuez 有理多项式的部分分式展开。
(10)tf2zp 将系统传递函数(tf)模型转换为系统函数的零-极点增益(zpk)模型。
(11)zp2tf 将系统函数的零-极点增益(zpk)模型转换为系统传递函数(tf)模型。
(12)tf2sos 将系统传递函数(tf)模型转换为系统函数的二次分式(sos)模型。
(13)sos2tf 将系统函数的二次分式(sos)模型转换为系统传递函数(tf)模型。
(14)sos2zp 将系统函数的二次分式(sos)模型转换为系统函数的零-极点增益(zpk)模型。
(15)zp2sos 将系统函数的零-极点增益(zpk)模型转换为系统函数的二次分式(sos)模型。
(16)ss2tf 将系统状态空间(ss)模型转换为系统传递函数(tf)模型。
数字信号处理第二次实验报告

2
% 设计Butterworth低通模拟滤波器 % 通带衰减小于1分贝、阻带(>0.6pi)衰减大于25分贝 % n: 阶数 % wn:低通模拟滤波器的3分贝通带截止频率 [B1,A1] = BUTTER(n,wn,'s'); % 设计Butterworth低通模拟滤波器 % B,A:模拟滤波器传递函数分子、分母多项式系数 [b1,a1]=impinvar(B1,A1,fs); % 用脉冲响应不变法将模拟低通滤波器转换为数字滤波器b,a:分子、分母多项式系 数 % 双曲变换的预畸变 [B2,A2]=butter(n,2000*tan(pi/5),'s'); % 用双曲变换法将模拟低通滤波器转化为数字滤波器b,a:分子,分母多项式系数 [b2,a2]=bilinear(B2,A2,fs);
(3) 熟悉巴特沃思滤波器,切比雪夫滤波器和椭圆滤波器的频率特性。
二. 实验原理:
(1) 实验中有关变量的定义:fc 通带边界频率ห้องสมุดไป่ตู้fr 阻带边界频率,tao 通带波动,at 最 小阻带衰减,fs 采样频率,t 采样周期。
(2) 设计一个数字滤波器一般包括以下两步: a.按照任务要求,确定滤波器性能指标 b.用一个因果稳定的离散时不变系统的系统函数去逼近这一性能要求
姓名:陈桐 学号:04004316
实验日期:2006 年 11 月 14 日
一. 实验目的:
(1) 掌握双线形变换法及脉冲响应不变法设计 IIR 数字滤波器的具体设计方法及其原理, 熟悉用双线形变换法及脉冲响应不变法设计低通,高通和带通 IIR 数字滤波器的计 算机编程。
(2) 观察双线形变换法及脉冲响应不变法设计的滤波器的频域特性,了解双线形变换法 及脉冲响应不变法的特点。
数字信号处理--实验二_求线性时不变系统的输出

学生实验报告开课学院及实验室: 电子楼317 2013年 3 月18 日学院机械与电气工程学院年级、专业、班姓名学号 实验课程名称 数字信号处理实验成绩 实验项目名称实验二 求线性时不变系统的输出指导老师一、实验目的1. 学习用递推法求解差分方程的方法。
2. 学习用线性卷积法求网络输出的方法。
二、实验原理已知()h n 和输入()x n ,求系统输出()y n ,也可以用线性卷积法进行。
线性卷积法的公式如下:()()()y n x n h n =* ()()m x m h n m ∞=-∞=-∑图2.1 用递推法求解差分方程的框图计算时,关键问题是根据()x n 和()h n 的特点,确定求和的上下限。
例如,()0.9()nh n u n =,10()()x n R n =,卷积公式为10()()0.9()n m m y n R m u n m ∞-=-∞=-∑根据上式中的10()R n ,限制非零区间为:09m ≤≤,由()u n 限制非零区间为:m n ≤。
由上面的不等式知道m 的取值和n 有关,可以分几种情况: 当n <0时,()0y n =当0n ≤<9时,()0.9nn m m y n -==∑当9n ≥时,9()0.9n m m y n -==∑最后得到:再用计算机计算()y n 。
如果给定的()x n 和()h n 是一些离散数据,更方便的是用MATLAB 语言的数字信号工具箱函数conv 计算两个n 的取值从零开始的有限长序列的线性卷积。
三、使用仪器、材料1、硬件:计算机2、软件:Matlab四、实验步骤1.已知系统的差分方程如式:()0.9(1)()y n y n x n =-+(1) 输入信号=10()()x n R n =,初始条件(1)1y -=,求解输出()y n ; (2) 输入信号=10()()x n R n =,初始条件(1)0y -=,求解输出()y n 。
数字信号处理实验二

y = filter(num,den,x,ic);
yd = filter(num,den,xd,ic);
d = y - yd(1+D:41+D);
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
title('输出 y[n]'); grid;
subplot(3,1,2)
xlabel('时间序号 n'); ylabel('振幅');
title('信号 #1');
subplot(2,2,2);
plot(n, s2);
axis([0, 100, -2, 2]);
xlabel('时间序号 n'); ylabel('振幅');
title('信号 #2');
subplot(2,2,3);
y = filter(num,den,x,ic);
yt = a*y1 + b*y2;
d = y - yt;
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
title('加权输入: a \cdot x_{1}[n] + b \cdot x_{2}[n]的输出');
subplot(3,1,2)
2.4 修改程序P2.1,用一个长度为101、最低频率为0、最高频率为0.5的扫频正弦信号作为输入信号(见程序P1.7),计算其输出信号。你能用该系统对扫频信号的响应来解释习题Q2.1和习题Q2.2的结果吗?
2.7 运行程序P2.3,对由加权输入得到的y[n]与在相同权系数下输出y1[n]和y2[n]相加得到的yt[n]进行比较,这两个序列是否相等?该系统是线性系统吗?
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二离散时间系统的时域分析
实验室名称:实验时间:
姓名:学号:专业:指导教师:
四、实验原理
1.离散时间系统中信号运算方法和基本性质;
2.离散时间系统的MATLAB表示和基本运算;
3. MATLAB处理离散时间系统的方法。
五、实验步骤
1.根据实验题目要求进行分析;
2. 运用所学知识用MATLAB编程实现题目要求;
3. 对结果进行分析总结。
六、实验记录(数据、图表、波形、程序等)
Q2.1 程序代码:
%产生输入信号
n = 0:100;
s1 = cos(2*pi*0.05*n); %一个低频正弦
s2 = cos(2*pi*0.47*n); %一个高频正弦
x = s1+s2;
%滑动平均滤波器的实现
M = input('Desired length of the filter = ');
num = ones(1,M);
y = filter(num,1,x)/M;
clf;
%显示输入和输出信号
subplot(2,2,1);
plot(n, s1);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Signal #1');
subplot(2,2,2);
plot(n, s2);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Signal #2');
subplot(2,2,3);
plot(n, x);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Input Signal');
subplot(2,2,4);
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Output Signal'); axis;
显示结果:
Q2.2 代码(将输出信号的代码做出修改,其余代码与Q2.1相同):n=0:100;
s1=cos(2*pi*0.05*n);
s2=cos(2*pi*0.47*n);
x=s1+s2;
M=input(' Desired length of the filter = ');
num=(-1).^[0:M-1];
y=filter(num,1,x)/M;
clf;
%显示输入和输出信号
subplot(2,2,1);
plot(n, s1);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Signal #1');
subplot(2,2,2);
plot(n, s2);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Signal #2');
subplot(2,2,3);
plot(n, x);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Input Signal');
subplot(2,2,4);
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('Output Signal');
axis;
显示结果:
Q2.4 程序代码:
%构造长度为101、最低频率为0、最高频率为0.5的扫频正弦信号n = 0:100;
a = pi/2/100;
b = 0;
arg = a*n.*n + b*n;
x = cos(arg);
M = input('Desired length of the filter = ');
num = ones(1,M);
y = filter(num,1,x)/M;
clf;
subplot(2,1,1);
plot(n,x);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude');
title('扫频正弦信号');
subplot(2,1,2);
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('Time index n'); ylabel('Amplitude'); title('滤波后的输出信号');
显示结果:
Q2.7 程序代码:
% 生成输入序列
clf;
n = 0:40;
a = 2;
b = -3;
x1 = cos(2*pi*0.1*n);
x2 = cos(2*pi*0.4*n);
x = a*x1 + b*x2;
num = [2.2403 2.4908 2.2403];
den = [1 -0.4 0.75];
ic = [0 0]; % 设置零初始条件
y1 = filter(num,den,x1,ic); % 计算输出 y1[n] y2 = filter(num,den,x2,ic); % 计算输出 y2[n] y = filter(num,den,x,ic); %计算输出 y[n]
yt = a*y1 + b*y2;
d = y - yt; % 计算差值输出 d[n]
% 画出输出和差信号
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
序列u[n]显示结果:
Q2.23 程序代码:
%级联实现
clf;
x=[1 zeros(1,40)];%生成输入
n=0:40;
%四阶系统的系数
den=[1 1.6 2.28 1.325 0.68];
num=[0.06 -0.19 0.27 -0.26 0.12]; %计算四阶系统的输出
y=filter(num,den,x);
%两个二阶系统的系数
num1=[0.3 -0.2 0.4];
den1=[1 0.9 0.8];
num2=[0.2 -0.5 0.3];
den2=[1 0.7 0.85];
%级联第一级的输出y1[n]
y1=filter(num1,den1,x);
%级联第二级的输出y2[n]
y2=filter(num2,den2,y1);
%y和y2[n]之间的差
d=y-y2;
%画出输出和差值信号
subplot(3,1,1);
stem(n,y);
ylabel('振幅');
title('四阶实现的输出'); grid;
subplot(3,1,2);
stem(n,y2);
ylabel('振幅');
title('级联实现的输出'); grid;
subplot(3,1,3);
stem(n,d);
xlabel('时间序号 n');
ylabel('振幅');
title('差值信号');
grid;
显示结果:
Q2.23 程序代码:
clf;
h=[3 2 1 -2 1 0 -4 0 3];%冲激x=[1 -2 3 -4 3 2 1];%输入序列y=conv(h,x);
n=0:14;
subplot(2,1,1);
stem(n,y);。