单位样值响应.docx
《单位样值响应.docx》由会员分享,可在线阅读,更多相关《单位样值响应.docx(12页珍藏版)》请在冰点文库上搜索。
单位样值响应
成绩评定表
学生姓名
郝晓鹏
班级学号
1103060129
专业
通信工程
课程设计题目
单位样值响应
评语
组长签字:
成绩
日期
20年月日
课程设计任务书
学院
信息科学与工程
专业
通信工程
学生姓名
郝晓鹏
班级学号
1103060129
课程设计题目
离散时间系统的时域分析——一单位样值响应
内容及要求:
1、学习Matlab软件知识及应用
2、学习并研究离散时间系统的时域分析有关理论
3、利用Matlab编程,完成离散时间系统的单位样值响应
4、写出课程设计报告,打印程序,给出运行结果
进度安排:
第1--2天:
1、布置课程设计任务、要求
2、学习Matlab软件知识及应用
第3--4天:
1、利用Matlab编程,完成相应的信号分析与处理课题
2、上机编程、调试
3、撰写课程设计报告书
第5天:
答辩,上交报告
指导教师:
201年月日
专业负责人:
201年月日
学院教学副院长:
201年月日
目录
一、引言1
二、Matlab入门2
2.1Matlab7.0介绍2
2.2利用Matlab7.0编程完成习题设计3
三、Matlab7.0实现离散时间系统时域分析的单位样值响应4
3.1离散时间系统单位样值响应的原理4
3.2编程设计及实现5
3.3运行结果及其分析7
四、结论10
五、参考文献11
一、引言
人们之间的交流是通过消息的传播来实现的,信号则是消息的表现形式,消息是信号的具体内容。
《信号与系统》课程是一门实用性较强、涉及面较广的专业基础课,该课程是将学生从电路分析的知识领域引入信号处理与传输领域的关键性课程,对后续专业课起着承上启下的作用.该课的基本方法和理论大量应用于计算机信息处理的各个领域,特别是通信、数字语音处理、数字图像处理、数字信号分析等领域,应用更为广泛。
近年来,计算机多媒体教序手段的运用逐步普及,大量优秀的科学计算和系统仿真软件不断涌现,为我们实现计算机辅助教学和学生上机实验提供了很好的平台。
通过对这些软件的分析和对比,我们选择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的基本界面之后,可以通过简单的编程与相关函数的调用,实现一些常用时间信号的可视化操作。
例如:
编程实现正弦波的仿真。
程序如下,直接在命令窗口键入如下程序:
t=0:
0.001:
2*pi;
w0=2;phi=0;
ft1=sin(w0*t+phi);
plot(t,ft1)
仿真图形如下:
图a
三.Matlab7.0实现离散时间系统单位样值响应的设计
3.1离散时间系统单位样值响应的原理
3.1.1设计题目
掌握离散时间系统的时域分析方法。
巩固已经学过的知识,加深对知识的理解和应用,加强学科间的横向联系,学会应用MATLAB对离散系统进行仿真。
3.1.2设计目的
(1)在学习了信号与系统这门课程后,按照基本原理,综合运用所学的知识,利用Matlab,掌握系统的单位样值响应内容,由给定的差分方程求解系统的单位样值响应h(n).
(2)掌握离散时间系统的时域分析方法。
巩固已经学过的知识,加深对知识的理解和应用,加强学科间的横向联系,学会应用MATLAB对离散系统进行仿真。
(3)仿真实现离散时间系统的单位样值响应,并绘制输出波形,主要程序段有注释.
3.1.3设计要求
本课程设计应满足以下要求:
1.实用性:
设计的典型函数应该能够正确运行.
2.可读性:
源程序代码清晰,有层次
(1)掌握用MATLAB来求解常系数差分方程的方法;
(2)掌握MATLAB常用函数的功能和使用方法;
3.1.4设计原理
冲激响应,线性时不变系统对单位冲激δ(n)作用在零状态条件下的响应称为冲激响应h(n)。
单位冲激函数的定义是
离散时间系统常以框图表示(见图)。
图中
x(n)、y(n)分别为系统的输入和输出。
单位样值函数在经过系统的作用后发生单位样值响应,因为直接求解会使求解过程复杂,可利用Z变换先求解系统函数H(Z),利用特殊函数和Z变换性质变换得到h(n),得到单位样值响应。
当然也可以利用其它类型的变换,例如将时间域内的函数直接变换到频域内(利用傅立叶变换),利用特殊函数和福利院变换的性质得到h(s),再利用系统函数与h(s)求得单位样值响应。
此处采用了利用Z变换的方式进行求解。
用MATLAB来求解常系数差分方程的方法;用MATLAB常用函数的功能和使用方法;
根据设定的差分方程:
(1).y(n)-6y(n-1)=x(n)
(2).y(n)-5y(n-1)+6y(n-2)=x(n)-3x(n-1)
(3).y(n)-3y(n-1)+3y(n-2)-y(n-3)=x(n)-2x(n-1)
利用z变换,求出H(z)=
再通过逆z变换得到h(n)。
3.2编程设计及实现
计算系统单位样值响应源程序:
3.2.1%差分方程模型y(n)-5y(n-1)+6y(n-2)=x(n)-3x(n-2)
%系统函数H(Z)=Y(Z)/X(Z)=[1-3Z^(-2)]/[1-5Z^(-1)+6Z^(-2)]
k=0:
10;
a=[1-56];%系统函数分母多项式的系数矩阵
b=[10-3];%系统函数分子多项式的分子矩阵
y=impz(b,a,k);%单位样值函数
stem(y);%用杆状图形式表示
xlabel('n');
title('h[n]');%(LTI系统的单位冲激响应')
3.2.2%差分方程模型y(n)-6y(n-1)=x(n)
%系统函数H(Z)=Y(Z)/X(Z)=1/[1-6Z^(-1)]
k=0:
10;
a=[1-60];%系统函数分母多项式的系数矩阵
b=[100];%系统函数分子多项式的分子矩阵
y=impz(b,a,k);%单位样值函数
stem(y);%用杆状图形式表示
xlabel('n');
title('h[n]');%(LTI系统的单位冲激响应')
3.2.3%差分方程模型y(n)-3y(n-1)+3y(n-2)-y(n-3)=x(n)-2x(n-2)
%系统函数H(Z)=Y(Z)/X(Z)=[1-2Z^(-2)]/[1-3Z^(-1)+3Z^(-2)-3-Z^(-3)]
k=0:
10;
a=[1-33-1];%系统函数分母多项式的系数矩阵
b=[1-200];%系统函数分子多项式的分子矩阵
y=impz(b,a,k);%单位样值函数
stem(y);%用杆状图形式表示
xlabel('n');
title('h[n]');%(LTI系统的单位冲激响应')
3.3运行结果及其分析
图3.3.1差分方程模型y(n)-5y(n-1)+6y(n-2)=x(n)-3x(n-2)的单位样值响应
图3.3.2差分方程模型y(n)-6y(n-1)=x(n)的单位样值响应
图3.3.3差分方程模型y(n)-3y(n-1)+3y(n-2)-y(n-3)=x(n)-2x(n-2)的单位样值响应
四、结论
本次的信号与系统课程设计中,我查阅了相关资料,并且进行了反复练习。
由于是第一次做信号与系统的课程设计,对于相关设计过程和分析方法以及MATLAB软件的使用并不大熟练。
但功夫不负有心人,最终还算顺利完成,这对我以后学习相关的课程以及进行更高层次的信号与系统设计都奠定了一定的基础。
设计过程中,出现了各种各样的问题,有些是单一原因引起的,有的是综合原因引起的,这些都很考验我的毅力与坚持。
但是我掌握了研究这类问题的方法,即问题解决的过程就是要从问题所表现出来的情况出发,通过反复推敲,作出相应判断,逐步找出问题的症结所在,从而一举击破。
对于信号与系统课程设计,尤其在使用MATLAB软件进行相关信号的仿真与分析时,这种分析解决问题的能力就更为重要。
正所谓“纸上得来终觉浅,觉知此事要躬行。
”学习任何知识,仅从理论上去求知,而不去实践、探索是不够的。
通过为期数天的MATLAB课程设计,我对MATLAB这个仿真软件有了更进一步的认识和了解。
在这数天时间里,我通过自己摸索,查阅资料,并且在指导老师的指导下完成了常用连续时间信号的编程与仿真;并最终将课程设计报告总结完毕。
在整个设计过程中我懂得了许多东西,也培养了独立思考和设计的能力,树立了对知识应用的信心,相信会对今后的学习工作和生活有非常大的帮助,并且提高了自己的动手实践操作能力,使自己充分体会到了在设计过程中的成功喜悦。
虽然这个设计做的不是太成功,但是在设计过程中所学到的东西是这次课程设计的最大收获和财富,使我终身受益。
在没有做课程设计以前,觉得课程设计只是对知识的单纯总结,但是通过这次课程设计发现自己的看法有点太片面,课程设计不仅是对前面所学知识的一种检验,也是对自己能力的一种提高,通过这次课程设计使自己明白了原来的那点知识是非常欠缺的,要学习的东西还很多,通过这次课程设计,我明白学习是一个长期积累的过程,在以后的工作和生活中都应该不断的学习,努力提高自己的知识和综合素质。
希望以后像这样的课程设计可以多一点。
对于MATLAB软件的使用,本次的课程设计让我对于信号与系统这一门学科有了更深层次的理解,在分析并解决问题的过程中,巩固了该门学科的基础,对于相关知识的认知程度有了很大的提高。
实践是认识的基础,本次的课程设计对个人的影响意义深远。
5.参考文献
1:
梁虹.信号与线性系统分析---基于MATLAB的方法与实现.北京:
高等教育出版社,2006.
2:
郑君里,谷源涛.信号与系统:
MATLAB综合实验.北京:
高等教育出版社,2008.
3:
肖伟、刘忠.MATLAB程序设计与应用[M].北京:
清华大学出版社2005.