ImageVerifierCode 换一换
格式:DOCX , 页数:95 ,大小:819.13KB ,
资源ID:6537811      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-6537811.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(北京理工大学信号与系统实验报告Word文档格式.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

北京理工大学信号与系统实验报告Word文档格式.docx

1、门函数Tripuls三角脉冲函数Square周期方波Sawtooth周期锯齿波或三角函数2、连续时间信号的时域运算对连续时间信号的运算包括量信号想家、相乘、微分、积分以及位移反转、尺度变换(尺度伸缩)等1)相加和相乘信号的相加和相乘指两个信号对应时刻的值相加和相乘,对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“”来计算,此时要求表示两信号的向量时间范围和采样间隔相同,采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。2)微分和积分对于向量表示发表示的连续时间信号,可以用过数值计算的方法计算信号的微分和积分。这里由时间向量t1,t2,tN和采样值向量x1,x2,xN表

2、示的连续信号的微分是利用差分来近似求取的。MATLAB里用diff来计算差分x(k+1)-x(k)。连续信号的定积分可以由MATLAB的quad函数实现,调用格式为 quad(functions_name,a,b)其中,functions_name为被积函数名,a、b为积分区间。对于符号对象表示的连续时间信号,MATLAB提供了diff函数和quad函数分别用于求微分和积分3)位移、反转、尺度变换符号的位移:信号x(t)的自变量t更换为(t-t0),表示x(t)波形在t轴上整体移动,当t00整体右移,当t01)或拉伸(a1)。3、离散时间信号的MATLAB表示离散时间信号仅在一些离散时刻有定义

3、。在MATLAB中离散时间信号需要使用两个向量来表示,其中一个向量用于表示离散的时间点,另一个向量用来表示这些时间点上的值。stem函数用于沪指离散时间信号波形,为了与我们表示离散时间信号的习惯相同,在绘图时一般需要添加“filled”选项,以绘制实心的杆状图形。4、离散时间信号的时域运算离散时间信号的相加相乘是将两个信号对应的时间上的值相加或相乘,可以直接使用算术运算的运算符“+”或“”来计算。离散时间信号的位移,则可看作是将表示时间的向量平移,而表示对应时间点上的值的向量不变。离散时间信号的反转,则可看作是将表示时间的向量和表示对应时间点桑的值的向量以零为基准点,一纵轴为对称轴反折,向量的

4、反折可以利用MATLAB的fliplr函数实现。三、实验内容、实验结果以及实验中遇到的一些问题与解决(1)利用MATLAB绘制下列连续时间信号波形:1X(t)=(u(t)X(t)=u(t)-u(t-2)2X(t)=u(t+2)-u(t-2)3X(t)=u(t)-u(t-3)4第一题的总代码如下:syms t x1=(1-exp(-0.5*t)*heaviside(t); %函数subplot(221);ezplot(x1); %分块画图xlabel(t);title(1(1) x(t) %标记x2=cos(pi*t)*heaviside(t)-heaviside(t-2);subplot(22

5、2);ezplot(x2);1(2) x(t)x3=abs(t)/2*cos(pi*t)*heaviside(t+2)-heaviside(t-2);subplot(223);ezplot(x3);1(3) x(t)x4=exp(-t)*sin(2*pi*t)*heaviside(t)-heaviside(t-3);subplot(224);ezplot(x4);1(4) x(t)第一题程序运行结果如下:(2)X(t)=u(n-3)利用MATLAB绘制下列连续时间信号波形:X(t)=u(n) X(t)=nu(n)-u(n-5)3 第二题的总代码如下:n=0:x1=heaviside(n-3);

6、stem(n,x1,filledn2(1) x(n)x2=(-1/2).(n).*heaviside(n);stem(n,x2,2(2) x(n)x3=n.*heaviside(n)-heaviside(n-5);stem(n,x3,2(3) x(n)x4=sin(n*pi/2).*heaviside(n);stem(n,x4,2(4) x(n)第二题程序运行结果如下:注:第一个图中我将单位阶跃函数的定义给改了。在课前我就着手这次的实验,我一直百思不得其解的是单位阶跃信号在这题中n=3时应该为1,而右图是我第一次做这道题的图,在n=3时却是0.5。于是在实验课上就这个问题我请教了老师,就是这个

7、heaviside函数的定义可以通过在C盘搜索heaviside文件找到它的定义:function Y = heaviside(X)%HEAVISIDE Step function.% HEAVISIDE(X) is 0 for X 0, and .5 for X = 0.% HEAVISIDE(X) is not a function in the strict sense.% See also DIRAC.% Copyright 1993-2012 The MathWorks, Inc.Y = zeros(size(X),like,X);Y(X 0) = 1;Y(X = 0) = .5;Y

8、(isnan(X) = NaN;看到这个函数的定义后,老师建议如果要改进要么将这个定义函数修改,要么就自己新定义一个函数保存在源文件中。经过思考,我决定暂时修改这个函数,借用与我这次实验。于是我修改了上面这段代码的下划线处,结果如下:Y(X = 0) = 1;于是,我得到的图就是上文已经给出的“第二题的图”。这个小小的问题当然不妨碍实验,但是从中我得到了定义一个函数的方法,也是一个小小的收获。(3)利用MATLAB生成并绘制连续周期矩形波信号,要求周期为2,峰值为3,显示3个周期的波形。第三题代码如下:t=linspace(0,2*pi); %取间隔y=3*square(pi*t); %方波p

9、lot(t,y);axis(0 2*pi -3.5 3.5); %设置坐标范围grid on; %网络线y第三题程序运行结果如下:在课前编这道题时我是没有什么思路的,首先是周期方波怎么表示?我细细再看了书上实验内容的参考后,明白了用square函数来表示,却不懂得周期方波的函数怎么使用。此时我不得不上网去查周期方波函数square的使用方法,这才明白了函数括号里直接加上2*pi*t即是周期为1的方波。网上有道例题,给出了linspace这个函数的定义,于是我就用这个函数取了间隔。这样第一次画出的图形乍一看是几条竖线,我才回想起来绪论的时候老师曾经讲过用axis函数来调整坐标系。当然在最后,为了

10、使用新学的知识,我加上了个grid on来修饰整个图形。(4)已知信号x1(t),以及信号 x2(t)=sin(2t),用MATLAB绘出下列信号的波形:1 X3(t)= x1(t)+x2(t)2 X4(t)= x1(t)x2(t)3 X5(t)= x1(t)+x1(t)4 X6(t)= x2(t)x3(t-1)第四题的总代码如下:syms tx1=(4-t)*heaviside(t)-heaviside(t-4); %用阶跃信号当门函数x10=(t+4)*heaviside(t+4)-heaviside(t);x2=sin(2*pi*t);x3=x1+x2;4(1) x(t)x4=x1*x2

11、;4(2) x(t)x5=x10+x1;ezplot(x5);4(3) x(t)x3=subs(x3,t,t-1); %变量替换x6=x2*x3;ezplot(x6);4(4) x(t)第四题程序运行结果如下:这题在完成的过程中,主要是门函数的使用问题。我刚开始的思路是使用两个单位阶跃信号相减,还有一种方法是同学说的直接使用门函数rectpuls。相比之下我认为同学的方法更加好,然而当我使用rectpuls(0,4)定义一个在0-4的门函数后,编译出来的图形都十分的奇怪。于是我上网查找了有关rectpuls的用法,结果粗略的查找之下并没有非常详细的解答,原因是这个函数好像是在前几个版本新加进去

12、的函数,网上有的一般是以y轴为作为门函数的中心进行定义,并没有偏离y轴的线为中心作门函数的定义。一方面是我比较懒惰,没能耐心接着寻找这个问题的答案,另一方面我就要试试我自己的想法是否能够编译出可能的图形。因此我使用heaviside(0)-heaviside(4)、heaviside(-4)-heaviside(0)作门函数,结果发现编出的前三个图形经过验证是正确的。最后一个图形需要使用到变量替换的一个函数subs,其实就在书上的例题中,其用法就是在subs后先将要变量替换的函数x写出,逗号后再加变量t,逗号后再加上替换后的变量。在编译时我曾漏掉过这一语句,结果检查时确实是比较难发现。变量替换

13、前后的图如下:变量替换前的图形 变量替换后的图形这说明对我来说要格外小心,因为我很容易范这样的毛病,因此对于这样一个细小的误差来说在写代码时就应该严格注意。(5)已知离散时间信号x(n),用MATLAB绘出x(n)、x(-n)、x(n+2)和x(n-2)的波形。第五题的总代码如下:n=-3:4;x=0 1 2 3 3 3 3 0;stem(n,x,x(n)n1=-n;stem(n1,x,n2=n-2;stem(n2,x,n3=n+2;stem(n3,x,第五题程序运行结果如下:(6)用MATLAB编程绘制下列信号的时域波形,观察信号是否为周期信号?若是周期信号,周期是多少?若不是周期信号,请说

14、明原因。X(t)=1+cos(2t)X(t)=X(t)=2+第六题的总代码如下:x1=1+cos(pi/4*t-pi/3)+2*cos(pi/2*t-pi/4)+cos(2*pi*t);ezplot(x1,-3*pi,3*pi);x1x2=sin(t)+2*sin(pi*t);ezplot(x2,-3*pi,3*pi); %非周期x2n=-3*pi:3*pi;x3=2+3*sin(2*n*pi/3-pi/8);stem(x3,x3n=-4*pi:4*pi;x4=cos(n*pi/6)+sin(n*pi/6)+cos(n*pi/2);stem(x4,x4第六题程序运行结果如下:图一为周期函数,周

15、期为8;图二为非周期函数;图三为周期函数,周期为3;图四为周期函数,周期为12;四、实验收获与总结通过此次的实验,我学会了MATLAB的一些基本编译的方法,包括掌握信号的MATLAB表示及其可视化方法。掌握信号基本时域运算离散函数、连续函数的MATLAB实现方法。课前的编译使得我实验课上更加地轻松,能够提前发现问题、寻求同学的帮助或者是上网查找一些相关的问题,也能够把不会的问题在课堂上进行解决。此次实验我遇到的问题主要集中在2、3、4题上,其余的题我都比较轻松的完成,对于实验中的困难与解决在上述“实验内容、实验结果以及实验遇到的困难与解决”中已经将这部分进行了详细描述。总而言之,这样自主的实验

16、课能够让我们更加自主、主动地学习,自己琢磨掌握一些核心的编译方法,实验课上完不成的内容可以课后再研究、讨论,这门实验课提升了我的学习兴趣,也激发了我学习的动力。相信今后的实验我能够越做越好。实验2 LIT系统的时域分析1、掌握利用MATLAB对系统进行时域分析的方法2、掌握连续时间系统零状态响应、冲激响应和阶跃响应的求解方法3、掌握求解离散时间系统响应、单位抽样响应的方法4、加深对卷积积分和卷积和的理解,掌握利用计算机进行卷积积分和卷积和计算的方法1、连续时间系统时域分析的MATLAB实现1)连续时间系统的MATLAB表示LIT连续时间系统通常可以由系统微分方程描述,设描述系统的微分方程为:则

17、在MATLAB里可以建立系统模型如下:b=bM,b(M-1),b0;a=aN,a(N-1),a0;sys=tf(b,a);其中,tf是用于创建系统模型的函数,向量a与b的元素是以微分方程求导的降次幂次序来排序的,如果有缺项,应用0补齐。2)连续时间系统的零状态响应零状态响应是指系统的初始状态为零,仅由输入信号所引起的响应。MATLAB提供了一个用于求解零状态响应的函数lism,其调用格式如下:lism(sys,x,t)绘出输入信号及响应的波形,x和t表示输入信号数值向量及其时间向量。 y= lism(sys,x,t)这种调用格式不会出波形,而是返回响应的数值向量。3)连续时间系统的冲激响应与阶

18、跃响应MATLAB提供函数impulse来求指定时间范围内,由模型sys描述的连续时间系统的单位冲激响应。impulse函数的基本调用格式如下:impulse(sys)在默认时间范围内绘出系统冲激响应的时域波形。impulse(sys,T)绘出系统在0-T范围内冲激响应的时域波形。impulse(sys,ts:tp:te)绘出系统在ts-te范围内,以tp为时间间隔取样的冲激响应波形。y,t=impulse()该调用格式不会出冲激响应波形,而是返回冲激响应的数值向量及其对应的时间向量。函数step用于求解单位阶跃响应,函数step同样也有如下几种调用格式:step(sys)step(sys,T

19、)step(sys,ts:te) y,t= step()各种调用格式参数所代表的意思可参考上述impulse函数。2、离散时间系统时域分析的MATLAB实现1)离散时间系统的MATLAB表示LTI离散系统通常可以由系统差分方程描述,设描述系统的差分方程为:a0y(n)+a1y(n-1)+aNy(n-M)=b0x(n)+b1x(n-1)+bNx(n-N)则在MATLAB里,我们可以用如下两个向量来表示这个系统:b=b0,b1,bN;a=a0,a1,aN;2)离散时间系统对任意输入的响应MATLAB提供了求LIT离散系统响应的专用函数filter,该函数用于求取由差分方程所描述的离散时间系统在指定

20、时间范围内对输入序列所产生的响应,该函数基本调用格式为:y=filter(b,a,x)其中,x为输入序列,y为输出序列,输出系列y对应的时间区间相同。3)离散时间系统的单位抽样响应MATLAB提供了函数impz来求指定时间范围内,由向量b和a描述的离散时间系统的单位抽样响应,具体调用格式如下:impz(b,a)在默认时间范围内绘出单位抽样响应的时域波形。impz(b,a,N)绘出系统在0-N范围系统单位抽样响应的时域波形。impz(b,a,ns:te)绘出系统在ns-te范围内的单位抽样响应波形。y,t=impz()该调用格式不会出单位抽样响应波形,而是返回单位抽样响应的数值向量及其对应的时间

21、向量。3、卷积和与卷积积分1)离散时间序列的卷积和卷积和是离散系统时域分析的基本方法之一,离散时间序列x1(n)和x2(n)的卷积和x(n)定义如下:对已离散LTI系统,设其输入信号为x(n),单位抽样响应为h(n),则其零状态响应y(n)为y(n)=x(n)*h(n)即离散LTI系统的零状态响应可以表示成输入信号x(n)和单位抽样响应h(n)的卷积,因此,离散时间序列的卷积和计算对我们近离散吸引时域分析具有重要的意义。MATLAB的conv函数可以用来求两个离散序列的卷积和,调用格式为x=conv(x1,x2)。x1=ones(1,3);x2=1,2,3,4;x=conv(x1,x2);x=

22、1 3 6 9 7 4然而,我们不难发现,此例中序列x1、x2、x都没有时间信息,而实际上我们还需根据序列x1、x2对应时间序列确定卷积结果x对应的时间序列。设x1、x2为两个在有限时间区间内非零的离散时间序列,即序列x1在区间n1-n2内非零,序列x2在区间m1-m2内非零,则序列x1的时域宽度为L1=n2-n1+1,序列x2的时域宽度为L2=m2-m1+1。由卷积和的定义可知,卷积和序列x的时域宽度为L=L1+L2-1,且只在区间(n1+m1)-(n1+m1)+(L1+L2-2)非零。2)连续时间信号的卷积积分卷积积分是连续系统时域分析的有效方法和工具之一,连续时间信号x1(t)和x2(t

23、)的卷积积分x(t)定义如下: 对已连续LTI系统,设其输入信号为x(t),单位冲激响应为h(t),其零状态响应为y(t),则有y(t)=x(t)*h(t)即连续LTI系统的零状态响应可以表示成输入信号和单位冲激响应的卷积。因此连续时间信号卷积积分对连续系统的时域分析具有非常重要的意义。利用MATLAB可以采用数值计算的方法近似计算卷积积分。卷积积分可用求和运算来实现现在考虑只求t=n时x(t)的值x(n),则由上式可得当足够小,x(n)就是x(t)的数值近似。我们可以利用计算离散序列卷积和的conv函数来计算卷积积分,具体步骤如下:1将连续时间信号x1(t)和x2(t)以时间间隔进行取样,得

24、到离散序列x1(n)和x2(n);2构造离散序列x1(t)和x2(t)对应的时间向量t1和t2 ;3调用函数conv计算卷积积分在t= n时的近似采样值x(n);4构造离散序列x(n)对应的时间向量n。根据上述过程可以自定义一个用于计算卷积积分的通用函数sconv,函数源代码如下:function x,t=sconv(x1,x2,t1,t2,dt)% 计算连续信号卷积积分x(t)=x1(t)*x2(t)% 数值方法% x:卷积积分x(t)对应的非零值向量% t:f(t)的对应时间向量% x1:x1(t)的非零值向量% x2:x2(t)的非零值向量% t1:x1(t)的对应时间向量% t2:x2

25、(t)的对应时间向量% dt:取样时间间隔x = conv(x1,x2);x = x*dt;t0 = t1(1)+t2(1);l = length(x1)+length(x2) - 2;t = t0:dt:(t0+l*dt);(1)采用MATLAB绘出各系统的单位冲激响应和单位阶跃响应波形。第一题总程序代码如下:a=1 sqrt(2) 1;b=1;sys=tf(b,a);subplot(421);impulse(sys);subplot(422);step(sys);a=2 sqrt(2) 1;b=1 0 0;subplot(423);subplot(424);a=1 1 1;b=1 0 ;subplot(4

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2