信号的表示与信号的运算
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号的表示与信号的运算
班级:__________ 通信__________________
序号:_________________________________
学生姓名:______________________________
学号:__________________________________
指导教师:______________________________
完成日期:2016年6月22日______
实验四:信号的表示与信号的运算
一、实验目的
学习使用MATLAB产生基本信号、绘制信号波形、实现信号的基本运算,为信号分析和系统分析奠定基础。
二、相关知识点
1•连续信号的产生
2•离散信号的产生及基本运算
三、实验原理、方法和手段
MATLAB提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期矩形波信号等。这些基本信号是信号处理的基础。
1 •连续信号的产生
(1)阶跃信号
产生阶跃信号的MATLAB程序如下:
t= -2: 0.02: 6;
x=(t>=0);
plot(t,x);
axis([-2,6,0,1.2]);
(2)指数信号
产生随时间衰减的指数信号的MATLAB程序如下:
t = 0: 0.001: 5;
x = 2*exp(-1*t);
plot(t,x);
(3)正弦信号
利用MATLAB提供的函数cos和sin可产生正弦和余弦信号。产生一个幅度为2,频率为4Hz,相位为二/6的正弦信号的MATLAB程序如下:
f0=4;
w0=2*pi*f0;
t = 0: 0.001: 1;
x = 2*si n(w0*t+ pi/6);
plot(t,x);
(4)矩形脉冲信号
函数rectpulse(t,w)可产生高度为1、宽度为w、关于t=0对称的矩形脉冲信号。产生高度为1、宽度为4、延时2秒的矩形脉冲信号的MATLAB 程序如下:
t=-2: 0.02: 6;
x=rectpuls(t-2,4);
plot(t,x);
(5)抽样信号
可使用函数sinc(x)计算抽样信号x(t)=sin(t)/t ,
函数sinc(x)的定义为sin c(x)=sin( n<)/ n产生的MATLAB程序如下:
t= -10:1/500:10;
x=s in c(t/pi);
plot(t,x);
2 •离散信号的产生
(1 )单位脉冲序列和单位阶跃序列
函数zeros(1,n)可以生成单位脉冲序列,产生1行n列的由0组成的矩阵。产生单位脉冲序列的MATLAB程序如下:
k= -4: 20;
x=[zeros(1,7),1,zeros(1,17)];
stem(k,x)
函数ones(1,n)可以生成单位阶跃序列,产生1行n列的由1组成的矩阵。产生单位阶跃序列的MATLAB程序如下:
k= -4:20;
x=[zeros(1,7),o nes(1,18)];
stem(k,x)
(2)指数序列
产生离散指数序列的MATLAB程序如下:
k = -5:15;
x = 0.3*(1/2).A k;
stem(k,x);
(3)正弦序列
产生正弦序列的MATLAB程序如下:
k=-10:10;
omega=pi/3;x = 0.5*s in(o mega*k+ pi/5);
stem(k,x);
(4)白噪声序列
白噪声序列在信号处理中是常用的序列。
函数rand可产生在[0,1]区间均匀分布的白噪声序列,
函数randn可产生均值为0,方差为1的高斯分布白噪声。
N=20;k=0:N-1;
x=rand (1,N)
stem(k,x);
3.离散序列的基本运算
信号的运算是数字信号处理的重要内容。对输入信号按指定的算法进行运算以提取有用信息,而这些算法可以分解为若干基本运算。离散信号的基本运算主要包括:信号的加、乘、移位、翻转、卷积、相关等。这些运算的MATLAB实现方法如下表:
四、实验条件
计算机一台,MATLAB软件
五、实验步骤及结果测试
1 •利用MATLAB产生下列信号并作图。
(1)错误!未找到引用源。,并完成x(t+5),x(-t),x(3t)的波形。
MATLAB 程序:
% x(t+5)
clc
t= -10:1/500:10;
x=si nc((t+5)/pi);
plot(t,x);
结果:
File Edit View Insert Tools Desktop Window Help
□® x ® n ini To
抽样信号
MATLAB 程序:
% x(-t) clc
t= -10:1/500:10; x=s in c(t/pi); y=fliplr(x);
Plot(t,y);
抽样信号対叫
MATLAB 程序:
% % x(3t)
clc
t= -10:1/500:10; x=si nc(3*t/pi); plot(t,x);