




已阅读5页,还剩44页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
论文题目:基于Matlab GUI的通信原理演示系统设计专 业:通信工程学 生: 签名: 指导教师: 签名: 摘 要通信原理是通信工程、电子信息类专业的重要专业基础课程,也是许多学校通信、信息专业研究生入学考试的必考科目。在传统的教学和设计中,主要采用的方法是手工分析与电路板试验,而该课程大部分是较为繁琐的理论和推导,因此容易使学生感到乏味和难以接受。利用Matlab/GUI为平台设计开发的通信原理演示系统,克服了传统方法的局限性。该系统具有可视化、交互性良好、操作便捷等优点,是未来教学和设计运用的趋势。本文在介绍模拟线性调制解调、模拟信号数字化、二进制数字调制解调、和信道编码理论的基础上,利用Matlab语言进行GUI编程,实现交互式实时动态演示系统的设计,并对该平台进行测试及结果分析。设计出的演示系统参数可变,测试结果正确,各模块间逻辑结构清晰,整体运行稳定,更有利于教师的授课讲解和学生的学习理解。【关键词】通信原理 演示系统 Matlab 图形用户界面(GUI)【论文类型】设计型Title:The Research and Implement of Demonstration System About Communication Theory Based on Matlab GUI Major:Communication EngineeringName:Duan Yi Signature: Supervisor:Zhang Ming Signature: ABSTRACTCommunication Theory is a communication engineering, electronic information professional foundation courses, many schools in communication and information professionals compulsory subjects of the Graduate Record Examination. In the traditional method of teaching and design, manual analysis and circuit board test are currently used, and more than that, a lot of theoretical knowledge and complicated reasoning often make the students feel confused. In order to solve these problems, we introduce a GUI system which is based on Matlab platform. It can provide more demo content and help students understand the theory more easily and intuitive. In addition, it is simple to operate, interact well and can return accurate result quickly. We all think it is the trend of development and will be widely used.This paper we introduce some theoretical knowledge first, which include analog linear modulation and demodulation,Digitization of analog signals, Binary digital modulation and demodulation and channel coding theory ,and then we implement a simulation system based on Matlab GUI. We can provide the test parameters and system will return the result correctly. What is more the logical structure of each module is clear and the system running stable. All of that are conductive to either the teaching of teacher or studying of students.【Key words】Communication Theory Demonstration system Matlab Graphical User Interface(GUI)【Type of Thesis】Design前 言随着我国高等教育逐步实现了大众化以及产业结构进一步调整,社会对人才的需求也出现了多样化和层次化的改变,这样反应到高等学校的教学要求与定位中,必然会带来教学内容上的差异和教学方式上的多样化。当代,科学技术突飞猛进,日新月异,突出各个学科的特色,培养有竞争力的人才已经成为各大高等院校的迫切任务。如何花较少的时间让学生获得较多的知识,是一个值得探讨的问题。为此,寻求更好的学习工具已成为完成这一项任务的关键。通信原理是一门介绍信息传输基本原理包括理论、技术的课程。主要研究对象是通信系统。研究的目的是利用尽可能小的通信资源,获得尽可能高的通信质量。研究方法是在系统级、模块级层次上将实际通信系统抽象成数字模型,采用数学分析和计算机模拟的方法进行研究,得到系统性能与系统参数之间的定量关系。在给定系统性能要求的情况下,设计和优化系统的参数。在系统的数学模型比较复杂,用数学分析方法获得系统性能与系统参数之间的定量关系有困难的时候,可以采用计算机仿真的方法获得这些参数之间的关系,达到优化通信系统的目的。在通信原理的教学和设计中,传统的方法主要是手工分析与电路板试验,通信系统中所有变量相互之间是非线性的关系,大部分是较为繁琐的理论和推导,容易使学生感到乏味和难以接受。实际的通信系统是一个功能结构相当复杂的系统,对系统做出的任何改变都可能影响到整个系统的性能和稳定。使用Matlab GUI可以设计出适合教学使用的更直观方便的仿真系统。在通信原理课程教学中,其友好的人机界面能够直观地显示出信号在通信系统中各部分的波形,包括时域或者频域的波形,有利于学习者理解和掌握完整的通信系统的概念,对教师教学产生有益的帮助。Matlab可以方便地进行通信系统的分析和仿真,直观清楚,对于比较难理解的概念和原理有非常大的指导作用。配合GUI可以改善现行仿真方案的局限性。本文主要研究了通信原理课程的交互式实时动态演示系统的设计,其中包括模拟线性调制解调系统、模拟信号数字化系统、二进制数字调制解调系统和信道编解码系统,进行了演示系统的界面设计和系统测试。设计出的演示系统参数可变,测试结果正确,达到了预期效果。目 录1 绪 论11.1 课题研究背景及意义11.2 Matlab GUI简介21.3 本文的主要内容32 通信原理演示系统设计52.1 演示系统主界面设计62.2 模拟线性调制解调演示系统设计82.2.1 模拟线性调制解调原理82.2.2 设计思路及步骤102.3 模拟信号数字化演示系统设计132.3.1 模拟信号数字化基本原理142.3.2 抽样子系统设计162.3.3 量化子系统设计172.3.4 编码子系统设计182.4 二进制数字调制解调演示系统设计192.4.1 二进制数字调制解调原理192.4.2 2ASK子系统设计222.4 3 2FSK子系统设计242.4.4 2PSK子系统设计242.5 信道编码和解码演示系统设计252.5.1 信道编码和解码的基本原理252.5.2 线性分组码编解码子系统设计272.5.3循环码编解码子系统设计282.6 本章小结293 系统测试303.1 模拟线性调制解调子系统测试303.2 模拟信号数字化子系统测试323.2.1 抽样子系统测试323.2.2 量化子系统测试343.2.3 编码子系统测试343.3 二进制调制解调子系统测试353.3.1 2ASK调制解调子系统测试353.3.2 2FSK调制解调子系统测试363.3.3 2PSK调制解调子系统测试373.4 信道编码和解码子系统测试383.4.1 线性分组码编码和解码子系统测试383.4.2 循环码编码和解码子系统测试383.5 本章小结394 结 论404.1 工作总结404.2 存在的问题404.3 工作展望41致 谢42参考文献431 绪 论1.1 课题研究背景及意义自十九世纪初电信技术问世以来,短短的一百年多年时间里,通信技术的发展可谓日新月异。从通信的发展历史进程看,按照人类交流方式的不同分为三个阶段:第一阶段,人们只能通过语言、手势、烽火台等方法简单交流消息;第二阶段是随着文字、印刷术、邮政的出现,可以记录、传递更多的消息;第三阶段是人们认识和开始使用电能的同时,利用电信号进行复杂信息的传递。今天,随着计算机技术的飞速发展,通信技术在各种工程领域,特别是新兴高科技术产业内也获得了越来越广泛的应用。通信技术领域的更新与发展都是以通信基本原理为基础的,因此,作为通信行业的工程技术人员,只有掌握了通信系统的基本原理和基础理论,才能适应通信技术的飞速发展。“通信原理”属于电子信息类各专业的专业基础课程,它不仅是通信工程、电子信息工程专业学生的必修课,还是相关专业硕士研究生入学考试的科目之一。随着现代通信技术的发展和深入,计算机科学与技术、自动控制以及光电子等专业也纷纷开设通信原理课程。“通信原理”课程涉及概率与统计、随机过程、信号与系统分析、数字电路、模拟电路、通信电路等多门先修的课程,具有理论性强、知识面广的特点。作为一门专业基础课,通信原理是学习其他后续专业课程的基础,因此学好通信原理课程具有非常重要的意义。 从近几年通信原理的教学情况调查和学生反映来看,当前高等院校在教学方法上的负面效应越来越突出:第一,通信原理课程的特点是教学要求高,理论结果基本来源于复杂的数学运算、推导,导致学生将大量时间用于数学运算,没有真正理解通信原理每个知识点在实际中的应用。第二,教学中,以教师为主以课堂为中心,缺乏教与学的互动性,没有充分调动学生的主动性和积极性。教师对学生通常采用黑板式教学及题式练习,对于课程中大量信号的结果没有直观的表现出来,学生只能手工绘制波形图,对于复杂信号手工来绘制其波形图更显得困难。此外,由于被动学习,学生学习热情不高,缺乏构造学生知识层次、人文层次等。第三,从实际环节来看,传统的通信原理实验室验证性的实验。学生进入实验室的时间有限,有时实验时结果没有显示,但自己还没有时间去理解就得从实验室出来。甚至,有的高校,实验器材有限,许多实验都无法进行。传统的实验要求学生完成一些软件实现的算法也是基于C语言的,许多学生由于C语言编程能力有限,不能有效地完成实验,难以达到教学要求。第四,新知识不断出现,教材内容偏重理论,相关理论的最新应用实例不足,导致学生难以理解理论知识,使理论与实际相分离。基于以上现状,我们寻求到一个解决方案,那就是结合计算机进行虚拟实验,应用Matlab软件来进行设计和研究通信原理中众多抽象的概念。实践表明,学生可以在短时间学会Matlab的基本知识,经过短时间的学习可以很快入门,可以对其进行操作和使用。Matlab软件具有高效的数值计算及符号计算功能,可以使学生摆脱复杂的数学运算分析,此外,其图形处理能力,实现了编程和计算结果的可视化,其功能丰富的工具箱提供了大量使用方便的处理工具,加上其友好的界面及自然化语言,便于学生学习和掌握。用Matlab图形用户界面(GUI)设计出的通信原理演示系统,将通信原理课程中较难掌握和理解的重点理论和方法通过概念浏览,动态演示实例分析等方式生动地展现出来,使学生能够更透彻地理解所学的知识,让学生有更多的时间去思考和理解通信原理中的基本概念和基本方法。可见,研究如何利用Matlab图形用户界面设计、开发出合理的通信原理演示系统,具有重大意义。1.2 Matlab GUI简介Matlab是由Math Works公司于1984年推出的一套高性能的数值计算可视化软件,集数值分析、矩阵运算、信号处理和图形显示于一体,被称为第四代计算机语言,是目前国际上最流行、应用最广泛的科学与工程计算软件,具有强大的计算、仿真、绘图等功能。Matlab中包括被称作工具箱的各类应用问题的求解工具。工具箱实际上是对Matlab进行扩展应用的一系列Matlab函数(即M文件),可以用来求解各类学科的问题,包括控制系统识别、神经网络、图像处理、信号处理等。随着Matlab版本的不断升级,其所含的工具箱的功能越来越丰富,应用范围也越来越广泛。它具有运算符丰富、程序环境高级并且简单、设计自由、可移植性好、图形功能强大、使用方便灵活、具有强大的工具箱、源程序开放等优点,现被广泛应用于自动控制、航天工业、汽车工业、生物医学工程、语音处理和雷达工程等行业,也是国内外高校和研究部门进行许多科学研究的重要工具。目前许多大学的实验室都安装有Matlab供学习和研究之用。Matlab在科研和高校基础课教学中具有明显优势,是理工科大学生必不可少的工具。Matlab以其强大的科学计算及图像生成功能著称,它同时也提供了图形用户界面的设计和开发功能。GUI即图形用户界面,是Graphical User Interface简称,又称图形用户接口。它包含图形对象,如窗口、图标、菜单和文本的用户界面,是用户和计算机之间交流的工具。Matlab 7.X为了方便制作图形用户界面GUI,提供了一个交互式的设计工具GUIDE。通过GUIDE可以很方便地设计出各种符合要求的图形用户界面。用户通过一定的方法如鼠标、键盘等选择、激活这些图形对象,使计算机产生某种动作或者变化(比如计算、绘图等)。GUI设计既能以Matlab程序设计为主,也能以鼠标为主,利用GUIDE工具进行设计,也可以结合以上两种方法进行设计。Matlab将所有GUI支持的用户控件都集成在这个环境中并提供界面外观、属性和行为响应方式的设置方法,随着版本的提高,这种能力还会不断加强。GUIDE将用户保存设计好的图形用户界面保存在一个FIG资源文件中,FIG文件是一个二进制文件,包含系列化的图形窗口对象,所有对象的属性都是用户创建图形窗口时保存的属性,该文件最主要的功能是对象句柄的保存。同时自动生成包含图形用户界面初始化和组件界面布局控制代码的M文件,这个M文件为实现回调函数的编写提供了一个参考框架。M文件包含GUI设计、控制函数及控件的回调函数,主要用来控制GUI展开时的各种特征。M文件基本上可以分为GUI初始化和回调函数2个部分,控件的回调函数可根据用户与GUI的具体交互行为分别调用。用户界面的重要性在于它极大地影响了最终用户的使用,影响了计算机的推广使用,甚至影响到人们的工作和生活。由于开放用户界面的工作量极大,加上不同用户对界面的要求不尽相同,因此,用户界面已成为计算机软件研制中最困难的部分之一。当前,Internet的发展异常迅猛,虚拟现实、科学计算可视化及多媒体技术等对用户界面提出了更高的要求。GUI的广泛流行是当今计算机技术的重大成就之一,它以友好性、直观性、易懂性在软件编程上被广泛使用。1.3 本文的主要内容本文主要研究了通信原理课程的交互式实时动态演示系统的设计,其中包括模拟线性调制解调系统、模拟信号数字化系统、二进制数字调制解调系统和信道编解码系统,进行了演示系统的界面设计和系统测试。全文共分四个章节。第1章为绪论。主要介绍了课题研究的背景及意义,并简介了Matlab GUI技术。第2章为通信原理演示系统设计。主要设计了演示系统主界面和各个子界面。子界面主要包括模拟线性调制解调系统界面、模拟信号数字化系统界面、二进制数字调制解调系统界面和信道编解码系统界面。对于每个子界面,在介绍相应的通信原理知识的基础上详细说明了设计过程。第3章为系统测试。对设计出的每一个界面进行测试,根据改变不同参数时界面上所输出的波形或结果,验证演示系统的合理性与正确性。第4章对全文进行总结,提出不足,对今后工作进行展望。32 通信原理演示系统设计基于Matlab强大的功能,利用Matlab的GUI工具箱可以设计和实现通信原理课程中重点内容的交互式实时动态演示。通信原理内容庞杂,所涉及的知识面比较广,本文选取通信原理中4个知识模块进行分析和设计,分别为:模拟线性调制解调系统、模拟信号数字化系统、二进制调制解调系统、信道编解码系统。每个知识模块又可以划分为几个小知识模块。其中,模拟线性调制解调系统包括调幅信号(AM)的调制解调、载波受到抑制的双边带信号(DSB)的调制解调、单边带信号(SSB)的调制解调。模拟信号数字化模块包含了抽样、量化、编码3个子模块。其中,量化又包含了均匀量化、非均匀量化。二进制数字调制解调系统包含了2ASK调制解调、2FSK调制解调、2PSK调制解调。信道编码和解码包含线性分组码的编码解码、循环码的编码解码。演示系统结构如图2.1所示。图2.1 演示系统结构图在进行界面设计前先介绍系统设计的原则和整个GUI界面设计的一般步骤。在后期设计中都遵循该设计原则和一般步骤。由于设计要求不同,设计出来的界面也不同。本文的界面设计遵循3个原则:简单性、一致性、习惯性。1)简单性。要求设计界面时应该力求简洁直接清晰地体现界面的功能和特点。对于可有可无的功能最好删除,确保界面的整洁。设计的界面要直观,应多采用图形。设计的界面应尽量减少窗口的数目。2)一致性。有两层含义,一是设计的界面风格要尽量保持一致,二是新设计的界面与已有的界面风格最好不同。3)习惯性。要求设计新界面时应该尽量使用人们熟悉的标志和符号。用户可能不了解新界面的具体含义及操作方法,但它可以依靠熟悉标识符作为正确猜想,方便用户正确使用。此外还要注意界面的动态性能。在系统设计过程中每个模块的GUI界面设计遵循以下步骤:步骤一:GUI界面设计。分析界面所要求实现的主要功能,明确任务,构思界面,使用Matlab图形用户界面开发环境GUI提供的一系列创建用户图形界面的工具,主要是通过不同的文本框、按钮等许多工具的使用,将构思的主界面和各个子界面制作出来。要清楚各个界面的功能,确保界面的布局合理美观、界面的风格最好保持一致。步骤二:回调函数的设计。用户应根据设计好的图形界面的功能,针对各个不同图形对象来编写能够实现该功能的回调函数,确保这个图形界面能够完成所预定的功能,达到直接通过界面上各个控件就可以控制数据的输入,并且可以方便直观地看到预期结果。基于以上设计原则和设计步骤,进行界面设计,设计流程图如图2.2所示。图2.2 系统流程图下面详细介绍每个功能模块的设计过程。2.1 演示系统主界面设计根据前面所说的设计步骤。用户根据自己的需要点击相应的按钮,可以进入子界面。主界面“结束演示”按钮可以关闭主界面,结束演示。主界面显示将要演示的4大知识模块及对应的子模块,4大知识模块为模拟线性调制解调系统、模拟信号数字化系统、二进制数字调制解调系统、信道编解码系统。模拟线性调制解调系统是单独的一个模块,模拟线号数字化系统包含抽样、量化、编码3个子模块,二进制数字调制解调包含2ASK、2FSK、2PSK 3个子模块,信道编解码包含线性分组码编码解码、循环码编码解码两个子模块。设计出的演示系统主界面如图2.3所示。图2.3 演示系统主界面主界面中显示的菜单栏是通过菜单编辑器设计的。菜单编辑器主要用于建立菜单栏(Menu Bar)和右键菜单(Context Menus),如图2.4所示。若figure窗口的Menu Bar属性为none,只显示用户设计的菜单;若Menu Bar属性值为figure,用户设计的菜单排列在标准菜单之后。若要在菜单选项标签的某个字符上加上下划线(该字符一般用作快捷键),只需要在label字符前加上“&”。图2.4 主界面菜单编辑器主界面中添加了结束演示按钮,双击该按钮,会出现属性设置对话框,它对应的pushbutton按钮的标签Tag属性设为pushbutton2,string属性设为“结束演示”,FontSize属性设为18,FontWeight属性设为demi。要使该按钮实现结束演示的功能,需要编写对应的回调函数。具体操作为:在主界面编辑界面中,选中结束演示按钮,点击右键选择View Callbacks中的Callback菜单选项,就可以打开GUI.fig对应的m文件,这个文件是Matlab自动生成的,在function pushbutton2_Callback(hObject, eventdata, handles)下面添加如下两行代码:close(gcbf);quit;保存之后运行,点击该按钮就可以关闭演示系统,结束演示。为了使主界面美观添加了图片。图片可以自由选择。添加背景其实就是将图片显示在axes中。首先我们要确保axes和图片尺寸合适且匹配。可以调整axes的尺寸来适应图片的大小,图片大小是483 385,单位为像素。双击axes,在跳出的属性查看器中将Units设置为pixels(像素),将Position属性的Width和Height分别设置为483和385。然后编辑对应的M文件,即在OpeningFcn函数下面添加以下代码:backgroundImage = importdata(meitu.jpg);% 将背景图像载入Matlabaxes(handles.axes1);% 选择坐标系image(backgroundImage);% 将图片添加到坐标系中,于是就成了背景axis off;% 将坐标系的坐标轴标签去掉保存后,打开主界面就可以将图片显示在主界面中。2.2 模拟线性调制解调演示系统设计2.2.1 模拟线性调制解调原理调制是一个将信号变换成适于信道传输的装置。模拟调制针对的信源为模拟信号,常用的模拟调制有调幅、调相、调频。发送端进行了调制,接收端要进行解调。在模拟线性调制中,最先应用的一种幅度调制是全调幅或常规调幅,简称为调幅(AM)。为了提高传输的效率,适当选择带通滤波器的频率响应,可以得到各种幅度调制信号如载波受到抑制的双边带调幅信号(DSB)和单边带调幅信号(SSB)。线性调制器的一般模型如图2.5所示。 图2.5 线性调制器的一般模型在频域中已调波频谱是基带调制信号频谱的线性位移;在时域中,已调波包络与调制信号波形呈线性关系。下面简单介绍调幅信号(AM)、双边带信号(DSB)、单边带信号(SSB)的调制解调原理。1) 调幅信号(AM)调制解调原理设模拟基带信号为外加直流,滤波器的频率响应=1为全通网络,则输出为调幅(AM)信号时域和频域一般表达式为: (2.1) (2.2)可以将调幅信号看成一个余弦载波加抑制载波双边带调幅信号,当时,称为调幅信号欠调幅;反之,称为过调幅。当的频带宽度远远小于载波频率的时候,欠调幅信号可以用包络检波的方式解调,而过调幅信号只能通过相干解调。相干解调的方式如图2.6。图2.6 相干解调2) 双边带信号(DSB)调制解调原理在AM信号中,载波分量并不携带信息,却占据了大量的发射功率,造成这部分功率的浪费。如果在AM调制模型中输入的基带信号没有直流分量,或者将直流分量抑制掉,即可得到一种高调制效率的调制方式载波受到抑制的双边带调幅信号(DSB)。载波受到抑制的双边带调幅信号时域和频域一般表达式为: (2.3) (2.4)DSB信号解调时必须采用相干解调,即让已调信号与本地恢复载波信号相乘并通过低通滤波器滤除高频分量,就恢复出了原始信息。3) 单边带信号(SSB)调制解调原理模拟基带信号经过双边带调制后,包含两个边带,即上边带、下边带。从恢复原始信号频谱的角度看,只要传输双边带信号的一半带宽就可以完全恢复出原始信号的频谱。产生SSB信号的最直观方法是将线性调制器的滤波器设计成截止频率为的理想低通或理想高通特性。SSB信号的时域表示式为: (2.5)式中,“+”为下边带,“-”为上边带。是的希尔伯特变换。若为的傅氏变换,则的傅氏变换为: (2.6)式中,为符号函数。单边带信号占用的带宽只有双边带信号的一半,在接收端采用相干解调的方式对单边带信号进行解调。2.2.2 设计思路及步骤1)设计思路和要求用GUI设计一个模拟线性调制解调系统,调制信号是振幅为1,频率为1Hz的正弦波。第一:能在同一个GUI上演示AM调制解调过程、DSB调制解调过程、SSB上边带和下边带调制解调过程。第二:设计出的GUI界面由6个部分组成:调制区、解调区、参数设置区、绘图区、说明、返回。其中调制区中包括6个控件:载波信号、调制信号、AM信号、DSB信号、SSB下边带信号、SSB上边带信号。解调区包括4个控件:AM解调信号、DSB解调信号、SSB下边带解调信号、SSB上边带解调信号。第三:参数设置区包含2个可变参数:载波频率(Hz)、AM信号直流分量。当用户根据自己的需求输入数值后,整个界面就会以输入的参数为基准。当选择“载波信号”按钮时,能够在图轴上画出相应载波频率下载波信号时域波形和频域波形,当选择“AM信号”按钮时,能够在图轴上画出给定AM信号直流分量下AM信号时域和频域的波形。同理选择“调制信号”、“DSB信号”、“SSB下边带信号”、“SSB上边带信号”、“AM解调信号”、“DSB解调信号”、“SSB下边带解调信号”、“SSB上边带解调信号”按钮时会分别在图轴上画出相应信号时域波形和频域波形。第四:本次演示过程结束后,按“退出”按钮就能退出本界面返回到主界面。添加说明部分,对演示系统添加说明,方便学习者清晰理解作者的思路。2)设计步骤步骤一:界面设计按照设计思路在GUI编辑界面中添加相应的控件。添加11个按钮控件,双击第1个按钮,会出现对话框,将string属性设为“载波信号”,Tag属性设为“pushbutton1”。双击第2个按钮将string属性设为“调制信号”,Tag属性设为“pushbutton2”。双击第3个按钮将string属性设为“AM信号”,Tag属性设为“pushbutton3”。双击第4个按钮将string属性设为“DSB信号”,Tag属性设为“pushbutton4”。双击第5个按钮将string属性设为“SSB下边带信号”,Tag属性设为“pushbutton5”。双击第6个按钮将string属性设为“SSB上边带信号”,Tag属性设为“pushbutton6”。双击第7个按钮将string属性设为“AM解调信号”,Tag属性设为“pushbutton7”。双击第8个按钮将string属性设为“DSB解调信号”,Tag属性设为“pushbutton8”。双击第9个按钮将string属性设为“SSB下边带解调信号”,Tag属性设为“pushbutton9”。双击第10按钮将string属性设为“SSB上边带解调信号”,Tag属性设为“pushbutton10”。双击第11个按钮将string属性设为“返回”,Tag属性设为“pushbutton_back”。添加2个编辑框控件,将两个编辑框的string属性均设为空,同时在各自正左方添加静态文本控件进行说明。此外还添加了4个面板(Panel)控件,string属性分别为设为“调制区”、“解调区”、“说明”、“参数设置区”。将前6个按钮控件(即载波信号、调制信号、AM信号、DSB信号、SSB下边带信号、SSB上边带信号按钮控件)布局在“调制区”面板中,将第7至10个按钮控件(即AM解调信号、DSB解调信号、SSB下边带解调信号、SSB上边带解调信号按钮)布局在“解调区”面板中,将2个编辑框及相应的静态文本控件布局在“参数设置区”面板中。说明面板控件中添加静态文本,string属性设为“1、调制信号是振幅为1,载波为1Hz的正弦波2、解调时均采用相干解调的方法3、两幅图横轴分别为t,f。解调信号有延迟。4、解调时,红色为原信号蓝色为解调信号”模拟线性调制解调系统的界面如图2.7所示。 (a)模拟线性调制解调系统编辑界面 (b)模拟线性调制解调系统演示界面图2.7 模拟线性调制解调系统界面步骤二:回调函数设计要实现演示效果,就要对控件的回调函数进行编程。由GUI生成的M文件,控制GUI并决定GUI对用户操作的响应。它包含运行GUI所需的所有代码。GUI自动生成M文件的框架,用户在该框架下编写GUI组件的回调函数。M文件由一系列子函数构成,包含主函数、Opening函数、Output函数和回调函数。其中主函数是不可以修改的,否则会导致GUI界面初始化失败。用户对控件操作的时候,控件对操作进行响应,所指定执行的函数就是该控件的回调函数。在GUI编辑界面点击可以打开界面对应的M文件(MNtiaozhijietiao.m),点击M文件中的就可以有选择地进入控件的Callback。根据每个控件要实现的功能添加代码。也可以右键单击控件,选择View Callbacks中的Callback菜单项,打开对应的M文件。(1)参数设置区回调函数设计载波频率(Hz)和AM信号的直流分量是要输入的参数,在M文件中找到载波频率、和AM信号直流分量文本控件对应的callback,添加代码。2个文本控件添加代码类似,只是定义的变量不同,这里只对载波频率对应文本控件添加的代码进行说明。即在function edit1_Callback(hObject, eventdata, handles)下添加代码:global fc;%定义载波频率为全局变量f 1=str2double(get(handles.edit1,string);%将字符串转换为double型数值fc=f1;%赋值(2)调制区、解调区回调函数设计调制区包含6个按钮控件。解调区包含4个按钮控件。选择任何一个按钮都可以绘制出相应信号的时域和频率的波形。例如输入载波频率和AM信号的直流分量后,点击“AM信号”按钮,在axes1中会绘制AM信号时域波形,在axes2中会绘制AM信号频域波形,要实现该功能就要右键单击“AM信号”,选择View Callbacks中的Callback菜单项,在function pushbutton3_Callback(hObject, eventdata, handles)下面添加以下代码:axes(handles.axes1)global fc;global A;%fc为载波频率,A为AM信号的直流分量T=5; fm=1;dt=0.001;%T为信号时长,fm是信源最高频率,dt是时间采样间隔t=0:dt:T;mt=cos(2*pi*fm*t);%调制信号(信源)s_am=(A+mt).*cos(2*pi*fc*t);%AM信号plot(t,s_am);plot(t,A+mt,r-);%画出AM信号包络,标示出源信号波形title(AM调制信号);axes(handles.axes2)f,sf3=T2F(t,s_am);%求AM调制信号的频谱psf3=(abs(sf3).2)/T;%求AM调制信号的功率谱密度plot(f,psf3);axis(-2*fc,2*fc,0,max(psf3);title(AM调制信号的频谱);每个按钮的回调函数编好之后,还要对调用的子函数进行定义。如点击“AM信号”按钮,能够绘制正确的波形,需要提前定义好T2F子函数。(3) 返回按钮回调函数设计返回按钮要实现退出本界面,返回到主界面的功能,点击此按钮的时候会出现如图2.8所示对话框,询问使用者是否返回界面,若选择【yes】会返回到主界面,若选择【no】则不返回。要实现此功能需要在“返回”按钮对应的回调函数中需要添加以下代码:selection = questdlg(确定返回 get(handles.figure1,Name) ?,. 返回 get(handles.figure1,Name) .,. Yes,No,Yes);if strcmp(selection,No)return;enddelete(handles.figure1)图2.8 提问对话框为了保持界面风格的统一,所有子界面设计中“返回”按钮均采用如图2.8所示对话框的形式。所添加的代码相同。在后期子界面设计中,对此控件不再赘述。2.3 模拟信号数字化演示系统设计模拟信号数字化分3个过程:抽样、量化、编码。由于这3个知识模块涉及的内容不同,界面的风格也不同,下面将分别介绍3个子模块的界面设计。2.3.1 模拟信号数字化基本原理通信系统分为模拟通信系统和数字通信系统两大类,数字通信系统因其抗噪声性能好、传输质量高、保密性好等一系列优点,已经成为当今通信的发展方向与主流。然而自然界的许多信息都是模拟信号,如图像、话音、电视信号、麦克风拾取的话音信号等,为了能利用数字通信系统来传送模拟信号,必须对模拟信号进行数字化,即模数转换和数模转换。模数转换即抽样、量化、编码,对模拟信号的时间和幅度进行离散化处理,使之变成数字信号再进行传输,在接收端要将收到的数字信号进行数模转换,还原成模拟信号再传至信宿。模拟信号数字化处理,即对模拟信号的幅度和时间做离散化处理,先通过抽样使模拟信号变成时间离散幅度连续的信号,之后将将抽样得到的时间离散幅度连续的信号进行量化,使之变成时间离散且幅度也离散的信号,在将其进行编码处理就所需的数字信号。1) 抽样定理抽样是把时间上连续的模拟信号变成一系列时间上离散的抽样值的过程。抽样定理:一个频带限制在(0,)内的时间连续信号,如果以1/(2)秒的时间间隔对它进行等间隔(均匀)抽样,则原信号将被所得到的抽样值完全确定。抽样定理指出,由样值序列无失真恢复原信号的条件是2,为抽样频率。当抽样频率小于2倍频谱最高频率时,信号的频谱有混叠。反之,抽样频率大于2倍频谱最高频率时,信号的频谱无混叠。例如,对模拟信号进行抽样,模拟信号最高频率为65Hz,2=130Hz。当抽样频率取200Hz的时候,满足抽样定理,抽样不会引起信号失真。当抽样频率取100Hz的时候,不满足抽样定理,从频域上,可以看到频谱发生了混叠,此时的抽样会引起信号的失真。2) 量化理论量化是利用预先规定的有限个量化电平来表示模拟抽样值的过程,量化又分均匀量化与非均匀量化。均匀量化是把输入信号的量化范围按等间隔分割的量化。均匀量化时,量化噪声平均功率只取决于量化间隔,对于均匀分布的输入信号而言,输出量化信噪比恒定,但对于非均匀分布非平稳的输入信号,输入信号功率下时量化信噪比小,反之,输入信号频率大时量化信噪比大,影响信号的恢复。要满足条件,则编码位数多,设备复杂。在语言信号数字化通信中,均匀量化有个明显不足之处:量化信噪比随信号的电平的减小而下降。为了克服这个缺点,实际中往往采用非均匀量化。非均匀量化是根据信号的不同区间来确定量化间隔。信号值小时,量化间隔小,信号值大时,量化间隔就大,在不增大量化级数的前提下,使量化信噪比在较宽的动态范围内达到所需指标,即改善了小信号时的量化信噪比。其实现方法是将样值通过压缩器后再进行均匀量化,常用的是压缩律和压缩律。美国和日本采用律,我国和欧洲采用律。3)编码理论将量化后的信号变换成代码,即模数转换的第三步,把多电平变成二进制电平。其相反的过程称为译码。编码方法多种多样,在现有的编码方法中,若按编码的速度来分大致可分为两大类:低速编码和高速编码。通信中一般都采用高速编码。若按编码器的种类来分大体上可以归结为三类:逐次比较型、折叠级联型和混合型。在逐次比较型编码方式中,无论采用几位码,一般均按极性码、段落码、段内码的顺序排列。下面结合13折线的量化来加以说明。13折线特性就是近似于压缩律的特性,其中=87.6,仅考虑第一象限时其曲线如图2.9所示。完整13折线,负向8段斜线按同样方法得到,第象限的折线与第象限呈奇对称,斜率相同的段合为一段,共13段,称为13折线法。图2.9 13折线律特性律13折线用8bit编码,8位二进制码表示为,。是极性码,表示量化信号的极性,通常“1”表示正极性,“0”表示负极性;,是段落码,表示信号绝对值处在哪个段落,3位码的8种可能状态分别代表8个段落的起始电平,第一段编码为000,依次类推;,为段内码,它的16个状态表示每段内均匀划分的16个量化级,第一小段编码为0000,依此类推。例如,输入信号抽样值为+1270个基本量化单位,采用逐次比较型编码器,按照律13折线编成的8位码为11110011。下面详细介绍抽样子系统、量化子系统、编码子系统的界面设计过程。2.3.2 抽样子系统设计1)界面设计在GUI编辑界面,添加2个面板控件,string属性各设为“抽样定理验证区”、“参数设置区”,在抽样定理验证区,添加5个按钮控件,把它们的sting属性分别设置为“原始信号”、“原始信号频谱”、“已抽样信号”、“已抽样频谱”、“返回”。将它们的Tag属性依次设置为pushbutton1pushbutton5,字体大小均设置为12。参数设置区添加编辑框和静态文本框,表征抽样频率变量,单位为Hz。此外,添加4个坐标轴控件,供后期绘图使用。辅助说明部分方便读者理解,即添加面板控件sting属性设置为“说明”,在此面板控件中添加静态文本,对参数进行说明。将设计好的界面的M文件保存为chouyang.m。模拟信号的抽样子系统界面如图2.10所示。图2.10(a)为编辑界面,图2.10(b)为演示界面。 (a)抽样子系统的编辑界面 (b)抽样子系统的演示界面图2.10 抽样子系统界面2)回调函数设计设计抽样子系统界面,有两个作用,第一验证抽样定理,比较满足抽样定理和不满足抽样定理时信号的时域和频率波形。第二,为后期量化子系统和编码子系统界面设计做铺垫。界面预期实现的功能是在参数设置区输入不同的抽样频率,点击左侧“抽样定理验证区”各按钮控件将会在右侧坐标轴中绘制出相应的波形。点击“返回”按钮,可以结束本次演示返回到主界面。预实现界面的功能,就需要编辑各控件的回调函数,即在每个要实现相应功能的控件下添加可以实现该功能的代码。每个控件回调函数设计的方法相同,在此不再重复。2.3.3 量化子系统设计1)界面设计量化分为均匀量化和非均匀量化,二者有着本质的区别。为了比较均匀量化与非均匀量化的差异,在量化子系统界面设计时,将均匀量化和非均匀量化部分放在同一个界面进行演示。界面预期要达到的功能是:输入不同量化级数,可以清晰看到在该量化级数下,均匀量化和非均匀量化的原始信号与量化信号波形、量化误差曲线、量化器输入与输出关系曲线,从各曲线就可以直观的看到二者的区别。量化子系统界面设计的方法和抽样子系统界面设计相同,只是添加的控件个数不同且每个控件设置的属性不同。在此不再赘述量化子系统界面的设计过程,只给出设计出的界面,如图2.11所示。将设计好的界面的M文件保存为lianghua.m。图2.11(a)为量化子系统的编辑界面,图2.11(b)为量化子系统的演示界面。 (a)量化子系统的编辑界面 (b)量化子系统的演示界面图2.11 量化子系统的界面 2)回调函数设计设计出的量化子系统界面,需要实现的预期功能为:输入不同的量化级数,依次点击均量化区的控件可以在axes1axes3中绘制出输入量化级数下均匀量化的原始信号与量化信号曲线、量化误差曲线、量化器输入与输出关系曲线。同理依次点击非均匀量化区各控件可以在axes4axes6中绘制出给定量化级数下非均匀量化的原始信号与量化信号曲线、量化误差曲线、量化器输入与输出关系曲线。要使界面完成预期的功能,需要编写每个功能控件的回调函数,每个控件的回调函数设计的方法相同,前面演示系统主界面回调函数设计和后面2ASK调制解调界面回调函数设计均有详细介绍,只是添加的代码不同,在此不做赘述。2.3.4 编码子系统设计 1)界面设计一般而言,电路实现式描述的压缩特性较为困难。随着数字电路技术的发展,用折线代替光滑曲线已经成为实际处理方法,这种技术称为数字压扩技术。我国采用13折线律压扩技术,=87.6。故,编码界面的设计时,选择律13折线编码。在GUI编辑界面,添加3个面板控件,string属性分别设置为“输入信号抽样值(量化单位)”、“输出8位编码”、“输出8位编码表示”。在第1和第2个面板控件中各添加一个编辑框
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校幼儿园自评报告
- 凉州词王瀚教学课件
- 新解读《GB-T 36773 - 2018竹制品检疫处理技术规程》
- 用电应急知识培训内容课件
- 生鲜期货基础知识培训课件
- 生物采样基础知识培训课件
- 急性淋巴细胞白血病护理查房
- 2025年小学数学毕业升学考试易错题型强化训练模拟试卷
- 白塞病血管病变护理查房记录
- 2025至2030中国分布式能源行业产业运行态势及投资规划深度研究报告
- 2023 植入式静脉给药装置护理技术中华护理学会团体标准解读
- DG-T 028-2024 单粒(精密)播种机
- 2025-2030中国高端葡萄酒行业市场发展分析及前景趋势与投资研究报告
- 非标设备项目管理制度
- 2025年临床执业医师考试的院前急救知识试题及答案
- DB5132∕T 76-2022 熊猫级民宿的划分与评定
- 湛江市语文新初一分班试卷含答案
- 2025年度医院医德医风考评表格
- 2025年慢病管理项目商业计划书及运营管理方案
- 2025年互联网营销师-直播销售员竞赛考试题库及答案
- 【0110】2024年年度泉州市场分析正式版
评论
0/150
提交评论