




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、天津理工大学计算机与通信工程学院通信工程专业设计说明书基于Matlab/Simulink 的QPSK调制解调仿真设计与研究 姓 名 韩双年 学 号 20092226 班 级 09通信3班 指导老师 白媛 日 期 2012-12-16 目录摘 要2第一章 前 言21.1 专业设计任务及要求2 1.2 Matlab简介2 1.3 Matlab下的simulink简介3 1.4 通信系统模型3第二章 QPSK调制4 2.1 QPSK介绍4 2.2 QPSK调制原理42.2.1 相乘法42.2.2 选择法52.3 QPSK调制原理框图6 2.4 QPSK调制方式的Matlab仿真6 2.5 QPSK调
2、制方式Matlab-simulink仿真7 2.5.1 simulink调制建模72.5.2 simulink调制仿真结果8第三章 QPSK解调13 3.1QPSK解调原理133.2 QPSK解调原理框图13 3.3QPSK解调方式Matlab仿真13 3.4QPSK解调方式的Matlab-simulink仿真14 3.4.1 QPSK解调建模143.4.2 传输信道16 仿真结果163.5 仿真结果分析18第四章 QPSK通信系统性能分析19第五章 结论19参考文献20附 录20摘 要正交相移键控(QPSK),是一种数字调制方式。QPSK技术具有抗干扰能力好、误码率低、频谱利用效率高等一系列
3、优点。论文主要介绍了正交相移键控(QPSK)的概况,以及正交相移键控QPSK的调制解调概念和原理,利用Matlab中M文件和Simulink模块对QPSK的调制解调系统进行了仿真,对QPSK在高斯白噪声信道中的性能进行了,分析了解Simulink中涉及到QPSK的各种模块的功能。【关键词】Matlab QPSK Simulnk 仿真第一章 前 言1.1 专业设计任务及要求1了解并掌握QPSK调制与解调的基本原理;2在通信原理课程的基础上设计与分析简单的通信系统;3学会利用MATLAB7.0编写程序进行仿真,根据实验结果能分析所设计系统的性能。4学习MATLAB的基本知识,熟悉MATLAB集成环
4、境下的Simulink的仿真平台。5利用通信原理相关知识在仿真平台中设计QPSK调制与解调仿真系统并用示波器观察解调后的波形6在指导老师的指导下,独立完成课程设计的全部内容,能正确的阐述和分析设计和实验结果。1.2 Matlab简介 MATLAB是MATrix LABoratory的缩写,是一款由美国Math Works公司出品的商业数学软件。MATLAB 是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。除了矩阵运算、绘制函数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C+和FORTRAN)编写的程序。尽管MATLAB
5、主要用于数值计算,但是因为大量的额外的工具箱它也适合于不同领域的应用,如控制系统设计与分析、图像处理和信号处理和通信、金融建模和分析等。除了一个完整的Simulink包,提供了一个可视化的开发环境,通常用于系统仿真、动态/嵌入式系统开发等。1.3 Matlab下的simulink简介Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中只要通过简单的鼠标操作,就可以构造出复杂的系统。Simulink提供了一个建立模型方块图的图形用户接口,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统
6、的仿真结果。Simulink具有适应面广、结构和流程清晰及仿真精细、效率高、贴近实际、等优点,基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件应用于Simulink。1.4 通信系统模型通信系统就是传递信息所需要的一切技术设备和传输媒质的总和,包括信息源、发送设备、信道、接收设备和信宿(受信者) ,它的一般模型如图1.4.1所示。 图1.4.1 通信系统一般模型模拟通信系统是利用模拟信号来传递消息的通信系统,其模型如图1.4.2所示。 图1.4.2 模拟通信系统模型第二章 QPSK调制2.1 QPSK介绍 Quadrature Ph
7、ase Shift Keying通过使用载波的四个各不相同的相位差来表示输入的信息,是具有四进制的相移键控。QPSK是在M=4时的数字的调相技术,它通过约定的四种载波相位,分别为45°,135°,225°,275°,输入数据为二进制的数字序列,因为载波相位是四进制的,所有我们需要把二进制的数据变为四进制的,即把二进制序列中每两个比特分成一组,四种排列组合,即00,01,10,11,双比特码元即为一组。每两位二进制信息比特构成每一组,它们分别表示着着四个符号中的某一个符号。2.2 QPSK调制原理QPSK的调制有两种产生方法相乘电路法和选择法。 相乘法输入
8、信号是二进制不归零的双极性码元,它通过“串并变换”电路变成了两路码元。变成并行码元后,每个码元的持续时间是输入码元的两倍。用两路正交载波去调制并行码元。选择法QPSK的调制中,QPSK信号可以看成是两个载波正交的2PSK信号调制器构成。原理分析如下:基本原理和系统结构QPSK与二进制PSK一样,传输信号包含的信息都存在于相位中。个别的载波相位取四个等间隔值之一,如/4、3/4、5/4、7/4。相应的,可将发射信号定义为:其中,i1,2,3,4;E是发射信号的每个符号的能量,T为符号的持续时间,载波频率f等于nc/T,nc为固定整数。每一个可能的相位值对应于一个特定的二位组。下面介绍QPSK信号
9、的产生和检测。如图为典型的QPSK发射机框图。输入的二进制数据序列首先被不归零(NRZ)电平编码转换器转换为极性形式,即负号1和0分别用和-表示。该二进制波形被分接器分成两个分别由输入序列的奇数位偶数位组成的彼此独立的二进制波形,这两个二进制波形分别用a1(t)和a2(t)表示。此时,在任何一信号时间间隔内a1(t),和a2(t)的幅度恰好分别等于Si1和 Si2,即由发送的二位组决定。这两个二进制波形a1(t)和a2(t)被用来调制一对正交载波:,。这样就得到一对二进制PSK信号。和的正交性使这两个信号可以被独立地检测。最后,将这两个二进制PSK信号相加,从而得期望的QPSK。2.2.2 选
10、择法输入基带信号经过串并变换后用于控制一个相位选择电路,按照当时的输入双比特ab,决定选择哪个相位的载波输出。图2.2.2选择法2.3 QPSK调制原理框图 图2.3 调制原理框图2.4 QPSK调制方式的Matlab仿真I 路信号是用余弦载波,由2进制数据流的奇数序列组成;Q路信号用正弦载波,由2进制数据流的偶数序列组成。下面的a是Idata,b就是Qdata,它们分布与各自的载波相乘分别输出 I 路信号和 Q 路信号。I 路信号加上Q路信号就是QPSK输出信号。当 I 路载波信号是0相位时为1,是180°相位时为0;当Q路载波信号是0相位时为1,是180°相位时为0。2
11、.4 matlab调制仿真图2.5 QPSK调制方式Matlab-simulink仿真2.5.1 simulink调制建模 调制框图(1)产生需要的信号源在搭建QPSK调制解调系统中使用伯努力信号发生器产生随机的01比特序列,每两比特代表就一个符号。Bernoulli Binary Generator模块利用伯努利分布的原理,相应得到参数为p的伯努利分布。伯努利分布的均值1 - p和方差p(1 p)的。一个零概率参数指定p。本次实验中的p设置为0.5,即0和1等概。采样时间可根据需要进行设置,例如测误码率时采样时间设为0.01s。图信号源参数设置(2)串并变换我们先通过使用buffer 这个模
12、块来实现将信号源信号转变为两路信号。Buffer 模块可以重新分配缓冲区块的输入样本,用到了Demux,可以将一个复合输入转化为多个单一输出,即可以输出多个采样率较低的帧信号。但会产生与缓冲区容量相同的时延。所以,我们可以设置buffer的参数容量为2。图2.5.3 Buffer的参数设置(3)单极性信号转化为双极性信号因为QPSK的调制信号要求的是双极性信号,所以用伯努利随机生成二进制Generator模块产生的信号必须经过转化才能够被使用。利用加法模块和常数产生模块将1和0的序列各自减去1/2,再利用比例运算模块乘以2,就得到了1和-1 的双极性序列。(4)调制模块分别将两路信号乘以相位相
13、差 / 2的载波,然后相加。载波由正弦信号发生器产生。正弦波模块的参数设置为可基于时间的模式,时间设为使用仿真时间,我们设载波信号的幅度为1,载波频率可根据需要来进行设置,两路载波同频正交,相位相差 / 2。我们设上支路的相位为0,下支路的相位为 / 2。图2.5.4上支路载波参数图2.5.5下支路载波参数2.5.2 simulink调制仿真结果图2.5.6信号源和转变后的双极性信号图2.5.7上支路载波图2.5.8 下支路载波图2.5.9调制信号第三章 QPSK解调3.1 QPSK解调原理QPSK接收机由一对共输入地相关器组成。这两个相关器分别提供本地产生地相干参考信号和。相关器接收信号x(
14、t),相关器输出地x1和x2被用来与门限值0进行比较。如果x1>0,则判决同相信道地输出为符号1;如果x1<0 ,则判决同相信道的输出为符号0。如果正交通道也是如此判决输出。最后同相信道和正交信道输出这两个二进制数据序列被复加器合并,重新得到原始的二进制序列。在AWGN信道中,判决结果具有最小的负号差错概率。用两路具有相互正交特性的载波来解调信号,可以分离这两路正交的2PSK信号。相干解调后,并行码元经过并/串变换后,最终得到串行的数据流。3.2 QPSK解调原理框图 图3.2相干解调原理框图3.3 QPSK解调方式Matlab仿真正交支路和同相支路分别设置两个相关器(或匹配滤波器
15、) ,得到I(t)和Q(t) ,经电平判决和并/串变换后即可恢复原始信息。I_demo=QPSK_rc_n0.*cos(2*pi*f1*t1); % 解调(相干解调,与载波相乘)Q_demo=QPSK_rc_n0.*sin(2*pi*f1*t1);I_recover=conv(I_demo,xrc); % 低通滤波Q_recover=conv(Q_demo,xrc);图3.3 matlab解调仿真图3.4 QPSK解调方式的Matlab-simulink仿真3.4.1 QPSK解调建模首先将从高斯信道送过来的信号分别乘以与调制时的载波同频的载波,且相位相差为 / 2的载波。解调可以使用相关器或
16、者匹配滤波器进行解调,本次实验使用的是相关器,这时信号需要通过设置的积分器。因为积分器设置为使用积分器时,需要在时间t=T 时使得积分器复位,所以需要设置积分模块续设置在时钟下降沿时复位。并需要设置参数为使用外部信号,此时,时钟设置为与该支路码元时间相同,即是发送信号码元时间的两倍输入。然后积分后的信号经过采样并保持模块,即sample and hold 模块,此时,设置这个模块为触发上升沿,同样使用时钟设置为与该支路码元时间相同,即是发送信号码元时间的两倍输入。此时各路传输的信号相应地会使一个单位的时延产生。然后使用autothreshold 模块,该模块根据输入的信号数据自动设置出阀值,由
17、此,可对输入信号做出判定,再输出相应的二进制比特序列,并可输出阀值。最后使用N-sample switch 模块来实现并串转换,因为我们最后需要的是最原始的信号,将两路信号合二为一,在第一路信号发出一个样本时间后,样本时间设置为发送信号码元时间,开关会自动转换到第二路信号,此时换做第二路信号输入,一个码元时间后模块重置,如此循环。同样的,此模块也需要两倍的发送信号码元时间输入。积分器设置采样和保持设置图3.4.3解调模块 传输信道本次实验使用的是高斯信道和理想信道。实验所需的高斯噪声我们可以由高斯信道模块来提供,用到了Zero-Order Hold,和子模块,即SubSystem,通过子模块建
18、立新的封装(Mask)功能模块其中参数设置中信噪比为Es/No , Es/No为信号能量比噪声功率谱密度。AWGN信道模块可以将加性高斯白噪声加到一个实数的或复数的输入信号。现在输入信号是实数,这个模块增加了实数的高斯噪声,产生一个实数的输出信号。此块继承它的输入信号的采样时间。模块使用信号处理模块随机产生的噪声。初始种子可以是一个标量或矢量的长度相匹配的输入信号通道数。种子的详细资料初次,查看随机源模块库文件参考页面中设置的信号处理。该端口的数据类型都继承自该驱动器的信号块。注意权力的所有值假设一个1欧姆的标称阻抗。图高斯信道模块 仿真结果信号源和转变后的双极性信号经过高斯信道后的调制信号上
19、支路积分和采样后的信号上支路判决后的信号下支路积分和采样后的信号 下支路判决后的信号图3.4.10源信号流和经过调制解调后的信号流对比3.5 仿真结果分析从上述图中可以看出,因为整个系统模块有引进噪声,以及电路使用了积分、采样保持模块,还原后的信号幅度差异较大,通过判决门限后,得到原来的二进制信号。我们从仿真结果图中看出,信道噪声功率谱密度越大,信号信噪比越小,误码率越高,这也符合实际情况。仿真的各种条件都是理想化的,除了噪声之外不会发生任何错误,和实际情况相比,在相同的信噪比之下,比特错误率理应要小的多,但是仿真所得结果的误码率偏大。 第四章 QPSK通信系统性能分析(1)从仿真结果中看出,
20、信号信噪比越小,错误率越高,跟实际情况比较符合。(2)由于仿真中各种条件都是理想化的,包括数据在传输过程中,除了噪声影响以外不会发生任何错误,所以相对实际情况来说,在相同信噪比下,比特错误率要小的多,但是仿真所得结果与事实规律并不违背。总结:第五章 结论在搭建QPSK调制解调系统中首先遇到的问题就是串并转换问题,simulink中没有可以直接解决这个问题的模块,经过网上的搜索与查阅相关资料,最终选取buffer模块,完成可串并转换的功能,但是带人了两个单位的延迟。之后便是示波器的显示问题,此次产生的信号采样速率设置为1秒,载波频率1HZ,对仿真过程中的波形分析带来很多的方便。(3)在完成的QP
21、SK系统的simulink仿真中,由于方便起见,载波大小设为1HZ,与实际的调制解调中所用载波相差甚远,但若将载波设置变大,会对实验仿真和分析带来极大的不便。参考文献1 苗长云,沈保锁.现代通信原理及应用(第2版)M北京:电子工业出版社,2009.2 樊昌信,曹丽娜通信原理(第6版)M国防工业出版社,2009.13 刘国华,李二喜.基于FPGA的QPSK调制器的设计与实现J电子设计工程,2011(9).4 高博,杨燕,胡建军.基于Matlab的QPSK系统设计仿真J.科学技术与工程,2010(5)5 谢斌,蔡虔,钟文涛.基于MATLAB/SIMULINK的QPSK通信系统仿真J.科技广场,20
22、06(1).附 录(1)QPSK调制M文件程序clear allclose all % x1是类似1 1 -1 -1 -1 -1 1 1的分布,作用是控制相位的180°反转。%由于仿真中载波的频率是f=1Hz,所以1s的间隔内有一个完整周期的正弦波。t=-1:0.01:7-0.01; % t共800个数据,-17st1=0:0.01:8-0.01; %t1也是800个数据点 ,0 8stt=length(t); % tt=800x1=ones(1,800);for i=1:tt if (t(i)>=-1 & t(i)<=1) | (t(i)>=5&
23、t(i)<=7); x1(i)=1; else x1(i)=-1; endendt2 = 0:0.01:7-0.01; %t2是700个数据点,是QPSK_rc绘图的下标t3 = -1:0.01:7.1-0.01; %t3有810个数据点,是i_rc的时间变量t4 = 0:0.01:8.1-0.01; %t4有810个数据点,是q_rc的时间变量 tt1=length(t1);x2=ones(1,800); %x2是类似于1 1 -1 -1 1 1 1 1的分布,作用是控制相位的180°反转for i=1:tt1 if (t1(i)>=0 & t1(i)<=
24、2) | (t1(i)>=4& t1(i)<=8); x2(i)=1; else x2(i)=-1; endendf=0:0.1:1;xrc=0.5+0.5*cos(pi*f); %xrc是一个低通特性的传输函数y1=conv(x1,xrc)/5.5; %y1和x1 实际上没什么区别,仅仅是上升沿、下降沿有点过渡带y2=conv(x2,xrc)/5.5; % y2和x2 实际上没什么区别,仅仅是上升沿、下降沿有点过渡带 n0=randn(size(t2); f1=1;i=x1.*cos(2*pi*f1*t); % x1就是I dataq=x2.*sin(2*pi*f1*t1
25、); %x2就是Q dataI=i(101:800);Q=q(1:700);QPSK=sqrt(1/2).*I+sqrt(1/2).*Q;QPSK_n=(sqrt(1/2).*I+sqrt(1/2).*Q)+n0;n1=randn(size(t2);i_rc=y1.*cos(2*pi*f1*t3); % y1就是I data,i_rc可能是贴近实际的波形,i则是理想波形q_rc=y2.*sin(2*pi*f1*t4); %y2就是Q data,q_rc可能是贴近实际的波形,q则是理想波形I_rc=i_rc(101:800);Q_rc=q_rc(1:700);QPSK_rc=(sqrt(1/2)
26、.*I_rc+sqrt(1/2).*Q_rc);QPSK_rc_n1=QPSK_rc+n1;figure(1)subplot(3,1,1);plot(t3,i_rc);axis(-1 8 -1 1);ylabel('a序列');subplot(3,1,2);plot(t4,q_rc);axis(-1 8 -1 1);ylabel('b序列');subplot(3,1,3);plot(t2,QPSK_rc);axis(-1 8 -1 1);ylabel('合成序列');(2)QPSK解调M文件程序clear allclose allbit_in =
27、 randint(1e3, 1, 0 1);bit_I = bit_in(1:2:1e3); %bit_I为”奇数序列”,奇数序列是同相分量,以cos为载波bit_Q = bit_in(2:2:1e3); %bit_Q是bit_in的所有偶数下标组成的”偶数序列”,以sin为载波data_I = -2*bit_I+1; % 将bit_I中的1变成-1,0变成1; 注意data_I是500点data_Q = -2*bit_Q+1; %将bit_Q中的1变成-1,0变成1data_I1=repmat(data_I',20,1); %将500行的列向量data_I的共轭转置data_I复制为
28、20*500的矩阵,20行数据是相同的。data_Q1=repmat(data_Q',20,1);for i=1:1e4 %data_I2是将data_I1这个20*500的矩阵拉长为1*10000的行向量data_I2(i)=data_I1(i); data_Q2(i)=data_Q1(i);end;f=0:0.1:1;xrc=0.5+0.5*cos(pi*f); data_I2_rc=conv(data_I2,xrc)/5.5; % data_I2_rc就是Idatadata_Q2_rc=conv(data_Q2,xrc)/5.5; % data_Q2_rc就是Qdataf1=1;
29、t1=0:0.1:1e3+0.9; % 10010个数据,长度和data_I2_rc以及data_Q2_rc相同n0=rand(size(t1); %n0是1*10010的均匀分布的噪声I_rc=data_I2_rc.*cos(2*pi*f1*t1);Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);QPSK_rc_n0=QPSK_rc+n0;I_demo=QPSK_rc_n0.*cos(2*pi*f1*t1); % 解调(相干解调,与载波相乘)Q_demo=QPSK_rc_n0.*sin(2*pi*f1*t1);I_recover=conv(I_demo,xrc); % 低通滤波 Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010); Q=Q_recover(11:10010);t2=0:0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025混凝土承包施工合同书 混凝土合同范本
- 2025深度探讨股权转让合同
- 2025企业商业机密保密合同书
- 2025生鲜物流合作协议合同范本
- 2025商业大厦管理服务合同
- 2025年租赁合同登记备案指南
- 2025兼职从业人员劳动合同书模板
- 2025石嘴山房屋出租合同
- 2025茶叶购销合同模板
- 2025购置期房买卖合同样本
- 财务机器人开发与应用实战 课件 任务5 E-mail人机交互自动化-2
- 2024年个人廉洁自律述职报告(三篇)
- 【华为】通信行业:华为下一代铁路移动通信系统白皮书2023
- 小学家长会-做好孩子手机管理主题班会课件
- Python 程序设计智慧树知到期末考试答案章节答案2024年四川师范大学
- 山东省技能大赛青岛选拔赛-世赛选拔项目55样题(3D数字游戏技术)
- 城乡环卫保洁投标方案(技术标)
- 充值合同范本
- 2023年桂林市临桂区增设特岗教师招聘笔试环节的考试真题
- 耳穴压豆治疗失眠
- 人教版九年级化学下册实验题专项训练含答案
评论
0/150
提交评论