信号与系统课程设计-用MATLAB模拟方波信号的分解与合成
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号与线性系统
课程设计
题目
学号姓名学号姓名学号姓名学号姓名
院系
年级
专业
日期
摘要
利用MATLAB对周期为T0的方波信号进行傅里叶级数展开,并绘制离散幅度谱和不同次谐波叠加后的图形。通过观察绘制的各个图像,加深对傅立叶变换和信号的分解与合成的理解。
Abstract
Expanded the square wave signal with periodic T0 to Fourier series by MATLAB , and drew the discrete spectrum and plot the patterns after different sub harmonics are superimposed. Through the observation of each image, deepen the understanding of the Fourier transform and signal decomposition and synthesis.
关键词:矩形信号傅里叶级数谐波叠加分解与合成
Keywords: Squarewave signal.Fourier series.
Harmonic superposition. Decomposition and synthesis
一、设计目的和要求
本设计主要利用MATLAB绘制信号的离散幅度谱和各次谐波叠加后的波形,通过观察谐波展开次数增加后的波形,进一步掌握信号分解与合成的原理。
培养运用所学知识分析解决问题的能力。
掌握用MATLAB实现通信系统仿真实验的能力。
这里要做一个信号的分解与合成的仿真系统,利用matlab软件的仿真模拟能力来体现信号的分解与合成过程中出现的情况。
MATLAB(矩阵实验室)是MATrix LABoratory的缩写,是一款由美国
The MathWorks公司出品的商业数学软件。MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。除了矩阵运算、绘制函数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C++和FORTRAN)编写的程序。
尽管MATLAB主要用于数值运算,但利用为数众多的附加工具箱(Toolbox)它也适合不同领域的应用,例如控制系统设计与分析、图像处理、信号处理与通讯、金融建模和分析等。另外还有一个配套软件包Simulink,提供了一个可视化开发环境,常用于系统模拟、动态/嵌入式系统开发等方面。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
研究型,参数function rectexpd(T1,T0,m )
%方波信号分解与合成
%T1:方波信号区间为(-T1/2,T1/2)
%T0:方波信号周期
%m:傅里叶级数展开项次数
设计期望:希望通过这次课程设计能够更深入的理解信号的分解与合成的原理,能够在实验的过程中对matlab软件有更多的了解与运用,锻炼自己对matlab 仿真系统的掌控。希望实验结束后能熟练的运用matlab软件模拟各种实验与仿真模拟系统。
1.任何信号都是由各种不同频率、幅度和初相的正弦波叠加而成的。由周期信号的傅里叶级数展开式可知,各次谐波的频率为基波频率的整数倍。而非周期信号包含了从零到无穷大的所有频率成分,每一频率成分的幅度均趋向无限小,但其相对大小是不同的。
设有周期信号为:f(t)=f(t+nT ) (n=0,1,2,…) 式中 T 为信号的重复周期;t 为时间变量
由信号分析理论可知,若f(t)满足狄义赫利条件,则可将它展开为傅里叶级
数,即:f(t)=0a +)]sin()cos([111t n b t n a N
n n n ωω∑=+式中各项系数为:⎰=T
dt t f T a 00)(1
dt t n t f T a T
n )cos()(201⎰=ω dt t n t f T b T
n )sin()(2
1⎰=ω
当f(t)为一周期性方波(幅度为U m ),其傅里叶级数展开为;
()⎥⎦
⎤
⎢⎣⎡+++=
...)sin(51)sin(31sin 4)(111t n t n t n U t f m ωωωπ 由以上分析可知,如果已知周期信号f(t),就可以求出不同频率的正弦分量。反之,如果已知一系列不同频率的正弦分量,则可在一定幅度关系和一定相位关系的要求下,合成一个周期信号。
2.通过一个选频网络可以将电信号中所包含的某一频率成分提取出来。将周期信号加到并联的有源带通滤波器的输入端,如果选用5个通过频率分别为ω1到5ω1的有源带通滤波器,则在各滤波器的输出端可以看到被分解的周期信号的基波到5次谐波。将上述各次谐波通过一个同向加法器,这时在输出端得到的是这5个谐波分量的合成信号,因为没有高于5次以上的各次谐波分量,所以合成波形和分解前的信号波形相比,会有失真。而本次课程设计就是基于MATLAB 的通信系统仿真,用软件模拟出信号的分解与合成的过程。
1.用MATLAB 实现方波信号的分解与合成
2.观察各次谐波叠加后的波形,与原方波波形进行对照比较 对周期为T 0的方波信号进行傅里叶级数展开,信号可表示为
1010,)(T T T nT t t x n >⎪⎪⎭
⎫ ⎝⎛-∏=
∑∞
-∞= 起傅里叶级数系数为
[]
0101110
21
12
2
20
T nT j T nT j T T t T n j n e e n
j dt e
T x πππ
π--=
=
---⎰
=
()()01100
1011
0sin sin f nT c T f f nT f nT T f =ππ 由于方波信号x(t)为实值周期函数,且为偶函数,所以傅里叶级数n x 为实数。由此得到三角函数形式的傅里叶级数展开的系数为 ()0
1011
0sin 2f nT f nT T f a n ππ= 0=n b
()0
1011
0sin 2f nT f nT T f c n ππ= πθ,0=n 周期信号的三角函数形式的傅里叶展开为
()()()001011012cos sin 2T tn n f T c f T f T t x n π∑∞
=+=
绘制离散幅度谱和谐波叠加的MATLAB 实现如下: function rectexpd(T1,T0,m ) %方波信号分解与合成
%T1:方波信号区间为(-T1/2,T1/2) %T0:方波信号周期 %m:傅里叶级数展开项次数 t1= -T1/2:0.01:T1/2 ; t2=T1/2:0.01:(T0-T1/2) ;