1实验报告课程名称信号与系统实验名称连续时间信号的频域分析专业通信工程班级通信1101学号201103020127姓名皮锋指导教师胡瑛2012年10月25日2实验二连续时间信号与系统的时域分析实验名称连续时间信号的频域分析评分实验日期2012年10月25日指导教师胡瑛姓名皮锋专业班级通信1101学号201103020127实验二连续时间信号的频域分析一、实验目的1、掌握连续时间周期信号的傅里叶级数的物理意义和分析方法;2、观察截短傅里叶级数而产生的“Gibbs现象”,了解其特点以及产生的原因;3、掌握连续时间傅里叶变换的分析方法及其物理意义;4、掌握各种典型的连续时间非周期信号的频谱特征以及傅里叶变换的主要性质;基本要求:掌握并深刻理傅里叶变换的物理意义,掌握信号的傅里叶变换的计算方法,掌握利用MATLAB编程完成相关的傅里叶变换的计算。二、实验原理及方法1、连续时间周期信号的傅里叶级数CTFS分析任何一个周期为T1的正弦周期信号,只要满足狄利克利条件,就可以展开成傅里叶级数。其中三角傅里叶级数为:1000)]sin()cos([)(kkktkbtkaatx2.1或:100)cos()(kkktkcatx2.2其中102T,称为信号的基本频率(Fundamentalfrequency),kkbaa,和,0分别是信号)(tx的直流分量、余弦分量幅度和正弦分量幅度,kkc、为合并同频率项之后各正弦波分量的幅度和初相位,它们都是频率0k的函数,绘制出它们与0k之间的图像,称为信号的频谱图(简称“频谱”),kc-0k图像为幅度谱,k-0k图像为相位谱。3三角形式傅里叶级数表明,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonicallyrelated)的正弦信号所组成,其中每一个不同频率的正弦信号称为正弦谐波分量(Sinusoidcomponent),其幅度(amplitude)为kc。也可以反过来理解三角傅里叶级数:用无限多个正弦谐波分量可以合成一个任意的非正弦周期信号。指数形式的傅里叶级数为:ktjkkeatx0)(2.3其中,ka为指数形式的傅里叶级数的系数,按如下公式计算:2/2/1110)(1TTtjkkdtetxTa2.4指数形式的傅里叶级数告诉我们,如果一个周期信号x(t),满足狄里克利条件,那么,它就可以被看作是由很多不同频率的互为谐波关系(harmonicallyrelated)的周期复指数信号所组成,其中每一个不同频率的周期复指数信号称为基本频率分量,其复幅度(complexamplitude)为ka。这里“复幅度(complexamplitude)”指的是ka通常是复数。上面的傅里叶级数的合成式说明,我们可以用无穷多个不同频率的周期复指数信号来合成任意一个周期信号。然而,用计算机(或任何其它设备)合成一个周期信号,显然不可能做到用无限多个谐波来合成,只能取这些有限个谐波分量来近似合成。假设谐波项数为N,则上面的和成式为:NNktjkkeatx0)(2.5显然,N越大,所选项数越多,有限项级数合成的结果越逼近原信号x(t)。本实验可以比较直观地了解傅里叶级数的物理意义,并观察到级数中各频率分量对波形的影响包括“Gibbs”现象:即信号在不连续点附近存在一个幅度大约为9%的过冲,且所选谐波次数越多,过冲点越向不连续点靠近。这一现象在观察周期矩形波信号和周期锯齿波信号时可以看得很清楚。2、连续时间信号傅里叶变换----CTFT傅里叶变换在信号分析中具有非常重要的意义,它主要是用来进行信号的频谱分析的。傅里叶变换和其逆变换定义如下:dtetxjXtj)()(2.6dejXtxtj)(21)(2.7连续时间傅里叶变换主要用来描述连续时间非周期信号的频谱。按照教材中的说法,任意非周期信号,如果满足狄里克利条件,那么,它可以被看作是由无穷多个不同频率(这些4频率都是非常的接近)的周期复指数信号ejt的线性组合构成的,每个频率所对应的周期复指数信号ejt称为频率分量(frequencycomponent),其相对幅度为对应频率的|X(j)|之值,其相位为对应频率的X(j)的相位。X(j)通常为关于的复函数,可以按照复数的极坐标表示方法表示为:X(j)=|X(j)|ejX(j)其中,|X(j)|称为x(t)的幅度谱,而X(j)则称为x(t)的相位谱。给定一个连续时间非周期信号x(t),它的频谱也是连续且非周期的。对于连续时间周期信号,也可以用傅里变换来表示其频谱,其特点是,连续时间周期信号的傅里叶变换时有冲激序列构成的,是离散的——这是连续时间周期信号的傅里叶变换的基本特征。3、连续周期信号的傅里叶级数CTFS的MATLAB实现3.1傅里叶级数的MATLAB计算设周期信号x(t)的基本周期为T1,且满足狄里克利条件,则其傅里叶级数的系数可由式2.4计算得到。式2.4重写如下:nwnwnwnwjnwedteFnjnwjnwt5sin55sin5121212.02.02.02.0基本频率为:102T对周期信号进行分析时,我们往往只需对其在一个周期内进行分析即可,通常选择主周期(Principleperiod)。假定x1(t)是x(t)中的主周期,则2/2/11110)(1TTtjkkdtetxTa计算机不能计算无穷多个系数,所以我们假设需要计算的谐波次数为N,则总的系数个数为2N+1个。在确定了时间范围和时间变化的步长即T1和dt之后,对某一个系数,上述系数的积分公式可以近似为:ntjknTTtjkkTdtetxdtetxTa12/2/11/)()(10110121/],,[)](),(),([02010TdteeetxtxtxMtjktjktjkM对于全部需要的2N+1个系数,上面的计算可以按照矩阵运算实现。MATLAB实现系数计算的程序如下:dt=0.01;T=2;t=-T/2:dt:T/2;w0=2*pi/T;x1=input(‘Typeintheperiodicsignalx(t)overoneperiodx1(t)=’);N=input(‘TypeinthenumberN=’);k=-N:N;L=2*N+1;ak=x1*exp(-j*k*w0*t’)*dt/T;5需要强调的是,时间变量的变化步长dt的大小对傅里叶级数系数的计算精度的影响非常大,dt越小,精度越高,但是,计算机计算所花的时间越长。例题2-1:给定一个周期为T1=2s的连续时间周期方波信号,如图所示,其一个周期内的数学表达式为:21,010,1)(1tttx解:首先,我们根据前面所给出的公式,计算该信号的傅里叶级数的系数。01)1(netF01020kjetjk0210kjejk02222000kjeeekjkjkj0200)2sin(kjekk因为:0=2π/T1=π,代入上式得到:kkjakk)2sin()(在MATLAB命令窗口,依次键入:k=-10:10;ak=((-j).^k).*(sin((k+eps)*pi/2)./((k+eps)*pi))%Theexpressionofakak=Columns1through4-0.00000+0.0354i-0.00000+0.0455iColumns5through8-0.00000+0.0637i-0.00000+0.1061iColumns9through12-0.00000+0.3183i0.50000-0.3183iColumns13through16-0.00000-0.1061i-0.00000-0.0637iColumns17through20-0.00000-0.0455i-0.00000-0.0354iColumn21-0.0000从MATLAB命令窗口,我们得到了该周期信号从10a到10a共21个系数。紧接着再键入以下命令:subplot(221)112-1-2x(t)t0图2.1周期方波信号6stem(k,abs(ak),'k.')title('TheFourierseriescoefficients')xlabel('Frequencyindexk')就得到一幅如右图所示的描述ka与k之间的关系的图形。以上是我们通过手工计算得到的这个周期信号的傅里叶级数表达式及其频谱图,下面给出完成傅里叶级数系数计算的相应MATLAB范例程序。%Program2_1%ThisprogramisusedtoevaluatetheFourierseriescoefficientsakofaperiodicsquarewaveclear,closeallT=2;dt=0.00001;t=-2:dt:2;x1=u(t)-u(t-1-dt);x=0;form=-1:1%Periodicallyextendx1(t)toformaperiodicsignalx=x+u(t-m*T)-u(t-1-m*T-dt);endw0=2*pi/T;N=10;%ThenumberoftheharmoniccomponentsL=2*N+1;fork=-N:N;%EvaluatetheFourierseriescoefficientsakak(N+1+k)=(1/T)*x1*exp(-j*k*w0*t')*dt;endphi=anglel(ak);%Evaluatethephaseofak执行程序Program2_1后,就完成了信号的傅里叶级数的系数的计算,在命令窗口键入ak命令窗口就可以显示傅里叶级数的21个系数:ak=Columns1through40.0000+0.0000i0.0000+0.0354i0.0000-0.0000i0.0000+0.0455iColumns5through80.0000-0.0000i0.0000+0.0637i0.0000-0.0000i0.0000+0.1061iColumns9through120.0000-0.0000i0.0000+0.3183i0.50000.0000-0.3183iColumns13through160.0000+0.0000i0.0000-0.1061i0.0000+0.0000i0.0000-0.0637iColumns17through200.0000+0.0000i0.0000-0.0455i0.0000+0.0000i0.0000-0.0354iColumn210.0000-0.0000i将这里的ak之值同前面手工计算得到的ak比较,可见两者是完全相同的。再次特别提示:程序中,时间变量的变化步长dt的大小对傅里叶级数系数的计算精度的影响非常大,dt越小,精度越高,本程序中的dt之所以选择0.00001就是为了提高计算精度。但是,计算机所花的计算时间越长。7在程序Program2_1中添加相应的计算|ak|和绘图语句,就可以绘制出信号的幅度谱和相位谱的谱线图。3.2周期信号的合成以及Gibbs现象从傅里叶级数的合成式(Synthesisequation)ktjkkeatx0)(可以看出,用无穷多个不同频率和不同振幅的周期复指数信号可以合成一个周期信号。然而,我们无法用计算机实现对无穷多个周期复指数信号的合成。但是,用有限项来合成却是可行的,在实际应用中,多半也就是这么做的。然而,这样做的一个必然结果,就是引入了误差。如果一个周期信号在一个周期有内断点存在,那么,引入的误差将除了产生纹波之外,还将在断点处产生幅度大约为9%的过冲(Overshot),这种现象被称为吉伯斯现象(Gibbsphenomenon)。为了能够观察到合成信号与原信号