1、 1电子信息工程系实验报告课程名称:信号与系统 实验项目名称:连续时间信号在 MATLAB 中的运算 实验时间:2013-11-22班级:电信 112 班 姓名:学号:一、实一、实 验验 目目 的的:1、学会运用 MATLAB 进行连续信号的时移、反折和尺度变换;2、学会运用 MATLAB 进行连续信号的相加、相乘运算;3、学会运用 MATLAB 数值计算方法求连续信号的卷积。二、实二、实 验验 环环 境境:1、Windows 7 2、MATLAB 7.1三、实三、实 验验 原原 理:理:2.12.1 信号的时移、反折和尺度变换信号的时移、反折和尺度变换信号的时移、反折和尺度变换是针对自变量时
2、间而言的,其数学表达式与波形变换之间存在一定的变换规律。信号的时移就是将信号数学表达式中的 用替换,其中为正实数。因此,()f tt0tt0t波形的时移变换是将原来的波形在时间轴上向左或者向右移动。为波形()f t0()f tt()f t向左移动;为波形向右移动。信号的反折就是将表达式中的自变0t0()f tt()f t0t()f t量 用替换,即变换后的波形是原波形的 y 轴镜像。信号的尺度变换就是将表达式tt()f t中的自变量 用替换,其中,为正实数。对应于波形的变换,则是将原来的的波tata()f t形以原点为基准压缩()至原来的,或者扩展()至原来的。1a 1/a01a1/a上述可以
3、推广到的情况。0()f att 2.22.2 MATLABMATLAB 数值计算法求连续时间信号的卷积数值计算法求连续时间信号的卷积用 MATLAB 分析连续时间信号,可以通过时间间隔取足够小的离散时间信号的数值计算方法来实现。可调用 MATLAB 中的 conv()函数近似地数值求解连续信号的卷积积分。如果对连续时间信号和进行等时间间隔均匀抽样,则和分别变为离散1()f t2()f tt1()f t2()f t序列和。其中为整数。当足够小时,和即为连1()f m t2()fm tmt1()f m t2()fm t续时间信号和。因此连续信号的卷积积分运算转化为:1()f t2()f t成 绩:
4、指导教师(签名):2 1212()()*()()()f tf tf tff td120lim()()tmf m tf tm tt 采用数值计算法,只求当时卷积积分的值,其中,为整数,即tn t()f t()f n tn12()()()mf n tf m tfn tm tt 12()()mtf m tfnmt 其中,实际就是离散序列和的卷积和。当12()()mf m tfnmt 1()f m t2()fm t足够小时,就是卷积积分的结果,从而连续时间信号t()f n t12()()()*()f tf n tf nfn 上式表明通过 MATLAB 实现连续信号和的卷积,可以利用各自抽样后的离散1(
5、)f t2()f t时间序列的卷积再乘上抽样间隔。抽样间隔越小,误差也就越小。tt四、实四、实 验验 内内 容容 及及 结结 果果 分分 析析:4.1 试用试用 MATLAB 命令绘制信号命令绘制信号的波形图。的波形图。/2()sin(10)sin(9)ttf tetet解:为画出连续信号的波形图编写如下程序代码:/2()sin(10)sin(9)ttf tetetclear;clc;t=-1:0.001:3;ft=exp(-t).*sin(10*pi*t)+exp(-t/2).*sin(9*pi*t);plot(t,ft);grid on;axis(-1,3,-2.5,2.5);把编写好程序
6、以 sye41.m 为文件名保存,并执行此文件,然后在窗口中可看到连续信号的波形如图 1 所示:/2()sin(10)sin(9)ttf tetet 图1 连续信号的波形/2()sin(10)sin(9)ttf tetet 34.24.2 已知信号已知信号,画出,画出、()()(1)(1)(1)()f tu tu ttu tu t()f t(2)f t、的波形。的波形。()ft(21)ft解:(1)先在 MATLAB 的工作目录下创建 uCT 的 M 文件,其 MATLAB 源文件为:function f=uCT(t)f=(t=0);(2)然后建立函数文件,即在 MATLAB 的工作目录下创建
7、 funct1.m 文件,MATLAB()f t源程序为:function f=funct1(t)f=uCT(t)-uCT(t-1)+(t-1).*(uCT(t+1)-uCT(t);(3)调用上述函数来绘制所求的信号波形。程序运行完,产生如图2所示的波形。MATLAB源程序为:clear;clc;t=-2:0.001:4;ft1=funct42(t);ft2=funct42(t+2);ft3=funct42(-t);ft4=funct42(-2*t+1);subplot(2,2,1)plot(t,ft1);grid on;title(f(t);axis(-2 2-2 2);subplot(2,
8、2,2)plot(t,ft2);grid on;title(f(t+2);axis(-2 2-1 2);subplot(2,2,3)plot(t,ft3);grid on;title(f(-t);axis(-2 4-2 2);subplot(2,2,4)plot(t,ft4);grid on;title(f(-2*t+1);axis(-2 4-2 2);图 2 、的波形图()f t(2)f t()ft(21)ft 44.34.3 求信号求信号与与的卷积结果的卷积结果1()()(2)f tu tu t2()()(1)(2)(3)f tu tu tu tu t,并画出,并画出和和的波形。的波形。1
9、2()()*()f tf tf t12(),()f tf t()f t解:为画出和的波形图编写如下程序代码:12(),()f tf t()f tclear;clc;dt=0.001;t=-2:dt:11;f1=uCT(t)-uCT(t-2);f2=uCT(t)+uCT(t-1)-uCT(t-2)-uCT(t-3);f=conv(f1,f2)*dt;n=length(f);tt=(0:n-1)*dt-2;subplot(2,2,1);plot(t,f1);grid on;axis(-2 4-0.2 1.2);title(f1(t);xlabel(t);subplot(2,2,2);plot(t,
10、f2);grid on;axis(-2 4-0.2 2.2);title(f2(t);xlabel(t);subplot(2,1,2);plot(tt,f);grid on;axis(-2 11-0.2 3.2);title(f(t)=f1(t)*f2(t);xlabel(t);把编写好程序以 sye43.m 为文件名保存,并执行此文件,然后在窗口中可看到和的波形如图 3 所示:12(),()f tf t()f t 图 3 和的波形图12(),()f tf t()f t4.44.4 求信号求信号与自身的卷积结果与自身的卷积结果,并画出,并画出1()(0.5)(0.5)f tu tu t11()
11、()*()f tf tf t和和的波形。的波形。1()f t()f t 5解:为画出和的波形图编写如下程序代码:1()f t()f tclear;clc;dt=0.001;t=-2:dt:2;f1=uCT(t+0.5)-uCT(t-0.5);f=conv(f1,f1)*dt;n=length(f);tt=(0:n-1)*dt-2;subplot(1,2,1);plot(t,f1);grid on;axis(-1,1,-0.2,1.2);title(f1(t);xlabel(t);subplot(1,2,2);plot(tt,f);grid on;axis(0,4,-0.2,1.2);title
12、(f(t)=f1(t)*f1(t);xlabel(t);把编写好程序以 sye44.m 为文件名保存,并执行此文件,然后在窗口中可看到和的波形如图 4 所示:1()f t()f t 图 4 和的波形图1()f t()f t五、问五、问 题题 与与 思思 考:考:MATLABMATLAB 运算符中运算符中 .*.*和和 *的区别?可结合例子说明。的区别?可结合例子说明。编写如下程序代码:clc;clear;A=1 2 3;4 5 6;7 8 9B=1 1 1;10 10 10;100 100 100C=A*BD=A.*B运行结果如右图:总结如下:总结如下:C=A*BC=A*B表示的是矩阵表示的是矩阵A A和矩阵和矩阵B B的基本运算。的基本运算。D=A.*BD=A.*B表示的是矩阵表示的是矩阵A A中的元素乘以矩阵中的元素乘以矩阵B B中对应的元素。中对应的元素。