实验1离散时间信号的产生与运算
- 格式:doc
- 大小:78.00 KB
- 文档页数:5
《数字信号处理》实验报告学院:信息科学与工程学院专业班级:通信1303姓名学号:实验一 常见离散时间信号的产生和频谱分析一、 实验目的(1) 熟悉MATLAB 应用环境,常用窗口的功能和使用方法;(2) 加深对常用离散时间信号的理解;(3) 掌握简单的绘图命令;(4) 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号进行频域分析。
二、 实验原理(1) 常用离散时间信号a )单位抽样序列⎩⎨⎧=01)(n δ00≠=n n 如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:⎩⎨⎧=-01)(k n δ0≠=n k n b )单位阶跃序列⎩⎨⎧=01)(n u 00<≥n n c )矩形序列 ⎩⎨⎧=01)(n R N 其他10-≤≤N nd )正弦序列)sin()(ϕ+=wn A n xe )实指数序列f )复指数序列()()jw n x n e σ+=(2)离散傅里叶变换:设连续正弦信号()x t 为0()sin()x t A t φ=Ω+这一信号的频率为0f ,角频率为002f πΩ=,信号的周期为00012T f π==Ω。
如果对此连续周期信号()x t 进行抽样,其抽样时间间隔为T ,抽样后信号以()x n 表示,则有0()()sin()t nT x n x t A nT φ===Ω+,如果令w 为数字频率,满足000012s sf w T f f π=Ω=Ω=,其中s f 是抽样重复频率,简称抽样频率。
为了在数字计算机上观察分析各种序列的频域特性,通常对)(jw e X 在[]π2,0上进行M 点采样来观察分析。
对长度为N 的有限长序列x(n), 有∑-=-=10)()(N n n jw jw k k e n x e X其中 1,,1,02-==M k k Mw k ,π 通常M 应取得大一些,以便观察谱的细节变化。
取模|)(|k jw e X 可绘出幅频特性曲线。
实验一 离散时间信号的时域分析实验1 序列的产生1. 目的:熟悉C 语言产生和绘制,熟悉MATLAB 中产生信号和绘制信号的基本命令。
2. 具体实验:2.1 单位样本和单位阶跃序列。
Q1.1 运行程序P1.1 ,以产生单位样本序列u[n]并显示它。
答:如图1-1所示。
Q1.2 命令clf , axis , title , xlabel 和ylabel 的作用是什么? 答:clf :擦除当前图形窗口中的图形。
Axis :调整坐标轴X 轴Y 轴的范围。
Title:给绘制的图形加上标题。
Xlabel:给X 轴加上标注。
Ylabel: 给Y 轴加上标注。
Q1.3 修改程序P1.1 以产生带有延时11个样本的延迟单位样本序列ud[n]。
运行修改的程序并显示产生的序列。
答:如图1-2所示。
Q1.4修改程序P1.1 以产生单位步长序列s[n]。
运行修改的程序并显示产生的序列。
答:如图1-3所示。
Q1.5修改程序P1.1 以产生带有超前7个样本的延迟单位样本序列sd[n]。
运行修改的程序并显示产生的序列。
答:如图1-4所示。
Figure 1-2 The unit sample sequence ud[n]Figure 1-1 The shifted unit sample sequence u[n]单位样本序列公式如下所示:Time index nA m p l i t u d eUnit Sample Sequence u[n]Time index nA m p l i t u d eShifted Unit Sample Sequence ud[n]1 , n=0 1 , n=k δ[n]= δ[n-k]=0 , 0≠0 0 , 0≠kFigure 1-3 The unit step sequence s[n] Figure 1-4 The shifted unit step sequence sd[n]单位阶跃序列公式如下所示:1 , n ≥0 1 , n ≥k μ[n]= μ[n-k]=0 , n <0 0 , n <k2.2 指数信号Q1.6 运行程序P1.2 ,以产生复数值的指数序列。
实验一 离散信号的时域运算与变换1. 熟悉MA TLAB 编程特点将序列x(n)={1,2,3,4,0,7},其中n =0:5的每一个样本都移动3个周期,移位后的序列y(n)=x(n-3)2.序列的奇偶分解将序列x(n)={0,1,2,3,4,3,2,1,0},其中n =-3:5进行奇偶分解用函数stem 显示其奇偶序列3.序列的加法运算设x1(n)={1,0.5,0.3,0.4}其中n=-1:2 ;x2(n)={0.2,0.3,0.4,0.5,0.8,1}其中n=-2:34.实现2中序列的翻转2.对本实验结果做理论计算,解释实验结果3.总结实验体会及实验中存在的问题1. 在matlab 中应如何实现序列的相乘运算2. 在matlab 中应如何实现序列的倒相运算?2)]()([2)]()([)(,)(),()()(n x n x o n x n x e o e n x n x n x n x n x ---+==+=奇序列其中偶序列)()()(21n x n x n x +=x(-n)y(n)=首先,在用MA TLAB 表示离散序列并将其可视化时,我们还应注意以下几点:第一、离散时间序列无法用符号运算来表示,要用矩阵的形式;第二、由于在MA TLAB 中矩阵的元素个数有限,因此,MA TLAB 无法表示无限长的序列;第三、在绘制离散信号波形的函数stem 命令,而不是plot 命令。
下面是MA TLABn0是单位抽样序列的位移量,n1,n2[x,n]=impuls (n0,n1,n2);figure上图为右移了一个单位的单位抽样序列其次,对于离散序列来说,序列相加、相乘是将两序列对应时间序号的值逐项相加或相乘,平移、反折、及倒相变换与连续信号的定义完全相同,但需要注意,与连续信号不同的是,在MA TLAB 中,离散序列的时域运算和变换不能用符号运算来实现,必须用向量表示的方法,即在MA TLAB 中离散序列的相加、相乘需表示成两个向量的相加、相乘,因而参加运算的两序列向量必须具有相同的维数。
实验一 时域离散信号的产生与基本运算一、实验目的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 离散时间信号的产生1.实验目的数字信号处理系统中的信号都是以离散时间形态存在,所以对离散时间信号的研究是数字信号处理的基本所在。
而要研究离散时间信号,首先需要产生出各种离散时间信号。
MATLAB 是一套功能强大的工程计算及数据处理软件,广泛应用于工业,电子,医疗和建筑等众多领域。
使用MATLAB软件可以很方便地产生各种常见的离散时间信号,而且它还具有强大的绘图功能,便于用户直观地输出处理结果。
通过本实验,学生将学习如何用MATLAB产生一些常见的离散时间信号,并通过MATLAB中的绘图工具对产生的信号进行观察,加深对常用离散信号的理解。
2.实验要求本实验要求学生运用MATLAB编程产生一些基本的离散时间信号,并通过MATLAB的几种绘图指令画出这些图形,以加深对相关教学内容的理解,同时也通过这些简单的函数练习了MATLAB的使用。
3.实验原理(1)常见的离散时间信号1)单位抽样序列,或称为离散时间冲激,单位冲激:?(n)???1?0n?0 n?0如果?(n)在时间轴上延迟了k个单位,得到?(n?k)即:?1n?k ?(n?k)??0n?0?2)单位阶跃序列n?0?1 u(n)?n?0?0在MATLAB中可以利用ones( )函数实现。
x?ones(1,N);3)正弦序列x(n)?Acos(?0n??)这里,A,?0,和?都是实数,它们分别称为本正弦信号x(n)的振幅,角频率和初始相位。
f0??02?为频率。
x(n)?ej?n4)复正弦序列5)实指数序列x(n)?A?n(2)MATLAB编程介绍MATLAB是一套功能强大,但使用方便的工程计算及数据处理软件。
其编程风格很简洁,没有太多的语法限制,所以使用起来非常方便,尤其对初学者来说,可以避免去阅读大量的指令系统,以便很快上手编程。
值得注意得就是,MATLAB中把所有参与处理的数据都视为矩阵,并且其函数众多,希望同学注意查看帮助,经过一段时间的训练就会慢慢熟练使用本软件了。
第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. 理解数字信号处理的基本概念和原理。
2. 掌握离散时间信号的基本运算和变换方法。
3. 熟悉数字滤波器的设计和实现。
4. 培养实验操作能力和数据分析能力。
二、实验原理数字信号处理(Digital Signal Processing,DSP)是利用计算机对信号进行采样、量化、处理和分析的一种技术。
本实验主要涉及以下内容:1. 离散时间信号:离散时间信号是指时间上离散的信号,通常用序列表示。
2. 离散时间系统的时域分析:分析离散时间系统的时域特性,如稳定性、因果性、线性等。
3. 离散时间信号的变换:包括离散时间傅里叶变换(DTFT)、离散傅里叶变换(DFT)和快速傅里叶变换(FFT)等。
4. 数字滤波器:设计、实现和分析数字滤波器,如低通、高通、带通、带阻滤波器等。
三、实验内容1. 离散时间信号的时域运算(1)实验目的:掌握离散时间信号的时域运算方法。
(2)实验步骤:a. 使用MATLAB生成两个离散时间信号;b. 进行时域运算,如加、减、乘、除等;c. 绘制运算结果的时域波形图。
2. 离散时间信号的变换(1)实验目的:掌握离散时间信号的变换方法。
(2)实验步骤:a. 使用MATLAB生成一个离散时间信号;b. 进行DTFT、DFT和FFT变换;c. 绘制变换结果的频域波形图。
3. 数字滤波器的设计和实现(1)实验目的:掌握数字滤波器的设计和实现方法。
(2)实验步骤:a. 设计一个低通滤波器,如巴特沃斯滤波器、切比雪夫滤波器等;b. 使用MATLAB实现滤波器;c. 使用MATLAB对滤波器进行时域和频域分析。
4. 数字滤波器的应用(1)实验目的:掌握数字滤波器的应用。
(2)实验步骤:a. 采集一段语音信号;b. 使用数字滤波器对语音信号进行降噪处理;c. 比较降噪前后的语音信号,分析滤波器的效果。
四、实验结果与分析1. 离散时间信号的时域运算实验结果显示,通过MATLAB可以方便地进行离散时间信号的时域运算,并绘制出运算结果的时域波形图。
实验一 离散时间信号的产生1. 实验目的数字信号处理系统中的信号都是以离散时间形态存在的,所以对离散时间信号的研究是数字信号处理的基本所在。
而要研究离散时间信号,首先需要产生各种离散时间信号。
使用MATLAB 软件 很方便的产生各种常见的离散时间信号,而且它还有强大的绘图功能,便于用户直接地处理输出结果。
2. 实验原理离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。
离散序列通常用x(n)来表示,自变量必须是整数,常见的离散时间信号如下:(1) 单位冲激序列⎩⎨⎧=01)(n δ 00≠=n n如果)(n δ在时间轴上延迟了k 个单位,)(k n -δ即:⎩⎨⎧=-01)(k n δ 0≠=n k n长度为N 的单位冲激序列δ(n)可以通过下面的MATLAB 命令获得。
n=-(N-1):N-1x=[zeros(1,N-1) 1 zeros(1,N-1)];setm(n,x)延迟K 个采样点的长度为N 的单位冲激序列δ(N-k )(k<N)可以用下面的命令获得: n=-(N-1):N-1x=[zeros(1,M) 1 zeros(1,N-M-1)];setm(n,y)(2)单位阶跃序列⎩⎨⎧01)(n u 00<≥n n 长度为N 的单位阶跃序列u (n)可以通过下面的MA TLAB 命令获得。
n=-(N-1):N-1x=[zeros(1,N-1) ones(1,N)];setm(n,x)延迟的单位阶跃序可以用类似于单位冲激信号的方法产生。
(3)矩形序列R N =u(n)-u(n-N)(4)正弦序列x (n ) = A cos(ωn +φ).这里A ,ω,φ都是实数分别为正弦信号的振幅,角频率,和初始相位,可以用下面的命令获得:n=0:N-1x=A*cos(2*pi*f*n/Fs+phase)(5) 单边指数序列:n a n x =)(u (n) 长度为N 的单边指数序列可以通过下面的MA TLAB 命令实现n a x N n .^1:0=-=setm(n,x)(6)复指数序列3实验内容(1)绘制程序产生单位冲激序列⎩⎨⎧=01)(n δ00≠=n n 及δ(n-“学号后两位”)并绘出其图形>> n=-10:10;>> x=[zeros(1,10),1,zeros(1,10)];>> stem(n,x)>> title('单位冲激序列'); >> xlabel('n');ylabel('x(n)');>> n=0:50;>> y=[zeros(1,40),1,zeros(1,10)];>>stem(n,y);>> title('单位冲激采样后的序列');>> xlabel('n');ylabel('y(n)');(2)绘制程序产生单位阶跃信号⎩⎨⎧01)(n u 00<≥n n 及u(n-“学号后两位”)及u(n)- u(n-“学号后两位”),并绘出其图形。
离散信号的产生及运算实验一离散信号的产生及运算一.实验目的:1.复习和巩固数字信号处理中离散信号的产生和运算2.学习和掌握用MATLAB 产生离散信号的方法3.学习和掌握用MATLAB 对离散信号进行运算二.实验原理1.用MATLAB 函数产生离散信号信号是数字信号处理的最基本内容。
没有信号,数字信号处理就没了工作对象。
MATLAB7.0 内部提供了大量的函数,用来产生常用的信号波形。
例如,三角函数(sin,cos), 指数函数(exp),锯齿波函数(sawtooth), 随机数函数(rand)等。
⑴产生被噪声污染的正弦信号用随机数函数产生污染的正弦信号。
⑵产生单位脉冲序列和单位阶跃序列按定义,单位脉冲序列为0 0 0 1, ( ) 0,n n n n n n单位阶跃序列为。
0 0 0 1, ( ) 0,n n u n n n n⑶矩形脉冲信号:在MATLAB 中用rectpuls 函数来表示,其调用形式为:y=rectpuls(t,width),用以产生一个幅值为1,宽度为width,相对于t=0 点左右对称的矩形波信号,该函数的横坐标范围由向量t 决定,是以t=0 为中心向左右各展开width/2 的范围,width 的默认值为1。
例:以t=2T(即t-2×T=0)为对称中心的矩形脉冲信号的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]);⑷周期性矩形波(方波)信号在MATLAB 中用square 函数来表示,其调用形式为:y=square(t,DUTY),用以产生一个周期为2π、幅值为±1 的周期性方波信号,其中的DUTY 参数表示占空比,即在信号的一个周期中正值所占的百分比。
例如频率为30Hz 的周期性方波信号的MATLAB 参考程序如下:t=-0.0625:0.0001:0.0625;y=square(2*pi*30*t,75);plot(t,y);axis([-0.0625 0.0625 –1.5 1.5]);grid on ;2.MATLAB 中信号的运算乘法和加法:离散信号之间的乘法和加法,是指它的同序号的序列值逐项对应相乘和相加。
一、实验目的1. 理解离散信号的概念及其特点。
2. 掌握离散信号的表示方法。
3. 掌握离散信号的基本运算方法。
4. 熟悉离散系统响应的求解方法。
5. 利用MATLAB进行离散信号分析。
二、实验原理离散信号是指时间上不连续的信号,与连续信号相比,具有以下特点:1. 采样性:离散信号是在时间上等间隔取样的信号。
2. 有限性:离散信号在时间上有限,即在有限的时间内存在。
3. 线性时不变性:离散系统具有线性时不变性,即系统对信号的时延和幅度变换保持不变。
离散信号的表示方法主要有以下几种:1. 序列表示法:用括号括起来的序列表示,如x[n]。
2. 图形表示法:用坐标轴表示,横轴为时间,纵轴为信号幅度。
3. Z变换表示法:用Z变换表示,如X(z)。
离散信号的基本运算方法包括:1. 加法运算:两个离散信号相加,结果为它们的序列对应元素相加。
2. 乘法运算:两个离散信号相乘,结果为它们的序列对应元素相乘。
3. 移位运算:将离散信号沿时间轴左移或右移。
4. 展平运算:将离散信号沿时间轴展平,即将信号序列展开成矩阵形式。
离散系统响应的求解方法主要有以下几种:1. 离散卷积法:用离散卷积运算求解离散系统响应。
2. Z变换法:用Z变换求解离散系统响应。
3. 快速傅里叶变换(FFT)法:用FFT求解离散系统响应。
三、实验内容及步骤1. 实验一:离散信号的表示方法(1)在MATLAB中,创建一个离散信号序列x[n],并绘制其图形表示。
(2)利用Z变换,将离散信号序列转换为Z变换表示。
2. 实验二:离散信号的基本运算(1)在MATLAB中,创建两个离散信号序列x[n]和y[n],并进行加法运算、乘法运算、移位运算和展平运算。
(2)绘制运算结果,并分析运算结果的特点。
3. 实验三:离散系统响应的求解(1)在MATLAB中,创建一个离散信号序列x[n],并设计一个离散系统。
(2)利用离散卷积法、Z变换法和FFT法求解离散系统响应。
一、实验名称离散信号分析实验二、实验目的1. 理解离散信号的基本概念和特点。
2. 掌握离散信号的表示方法,包括时域和频域表示。
3. 熟悉离散信号的基本运算,如加、减、乘、除等。
4. 理解离散系统响应的概念,并学会使用MATLAB进行离散信号与系统分析。
三、实验原理离散信号是指只在离散时刻上有定义的信号,其特点是时域上的不连续性。
离散信号可以通过时域采样和频域变换进行分析。
四、实验内容1. 离散信号的生成与表示使用MATLAB生成以下离散信号:- 单位脉冲序列:δ[n]- 单位阶跃序列:u[n]- 单位斜坡序列:r[n]- 正弦信号:sin(nω0)- 指数信号:e^(αn)并分别绘制这些信号的时域波形图。
2. 离散信号的运算对上述生成的信号进行以下运算:- 加法运算:δ[n] + u[n]- 乘法运算:δ[n] e^(αn)- 移位运算:δ[n - 1]- 反褶运算:δ[-n]绘制运算结果的时域波形图。
3. 离散系统响应假设离散系统由以下差分方程描述:y[n] = x[n] + x[n - 1] - y[n - 1]使用MATLAB编写程序,对输入信号x[n] = δ[n] 进行仿真,并绘制系统响应y[n] 的时域波形图。
4. 离散信号的频域分析对上述生成的信号进行傅里叶变换,得到其频域表示。
绘制信号的频谱图,并分析信号的频率特性。
五、实验步骤1. 使用MATLAB编写程序,生成上述离散信号。
2. 绘制信号的时域波形图。
3. 对信号进行运算,绘制运算结果的时域波形图。
4. 使用MATLAB编写程序,对输入信号进行仿真,并绘制系统响应的时域波形图。
5. 对信号进行傅里叶变换,绘制信号的频谱图。
六、实验结果与分析1. 离散信号的生成与表示通过实验,我们成功生成了上述离散信号,并绘制了它们的时域波形图。
可以看出,这些离散信号在时域上是不连续的。
2. 离散信号的运算通过实验,我们验证了离散信号的基本运算规律,如加法、乘法、移位和反褶等。
实验一离散信号的MATLAB实现实验一:离散信号的MATLAB实现一、实验目的本实验旨在通过MATLAB实现离散信号的生成、绘制和基本操作,加深对离散信号处理的理解,并为后续实验做好准备。
二、实验原理离散信号是指在时间域或幅值域上取值有限的信号。
常见的离散信号包括矩形波、三角波、正弦波等。
在MATLAB中,可以使用不同的函数和参数来生成这些离散信号。
同时,使用MATLAB的绘图功能可以将离散信号绘制出来,以便观察和分析。
三、实验步骤1.生成离散信号首先,我们需要生成一个离散信号。
在MATLAB中,可以使用以下代码生成一个长度为N的离散信号:N = 100; % 信号长度t = 0:N-1; % 时间向量x = sin(2*pi*t/N); % 离散正弦波信号这段代码将生成一个长度为100、采样频率为N Hz的正弦波信号。
其中,t是时间向量,表示信号在每个采样点上的时间;x是信号的幅值向量,表示在每个采样点上的幅值。
2.绘制离散信号生成离散信号后,我们可以使用MATLAB的绘图功能将其绘制出来。
在MATLAB 中,可以使用以下代码将离散信号绘制出来:plot(t, x); % 绘制离散正弦波信号xlabel('Time (s)'); % 设置X轴标签ylabel('Amplitude'); % 设置Y轴标签title('Discrete Sine Wave'); % 设置标题这段代码将绘制出离散正弦波信号的图形,并添加了X轴和Y轴标签以及标题。
3.基本操作除了生成和绘制离散信号外,我们还可以对离散信号进行一些基本操作,如加减、乘除、翻转等。
例如,我们可以使用以下代码将两个离散信号相加:y = x + 2; % 将离散正弦波信号加上2这段代码将生成一个新的离散信号y,它是原来信号x的基础上加上2。
同样地,我们还可以对离散信号进行其他基本操作。
四、实验结果与分析通过本实验,我们成功地生成了离散正弦波信号,并将其绘制出来。
实验一离散时间信号的表示与运算实验一:离散时间信号的表示与运算一、实验目的本实验旨在让学生了解和掌握离散时间信号的基本表示方法,包括时域和频域表示方法,以及基本信号的运算方法,从而为学生进一步学习数字信号处理和通信系统等课程打下坚实的基础。
二、实验原理离散时间信号是在时间轴上离散出现的信号,与连续时间信号不同,它只能在离散的时间点上采样观察。
离散时间信号的表示方法包括时域和频域表示方法,其中时域表示方法是最基本和直观的表示方法。
离散时间信号的运算包括加法、减法、乘法和除法等基本运算,通过这些基本运算可以实现对离散时间信号的基本处理。
此外,离散时间信号的变换也成为频域分析,将信号从时域转化为频域,可以对信号的频率特性进行分析。
三、实验步骤1.准备阶段:在进行实验之前,需要准备好实验所需的器材和软件,包括计算机、信号发生器和数字示波器等。
同时,学生应该对离散时间信号的基本概念和表示方法进行预习,以便更好地进行实验。
2.时域表示:首先,通过计算机生成一组离散时间信号,例如矩形波信号、正弦波信号和余弦波信号等。
然后,将所生成的离散时间信号在数字示波器中进行观察和记录,并对这些信号进行简单的处理,例如加减乘除等基本运算。
3.频域表示:通过使用离散傅里叶变换(DFT)将所生成的离散时间信号从时域转化到频域,并对信号的频谱进行分析。
通过观察信号的频谱,可以了解信号的频率成分和幅度分布等情况。
4.实验总结:在完成实验观察和记录后,学生应该对实验结果进行分析和总结,并对实验过程中遇到的问题进行思考和解决。
同时,学生应该了解并掌握离散时间信号的表示与运算的基本原理和方法。
四、实验结果及分析通过本次实验,学生应该得到以下实验结果:1.了解并掌握离散时间信号的基本概念和表示方法;2.学会使用简单的离散时间信号处理算法对信号进行处理;3.掌握将离散时间信号从时域转化为频域的方法,并对信号的频谱进行分析;4.学会使用MATLAB等软件对离散时间信号进行处理和分析。
《数字信号处理》 实验报告学院 专业 电子信息工程 班级 姓名 学号 时间实验一 时域离散信号与系统分析一、实验目的1、熟悉连续信号经理想采样后的频谱变化关系,加深对时域采样定理的理解。
2、熟悉时域离散系统的时域特性,利用卷积方法观察分析系统的时域特性。
3、学会离散信号及系统响应的频域分析。
4、学会时域离散信号的MATLAB 编程和绘图。
5、学会利用MATLAB 进行时域离散系统的频率特性分析。
二、实验内容1、序列的产生(用Matlab 编程实现下列序列(数组),并用stem 语句绘出杆图。
(要求标注横轴、纵轴和标题)(1). 单位脉冲序列x(n)=δ(n ) (2). 矩形序列x(n)=R N (n) ,N=10nδ(n )nR N (n )图1.1 单位脉冲序列 图1.2 矩形序列(3) . x(n)=e (0.8+3j )n ; n 取0-15。
4n|x (n )|201321111053 陈闽焜n<x (n )/R a d图1.3 复指数序列的 模 图1.4 复指数序列的 相角(4). x(n)=3cos (0. 25πn +0.3π)+2sin (0.125πn +0.2π) n 取0-15。
ny (n )图1.4 复合正弦实数序列(5). 把第(3)小题的复指数x(n)周期化,周期20点,延拓3个周期。
4m|y (m )|201321111053 陈闽焜图1.5 第(3)的20点周期延拓杆图(6). 假设x(n)= [1,-3,2,3,-2 ], 编程产生以下序列并绘出杆图:y(n) y(n)= x(n)-2x(n+1)+x(n-1)+x(n-3);5201321111053 陈闽焜图1.6 y(n)序列杆图(7)、编一个用户自定义matlab 函数,名为stepshf (n0,n1,n2)实现单位阶跃序列u[n -n1]。
其中位移点数n1在起点n0和终点n2之间任意可选。
自选3个入口参数产生杆图。
实验一 离散时间信号与系统的时域分析(基础验证型)1.实验目的(1)熟悉离散时间信号的产生与基本运算。
(2)熟悉离散时间系统的时域特性。
(3)利用卷积方法观察分析系统的时域特性。
2.实验原理(1)典型离散时间信号单位样本序列(通常称为离散时间冲激或单位冲激)用[]n δ表示,其定义为1,0[]0,0n n n δ=⎧=⎨≠⎩(1.1) 单位阶跃序列用[]n μ表示,其定义为1,0[]0,0n n n μ≥⎧=⎨<⎩ (1.2) 指数序列由 []n x n A α= (1.3)给定。
其中A 和α可以是任意实数或任意复数,表示为00(),j j e A A e σωφα+==式(1.3)可改写为 0000()00[]cos()sin()n j n n n x n A e A e n j A e n σωφσσωφωφ++==+++ (1.4) 带有常数振幅的实正弦序列形如0[]cos()x n A n ωφ=+ (1.5)其中A ,0ω和φ是实数。
在式(1.4)和(1.5)中,参数A ,0ω和φ分别称为正弦序列[]x n 的振幅、角频率和初始相位。
002f ωπ=称为频率。
(2)序列的基本运算长度N 的两个序列[]x n 和[]h n 的乘积,产生长度也为N 的序列[]y n[][][]y n x n h n =⋅ (1.6)长度为N 的两个序列[]x n 和[]h n 相加,产生长度也为N 的序列[]y n[][][]y n x n h n =+ (1.7)用标量A 与长度为N 的序列[]x n 相乘,得到长度为N 的序列[]y n[][]y n A x n =⋅ (1.8)无限长序列[]x n 通过时间反转,可得到无限长序列[]y n[][]y n x n =- (1.9)无限长序列[]x n 通过M 延时,可得到无限长序列[]y n[][]y n x n M =- (1.10)若M 是一个负数,式(1.10)运算得到序列[]x n 的超前。
实验一离散时间信号的表示及运算一、实验目的1、学会运用MATLAB 表示的常用离散时间信号;2、学会运用MATLAB 实现离散时间信号的基本运算。
二、实验原理及实例分析2.1 离散时间信号在MATLAB中的表示离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。
离散序列通常用x(n)来表示,自变量n 必须是整数。
离散时间信号的波形绘制在MA TLAB 中一般用stem( )函数(注释:stem中文意思是茎、干、柄)。
stem( )函数的基本用法和plot( )函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。
如果要实心,需使用参数“ fill ”、“ filled ”,或者参数“ .”。
由于MATLAB 中矩阵元素的个数有限,所以MATLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。
类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。
0、判断n 是否为整数function y = isInt(n)y = (n==fix(n)); % fix(n) 为取整运算end1、单位取样序列单位取样序列(n) ,也称为单位冲激序列,定义为1 (n 0)1)0 (n 0)要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n=0 处是取确定的值1。
在MA TLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即function y=impDT(n)y=(n==0); %当参数n 为0 时冲激为1,否则为0end调用该函数时n 必须为整数或整数向量。
【实例1】利用MA TLAB 的impDT 函数绘出单位冲激序列的波形图。
解:MATLAB 源程序为>>n=-3:3; % n=[-3,-2,-1,0,1,2,3]>>x=impDT(n);>>stem(n,x,'fill'), xlabel('n'), grid on>>title(' 单位冲激序列')>>axis([-3 3 -0.1 1.1])程序运行结果如图 1 所示。
《数字信号处理》实验指导书实验一 常见离散信号的产生一、实验目的1. 加深对离散信号的理解。
2. 掌握典型离散信号的Matlab 产生和显示。
二、实验原理及方法在MATLAB 中,序列是用矩阵向量表示,但它没有包含采样信息,即序列位置信息,为此,要表示一个序列需要建立两个向量;一是时间序列n,或称位置序列,另一个为取值序列x ,表示如下: n=[…,-3,-2,-1,0,1,2,3,…]x=[…,6,3,5,2,1,7,9,…]一般程序都从0 位置起始,则x= [x(0), x(1), x(2),…]对于多维信号需要建立矩阵来表示,矩阵的每个列向量代表一维信号。
数字信号处理中常用的信号有指数信号、正弦信号、余弦信号、方波信号、锯齿波信号等,在MATLAB 语言中分别由exp, sin, cos, square, sawtooth 等函数来实现。
三、实验内容1. 用MATLAB 编制程序,分别产生长度为N(由输入确定)的序列:①单位冲击响应序列:()n δ可用MATLAB 中zeros 函数来实现; ②单位阶跃序列:u(n)可用MATLAB 中ones 函数来实现; ③正弦序列:()sin()x n n ω=; ④指数序列:(),nx n a n =-∞<<+∞⑤复指数序列:用exp 函数实现()0()a jb nx n K e+=,并给出该复指数序列的实部、虚部、幅值和相位的图形。
(其中00.2,0.5,4,40a b K N =-===.)参考流程图:四、实验报告要求1. 写出实验程序,绘出单位阶跃序列、单位阶跃序列、正弦序列、指数序列的图形以及绘 出复指数序列的实部、虚部、幅值和相位的图形。
2. 序列信号的实现方法。
3. 在计算机上实现正弦序列0()sin(2)x n A fn πϕ=+。
实验二 离散信号的运算一、实验目的1. 掌握离散信号的时域特性。
2. 用MATLAB 实现离散信号的各种运算。
数字信号处理
实验报告
班级:
学号:
姓名:word文档可自由复制编辑
实验1离散时间信号的产生与运算
一、实验目的
(1)了解离散时间信号的特点。
(2)掌握在计算机中生成及绘制各种常用离散时间信号序列的方法。
(3)掌握序列的加、减、乘、除和平移、反转、尺度变换等基本运算及计算机的
实现方法。
二、实验原理
信号是随时间变化的物理量,而计算机只能处理离散信号。
离散信号是在某些不连续的时间上有信号值,而在其它时间点上没有定义的一类信号。
离散信号一般可以由连续信号通过模数转换得到。
常用的离散信号有单位脉冲序列、单位阶跃序列、复指数序列、正弦信号序列、随机序列等。
离散信号的基本运算包括信号的加、减、乘、除。
离散信号的时域变换包括信号的平移、反转、尺度变换等。
三、实验内容与方法
1、编写程序,生成如下数字信号:sqrt(2*k)u(k错误!未找到引用源。
3),
δ(k+5)。
(1) f(k)=sqrt(2*k)u(k错误!未找到引用源。
3)
代码:
k=(1:10);
n=3;
u=[(k-n)>=0];
a=sqrt(2*k);
stem(k,a.*u);
title('sqrt(2*k)u(k 3)的图像');
xlabel('时间(k)');ylabel('幅值f(k)');
运行图:
word文档可自由复制编辑
(2) f(k)= δ(k+5)
代码:
k1=-10;k2=0;k=k1:k2;
n=-5; %单位脉冲出现的位置
f=[(k-n)==0];
stem(k,f,'filled');title('δ(k+5)序列的图像')
xlabel('时间(k)');ylabel('幅值f(k)');
运行图:
word文档可自由复制编辑
2、f(k)=sin(0.1πk),设计并编写程序,完成信号f(k)到f(2k+2)的转化。
(1) f(k)
代码:
k1=-20;k2=20;
k=k1:k2;
f=sin(0.1*pi*k);
stem(k,f,'filled');
title('正弦序列');xlabel('时间(k)');ylabel('幅值f(k)');
运行图:
(2) f(2k+2)
代码:
k1=-20;k2=20;
k=k1:k2;
d=k+1; %对k平移一个单位
f1=sin(0.2*pi*d); %周期变为原来的一半
stem(k,f1,'filled');
title('正弦序列2');xlabel('时间(k)');ylabel('幅值f(2k+2)');
运行图:
word文档可自由复制编辑
word 文档 可自由复制编辑
四、 思考题
(1) 脉冲序列信号与阶跃序列信号各有什么特性?
答:单位脉冲序列只在n=0 处有一个单位值1,其余点上皆为0; 单位阶跃序列只有在n>=0时,才取非零值1,当n<0时均取零值。
(2) 脉冲序列信号和阶跃序列信号有什么关系?
答:n 个冲激信号(每个冲激信号都是1个U 单位)的集合就是阶跃信号,u(n)和单位采样序列之间的关系如下列公式所示:。