数据通信原理MATLAB仿真实验指导书_第1页
数据通信原理MATLAB仿真实验指导书_第2页
数据通信原理MATLAB仿真实验指导书_第3页
数据通信原理MATLAB仿真实验指导书_第4页
数据通信原理MATLAB仿真实验指导书_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据通信原理MATLAB 仿真实验指导书福建农林大学金山学院信息与机电工程系计电教研室 吴浩 2014 年 11 月数据通信原理 Matlab 仿真实验指导书 目录实验 1:MATLAB基础.2实验 2:MATLAB SIMULINK 的建模仿真 .9实验 3:单极性码与双极性码眼图仿真 .15实验 4:2ASK 调制与解调仿真 .18实验 5:2FSK 调制与解调仿真.24实验 6:2PSK 调制与解调仿真.31实验 7:循环码的差错控制系统仿真 .36综合实验:CDMA 通信系统的 MATLAB 仿真 .42 附录:MATLAB 程序设计 .54第 1 页2013-4-26数据通信原理 Matlab 仿真实验指导书 实验 1:MATLAB 基础一、实验目的:1熟悉 MATLAB 开发环境2掌握矩阵、变量、表达式的各种基本运算3熟悉和了解 MATLAB 图形绘制程序编辑的基本指令;4熟悉掌握利用 MATLAB 图形编辑窗口编辑和修改图形界面,并添加图形的各种标注;5掌握 plot、subplot 等指令格式和语法。二、实验原理:1MATLAB基础知识1.1 MATLAB 程序设计语言简介MATLAB,Matrix Laboratory 的缩写,是由 MathWorks 公司开发的一套用于科学工程计算的可视化高性能语言,具有强大的矩阵运算能力。与大家常用的 Fortran 和 C 等高级语言相比,MATLAB 的语法规则更简单,更贴近人的思维方方式,被称为“草稿纸式的语言”。MATLAB软件主要由主包、仿真系统(simulink)和工具箱(toolbox)三大部分组成。1.2 MATLAB 界面及帮助MATLAB 基本界面如图 1-1 所示,命令窗口包含标题栏、菜单栏、工具栏、命令行区、状态栏、垂直和水平波动条等区域。图 1-1 MATLAB 基本界面第 2 页2013-4-26数据通信原理 Matlab 仿真实验指导书 (1)菜单栏在 MATLAB 主窗口的菜单栏,共包含 File、Edit、View、Web、Window 和 Help 6 个菜单项。File 菜单项:File 菜单项实现有关文件的操作。Edit 菜单项:Edit 菜单项用于命令窗口的编辑操作。View 菜单项:View 菜单项用于设置 MATLAB 集成环境的显示方式。Web 菜单项:Web 菜单项用于设置 MATLAB 的 Web 操作。Window 菜单项:主窗口菜单栏上的 Window 菜单,只包含一个子菜单 Close all,用于关闭所有打开的编辑器窗口,包括 M-file、Figure、Model 和 GUI 窗口。Help 菜单项:Help 菜单项用于提供帮助信息。(2)工具栏MATLAB 主窗口的工具栏共提供了 10 个命令按钮。这些命令按钮均有对应的菜单命令,但比菜单命令使用起来更快捷、方便。(3)命令行区MATLAB 按以下顺序对输入命令进行解释:检查它是否是工作空间中的变量,实则显示变量内容。检查它是否是嵌入函数,是则运行之。检查它是否是子函数。检查它是否是私有函数。检查它是否是位于 MATLAB 搜索路径范围内的函数文件或脚本文件。MATLAB 里有以下几种方法可获得帮助:(1)帮助命令(help)是查询函数相关信息的最直接方式,信息会直接显示在命令窗口中。键入 help sin,会显示 sin 相关信息。(2)lookfor 命令可以从键入的关键字列出所有相关的题材,和 help 相比,lookfor 覆盖范围更广,可查找到某个主题所有词组或短语。(3)帮助窗口(help window)提供与帮助命令相同的信息,但帮助窗口界面更为方便直接。(4)帮助桌面(help desk)通过在命令窗口中选择帮助菜单的“help desk”选项或键入 helpdesk命令即可进入帮助桌面。(5)在线帮助页是帮助桌面的在线帮助均有相应的 PDF 格式文件。( 6 ) Mathworks 网 站 , 对 于 连 接 入 Internet 的 用 户 通 过 Mathworks 公 司 的 网 站 询问有关问题。2.熟悉 MATLAB 环境:MATLAB 桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器文件和搜索路径浏览器。3.掌握 MATLAB 常用命令4.MATLAB变量与运算符变量命名规则如下:(1) 变量名可以由英语字母、数字和下划线组成第 3 页2013-4-26clc清除命令窗口中内容clear清除工作空间中变量help对所选函数的功能、调用格式及相关函数给出说明lookfor查找具有某种功能的函数但却不知道该函数的准确名称who查询工作空间中的变量信息数据通信原理 Matlab 仿真实验指导书 (2) 变量名应以英文字母开头(3) 长度不大于 31 个(4) 区分大小写MATLAB中设置了一些特殊的变量与常量,列于下表。表1 MATLAB的特殊变量与常量MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符表 2 MATLAB 算术运算符表 3 MATLAB 关系运算符表 4 MATLAB 逻辑运算符第 4 页2013-4-26变量名功能说明变量名功能说明ANS默认变量名,以应答最近一次操作运算结果realmin最小的正实数i或j虚数单位INF(inf)无穷大pi圆周率NAN(nan)不定值(0/0)eps浮点数的相对误差nargin函数实际输入参数个数realmax最大的正实数nargout函数实际输出参数个数操作符功能说明=等于=不等于大于=大于等于Simulink一个称为 Simulink Library Browser 的窗口就会弹出,如下图所示:第 9 页2013-4-26数据通信原理 Matlab 仿真实验指导书 Simulink Browser 窗口左边子窗口下的各个模块库是按照应用进行分类的。在通信仿真用应用到的模块,除了 Simulink 基本模块库之外,还包括 Communication Blockset、DSPBlockset 等。在 Simulink Browser 界面下,选择“File”菜单下的“New”中的“Model”选项,弹出如图所示的模型窗口,用户就可以 Simulink Browser 中选择不同的模块来建立自己的模型。在建立完自己的模型后,保存模型,开始仿真。Simulink 的仿真主要就是针对浏览器窗口和模型窗口进行操作的。2了解SIMULINK模块库中各子模块基本功能第 10 页2013-4-26数据通信原理 Matlab 仿真实验指导书 第 11 页2013-4-26数据通信原理 Matlab 仿真实验指导书3. SIMULINK 的建模与仿真方法(1)建立数学模型:根据通信系统的基本原理,将整个系统简化到源系统,确定总的系统功能,并将各部分功能模块化,找出各部分之间的关系,画出系统流程框图模型。(2)仿真系统:根据建立的模型,从simulink 通信模型库的各个子库中,将所需要的单元功能模块拷贝到Untitled 窗口,按系统流程框图模型连接,组建要仿真的通信系统模型。(3)设置、调整参数:参数设置包括运行系统参数设置(如系统运行时间、采样速率等)和功能模块运行参数设置(正弦信号的频率、幅度、初相;低通滤波器的截至频率、通带增益、阻带衰减等)。(4)分析仿真数据和波形:在系统模型的关键点处设置观测输出模块,用于观测仿真系统的运行情况,以便及时调整参数,分析结果。三、实验内容:1.用信号发生器产生1MHz,幅度为15mV 的正弦波和方波信号,并通过示波器观察波形。注意设置仿真参数和示波器的扫描参数和幅度显示参数。使得示波器能够显示10 个正弦波周期。如图:第 12 页2013-4-26数据通信原理 Matlab 仿真实验指导书 2.SIMULINK 仿真实际应用.建立一个很小的系统,用示波器观察正弦信号的平方的波形,如图所示系统中所需的模块:正弦波模块,示波器模块。正弦波仿真电路和参数如下:第 13 页2013-4-26数据通信原理 Matlab 仿真实验指导书 系统内的示波器显示的波形如图:图 单正弦波与平方波的对比结论:两正弦波相乘之后的周期是原周期的 1/2,频度是原频度的 2 倍。四、实验报告要求:1.本次实验遇到了哪些问题?你是怎么解决的? 如何避免下次实验再遇到同样的问题?2.怎么利用Matlab Simulink建模仿真?有几个步骤?3.请用MatlabSimulink仿真两路正弦波信号相加后的结果,用示波器观察叠加后信号的周期和频率有何变化?第 14 页2013-4-26实验 3:单极性码与双极性码眼图仿真一、实验目的:1掌握单极性码眼图原理和 Matlab Simulink 仿真方法2掌握双极性码眼图原理和 Matlab Simulink 仿真方法二、实验原理:1单极性码与双极性码眼图原理详细见教材介绍三、实验内容:1. 单极性码眼图%yantu 单极性码close allclear allTs=1;eyenum=10;codenum=2000;tsample=4;dt=0.2;t=-eyenum/2:dt:eyenum/2;%ht=1/Ts*sinc(t/Ts);%定义基带传输脉冲为升余弦alpha=0.4alpha=input(输入滚降系数alpha=(缺省为1);if isempty(alpha)alpha=1;endpp=cos(alpha*pi*t/Ts);pp1=1./(1-4*t.*t*alpha*alpha/Ts/Ts);ht=1/Ts*sinc(t/Ts).*pp.*pp1;%ht=1/Ts*sinc(t/Ts)+1/Ts*sinc(t-Ts)/Ts);%产生+1、0的数字信号%code=(sign(randn(1,codenum)+1)/2+0.1*randn(1,codenum);code=sign(randn(1,codenum)+0.05*randn(1,codenum);%画眼图figure(1)hold on第15页xlabel(Ts);ylabel(rt);title(升余弦成形眼图);gridfor n=1:codenum/eyenumss=zeros(1,length(ht)+Ts/dt);for m=1:eyenumtmp=code(n-1)*eyenum+m)*ht;tmp1=ss(m*Ts/dt+1):length(ss)+tmp;ss =ss(1:(m*Ts/dt) tmp1 zeros(1,Ts/dt);enddrawnowkk=1:length(ss);plot(kk*dt-dt,ss);hold onclear ss;axis(5 15 -3 3);%pauseend2. 双极性NRZ眼图【主程序】%示意双极性NRZ基带信号经过带宽受限信号造成的码间干扰影响及其眼图clear all;close all;N =1000;N_sample=8; %每码元抽样点数Ts=1;第16页 dt = Ts/N_sample;t=0:dt:(N*N_sample-1)*dt;gt = ones(1,N_sample); %数字基带波形d = sign(randn(1,N); %输入数字序列a = sigexpand(d,N_sample);st = conv(a,gt); %数字基带信号ht1 = 5*sinc(5*(t-5)/Ts);rt1 = conv(st,ht1);ht2 = sinc(t-5)/Ts);rt2 = conv(st,ht2);eyediagram(rt1+j*rt2,40,5); %调用Matlab画眼图的函数,行40点,表示5只眼function out=sigexpand(d,M)%将输入的序列扩展成间隔为M-1个0的序列N = length(d);out = zeros(M,N);out(1,:) = d;out = reshape(out,1,M*N);四、实验报告要求:1.本次实验遇到了哪些问题?你是怎么解决的? 如何避免下次实验再遇到同样的问题?2.什么是眼图?眼图有何作用?观察仿真结果得到的眼图,标出最佳抽样时刻,判决门限电平和噪声容限。 第17页 实验 4:2ASK 调制与解调仿真一、实验目的:1掌握 2ASK 的调制原理和 Matlab Simulink 仿真方法2掌握 2ASK 的解调原理和 Matlab Simulink 仿真方法二、实验原理:12ASK调制和解调原理详细见教材三、实验内容:1.2ASK 的调制仿真1) 建立 Matlab Simulink 模型方框图2ASK 信号调制的模型方框图由 DSP 模块中的 sinwave 信号源、方波信号源、相乘器等模块组成,Simulink 模型图如下所示:图 1 2ASK 信号调制的模型方框图其中正玄信是载波信号,方波代表 S(t)序列的信号塬,正玄信号和方波相乘后就得到键控 2ASK 信号。第18页2)参数设置建立好模型之后就要设置系统参数,以达到系统的最佳仿真。从正玄信号源开始依次的仿真参数设置如下:图 2正玄信号参数设置其中 sin 函数是幅度为 2 频率为 1Hz 采样周期为 0.002 的双精度 DSP 信号。第19页图 3 方波信号源的参数设置方波信号是基于采样的,其幅度设置为 2,周期为 3,占 1 比为 2/3。系统仿真及各点波形图:经过上面参数的设置后,就可以进行系统的仿真下面是示波器显示的各点的波形图:图 4 各点的时间波形图由上图可以看出信息源和载波信号相乘之后就产生了受幅度控制的 2ASK 信号。 第20页2. 2ASK 解调仿真2ASK 的解调分为相干解调和非相干解调法,下面采用相干解调法对 2ASK 信号进行解调(1) 建立 simulink 模型方框图相干解调也叫同步解调,就是用已调信号恢复出载波既同步载波。再用载波和已调信号相乘,经过低通滤波器和抽样判决器恢复出 S(t)信号,simulink 模型图如下:图 5 2ASK 相干解调的 simulink 模型方框图(2) 参数设置建立好模型之后,开始设置各点的参数,由于低通滤波器是滤去高频的载波,才能恢复出原始信号,所以为了使已调信号的频谱有明显的搬移,就要使载波和信息源的频率有明显的差别,所以载波的频率设置为 100Hz.为了更好的恢复出信源信号,所以在此直接使用原载波信号作为同步载波信号。下面是低通滤波器的参数设置:图 6第21页低通滤波器的参数设置图- 45 -(3) 系统仿真及各点时间波形图图 72ASK 信号解调的各点时间波形图由上图可以看出由于载波频率的提高使的示波器在波形显示上出现了一定的困难,不过要想显示调制部分的理想波形只要调整示波器的显示范围即可。第22页 (4)误码率分析由于在解调过程中没有信道和噪声,所以误码率相对较小,一般是由于码间串扰或是参数设置的问题,由图 5 可以看出此系统的误码率为 0.3636。四、实验报告要求:1.本次实验遇到了哪些问题?你是怎么解决的? 如何避免下次实验再遇到同样的问题?2.观察2ASK调制仿真,对比调制前后信号的幅度、相位和频率发生了哪些变化?什么叫数字调制?3.观察2ASK解调仿真,对比解调前后信号的幅度、相位和频率发生了哪些变化?什么叫数字解调?4.请尝试用Matlab语言来设计2ASK的调制仿真和解调仿真的程序,并把仿真结果保存下来。(选做题) 第23页 实验 5:2FSK 调制与解调仿真一、实验目的:1掌握 2FSK 的调制原理和 Matlab Simulink 仿真方法2掌握 2FSK 的解调原理和 Matlab Simulink 仿真方法二、实验原理:12FSK调制和解调原理详细见教材三、实验内容:12FSK 调制仿真2FSK 信号是由频率分别为 f1 和 f2 的两个载波对信号源进行频率上的控制而形成的,其中 f1 和 f2 是两个频率有明显差别的且都远大于信号源频率的载波信号,2FSK 信号产生的 simulink 仿真模型图如下所示:图 1 2FSK 信号的 simulink 模型方框图 第24页 其中 sin wave 和 sin wave1 是两个频率分别为 f1 和 f2 的载波,Pulse Generator 模块是信号源,NOT实现方波的反相,最后经过相乘器和相加器生成 2FSK 信号,各参数设置如下:载波 f1 的参数设置:图 2载波 sin wave 的参数设置其中幅度为 2,f1=1Hz,采样时间为 0.002s 在此选择载波为单精度信号 f2 的参数设置: 第25页 图 3 载波 sin wave1 的参数设置载波是幅度为 2,f2=2,采样时间.为 0.002 的单精度信号。本来信号源 s(t)序列是用随机的 0 1 信号产生,在此为了方便仿真就选择了基于采样的 Pulse Generator信号模块其参数设置如下: 第26页 图 4 Pulse Generator 信号模块参数设置其中方波是幅度为 1,周期为 3,占 1 比为 1/3 的基于采样的信号。经过以上参数的设置后就可以进行系统的仿真,其各点的时间波形如下:图 5 2FSK 信号调制各点的时间波形 第27页 由上图可以看出经过 f1 和 f2 两个载波的调制,2FSK 信号有明显的频率上的差别。22FSK 解调仿真解调方框图如下所示:图 62FSK 信号解调方框图其中 From File 是一个封装模块,就是 2FSK 信号的调制模块,两个

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论