数字调制GUI仿真平台的设计1_第1页
数字调制GUI仿真平台的设计1_第2页
数字调制GUI仿真平台的设计1_第3页
数字调制GUI仿真平台的设计1_第4页
数字调制GUI仿真平台的设计1_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

目录TOC\o"1-3"\h\u21328前言 111149一.数字调制的原理 2257871根本原理 2149612二进制振幅键控〔2ASK〕 283803二进制频移键控(2FSK) 3138284二进制相移键控(2PSK) 4251855二进制差分相移键控〔2DPSK〕 62719二.数字调制在GUI平台仿真 8297181GUI界面的设计 8474922ASK在GUI仿真 92515932FSK在GUI仿真 103242942PSK在GUI仿真 12817152DPS在GUI仿真 1419787三.总结 1729841参考文献 18前言数字调制是指用数字基带信号对载波的一个或者多个参量进行控制,使载波的这些参量上载有基带数字信号的信息,并使已调信号的频谱位置适宜在给定的带通信道中传输。由于正弦载波共有3个参量,即振幅A,频率f,初始相位θ。这3个参量都可以独立地被调制,即可以按照基带信号变化的规律而变化。这三种调制分别成为振幅键控ASK、频移键控FSK、和相移键控PSK。由于传输失真、传输损耗以及保证带内特性的原因,基带信号不适合在各种信道上进行长距离传输。为了进行长途传输,必须对数字信号进行载波调制,将信号频谱搬移到高频处才能在信道中传输。数字调制能够提高信号在信道中传输时的抗干扰能力。随着通信系统的规模和复杂度不断增加,传统的分析设计方法已经不能适应开展的需要,通信系统计算机模拟仿真技术日益显示出其巨大的优越性。传统的通信仿真技术主要分为手工分析与电路实验两种可以得到与真实环境十分接近的结果,但耗时长方法比拟繁琐而通信系统的计算机模拟仿真技术是介于上述两种方法的一种系统设计方法。它可以让用户在很短的时间内建立整个通信系统模型,并对其进行模拟仿真计算机仿真是根据被研究的真实系统的模型,利用计算机进行实验研究的一种方法。它具有利用模型进行仿真的一系列优点,如费用低,易于进行真实系统难于实现的各种试验,以及易于实现完全相同条件下的重复试验等。Matlab

仿真软件就是分析通信系统常用的工具之一。Matlab是一种以矩阵为根底的软件开发环境,GUI是Matlab中的一种交互式、可视化的插件,可用于科学和工程的计算与可视化。Matlab的编程功能简单,并且很容易扩展和创造新的命令与函数。应用Matlab可方便地解决复杂数值计算问题。Matlab的图形界面功能GUI能为仿真系统生成一个人机交互界面,便于仿真系统的操作。因此,Matlab在通信系统仿真中得到了广泛应用,本文也选用该工具对数字调制系统进行仿真。

一.数字调制的原理1根本原理数字基带信号是低频信号,只适合在低通信道中传输,但常见的实际信道都是带通型的,所以必须对基带数字信号进行调制,讲它搬移到高频段,为了提高信号在信道中传输时的抗干扰能力,从而减少通讯的误码率。数字调制的过程就像用数字信息去控制开关,从几个具有不同参量的独立振荡源中选择所需要的参量,所以吧数字调制称为“键控”。调制过程是用数字信号的离散值作为“电键”去控制载波的幅度、频率和相位,因而数字调制有三种最根本的调制方式:振幅键控ASK、频移键控FSK、相移键控PSK,为了解决PSK的相位模糊问题有相应的DPSK。2二进制振幅键控〔2ASK〕2ASK信号在实际中虽然很少使用,但是他是研究狮子调制的根底,了解二进制振幅键控信号码元可以更好的理解FSK、PSK。幅度键控可以通过乘法器和开关电路来实现。载波在数字信号1或0的控制下通或断,在信号为1的状态载波接通,此时传输信道上有载波出现;在信号为0的状态下,载波被关断,此时传输信道上无载波传送。那么在接收端我们就可以根据载波的有无复原出数字信号的1和0。表达式可由下式写出:〔1.1〕式〔1.1〕中,为载波的角频率;A(t)是随基带调制信号变化的时变振幅,即〔1.2〕式〔1.2〕中给出的是基带信号码元A(t)的波形是矩形脉冲。这种调制信号的波形如图1.1(a)所示。2ASK调制信号的波形产生二进制振幅键控信号的方法,或称调制方法,只要有两种。第一种方法是采用相乘电路,用基带信号A(t)与载波相乘就得到了已调信号输出。第二种方法是采用开关电源,这里的开关由输入基带信号A(t)控制,用这种方法可以得到同样的波形。他们的框图分别如下:相乘器A(t)s(t) s(t)相乘器 A(t)3二进制频移键控(2FSK)频移键控是利用两个不同频率和的振荡源来代表信号1和0,用数字信号的1和0去控制两个独立的振荡源交替输出,而其振幅和初始相位不变。故其表达式为:式中,假设码元的出事相位为和;和为两个不同频率码元的角频率;A为一常数,说明码元的包络是矩形脉冲。2FSK信号的产生方法主要有两种。第一种是用二进制基带矩形脉冲信号去调制一个频率器,时期能够输出两个不同频率的码元,如图2.1所示。第二种方法是用一个受基带脉冲控制的开关电路去选择两个独立频率源的振荡作为输出,如下图。这两种方法产生的2FSK的波形根本相同,只有一点差异,即由调频器产生2FSK信号在相邻码元之间的相位是连续的;而开关法产生的2FSK信号,那么分别由两个独立的频率源产生连个不同频率的信号,故相邻码元的相位不一定是连续的。二进制频移键控的波形图如下基带信号已调信号4二进制相移键控(2PSK)2PSK(相位调制)的一种。将距离为180度的两个相位(如90度和-90度)对应0和1,是相位调制中最简单的一种。绝对相移是利用载波的相位〔指初相〕直接表示数字信号的相移方式。二进制相移键控中,通常2PSK信号码元的“0”和“1”分别用两个不同的初始相位0和来表示,而其振幅和频率保持不见。故2PSK信号的表达式可以写为下式:式中,当发送“0”时,=0;当发送“1”时。或者写成:由于上面两个码元的相位相反,故其波形的形状相同,但极性相反。因此,2PSK信号又可以表示成:

2PSK信号的产生方法主要有两种。第一种叫相乘法,时用二进制基带不归零矩形脉冲信号与载波相乘,得到相位相反的两种码元。第二种方法叫做选择法,是用此基带信号控制一个开关电路,以选择输入信号,开关电路的输入信号是相位相差的同频载波。那么两种方法的复杂程度差不多,并且都可以用数字信号处理器实现。载波移相载波移相π乘法器双极二进制相移键控的波形如下基带信号已调信号5二进制差分相移键控〔2DPSK〕2PSK虽然具有很好的误码率性能,但是他存在相位模糊的缺点,为了克服此缺点,并保存2PSK信号的优点,将2PSK改良为二进制差分相移键控〔2DPSK〕,差分相移键控又称为相对相移键控。2DPS是利用前后相邻码元的相对相位值去表示数字信息的一种方式。现假设用表示本码元初相与前一码元初相之差:那么信号码元可以表示为:式中,为载波角频率;为前一个码元的相位。2DPS的产生只需要将2PSK的绝对码转为相对码,方框图如下:码变换器码变换器〔双稳态触发器〕绝对码相对码载波载波移相π码变换A(t)S(t)二进制差分相移键控的波形如下:基带信号已调信号

二.数字调制在GUI平台仿真1GUI界面的设计翻开Matlab,点击NEW下的GraphicalUserInterface,生成一个新的fig文件在此界面下选择你所需要的控件。设计好的界面如下:

22ASK在GUI仿真在MatlabGUI中我们选择的2ASK产生是相乘电路,首先用get语句得到文字框中输入的基带信号,再计算基带信号的的长度,再使用for语句进行循环,并让每个码元与载波相乘得到调制信号并画出其图形,再画出基带信号的图形与之作比拟对照,源程序如下:%Executesonbuttonpressinpushbutton2.functionpushbutton2_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton2(seeGCBO)%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)input=get(handles.edit1,'String');n=size(input);fora=1:n(2)x=a-1:0.005:a;y=cos(4*pi*x-pi/2)*(input(a)-48);plot(x,y)holdony1=input(a)-48;plot(x,y1,'r')legend('调制信号','基带信号')xlabel('bit');ylabel('幅值');title('2ASK')holdonylim([-1.41.8]);endholdoffgridon仿真结果如下列图所示:2ASKGUI仿真效果图32FSK在GUI仿真频率调制的最简单形式是二进制频移键控〔2FSK〕。在二进制FSK中使用了两个不同频率的载波信号来传输一个二进制的信息序列。依照2ASK的方法我们取得基带信号的信息后,分别让“0”和“1”产生不同频率的正弦波,从而产生2FSK,其Matlab源程序如下:%Executesonbuttonpressinpushbutton3.functionpushbutton3_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton3(seeGCBO)%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)input=get(handles.edit1,'String');n=size(input);fora=1:n(2)x=a-1:0.005:a;ifinput(a)-48==0y=cos(8*pi*x-pi/2);elsey=cos(4*pi*x-pi/2);endplot(x,y)holdony1=input(a)-48;plot(x,y1,'r')legend('已调信号','基带信号')xlabel('bit');ylabel('幅值');title('2FSK')holdonylim([-1.41.8]);endholdoffgridon仿真结果如下列图所示:

2FSKGUI仿真效果图42PSK在GUI仿真2PSK的产生在此选用的时选择法。当基带信号是“0”时发出初相为0度的正弦波;当基带信号时“1”时发出初相为180度的正弦波。其Matlab源程序如下:%Executesonbuttonpressinpushbutton1.functionpushbutton1_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton1(seeGCBO)%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)input=get(handles.edit1,'String');n=size(input);fora=1:n(2)x=a-1:0.005:a;ifinput(a)-48==0y=cos(4*pi*x+pi/2);elsey=cos(4*pi*x-pi/2);endplot(x,y)holdony1=input(a)-48;plot(x,y1,'r')legend('已调信号','基带信号')xlabel('bit');ylabel('幅值');title('2PSK')holdonylim([-1.41.8]);endholdoffgridon仿真结果如下列图所示:

2PSKGUI仿真效果图52DPS在GUI仿真2DPSK是将2PSK的绝对码转换成相对码后,再用2PSK的产生方法依照相对码的值,输出不同初相的正弦波信号。其Matlab源程序如下:%Executesonbuttonpressinpushbutton4.functionpushbutton4_Callback(hObject,eventdata,handles)%hObjecthandletopushbutton4(seeGCBO)%eventdatareserved-tobedefinedinafutureversionofMATLAB%handlesstructurewithhandlesanduserdata(seeGUIDATA)input=get(handles.edit1,'String');n=size(input);dp=0;fora=1:n(2)x=a-1:0.005:a;dp=dp+pi*(input(a)-48);y=cos(4*pi*x+dp+pi/2);plot(x,y,'b')holdony1=input(a)-48;plot(x,y1,'r')legend('已调信号','基带

温馨提示

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

评论

0/150

提交评论