DSP实验报告――离散信号的产生及运算 精
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
离散信号的产生及运算报告
一、实验目的:
1、复习和巩固数字信号处理中离散信号的产生和运算
2、学习和掌握用MATLAB产生离散信号的方法
3、学习和掌握用MATLAB对离散信号进行运算
二、实验原理:
1.用MATLAB函数产生离散信号
信号是数字信号处理的最基本内容。没有信号,数字信号处理就没了工作对象。MATLAB7.0内部提供了大量的函数,用来产生常用的信号波形。例如,三角函数(sin,cos),指数函数(exp),锯齿波函数(sawtooth), 随机数函数(rand)等。
1 产生被噪声污染的正弦信号
用随机数函数产生污染的正弦信号。
2 产生单位脉冲序列和单位阶跃序列
按定义,单位脉冲序列为
单位阶跃序列为
。
3 矩形脉冲信号:在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];
4 周期性矩形波(方波)信号在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、信号的基本运算
实验结果如下:
四、实验总结:
通过实验,将随机信号、各种基本信号及信号之间的基本运算通过图像展示出来,从而使我直观的巩固了课堂基础知识。另外,在使用matlab的过程中,在体会到软件自身的强大性的同时,发现自己的操作还不够熟练,今后在这方面要加强。附:实验源程序:
1、噪声污染的正弦信号
t=0:0.0001:1;
f=5;
y1=sin(2*pi*f*t;
y2=randn(size(t;
y=y1+y2;
plot(t,y
xlabel('时间t'
ylabel('幅值'
title('噪声污染正弦信号' 2、产生基本信号
t1=0:0.001:1;
A1=5;
f=3;
y1=A1*sin(2*pi*f*t1;
subplot(411
plot(t1,y1
title('正弦信号波形'
t2=-6:0.001:6;
A2=13;
y2=A2*rectpuls(t2,2; subplot(412
plot(t2,y2
title('矩形脉冲信号'
t3=-8:0.001:8;
y3=sawtooth(2*pi/8*t3,0.70; subplot(413
plot(t3,y3
title('三角波脉冲'
t4=-6:0.001:6;
y4=square(2*pi/6*t4,30;
subplot(414
plot(t4,y4
title('方波信号'
3、信号基本运算
①t=-5:0.001:5;
y=sin(pi*t/5+4*cos(pi*t/4;
plot(t,y
title('正弦叠加信号'
xlabel('时间t'
②k=1:1:500;
fs=1000;
x1=sin(2*pi*100*k/fs;
x2=sin(2*pi*10*k/fs;
y=x1.*x2;
subplot(311
stem(k,x1
title('x1的函数图像' xlabel('时间t' subplot(312
stem(k,x2
title('x2的函数图像' xlabel('时间t' subplot(313
stem(k,y
title('y的函数图像' xlabel('时间t'