《移动通信的实训指导书 何柳青.docx》由会员分享,可在线阅读,更多相关《移动通信的实训指导书 何柳青.docx(12页珍藏版)》请在三一办公上搜索。
1、移动通信实训指导书何柳青10目 录实验一 熟悉simulink仿真实验环境1实验二 CDMA反向链路中的64进制正交调制过程的验证实验7实验一 熟悉simulink仿真实验环境一、实验目的:熟悉Matlab和simulink仿真实验环境二、实验环境:simulink仿真工具三、实验原理:1Matlab简介Matlab(matrix laboratory,矩阵实验室)是美国math works公司的产品,最初的matlab只是一个数学计算工具,但现在它已经成为一个集概念设计,算法开发、建模仿真、实时实现于一体的集成环境,它拥有许多衍生的子集工具,是一个非常优秀的计算机仿真软件,广泛应用于数学、通
2、信、信号处理、自动控制、神经网络、图形处理等领域。Matlab6.5版本主要由以下部分构成:(1)MATLAB建立在矩阵和数组之上的强大的数值符号计算功能,便捷的绘图功能,它所提供的M语言环境,matlab语言是一种面向科学与工程计算的高级语言,具有以下特点:1)编程效率高2)用户使用方便3)扩充能力强(开放性):除内部函数外,所有MATLAB主包文件和各工具包文件都来是可改的源文件。用户通过对源文件的修改,或加入自己编写的文件去构成新的专用工具包。4)语句简单,内涵丰富5)高效方便的矩阵和数组运算、6)方便的绘图功能(2)MATLAB ToolboxesMATLAB提供了大量的面向专业领域的
3、工具箱,从通信系统的分析与设计、滤波器设计、信号处理、小波分析、神经网络到控制系统、模糊控制等各个领域。通过使用工具箱,以往需要复杂编程的算法开发往往只需一个函数就能实现,而且工具箱是开放的可扩展集,用户可以查看或修改其中的算法,甚至开发自己的算法。(3)MATLAB Compiler通过MATLAB Compiler和C/C+ Math Library,用户可以将MATLAB语言编写的M文件自动转换成C文件或C+文件,从而进行独立应用开发。(4)SimulinkSimulink是Matlab软件的扩展,它是实现动态系统建模和仿真的一个软件包。它是一个图形界面仿真工具,它与MATLAB语言的主
4、要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。所谓模型化图形输入是指SIMULINK提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以.mdl文件进行存取),进而进行仿真与分析。(5)Simulink BlocksetsMath Works公司也为Simulink在许多专门领域的应用提供了大量的模块集,用户还可以利用已有的块或自己编写的C语言程序和matlab程序建立
5、自己的模块及模块库。(6)Real-Time WorkshopReal-Time Workshop(一般缩写为RTW)能够直接将Simulink、Stateflow、DSP Blockset和Communication Blockset建立的模型(若模型包含Stateflow图时还需要有Stateflow Coder)自动生成C或Ada代码,进行快速原型设计和半实物仿真,整个代码生成可以根据需要完全定制。(7)StateflowStateflow是基于有限状态机理论的模型搭建工具,能够建立和仿真复杂的反应和事件驱动系统。将Stateflow与Simulink相结合使用,用户可以在统一的环境下设
6、计、建立和仿真整个嵌入式系统的行为。(8)Stateflow Coder使用Stateflow Coder可以将Stateflow建立的有限状态机模型生成相应的C语言代码,用户也可以用其集成自编的C语言程序。MATLAB的数学计算功能是最基本、最重要的,在这里提供了一个M语言的编辑环境;Toolboxes的出现又大大扩充了MATLAB的功能, Compiler则能够将M文件编辑为C语言文件或C+语言文件,进行独立应用开发,这3个部分构成了MATLAB最基础的应用。Simulink 、Blocksets、RTW共同在MATLAB的基础上为用户提供了一个系统级的设计仿真环境;Stateflow、S
7、tateflow Coder能够和Simulink配合使用,为用户提供对事件驱动系统的仿真能力。MATLAB操作环境MATLAB的启动界面主要包括六部分:标题栏、菜单栏、工具栏、Command Window(命令窗口)、Workspace(工作窗口)、Command History(历史命令窗口)及Start(项目启动菜单)。Command Window(命令窗口):输入命令,按enter执行,操作结果也会显示在此窗口;Workspace(工作窗口):是matlab的数据存储窗口,任何命令执行时产生的数据在这个窗口有记录;Command History(历史命令窗口):记录此次打开matlab
8、后,执行的所有命令,方便查阅;Start(项目启动菜单):从这里启动其他的工具。Simulink仿真环境(1)使用simulink进行仿真包括两步:模型搭建(在模型编辑窗口中搭建仿真模型,设置模型参数和仿真参数)和仿真。Simulink模型编辑窗口的启动:菜单栏“File”/“New”/“Model”命令、工具栏上的图标,快捷键CtrlNSimulink模块库浏览器的启动:通过工具栏图标或者命令窗口输入simulink,回车后可启动simulink的模块库浏览器,用于浏览及选择模块。(2)Simulink常用模块介绍:Sources模块库:给simulink模型提供输入信号,“信号源”Sink
9、s模块库:接收并显示信号Continuous模块库:主要对连续系统的建模Discrete模块库:主要对离散系统的建模Math Operations模块库:用于对输入信号进行数学操作除了基本模块外,还通过Blocksets来扩展功能,DSP Blockset、Communication Blockset、CDMA Refenrence Blockset帮助用户将仿真应用到数字信号处理、通信等领域。四、实验要求:熟悉Simulink建模环境。五、实验步骤:第一步:启动MATLAB,并熟悉MATLAB的操作环境。在桌面上双击MATLAB的“启动”图标()后将启动MATLAB,如图1-1,MATLAB
10、的启动界面主要包括六部分:标题栏、菜单栏、工具条、Command Window(命令窗口)、Workspace(工作窗口)、Command History(历史命令窗口)及Start(项目启动菜单)。图1-1 MATLAB启动后的默认界面第二步:启动Simulink模块库浏览器,在MATLAB窗口的工具栏中单击“”图标,或者单击“start”后弹出的菜单栏里选择Simulink,再单击Labrary Browser如图1-2,或者在Command Window窗口中键入命令:simulink图1-2 选择模块库浏览器的界面即可启动Simulink模块库浏览器,如图1-3所示,主要用于浏览和选择
11、模块。图1-3 Simulink模块库浏览器第三步:打开Simulink模型编辑窗口,在这里可以完成模型的搭建和仿真。执行模块库浏览器的菜单中“File”/“New”/“Model”命令,或者单击工具栏上的“”图标,或者采用快捷键【CtrlN】都可打开模型编辑窗口,其界面如图1-4所示。图1-4 模型编辑窗口第四步:熟悉Simulink建模方法(1)打开模型:Simulink主要有两种方法来打开模型:直接在MATLAB中选择File|Open命令,然后按照Windows的常规操作进行。直接在MATLAB命令窗口中输入模型名,然后MATLAB就会自动在工作目录中搜索。例如,在当前工作目录中存在模
12、型文件为vdp.mdl,只需要在命令窗口中输入模型名:vdp(2)模块复制有四种方法来复制内部模块:单击所要复制的模块,然后选择Edit|Copy命令,最后选择Edit|Paste命令。单击所要复制的模块,然后按Ctrl+C组合键,最后按Ctrl+V组合键。单击所要复制的模块,按住Ctrl键,然后用鼠标拖动要复制的模块。按住鼠标的右键拖动要复制的模块,这种方法最为方便,推荐使用。(3)模块删除删除模块通常有下面的3种方法:单击所要删除的模块,然后按Delete键,比较方便,推荐使用。单击所要删除的模块,然后选择Edit|Delete命令。单击所要删除的模块,然后右击,从弹出的菜单中选择Dele
13、te命令。(4)模块连线操作模型中有模块,还必须有连线将模块联系起来才能够变成一个有机整体。模块和连线是模型的骨架,模块和模型的参数设置是模型的灵魂。下面就对连线的几个基本操作进行介绍。1)绘制连线绘制连线的操作步骤如下:新建模型窗口,保存文件名为model02to02.mdl。向窗口中添加相应的模块,在此不要求实现一个运行的模型,只需任意拖动两个模块到模型窗口中,如图1-5所示。图1-5 添加模块将鼠标指针移动到模块输出端,鼠标指针呈十字形,然后按住鼠标左键,移动到所要连接的模块输入端,在此依次连接Sime WaveGain求和模块Scope,Constant求和模块。绘制模块Gain输入端
14、的连线,将鼠标指针移动到ConstantScope连线上,按住鼠标右键,并拖动到Scope输入端,如图1-6所示。图1-6 绘制连线2)连线删除删除连线和删除模块一样,有3种方法:单击所要删除的连线,然后按Delete键。单击所要删除的连线,然后选择Edit|Delete命令。单击所要删除的连线,然后右击,在弹出菜单中选择Delete命令。实验二 CDMA反向链路中的64进制正交调制过程的验证实验一、实验目的:通过Simulink Blocksets(专用模型库)中的CDMA Reference Blockset所提供的IS95CDMA的动态仿真系统,在仿真过程中用向量示波器观察信号经过各个模
15、块后的变化情况,分析出实现反向链路中的64进制正交调制过程的功能模块,并观察调制模块的输入信号和输出信号波形,计算输入调制符号速率和输出码元速率,从而深刻理解反向链路中的Walsh码扩频序列的应用。二、实验环境:simulink仿真工具三、实验原理:用Walsh码进行64进制正交调制原理。如图2-1所示。图2-1 CDMA反向信道电路方框图反向CDMA信道使用64进制正交调制,每6个交织器输出的码元为一组(称为一个调制码元),用64进制的Walsh函数码之一进行传输,刚好能使26个码元组与64个Walsh函数码建立一一对应关系。将64个Walsh函数码编成号码为0,1,63,则可按以下公式计算
16、调制码元的号码,以选用不同的Walsh码。 调制码元号码 i=C0+2C1+4C2+8C3+16C4+32C5 (2-1)式中,C0C1C2C3C4C5表示一组输入码元的取值,C0是最早的码元,C5 是最新的码元。四、实验要求:1分析出实现反向链路中的64进制正交调制过程的功能模块;2观察并记录调制模块的输入信号和输出信号波形,写出相应的0-1序列;3计算输入调制码元速率和输出Walsh子码速率,以及输入调制码元的时间宽度及输出Walsh子码的时间宽度;4根据输入信号,利用公式(2-1)计算输出Walsh函数码的号码,验证64进制正交调制过程;5记录并整理实验结果和实验数据,认真完成实验报告。
17、五、实验步骤:本实验主要是对Simulink所提供的已建好的CDMA通信系统参考模型进行分析,所以需要打开参考模型“IS-95A Reverse Traffic Channel Detection”,第一步:打开参考模型“IS-95A Reverse Traffic Channel Detection”执行“Start”菜单中“Blocksets”/“CDMA Reference”/“Demos”命令,如图2-2所示。图2-2选择CDMA参考模型的界面在CDMA Reference下所列出的参考模型中选择“IS-95A Reverse Traffic Channel Detection”,单击
18、右边窗口的“Open this model”,如图2-3所示,即可打开模型“IS-95A Reverse Traffic Channel Detection”的模型编辑窗口,如图2-4所示。图2-3 MATLAB 联机帮助系统界面图2-4 模型“IS-95A Reverse Traffic Channel Detection”的模型编辑窗口第二步:查看模型的内部结构。为了将平面结构的模型简化,Simulink中提供了子系统的概念,一个模块可能是一个子系统,可以双击该模块查看其内部结构;用户还可以对该子系统进行封装,双击经过封装的子系统模块,将弹出一个“Block Parameters”参数设置
19、对话框,如果要查看该子系统的内部结构,可以先选中该模块,然后执行主菜单栏中执行“Edit”/“Look under mask”命令。第三步:选择向量示波器“Vector Scope”,如图2-5所示。图2-5 选择向量示波器界面模块库浏览器还提供了非常便捷的搜索功能来查找你所需要的基本功能模块,即可在模块库浏览器窗口的工具栏“find”后面的空白处输入你所需要的模块名称,例如“Vector Scope”,回车后浏览器会自动搜索到该模块。如图所示。图2-6 搜索向量示波器界面第四步:观察系统中各链路中的信号波形。将向量示波器拖动到“IS-95A Reverse Traffic Channel Detection”的模型编辑窗口中,与模型中的任一信号线连接,然后执行主菜单“Simulation”/“Start”命令或单击工具栏上的“”图标,系统开始仿真,这时,即可在示波器上观察信号线上所传输信号的波形。第五步:找出系统中到64进制正交调制模块。结合图2-1 CDMA反向信道电路方框图,通过模块输入信号和输出信号波形分析模型中各个模块的功能,找出实现反向链路中的64进制正交调制过程的功能模块。第六步:利用向量示波器观察64进制正交调制模块的输入与输出信号波形,完成实验要求。