信号与系统课程设计用MATLAB模拟方波信号的分解与合成

信号与系统课程设计用MATLAB模拟方波信号的分解与合成
信号与系统课程设计用MATLAB模拟方波信号的分解与合成

信号与线性系统

课程设计

题目

学号姓名学号姓名学号姓名学号姓名

院系

年级

专业

日期

摘要

利用MATLAB对周期为T

的方波信号进行傅里叶级数展开,并绘制离散幅度

谱和不同次谐波叠加后的图形。通过观察绘制的各个图像,加深对傅立叶变换和信号的分解与合成的理解。

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 +式中各项系数为:?=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()(20

1?=ω 当f(t)为一周期性方波(幅度为U m ),其傅里叶级数展开为;

由以上分析可知,如果已知周期信号f(t),就可以求出不同频率的正弦分量。反之,如果已知一系列不同频率的正弦分量,则可在一定幅度关系和一定相位关系的要求下,合成一个周期信号。

2.通过一个选频网络可以将电信号中所包含的某一频率成分提取出来。将周期信号加到并联的有源带通滤波器的输入端,如果选用5个通过频率分别为ω1到5ω1的有源带通滤波器,则在各滤波器的输出端可以看到被分解的周期信号

的基波到5次谐波。将上述各次谐波通过一个同向加法器,这时在输出端得到的是这5个谐波分量的合成信号,因为没有高于5次以上的各次谐波分量,所以合成波形和分解前的信号波形相比,会有失真。而本次课程设计就是基于MATLAB 的通信系统仿真,用软件模拟出信号的分解与合成的过程。 三、设计内容

1.用MATLAB 实现方波信号的分解与合成

2.观察各次谐波叠加后的波形,与原方波波形进行对照比较

对周期为T 0的方波信号进行傅里叶级数展开,信号可表示为

起傅里叶级数系数为

[]01011102112220

T nT j T nT j T T t T n j n e e n j dt e T x ππππ--==---?= ()()01100

10110sin sin f nT c T f f nT f nT T f =ππ 由于方波信号x(t)为实值周期函数,且为偶函数,所以傅里叶级数n x 为实数。由此得到三角函数形式的傅里叶级数展开的系数为

周期信号的三角函数形式的傅里叶展开为

绘制离散幅度谱和谐波叠加的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) ;

t=[(t1-T0)';(t2-T0)';t1';t2';(t1+T0)'];

n1=length(t1);

n2=length(t2);%根据方波信号函数周期,计算点数

f=[ones(n1,1);zeros(n2,1);ones(n1,1);zeros(n2,1);ones(n1,1)];%构造方波信号

y=zeros(m+1,length(t));

y(m+1,:)=f;

figure(1);

plot(t,y(m+1,:));%绘制方波信号

axis([-(T0+T1/2)-0.5,(T0+T1/2)+0.5,0,1.2]);

set(gca,'XTick',[-T0,-T1/2,T1/2,T0]);

set(gca,'XTickLabel',{'-T0','-T1/2','T1/2','T0'});

title('方波信号');

grid;

a=T1/T0;

pause;%绘制离散幅度谱

freg=(-20:1:20);

mag=abs(a*sinc(a*freg));

stem(freg,mag);

x=a*ones(size(t));

for k=1:m%循环显示谐波叠加图形

pause;

x=x+2*a*sinc(a*k)*cos(2*pi*t*k/T0);

y(k,:)=x;%计算叠加和

plot(t,y(m+1,:));

hold on;

plot(t,y(k,:));%绘制各次叠加波形

hold off;

grid;

axis([-(T0+T1/2)-0.5,(T0+T1/2)+0.5,-0.5,1.5]);

title(strcat(num2str(k),'次谐波叠加'));

xlabel('t');

end

pause;

plot(t,y(1:m+1,:));

grid;

axis([-T0/2,T0/2,-0.5,1.5]);

title('各次谐波叠加');

xlabel('t');

四、实验结果

方波的离散频谱

方波只含有奇次谐波,1、3、5、7、9各次谐波叠加后的波形逐渐接近方波,但还是有失真,可以看出方波是由无数正弦波合成的,叠加的正弦波越多,波形越接近方波。

五、小结

在进行课程设计过程中,我们进一步加深了对信号分解与合成的理解,充分运用所学知识和MATLAB实现设计目的,但依然有所欠缺,在理论运用到实际时,对信号分解与合成的掌握不够彻底,运用不够娴熟。

六、致谢

感谢在设计过程中帮助过我们的老师、同学,感谢在设计过程中尽心尽力的团队成员。

七、参考文献

1.赵静,张瑾,高新科. 基于MATLAB的通信系统仿真. 北京航空航天大学出

版社,2007

2.吴祖国,孙学平,王霞,张保华. 电路、信号与系统实验教程. 武汉大学出

版社,2014

3.郑君里,应启珩,杨为理. 信号与系统. 高等教育出版社,2011

相关主题
相关文档
最新文档