信号与系统实验报告4
- 格式:doc
- 大小:443.50 KB
- 文档页数:13
实验四 时域抽样与频域抽样一、实验目的加深理解连续时间信号的离散化过程中的数学概念和物理概念,掌握时域抽样定理的基本内容。
掌握由抽样序列重建原连续信号的基本原理与实现方法,理解其工程概念。
加深理解频谱离散化过程中的数学概念和物理概念,掌握频域抽样定理的基本内容。
二、 实验原理时域抽样定理给出了连续信号抽样过程中信号不失真的约束条件:对于基带信号,信号抽样频率sam f 大于等于2倍的信号最高频率m f ,即m sam f f 2≥。
时域抽样是把连续信号x (t )变成适于数字系统处理的离散信号x [k ] ;信号重建是将离散信号x [k ]转换为连续时间信号x (t )。
非周期离散信号的频谱是连续的周期谱。
计算机在分析离散信号的频谱时,必须将其连续频谱离散化。
频域抽样定理给出了连续频谱抽样过程中信号不失真的约束条件。
三.实验内容1. 为了观察连续信号时域抽样时抽样频率对抽样过程的影响,在[0,0.1]区间上以50Hz 的抽样频率对下列3个信号分别进行抽样,试画出抽样后序列的波形,并分析产生不同波形的原因,提出改进措施。
)102cos()(1t t x ⨯=π答: 函数代码为: t0 = 0:0.001:0.1;x0 =cos(2*pi*10*t0);plot(t0,x0,'r')hold onFs =50;t=0:1/Fs:0.1;x=cos(2*pi*10*t); stem(t,x); hold offtitle('连续信号及其抽样信号')函数图像为:)502cos()(2t t x ⨯=π同理,函数图像为:)0102cos()(3t t x ⨯=π同理,函数图像为:由以上的三图可知,第一个图的离散序列,基本可以显示出原来信号,可以通过低通滤波恢复,因为信号的频率为20HZ,而采样频率为50>2*20,故可以恢复,但是第二个和第三个信号的评论分别为50和100HZ,因此理论上是不能够恢复的,需要增大采样频率,解决的方案为,第二个信号的采样频率改为400HZ,而第三个的采样频率改为1000HZ,这样可以很好的采样,如下图所示:2. 产生幅度调制信号)200cos()2cos()(t t t x ππ=,推导其频率特性,确定抽样频率,并绘制波形。
信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。
2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。
4.学会运用MATLAB进行连续信号时移、反折和尺度变换。
5.学会运用MATLAB进行连续时间微分、积分运算。
6.学会运用MATLAB进行连续信号相加、相乘运算。
7.学会运用MATLAB进行连续信号的奇偶分解。
二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。
三、实验内容1.MATLAB软件基本运算入门。
1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。
2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。
矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。
2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。
3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。
举例:计算一个函数并绘制出在对应区间上对应的值。
2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。
实验1 信号的时域描述与运算一、实验目的1. 掌握信号的MA TLAB表示及其可视化方法。
2. 掌握信号基本时域运算的MATLAB实现方法。
3. 利用MATLAB分析常用信号,加深对信号时域特性的理解。
二、实验原理与方法1. 连续时间信号的MA TLAB表示连续时间信号指的是在连续时间范围内有定义的信号,即除了若干个不连续点外,在任何时刻信号都有定义。
在MATLAB中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。
从严格意义上来说,MA TLAB并不能处理连续时间信号,在MA TLAB中连续时间信号是用等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好地近似表示出连续时间信号,这种表示方法称为向量表示法。
表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。
例如一个正弦信号可以表示如下:>> t=0:0.01:10;>> x=sin(t);利用plot(t,x)命令可以绘制上述信号的时域波形,如图1所示。
如果连续时间信号可以用表达式来描述,则还可以采用符号表达式來表示信号。
例如对于上述正弦信号,可以用符号对象表示如下:>> x=sin(t);>> ezplot(X);利用ezplot(x)命令可以绘制上述信号的时域波形Time(seconds)图1 利用向量表示连续时间信号t图 2 利用符号对象表示连续时间信号sin(t)2.连续时间信号的时域运算对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换(尺度伸缩)等。
1)相加和相乘信号相加和相乘指两信号对应时刻的值相加和相乘,对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“*”来计算,此时要求表示两信号的向量时间范围和采样间隔相同。
采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。
MATLAB信号与系统实验报告19472[五篇范文]第一篇:MATLAB信号与系统实验报告19472信号与系统实验陈诉(5)MATLAB 综合实验项目二连续系统的频域阐发目的:周期信号输入连续系统的响应可用傅里叶级数阐发。
由于盘算历程啰嗦,最适适用MATLAB 盘算。
通过编程实现对输入信号、输出信号的频谱和时域响应的盘算,认识盘算机在系统阐发中的作用。
任务:线性连续系统的系统函数为11)(+=ωωjj H,输入信号为周期矩形波如图 1 所示,用MATLAB 阐发系统的输入频谱、输出频谱以及系统的时域响应。
-3-2-1 0 1 2 300.511.52Time(sec)图 1要领:1、确定周期信号 f(t)的频谱nF&。
基波频率Ω。
2、确定系统函数 )(Ω jn H。
3、盘算输出信号的频谱n nF jn H Y&&)(Ω=4、系统的时域响应∑∞-∞=Ω=nt jnn eY t y&)(MATLAB 盘算为y=Y_n*exp(j*w0*n“*t);要求(画出 3 幅图):1、在一幅图中画输入信号f(t)和输入信号幅度频谱|F(jω)|。
用两个子图画出。
2、画出系统函数的幅度频谱|H(jω)|。
3、在一幅图中画输出信号y(t)和输出信号幅度频谱|Y(jω)|。
用两个子图画出。
解:(1)阐发盘算:输入信号的频谱为(n)输入信号最小周期为=2,脉冲宽度,基波频率Ω=2π/ =π,所以(n)系统函数为因此输出信号的频谱为系统响应为(2)步伐:t=linspace(-3,3,300);tau_T=1/4;%n0=-20;n1=20;n=n0:n1;%盘算谐波次数20F_n=tau_T*Sa(tau_T*pi*n);f=2*(rectpuls(t+1.75,0.5)+rectpuls(t-0.25,0.5)+rectpuls(t-2.25,0.5));figure(1),subplot(2,1,1),line(t,f,”linewidth“,2);%输入信号的波形 axis([-3,3,-0.1,2.1]);grid onxlabel(”Time(sec)“,”fontsize“,8),title(”输入信号“,”fontweight“,”bold“)%设定字体巨细,文本字符的粗细text(-0.4,0.8,”f(t)“)subplot(2,1,2),stem(n,abs(F_n),”.“);%输入信号的幅度频谱xlabel(”n“,”fontsize“,8),title(”输入信号的幅度频谱“,”fontweight“,”bold“)text(-4.0,0.2,”|Fn|“)H_n=1./(i*n*pi+1);figure(2),stem(n,abs(H_n),”.“);%系统函数的幅度频谱xlabel(”n“,”fontsize“,8),title(”系统函数的幅度频谱“,”fontweight“,”bold“)text(-2.5,0.5,”|Hn|“)Y_n=H_n.*F_n;y=Y_n*exp(i*pi*n”*t);figure(3),subplot(2,1,1),line(t,y,“linewidth”,2);%输出信号的波形 axis([-3,3,0,0.5]);grid onxlabel(“Time(sec)”,“fontsize”,8),title(“输出信号”,“fontweight”,“bold”)text(-0.4,0.3,“y(t)”)subplot(2,1,2),stem(n,abs(Y_n),“.”);%输出信号的幅度频谱xlabel(“n”,“fontsize”,8),title(“输出信号的幅度频谱”,“fontweight”,“bold”)text(-4.0,0.2,“|Yn|”)(3)波形:-3-2-1 0 1 2 300.511.52Time(sec)输入信号f(t)-20-15-10-5 0 5 10 15 2000.10.20.30.4n输入信号的幅度频谱|Fn|-20-15-10-5 0 5 10 15 2000.10.20.30.40.50.60.70.80.91n系统函数的幅度频谱|Hn|-3-2-1 0 1 2 300.10.20.30.4Time(sec)输出信号y(t)-20-15-10-5 0 5 10 15 2000.10.20.30.4n输出信号的幅度频谱|Yn| 项目三连续系统的复频域阐发目的:周期信号输入连续系统的响应也可用拉氏变更阐发。
信号与系统实验实验报告一、实验目的本次信号与系统实验的主要目的是通过实际操作和观察,深入理解信号与系统的基本概念、原理和分析方法。
具体而言,包括以下几个方面:1、掌握常见信号的产生和表示方法,如正弦信号、方波信号、脉冲信号等。
2、熟悉线性时不变系统的特性,如叠加性、时不变性等,并通过实验进行验证。
3、学会使用基本的信号处理工具和仪器,如示波器、信号发生器等,进行信号的观测和分析。
4、理解卷积运算在信号处理中的作用,并通过实验计算和观察卷积结果。
二、实验设备1、信号发生器:用于产生各种类型的信号,如正弦波、方波、脉冲等。
2、示波器:用于观测输入和输出信号的波形、幅度、频率等参数。
3、计算机及相关软件:用于进行数据处理和分析。
三、实验原理1、信号的分类信号可以分为连续时间信号和离散时间信号。
连续时间信号在时间上是连续的,其数学表示通常为函数形式;离散时间信号在时间上是离散的,通常用序列来表示。
常见的信号类型包括正弦信号、方波信号、脉冲信号等。
2、线性时不变系统线性时不变系统具有叠加性和时不变性。
叠加性意味着多个输入信号的线性组合产生的输出等于各个输入单独作用产生的输出的线性组合;时不变性表示系统的特性不随时间变化,即输入信号的时移对应输出信号的相同时移。
3、卷积运算卷积是信号处理中一种重要的运算,用于描述线性时不变系统对输入信号的作用。
对于两个信号 f(t) 和 g(t),它们的卷积定义为:\(f g)(t) =\int_{\infty}^{\infty} f(\tau) g(t \tau) d\tau \在离散时间情况下,卷积运算为:\(f g)n =\sum_{m =\infty}^{\infty} fm gn m \四、实验内容及步骤实验一:常见信号的产生与观测1、连接信号发生器和示波器。
2、设置信号发生器分别产生正弦波、方波和脉冲信号,调整频率、幅度和占空比等参数。
3、在示波器上观察并记录不同信号的波形、频率和幅度。
信号与系统实验报告一、实验目的(1) 理解周期信号的傅里叶分解,掌握傅里叶系数的计算方法;(2)深刻理解和掌握非周期信号的傅里叶变换及其计算方法;(3) 熟悉傅里叶变换的性质,并能应用其性质实现信号的幅度调制;(4) 理解连续时间系统的频域分析原理和方法,掌握连续系统的频率响应求解方法,并画出相应的幅频、相频响应曲线。
二、实验原理、原理图及电路图(1) 周期信号的傅里叶分解设有连续时间周期信号()f t ,它的周期为T ,角频率22fT,且满足狄里赫利条件,则该周期信号可以展开成傅里叶级数,即可表示为一系列不同频率的正弦或复指数信号之和。
傅里叶级数有三角形式和指数形式两种。
1)三角形式的傅里叶级数:01212011()cos()cos(2)sin()sin(2)2cos()sin()2n n n n a f t a t a t b t b t a a n t b n t 式中系数n a ,n b 称为傅里叶系数,可由下式求得:222222()cos(),()sin()T T T T nna f t n t dtb f t n t dtTT2)指数形式的傅里叶级数:()jn tn nf t F e式中系数n F 称为傅里叶复系数,可由下式求得:221()T jn tT nF f t edtT周期信号的傅里叶分解用Matlab进行计算时,本质上是对信号进行数值积分运算。
Matlab中进行数值积分运算的函数有quad函数和int函数。
其中int函数主要用于符号运算,而quad函数(包括quad8,quadl)可以直接对信号进行积分运算。
因此利用Matlab进行周期信号的傅里叶分解可以直接对信号进行运算,也可以采用符号运算方法。
quadl函数(quad系)的调用形式为:y=quadl(‘func’,a,b)或y=quadl(@myfun,a,b)。
其中func是一个字符串,表示被积函数的.m文件名(函数名);a、b分别表示定积分的下限和上限。
信息科学与工程学院《信号与系统》实验报告四专业班级电信 09-班姓名学号实验时间 2011 年月日指导教师陈华丽成绩实验名称离散信号的频域分析实验目的1. 掌握离散信号谱分析的方法:序列的傅里叶变换、离散傅里叶级数、离散傅里叶变换、快速傅里叶变换,进一步理解这些变换之间的关系;2. 掌握序列的傅里叶变换、离散傅里叶级数、离散傅里叶变换、快速傅里叶变换的Matlab实现;3. 熟悉FFT算法原理和FFT子程序的应用。
4. 学习用FFT对连续信号和离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应用FFT。
实验内容1.对连续信号)()sin()(0tutAetx taΩα-=(128.444=A,πα250=,πΩ250=)进行理想采样,可得采样序列50)()sin()()(0≤≤==-nnunTAenTxnx nTaΩα。
图1给出了)(txa的幅频特性曲线,由此图可以确定对)(txa采用的采样频率。
分别取采样频率为1KHz、300Hz和200Hz,画出所得采样序列)(nx的幅频特性)(ωj eX。
并观察是否存在频谱混叠。
图1 连续信号)()sin()(0tutAetx taΩα-=2. 设)52.0cos()48.0cos()(nnnxππ+=(1)取)(nx(100≤≤n)时,求)(nx的FFT变换)(kX,并绘出其幅度曲线。
(2)将(1)中的)(nx以补零方式加长到200≤≤n,求)(kX并绘出其幅度曲线。
(3)取)(nx(1000≤≤n),求)(kX并绘出其幅度曲线。
(4)观察上述三种情况下,)(nx的幅度曲线是否一致?为什么?3. (1)编制信号产生子程序,产生以下典型信号供谱分析用。
11,03()8,470,n nx n n nn+≤≤⎧⎪=-≤≤⎨⎪⎩其它2()cos4x n nπ=3()sin8x n nπ=4()cos8cos16cos20x t t t tπππ=++10.80.60.40.20100200300400500xa(jf)f /Hz(2)对信号1()x n ,2()x n ,3()x n 进行两次谱分析,FFT 的变换区间N 分别取8和16,观察两次的结果是否一致?为什么?(3)连续信号4()x n 的采样频率64s f Hz =,16,32,64N =。
信号与系统实验报告目录1. 内容概要 (2)1.1 研究背景 (3)1.2 研究目的 (4)1.3 研究意义 (4)2. 实验原理 (5)2.1 信号与系统基本概念 (7)2.2 信号的分类与表示 (8)2.3 系统的分类与表示 (9)2.4 信号与系统的运算法则 (11)3. 实验内容及步骤 (12)3.1 实验一 (13)3.1.1 实验目的 (14)3.1.2 实验仪器和设备 (15)3.1.4 实验数据记录与分析 (16)3.2 实验二 (16)3.2.1 实验目的 (17)3.2.2 实验仪器和设备 (18)3.2.3 实验步骤 (19)3.2.4 实验数据记录与分析 (19)3.3 实验三 (20)3.3.1 实验目的 (21)3.3.2 实验仪器和设备 (22)3.3.3 实验步骤 (23)3.3.4 实验数据记录与分析 (24)3.4 实验四 (26)3.4.1 实验目的 (27)3.4.2 实验仪器和设备 (27)3.4.4 实验数据记录与分析 (29)4. 结果与讨论 (29)4.1 实验结果汇总 (31)4.2 结果分析与讨论 (32)4.3 结果与理论知识的对比与验证 (33)1. 内容概要本实验报告旨在总结和回顾在信号与系统课程中所进行的实验内容,通过实践操作加深对理论知识的理解和应用能力。
实验涵盖了信号分析、信号处理方法以及系统响应等多个方面。
实验一:信号的基本特性与运算。
学生掌握了信号的表示方法,包括连续时间信号和离散时间信号,以及信号的基本运算规则,如加法、减法、乘法和除法。
实验二:信号的时间域分析。
在本实验中,学生学习了信号的波形变换、信号的卷积以及信号的频谱分析等基本概念和方法,利用MATLAB工具进行了实际的信号处理。
实验三:系统的时域分析。
学生了解了线性时不变系统的动态响应特性,包括零状态响应、阶跃响应以及脉冲响应,并学会了利用MATLAB进行系统响应的计算和分析。
信号与系统实验实验一 常用信号分类与观察一、实验目的1、了解单片机产生低频信号源2、观察常用信号的波形特点及产生方法。
3、学会使用示波器对常用波形参数的测量。
二、实验仪器1、20MHz 双踪示波器一台。
2、信号与系统实验箱一台。
三、实验内容1、信号的种类相当的多,这里列出了几种典型的信号,便于观察。
2、这些信号可以应用到后面的“基本运算单元”和“无失真传输系统分析”中。
四、实验原理对于一个系统特性的研究,其中重要的一个方面是研究它的输入输出关系,即在一特定的输入信号下,系统对应的输出响应信号。
因而对信号的研究是对系统研究的出发点,是对系统特性观察的基本手段与方法。
在本实验中,将对常用信号和特性进行分析、研究。
信号可以表示为一个或多个变量的函数,在这里仅对一维信号进行研究,自变量为时间。
常用信号有:指数信号、正弦信号、指数衰减正弦信号、抽样信号、钟形信号、脉冲信号等。
1、正弦信号:其表达式为)sin()(θω+=t K t f ,其信号的参数:振幅K 、角频率ω、与初始相位θ。
其波形如下图所示:图 1 正弦信号2、指数信号:指数信号可表示为atKe t f =)(。
对于不同的a 取值,其波形表现为不同的形式,如下图所示:图 2 指数信号3、指数衰减正弦信号:其表达式为 ⎪⎩⎪⎨⎧><=-)0()sin()0(0)(t t Ke t t f at ω其波形如下图:图 3 指数衰减正弦信号4、抽样信号:其表达式为: sin ()tSa t t=。
)(t Sa 是一个偶函数,t = ±π,±2π,…,±n π时,函数值为零。
该函数在很多应用场合具有独特的运用。
其信号如下图所示:图4 抽样信号5、钟形信号(高斯函数):其表达式为:2()()tf t Ee-τ= , 其信号如下图所示:图 5 钟形信号6、脉冲信号:其表达式为)()()(T t u t u t f --=,其中)(t u 为单位阶跃函数。
信号与系统实验报告4武汉大学教学实验报告电子信息学院专业年月日实验名称指导教师姓名年级学号成绩一、预习部分1.实验目的2.实验基本原理3.主要仪器设备(含必要的元器件、工具)1.实验目的(1)在理论学习的基础上,通过实验深刻领会周期信号傅里叶级数分解的物理意义。
(2)理解实际应用中通常采用有限项级数来逼近无限项级数,此时方均误差随项数的增加而减小。
(3)观察并初步了解Gibbs 现象。
(4)深入理解周期信号的频谱特点,比较不同周期信号频谱的差异。
2.实验基本原理满足Dirichlet条件的周期信号f(t)可以分解成三角函数形式的傅里叶级表达式为——式中n为正整数,角频率w1由周期T1决定。
该式表明:任何满足Dirichlet 条件的周期信号都可以分解成直流分量及许多正弦、余弦分量。
这些正弦、余弦分量的频率必定是基频f1 的整数倍。
通常把频率为f1的分量称为基波,频率为nf 的分量称为 n 次谐波。
周期信号的频谱只会出现在0 w 2w 3w 4w …nw 等离散的频率点上,这种频谱称为离散谱,是周期信号频谱的主要特点。
F(t) 波形变化越剧烈,所包含的高频分量的比重就越大;变化越平缓,所包含的低频分量的比重就越大。
一般来说,将周期信号分解得到的三角函数形式的傅里叶级数的项数是无限的。
也就是说,通常只有无穷项的傅里叶级数才能与原函数精确相等。
但在实际应用中,显然无法取至无穷多项,而只能采用有限项级数来逼近无穷项级数。
而且,所取项数越多,有限项级数就越逼近原函数,原函数与有限项级数间的方均误差就越小,而且低次谐波分量的系数不会因为所取项数的增加而变化。
当选取的傅里叶有限级数的项数越多,所合成的波形的峰起就越靠近f(t)的不连续点。
当所取得项数N 很大时,该峰起值趋于一个常数,约等于总跳变值的9%,这种现象称为吉布斯现象3.主要仪器设备(1)实验环境Matlab软件环境(2)主要用到的matlab函数Plot:给定相同长度的一维向量,画出以他们为横轴纵轴的平面图Abs:求绝对值Stem:散点图绘图函数Stepfun:阶跃函数Max:返回数组的最大值Sawtooth:三角波函数二、实验操作部分1.实验数据、表格及数据处理2.实验操作过程(可用图表示)3.实验结论1.实验数据表格及数据处理四个实验中得到的图展示如下(1)周期对称方波信号的合成分别用前1,2,5,100项傅立叶级数来合成方波信号时得到的图如下(2)观察Gibbs 现象分别取前10、20、30 和40 项有限级数来逼近奇对称方波,观察Gibbs 现象时得到的图如下(3)周期三角波的合成分别用前1,2,5,100项傅立叶级数来合成方波信号时得到的图如下每幅图中还画出了标准的方波信号作为比较(4)绘制周期信号的频谱分析奇对称方波信号与偶对称三角信号的频谱,编制程序后画出图像如下所示(左上坐下分别为周期三角波及其频谱,右上右下为周期方波及其频谱)2.实验操作过程(1)合成周期方波信号方波既是一个奇对称信号,又是一个奇谐信号。
根据函数的对称性与傅里叶系数的关系可知,它可以用无穷个奇次谐波分量的傅里叶级数来表示选取奇对称周期方波的周期T = 0.02s,幅度E = 6,请采用有限项级数替代无限级数来逼近该函数。
分别取前1、2、5 和100 项有限级数来近似,编写程序并把结果显示在一幅图中,观察它们逼近方波的过程。
(2)观察Gibbs 现象分别取前10、20、30 和40 项有限级数来逼近奇对称方波,观察Gibbs 现象。
程序使用(1)中提供的方法,将循环次数改为相应的值。
(3)合成周期三角波偶对称周期三角信号可以用无穷个奇次谐波分量的傅里叶级数表示,我采用的三角波幅值为1,大小在0和1之间,周期同(1)中的方波,为0.02s分别取前1、2、5 和100 项有限级数来近似,编写程序并把结果显示在一幅图中,观察它们逼近三角波的过程。
(5)绘制周期信号的频谱分析奇对称方波信号与偶对称三角信号的频谱,并把它们画出。
由于matlab内置的fft函数算出的结果对于2个参数非常的敏感——采样频率以及数组的范围,而且fft计算的是有限范围的傅立叶级数,由于舍弃了有限范围以外的所有数据,所以得到的结果也必然不是准确的结果,所以我直接使用公式来计算各个频率点的幅值,然后把幅值画出来。
3.实验结论1.周期方波可以由无限项傅里叶级数来合成,级数越多,合成的波形与原波形就越相似2.如果波形某处出现了跳变,那么用有限多项级数来合成该波形时会出现一个峰起,这个值趋向于跳变值的9%3.周期三角波波可以由无限项傅里叶级数来合成,级数越多,合成的波形与原波形就越相似,而且由于三角波没有跳变,所以不存在吉布斯现象4.偶对称三角波是偶函数,其频率分量包括直流分量,以及奇数倍的余弦分量;奇对称方波是奇函数,只有奇数项正弦分量。
三、实验效果分析(包括仪器设备等使用效果)(1)在实验一中,我尝试用不同项数的傅立叶级数来合成方波,从四幅图中可以看出加入的傅立叶级数越多,其波形与方波的相似度就越高。
当我用前100项来合成时,已经非常逼近方波的波形了,由此我可以做出一个判断,当我加入的傅立叶级数有无穷多时,就可以得到标准的方波。
这样一个过程让我认识到时域的信号可以看做是频域信号的叠加,我们通过傅里叶变换可以把时域信号映射到频域上面去,或许有时候这样做可以使我们获取时域上得不到的信息。
(2)在实验二观察吉布斯现象中,我看到用不同的项数来合成方波时,在突变处会有峰起,这个值在不同的图中似乎都是占据着总幅值的一定比例,理论上这个峰起值为总跳变值的9%。
我对于这个峰起值的想法是这样的——我们用有限多项傅立叶级数来逼近波形时,虽然一步一步的在接近原波形,可是由于我们不可能取无限多项级数,我们总会漏掉一些频率项。
如果说我们的波形有突变,也就意味着这个地方包含了一些高频的因子,而这些高频因子我们不可能全部都包括进来,总会有遗漏,这些遗漏导致了我们合成的波形不能发生很完美的跳变,所以我们会看到这个9%的差距。
(3)在实验三中,我画出了标准的三角信号,从而与合成的信号作比较,我画出标准三角信号是采用了三角波函数sawtooth。
从四幅图可以看出,尽管取更多的级数时合成波形愈加的趋向于标准波形,可是还是有一些偏差的,特别是在拐角处。
虽然这个波形没有突变值,可是在拐角处我认为还是包含了一些高频分量的,而我们没有把所有的分量纳入合成波中,所以我认为这正是偏差的原因所在。
(4)实验四中观察频谱可以发现,偶对称三角波是偶函数,其频率分量包括直流分量,以及奇数倍的余弦分量。
没有正弦分量的原因是因为它是偶函数,而他没有偶数倍分量的原因是化简后可以看出当n为偶数时该项为0。
奇对称方波是奇函数,这导致他没有直流分量和余弦分量,而化简后可以看出当n为偶数时这一项也是等于0,所以他只有奇数项正弦分量。
另外,这两种波一个共同的特点是他们的前几项的频率分量都很大,集中了大部分的能量,我的图中只画出了前15项级数,因为再往后的话,他们的幅值就非常的小了。
(5)通过这次的实验,我最大的感觉是上学期在信号与系统课堂上学习的东西好像“活过来了”,上学期虽然知道时域的信号可以转换到频域上面去,但是却从没像今天这样真实的体会到这样的转换有什么用。
当我看到方波三角波在频域上的分布能量集中在几个频率点时,我觉得或许在信号传输的时候我们可以只传输这些频率的信号,一来可以节省信道,二来也不会丢失太多的信息。
四、教师评语指导教师年月日附件——matlab源文件实验三%周期三角信号的傅里叶级数%author郑程耀clear all;clc;t=0:0.00001:0.04;period=0.02;%周期amplitude=1;%振幅AC_coe=(4*amplitude)/(pi^2);%交流分量的系数DC_coe=amplitude/2;%直流分量的系数fre_w=(2*pi)/period;%圆频率p=[1 2 5 100];%t_z=0:0.01:t(end); %最简单的三角波z=abs(sawtooth(t*(pi/period), 0.5)); %figurefor ind_p=1:length(p)y=DC_coe;for k=1:p(ind_p)y=y+DC_coe*cos((2*k-1)*fre_w*t)/(2*k-1)^2; endsubplot(2,2,ind_p)plot(t,y)hold onplot(t,z,'r')axis([0,0.04,-0.5,1.5]);xlabel('time');ylabel(strcat('前',num2str(p(ind_p)) ,'项有限级数')); end实验四%直接用公式计算各频率分量的振幅,并将他们画出来%周期三角信号,方波信号的傅里叶级数%author:郑程耀clear all;clc;period=0.02;%周期t=0:0.00001:0.04;N=15;fre_n=1:2:2*N-1;fre_n=[0 fre_n];amplitude=1;%振幅AC_coe=(4*amplitude)/(pi^2);%交流分量的系数DC_coe=amplitude/2;%直流分量的系数amplitude_w=DC_coe;for k=1:length(fre_n)-1amplitude_k=AC_coe/(2*k-1)^2;amplitude_w=[amplitude_w amplitude_k]; endfiguresubplot(223)stem(fre_n,amplitude_w,'*')axis([-5 fre_n(end) 0 max(amplitude_w)*1.1]) title('三角波频谱')xlabel('w')ylabel('幅值')%三角波波形z=abs(sawtooth(t*(pi/period), 0.5)); % subplot(221)plot(t,z,'r')title('三角波波形')xlabel('time')ylabel('amplitude')%周期方波信号傅里叶级数amplitude=6;%振幅AC_coe=2*amplitude/pi ;%交流分量的系数DC_coe=0;%直流分量的系数amplitude_w=zeros(1,length(fre_n)); amplitude_w(1)=DC_coe;for k=1:length(fre_n)-1amplitude_k=AC_coe/(2*k-1);amplitude_w(k+1)=amplitude_k;endsubplot(224)stem(fre_n,amplitude_w,'*')axis([-5 fre_n(end) 0 max(amplitude_w)*1.1]) title('方波频谱')xlabel('w')ylabel('幅值')%方波波形subplot(222)z_s=3*stepfun(t,0)-6*stepfun(t,0.01)+6*stepfun(t ,0.02)-6*stepfun(t,0.03)+3*stepfun(t,0.04);plot(t,z_s)title('方波波波形');axis([0 0.04 -3.5 3.5])xlabel('time')ylabel('amplitude')。