实验四连续信号的傅立叶变换.doc_第1页
实验四连续信号的傅立叶变换.doc_第2页
实验四连续信号的傅立叶变换.doc_第3页
实验四连续信号的傅立叶变换.doc_第4页
实验四连续信号的傅立叶变换.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

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

文档简介

实验4 非周期信号的傅立叶变换分析一、 实验目的(1) 熟悉连续非周期信号频谱特点及其分析方法;(2) 掌握用MATLAB实现傅立叶变换的两种方法;(3) 了解常用傅立叶变换性质的MATLAB实现方法;二、 实验原理1、傅里叶变换和其逆变换定义如下: 4.1 4.2 连续时间傅里叶变换主要用来描述连续时间非周期信号的频谱。按照教材中的说法,任意非周期信号,如果满足狄里克利条件,那么,它可以被看作是由无穷多个不同频率(这些频率都是非常的接近)的周期复指数信号ejwt的线性组合构成的,每个频率所对应的周期复指数信号ejwt称为频率分量(frequency component),其相对幅度为对应频率的|X(jw)|之值,其相位为对应频率的X(jw)的相位。X(jw)通常为复函数,可以按照复数的极坐标表示方法表示为:X(jw)=| X(jw)|ej X(jw)其中,| X(jw)|称为x(t)的幅度谱,而X(jw)则称为x(t)的相位谱。 给定一个连续时间非周期信号x(t),它的频谱也是连续且非周期的。2、用MATLAB实现方法MATLAB进行傅里叶变换有两种方法,一种利用符号运算的方法计算,另一种是数值计算。2.1 采用数值计算的方法来进行傅里叶变换的计算严格来说,用数值计算的方法计算连续时间信号的傅里叶变换需要有个限定条件,即信号是时限信号(Time limited signal),也就是当时间|t|大于某个给定时间时其值衰减为零或接近于零,这个条件与前面提到的为什么不能用无限多个谐波分量来合成周期信号的道理是一样的。计算机只能处理有限大小和有限数量的数。采用数值计算算法的理论依据是: 若信号为时限信号,当时间间隔T取得足够小时,上式可演变为:上式用MATLAB表示为: X=x*exp(-j*t*w)*T其中X为信号x(t)的傅里叶变换,w为频率,T为取样间隔。相应的MATLAB程序:T = 0.01; dw = 0.1; %时间和频率变化的步长t = -10:T:10;w = -4*pi:dw:4*pi;X(jw)可以按照下面的矩阵运算来进行:X=x*exp(-j*t*w)*T; %傅里叶变换X1=abs(X); %计算幅度谱phai=angle(X); %计算相位谱为了使计算结果能够直观地表现出来,还需要用绘图函数将时间信号x(t),信号的幅度谱|X(jw)|和相位谱 X(jw)分别以图形的方式表现出来,并对图形加以适当的标注。这里还需要注意,由于在MATLAB运算中,必须对连续信号进行取样,为了不丢失原信号的信息,即反变换后能不失真地恢复原来信号,取样间隔T的确定必须满足取样定理的要求,即取样间隔T必须小于奈奎斯特频率。2.1.1 用MATLAB实现傅里叶逆变换 连续时间傅里叶逆变换可用式4.2进行计算。式4.2重写如下:从定义式可看出,其计算方法与傅里叶变换是一样的,因此可以采用同样的矩阵运算的方法来计算,即 x(t)=X(jw)*exp(jw*t)*dw具体的MATLAB函数如下:t = -5:0.01;5; % 指定信号的时间范围,此范围应根据信号的持续时间确定。dw = 0.1; w = -4*pi:dw:4*pi;X = input(Type in the expression of X(jw);x = X* exp(jw*t)*dw;然后用绘图函数就可以绘制出逆变换得到的时域信号波形图。2.2 符号运算的计算方法MATLAB提供了两个函数fourier()和ifourier(), 它们可分别用来计算傅立叶正变换和反变换,这是计算傅立叶变换的符号计算方法。 (1)傅里叶变换在Matlab中,傅里变换变换由函数fourier()实现。fourier()有三种调用格式: F=fourier(f)求时间函数f(t)的傅里叶变换,返回函数F的自变量默认为w,即; F=fourier(f,v)求时间函数f(t)的傅里叶变换,返回函数F的自变量为v,即; F=fourier(f,u,v)对自变量为u的函数f(u)求傅里叶变换,返回函数F的自变量为v,即。(2)傅里叶逆变换在Matlab中,傅里变换逆变换由函数ifourier()实现。与函数fourier()相类似,ifourier()也有三种调用格式: f=ifourier(F)求函数F(jw)的傅里叶逆变换,返回函数f的自变量默认为x,即; f=ifourier(F,u)求函数F(jw)的傅里叶逆变换,返回函数f的自变量为u,即。 f=ifourier(F,v,u)求函数F(jv)的傅里叶逆变换,返回函数f的自变量为u,即这里要注意的是,在调用上述两个函数之前,先要用syms命令对所用到的变量(如t、u、v、w)等进行说明,也就是要将这些变量说明成符号变量。对于fourier()中的函数f或ifourier()中的F,也要用syms将f或F说明成为符号表达式。另外,在采用fourier()及ifourier()得到的返回函数,仍然是符号表达式。若需要对返回函数作图时,只能用ezplot()绘图命令,而不能用plot()命令。如果返回函数中含有d(w)等项,用ezplot()也无法作图。fourier()函数的局限性:用fourier()对某些信号求反变换时,其返回函数可能会包含一些不能直接表达的式子,甚至可能会出现一些屏幕提示为“未被定义的函数或变量”的项;另外,在许多情况下,信号尽管是连续的,但却不可能表示成符号表达式;函数fourier()也不可能对离散信号进行处理。例1求单边指数函数的傅里叶变换,画出其幅频特性和相频特性图。图1解:编写如下M文件, syms t w f f=exp(-2*t)*sym( Heaviside (t);F=fourier(f)subplot(3,1,1);ezplot(f,0:2,0:1.2);subplot(3,1,2);ezplot(abs(F),-10:10);subplot(3,1,3);ezplot(angle(F),-10:10)运行后,可得如下的文本和如图1所示图形结果。F = 1/(2+i*w)上式相当于:要说明的是,相频特性图中,相位的单位为“弧度”。注:Heaviside(t)函数即为单位阶跃函数u(t)。在调用Heaviside(t)函数之前一定要在你的当前工作目录下创建该函数。创建Heaviside(t)函数方法如下: function f=Heaviside(t) f=(t0); 且以Heaviside.m文件名保存。说明:直接用例题一的M文件来仿真,是得不到图1中的相频特性图的。原因是F=fourier(f) 是符号变量,而atan2(),angle( )函数只能处理数值型,不能处理符号变量。将程序修改为图syms t w f f=exp(-2*t)*sym( Heaviside (t);F=fourier(f);subplot(3,1,1);ezplot(f,0:2,0:1.2);subplot(3,1,2);ezplot(abs(F),-10:10);w1=-10:0.01:10; %设定频率变化范围及间隔k=subs(F,w,w1);%将符号运算转为数值运算。phai=angle(k);subplot(3,1,3);plot(w1,phai) %该三行用来得到相频特性图可得到完整图形。例2求的傅里叶逆变换。图2解:编写如下M文件, syms t w F=1/(1+w2);f=ifourier(F,w,t)ezplot(f)运行后,可得如下的文本和如图2所示图形结果。1/2*exp(-t)*Heaviside(t)+1/2*exp(t)*Heaviside(-t)上式相当于:三、知识扩展在MATLAB频谱分析的实际应用中,往往使用一个新的指令fft(),这是一种快速离散傅立叶变换指令。指令格式为:X=fft(x,N),其中:x为时域信号,N为傅立叶变换的长度,X为x的傅立叶变换,X的长度也为N。例:用FFT分析信号频率成分一被噪声污染的信号,很难看出它所包含的频率分量,如一个由50Hz和150Hz正弦信号构成的信号,受到均值为零、均方差为0.5的高斯随机信号的于扰,数据采样率fs=500Hz.通过FFT来分析其信号频率成分,用matlab实现如下: fs=500; %采样频率fs=500Hz.t=0:1/fs:1; %采样周期为1/fs.f=sin(2*pi*50*t)+sin(2*pi*150*t); % 产生信号f(t)subplot(3,1,1);plot(t,f);title(原始信号);y=f+0.5*randn(1,length(t); %加噪声信号subplot(3,1,2);plot(t,y);title(受噪声污染的信号);N=256; Y=fft(y,N); %对加噪信号进行FFTk=0:N-1;f=fs*k/N;subplot(3,1,3);plot(f,abs(Y);title(FFT(幅度谱); (由频谱图可见,在50Hz和150Hz各出现很长的谱线,表明含噪信号y中含有这二个频率的信号.在350Hz和450Hz处也出现很长的谱线,这并不是说y中也含350Hz和450Hz的信号,这是由于采样信号的频谱是以采样频率fs为间隔周期出现而造成的)掌握了fft()指令的使用后,我们来完成一个任务,我们对实验二知识扩展中的含噪信号进行频谱分析。信号波形如图4所示,完成该信号的频谱分析,并计算出其中有用成分的频率和噪声信号的频率。图4 含噪信号含噪信号假设为:F=fft(f,200);四、实验内容1、 给定时限信号: 编写MATLAB程序Q4_1,用符号运算方法和数值计算两种方法求x1(t)傅里叶变换。仿真图片包含信号时域波形、幅度谱和相位谱。2、编写MATLAB程序Q4_2,求单边指数数信号的傅立叶变换,并画出其波形。3、编写MATLAB程序Q4_3,一矩形脉冲,载波信号,试用傅立叶变换的数值解法实现调幅信号,并绘制出、及它们各

温馨提示

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

评论

0/150

提交评论