基于MATLAB的通信原理仿真实验平台.docx
《基于MATLAB的通信原理仿真实验平台.docx》由会员分享,可在线阅读,更多相关《基于MATLAB的通信原理仿真实验平台.docx(43页珍藏版)》请在冰豆网上搜索。
基于MATLAB的通信原理仿真实验平台
本科毕业论文
论文题目:
基于MATLAB的通信原理仿真实验平台
院系:
专业名称:
学号:
学生姓名:
指导教师:
二〇一五年五月
毕业设计(论文)诚信声明书
本人声明:
本人所提交的毕业论文《基于MATLAB的通信原理实验原理仿真平台》是本人在指导教师指导下独立研究、写作的成果,论文中所引用他人的文献、数据、图件、资料均已明确标注;对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式注明并表示感谢。
本人完全意识到本声明的法律后果由本人承担。
论文作者:
(签字)时间:
2015年5月6日
指导教师已阅:
(签字)时间:
2015年5月6日
中文摘要
随着当代的快速发展,通信技术在我们的生活中扮演者越来越重要的角色,我们的生活中也越来越离不开通信,毋庸置疑通信技术已经成为了你我生活中必不可少的一部分。
专业为电子技术的学生对通信技术的学习掌握也就越来越显得重要,因为这不仅是自己本专业的需求更是社会的需求。
在对通信原理教材有了一定的学习后,我掌握了通信的一些基础性知识,但是很少进行仿真实验。
本论文中着重介绍基于MATLAB的通信原理实验仿真平台,以便我们对通信原理的基础知识有着更加深入的理解,便于以后更加深入的学习通信技术,本文中重点讲述了利用MATLAB软件设计通信原理仿真实验平台的基本原理及其功能,在MATLAB软件提供的图形用户界面GUI中设计出了多个实验仿真界面,仿真出了通信原理的多个基础实验内容,便于我们更加清晰的对通信原理基础知识有着深入的了解。
MATLAB中GUI设计出的通信原理实验仿真平台的界面设计简单,结构一体化,让操作者一目了然,对通信原理的知识具有很强的演示性,操作简单方便,以图形及动态仿真演示了通信原理中相关知识中抽象的内容及波形,便于我们理解通信原理中相关知识点,提高学习效率。
本论文文中介绍了模拟线性调制、模拟信号波形编码、数字信号基带传输、数字信号的调制传输等相关内容,并在MATLAB软件GUI中设计出了相关知识点的仿真实例,大体上分为上述四个模块来对通信原理知识进行仿真,无疑会有利于我们对通信原理的知识有着更深入的理解。
关键词:
通信原理;MATLAB;仿真;GUI设计。
ABSTRACT
Withtherapiddevelopmentofmoderntechnology,Communicationtechnologyplaysamoreandmoreimportantroleinourlife,ourlifeisbecomingmoreandmoreinseparablefromthecommunication,andatthesametimeitisundoubtedthatcommunicationtechnologyhasbecomeanindispensablepartoftheyouinmylife.Todayitismoreandmoreimportantforthosestudentswhosemajorareelectronicinformationtechnologytomastertheknowledgeaboutcommunicationtechnology.Notonlyitistheirprofessionrequirebutalsothedemandofoursociety.Afterlearningthetextbookaboutcommunicationprinciple,Iknowsomebasicknowledgeaboutcommunication,butIseldomhaveasimulationexperimentaboutit.Thisthesiswillfocusesonthecommunicationprinciplebasedonthematlab graphical interactive experiments platform(MATLABGUI),sothatwecanhaveain-deepunderstandaboutthebasicknowledgeofcommunicationprinciple,itwillfacilitateourfurtherstudyaboutonthecommunicationtechnology.ThisarticleemphasizehowtouseofMATLABsoftwaretodesignthebasicprincipleofsimulationexperimentplatformanditsfunctionbasedoncommunicationprincipleknowledge.IdesignmultipleinterfaceintheMATLABsoftwarewhichprovidesagraphicaluserinterfaceGUI.ThatMATLABGUIprojectaboutcommunicationprinciplewillhelpushaveadeepunderstandwhatwehavelearnedthebasicknowledgeaboutcommunicationprinciple.MATLABinterfacedesign ofGUI communication principleexperimentsimulationplatform hastheadvantagesofsimple structure, integration,allowstheoperatortostickoutamil-eoftheprincipleofthecommunicationofknowledge,andithasdemonstratedstrong, simpleandconvenientoperation, the simulationdemo graphicsand dynamic contentand waveform ofabstract principleofcommunication knowledge, facilitateourunderstandingof therelevantknowledgeand theprincipleofcommunication,improvethelearningefficiency.
Thispaper introducesthe linearanalog modulation, analogsignalwaveformcoding, thebasebanddigitalsignaltransmission, digital signalmodulationand transmission andotherrelatedcontent, andtheMATLABsoftwareGUI designeda simulationexample ofknowledgepoints, dividedinto thefourmodules of communication principleofknowledge simulation.Undoubtedly thatplatformwillhelpushaveamorein-depthunderstandingof ourknowledgeabouttheprinciplesofcommunication.
Keyword:
communicationprincipleMATLABGUIsimulation
前言
21世纪人类无疑已经进入了信息化时代,信息的传输无疑成为当今社会的重中之重,通信技术便由此而生,在当今高度信息化得社会,信息和通信已经成为现代社会的“命脉”,更是成为推动经济的新引擎。
掌握了通信相关的技术对以后无疑会有广阔的前景。
信息作为一种资源,只有通过广泛的传播与交流,才能产生利用价值,促进社会成员之间的合作,推动社会生产力的发展,创造出巨大的经济效益。
通信在现在社会生活中的各个方面都有着非常广泛的应用,现在的手机通信、光纤通信、无线通信、卫星通信等领域都是对通信技术的应用,可以说通信技术有着广阔的前景。
对于一个专业为信息科学与电子技术专业的学生来说,熟练的掌握通信原理的基础知识就显得尤为重要。
对通信原理的学习中,肯定是离不开通信原理的一些实验的,但是有时候由于实验室条件有限,还有一些硬件设备损坏等原因使得相关实验难以实现,MATLAB是美国MathWorks公司开发的一款优秀软件,它成功的解决了这一问题,同时它也广泛的应用于自动控制、数学计算、信号分析、信号处理等诸多领域,也是国内高校和研究部门进行许多科学研究的重要工具。
MATLAB的出现给通信系统的分析提供了极大的方便。
更是对我们学习通信的初学者提供了一个非常好的实验平台,利用MATLAB我们可以对通信中的相关知识进行仿真设计,使相关知识点可视化,加深我们对其理解。
MATLAB中有基于simulink的仿真平台和基于GUI的仿真平台。
simulink中是基于一些模块的连接并设置好模块中的参数来达到仿真的目的,类似于实验室中的具体硬件电路实验;而MATLABGUI中是在相应的回调函数下写下相关程序代码来达到实验仿真的目的。
这两个仿真平台各有特色,本文中是利用MATLABGUI来设计基于通信原理实验的仿真平台,设计的可视化界面结构简单,可以将通信原理相关知识点一体化于这一个系统中,中间用界面切换来改变界面,并仿真不同的知识点。
本论文中在GUI主界面中我总共设计了四大模块,及模拟线性调制、模拟信号波形编码、数字信号基带传输、数字信号的调制传输。
通信原理的仿真实验就是基于这四大模块来展开的,由于时间有限、自己的水平有限等相关原因,有些仿真实验部分不够完善,以后定会更加深入的分析并不断优化自己的相关知识。
还有就是这里由于篇幅有限,我只是对通信原理中部分知识做了仿真设计,还有一部分知识在这里没有涉及到,但那些知识也是通信原理中非常重要的基础知识,同样可以在仿真平台中实现,这里我就不一一阐述。
本论文注重MATLAB中图形界面的仿真设计,所有模块都是基于一个工程下完成,具有较好的演示效果。
1、设计软件介绍
1.1MATLAB简介
Matlab是由美国MathWorks公司于1984年推出的一套高性能的数值计算可视化软件,它集数值分析、矩阵运算、信号处理和图形显示于一体,被称为第四代计算机语言,是目前国际上最流行、应用最广泛的科学与工程计算软件,具有强大的计算、仿真、绘图等功能。
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。
其是由美国MathWorks公司发布的主要用于科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
Matlab中包括被称作工具箱的各类应用问题的求解工具。
工具箱实际上是对Matlab进行扩展应用的一系列Matlab函数(即M文件),可以用来求解各类学科的问题,包括控制系统识别、神经网络、图像处理、信号处理等。
随着Matlab版本的不断升级,其所含的工具箱的功能越来越丰富,应用范围也越来越广泛。
它具有运算符丰富、程序环境高级并且简单、设计自由、可移植性好、图形功能强大、使用方便灵活、具有强大的工具箱、源程序开放等优点,现被广泛应用于自动控制、航天工业、汽车工业、生物医学工程、语音处理和雷达工程等行业,也是国内外高校和研究部门进行许多科学研究的重要工具。
目前许多大学的实验室都安装有Matlab供学习和研究之用。
Matlab在科研和高校基础课教学中具有明显优势,是理工科大学生必不可少的工具。
1.2MATLABGUI简介
Matlab以其强大的科学计算及图像生成功能著称,它同时也提供了图形用户界面的设计和开发功能。
GUI即图形用户界面,是GraphicalUserInterface简称,又称图形用户接口。
它包含图形对象,如窗口、图标、菜单和文本的用户界面,是用户和计算机之间交流的工具。
Matlab7.1为了方便制作图形用户界面GUI,提供了一个交互式的设计工具GUIDE。
通过GUIDE可以很方便地设计出各种符合要求的图形用户界面。
用户通过一定的方法如鼠标、键盘等选择、激活这些图形对象,使计算机产生某种动作或者变化(比如计算、绘图等)。
GUI设计既能以Matlab程序设计为主,也能以鼠标为主,利用GUIDE工具进行设计,也可以结合以上两种方法进行设计。
Matlab将所有GUI支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。
GUIDE将用户保存设计好的图形用户界面保存在一个FIG资源文件中,FIG文件是一个二进制文件,包含系列化的图形窗口对象,所有对象的属性都是用户创建图形窗口时保存的属性,该文件最主要的功能是对象句柄的保存。
同时自动生成包含图形用户界面初始化和组件界面布局控制代码的M文件,这个M文件为实现回调函数的编写提供了一个参考框架。
M文件包含GUI设计、控制函数及控件的回调函数,主要用来控制GUI展开时的各种特征。
M文件基本上可以分为GUI初始化和回调函数2个部分,控件的回调函数可根据用户与GUI的具体交互行为分别调用。
用户界面的重要性在于它极大地影响了最终用户的使用,影响了计算机的推广使用,甚至影响到人们的工作和生活。
由于开放用户界面的工作量极大,加上不同用户对界面的要求不尽相同,因此,用户界面已成为计算机软件研制中最困难的部分之一。
当前,Internet的发展异常迅猛,虚拟现实、科学计算可视化及多媒体技术等对用户界面提出了更高的要求。
GUI的广泛流行是当今计算机技术的重大成就之一,它以友好性、直观性、易懂性在软件编程上被广泛使用。
2、GUI仿真平台整体构建方案
2.1GUI总体系统结构
基于Matlab其强大的功能,利用MatlabGUI工具箱可以设计和实现通信原理课程中相关知识点内容的交互式实时动态演示仿真系统。
通信原理的内容较为庞杂,所涉及的知识面也比较广泛,本文选取通信原理中4个基础知识模块进行分析和设计,分别为:
模拟线性调制解调系统、模拟信号波形编码、数字信号基带传输、数字信号调制传输。
每个知识模块又可划分为几个小知识模块。
其中,模拟线性调制解调系统包括调幅信号(AM)的调制解调、抑制载波双边带信号(DSB)的调制解调、单边带信号(SSB)的调制解调。
模拟信号波形编码包含了抽样、量化、编码3个子模块。
数字信号的基带传输包含了二元码、三元码、眼图3个子模块。
数字信号调制传输系统包含了2ASK调制解调、2FSK调制解调、2PSK调制解调3个子模块。
系统总体结构如下图2-1所示。
通信原理仿真实验总体设计框图2-1
2.2GUI可视化界面设计
2.2.1通信原理GUI设计系统流图
在GUI可视化界面设计的基本原则简单些、一致性、习惯性等基础上根据系统流图设计GUI界面。
设计的系统流图如下2-2所示:
GUI系统流图2-2
2.2.2GUI系统主界面图
根据要求设计出的基于MATLAB的通信原理实验仿真GUI平台的主界面如下图2-3所示,为了增加界面的美观性在显示界面中加入了一张图片,界面的左上角设置了四个上拉菜单,每个菜单下面还有一些子菜单,界面中还设置了一个退出按键,便于我们退出主界面。
批
GUI主界面2-3
2.2.3GUI系统主界面设计介绍
在MATLAB主窗口中输入guide或者是在file下的new菜单中选择gui就可以打开GUIDEQuickStart界面,选择CreatNewGUI(新建一个GUI),并选择好保存路径,在GUI窗口中加入一个坐标轴,一个按键,两个文本框,设置成如图1-3左边图形,在菜单编辑窗口中设置菜单选项如图2-4所示,设置四个主菜单选项并在Label下修改其名称,再在相应主菜单下设置子菜单,确定后就可以得到主界面中相应的菜单选项。
菜单设置2-4
主界面中退出按键、图像显示、界面切换等功能都要在相应的回调函数中编写程序来实现其相应的功能。
图片显示:
为了使主界面美观可以在主界面上添加图片。
实际上就是将图片显示在axes中。
首先我们要知道图片的像素,然后调整好axes的尺寸来与图片相适应,具体方法为:
例如图片像素为800×500时,双击axes,在弹出的属性查看器中将Units设置为pixels(像素),将Position属性中的Width和Height分别设置为800和500。
然后再编辑对应的M文件,在M文件中的OpeningFcn函数下面添加如下代码:
backgroundImage=importdata(‘D:
\2015毕业论文设计\MATLAB仿真\tu.bmp’);%将背景图像载入MatlabGUI中
axes(handles.axes1);%选择坐标系1
image(backgroundImage);%将图片添加到坐标系中
axisoff;%去掉坐标系的坐标轴标签
保存后,打开主界面运行后就可以在可视化窗口中显示图片。
退出按键功能显示:
在退出按键上点击右键,点击ViewCallbacks下的Callback即可进入退出按键的回调函数下,在其回调函数下添加如下代码:
Close(gcbf);%关闭主界面
quit;%退出系统
保存后,运行下在演示窗口中点击退出按键即可退出系统。
界面切换功能:
在主界面中要用到界面切换功能,点击相应的菜单选项要能切换到相应的GUI子界面中,如点击主界面中的模拟线性调制菜单选项就要进入模拟线性调制的子界面中在进行相关内容的仿真实验。
这里就学要在菜单编辑框中进入相应菜单下的Callback(回调函数)中编写相关程序,如模拟线性调制的界面切换程序如下:
h=gcf;%主界面参数传递给h
xu1;%显示模拟线性调制的GUI模块
close(h);%关闭主界面显示
保存后,运行后在主界面窗口中点击模拟线性调制菜单就可以切换到相应的子界面中。
其他几个菜单选项的界面切换与上面的类似。
3、通信原理仿真实验内容
3.1模拟线性调制
这里主要讲述一下模拟调制中的幅度调制及解调的原理和方法,仿真模块放在下一节中讲述,模拟线性调制为通信原理中较为重要的基础部分,对其深入的掌握有利于后面数字信号调制知识的学习。
模拟线性调制解调我们都采用相干解调。
3.1.1AM调制解调
调制信号s(t):
m(t)=A(t)cos[wt+ɵ(t)]
AM是指对信号进行幅度调制。
一般做法就是先在原信号上叠加一个直流信号,以保证信号m(t)+A0>0然后乘上一个高频的余弦信号,即得到AM调制信号:
频域表示式:
当满足条件
时,已调信号的包络与调制信号成正比,用包络检波的方法很容易恢复出原始的调制信号。
如果上面条件得不到满足,就会出现过调幅现象,这时就不能用包络检波的方法进行解调,否则结果就会失真。
这里我们采用相干解调。
相干解调的关键是必须产生一个同频同相的载波,AM调制解调的原理框图如下所示:
3.1.2DSB调制解调
在幅度调制的一般模型中,假设滤波器为全通网络(
=1),调制信号
中无直流分量,则输出的已调信号就是无载波的双边带信号或称抑制载波双边带(DSB-SC)调制信号,简称双边带(DSB)信号。
DSB调制器模型如下图3.1-1所示。
可见DSB信号实质上就是基带信号与载波直接相乘,其时域和频域表示式分别为:
DSB信号的包络不再与
成正比,故不能进行包络检波,需要采用相干解调;除不再含有载频分量离散谱外,DSB信号的频谱与AM信号的完全相同,仍由上下对称的两个边带组成。
故DSB信号是不带载波的双边带信号,它的带宽与AM信号相同,也为基带信号带宽的两倍。
DSB信号只能用相干解调,其模型与AM信号相干解调时完全相同。
此时,乘法器输出。
经低通滤波器滤除高次项,得
即无失真地恢复出原始电信号。
图3.1-2DSB的调制解调系统框图
3.1.3SSB调制解调
由于DSB信号的上、下两个边带是完全对称的,都携带了调制信号的全部信息,因此,从信息传输的角度来考虑,仅传输其中一个边带就够了,即为单边带。
产生SSB信号的方法很多,其中最基本的方法有滤波法和相移法。
(1)用滤波法形成SSB信号用滤波法实现单边带调制的原理框图如图3.1-3所示,图中的
为单边带滤波器。
产生SSB信号最直观方法的是,将
设计成具有理想高通特性
或理想低通特性
的单边带滤波器,从而只让所需的一个边带通过,而滤除另一个边带。
产生上边带信号时
即为
,产生下边带信号时
即为
。
图3.1-3SSB信号的滤波法产生
SSB信号的频谱可表示为:
(2)用相移法形成SSB信号
SSB信号的时域表示式为:
用相移法形成单边带信号原理框图如下图3.1-4所示。
图中,
为希尔伯特滤波器,它实质上是一个宽带相移网络,对
中的任意频率分量均相移
图3.1-4相移法形成SSB信号的模型
SSB解调:
从SSB信号调制原理图中不难看出,SSB信号的包络不再与调制信号
成正比,因此SSB信号的解调也不能采用简单的包络检波,需采用相干解调。
如图3.1-5所示
图3.1-5SSB信号的相干解调
乘法器输出
经低通滤波后的解调输出为:
因而便可得到无失真的调制信号。
3.1.4模拟线性调制GUI模块设计
在新建的GUI文件xu1内添加7个按键,并设置好按键名称,双击按键pushbutton在其属性中将String改为相应要显示的字符串,再将FontSize(字体大小)设置为18即设置好了按键,还要加入两个坐标轴显示,一个静态文本编辑框,并在其内添加“模拟线性调制”内容,设置成如下所示的图3.1-6编辑界面,运行后可以得到如图3.1-7所示的演示界面。
图3.1-6图3.1-7
图3.1-7所示的演示界面可以由主界面菜单按键下的模拟线性调制菜单键进行界面切换得到,同理,这里也需要设置一个返回主界面按键。
要实现返回功能就必须在此按键的callback(回调函数)下编写相关程序,其程序如下:
button=questdlg(’是否确认返回’,’关闭返回’,’是’,’否’,’是’);
ifstrcmp(button,’是’)
h=gcf;