您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 用matlab实现16PSK通信课程设计
目录1课程设计目的…………………………………………………………12课程设计要求…………………………………………………………13相关知识………………………………………………………………14课程设计分析…………………………………………………………45仿真……………………………………………………………………76结果分析……………………………………………………………127参考文献……………………………………………………………14沈阳理工大学通信系统课程设计报告116PSK系统设计1.课程设计目的(1)根据题目,查阅有关资料,掌握16进制相移键控的基本原理。(2)学习MATLAB软件,掌握MATLAB中元器件使用及参数的设置。(32.课程设计要求(1)掌握相移键控的相关知识、概念清晰。(2)掌握MATLAB使用方法,利用软件绘制图像。(3)程序设计合理、能够正确运行。3.相关知识3.1数字通信系统简介通信系统是为了有效可靠的传输信息,信息由信源发出,以语言、图像数据为媒体,通过电(光)信号将信息传输,由信宿接收。通信系统又可分为数字通信与模拟通信。实现数字通信,必须使发送端发出的模拟信号变为数字信号,这个过程称为“模数变换”。模拟信号数字化最基本的方法有三个过程,第一步是“抽样”,就是对连续的模拟信号进行离散化处理,通常是以相等的时间间隔来抽取模拟信号的样值。第二步是“量化”,将模拟信号样值变换到最接近的数字值。因抽样后的样值在时间上虽是离散的,但在幅度上仍是连续的,沈阳理工大学通信系统课程设计报告2量化过程就是把幅度上连续的抽样也变为离散的。第三步是“编码”,就是把量化后的样值信号用一组二进制数字代码来表示,最终完成模拟信号的数字化。数字信号送入数字网进行传输。接收端则是一个还原过程,把收到的数字信号变为模拟信号,即“数据摸变换”,从而再现声音或图像。数字通信系统模型图为:信源→信源编码→信道编码→调制→信道→解调→信道解码→信源解码→信宿↑噪声3.2MATLAB简介3.2.1基本功能MATLAB是很实用的数学软件它在数学类科技应用软件中在数值运算方面首屈一指。MATLAB可以进行运算、绘制函数和数据、实现算法、创建用户界面、连接接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、金融建模设计与分析等领域。MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且mathwork也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。3.2.2MATLAB产品应用MATLAB产品族可以用来进行以下各种工作:●数值分析●数值和符号计算沈阳理工大学通信系统课程设计报告3●工程与科学绘图●控制系统的设计与仿真●数字信号处理技术●通讯系统设计与仿真3.2.3MATLAB特点●此高级语言可用于技术计算●此开发环境可对代码、文件和数据进行管理●交互式工具可以按迭代的方式探查、设计及求解问题●二维和三维图形函数可用于可视化数据●各种工具可用于构建自定义的图形用户界面3.2.4MATLAB系列工具优势(1)友好的工作平台和编程环境MATLAB由一系列工具组成。这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。(2)简单易用的程序语言MATLAB一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。新版本的MATLAB语言是基于最为流行的C++语言基础上的,因沈阳理工大学通信系统课程设计报告4此语法特征与C++语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式。使之更利于非计算机专业的科技人员使用。而且这种语言可移植性好、可拓展性极强,这也是MATLAB能够深入到科学研究及工程计算各个领域的重要原因。(3)强大的科学计算机数据处理能力MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。函数中所使用的算法都是科研和工程计算中的最新研究成果,而前经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。3.3绝对相移键控调制仿真为了提高通信系统的频带利用率,多元数字调制是一个重要的途径。相同的码元宽度占据相同频带宽度的资源,多元调制情况下一个符号(码元)代表了若干比特的信息。相同资本资源下,传输了更多信息。提高频带利用率是以降低功率利用率为代价的。相同的发射功率下,信号空间中元数越多,各个信号之间的距离越小,抗干扰能力越差。因为相同的噪声功率使信号偏离原有位置相同的距离,信号之间的距离俞小接收时判错的概率越大。为了降低误码率,只有提高发射功率。对于移动设备等场合提高功率又是难以实现的。工程实践中应权衡二者的关系。应用仿真的方法,可以得出多元调制情况下频带利用率,功率利用率,误码率与调制方式,传输环境之间的定量关系,为系统规划,设计提供有参考的价值的信息。4.课程设计分析4.1MPSK的概念MPSK即多进制相移键控,又称为多相制。这种键控方式是多进制键控的主要方式。在M进制的相移键控信号,用M个相位不同的载波分别代表M个不同沈阳理工大学通信系统课程设计报告5的符号。如果载波有2n个相位,它可以代表n位二进制码元的的不同组合的码组。多进制相移键控也分为多进制绝对相移键控和多进制相对相移键控。在MPSK信号中,载波相位有M种可能取值,qn=2πn/M(n=1,2,…M)。因此MPSK信号可表示为S(t)=cos(ω0t+θn)=cos(ω0t+2πn/M)若载波频率是基带信号速率的整数倍,则上式可改写为S(t)=∑g(t-nTs)cos(ω0t+θn)=cosω0tΣg(t-nTs)cosθn-sinω0tΣg(t-nT)sinθn式中g(t)是高度为1、宽度为Ts的矩形脉冲。式中表明,MPSK信号可等效为两个正交载波的MASK信号之和。所以,MPSK信号的带宽和MASK信号的带宽相同。因此,MPSK系统是一种高效率的信息传输方式。但是,当M的取值增加时,载波间的相位差也随之减少,这就使它的抗噪声性能变差。16PSK(16PhaseShiftKeying16移相键控)是一种相位调制算法。相位调制(调相)是频率调制(调频)的一种演变,载波的相位被调整用于把数字信息的比特编码到每一词相位改变(相移)。16PSK中的PSK表示使用移相键控方式,移相键控是调相的一种形式,用于表达一系列离散的状态,16PSK对应16种状态的PSK。如果是其一半的状态,即8种,则为EPSK,如果是其2倍的状态,则为32PSK。4.216PSK调制解调沈阳理工大学通信系统课程设计报告64.2.116PSK图4.14位比特信息到16RSK符号的映射关系16PSK(绝对相移键控)是用载波的16种不同相位表示不同的数字信息。16PSK调制的16个矢量端点均匀分布在圆上,其数学表达式包括同相分量和正交分量两部分。16PSK是将输入的二进制信号序列经过串并转换每次将一个4位的码元映射为一个符号的相位,因此符号速率为比特率的1/4。不同的码元和对应的相位映射如图4-1所示4.2.216PSK调制解调框图二进制将每4比特码元变换为相应的串/并变换tccostcsin成型滤波器)(tL)(tQ}{kbisaaic,},{1nb},{2nb},{3nb},{4nb},{naic},{nais)(tGT成型滤波器)(tGT信号PSK16八电平序列八电平序列沈阳理工大学通信系统课程设计报告7图4.216PSK调制框图最大似然检测)(xr)(1tf0(_)dtTs0(_)dtTs)(2tf输出TsTs1r2r图4.316PSK最佳接收框图5仿真5.116PSK仿真模块建模16PSK基带调制仿真系统如图5-1沈阳理工大学通信系统课程设计报告8图5.116PSK基带调制仿真仿真系统中各模块的主要参数沈阳理工大学通信系统课程设计报告9图5-2随机整数发生器主要参数图5-316PS调制器主要参数沈阳理工大学通信系统课程设计报告10图5-4信道的主要参数5.2程序内容(1)生成一个随机的二进制比特流。(2)将二进制比特流转换成对应的十六进制信号。(3)用16PSK调制器对信号进行调制并画出信号的星座图。(4)在16PSK信号中加入高斯白噪声。(5)画出通过信道之后接收信号的星座图。(6)生成信号眼图。沈阳理工大学通信系统课程设计报告11(7)16PSK信号的解调。(8)计算误码率。5.3程序如下:M=16;k=log2(M);n=100000;%比特序列长度samp=1;%过采样率x=randint(n,1);%生成随机二进制比特流stem(x(1:50),'filled');%画出相应的二进制比特流信号title%('二进制随机比特流');xlabel('比特序列');ylabel%('信号幅度');x4=reshape(x,k,length(x)/k);%将原始的二进制比特序列每四个一组分组,并排列成k行length(x)/k列的矩阵xsym=bi2de(x4.','left-msb');%将矩阵转化为相应的16进制信号序列figure;stem(xsym(1:50));%画出相应的16进制信号序列xlabel('信号序列');ylabel('信号幅度');y=modulate(modem.pskmod(M),xsym);%用16PSK调制器对信号进行调制scatterplot(y);%画出16PSK信号的星座图text(real(y)+0.1,imag(y),dec2bin(xsym));axis([-55-55]);EbNo=15;%假设Eb/No=15dbsnr=EbNo+10*log10(k)-10*log10(samp);%信噪比yn=awgn(y,snr,'measured');%加入高斯白噪声h=scatterplot(yn,samp,0,'b.');%经过信道后接收到的含白噪声的信号沈阳理工大学通信系统课程设计报告12星座图holdon;scatterplot(y,1,0,'k+',h);%加入不含高斯白噪声的信号星座图title%('接收信号星座图');legend%('含噪声接收信号','不含噪声接收信号');axis([-55-55]);holdoff;eyediagram(yn,2);%眼图yd=demodulate(modem.pskdemod(M),yn);%此时解调出来的是16进制信号z=de2bi(yd,'left-msb');%转化为对应的二进制比特流z=reshape(z.',numel(z),1');[number_of_errors,bit_error_rate]=biterr(x,z)%计算误码率运行结果:number_of_errors=94bit_error_rate=9.4000e-004沈阳理工大学通信系统课程设计报告136.结果分析通过理论与编
本文标题:用matlab实现16PSK通信课程设计
链接地址:https://www.777doc.com/doc-6119411 .html