基于MATLAB的BPSK调制仿真及性能分析

******************

实践教学

*******************

兰州理工大学

计算机与通信学院

2015年春季学期

通信系统仿真训练课程设计

题目:基于MATLAB的BPSK调制仿真及性能分析

专业班级:

姓名:

学号:

指导教师:

成绩:

摘要

BPSK是在21世纪的现阶段,数字通信系统是现代通信系统的主流,在社会生活各个方面占据重要地位,调制与解调是一个不可或缺的环节,它大大提高了信号的传输性能和安全性。BPSK作为数字通信系统中的一种简单、基础的调制解调方法,抗干扰能力强,容易仿真实现。在了解并掌握了BPSK调制与解调原理后,学习MATLAB仿真软件的使用方法。

本次课程设计为基于MATLAB的BPSK调制仿真。本次课设着重介绍了算法的实现,并采用MATLAB程序仿真测试了BPSK过程中单极性不归零编码、脉冲成形、PSK调制、信号通过AWGN信道、载波恢复、解调、解码等过程。

关键词:BPSK、调制解调、MATLAB仿真、数字通信系统

前言 (3)

一、BPSK原理 (4)

1.1 MPSK的介绍 (4)

1.1.1 MPSK的介绍 (4)

1.2 BPSK简介 (5)

1.2.1 BPSK的概念及分类 (5)

1.3 BPSK信号的产生 (5)

1.4 BPSK调制 (5)

1.4.1 调制的概念 (5)

1.4.2 调制的种类 (6)

1.4.3 调制的作用 (6)

1.4.4 调制方式 (6)

1.4.5 BPSK的调制原理 (7)

1.5 BPSK的解调 (8)

1.6 高斯噪声 (8)

1.6.1 高斯白噪声 (8)

二、设计思路 (9)

三、设计仿真及分析 (10)

3.1 设计仿真 (10)

3.2 结果总体分析 (13)

总结 (14)

参考文献 (15)

致谢 (16)

数字通信系统使用的最基本的就是PSK,实际上由于交调的存在,大都使用PSK,由于电波主要在自由空间传播,信道参数比较稳定,信道的主要干扰是高斯白噪声,因而可视为恒参信道。理论分析指出,在恒参信道中,采用PSK的误码率最低,更有效地利用卫星频带,在接收机噪声的作用下,PSK的误码率最低。因而在实际中得到广泛的应用。特别是高数数据传输中FSK是一种很重演的调制方式。

因此本课程设计尝试对PSK中常用的BPSK的调制技术进行通信系统仿真训练的设计实践。本次课程设计为基于MATLAB的B P SK调制仿真及性能分析。本次课设着重介绍了算法的实现,并采用MATLAB程序仿真测试了BPSK过程中单极性不归零编码、脉冲成形、PSK 调制、信号通过AWGN信道、载波恢复、解调、解码等过程。

本设计要求采用Matlab实现对BPSK通信系统的蒙特卡罗仿真并且绘制相关的图形,此题比较难做涉及到的方面很多,对BPSK及蒙特卡罗仿算法很不了解查阅了很多资料然而涉及的有较少,但查资料当中学到了很多不知道的东西,加深了对PSK的了解。

以二进制调相为例,取码元为"1"时,调制后载波与未调载波同相;取码元为"0"时,调制后载波与未调载波反相;"1"和"0"时调制后载波相位差180°。就模拟调制法而言,与产生2ASK信号的方法比较,只是对s(t)要求不同,因此BPSK信号可以看作是双极性基带信号作用下的DSB调幅信号。而就键控法来说,用数字基带信号s(t)控制开关电路,选择不同相位的载波输出,这时s(t)为单极性NRZ或双极性NRZ脉冲序列信号均可。

本设计分析BPSK调制和解调系统,并用BPSK软件仿真调制系统,最后建立蒙特卡洛仿真模型,统计系统误码率。该题目概括了《MATLAB技术》、《通信系统原理》等课程的主要知识点,通过该设计能够培养和提高学生综合设计能力,为今后的学习和工作积累经验。

一、BPSK原理

1.1 MPSK的介绍

1.1.1 MPSK的介绍

MPSK即多进制相移键控,又称为多相制。这种键控方式是多进制键控的主要方式。在M进制的相移键控信号,用M个相位不同的载波分别代表M个不同的符号。如果载波有2n个相位,它可以代表n 位二进制码元的的不同组合的码组。多进制相移键控也分为多进制绝对相移键控和多进制相对相移键控。

在MPSK信号中,载波相位有M种可能取值,θn=2πn/M(n=1,2,…,M-1)。因此MPSK 信号可表示为

S(t) = cos(ω0t+θn) = cos (ω0t+2πn/M) ⑴若载波频率是基带信号速率的整数倍,则上式可改写为

S(t)=∑g(t-nT s)cos(ω0t+θn)=cosω0tΣcosθn g(t-nT s) -sinω0tΣsinθn g(t-nT)

⑵式中g(t)是高度为1、宽度为T s的门函数;T s为M进制码元的持续时间。亦即k(k=log2M)比特二进制码元的持续时间;θn为第N个码元对应的相位,共有M个不同的取值。

式表明,MPSK信号可等效为两个正交载波的MASK信号之和。所以,MPSK信号的带宽和MASK信号的带宽相同。因此,MPSK系统是一种高效率的信息传输方式。但是,当M的取值增加时,载波间的相位差也随之减少,这就使它的抗噪声性能变差。

数字通信系统模型如图2.1所示。

基于MATLAB的BPSK调制仿真及性能分析

图1.1.1 数字通信系统模型

1.2 BPSK简介

1.2.1 BPSK的概念及分类

BPSK (Binary Phase Shift Keying),把模拟信号转换成数据值的转换方式之一,利用偏离相位的复数波浪组合来表现信息键控移相方式。BPSK使用了基准的正弦波和相位反转的波浪,使一方为0,另一方为1,从而可以同时传送接受2值(1比特)的信息。

移相键控分为绝对移相和相对移相两种。以未调载波的相位作为基准的相位调制叫作绝对移相。

以二进制调相为例,取码元为“1”时,调制后载波与未调载波同相;取码元为“0”时,调制后载波与未调载波反相;“1”和“0”时调制后载波相位差180°。

1.3 BPSK信号的产生

就模拟调制法而言,与产生2ASK信号的方法比较,只是对s(t)要求不同,因此BPSK 信号可以看作是双极性基带信号作用下的DSB调幅信号。而就键控法来说,用数字基带信号s(t)控制开关电路,选择不同相位的载波输出,这时s(t)为单极性NRZ或双极性NRZ脉冲序列信号均可。

BPSK信号属于DSB信号,它的解调,不再能采用包络检测的方法,只能进行相干解调。

BPSK信号相干解调的过程实际上是输入已调信号与本地载波信号进行极性比较的过程,故常称为极性比较法解调。

由于BPSK信号实际上是以一个固定初相的未调载波为参考的,因此,解调时必须有与此同频同相的同步载波。如果同步载波的相位发生变化,如0相位变为π相位或π相位变为0相位,则恢复的数字信息就会发生“0”变“1”或“1”变“0”,从而造成错误的恢复。这种因为本地参考载波倒相,而在接收端发生错误恢复的现象称为“倒π”现象或“反向工作”现象。绝对移相的主要缺点是容易产生相位模糊,造成反向工作。这也是它实际应用较少的主要原因。

1.4 BPSK调制

1.4.1 调制的概念

调制(modulation)就是对信号源的信息进行处理加到载波上,使其变为适合于信道传输的形式的过程,就是使载波随信号而改变的技术。一般来说,信号源的信息(也称为信源)含有直流分量和频率较低的频率分量,称为基带信号。基带信号往往不能作为传输信号,因此必须把基带信号转变为一个相对基带频率而言频率非常高的信号以适合于信道传输。这个信号叫做已调信号,而基带信号叫做调制信号。调制是通过改变高频载波即消息

的载体信号的幅度、相位或者频率,使其随着基带信号幅度的变化而变化来实现的。而解调则是将基带信号从载波中提取出来以便预定的接收者(也称为信宿)处理和理解的过程。

1.4.2 调制的种类

调制的种类很多,分类方法也不一致。按调制信号的形式可分为模拟调制和数字调制。用模拟信号调制称为模拟调制;用数据或数字信号调制称为数字调制。按被调信号的种类可分为脉冲调制、正弦波调制和强度调制(如对非相干光调制)等。调制的载波分别是脉冲,正弦波和光波等。正弦波调制有幅度调制、频率调制和相位调制三种基本方式,后两者合称为角度调制。此外还有一些变异的调制,如单边带调幅、残留边带调幅等。脉冲调制也可以按类似的方法分类。此外还有复合调制和多重调制等。不同的调制方式有不同的特点和性能。

1.4.3 调制的作用

调制在通信系统中有十分重要的作用。通过调制,不仅可以进行频谱搬移,把调制信号的频谱搬移到所希望的位置上,从而将调制信号转换成适合于传播的已调信号,而且它对系统的传输有效性和传输的可靠性有着很大的影响,调制方式往往决定了一个通信系统的性能。

1.4.4 调制方式

在通信中,我们常常采用的调制方式有以下几种:

1、模拟调制:用连续变化的信号去调制一个高频正弦波,主要有:

1) 幅度调制(调幅AM、双边带DSB、单边带SSB、残留边带VSB以及独立边带ISB);

2) 角度调制(调频FM,调相PM)两种。因为相位的变化率就是频率,所以调相波和调频波是密切相关的;

2、数字调制:用数字基带信号控制载波,把数字基带信号变换为数字带通信号(已调信号)的过称成为数字调制,主要有:

1) 振幅键控ASK;

2) 频率键控FSK;

3) 相位键控PSK;

3、脉冲调制:用脉冲序列作为载波,主要有:

1) 脉冲幅度调制(PAM:Pulse Amplitude Modulation)。

2) 脉宽调制(PDM:Pulse Duration Modulation)。

3) 脉位调制(PPM:Pulse Position Modulation)。

1.4.5 BPSK 的调制原理

二进制移相键控是用二进制数字信号0和1去控制载波的两个相位0和π的方法。在2PSK 中,通常用初始相位0和π分别表示二进制1和0。因此,2PSK 信号的时域表达式为:

)cos(A )(2PSK n c t t e ?ω+= ⑶

式中,?n 表示第n 个符号的绝对相位:

??

?=”时发送“

”时发送“

,1,00π?n ⑷ 因此,上式可以改写为

??

?--=P

t P

t t e c c 1,cos A ,cos A )(2PSK 概率为概率为ωω ⑸ 由于两种码元的波形相同,极性相反,故BPSK 信号可以表述为一个双极性全占空矩形脉冲序列与一个正弦载波的相乘:

()t t s t e c ωcos )(2PSK = ⑹

式中

∑-=n

s n nT t g a t s )()( ⑺

这里s(t)为双极性全占空(非归零)矩形脉冲序列,g(t)是脉宽为T s 的单个矩形脉冲,而a n 的统计特性:

???--=P

P a n 1,1,

1概率为概率为 ⑻

基于MATLAB的BPSK调制仿真及性能分析

图1.4.5 BPSK信号的波形示例

1.5 BPSK的解调

BPSK信号的解调方法是相干解调法。由于PSK信号本身就是利用相位传递信息的,所以在接收端必须利用信号的相位信息采用相干解调法来解调信号。

给出了一种2PSK信号相干接收设备的原理框图。图中经过带通滤波的信号在相乘器中与本地载波相乘,然后用低通滤波器滤除高频分量,再进行抽样判决,判决器是按极性进行判决,得到最终的二进制信息。具体波形如下图:

基于MATLAB的BPSK调制仿真及性能分析

图1.5 BPSK各点时间波形

1.6 高斯噪声

1.6.1 高斯白噪声

高斯白噪声:如果一个噪声,它的幅度分布服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。热噪声和散粒噪声是高斯白噪声。所谓高斯白噪声中的高斯是指概率分布是正态函数,而白噪声是指它的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。这是考查一个信号的两个不同方面的问题。

二、设计思路

2.1系统总体设计

2.1.1总体的系统设计方案如图2.1.1所示:

基于MATLAB的BPSK调制仿真及性能分析

图2.1.1系统方案图

BPSK(Binary Phase Shift Keying)是二进制相移键控,它是一种相位调制算法。相位调制(调相)是频率调制(调频)的一种演变,载波的相位被调整用于把数字信息的比特编码到每一词相位改变(相移)。

数字带通传输中一般利用数字信号的离散取值特点通过开关键控载波,从而实现数字调制,比如对载波的振幅、频率和相位进行键控分别可以获得振幅键控(ASK)、频移键控(FSK)和相移键控(PSK)。

就总体而言,信道应看作一个线性系统,满足线性叠加原理。信号在信道中传输,存在衰耗和时延,信道中总是存在噪声,信号在实际信道中传输,将会产生失真,任何信道都有一定的频率带宽,信道不可能传送功率无限大的信号。

三、设计仿真及分析

3.1 设计仿真

3.1.1 仿真框图

在发送端,通过随机函数随即产生十比特二进制比特序列。然后把这十比特序列在频率fc=4000HZ 的载波上进行传输,并且采样频率fs=8000HZ 。经过调制后,调制信号就可以在信道上传输。但是在实际的信道中传输时,会叠加很多噪声,因此,程序模拟在实际信道上传输,产生噪声,叠加到已调信号上。

在接收端,通过相干解调的方法,把接收到的叠加有噪声的信号进行解调,但是解调后的信号还不是最先发送的二进制比特流,需要对解调得到的信号进行抽样判决,才能得到发送的二进制比特流,即发送信号。软件的仿真流程图如图3.1.1所示。

基于MATLAB的BPSK调制仿真及性能分析

图3.1.1基于MATLAB 的BPSK 调制解调仿真框图

3.1.2 仿真结果及分析

基带信号、BPSK 调制信号以及载波信号幅值:

基于MATLAB的BPSK调制仿真及性能分析

图3.1.2基带、载波、调制信号幅值图

加入加性高斯白噪声后的BPSK信号如下图所示:

基于MATLAB的BPSK调制仿真及性能分析

图3.1.3 加入加性高斯白噪声后的BPSK信号

由上图可知信号在加入高斯白噪声时,信号质量明显变差,会造成信号判决时误码率急剧增加,而信道的噪声功率固定不变,因此在传输信号时,应增加信号功率,来提高信息的传输效率。

解调以后出来的波形如图3..1.4所示:

基于MATLAB的BPSK调制仿真及性能分析

图3.1.4 加躁后解调信号

经过低通滤波器信号波形:

基于MATLAB的BPSK调制仿真及性能分析

图3.1.5 与恢复载波相乘后的信号

蒙特卡洛分析实际误码率及理论误码率仿真图如下图所示:

基于MATLAB的BPSK调制仿真及性能分析

图3.1.6 蒙特卡洛分析误码率图

码元为10000个的时候,蒙特卡洛仿真统计图如图5.6,从上图可以看出实际误码率要比理论误码率大得多,是由于理论误码率考虑到的影响因素仅仅是主要因素,而各种外界

干扰及温度等都没有考虑。当信噪比为6db的时候仿真结果和实际结果有较大误差。

3.2 结果总体分析

BPSK调制解调系统的抗噪声能力较强。但是,在操作中发现Matlab仿真系统运行时响应时间很长,需要计算机运行很长时间才能完成仿真运算过程。经过小组成员的分析,我们认为,除了算法导致了系统运算量大以外,BPSK系统本身的信号传输效率也不高,这也印证了通信原理教材中提到的BPSK系统的特点,即抗噪声干扰能力强,但数据传输效率低下。信道噪声对系统性能的主要影响是在接收信号中引入了比特差错。在二进制系统中,比特差错率表现为将符号1误认为0,或将符号0误认为符号1。很明显比特差错的频率越高,接收机的输出信号与原始信息之间的差异就越大。在存在信道噪声的情况下,可以用平均符号差错概率来衡量二进制信息传输的逼真度。平均符号差错概率的定义为,接收机输出的重构符号与所传输的二进制不相同的平均概率。在原始二进制波形中的所有比特均具有相同重要性的条件下,平均符号差错概率又称为误比特率(BER)。但是,在重构原始消息信号的模拟波形时,不同的符号差错可能需要区别对待。例如码字(表示消息信号的量化抽样值) 中重要的比特发生的错误要比不重要的比特发生的错误有害得多。

总结

通过本次设计,让我能够将课本的知识与实践相结合起来,更全面的了解书本的知识,此外,课程设计仅靠课本知识是远远不够的,通过仿真实践补充了大量的课外知识。同时对BPSK调制解调的工作原理有了更加深刻的理解,在设计之前,通过图书馆、上网浏览并收集了很多的相关材料,但当进行设计时,却也遇到了很多的问题,让我体会到了设计的要求在于系统性、可行性、准确性,很多问题的出现给我们的设计带来了难度,也同时是一次巨大的挑战,最终,在老师和同学的帮助下,克服了种种困难,顺利的完成了本次通信系统仿真训练的课程设计,在此,首先要感谢学校安排此次课程设计,让我有机会对本次课程设计能够深入了解和设计,再次感谢老师细心地指导,还有同组同学的相互沟通和帮助,使我完成了本次通信系统仿真课程设计,让我学到了许多课本里学不到的知识。在课程设计过程中查阅了大量的有关BPSK调制解调设计的书籍,巩固了以前所学过的知识,而且学到了很多在书本里没学过的知识。通信原理是通信专业的一门主干技术基础课,通过该门课程的学习,使我们掌握确定信号调制解调原理的特性,信号的传输的特性,确定信号的发送与接收的基本方法以及某些典型系统引出的一些重要的基本概念。

本设计要求采用Matlab实现对BPSK通信系统的蒙特卡罗仿真并且绘制相关的图形,此题比较难做涉及到的方面很多,对BPSK及蒙特卡罗仿算法很不了解查阅了很多资料然而涉及的有较少,但查资料当中学到了很多不知道的东西,加深了对PSK的了解。

完成这次课程设计让我收获颇多,不但进一步掌握了通信原理这一核心课程的知识及一门专业仿真软件的基本操作,而且还提高了自己的设计能力及分析问题能力。通过这次课程设计使我懂得了理论与实际相结合的必要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正做到学以致用。

参考文献

[1] 曹志刚等编,现代通信原理[M],清华大学出版社,2008

[2] 程佩青. 数字信号处理教程[M].清华大学出版社

[3] 刘卫国. MATLAB程序设计教程[M].中国水利水电出版社

[4] 桑林,郝建军,刘丹,数字通信[M].北京邮电大学出版社,2002

[5] 苗云长等主编,现代通信原理及应用[M]。电子工业出版社,2005

[6] 吴伟铃,庞沁华,通信原理[M],北京邮电大学出版社,2005

[7] 张圣勤,MATLAB7.0实用教程[M],机器工业出版社,2006

[8] 邵玉斌,Matlab/Simulink通信原理建模与仿真实例分析[M],清华大学出版社,2008

[9]樊昌信,通信原理(第6版) [M].北京:国防工业出版社.2001.

致谢

通过本次计算机通信课程设计,让我在除了课本的知识之外的知识有了更好的理解,对8PSK调制解调的工作原理有了更好的理解,在设计之前,收集了很多的材料,但当真正深入设计时,却也遇到了诸多的问题,让我体会到了设计的要求在于系统性,可行性,准确性,诸多问题的出现给我们的设计带来了难度,也同时是更大的一次挑战,最终,在老师以及同学的帮助下,克服了种种困难,顺利的完成了本次通信仿真训练的课程设计,在此,首先要感谢学校安排此次课程设计,让我有机会对本次课程设计能够深入理解和设计,再次感谢老师的细心指导和改正,还有同组同学的相互团结和帮助,使我完成了本次计算机通信课程设计,使我在求学的道路上有了更多方面知识的获得。设计过程中查阅了大量的有关PSK调制解调设计的书籍,巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合的必要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。再次感谢学校,感谢老师,感谢同学。

附录

clear all

close all

clc

num=10; %码元个数

tnum=200;%码元长度

N=num*tnum;%10个码元整体长度

a=randint(1,num,2); %产生1行num列的矩阵,矩阵内0和1随机出现

fc=0.25; %载波频率为0.5

t=0:0.05:9.99;%t从0到9.99,间隔为0.05

s=[];c=[];

for i=1:num %i从1到10循环

if(a(i)==0)

A=zeros(1,tnum); %i=0时,产生一个码元长度为tnum(200)的0码元else

A=ones(1,tnum); %i=1时,产生一个码元长度为tnum(200)的1码元end

s=[s A]; %s为随机基带信号

cs=sin(2*pi*fc*t);

c=[c cs]; %c为载波信号

end

%采用模拟调制方法得到调制信号

s_NRZ=[];

for i=1:num %i从1到num(10)循环

if(a(i)==0)

A=ones(1,tnum); %i=0时,产生一个码元长度为tnum(200)的1码元else

A=-1*ones(1,tnum); %i非0时,产生一个码元长度为tnum(200)的-1码元end

s_NRZ=[s_NRZ,A]; %s_NRZ为双极性非归零码

end

e=s_NRZ.*c; %e为BPSK调制信号

figure(1); %图1

subplot(3,2,1); %图1分为3×2部分的第一部分

plot(s); %作s(基带信号)的波形图

grid on;

axis([0 N -2 2]); %横轴长度为0到N,纵轴范围为-2到+2

xlabel('基带信号s(t)'); %x轴的注释

ylabel('基带信号幅值'); %y轴的注释

subplot(323);plot(c);grid on;

axis([0 N -2 2]);

xlabel('BPSK载波信号');

ylabel('BPSK载波信号幅值'); %作c(BPSK载波信号)的波形图subplot(325);plot(e);grid on;

axis([0 N -2 2]);

xlabel('BPSK调制信号');

ylabel('BPSK调制信号幅值'); %作e(BPSK调制信号)的波形图%信号的频谱

Fs=200; %采样频率

n=length(s); %基带信号长度

f=[0:Fs/n:Fs-Fs/n]-Fs/2; %修正频率f的范围

S=fft(s); %基带信号s的快速傅里叶变换

E=fft(e); %基带信号e的快速傅里叶变换

C=fft(c); %基带信号c的快速傅里叶变换

subplot(322);

plot(f,abs(fftshift(S))); %基带信号的频谱

title('基带信号频谱');

xlabel('f/hz');ylabel('S(w)'); grid on;

subplot(324);

相关推荐
相关主题
热门推荐