2011届学士学位论文Matlab在通信原理中的应用学院、专业物理与电子信息学院电子信息工程研究方向通信与信息系统学生姓名学号指导教师姓名指导教师职称讲师2011年4月29日matlab在通信原理中的应用IIMatlab在通信原理中的应用摘要Matlab是集数值计算,图形绘制,图像处理及系统仿真等强大功能于一体的科学计算语言。随着Matlab与Simulink通信,信号处理专业函数库和专业工具箱的成熟,它们在通信理论研究,算法设计,系统设计,建模仿真和性能分析等方面的应用也越来越广泛。本文首先介绍了Matlab软件和通信原理的相关知识,而后主要利用了Matlab图形绘制和系统仿真功能,通过引用实例的方式介绍了Matlab在通信原理中的应用:符号微积分运算、绘周期波的频谱、模拟调制、数字调制,眼图观察,simulink仿真正弦信号。关键词Matlab;通信原理;通信系统;Simulinkmatlab在通信原理中的应用IIITheapplicationofMATLABincommunicationtheoryAbstractMatlabisonekindofscientificcomputinglanguageswhichsetsomestron-gfunctionssuchasnumericalcalculation,graphicsrendering,imageprocessing,systemsimulationandsoonintheintegration.WithMatlabandsimulinkcommunications,sig-nalprocessingprofessionalfunctionlibraryandprofessionaltoolboxbeingmature,theybecomemoreandmorewidelyappliedincommunicationtheoryresearch,algorit-hmdesign,systemdesign,modelingsimulationandperformanceanalysis.ThispaperfirstlyintroducestheMatlabsoftwareandcommunicationtheory,thenitintroducestheapplicationofMatlabincommunicationtheorybyquotingexam-ples.ItmainlyusesMatlabgraphicsandsystemsimulationfunctionsuchassymbolcalculusoperations,drawingspectrumofperiodicwave,simulatedmodulation,digitalmodulation,eyechatobservationandsimulinkingsinesignal.KeywordsMatlab;communicationtheory;communicationsysterm;Simulinkmatlab在通信原理中的应用IV目次1引言............................................12Matlab简介......................................22.1Matlab的发展史..............................22.2Matlab软件的组成.............................22.3Matlab的功能与特点...........................42.4Simulink的简介...............................43通信原理简介....................................63.1通信的概念....................................63.2通信系统模型..................................64Matlab在通信原理中的应用........................84.1Matlab的符号积分运算.........................84.2用Matlab绘出周期波的频谱.....................94.3模拟调制.....................................124.4数字调制.....................................174.5观察眼图.....................................234.6Simulink仿真.................................27结论..............................................28参考文献..........................................29致谢..............................................30matlab在通信原理中的应用11引言现代社会中通信系统功能越来越强,性能越来越高,构成越来越复杂,通信原理理论知识也在逐渐得到完善和深化,另一方面,要求通信系统技术研究和产品的开发周期缩短、成本降低、水平提高。这样尖锐对立的两个方面,只有通过使用强大的计算机辅助分析设计工具才可以实现。而大量优秀的计算机仿真软件的研究成功,对通信原理的发展起到了极大的推动作用。我们所学的《通信原理》是一门理论性与实践性都很强的专业基础课,它主要讲述了模拟和数字通信系统的基本原理,在专业课程体系结构中起着非常重要的作用。然而《通信原理》这门课非常抽象,许多问题都需要在并不熟悉的频率域内进行分析、推理,算式较多。若将Matlab融入其中,可简化计算过程,把计算结果以图的形式形象的显示出来,同时在通信系统的设计与仿真中,一些常用的模型都可以在Matlab中找到相应的函数或函数的组合加以求解,使用户能够轻松地进行通信方面的分析与处理,用户也可以自己编程解决问题。本文首先介绍了Matlab和通信原理的相关知识,而后介绍了Matlab在通信原理中的应用,通过引例我们会感受到Matlab在通信原理中的强大作用,而且能够发现Matlab应用于通信原理这一领域的良好的发展前景。matlab在通信原理中的应用22Matlab简介2.1Matlab的发展史[1]Matlab由Matrix(矩阵)和Laboratory(试验室)俩词的前3个字母组合而成。20世纪70年代后期,时任美国新墨西哥大学计算机系主任的CleveMoler博士讲授线性代数课程时,发现应用其它高级编程语言极为不方便,为了减轻学生编程负担,于是CleveMoler博士和他的同事构思并为学生设计了一组调用LINPACK和EISPACK库程序的“通俗易用”的接口,这就是用FORTRAN编写萌芽状态的Matlab.之后几年,Matlab作为免费软件在大学里被广泛使用,深受大学生的欢迎。MatlabR系列是从2006年开始发布的,MathWorks公司在技术层面上实现了一次飞跃。从那以后产品发布模式也发生了改变,每年的3月和9月进行俩次产品发布,产品及版本的命名方式为“R+年份+代码”,对应上下半年的代码分别是a和b.每一次发布都包含所有的产品模块,如产品的newfeature、bugfixes和新产品模块的推出。例如,MatlabR2008a是MathWorks公司2008年3月份推出的产品。目前最新版本是MatlabR2009B.2.2Matlab软件的组成Matlab作为MathWorks产品家族的核心,它主要由5大部分组成,分别为Matlab语言(theMatlablanguage)、Matlab工作环境(theMatlabWorkingEnvironment)、Matlab数学函数库(theMatlabMathlibrary)、Matlab应用程序接口(theMatlabApplicationInterface)和图形句柄系统(HandleGraphics)[2].Matlab语言:Matlab语言是一种以矩阵(Matrix)和阵列(Array)为基本编程单元,拥有完整的控制语句、数据结构、函数编写与调用格式和输出功能,具有面向对象程序设计特征的高级程序语言。使用Matlab语言不但可以方便快捷地完成小规模的算法验证、程序开发和调试工作,而且可以进行大规模、高效的复杂应用程序设计。Matlab工作环境:简单来说,Matlab工作环境就是一系列实用工具的集合,它不但包括了各种操作工作空间中变量的工具和管理数据输入输出的方法,而且包括了开发调试M文件和Matlab应用程序的集成环境。使用起来极为方便。Matlab数学函数库:Matlab数学函数库是大量的各种形式的数学函数和算法的集合,它不仅包括了最基本的初等函数,如sum、sine、cosine和复数运算等,而且包含了大量复杂的高级函数和算法,如贝塞尔(Bassel)函数,快速傅里叶变matlab在通信原理中的应用3换和矩阵求逆等。用户在编写自己的Matlab程序时,可以轻松地调用这些函数和算法,从而极大地方便了算法的开发。所有这些函数按类别分别存放在Matlab工具箱下的8个子目录中,如表1所示。表1Matlab数学函数库的分类和组织目录名函数功能elmat对矩阵和矩阵元素的操作elfun初等数学函数matfun矩阵函数—数值线性代数funfun功能函数和ODE求解specfun专门数学函数sparfun稀疏矩阵函数datafun数值分析和傅里叶变换polyfun插值和多边形近似Matlab应用程序窗口:Matlab的外部接口使得Matlab可与外部设备和程序实现数据交互和程序移植,可以扩充Matlab强大的数值计算和图形显示功能,从而弥补了其执行效率较低的缺点,同时增强了其它应用程序进行软件开发的功能,提高了软件开发效率。Matlab接口工具不仅使得Matlab可以十分方便地与其他应用程序交换数据和信息,还实现了与其他程序函数和算法的交互。所以,通过Matlab接口编程,可以充分利用现有资源,能更容易地编写出功能强大、结构简洁的应用程序。Matlab主要提供了MEX文件、MAT文件、Matlab计算引擎、COM和DDE、Web服务、硬件接口和Excel生成器、Java生成器和.NET生成器等形式的接口。图形句柄系统:HandleGraphics为MathWorks公司的注册商标,是Matlab的图形系统。它在包含了大量高级的2D和3D数据可视化、图形显示、动画生成和图像处理命令的同时,还提供了许多低级的图形命令,允许用户按照自己的需求显示图形和定制应用程序图形用户接口,既方便又灵活。具体的函数分为5大类,分别放置在工具箱下5个不同的目录内,如表2所示[3]。matlab在通信原理中的应用4表2Matlab图形函数的分类和组织目录名函数功能graph2d二维图形函数graph3d三维图形函数graphics图形句柄函数uitools图形用户界面工具specgraph专门图形函数2.3Matlab的功能与特点Matlab是现在很流行的用于科学计算的软件工具,它集数值分析、矩阵运算、信号处理、图像显示等多种功能于一体,提供了一个高性能的科学计算环境,因此在通信、自动化等领域都得到了广泛的应用。它最初是作为“矩阵理论”和“数据分析”等课程的计算工具,经过十几年的发展和完善,目前已成为世界各国在科学分析和计算领域的主要软件,并被IEEE评述为国际公认的最优秀的科技应用软件。它的主要特点是[4]:(1)Matlab可以用来解线性方程组、进行矩阵变换与运算、数据插值运算等,能使用户从繁杂的数学运算分析中解脱出来。(2)Matlab中有许多高级的绘图函数,包括二维、三维、专用图