电工技术基础_电工基础知识_电工之家-电工学习网

欢迎来到电工学习网!

QPSK误码率和星座图MATLAB仿真

2017-04-11 15:21分类:电子技术 阅读:

 

一、数字调制便是把数字基带信号的频谱搬移到高频处,构成适宜在信道中传输的带通讯号。根柢的数字调制办法有振幅键控(ASK)、频移键控(FSK)、必定相移键控(PSK)、相对(差分)相移键控(DPSK)。在接纳端能够选用想干解调或非相干解调康复数字基带信号。
数字信号的传输办法分为基带传输和带通传输。可是,实习中的大大都信道(如)无线信道具有丰盛的低频重量。为了使数字信号在带通讯道中传输,有必要用数字基带信号对载波进行调制,以使信号与信道的特性相匹配。
通讯体系的抗噪声功用是指体系打败加性噪声影响的才调。在数字通讯体系中,信道噪声有或许使传输码元发作过错,过错程度通常用误码率来衡量。因此,与剖析数字基带体系的抗噪声功用相同,剖析数字调制体系的抗噪声功用,也便是求体系在信道噪声烦扰下的总误码率。
误码率(BER:bit error ratio)是衡量数据在规矩时刻内数据传输精确性的方针。误码率是指过错接纳的码元数在传输总码元数中所占的份额,更切本地说,误码率是码元在传输体系中被传错的概率,即误码率=过错码元数/传输总码元数。假定有误码就有误码率。误码的发作是因为在信号传输中,衰变改动了信号的电压,致使信号在传输中遭到损坏,发作误码。噪音、沟通电或闪电构成的脉冲、传输设备缺陷及别的要素都会致使误码(比方传送的信号是1,而接纳到的是0;反之亦然)。误码率是最常用的数据通讯传输质量方针。它标明数字体系传输质量的式是“在多少位数据中呈现一位过错”。
误信率,又称误比特率,是指过错接纳的比特数在传输总比特数中所占的份额,即误比特率=过错比特数/传输总比特数。
在数字通讯体系中,牢靠性用误码率和误比特率标明。
数字调制用“星座图”来描写,星座图中界说了一种调制技能的两个根柢参数:(1)信号散布;(2)与调制数字比特之间的映射联络。星座图中规矩了星座点与传输比特间的对应联络,这种联络称为“映射”,一种调制技能的特性可由信号散布和映射彻底界说,即可由星座图来彻底界说。
二、QPSK体系的原理
四相相移调制是运用载波的四种纷歧样相位差来表征输入的数字信息,是四进制移相键控。QPSK是在M=4时的调相技能,它规矩了四种载波相位,别离为45°,135°,225°,275°,调制器输入的数据是二进制数字序列,为了能和四进制的载波相位协作起来,则需求把二进制数据改换为四进制数据,这便是说需求把二进制数字序列中每两个比特分红一组,共有四种组合,即00,01,10,11,其间每一组称为双比特码元。每一个双比特码元是由两位二进制信息比特构成,它们别离代表四进制四个符号中的一个符号。QPSK中每次调制可传输2个信息比特,这些信息比特是经过载波的四种相位来传递的。解调器依据星座图及接纳到的载波信号的相位来差异发送端发送的信息比特。
在QPSK体系中,由其矢量图(图1)能够看出,过错断定是因为信号矢量的相位因噪声而发作违背构成的。例如,设发送矢量的相位为45°,它代表基带信号码元“11”,若因噪声的影响使接纳矢量的相位成为135°,则将错判为“01”。当纷歧样发送矢量以等概率呈现时,合理的断定门限应当设定在和相邻矢量等间隔的方位。在图中关于矢量“11”来说,断定门限应当设在0°和90°。当发送“11”时,接纳信号矢量的相位若超出这一方案(图中暗影区),则将发作错判。


对试验作用的简略剖析和阐明
图4是B点信号的星座图映射,00、01、10、11组合别离映射成-1-j,-1+j,1-j,1+j。
图5是C点信号的星座图映射,它是参加噪声后的映射作用,由图中能够看出参加噪声后大致以-1-j,-1+j,1-j,1+j为基地构成了近似圆的图画,稀有些点违背比照严峻,发作了过错。
由图6,可见QPSK仿真误码率曲线和理论误码率曲线重合在一同,QPSK仿真误比特率曲线和理论误比特率曲线也重合在一同,误码率约是误比特率的两倍,阐明试验办法是精确可行的。
三、定论
本次试验研讨了数字调制办法QPSK,对其误码率进行了查询。经过理论误码率和仿真误码的比照,了解了误码率的功用。本次试验还经过运用星座图来对试验作用进行仿真。本次试验得出定论如下:误码率是误比特率的两倍。
附录:
1、 心得领会:本次试验我收成许多,学会了运用MATLAB来处理疑问,加深了对通讯原理中有些公式和概念的了解。试验进程中也遇到了不少疑问,在星座图映射上,一开端将00,01,10,11当作一个全体,这么对全体编程存在很大艰难,因然后来查验将其分隔看,并成功映射;在核算噪声的进程中,因为通讯原理的常识未能健旺把握,在剖析和核算的进程中花了许多时刻;试验进程中,学会了运用find函数来替代for循环的功用,然后使程序作业愈加速,大大加马上试验的翻开。经过本次MATLAB的实习,应当加强MATLAB在各个学科的运用,学会用MATLAB来处理实习疑问。
2、 程序:
Eb = Energy-per-bit
Es = Energy-per-symbol = nEb with n bits per symbol
Tb = Bit duration , Rb = Bit Rate, the bit transmission time Tb = 1/Rb
Ts = Symbol duration
N0 / 2 = Noise power spectral density (W/Hz)
Pb = Probability of bit-error
Ps = Probability of symbol-error
Eb/N0 = The energy per bit to noise power spectral density ratio。It is a normalized signal-to-noise ratio (SNR) measure, also known as the "SNR per bit".
SYMERR Compute number of symbol errors and symbol error rate.[NUMBER,RATIO] = SYMERR(X,Y) compares the elements in the two matrices X and Y. The number of the differences is output in NUMBER. The ratio of NUMBER to the number of elements is output in RATIO.
close all
clear all
SNR_DB=[0:1:12]; %Signal-to-noise ratio gradually improve
sum=1000000;
data= randsrc(sum,2,[0 1]); %generate a 1000000*2 random matrix, using [0 1]
[a1,b1]=find(data(:,1)==0&data(:,2)==0); %returns the row and column indices of the evaluated expression which are TRUE.
message(a1)=-1-j; % map [ 0 0] to 225°
[a2,b2]=find(data(:,1)==0&data(:,2)==1);
message(a2)=-1+j; % map [ 0 1] to 135°
[a3,b3]=find(data(:,1)==1&data(:,2)==0);
message(a3)=1-j; % map [ 1 0] to 275°
[a4,b4]=find(data(:,1)==1&data(:,2)==1);
message(a4)=1+j;% map [ 0 0] to 45°
scatterplot(message)
title('B点信号的星座图')
A=1;
Tb=1;
Eb=A*A*Tb;
P_signal=Eb/Tb;
NO=Eb./(10.^(SNR_DB/10)); %SNR_DB=10.*log10(Eb./NO)
P_noise=NO; %noise power 单边功率谱密度(N0)首要用在复数信号中,两端功率谱密度(N0/2)首要用在实信号中。
sigma=sqrt(P_noise);
for Eb_NO_id=1:length(sigma)
noise1=sigma(Eb_NO_id)*randn(1,sum);
noise2=sigma(Eb_NO_id)*randn(1,sum);
receive=message+noise1+noise2*j; %previously unconsidered: how to add gaussian noise to the original signal
resum=0;
total=0;
m1=find(angle(receive)0); %demodulate the [ 1 1] pattern
remessage(1,m1)=1+j;
redata(m1,1)=1;
redata(m1,2)=1;
m2= find( angle(receive)>pi/2&angle(receive)%demodulate the [ 0 1] pattern
remessage(1,m2)=-1+j;
redata(m2,1)=0;
redata(m2,2)=1;
m3=find( angle(receive)>-pi&angle(receive)%demodulate the [ 0 0] pattern
remessage(1,m3)=-1-j;
redata(m3,1)=0;
redata(m3,2)=0;
m4=find( angle(receive)>-pi/2&angle(receive)%demodulate the [ 1 0] pattern
remessage(1,m4)=1-j;
redata(m4,1)=1;
redata(m4,2)=0;
[resum,ratio1]=symerr(data,redata); % 'symerr' Compute number of symbol errors and symbol error rate
pbit(Eb_NO_id)=resum/(sum*2); %1000000 symbols -->2000000 bits QPSK: 2bits per symbol
[total,ratio2]=symerr(message,remessage); %Compute number of symbol errors and symbol error rate
pe(Eb_NO_id)=total/sum; % Calculated according to the definition
end
scatterplot(receive)
title('C点信号的星座图')
Pe=1-(1-1/2*erfc(sqrt(10.^(SNR_DB/10)/2))).^2;
Pbit=1/2*erfc(sqrt(10.^(SNR_DB/10)/2));
figure(3)
semilogy(SNR_DB,pe,':s',SNR_DB,Pe,'-*',SNR_DB,pbit,'-o',SNR_DB,Pbit,':+')
legend('QPSK仿真误码率','QPSK理论误码率','QPSK仿真误比特率','QPSK理论误比特率',1)
xlabel('信噪比/dB')
ylabel('概率P')
grid on

上一篇:epon中onu版别抵触缺陷定位处理

下一篇:华为5680t组播事务配备指令

相关推荐

电工推荐

    电工技术基础_电工基础知识_电工之家-电工学习网
返回顶部