数字信号处理实验1报告
数字信号处理实验报告
实验一 信号、系统及系统响应一、实验目的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 利用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
《数字信号处理》实验报告实验一:数字低通、高通滤波器实验实验二:数字带通、带阻滤波器实验系别:信息科学与技术系专业班级:电子信息工程0902班学生姓名:王俊知(053)同组学生:成绩:指导教师:刘海龙(实验时间:20年月日——20年月日)华中科技大学武昌分校实验一数字低通、高通滤波器实验1、实验目的使学生了解和熟悉软件Matlab的使用,了解数字低通、高通滤波器零极点的作用及数字低通、高通滤波器的幅频特性和相频特性。
使学生熟悉整数型滤波器的设计。
2、实验内容与步骤1、在计算机上运行Matlab软件,根据滤波器的参数,用Matlab软件设计出数字低通、高通滤波器、画出数字低通、高通滤波器的幅频特性和相频特性的程序,或按照范例程序进行修改,运行程序,观察滤波器的零极点分布图、幅频特性和相频特性图。
2、改变滤波器的零极点分布,再运行程序,观察幅频特性和相频特性的不同,滤波器的通带有什么改变。
3、再次修改程序,输入数字信号,使其通过滤波器,并画出输入、输出滤波器的数字信号波形,运行程序。
观看输入、输出滤波器的数字信号波形,仔细观察其区别。
3、实验设备1、实验场所:信息科学与技术系实验室机房。
2、硬件设备:计算机若干(由学生人数定)。
3、实验软件:Matlab。
整系数低通滤波器程序如下:clear all;clc;close all;m=10;for i=1:m+1if i==1B(i)=1;elseif i==m+1B(i)=-1;else B(i)=0;endendendA=[1,-1];N=8192;[H,f]=freqz(B,A,N);plot(f*25/pi,abs(H));grid;figure,plot(f*25/pi,angle(H));grid;figure,zplane(B,A);k=0:N-1;f=2*k/N;load('C:\MATLAB7\work\RawData.mat');x=rawdata(1,1:N);w=filter(B,A,x);figure;plot(x);title('输入信号');figure;plot(w);title('输出信号');滤波器的幅频特性和相频特性曲线、零极点分布、输入、输出滤波器的数字信号波形图:整系数高通滤波器程序如下:clear all;clc;close all;m=10;for i=1:m+1if i==1B(i)=1;elseif i==m+1B(i)=-1;else B(i)=0;endendendA=[1,1];N=8192;[H,f]=freqz(B,A,N);plot(f*25/pi,abs(H));grid;figure,plot(f*25/pi,angle(H));grid;figure,zplane(B,A);k=0:N-1;f=2*k/N;load('C:\MATLAB7\work\RawData.mat');x=rawdata(1,1:N);w=filter(B,A,x);figure;plot(x);title('输入信号');figure;plot(w);title('输出信号');滤波器的幅频特性和相频特性曲线、零极点分布、输入、输出滤波器的数字信号波形图:改变参数clear all;clc;close all;m=11;for i=1:m+1if i==1B(i)=1;elseif i==m+1B(i)=1;else B(i)=0;endendendA=[1,1];N=8192;[H,f]=freqz(B,A,N);plot(f*25/pi,abs(H));grid;figure,plot(f*25/pi,angle(H));grid; figure,zplane(B,A);k=0:N-1;f=2*k/N;load('C:\MATLAB7\work\RawData.mat'); x=rawdata(1,1:N);w=filter(B,A,x);figure;plot(x);title('输入信号'); figure;plot(w);title('输出信号');正负120度零点抵消程序如下:clear all;clc;close all;m=24;for i=1:m+1if i==1B(i)=1;elseif i==m+1B(i)=-1;else B(i)=0;endendendA=[1,1,1];N=8192;[H,f]=freqz(B,A,N);plot(f*25/pi,abs(H));grid;figure,plot(f*25/pi,angle(H));grid;figure,zplane(B,A);k=0:N-1;f=2*k/N;load('C:\MATLAB7\work\RawData.mat');x=rawdata(1,1:N);w=filter(B,A,x);figure;plot(x);title('输入信号');figure;plot(w);title('输出信号');滤波器的幅频特性和相频特性曲线、零极点分布、输入、输出滤波器的数字信号波形图:正负60度零点抵消程序如下:clear all;clc;close all;m=24;for i=1:m+1if i==1B(i)=1;elseif i==m+1B(i)=-1;else B(i)=0;endendendA=[1,-1,1];N=8192;[H,f]=freqz(B,A,N);plot(f*25/pi,abs(H));grid;figure,plot(f*25/pi,angle(H));grid;figure,zplane(B,A);k=0:N-1;f=2*k/N;load('C:\MATLAB7\work\RawData.mat');x=rawdata(1,1:N);w=filter(B,A,x);figure;plot(x);title('输入信号');figure;plot(w);title('输出信号');滤波器的幅频特性和相频特性曲线、零极点分布、输入、输出滤波器的数字信号波形图:实验二数字带通、带阻滤波器实验1、实验目的使学生了解数字带通、带阻滤波器设计原理及数字带通、带阻滤波器的幅频特性和相频特性。
数字信号处理(北航)实验一报告
数字信号处理(北航)实验⼀报告《数字信号处理》配套实验指导书课程名称:数字信号处理(Digital Signal Processing)实验总学时数:12实验室地点:北京航空航天⼤学宇航学院图像中⼼实验要求与⽬的:《数字信号处理》课程是电⼦信息、电⼦信息科学与技术、通信⼯程等专业的重要专业基础课。
本课程以信号与系统、⼯程数学为基础,要求学⽣掌握时域离散信号和系统的基本理论、基本分析⽅法以及 FFT 、数字滤波器等数字信号处理技术。
学会综合运⽤数字信号处理的理论知识进⾏信号的采样,重构,频谱分析和滤波器的设计,了解⼏种基本的调制解调原理,掌握⽤数字信号处理的⽅法实现模拟电路中信号的调制与解调的⽅法,并能通过理论推导得出相应结论。
在此基础上学会利⽤Matlab作为编程⼯具进⾏计算机实现,从⽽加深对所学知识的理解,建⽴概念。
《数字信号处理》是⼀门理论与实践联系紧密的课程,所以本课程安排3个综合实验,以帮助学⽣掌握数字信号处理技术,提⾼学⽣分析问题和解决问题的能⼒,并通过实验培养学⽣的创新意识。
本实验课程的基本要求如下:1 .学习⽤MATLAB 语⾔编写数字信号处理的程序,通过实验加深对课堂所学知识的理解;2 .上机前应按照要求把实验内容准备好,编好程序,了解需要改变的参数,预计结果;3 .观察实验结果,得出结论;4 .实验结束后提交实验报告实验项⽬与内容提要实验考核:采⽤实验操作与实验报告综合评分MATLAB概述1.MATL AB简介实践的需要推动了科技的发展,从⽽促进了社会的进步。
由于与数学经常打交道的科学家,⼯程技术⼈员在实际⼯作中⼤量数学计算的需要,便促进了具有数值计算强⼤功能和卓越的数据可视化能⼒的计算机⾼级语⾔MATLAB的出现。
MATLAB名字由MATrix和LABoratory 两词的前三个字母组合⽽成。
那是20世纪七⼗年代,时任美国新墨西哥⼤学计算机科学系主任的Cleve Moler出于减轻学⽣编程负担的动机,为学⽣设计了⼀种数学⼯具软件。
实验一 数字信号处理 实验报告
1.已知系统的差分方程如下式:y1(n)=0.9y1(n-1)+x(n)程序编写如下:(1)输入信号x(n)=R10 (n),初始条件y1(-1)=1,试用递推法求解输出y1(n);a=0.9; ys=1; %设差分方程系数a=0.9,初始状态: y(-1)=1xn=ones(1,10); %矩型序列R10(n)=u(n)-u(n-10),定义其宽度为0~9n=1:35; %设差分方程系数a=0.9,初始状态: y(-1)=1xn=sign(sign(10-n)+1);B=1;A=[1,-a]; %差分方程系数xi=filtic(B,A,ys); %由初始条件计算等效初始条件输入序列xiyn=filter(B,A,xn,xi); %调用filter解差分方程,求系统输出y(n)n=0:length(yn)-1;subplot(2,1,1);stem(n,yn,'linewidth',2); axis([-5,15,0,8]); grid ontitle('图(a) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=1 ');xlabel('n');ylabel('y(n)')(2) 输入信号x(n)=R10 (n),初始条件y1(-1)=0,试用递推法求解输出y1(n)。
a=0.9; ys=0; %设差分方程系数a=0.9,初始状态: y(-1)=1xn=ones(1,10); %矩型序列R10(n)=u(n)-u(n-10)B=1;A=[1,-a]; %差分方程系数xi=filtic(B,A,ys); %由初始条件计算等效初始条件输入序列xiyn=filter(B,A,xn,xi); %调用filter解差分方程,求系统输出y(n)n=0:length(yn)-1;subplot(2,1,2);stem(n,yn, 'linewidth',2); axis([-5,15,0,8]); grid ontitle('图(b) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=0 ');xlabel('n');ylabel('y(n)') 图形输出如下:-505101502468图(a) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=1ny (n )-55101502468图(b) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=0ny (n )2. 已知系统差分方程为: y 1(n )=0.9y 1(n -1)+x (n ) 用递推法求解系统的单位脉冲响应h (n ),要求写出h (n )的封闭公式,并打印h (n )~n 曲线。
实验一 数字信号处理 实验报告
1.已知系统的差分方程如下式:y1(n)=0.9y1(n-1)+x(n)程序编写如下:(1)输入信号x(n)=R10 (n),初始条件y1(-1)=1,试用递推法求解输出y1(n);a=0.9; ys=1; %设差分方程系数a=0.9,初始状态: y(-1)=1xn=ones(1,10); %矩型序列R10(n)=u(n)-u(n-10),定义其宽度为0~9n=1:35; %设差分方程系数a=0.9,初始状态: y(-1)=1xn=sign(sign(10-n)+1);B=1;A=[1,-a]; %差分方程系数xi=filtic(B,A,ys); %由初始条件计算等效初始条件输入序列xiyn=filter(B,A,xn,xi); %调用filter解差分方程,求系统输出y(n)n=0:length(yn)-1;subplot(2,1,1);stem(n,yn,'linewidth',2); axis([-5,15,0,8]); grid ontitle('图(a) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=1 ');xlabel('n');ylabel('y(n)')(2) 输入信号x(n)=R10 (n),初始条件y1(-1)=0,试用递推法求解输出y1(n)。
a=0.9; ys=0; %设差分方程系数a=0.9,初始状态: y(-1)=1xn=ones(1,10); %矩型序列R10(n)=u(n)-u(n-10)B=1;A=[1,-a]; %差分方程系数xi=filtic(B,A,ys); %由初始条件计算等效初始条件输入序列xiyn=filter(B,A,xn,xi); %调用filter解差分方程,求系统输出y(n)n=0:length(yn)-1;subplot(2,1,2);stem(n,yn, 'linewidth',2); axis([-5,15,0,8]); grid ontitle('图(b) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=0 ');xlabel('n');ylabel('y(n)') 图形输出如下:-505101502468图(a) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=1ny (n )-55101502468图(b) y1(n)=0.9y1(n-1)+x(n) 初始条件y1(-1)=0ny (n )2. 已知系统差分方程为: y 1(n )=0.9y 1(n -1)+x (n ) 用递推法求解系统的单位脉冲响应h (n ),要求写出h (n )的封闭公式,并打印h (n )~n 曲线。
数字信号处理实验报告格式(1)(1)
《数字信号处理》实验报告实验一、系统响应与系统稳定性专业:通信工程班级:通信1204班实验一、系统响应及系统稳定性一、设计目的(1)掌握求系统响应的方法。
(2)掌握时域离散系统的时域特性。
(3)分析,观察及检验系统的稳定性。
二、实验原理和方法在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。
已知输入信号, 可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。
在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。
也可以用MATLAB语言的工具箱函数conv函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。
系统的时域特性指的是系统的线性时不变性质、因果性和稳定性。
重点分析实验系统的稳定性,包括观察系统的暂态响应和稳定响应。
系统的稳定性是指对任意有界的输入信号,系统都能得到有界的系统响应。
或者系统的单位脉冲响应满足绝对可和的条件。
系统的稳定性由其差分方程的系数决定。
实际中检查系统是否稳定,不可能检查系统对所有有界的输入信号,输出是否都是有界输出,或者检查系统的单位脉冲响应满足绝对可和的条件。
可行的方法是在系统的输入端加入单位阶跃序列,如果系统的输出趋近一个常数(包括零),就可以断定系统是稳定的[19]。
系统的稳态输出是指当n→∞时,系统的输出。
如果系统稳定,信号加入系统后,系统输出的开始一段称为暂态效应,随n的加大,幅度趋于稳定,达到稳态输出。
注意在以下实验中均假设系统的初始状态为零三、实验内容和分析实验内容编程如下:(1)给定一个低通滤波器的差分方程为y(n)=0.05x(n)+0.05x(n-1)+0.9y(n-1)输入信号 x1(n)=R8(n), x2(n)=u(n)① 分别求出x 1(n)=R 8(n)和x 2(n)=u(n)的系统响应,并画出其波形。
② 求出系统的单位脉冲响应,画出其波形。
数字信号处理实验报告一二
数字信号处理课程实验报告实验一 离散时间信号和系统响应一. 实验目的1. 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解2. 掌握时域离散系统的时域特性3. 利用卷积方法观察分析系统的时域特性4. 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号及系统响应进行频域分析二、实验原理1. 采样是连续信号数字化处理的第一个关键环节。
对采样过程的研究不仅可以了解采样前后信号时域和频域特性的变化以及信号信息不丢失的条件,而且可以加深对离散傅里叶变换、Z 变换和序列傅里叶变换之间关系式的理解。
对连续信号()a x t 以T 为采样间隔进行时域等间隔理想采样,形成采样信号: 式中()p t 为周期冲激脉冲,()a x t 为()a x t 的理想采样。
()a x t 的傅里叶变换为()a X j Ω:上式表明将连续信号()a x t 采样后其频谱将变为周期的,周期为Ωs=2π/T 。
也即采样信号的频谱()a X j Ω是原连续信号xa(t)的频谱Xa(jΩ)在频率轴上以Ωs 为周期,周期延拓而成的。
因此,若对连续信号()a x t 进行采样,要保证采样频率fs ≥2fm ,fm 为信号的最高频率,才可能由采样信号无失真地恢复出原模拟信号ˆ()()()a a xt x t p t =1()()*()21()n a a a s X j X j P j X j jn T π∞=-∞Ω=ΩΩ=Ω-Ω∑()()n P t t nT δ∞=-∞=-∑计算机实现时,利用计算机计算上式并不方便,因此我们利用采样序列的傅里叶变换来实现,即而()()j j n n X e x n e ωω∞-=-∞=∑为采样序列的傅里叶变换2. 时域中,描述系统特性的方法是差分方程和单位脉冲响应,频域中可用系统函数描述系统特性。
已知输入信号,可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应。
数字信号处理实验报告完整版[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中的绘图工具对产生的信号进行观察,加深对常用离散信号和信号卷积和运算的理解。
数字信号处理实验报告
数字信号处理实验报告实验⼀信号、系统及系统响应⼀、实验⽬的1、熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解;2、熟悉时域离散系统的时域特性;3、利⽤卷积⽅法观察分析系统的时域特性;4、掌握序列傅⽴叶变换的计算机实现⽅法,利⽤序列的傅⽴叶变换对连续信号、离散信号及系统响应进⾏频域分析。
⼆、实验原理及⽅法采样是连续信号数字处理的第⼀个关键环节。
对采样过程的研究不仅可以了解采样前后信号时域和频域特性发⽣变化以及信号信息不丢失的条件,⽽且可以加深对傅⽴叶变换、Z 变换和序列傅⽴叶变换之间关系式的理解。
对⼀个连续信号进⾏理想采样的过程可⽤下式表⽰:,其中为的理想采样,p(t)为周期脉冲,即的傅⽴叶变换为上式表明为的周期延拓。
其延拓周期为采样⾓频率()。
只有满⾜采样定理时,才不会发⽣频率混叠失真。
在实验时可以⽤序列的傅⽴叶变换来计算。
公式如下:离散信号和系统在时域均可⽤序列来表⽰。
为了在实验中观察分析各种序列的频域特性,通常对在[0,2]上进⾏M点采样来观察分析。
对长度为N的有限长序列x(n),有:其中,,k=0,1,……M-1时域离散线性⾮移变系统的输⼊/输出关系为上述卷积运算也可在频域实现三、实验内容及步骤1、认真复习采样理论,离散信号与系统,线性卷积,序列的傅⽴叶变换及性质等有关内容,阅读本实验原理与⽅法。
2、编制实验⽤主程序及相应⼦程序。
①信号产⽣⼦程序,⽤于产⽣实验中要⽤到的下列信号序列:xa(t)=Ae-at sin(Ω0t)u(t)进⾏采样,可得到采样序列xa(n)=xa(nT)=Ae-anT sin(Ω0nT)u(n), 0≤n<50其中A为幅度因⼦,a为衰减因⼦,Ω0是模拟⾓频率,T为采样间隔。
这些参数都要在实验过程中由键盘输⼊,产⽣不同的xa(t)和xa(n)。
b. 单位脉冲序列:xb(n)=δ(n)c. 矩形序列:xc(n)=RN(n), N=10②系统单位脉冲响应序列产⽣⼦程序。
数字信号处理实验报告
数字信号处理实验报告实验一:混叠现象的时域与频域表现实验原理:当采样频率Fs不满足采样定理,会在0.5Fs附近引起频谱混叠,造成频谱分析误差。
实验过程:考虑频率分别为3Hz,7Hz,13Hz 的三个余弦信号,即:g1(t)=cos(6πt), g2(t)=cos(14πt), g3(t)=cos(26πt),当采样频率为10Hz 时,即采样间隔为0.1秒,则产生的序列分别为:g1[n]=cos(0.6πn), g2[n]=cos(1.4πn), g3[n]=cos(2.6πn)对g2[n],g3[n] 稍加变换可得:g2[n]=cos(1.4πn)=cos((2π-0.6π)n)= cos(0.6πn)g3[n]=cos(2.6πn)= cos((2π+0.6π)n)=cos(0.6πn)利用Matlab进行编程:n=1:300;t=(n-1)*1/300;g1=cos(6*pi*t);g2=cos(14*pi*t);g3=cos(26*pi*t);plot(t,g1,t,g2,t,g3);k=1:100;s=k*0.1;q1=cos(6*pi*s);q2=cos(14*pi*s);q3=cos(26*pi*s);hold on; plot(s(1:10),q1(1:10),'bd');figuresubplot(2,2,1);plot(k/10,abs(fft(q1)))subplot(2,2,2);plot(k/10,abs(fft(q2)))subplot(2,2,3);plot(k/10,abs(fft(q3)))通过Matlab软件的图像如图所示:如果将采样频率改为30Hz,则三信号采样后不会发生频率混叠,可运行以下的程序,观察序列的频谱。
程序编程改动如下:k=1:300;q=cos(6*pi*k/30);q1=cos(14*pi*k/30);q2=cos(26*pi*k/30);subplot(2,2,1);plot(k/10,abs(fft(q)))subplot(2,2,2);plot(k/10,abs(fft(q1)))subplot(2,2,3);plot(k/10,abs(fft(q2)))得图像:问题讨论:保证采样后的信号不发生混叠的条件是什么?若信号的最高频率为17Hz,采样频率为30Hz,问是否会发生频率混叠?混叠成频率为多少Hz的信号?编程验证你的想法。
数字信号处理实验报告
实验一:离散时间信号的表示与运算一:实验内容、原理描述及实验结果 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)函数的程序。
数字信号处理实验一报告
实验一:用FFT 对信号作频谱分析1.实验目的学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析 误差及其原因,以便正确应用FFT 。
2. 实验原理用FFT 对信号作频谱分析是学习数字信号处理的重要内容。
经常需要进行谱分析的信号是模拟信号和时域离散信号。
对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。
频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是N /2π,因此要求D N ≤/2π。
可以根据此式选择FFT 的变换区间N 。
误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时离散谱的包络才能逼近于连续谱,因此N 要适当选择大一些。
周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。
如果不知道信号周期,可以尽量选择信号的观察时间长一些。
对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。
如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。
3.实验步骤及内容(1)对以下序列进行谱分析。
⎪⎩⎪⎨⎧≤≤-≤≤-=⎪⎩⎪⎨⎧≤≤-≤≤+==其它nn n n n n x 其它nn n n n n x n R n x ,074,330,4)(,074,830,1)()()(3241选择FFT 的变换区间N 为8和16 两种情况进行频谱分析。
分别打印其幅频特性曲线。
并进行对比、分析和讨论。
(2)对以下周期序列进行谱分析。
4()cos4x n n π=5()cos(/4)cos(/8)x n n n ππ=+选择FFT 的变换区间N 为8和16 两种情况分别对以上序列进行频谱分析。
分别打印其幅频特性曲线。
并进行对比、分析和讨论。
(3)对模拟周期信号进行谱分析6()cos8cos16cos20x t t t t πππ=++选择 采样频率Hz F s 64=,变换区间N=16,32,64 三种情况进行谱分析。
数字信号处理基础实验报告
中南大学《数字信号处理》实验报告课程名称数字信号处理指导教师李宏学院信息科学与工程学院专业班级学号姓名实验一 常见离散时间信号的产生和频谱分析一、 实验目的(1) 熟悉MATLAB 应用环境,常用窗口的功能和使用方法; (2) 加深对常用离散时间信号的理解; (3) 掌握简单的绘图命令;(4) 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号进行频域分析。
二、实验内容及要求(1)复习常用离散时间信号的有关内容;常用离散时间信号a )单位抽样序列⎩⎨⎧=01)(n δ00≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ≠=n kn b )单位阶跃序列⎩⎨⎧=01)(n u00<≥n n c )矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N nd )正弦序列)sin()(ϕ+=wn A n xe )实指数序列f )复指数序列()()jw n x n e σ+=(2) 用MATLAB 编程产生上述任意3种序列(长度可输入确定,对(d) (e) (f)中的参数可自行选择),并绘出其图形;()()n x n a u n =程序如下: 1)单位阶跃序列: n=-20:20; xn=heaviside(n); xn(n==0)=1;plot(n,xn);stem(n,xn);axis([-20 20 0 1.2]);title('单位阶跃序列');xlabel('n');ylabel('u(n)');box on得到图像如下:2)单位抽样序列: n=-20:20;xn=heaviside(n)-heaviside(n+1); xn(n==0)=1;plot(n,xn);stem(n,xn);axis([-20 20 0 1.2]);title('单位抽样序列');xlabel('n');ylabel('\delta(n)');box on得到图像如下:-20-15-10-50510152000.20.40.60.81单位阶跃序列nu (n )3)矩阵序列: n=-20:20; N=5;xn=heaviside(n)-heaviside(n-N); xn(n==0)=1;xn(n==N)=0;plot(n,xn);stem(n,xn);axis([-20 20 0 1.2]);title('矩阵序列');xlabel('n');ylabel('R_{N}(n)');box on 得到图像如下:-20-15-10-50510152000.20.40.60.81单位抽样序列n(n )-20-15-10-50510152000.20.40.60.81矩阵序列nR N (n )4)正弦序列:n=-40:40;A=2;w=pi/8;f=pi/4; xn=A*sin(w.*n+f);plot(n,xn);stem(n,xn);axis([-40 40 -4.2 4.2]) title('正弦序列');xlabel('n');ylabel('x(n)');box on得到图像如下:(3) 混叠现象对连续信号01()sin(2***)x t pi f t =其中,01500f Hz =进行采样,分别取采样频率2000,1200,800s f Hz Hz Hz =,观察|)(|jw e X 的变化,并做记录(打印曲线),观察随着采样频率降低频谱混叠是否明显存在,说明原因。
数字信号处理实验报告
数字信号处理 实验报告实验一 序列的傅立叶变换一、实验目的1.进一步加深理解DFS,DFT 算法的原理;2.研究补零问题;3.快速傅立叶变换(FFT )的应用。
二、 实验步骤1.复习DFS 和DFT 的定义,性质和应用;2熟悉MATLAB 语言的命令窗口、编程窗口和图形窗口的使用;3利用提供的程序例子编写实验用程序;4.按实验内容上机实验,并进行实验结果分析;5.写出完整的实验报告,并将程序附在后面。
三、 实验内容1.周期方波序列的频谱试画出下面四种情况下的的幅度频谱, 并分析补零后,对信号频谱的影响。
2.有限长序列x(n)的DFT (1)取x(n)(n=0:10)时,画出x(n)的频谱X(k) 的幅度;(2)将(1)中的x(n)以补零的方式,使x(n)加长到(n:0~100)时,画出x(n)的频谱X(k) 的幅度;(3)取x(n)(n:0~100)时,画出x(n)的频谱X(k) 的幅度。
利用FFT 进行谱分析3.已知:模拟信号以t=0.01n(n=0:N-1)进行采样,求N 点DFT 的幅值谱。
请分别画出N=45; N=50;N=55;N=60时的幅值曲线。
四、 实验数据分析)8cos(5)4sin(2)(t t t x ππ+=)52.0cos()48.0cos()(n n n x ππ+=1.周期方波序列的频谱分析首先定义一个功能函数dfsfunction[Xk]=dfs(xn,N)n=[0:1:N-1];k=[0:1:N-1];WN=exp(-j*2*pi/N);nk=n'*k;WNnk=WN.^nk;Xk=xn*WNnk;(1)L=5,N=20;%题1.(1)L=5;N=20;%对于(2),(3),(4)问,只要修改L,N的数值就好。
n=1:N;xn=[ones(1,L),zeros(1,N-L)];Xk=dfs(xn,N);magXk=abs([Xk(N/2+1:N) Xk(1:N/2+1)]);k=[-N/2:N/2];figure(1)subplot(2,1,1);stem(n,xn);xlabel('n');ylabel('xtide(n)');title('DFS of SQ.wave:L=5,N=20');subplot(2,1,2);stem(k,magXk);axis([-N/2,N/2,0,16]);xlabel('k');ylabel('Xtide(k)');(2)L=5,N=40;(3).L=5,N=60(4)L=7,N=60;结果分析:虽然周期序列不存在FT,但是一个周期序列可以利用其DFS系数X(k)表示它的频谱分布规律,从以上各频谱图可以看出,随着补零点数的增加,周期序列的谐波次数越来越多,其频谱的包络线越来越平滑连续,更能反映幅度值随时间的变化。
数字信号处理实验报告
《数字信号处理》实验报告实验一:Z 变换及离散时间系统分析给定系统)8.0/(2.0)(2+-=z z H ,编程并绘出系统的单位阶跃响应y(n),频率响应)e (jw H 。
给出实验报告。
实验代码clear;x=ones(100); t=1:100;b=[0 0 -0.2 ]; a=[1 0 0.8]; y=filter(b,a,x); (t,x,'r.',t,y,'k-'); grid on ;ylabel('x(n) and y(n)') xlabel('n')单位阶跃响应单位抽样:b=[0 0 -0.2 ]; a=[1 0 0.8];[h,t]=impz(b,a,70);stem(t,h, '.')幅頻,相频b=[0 0 -0.2 ];a=[1 0 0.8];[H,w]=freqz(b,a,256,1);Hr=abs(H);Hphase=angle(H);Hphase=unwrap(Hphase); subplot(211)plot(w,Hr);grid on;ylabel(' 幅频.')subplot(212)plot(w,Hphase);grid on; ylabel(' 相频')零极点图:b=[0 0 -0.2 ];a=[1 0 0.8];subplot(221);zplane(b,a);实验二:快速傅里叶变换设x(n)由三个实正弦组成,频率分别是8Hz,9Hz,10Hz,抽样频率为60 Hz,时域取256点,作FFT变换,观察波形,给出实验报告。
实验代码:clear all;N=256;f1=8;f2=9;f3=10;fs=60;w=2*pi/fs;x=sin(w*f1*(0:N-1))+sin(w*f2*(0:N-1))+sin(w*f3*(0:N-1)); subplot(3,1,1);plot(x(1:N/4));f=-0.5:1/N:0.5-1/N;X=fft(x);=ifft(X);(3,1,2);plot(f,fftshift(abs(X)));subplot(3,1,3);plot(real(y(1:N/4)));实验三:无限冲击响应数字滤波器设计设计一个数字带通滤波器,参数自定。
数字信号处理实验报告(全)
实验一、离散时间系统及离散卷积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);结果:。