时域离散信号的产生与基本运算
- 格式:doc
- 大小:68.50 KB
- 文档页数:11
离散时间信号的时域分析实验报告实验报告:离散时间信号的时域分析一、实验目的本实验旨在通过MATLAB软件,对离散时间信号进行时域分析,包括信号的显示、基本运算(如加法、减法、乘法、反转等)、以及频域变换(如傅里叶变换)等,以加深对离散时间信号处理的基本概念和原理的理解。
二、实验原理离散时间信号是在时间轴上离散分布的信号,其数学表示为离散时间函数。
与连续时间信号不同,离散时间信号只能在特定的时间点取值。
离散时间信号的时域分析是研究信号的基本属性,包括幅度、时间、频率等。
通过时域分析,我们可以对信号进行各种基本运算和变换,以提取有用的信息。
三、实验步骤1.信号生成:首先,我们使用MATLAB生成两组简单的离散时间信号,一组为正弦波,另一组为方波。
我们将这些信号存储在数组中,以便后续分析和显示。
2.信号显示:利用MATLAB的绘图功能,将生成的信号在时域中显示出来。
这样,我们可以直观地观察信号的基本属性,包括幅度和时间关系。
3.基本运算:对生成的信号进行基本运算,包括加法、减法、乘法、反转等。
将这些运算的结果存储在新的数组中,并绘制出运算后的信号波形。
4.傅里叶变换:使用MATLAB的FFT(快速傅里叶变换)函数,将信号从时域变换到频域。
我们可以得到信号的频谱,进而分析信号的频率属性。
5.结果分析:对上述步骤得到的结果进行分析,包括比较基本运算前后的信号波形变化,以及傅里叶变换前后的频谱差异等。
四、实验结果1.信号显示:通过绘制图形,我们观察到正弦波和方波在时域中的波形特点。
正弦波呈现周期性的波形,方波则呈现明显的阶跃特性。
2.基本运算:通过对比基本运算前后的信号波形图,我们可以观察到信号经过加法、减法、乘法、反转等运算后,其波形发生相应的变化。
例如,两个信号相加后,其幅度和时间与原信号不同。
反转信号则使得波形在时间轴上反向。
3.傅里叶变换:通过FFT变换,我们将时域中的正弦波和方波转换到频域。
正弦波的频谱显示其频率为单一的直流分量,方波的频谱则显示其主要频率分量是直流分量和若干奇数倍的谐波分量。
《数字信号处理》序列的基本运算和时域变换与离散信号的卷积和实验一、实验目的1、掌握两个离散信号卷积和的计算方法和编程技术。
2、进一步熟悉用MATLAB 描绘二维图像的方法。
3、熟悉用MA TLAB 描绘二维图像的方法。
4、掌握用MA TLAB 对序列进行基本的运算和时域变换的方法。
二、实验器材 MATLAB 软件2019三、实验原理离散信号的卷积和原理:两个离散序列x (n )与y (n )的卷积和f (n )定义为∑∞-∞=-=*=m m n y m x n y n x n f )()()()()(由于通常信号处理中所碰到的都是有始信号或有限时间信号,因此在实际计算卷积和时,求和是在有限范围内进行的。
计算过程中上下限的选取和所得结果的分布区间取决于参与卷积的两个序列,下面将分别进行讨论:1、两个从n = 0开始的序列)()()(n u n x n x =和)()()(n u n y n y =的卷积和∑∑=∞-∞=-=--=nm m n u m n y m x m n u m n y m u m x n f 0)()]()([)()()()()( (1)上式右边因子u (n )表示卷积和的结果也是一个从n = 0开始的序列。
2、从n = n 1开始的序列)()()(1n n u n x n x -=和从n = n 2开始的序列)()()(2n n u n y n y -=的卷积和,其中n 1和n 2为任意整数。
∑∑-=∞-∞=---=----=21)()]()([)()()()()(2121n n n m m n nn u m n y m x n m n u m n y n m u m x n f (2)上式右边因子u (n -n 1-n 2)表示卷积和是一个从n = n 1+n 2开始的序列。
上机:conv.m 用来实现两个离散序列的线性卷积。
其调用格式是:y=conv(x,h)若x 的长度为N ,h 的长度为M ,则y 的长度L=N+M -1。
离散信号的产生(chǎnshēng)及运算报告一、实验(shíyàn)目的:1、复习(fùxí)和巩固数字信号处理中离散信号的产生和运算2、学习和掌握(zhǎngwò)用MATLAB产生离散信号的方法3、学习(xuéxí)和掌握用MATLAB对离散信号进行运算二、实验原理:1.用MATLAB函数产生离散信号信号是数字信号处理的最基本内容。
没有信号,数字信号处理就没了工作对象。
MATLAB7.0内部提供了大量的函数,用来产生常用的信号波形。
例如,三角函数(sin,cos),指数函数(exp),锯齿波函数(sawtooth), 随机数函数(rand)等。
1 产生被噪声污染的正弦信号用随机数函数产生污染的正弦信号。
2 产生单位脉冲序列和单位阶跃序列按定义,单位脉冲序列为单位阶跃序列为。
3 矩形脉冲信号:在MATLAB 中用rectpuls 函数来表示,其调用形式为:y=rectpuls(t,width,用以产生一个幅值为1,宽度为width,相对于t=0 点左右对称的矩形波信号,该函数的横坐标范围(fànwéi)由向量t 决定,是以t=0 为中心向左右各展开width/2 的范围,width 的默认值为1。
例:以t=2T(即t-2×T=0为对称中心的矩形脉冲信号(xìnhào)的MATLAB 源程序如下:(取T=1)t=0:0.001:4;T=1;ft=rectpuls(t-2*T,2*T;plot(t,ft;grid on; axis([0 4 –0.5 1.5];4 周期性矩形波(方波)信号在MATLAB 中用square 函数来表示,其调用形式为:y=square(t,DUTY,用以产生一个周期为2π、幅值为±1 的周期性方波信号,其中的DUTY参数表示占空比,即在信号的一个周期中正值(zhènɡ zhí)所占的百分比。
第1篇一、实验目的1. 理解时域离散信号的基本概念和特性。
2. 掌握时域离散信号的表示方法。
3. 熟悉常用时域离散信号的产生方法。
4. 掌握时域离散信号的基本运算方法。
5. 通过MATLAB软件进行时域离散信号的仿真分析。
二、实验原理时域离散信号是指在时间轴上取离散值的一类信号。
这类信号在时间上不连续,但在数值上可以取到任意值。
时域离散信号在数字信号处理领域有着广泛的应用,如通信、图像处理、语音处理等。
时域离散信号的基本表示方法有:1. 序列表示法:用数学符号表示离散信号,如 \( x[n] \) 表示离散时间信号。
2. 图形表示法:用图形表示离散信号,如用折线图表示序列。
3. 时域波形图表示法:用波形图表示离散信号,如用MATLAB软件生成的波形图。
常用时域离散信号的产生方法包括:1. 单位阶跃信号:表示信号在某个时刻发生突变。
2. 单位冲激信号:表示信号在某个时刻发生瞬时脉冲。
3. 正弦信号:表示信号在时间上呈现正弦波形。
4. 矩形脉冲信号:表示信号在时间上呈现矩形波形。
时域离散信号的基本运算方法包括:1. 加法:将两个离散信号相加。
2. 乘法:将两个离散信号相乘。
3. 卷积:将一个离散信号与另一个离散信号的移位序列进行乘法运算。
4. 反褶:将离散信号沿时间轴翻转。
三、实验内容1. 实验一:时域离散信号的表示方法(1)使用序列表示法表示以下信号:- 单位阶跃信号:\( u[n] \)- 单位冲激信号:\( \delta[n] \)- 正弦信号:\( \sin(2\pi f_0 n) \)- 矩形脉冲信号:\( \text{rect}(n) \)(2)使用图形表示法绘制以上信号。
2. 实验二:时域离散信号的产生方法(1)使用MATLAB软件生成以下信号:- 单位阶跃信号- 单位冲激信号- 正弦信号(频率为1Hz)- 矩形脉冲信号(宽度为2)(2)观察并分析信号的波形。
3. 实验三:时域离散信号的基本运算(1)使用MATLAB软件对以下信号进行加法运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(2)使用MATLAB软件对以下信号进行乘法运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(3)使用MATLAB软件对以下信号进行卷积运算:- \( u[n] \)- \( \sin(2\pi f_0 n) \)(4)使用MATLAB软件对以下信号进行反褶运算:- \( u[n] \)4. 实验四:时域离散信号的仿真分析(1)使用MATLAB软件对以下系统进行时域分析:- 系统函数:\( H(z) = \frac{1}{1 - 0.5z^{-1}} \)(2)观察并分析系统的单位冲激响应。
离散时间信号的时域分析实验报告实验名称:离散时间信号的时域分析⼀、实验⽬的1.学会⽤MATLAB在时域中产⽣⼀些基本的离散时间信号,并对这些信号进⾏⼀些基本的运算。
2.熟悉MATLAB中产⽣信号和绘制信号的基本命令。
⼆、实验内容1.在载波信号xH[n]和调制信号xL[n]采⽤不同频率、不同调制指数m的情况下,运⾏程序P1.6,以产⽣振幅调制信号y[n]。
2.编写matlab程序,以产⽣图1.1和图1.2所⽰的⽅波和锯齿波序列,并将序列绘制出来。
三、主要算法与程序1.n=0:100;m=0.6;fH=0.2;fL=0.02;xH=sin(2*pi*fH*n);xL=sin(2*pi*fL*n);y=(1+m*xL).*xH;stem(n,y);grid;xlabel('时间序列');ylabel('振幅');通过改变m,fH和fL来产⽣不同情况下的振幅调制信号。
2.画出图⼆:n=0:1:30;y=3*square(n*pi/5,60);stem(n,y),grid onaxis([0,30,-4,4]);xlabel('时间序号n');ylabel('振幅');为画出图三,将占空⽐由图⼆的60改为30。
画出图四:n=0:1:50;y=2*sawtooth(n*pi/10,1);stem(n,y),grid onaxis([0,50,-2,2]);xlabel('时间序号n');ylabel('振幅');为画出图五,将图四中从-1到1的范围由1改为0.5。
四、实验结果与分析图⼀确定了数值:m=0.6,fH=0.2,fL=0.02,绘出图像。
图⼆图三图四图五五、实验⼩结通过这次实验,我熟悉MATLAB中产⽣信号和绘制信号的基本命令,学会⽤MATLAB在时域中产⽣⼀些基本的离散时间信号,并对这些信号进⾏⼀些基本的运算。
信号与系统实验报告一、信号的时域基本运算1.连续时间信号的时域基本运算两实验之一实验分析:输出信号值就等于两输入信号相加(乘)。
由于b=2,故平移量为2时,实际是右移1,符合平移性质。
两实验之二心得体会:时域中的基本运算具有连续性,当输入信号为连续时,输出信号也为连续。
平移,伸缩变化都会导致输出结果相对应的平移伸缩。
2.离散时间信号的时域基本运算两实验之一实验分析:输出信号的值是对应输入信号在每个n值所对应的运算值,当进行拉伸变化后,n值数量不会变,但范围会拉伸所输入的拉伸系数。
两实验之二心得体会:离散时间信号可以看做对连续时间信号的采样,而得到的输出信号值,也可以看成是连续信号所得之后的采样值。
二、连续信号卷积与系统的时域分析1.连续信号卷积积分两实验之一实验分析:当两相互卷积函数为冲激函数时,所卷积得到的也是一个冲激函数,且该函数的冲激t值为函数x,函数y冲激t值之和。
两实验之二心得体会:连续卷积函数每个t值所对应的卷积和可以看成其中一个在k值取得的函数与另外一个函数相乘得到的一个分量函数,并一直移动k值直至最后,最后累和出来的最终函数便是所得到的卷积函数。
3.RC电路时域积分两实验之一实验分析:全响应结果正好等于零状态响应与零输入响应之和。
两实验之二心得体会:具体学习了零状态,零输入,全响应过程的状态及变化,与之前所学的电路知识联系在一起了。
三、离散信号卷积与系统的时域分析1.离散信号卷积求和两实验之一实验分析:输出结果的n值是输入结果的k号与另一个n-k的累和两实验之二心得体会:直观地观察到卷积和的产生,可以看成连续卷积的采样形式,从这个方面去想,更能深入地理解卷积以及采样的知识。
2.离散差分方程求解两实验之一实验分析:其零状态响应序列为0 0 4 5 7.5,零输入响应序列为2 4 5 5.5 5.75,全状态响应序列为2 4 9 10.5 13.25,即全状态=零输入+零状态。
两实验之二心得体会:求差分方程时,可以根据全状态响应是由零输入输入以及零状态相加所得,分开来求,同时也加深了自己对差分方程的求解问题的理解。
实验一 时域离散信号的产生与基本运算一、实验目的1、了解常用的时域离散信号及其特点。
2、掌握MATLAB 产生常用时域离散信号的方法。
3、掌握时域离散信号简单的基本运算方法。
二、实验内容1、自己设定参数,分别表示并绘制单位抽样序列、单位阶跃序列、正弦序列、 实指数序列、随机序列。
2、自己设定参数,分别表示并绘制信号移位、信号相加、信号相乘、信号翻转、 信号和、信号积、信号能量。
3、已知信号(1) 描绘)(n x 序列的波形。
(2) 用延迟的单位脉冲序列及其加权和表示)(n x 序列。
(3) 描绘以下序列的波形:)2()(),2(2)(),2(2)(321n x n x n x n x n x n x -=+=-=三、实现步骤1、自己设定参数,分别表示并绘制单位抽样序列、单位阶跃序列、正弦序列、 实指数序列、随机序列。
(1)单位抽样序列程序:x=zeros(1,10);x(2)=1;stem(x,'filled')axis([0,10,-0.2,1]);title('µ¥Î»³éÑùÐòÁÐ');-0.200.20.40.60.8图1 (2)单位阶跃序列程序:N=10;u=ones(1,N);stem(u,'filled')axis([-10,10,0,1]);title('µ¥Î»½×Ô¾ÐòÁÐ');00.10.20.30.40.50.60.70.80.91单位阶跃序列图2 (3)正弦序列程序:x=-20:1:20;y=sin(0.2*pi.*x+0.5*pi);stem(x,y,'filled');axis([-20,20,-2,2]);title('ÕýÏÒÐòÁÐ');正弦序列-20-15-10-505101520图3 (4)实指数序列a=1/2程序:n=0:10;a1=1/2;y1=a1.^n;stem(n,y1,'filled');axis([0,10,0,1]);title('ʵָÊýÐòÁУ¬a=1/2');实指数序列,a=1/2图4 5实指数序列a=2程序:n=0:10;a2=2;y2=a2.^n;stem(n,y2,'filled');title('ʵָÊýÐòÁÐ,a=2');实指数序列,a=2图5 6 随机序列程序:y=rand(1,20);stem(y,'filled');title('Ëæ»úÐòÁÐ');0246810121416182000.10.20.30.40.50.60.70.80.91随机序列图62、自己设定参数,分别表示并绘制信号移位、信号相加、信号相乘、信号翻转、 信号和、信号积、信号能量。
信号的移位:(1)信号移位程序:n=-3:10;k0=3;k1=-3;%ʵÏÖÐźŵÄÒÆÎ»x=cos(2*pi*n/10);x1=cos(2*pi*(n-k0)/10);x2=cos(2*pi*(n-k1)/10);subplot(3,1,1),stem(n,x,'filled');ylabel('x(n)');subplot(3,1,2),stem(n,x1,'filled');ylabel('x(n-2)');subplot(3,1,3),stem(n,x2,'filled');ylabel('x(n+2)');2信号相加、信号相乘程序:n=-3:20;x1=cos(2*pi*n/10);subplot(2,2,1);stem(n,x1,'filled');title('x(1)');axis([-4,20,-2,2]);x2=cos(2*pi*n/10);subplot(2,2,2);stem(n,x2,'filled');title('x(2)');axis([-4,20,-2,2]);y=x1+x2;subplot(2,2,3);stem(n,y,'filled');title('ÐźÅÏà¼Ó');axis([-4,20,-2,2]);y=x1.*x2;subplot(2,2,4);stem(n,y,'filled');title('ÐźÅÏà³Ë');axis([-4,20,-2,2]);n=-5:5;x=exp(-0.4*n);x1=fliplr(x);n1=-fliplr(n);subplot(2,1,1),stem(n,x,'filled');title('x(n)'); subplot(2,1,2),stem(n1,x1,'filled');title('x(-n)');信号和、信号积、信号能量:程序:x=[1,2,3,4,5,6,7,8,9];y1=sum(x)y2=prod(x)E1=sum(x.*conj(x))得到:y1 =45y2 =362880E1 =2853、已知信号(1)描绘)x序列的波形;(n(2)用延迟的单位脉冲序列及其加权和表示)x序列;(n(3)描绘一下序列的波形function f=u(t)f=(t>=0);subplot(2,1,1)n=-10:10;y1=(2*n+5).*(u(n+4)-u(n))+6.*(u(n)-u(n-5));stem(n,y1,'filled')axis([-10,10,-3,6]);title('序列波形');t=-10:10;subplot(2,1,2)y=(-3)*(u(t+4)-u(t+3))+(-1)*(u(t+3)-u(t+2))+(u(t+2)-u(t+1))+3*(u( t+1)-u(t))+6*(u(t)-u(t-1))+6*(u(t-1)-u(t-2))+6*(u(t-2)-u(t-3))+6*(u(t-3)-u(t-4))+6*(u(t-4)-u (t-5));stem(t,y,'filled')axis([-10,10,-3,6]);title('用单位脉冲序列及其加权和表示序列波形');subplot(2,2,1)t=-10:10;y=(-3)*(u(t+4)-u(t+3))+(-1)*(u(t+3)-u(t+2))+(u(t+2)-u(t+1))+3*(u( t+1)-u(t))+6*(u(t)-u(t-1))+6*(u(t-1)-u(t-2))+6*(u(t-2)-u(t-3))+6*(u(t-3)-u(t-4))+6*(u(t-4)-u (t-5));stem(t,y,'filled')axis([-10,10,-6,12]);title('x(n)');subplot(2,2,2)t=-10:10;y=(-3)*(u(t+4)-u(t+3))+(-1)*(u(t+3)-u(t+2))+(u(t+2)-u(t+1))+3*(u( t+1)-u(t))+6*(u(t)-u(t-1))+6*(u(t-1)-u(t-2))+6*(u(t-2)-u(t-3))+6*(u(t-3)-u(t-4))+6*(u(t-4)-u (t-5));stem(t+2,2*y,'filled')axis([-10,10,-6,12]);title('2x(n-2)');subplot(2,2,3)t=-10:10;y=(-3)*(u(t+4)-u(t+3))+(-1)*(u(t+3)-u(t+2))+(u(t+2)-u(t+1))+3*(u( t+1)-u(t))+6*(u(t)-u(t-1))+6*(u(t-1)-u(t-2))+6*(u(t-2)-u(t-3))+6*(u(t-3)-u(t-4))+6*(u(t-4)-u (t-5));stem(t-2,2*y,'filled')axis([-10,10,-6,12]);title('2x(n+2)');subplot(2,2,4)t=-10:10;y=(-3)*(u(t+4)-u(t+3))+(-1)*(u(t+3)-u(t+2))+(u(t+2)-u(t+1))+3*(u( t+1)-u(t))+6*(u(t)-u(t-1))+6*(u(t-1)-u(t-2))+6*(u(t-2)-u(t-3))+6*(u(t-3)-u(t-4))+6*(u(t-4)-u (t-5));stem(2-t,y,'filled')axis([-10,10,-6,12]);title('x(2-n)');4、思考题当进行离散序列的相乘运算时,例1-6程序中有yp=xa1.*xa2,请问此处进行的相乘运算是矩阵乘还是数组乘,为何这样使用?答:此处进行的是数组乘,因为只有用数乘组,才能将序列中对应的数乘起来,实现序列相乘。