信号与系统课设常用连续时间信号的可视化及相加微积分运算.docx
- 文档编号:17510403
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:15
- 大小:273.71KB
信号与系统课设常用连续时间信号的可视化及相加微积分运算.docx
《信号与系统课设常用连续时间信号的可视化及相加微积分运算.docx》由会员分享,可在线阅读,更多相关《信号与系统课设常用连续时间信号的可视化及相加微积分运算.docx(15页珍藏版)》请在冰点文库上搜索。
信号与系统课设常用连续时间信号的可视化及相加微积分运算
成绩评定表
学生姓名
班级学号
专业
通信工程
课程设计题目
常用连续时间信号的可视化及信号的相加、微积分运算
评
语
组长签字:
成绩
日期
20年月日
课程设计任务书
学院
信息科学与工程学院
专业
通信工程
学生姓名
班级学号
课程设计题目
信号的可视化及时域运算——常用连续时间信号的可视化及信号的相加、微积分运算
实践教学要求与任务:
1、学习Matlab软件及应用;
2、学习并研究连续时间系统的时域分析有关理论;
3、利用Matlab编程,完成常用连续时间信号运算的课题;
4、写出课程设计报告,打印程序,给出运行结果。
工作计划与进度安排:
第1-2天:
1、学习使用Matlab软件、上机练习
2、明确课题内容,初步编程
第3-5天:
1、上机编程、调试
2、撰写课程设计报告书
3、检查编程、运行结果、答辩
4、上交课程设计报告
指导教师:
201年月日
专业负责人:
201年月日
学院教学副院长:
201年月日
目录
一、引言1
二、Matlab入门2
2.1Matlab7.0介绍2
2.2利用Matlab7.0编程完成习题设计3
三、Matlab7.0实现连续时间信号运算的设计4
3.1常用连续时间信号的类别及原理4
3.2编程设计及实现4
3.3运行结果及其分析6
四、结论11
五、参考文献13
一、引言
人们之间的交流是通过消息的传播来实现的,信号则是消息的表现形式,消息是信号的具体内容。
《信号与系统》课程是一门实用性较强、涉及面较广的专业基础课,该课程是将学生从电路分析的知识领域引入信号处理与传输领域的关键性课程,对后续专业课起着承上启下的作用.该课的基本方法和理论大量应用于计算机信息处理的各个领域,特别是通信、数字语音处理、数字图像处理、数字信号分析等领域,应用更为广泛。
近年来,计算机多媒体教序手段的运用逐步普及,大量优秀的科学计算和系统仿真软件不断涌现,为我们实现计算机辅助教学和学生上机实验提供了很好的平台。
通过对这些软件的分析和对比,我们选择MATLAB语言作为辅助教学工具,借助MATLAB强大的计算能力和图形表现能力,将《信号与系统》中的概念、方法和相应的结果,以图形的形式直观地展现给我们,大大的方便我们迅速掌握和理解老师上课教的有关信号与系统的知识。
MATLAB是当前最优秀的科学计算软件之一,也是许多科学领域中分析、应用和开发的基本工具。
MATLAB全称是MatrixLaboratory,是由美国Mathworks公司于20世纪80年代推出的数学软件,最初它是一种专门用于矩阵运算的软件,经过多年的发展,MATLAB已经发展成为一种功能全面的软件,几乎可以解决科学计算中的所有问题。
而且MATLAB编写简单、代码效率高等优点使得MATLAB在通信、信号处理、金融计算等领域都已经被广泛应用。
它具有强大的矩阵计算能力和良好的图形可视化功能,为用户提供了非常直观和简洁的程序开发环境,因此被称为第四代计算机语言。
MATLAB强大的图形处理功能及符号运算功能,为我们实现信号的可视化及系统分析提供了强有力的工具。
MATLAB强大的工具箱函数可以分析连续信号、连续系统,同样也可以分析离散信号、离散系统,并可以对信号进行各种分析域计算,如相加、相乘、移位、反折、傅里叶变换、拉氏变换、Z变换等等多种计算。
作为信号与系统的基本分析软件之一,利用MATLAB进行信号与系统的分析与设计是通信以及信息工程学科的学生所要掌握的必要技能之一。
通过学习并使用MATLAB语言进行编程实现课题的要求,对学生能力的培养极为重要。
尤其会提高综合运用所学理论知识进行分析问题、解决问题的能力,也便于将理论知识与实践相结合,并得以更好地掌握信号分析与处理的基本方法与实现。
这也将为后续相关的课程学习打下一定的基础,从而在以后相关课程设计与分析的时候达到对MATLAB的熟练应用与融会贯通。
二、Matlab入门
2.1Matlab7.0介绍
Matlab7.0比Matlab的老版本提供了更多更强的新功能和更全面、更方便的联机帮助信息。
当然也比以前的版本对于软件、硬件提出了更高的要求。
在国内外Matlab已经经受了多年的考验。
Matlab7.0功能强大,适用范围很广。
其可以用来线性代数里的向量、数组、矩阵运算,复数运算,高次方程求根,插值与数值微商运算,数值积分运算,常微分方程的数值积分运算、数值逼近、最优化方法等,即差不多所有科学研究与工程技术应用需要的各方面的计算,均可用Matlab来解决。
MATLAB7.0提供了丰富的库函数(称为M文件),既有常用的基本库函数,又有种类齐全、功能丰富多样的的专用工具箱Toolbox函数。
函数即是预先编制好的子程序。
在编制程序时,这些库函数都可以被直接调用。
无疑,这会大大提高编程效率。
MATLAB7.0的基本数据编程单元是不需要指定维数的复数矩阵,所以在MATLAB环境下,数组的操作都如数的操作一样简单方便。
而且,MATLAB7.0界面友好,用户使用方便。
首先,MATLAB具有友好的用户界面与易学易用的帮助系统。
用户在命令窗里通过help命令可以查询某个函数的功能及用法,命令的格式极为简单。
其次,MATLAB程序设计语言把编辑、编译、连接、执行、调试等多个步骤融为一体,操作极为简单。
除此之外,MATLAB7.0还具有强大的图形功能,可以用来绘制多姿多彩的图形,直观而形象。
综上,在进行信号的分析与仿真时,MATLAB7.0无疑是一个强大而实用的工具。
尤其对于信号的分析起到了直观而形象的作用,非常适合与相关课题的研究与分析。
2.2利用Matlab7.0编程完成习题设计
在熟悉了MATLAB7.0的基本界面之后,可以通过简单的编程与相关函数的调用,实现一些常用时间信号的可视化操作。
例如:
编程实现矩形波的仿真。
程序如下,直接在命令窗口键入如下程序:
%rectpuls
t=-4:
0.001:
4;
T=2;
ft=rectpuls(t,T);
plot(t,ft)
axis([-4,4,-0.5,1.5])
仿真图形如下:
图1
三、Matlab7.0实现连续时间信号运算的设计
3.1常用连续时间信号的类别及原理
在信号与系统中,常用的连续时间信号有三角波信号、指数信号、正余弦信号、抽样信号、单位阶跃信号、冲击信号等。
这些信号的归类都是按照函数取值的连续性与离散性划分的。
即如果在讨论的的时间间隔内,除若干不连续点之外,对于任意时间值都可以给出确定的函数值,此信号就称为连续信号。
在连续时间信号的时域运算中,微积分运算是一种常见的运算。
其中,函数的微分运算需要使用diff函数,其使用方法如下:
(1)diff(S,'v'):
对符号对象S中指定的符号变量v求其1阶导数。
(2)diff(S):
对符号对象S中的默认的独立变量求其1阶导数。
(3)diff(S,n):
对符号对象S中的默认的独立变量求其n阶导数。
(4)diff(S,'v',n):
对符号对象S中指定的符号变量v求其n阶导数。
函数的积分运算使用的函数为int函数,使用方法与diff函数类似,主要实现的是常用时间信号的积分运算。
在编写程序过程中,可以通过冒号运算符产生一个行向量定义自变量的取值范围,通过相关语句定义坐标的纵轴与横轴取值,通过调用plot或者ezplot函数可以实现相关运算的图形可视化及其仿真。
3.2编程设计及实现
1:
三角波信号
三角波脉冲信号在MATLAB中用tripuls函数来表示,其调用形式为:
用以产生一个最大幅度为1、宽度为width、斜度为skew的三角波信号。
该函数的很坐标范围由向量t决定,是以t=0为中心向左右各展开width/2的范围。
斜度
是一个介于-1和1之间的值,它表示最大幅度1出现所对应的横坐标位置,比如
表示一个左右对称的三角波信号,最大幅度1出现在
处;一般地,最大幅度1出现在
的横坐标位置,三角波信号的MATLAB源程序如下:
t=-3:
0.001:
3;
ft=tripuls(t,4,0.5);
plot(t,ft)
2:
阶跃函数信号
symsty
y=heaviside(t);
t=-4:
0.01:
4;
ezplot(y,t);
gridon
3:
指数函数
指数信号
在MATLAB中可以用exp函数表示,其调用形式为:
y=A*exp(a*t)
指数函数信号的MATLAB源程序如下:
t=0:
001:
10;
A=1;
a=0.4;
ft=A*exp(a*t);
plot(t,ft)
4:
正弦函数
正弦信号
和
分别用MATLAB的内部函数cos和sin表示,其调用形式为:
正弦函数信号的MATLAB源程序如下:
t=0:
0.001:
2*pi;
w0=2;phi=0;
ft1=sin(w0*t+phi);
plot(t,ft1)
5:
抽样信号
抽样函数Sa(t)在MATLAB中用sinc表示,其定义为:
其调用形式为:
抽样函数的MATLAB源程序如下:
symstyf
y=sinc(2*t);
t=0:
0.01:
pi;
ezplot(y,t);
gridon
6:
正弦函数的微分运算
symstyf
y=sin(2*t);
f=diff(y,t);
t=0:
0.01:
pi;
ezplot(f,t);
gridon
7:
冲激函数信号
x=-10:
0.0001:
10;
y=(x==0);
plot(x,y);
8:
正弦函数的积分运算
symstyf
y=sin(2*t);
f=int(y,t);
t=0:
0.01:
pi;
ezplot(f,t);
gridon
9:
连续时间信号的相加
t=0:
0.0001:
3;
x=exp(-t).*sin((10*pi)*t)+exp(-(1/2)*t).*sin(9*pi*t);
plot(t,x)
axis([-1,2,-2,2]
3.3运行结果及其分析
对应以上九个相关程序,其可视化及其仿真图如下:
1:
三角波信号
图2
2:
阶跃函数信号
图3
3:
指数函数信号
图4
4:
正弦函数信号
图5
5:
抽样信号
图6
6:
正弦函数的微分运算
图7
7:
冲激函数信号
图8
8:
正弦函数的积分运算
图9
8:
连续时间信号的相加
图10
四、结论
在这次信号与系统课程设计中,我首先花了较多的时间查阅资料,进行反复的练习。
由于是第一次做信号与系统的课程设计,对于相关设计过程和分析方法以及MATLAB软件的使用并不大熟练。
但功夫不负有心人,最终还算顺利完成,这对我以后学习相关的课程以及进行更高层次的信号与系统设计都奠定了不错的基础。
在设计过程中,出现了各种各样的问题,有些是单一原因引起的,有的是综合原因引起的,这些都很考验我的毅力与坚持。
但是我掌握了研究这类问题的方法,即问题解决的过程就是要从问题所表现出来的情况出发,通过反复推敲,作出相应判断,逐步找出问题的症结所在,从而一举击破。
对于信号与系统课程设计,尤其在使用MATLAB软件进行相关信号的仿真与分析时,这种分析解决问题的能力就更为重要。
正所谓“纸上得来终觉浅,觉知此事要躬行。
”学习任何知识,仅从理论上去求知,而不去实践、探索是不够的。
通过为期数天的MATLAB课程设计,我对MATLAB这个仿真软件有了更进一步的认识和了解。
在这数天时间里,我通过自己摸索,查阅资料,并且在指导老师的指导下完成了常用连续时间信号的编程与仿真;并最终将课程设计报告总结完毕。
在整个设计过程中我懂得了许多东西,也培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的学习工作和生活有非常大的帮助,并且提高了自己的动手实践操作能力,使自己充分体会到了在设计过程中的成功喜悦。
虽然这个设计做的不是太成功,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。
在没有做课程设计以前,觉得课程设计只是对知识的单纯总结,但是通过这次课程设计发现自己的看法有点太片面,课程设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次课程设计使自己明白了原来的那点知识是非常欠缺的,要学习的东西还很多,通过这次课程设计,我明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质。
希望以后像这样的课程设计可以多一点。
仅仅对MATLAB软件的使用来说,这次课程设计给了我一定的信号与系统的设计与分析基础,但是它教给我的分析问题、解决问题的方法则是无价的,对我以后进行相关的更高层次的信号与系统课程设计都将会是不错的借鉴,甚至会在以后的工作与学习中对我产生深远的影响。
五.参考文献
1:
梁虹.信号与线性系统分析---基于MATLAB的方法与实现.北京:
高等教育出版社,2006.
2:
郑君里,谷源涛.信号与系统:
MATLAB综合实验.北京:
高等教育出版社,2008.
3:
肖伟、刘忠.MATLAB程序设计与应用[M].北京:
清华大学出版社2005.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信号 系统 常用 连续 时间 可视化 相加 微积分 运算