信号与系统实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生实验报告
实验课程信号与系统
学院名称信息科学与技术学院
专业名称信息工程
学生姓名杨海洋
学生学号201313010401
指导教师杨斯涵
实验地点6A502
实验成绩
二〇一四年11月二〇一四年12月
实验一
MATLAB编程初步应用及产生典型信号
一、实验目的及要求:
1、学习MATLAB软件的基本使用方法;
2、熟悉MATLAB常用命令的使用;
3、试用MATLAB语言产生典型信号。
二、实验内容:
1、熟悉MATLAB平台的使用;
2、产生常用的典型信号u(t),δ(t);
3、画出典型信号的波形;
三、实验原理:
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 matlab开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
四、程序清单:
1.单位阶跃信号
单位阶跃信号的定义:u(t)=1(t>0)或u(t)=0(t<0)单位阶跃信号时是信号分析的基本信号之一,在信号与系统分析中有着十分重要的作用,常用于简化信号的时域表示。根据单位阶跃的特性,我们可以用它来表示时限信号和单位信号(因果信号)。例如我们可用两个不同延迟的单位阶跃信号来表示矩形门信号,即:g(t)=u(t+v)-u(t-v)。得到单位阶跃信号的方法是在MATLAB的Symbolic Math Toolbox中调用单位阶跃函数heaviside ,这样可方便地表示单位阶跃信号。Heaviside.m文件代码如下:
五、实验结果及分析:
MATLAB将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言的编辑模式,使我们能够方便的对不同典型信号的波形进行模拟和分析。
实验二
信号时域描述及运算
一、实验目的及要求:
1、深刻理解应用matlab软件实现信号的卷积运算的编程思想,利用离散卷积实现连续卷积运算;
2、掌握matlab描述LTI系统的常用方法及有关函数,并学会利用matlab求解LTi系统响应;
3、深刻理解信号与系统的关系,学习matlab语言实现信号通过系统的仿真分析方法。
二、实验内容:
1、利用MATLAB计算两离散序列卷积和f(k)=f1(k)*f2(k);
2、绘出序列f1(k),f2(k)及f(k)的时域波形图;
3、利用MATLAB计算两连续时间信号卷积和;
4、画出系统在某时间内的单位冲激响应和单位阶跃响应的时域波形;
5、完成扩展部分的实验内容。
三、实验原理:
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连 matlab开发工作界面接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
四、程序清单:
1.离散时间序列卷积和实现
已知序列f1(k)=1,0<=k<=2,f2(k)=k,1<=k<=3,利用MATLAB计算两离散序列卷积和f(k)=f1(k)*f2(k)的实用函数dconv(),该程序在计算出卷积和f(k)的同时,还绘出序列f1(k),f2(k)及f(k)的时域波形图,并返回f(k)的非零样
值点的对应向量。
利用dconv求取离散系统零状态响应示例:已知LTI离散系统单位冲激响应为h(k)=u(k)-u(k-4),试求激励信号f(k)=u(k)-u(k-3)时的零状态响应为y(k),并绘制出其时域波形图。
2. 连续时间序列卷积和实现
例:已知连续信号f1(t)=f1(t)=1/2t[u(t)-u(t-2)],试用MATLAB求取
f(t)=f1(t)*f2(t)。
3.连续系统的单位冲激响应
例:已知某系统的微分方程为:y’’(t)+3y’(t)+2y(t)=x’’(t)+x(t),试用MATLAB求出该系统的单位冲激响应与单位阶跃响应。
4.离散系统的单位冲激响应
例:已知描述某离散系统的差分方程如下:
y(k)-3y(k-1)+2y(k-2)=x(k)+2x(k-2)
试用MATLAB绘出该系统0~50时间内的单位冲激响应和单位阶跃响应的时域波形。
5.连续LTI系统响应的求取
例:已知某系统的微分方程为y’’(t)+3y’(t)+2y(t)=x’’(t)+x(t),试求输入信号为x(t)=e^-2u(t)时系统零状态响应y(t).
习题:
1.已知连续信号f1(t)与f2(t),f1(t)=1(0<=t<=2),f2(t)=0.5*t(0<=t<=2),
试用MATLAB绘出f1(t)*f2(t)的时域波形图。
MATLAB完成下列各题:
(1)绘出该系统的单位冲激响应h(t);
(2)绘出该系统的单位阶跃响应g(t);
(3)若该系统输入信号x(t)=e^-3^tu(t),绘出此时系统的零状态响应波形。
五、实验结果及分析:
函数impulse(),step()用来计算由num和den表示的LTI系统的单位冲激响应和单位阶跃响应,响应的时间范围为0~T,其中den和num分别为系统微分方程左右两边的系数向量,T为指定的响应的终点时间。h和s的点数默认值为101点。由此可以计算时间步长为dt = T/(101-1)。不带返回值的函数如impulse(num, den, T)和step(num, den, T)将直接在屏幕上绘制系统的单位冲激响和单位阶跃响应曲线。带返回值的函数如y = lsim(num, den, x, t)和y = lsim(num, den, x, t),用来计算由num和den表示的LTI系统在输入信号x 作用下的零状态响应。其中t为指定的时间变化范围,x为输入信号,它们的长度应该是相同的。如带返回参数y,则将计算的响应信号保存在y中,若不带返回参数y,则直接在屏幕上绘制输入信号x和响应信号y的波形图。