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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

信号与系统实验报告.docx

1、信号与系统实验报告实验三常见信号的MATLAB表示及运算一、实验目的1熟悉常见信号的意义、特性及波形2学会使用MATLAB表示信号的方法并绘制信号波形3. 掌握使用MATLAB进行信号基本运算的指令4. 熟悉用MATLAB实现卷积积分的方法二、实验原理根据MATLAB的数值计算功能和符号运算功能,在MATLAB中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。在采用适当的MATLAB语句表示出信号后,就可以利用MATLAB中的绘图命令绘制出直观的信号波形了。1.连续时间信号 从严格意义上讲,MATLAB并不能处理连续信号。在MATLAB中,是用连续信号在等时间间隔点上的样

2、值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。在MATLAB中连续信号可用向量或符号运算功能来表示。 向量表示法对于连续时间信号,可以用两个行向量f和t来表示,其中向量t是用形如的命令定义的时间范围向量,其中,为信号起始时间,为终止时间,p为时间间隔。向量f为连续信号在向量t所定义的时间点上的样值。 符号运算表示法如果一个信号或函数可以用符号表达式来表示,那么我们就可以用前面介绍的符号函数专用绘图命令ezplot()等函数来绘出信号的波形。 常见信号的MATLAB表示单位阶跃信号单位阶跃信号的定义为:方法一: 调用Heaviside(t)函数首先定义函数Hea

3、viside(t) 的m函数文件,该文件名应与函数名同名即Heaviside.m。%定义函数文件,函数名为Heaviside,输入变量为x,输出变量为yfunction y= Heaviside(t) y=(t0); %定义函数体,即函数所执行指令%此处定义t0时y=1,t=0时y=0,注意与实际的阶跃信号定义的区别。方法二:数值计算法在MATLAB中,有一个专门用于表示单位阶跃信号的函数,即stepfun( )函数,它是用数值计算法表示的单位阶跃函数。其调用格式为:stepfun(t,t0) 其中,t是以向量形式表示的变量,t0表示信号发生突变的时刻,在t0以前,函数值小于零,t0以后函数值

4、大于零。有趣的是它同时还可以表示单位阶跃序列,这只要将自变量以及取样间隔设定为整数即可。符号函数符号函数的定义为:在MATLAB中有专门用于表示符号函数的函数sign() ,由于单位阶跃信号 (t)和符号函数两者之间存在以下关系:,因此,利用这个函数就可以很容易地生成单位阶跃信号。2.离散时间信号离散时间信号又叫离散时间序列,一般用 表示,其中变量k为整数,代表离散的采样时间点(采样次数)。在MATLAB中,离散信号的表示方法与连续信号不同,它无法用符号运算法来表示,而只能采用数值计算法表示,由于MATLAB中元素的个数是有限的,因此,MATLAB无法表示无限序列;另外,在绘制离散信号时必须使

5、用专门绘制离散数据的命令,即stem()函数,而不能用plot()函数。单位序列 单位序列)的定义为单位阶跃序列单位阶跃序列的定义为3.卷积积分两个信号的卷积定义为:MATLAB中是利用conv函数来实现卷积的。功能:实现两个函数和的卷积。格式:g=conv(f1,f2) 说明:f1=f1(t),f2=f2(t)表示两个函数,g=g(t)表示两个函数的卷积结果。三、实验内容1.分别用MATLAB的向量表示法和符号运算功能,表示并绘出下列连续时间信号的波形: (1) t=-1:0.01:10;t1=-1:0.01:-0.01;t2=0:0.01:10;f1=zeros(1,length(t1),

6、ones(1,length(t2);f=(2-exp(-2*t).*f1;plot(t,f)axis(-1,10,0,2.1) syms t;f=sym(2-exp(-2*t)*heaviside(t);ezplot(f,-1,10);(2)t=-2:0.01:8;f=0.*(t0&t4);plot(t,f)syms t;f=sym(cos(pi*t/2)*heaviside(t)-heaviside(t-4) );ezplot(f,-2,8);2.分别用MATLAB表示并绘出下列离散时间信号的波形: (2) t=0:8;t1=-10:15;f=zeros(1,10),t,zeros(1,7)

7、;stem(t1,f)axis(-10,15,0,10);(3) t=0:50;t1=-10:50;f=zeros(1,10),sin(t*pi/4);stem(t1,f)axis(-10,50,-2,2)3.已知两信号,求卷积积分,并与例题比较。t1=-1:0.01:0;t2=0:0.01:1;t3=-1:0.01:1;f1=ones(size(t1);f2=ones(size(t2);g=conv(f1,f2);subplot(3,1,1),plot(t1,f1);subplot(3,1,2),plot(t2,f2);subplot(3,1,3),plot(t3,g);与例题相比较,g(t

8、)的定义域不同,最大值对应的横坐标也不同。4.已知,求两序列的卷积和 。N=4;M=5;L=N+M-1;f1=1,1,1,2;f2=1,2,3,4,5;g=conv(f1,f2);kf1=0:N-1;kf2=0:M-1;kg=0:L-1;subplot(1,3,1),stem(kf1,f1,*k);xlabel(k);ylabel(f1(k);grid onsubplot(1,3,2),stem(kf2,f2,*k);xlabel(k);ylabel(f2(k);grid onsubplot(1,3,3);stem(kg,g,*k);xlabel(k);ylabel(g(k);grid on实

9、验心得:第一次接触Mutlab这个绘图软件,觉得挺新奇的,同时 ,由于之前不太学信号与系统遇到一些不懂的问题,结合这些图对信号与系统有更好的了解。实验四 连续时间信号的频域分析一、实验目的1熟悉傅里叶变换的性质2熟悉常见信号的傅里叶变换3了解傅里叶变换的MATLAB实现方法二、实验原理从已知信号求出相应的频谱函数的数学表示为:傅里叶反变换的定义为:在MATLAB中实现傅里叶变换的方法有两种,一种是利用MATLAB中的Symbolic Math Toolbox提供的专用函数直接求解函数的傅里叶变换和傅里叶反变换,另一种是傅里叶变换的数值计算实现法。1.直接调用专用函数法在MATLAB中实现傅里叶

10、变换的函数为: F=fourier( f ) 对f(t)进行傅里叶变换,其结果为F(w) F=fourier(f,v) 对f(t)进行傅里叶变换,其结果为F(v) F=fourier( f,u,v ) 对f(u)进行傅里叶变换,其结果为F(v)傅里叶反变换 f=ifourier( F ) 对F(w)进行傅里叶反变换,其结果为f(x) f=ifourier(F,U) 对F(w)进行傅里叶反变换,其结果为f(u) f=ifourier( F,v,u ) 对F(v)进行傅里叶反变换,其结果为f(u)注意:(1)在调用函数fourier( )及ifourier( )之前,要用syms命令对所有需要用到

11、的变量(如t,u,v,w)等进行说明,即要将这些变量说明成符号变量。对fourier( )中的f及ifourier( )中的F也要用符号定义符sym将其说明为符号表达式。(2)采用fourier( )及fourier( )得到的返回函数,仍然为符号表达式。在对其作图时要用ezplot( )函数,而不能用plot()函数。(3)fourier( )及fourier( )函数的应用有很多局限性,如果在返回函数中含有()等函数,则ezplot( )函数也无法作出图来。另外,在用fourier( )函数对某些信号进行变换时,其返回函数如果包含一些不能直接表达的式子,则此时当然也就无法作图了。这是fou

12、rier( )函数的一个局限。另一个局限是在很多场合,尽管原时间信号f(t)是连续的,但却不能表示成符号表达式,此时只能应用下面介绍的数值计算法来进行傅氏变换了,当然,大多数情况下,用数值计算法所求的频谱函数只是一种近似值。2、傅里叶变换的数值计算实现法严格说来,如果不使用symbolic工具箱,是不能分析连续时间信号的。采用数值计算方法实现连续时间信号的傅里叶变换,实质上只是借助于MATLAB的强大数值计算功能,特别是其强大的矩阵运算能力而进行的一种近似计算。傅里叶变换的数值计算实现法的原理如下:对于连续时间信号f(t),其傅里叶变换为: 其中为取样间隔,如果f(t)是时限信号,或者当|t|

13、大于某个给定值时,f(t)的值已经衰减得很厉害,可以近似地看成是时限信号,则上式中的n取值就是有限的,假定为N,有: 若对频率变量进行取样,得:通常取:,其中是要取的频率范围,或信号的频带宽度。采用MATLAB实现上式时,其要点是要生成f(t)的N个样本值的向量,以及向量,两向量的内积(即两矩阵的乘积),结果即完成上式的傅里叶变换的数值计算。注意:时间取样间隔的确定,其依据是必须小于奈奎斯特(Nyquist)取样间隔。如果f(t)不是严格的带限信号,则可以根据实际计算的精度要求来确定一个适当的频率为信号的带宽。三、 实验内容1.编程实现求下列信号的幅度频谱(1) 求出的频谱函数F1(j),请将

14、它与上面门宽为2的门函数的频谱进行比较,观察两者的特点,说明两者的关系。(2) 三角脉冲 (3) 单边指数信号 (4) 高斯信号(1) syms t w Gt=sym(Heaviside(2*t+1)-Heaviside(2*t-1); Fw=fourier(Gt,t,w); FFw=maple(convert,Fw,piecewise); FFP=abs(FFw); ezplot(FFP,-10*pi 10*pi);grid; axis(-10*pi 10*pi 0 2.2) 与的频谱比较,的频谱函数F1(j)最大值是其的1/2。(2)syms t w;Gt=sym(1+t)*(Heaviside(t+1)-Heaviside(t)+(1-t)*(Heaviside(t)-Heaviside(t-1);Fw=fourier(Gt,t,w); FFw=maple(convert,Fw,piecewise); FFP=abs(FFw); ezplot(FFP,-10*pi 10*pi);grid; axis(-10*p

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1