基于MATLAB的信号仿真分析的设计 课设说明书_第1页
基于MATLAB的信号仿真分析的设计 课设说明书_第2页
基于MATLAB的信号仿真分析的设计 课设说明书_第3页
基于MATLAB的信号仿真分析的设计 课设说明书_第4页
基于MATLAB的信号仿真分析的设计 课设说明书_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、唐 山 学 院信号仿真分析实践 信息工程系题 目 基于MATLAB的信号仿真分析的设计系 (部) 班 级 姓 名 学 号 指导教师 2014年 6 月 16 日至 6 月 20 日 共 1 周 2014年 6 月 20 日 信号仿真分析实践 任务书一、设计题目、内容及要求设计题目:1、基于MATLAB的信号仿真分析的设计设计内容:(1) MATLAB 程序入门和基础应用。学习Matlab软件的基本使用方法,了解Matlab的数值计算、符号运算、可视化功能以及Matlab程序设计入门。 (2) 连续时间LTI系统的时域分析。利用MATLAB求解连续系统的零状态响应、冲激响应及阶跃响应,利用MAT

2、LAB实现连续信号卷积的方法。 (3) 连续时间LTI系统的频域分析。利用MATLAB实现连续时间信号傅里叶变换,分析LTI系统的频域特性和LTI系统的输出响应。(4) 连续时间LTI系统的复频域分析。利用MATLAB进行部分分式展开,分析LTI系统的特性,利用MATLAB进行Laplace正、反变换。设计要求:1、根据题目要求进行基于MATLAB的信号仿真分析的总体设计。2.完成算法具体部分的设计。(1)仿真原理图。(2)仿真分析说明。3.仿真程序的设计。(1)连续时间系统时域和变换域相关特性的仿真分析。(2)完整源程序。4书写设计说明书。二、设计原始资料1 郑君里.信号与系统(第三版).高

3、等教育出版社,2011 三、要求的设计成果(课程设计说明书、设计实物、图纸等) 设计结果能正确仿真演示设计说明书一份(包括总体设计、算法原理图及说明、系统仿真演示、源程序清单等)四、进程安排 周一:资料收集周二:利用MATLAB完成信号仿真分析的设计周三:程序调试 周四:书写仿真分析实践说明书周五:答辩五、主要参考资料 1 薛定宇, 陈阳泉. 基于MATLAB/Simulink的系统仿真技术与应用,清华大学出版社,20022 钟麟, 王峰. MATLAB仿真技术与应用教程,国防工业出版社,20053 楼顺天, 李博菡.基于MATLAB的系统分析与设计信号处理,西安电子科技大学出版社,1998

4、4 吴湘淇.信号、系统与信号处理的软硬件实现,电子工业出版社,2002指导教师(签名):教研室主任(签名):课程实践成绩评定表出勤情况出勤天数 缺勤天数成绩评定出勤情况及设计过程表现(20分)课程实践答辩(20分)设计成果(60分)总成绩(100分)提问(答辩)问题情况综合评定 指导教师签名: 年 月 日目录1引言11.1MATLAB的发展历史11.2MATLAB的系统结构11.3MATLAB的主要特点11.4MATLAB的影响22. 总体设计32.1设计框图32.2设计思想33. 详细设计53.1基础运算53.2连续时间LTI系统时域仿真分析73.2.1设计方法与步骤73.2.2连续时间系统

5、零状态响应的数值求解83.2.3卷积的计算83.2.4连续时间系统冲激响应和阶跃响应的求解93.3连续时间LTI系统频域仿真分析133.3.1实验目的133.3.2设计框图143.3.2系统的频率特性143.3.3连续时间信号傅里叶变换的数值计算方法153.3.4涉及的MATLAB函数153.4连续时间LTI系统复频域仿真分析173.4.1实验目的173.4.2利用MATLAB进行部分分式展开183.4.3连续时间信号的拉普拉斯变换183.4.4连续系统的复频域分析183.4.5系统频率特性分析194. 总结24参考文献251引言 MATLAB是一种面向科学与工程计算的高级语言 ,由于其集成了

6、许多领域的工具箱 ,因此又被称之为“巨人肩上的工具”。本文以该软件的MATLAB7.0为例 ,在简单介绍MATLAB的基础上 ,详细阐述了其仿真功能在信号处理中的应用。1.1MATLAB的发展历史MATLAB语言是由美国的Clever Moler博士于1980年开发的;设计者的初衷是为解决“线性代数”课程的矩阵运算问题;取名MATLAB即Matrix Laboratory 矩阵实验室的意思;1984年, MathWorks公司成立 ,MATLAB以商品形式出现,随着市场的推广,以其良好的开放性和运行的可靠性,成功地应用于各工程学科的研究领域。1.2MATLAB的系统结构 MATLAB系统结构有

7、三个层次、八个部分构成,每一个部分完成不同的功能,主要包括: (1)MATLAB主包 (2)工具箱(Toolboxes) (3)编译器(Compiler) (4)建模仿真(Simulink) (5)模块集(Blockset) (6)实时仿真(Real-Time Worksho) (7)状态流程(Stateflow) (8)状态代码生成(Stateflow Coder)1.3MATLAB的主要特点 (1)简单易学:与C语言几乎一致。 (2)编程简洁、效率高;语言规则不强,无需编译。 (3)强大而简单的绘图功能;二、三维绘图,直观展示结果。 (4)扩展性强丰富的工具箱:MATLAB主工具箱、符号数

8、学工具箱、SIMULINK仿真工具箱、控制系统工具箱、信号处理工具箱、图象处理工具箱、通信工具箱、系统辨识工具箱、神经元网络工具箱、金融工具箱等。1.4MATLAB的影响 (1)matlab在教学中的应用 在大学里,诸如应用代数、数理统计、自动控制、数字信号处理、动态系统仿真等课程的教科书都把MATLAB作为内容。在欧美是九十年代教科书与旧版书籍的区别性标志。越来越多国内教科书也加入了Matlab相关内容。MATLAB是攻读学位的大学生、硕士生、博士生必须掌握的基本工具。 (2)MATLAB行业运用相关图书:MATLAB与选煤/选矿数据处理、MATLAB在工程数学上的应用、电磁场数值计算法与M

9、ATLAB实现、数学物理方程的MATLAB解法与可视化、高等应用数学问题的MATLAB求解、MATLAB有限元分析与应用、MATLAB 7及工程问题解决方案、MATLAB及在电子信息类课程中的应用、MATLAB在电气工程中的应用等等。 (3)MATLAB在本专业中的应用 不管世界如何改变, MATLAB在通信专业的地位基本不变。(通信专业“计算器”) 几乎所有通信与信号处理类课程:高等数学普通物理线性代数概率论与数理统计计算方法(数值分析)信号与系统电路通信原理随机信号处理数字信号处理数字图像处理光纤通信移动通信通信网2. 总体设计 总体设计的目标是: (1)MATLAB程序入门和基础运用。学

10、习MATLAB软件的基本使用方法,了解MATLAB的数值计算、符号运算、可视化功能以及MATLAB程序入门设计。 (2)连续时间LTI系统的时域分析。利用MATLAB求解连续系数的零状态响应、冲激响应及阶跃响应,利用MATLAB实现连续信号卷积的方法。 (3)连续时间LTI系统的频域分析。利用MATLAB实现连续时间信号傅里叶变换,分析LTI系统的频域特性和LTI系统的输出响应。 (4)连续时间LTI系统的复频域分析。利用MATLAB进行Laplace正、反变换。2.1设计框图数值运算符号运算基础运算 设计框图如图21所示零状态响应冲激响应阶跃响应连续信号卷积 连续时间LTI系统时域仿真分析基

11、于matlab的信号与系统仿真傅里叶变换频域特性输出响应连续时间LTI系统频域仿真分析系统特性Laplace正、反变换连续时间LTI系统复频域仿真分析图212.2设计思想LTI系统各种分析方法的理论基础是信号的分解特性与系统的线性、时不变特性,其出发点是:激励信号可以分解为若干基础信号单元的线性组合;系统对激励所产生的零状态响应是系统对各基本信号单元分别激励下响应的叠加。利用MATLAB进行MATLAB程序入门和基础运用、连续时间LTI系统的时域分析、连续时间LTI系统的频域分析和连续时间LTI系统的复频域分析。3. 详细设计3.1基础运算设计步骤:在MATLAB命令窗口输入运算命令进行运算。

12、下面一道题是用MATLAB进行“加减乘除”运算11利用MATLAB计算A=-2-5i解 在MATLAB命令窗口键入如下语句: >> A=-2-i*5 运行 A = -2.0000 - 5.0000i >> 运行图如图31所示 图31下面一道题是利用MATLAB表示一个复常量极坐标12一个复常量极坐标表示解 在MATLAB命令窗口键入如下语句: >> B=3*exp(i*pi/4) 运行B = 2.1213 + 2.1213i >>运行图如图32所示 图32下面一道题是利用MATLAB进行向量和逗号运算13向量运算和逗号解 在MATLAB命令窗口键

13、入如下语句:>> A=4,5,8,9运行A = 4 5 8 9 >>运行图如图33所示 图33下面一道题是利用MATLAB进行分号运算14分号运算解 在MATLAB命令窗口键入如下语句:>> B=8;6;8;1B = 8 6 8 1>>运行图如图34所示 图343.2连续时间LTI系统时域仿真分析实验目的:(1) 学会运用MATLAB符号求解连续系统的零输入响应;(2) 学会运用MATLAB数值求解连续系统的零状态响应;(3) 学会运用MATLAB求解连续系统的冲击响应和阶跃响应;(4) 学会运用MATLAB卷积积分法求解系统的零状态响应。3.2

14、.1设计方法与步骤一般的连续时间系统分析有以下几个步骤: 求解系统的零输入响应; 求解系统的零状态响应; 求解系统的全响应; 分析系统的卷积;画出它们的图形。 下面以具体的微分方程为例说明利用MATLAB 软件分析系统的具体方法3.2.2连续时间系统零状态响应的数值求解我们知道,LTI连续系统可用如下所示的线性常系数微分方程来描述, 例如,对于以下方程: 可用输入函数,得出它的冲击响应h ,再根据LTI系统的零状态响应y(t)是激励u(t)与冲击响应h(t)的卷积积分。注意,如果微分方程的左端或右端表达式中有缺项,则其向量a或b中的对应元素应为零,不能省略不写,否则出错。求函数的零状态响应及初

15、始状态。输入函数。建模先求出系统的冲击响应,写出其特征方程 求出其特征根为p和p,及相应的留数r,r;则冲击响应为 输入y(t)可用输入u(t)与冲击响应h(t)的卷积求得。3.2.3卷积的计算连续时间信号和的卷积运算可用信号的分段求和来实现,即:如果只求当t =n(n为整数)时f (t)的值f (nD) ,则上式可得:式中的 实际上就是连续时间信号和经等时间间隔 均匀抽样的离散序列和的卷积和。当D足够小时,就是卷积积分的结果连续时间信号f (t)的较好数值近似。下面是利用MATLAB 实现连续信号卷积的通用程序conv(),该程序在计算出卷积积分的数值近似的同时,还绘制出f (t)的时域波形

16、图。应注意,程序中是如何设定f (t)的时间长度。MATLAB程序:f1=input('输入函数f1=');f2=input('输入函数f2=');dt=input('dt=');y=conv(f1,f2);plot(dt*(1:length(y)-1),y);grid on;title('卷积');xlabel('t'); ylabel('f1*f2')程序运行结果:输入以下数据:f1=sin(3*t) f2=cos(3*t+2) dt=0.01得出图形如图35所示:图353.2.4连续时间系统冲

17、激响应和阶跃响应的求解 在MATLAB中,对于连续LTI系统的冲激响应和阶跃响应的数值解,可分别用控制系统工具箱提供的函数impulse和step来求解。其语句格式分别为: y = impulse(sys,t); y = step(sys,t); 其中,t表示计算机系统响应的时间抽样点向量,sys表示LTI系统模型。下面我们用几个例子来验证以上知识点(1)求零输入相应:求齐次微分方程在给定初始条件下的零输入相应,y''(t)+4y(t)=0,y(0_)=1,y'(0_)=1。解 在MATLAB命令窗口键入如下语句:>> eq='D2y+4*y=0&#

18、39;>> con='y(0)=1,Dy(0)=1'>> y=dsolve(eq,con);y=simplify(y) y = 1/2*sin(2*t)+cos(2*t) >> ezplot(y),grid零输入响应图如图36所示图36(2)求零状态响应:已知系统y''(t)+4y(t)=x(t),输入x(t)为cos(t)u(t),求系统的零状态响应。解 在MATLAB命令窗口键入如下语句>> eq='D2y+4*y=cos(t)*heaviside(t)'>> con='y(

19、-0.01)=0,Dy(-0.01)=0'>> y=dsolve(eq,con);y=simplify(y) y =1/3*heaviside(t)*(cos(t)-cos(2*t)>> ezplot(y,0,10)零状态响应图如图37所示图37(3)求冲击响应和阶跃响应:已知某LTI系统的微分方程为y(t)+2y(t)+32y(t)=f(t)+16f”(t),试用MATLAB命令绘出0t4范围内系统的冲激响应h(t)和阶跃响应g(t)。解 在MATLAB命令窗口键入如下语句>> t=0:0.001:4;>> sys=tf(1,16,1,

20、2,32);>> h=impulse(sys,t);>> g=step(sys,t);>> subplot(211)>> plot(t,h),grid on>>xlabel('Time(sec)'),ylabel('h(t)')>>title('冲激响应')冲激响应图如图38(1)所示图38(1)>> subplot(212)>> plot(t,g),grid on>> xlabel('Time(sec)'),ylabel(

21、'g(t)')>> title('阶跃响应')阶跃响应图如图38(2)所示图38(2)(4)求卷积:求信号f1(t)=t和f2(t)=sin(t)的卷积的解析解。解 在MATLAB命令窗口键入如下语句>> syms s t tao;>> f1=t;f2=sin(t);>> g=subs(f1,'t',tao)*subs(f2,'t',(t-tao);>> f=int(g,tao,0,t) f = t-sin(t)>> 运行图如图39所示图393.3连续时间LT

22、I系统频域仿真分析3.3.1实验目的 (1).掌握连续时间信号傅立叶变换和傅立叶逆变换的实现方法,以及傅立叶变换的时移特性,傅立叶变换的频移特性的实现方法;(2).了解傅立叶变换的频移特性及其应用;(3).掌握函数fourier和函数ifourier的调用格式及作用;(4).掌握傅立叶变换的数值计算方法,以及绘制信号频谱图的方法。3.3.2设计框图设计框图如图310所示主窗口尺度变换时移特性频移特性门信号信号选择Sin(t-w)Sint单边指数信号拉氏变换门信号频域门信号相位图时域图幅度图幅度图幅度图拉氏变换拉氏变换拉氏变换图3103.3.2系统的频率特性连续LTI系统的频率特性又称频率响应特

23、性,是指系统在正弦信号激励下的稳态响应随频率变化的情况,又称系统函数。对于一个零状态的线性系统,如图311所示。 图311 LTI系统框图其系统函数定义为式中,为系统激励信号的傅里叶变换,为系统在零状态条件下输出响应的傅里叶变换。系统函数反映了系统内在的固有特性,它取决于系统自身的结构及组成系统元器件的参数,与外部激励无关,是描述系统特性的一个重要参数。是的复函数,可以表示为=。其中,随变化的规律称为系统的幅频特性:随变化的规律称为系统的相频特性。频率特性不仅可用函数表达式表示,还可以随频率f变化的曲线来表示。当频率特性曲线采用对数坐标时,又称为波特图。3.3.3连续时间信号傅里叶变换的数值计

24、算方法算法理论依据:当为时限信号时,或和近似的看做时限信号时,式中的n取值可认作是有限的, 设为N,则可得, ,0<=k<=N。 编程中需要注意的是:要正确生成信号的N个样本的向量及向量。3.3.4涉及的MATLAB函数1、 .fourier函数功能:实现信号的傅里叶变换。调用格式:F=fourier(f):符号函数f的傅里叶变换,默认返回函数F是关于的函数。F=fourier(f,v):是符号函数f的傅里叶变换,返回函数F是关于v的函数。F=fourier(f,u,v):是关于u的函数f的傅里叶变换,返回函数F式关于v的函数。2、 .ifourier函数功能:实现信号的傅里叶变换

25、调用格式:F=ifourier(F):是函数F的傅里叶反变换,默认的独立变量,默认返回是关于x的函数。F=ifourier(F,v):返回函数f是u的函数,而不是默认的x的函数。F=ifourier(F,v,u):是对关于v的函数F进行傅里叶逆变换,返回关于u的函数f。下面让我们用几个例子来验证以上知识点:(1)利用MATLAB求解傅里叶变换:已知连续时间信号f(t)=,通过程序完成f(t)的傅立叶变换。解 在MATLAB命令窗口键入如下语句:>> syms t;>> f=fourier(exp(-2*abs(t);>> ezplot(f);>>

26、 傅里叶变换图如图312所示图312(2)利用MATLAB绘出特性曲线:试画出f(t)=U(t)的波形及其频录特性曲线。解 在MATLAB命令窗口键入如下语句:>> syms t v w f>> f=2/3*exp(-3*t)*sym('Heaviside(t)');>> F=fourier(f);>> subplot(2,1,1);>> ezplot(f);>> subplot(2,1,2);>> ezplot(abs(F);>> 信号f(t)=U(t)的波形及其幅频特性曲线如图3

27、13所示图3133.4连续时间LTI系统复频域仿真分析3.4.1实验目的(1) 利用MATLAB进行部分分式展开;(2) 利用MATLAB进行Laplace正、反变换;(3) 分析LTI系统的特性。3.4.2利用MATLAB进行部分分式展开为了方便LAPLACE反变换,先对F(s)进行部分分式展开。根据F(s)分为具有不同极点的部分分式展开和具有多重极点的部分分式展开。分别讨论。(1) 不同极点的部分分式展开:F(s)=B(s)/A(s)=num/den=(b0*sn+b1*s(n-1)+.+bn)/(sn+a1*s(n-1)+.an)在matlab行向量中,num和den分别表示传递函数分子

28、和分母的系数num=b0 b1 .bnden=a0 a1 .an将求出F(s)部分展开式的留数,级点,余项r,p,kB(s)/A(s)=r(1)/(s-p(1)+r(2)/(s-p(2)+.+r(n)/(s-p(n)+k(s)(2) 多重极点部分分式展开:r(j)/(s-p(j)+r(j+1)/(s-p(j+1)2+.r(j+m-1)/(s-p(j)m3.4.3连续时间信号的拉普拉斯变换连续时间信号的拉普拉斯正变换和逆变换分别为: Matlab的符号数学工具箱(Symbolic Math Toolbox)提供了能直接求解拉普拉斯变换和逆变换的符号运算函数laplace()和ilaplace (

29、)。下面举例说明两函数的调用方法。3.4.4连续系统的复频域分析若描述系统的微分方程为: 则系统函数为:其中,。通过分析系统函数的零、极点分布,可以掌握系统的特性。若的所有极点都分布于左半开s平面,则该因果系统是稳定的;否则,该因果系统是不稳定的。在MATLAB中,可利用多项式求根函数root( )来确定系统函数的零、极点。(1) 系统稳定性分析 A(s)、B(s)是关于s的多项式,由其系数分别构成向量:,若执行如下命令,即可完成的零、极点的计算:p=roots(a) %求A(s)的根(的极点),并将结果返回给向量pq=roots(b) %求B(s)的根(的零点),并将结果返回给向量q3.4.

30、5系统频率特性分析对于因果系统来说,若系统函数H(s)的收敛域包含s平面的虚轴(jw轴),则其频率响应H(jw)存在,且。因此,分析系统频率特性之前,要先对系统的稳定性作分析。下面让我们用几个例子来验证以上知识点:(1)利用MATLAB求解拉普拉斯变换 解 在MATLAB命令窗口键入如下语句:>> syms t>> f1=sym('exp(-2*t)*Heaviside(t)'); %求f1(t)的拉普拉斯变换>> F1=laplace(f1) F1 = 1/(s+2) >> f2=sym('t*exp(-t)*Heavi

31、side(t)');>> F2=laplace(f2) F2 = 1/(s+1)2 >> 运行图如图314所示图314(2)利用MATLAB拉普拉斯逆变换求解:若系统的系统函数为。 求冲激响应。(拉普拉斯逆变换)解 在MATLAB命令窗口键入如下语句>> H=sym('1/(s2+3*s+2)');>> h=ilaplace(H) h = 2*exp(-3/2*t)*sinh(1/2*t) >>运行图如图315所示图315利用MATLAB进行系统稳定的判定:已知一因果系统的系统函数为: 画出的零、极点分布图,并

32、判断系统的稳定性。解 在MATLAB命令窗口键入如下语句>> a=1 2 -3 2 1;>> b=1 0 -4;>> p=roots(a)p = -3.1300 0.7247 + 0.6890i 0.7247 - 0.6890i -0.3195 >> q=roots(b)q =图316 2.0000 -2.0000>> hold on>> plot(real(p),imag(p),'x');>> plot(real(q),imag(q),'o');>> title('H(s)的零极点图');grid on; ylabel('虚部');xlabel('实部')>&g

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论