完整word版BPSK调制解调Word下载.docx
《完整word版BPSK调制解调Word下载.docx》由会员分享,可在线阅读,更多相关《完整word版BPSK调制解调Word下载.docx(25页珍藏版)》请在冰豆网上搜索。
图2.2BPSK信号时间波形示例
2。
2BPSK解调原理
2PSK信号的解调通常都采用相干解调,解调器原理如图2.3所示,在相干解调过程中需要用到和接收的2PSK信号同频同相的想干载波.
3:
BPSK相干解调
4BPSK解调各点时间波形
在2PSK相干信号解调过程中,当回复的相干载波产生180度倒相时,解调出的数字基带信号与将发送的数字基带信号正好相反,解调器输出数字基带信号全部错误,这通常称为“倒
”现象.为了解决这一问题,提出二进制差分相位键控2DPSK,2DPSK方式是用前后相邻码元的载波相对相位变化来表示数字信息的,假设前后相邻码元的载波相位差为
,
=0,表示数字信息“0”,当
,表示数字信息“1”,也可以当
,表示数字信息“0"
=0,表示数字信息“1”。
2DPSK用下面方法实现:
首先对二进制数字基带信号进行差分编码,将绝对吗便是成二进制信息变换成用相对码表示二进制信息,然后再进行绝对调相,从而产生二进制差分相位键控信号.调制原理如图2。
3所示:
3:
2DPSK信号调制器原理图
2DPSK相干解调原理与2PSK相干解调原理想似,只是在抽样判决后加了码反变换器,使回复的相对码,再通过码反变换器换为绝对码,从而恢复出发送的二进制数字信息,输出的绝对码不会发生任何倒置现象,从而解决载波相位模糊问题.也可采用差分相干解调,解调原理是直接比较前后码元的相位差,从而恢复出发送的二进制数字信息,由于解调的同时完成码反变换作用,故解调器中不需要码反变换器。
三、基于MATLAB的BPSK调制解调仿真
3.1仿真输出各点结果
1)产生随机的二进制比特序列
本程序传送的信号是利用随机函数产生随机的十比特二进制流。
实际通信中不少信道都不能直接传送基带信号,必须用基带信号对载波波形的某些参量进行控制,使载波的这些参量随基带信号的变化而变化,即所谓正弦载波调制。
正弦波可以作为数字模拟调制系统和数字调制系统的载波。
输出框图如下
2)随机二进制信号的频谱
3)产生载波信号
从原理上来说,受调载波的波形可以是任意的,只要已调信号适合于信道传输就可以了。
但实际上,在大多数数字通信系统中,都寻则正弦信号作为载波。
这是因为正弦信号形式简单,便于产生及接收.
因为信息速率2400b/s,载频4800Hz,一个Ts两个载波信号。
4)载波信号频谱
5)2PSK调制信号
6)2PSK调制信号频谱
7)高斯白噪声
实际信道处于一个充满了各种干扰的环境中,因此,调制信号不可能无干扰的在信道中传输.为了逼真的模拟调制信号的传输环境,所以在已调信号上叠加上高斯白噪声.在完成调制后,将形成的调制信号送到高斯白噪声的加性信道中,相当于在原信号的基础上加入高斯白噪声.
8)高斯白噪声频谱
9)2psk叠加白噪声波形
10)2PSK叠加白噪声频谱
11)滤波器的设计:
当信号接收机接收到信号后,该信号是经过调制和叠加噪声后的信号,不能为人们所用,为了使接收到的信号能为人们所用,只用对接收到的信号进去滤波和反调制(即解调)处理。
载波频率4800b/s,信息速率为2400b/s,因为二进制所以码元速率2400B,带通滤波器设计指标:
通带上、下界频率分别为2400Hz,6400Hz,通带最大衰减为0。
5dB,阶数为5。
实验设计的是数字滤波器,MATLAB信号处理工具提供椭圆滤波器的设计函数有ellipap,ellipord,以及ellip,仿真中利用ellip函数计算椭圆模拟滤波器系统函数向量系数BB1,AB1。
低通滤波器的设计与带通滤波器设计方法类似,设计指标:
通带截止频率1200Hz,通带最大衰减为0。
MATLAB工具箱中filter是一维数字滤波器,使用方法:
Y=filter(B,A,X),输入X为滤波前序列,Y为滤波后结果序列,B/A提供滤波器系数函数,B为分子,A为分母。
设计好滤波器后,使用filter函数使调制信号通过带通滤波器,使调制信号与载波相乘进行相干解调后的调制信号通过低通滤波器进行滤波.
12)调制信号通过带通滤波器
13)调制信号通过带通滤波器的频谱
14)带通滤波器单位冲激响应
15)带通滤波器频率响应
16)调制信号与载波相乘进行相干解调
17)调制信号与载波相乘后信号频谱
18)低通滤波器单位冲激响应
19)低通滤波器频率响应
20)解调信号通过低通滤波器
21)解调信号通过低通滤波器后信号频谱
22)抽样判决后的信号
23)2PSK相干解调系统性能
Pe=0.5*erfc(sqrt(SNR)),SNR为信噪比。
24)2DPSK差分相干解调系统性能
通过相干解调和低通滤波器后的信号,通过抽样判决后,原则上能恢复成系统发送的二进制基带信号,但是在实际的解调调制的过程中,BPSK系统往往会出现“倒相”,因此在抽样判决的时候需要注意这个问题。
为解决这个问题,现在在实际应用中大多数都采用二进制差分相移键控(2DPSk)。
Pe=0.5*exp(-SNR)
25)相干解调与差分相干解调误码率比较
3.2仿真结果分析
让随机产生的十比特二进制流在已知载波频率的情况下进行调制,获得的调制信号能很好的反应出在真实的通信系统中对数字基带信号进行的调制效果。
不过在真实的通信系统中,因为调制的环境里存在许多电磁干扰,还有因为仪器的精密度原因,导致调制信道达不到理想的状态,会存在一些失真。
但是随着技术的不断发展进步,失真度在慢慢的减小,以至于基本上能达到理想状况下的调制.
真实的传输信道都是处于存在多种干扰的大自然中,因此在传输信息的时候会在已调信号上叠加很多噪声,这些噪声混杂在一起称之为白噪声。
为了模拟真实的传输环境,因此在调制信号上叠加了高斯白噪声。
在接收端,把接收到的信号进行相干解调,解调后的波形是有一定失真并且存在一定规律的模拟波形,因此在调制后会把调制信号通过一个低通的滤波器,滤掉传输波形频率以外的波形,即噪声。
调制信号通过低通滤波器后还不是我们所要的二进制波形,是模拟的波形数据,因此必须对改模拟波形进行抽样判决。
抽样判决的条件根据调制的时的“0”“π”相位来确定.在本实验仿真情况下,模拟系统成功的恢复了发送的二进制基带信号。
但是在实际的通信系统中,往往由于系统所在的环境、仪器的精密度、系统中的各种电磁干扰,导致了调制解调都不能百分之百得都正确,存在一定的误差,这个误差称之为误码率。
在BPSK信号中,相位变化是以未调载波的相位作为参考基准的。
由于它利用载波相位的绝对数值表示数字信息,所以又称为绝对相移。
在前面已经说过,BPSK相干解调时,由于载波恢复中相位有0、π的模糊性,导致解调过程中出现“反相工作”现象,恢复出的数字信号“1”和“0”倒置,从而使BPSK在实际中难以应用。
为了克服这个缺点,人们提出了二进制差分相移键控(2DPSK)方式.
2PSK与2DPSK系统比较:
1、从图看出,差分相干解调误码率比2PSK相干解调误码率大,相同信噪比下,相干解调2PSK系统的误码率小。
2、检测这两种信号时判决器均可工作在最佳门限电平(零电平).
3、2PSK存在反向工作问题,而2DPSK系统不存在.
四、源程序
Clc;
clear
%产生比特信号
t=0:
0。
01:
9。
99;
a=randint(1,10);
m=a(ceil(t+0.01));
figure
(1)
plot(t,m)
title('
产生随机十比特二进制比特序列’);
axis([0,10,-2,2]);
%载波信号%
fc=4800;
fs=100000;
ts=0:
1/fs:
(1000-1)/fs;
carry=cos(2*pi*fc*ts/2.5);
%因为信息速率2400b/s,载频4800Hz,一个Ts两个载波信号,不除2。
5是五个载波
figure
(2)
plot(t,carry)
载波信号'
)
axis([0,10,-2,2]);
%2psk调制%
e_2psk=cos(2*pi*fc*ts/2。
5+pi*m);
;
figure(3)
plot(t,e_2psk)
title(’2psk调制信号'
);
axis([0,10,-2,2]);
%产生高斯白噪声
a=0.1;
noise=a*wgn(1,1000,10);
%产生1行1000列的高斯白噪声为10dBW
figure(4)
plot(t,noise)
title(’高斯白噪声’);
axis([0,10,-2,2]);
%调制信号叠加高斯白噪声
e2psk=e_2psk+noise;
figure(5)
plot(t,e2psk)
title(’2psk叠加白噪声波形’)
axis([0,10,-2,2]);
%带通滤波器的设计%
[BB1,AB1]=ellip(5,0。
5,60,[2400,6400]*2/100000);
%带通滤波器通带上、下界频率分别为2400Hz,6400Hz,通带最大衰减为0.5dB,阶数为5,计算带通滤波器系统函数分子分母多项式系数向量BB1和AB1
e_2psk1=filter(BB1,AB1,e2psk);
%带通滤波器滤除带外噪声
figure(6)
plot(t,e_2psk1)
调制信号通过带通滤波器’)
%相干解调与载波相乘
e_2psk2=e_2psk1.*carry*2;
figure(7)
plot(t,e_2psk2)
调制信号与载波相乘进行相干解调’)
axis([0,10,—2,2]);
%设计低通滤波器
[BB2,AB2]=ellip(5,0。
5,60,700*2/100000);
%通滤波器通带截止频率分别为700Hz,通带最大衰减为0。
5dB,阶数为5,计算低通滤波器系统函数分子分母多项式系数向量BB2和AB2
e_2psk3=filter(BB2,AB2,e_2psk2);
figure(8)
plot(t,e_2psk3)
解调信号通过低通滤波器’)
%抽样判决
fori=0:
9
if(e_2psk3((i+1)*100)>
0)
e_2psk4(i*100+1:
(i+1)*100)=zeros(1,100);
else
e_2psk4(i*100+1:
(i+1)*100)=ones(1,100);
end
end
figure(9)
plot(t,e_2psk4)
title(’抽样判决后的信号’)
axis([0,10,—2,2]);
%频谱观察
%随机信号的频谱
T=t(end);
df=1/T;
N=length(m);
f=(—N/2:
N/2-1)*df;
sf=fftshift(abs(fft(m)));
figure(10)
plot(f,sf)
xlabel('
频率/Hz'
);
ylabel(’振幅'
随机二进制信号的频谱'
%载波信号频谱
sfcarry=fftshift(abs(fft(carry)));
figure(11)
plot(f,sfcarry)
xlabel(’频率/Hz'
载波信号的频谱'
%2psk调制信号频谱
sfe_2psk=fftshift(abs(fft(e_2psk)));
figure(12)
plot(f,sfe_2psk)
ylabel('
振幅’);
title(’2psk调制信号频谱'
%高斯白噪声的频谱
sfnoise=fftshift(abs(fft(noise)));
figure(13)
plot(f,sfnoise)
频率/Hz’);
ylabel(’振幅’);
高斯白噪声的频谱’)
%调制信号叠加高斯白噪声的频谱
sfe2psk=fftshift(abs(fft(e2psk)));
figure(14)
plot(f,sfe2psk)
xlabel(’频率/Hz’);
调制信号叠加高斯白噪声的频谱'
%调制信号通过带通滤波器的频谱
sfe_2psk1=fftshift(abs(fft(e_2psk1)));
figure(15)
plot(f,sfe_2psk1)
频率/Hz’);
ylabel(’振幅’);
调制信号通过带通滤波器后的频谱’)
%相干解调,调制信号与载波相乘的频谱
sfe_2psk2=fftshift(abs(fft(e_2psk2)));
figure(16)
plot(f,sfe_2psk2)
xlabel(’频率/Hz’);
调制信号与载波相乘的频谱’)
%解调信号通过低通滤波器后的频谱
sfe_2psk3=fftshift(abs(fft(e_2psk3)));
figure(17)
plot(f,sfe_2psk3)
title(’解调信号通过低通滤波器后的频谱'
%抽样判决后的信号的频谱
sfe_2psk4=fftshift(abs(fft(e_2psk4)));
figure(18)
plot(f,sfe_2psk4)
抽样判决后的信号的频谱’)
%滤波器单位冲激响应
%带通滤波器单位冲激响应
dimpulse(BB1,AB1)
title(’带通滤波器单位冲激响应'
axis([0,5000,—0。
06,0.06]);
%低通滤波器单位冲激响应
figure(19)
dimpulse(BB2,AB2)
axis([0,1000,-0.02,0.02]);
title(’低通滤波器单位冲激响应’)
%滤波器频率响应曲线
%带通滤波器频率响应曲线
figure(20)
w=0:
1:
2*pi*0。
3;
freqz(BB1,AB1,w)
title(’带通滤波器幅频相频曲线’)
%低通滤波器频率响应曲
w=0:
0.1:
figure(21)
freqz(BB2,AB2,w)
低通滤波器幅频相频曲线'
%10.^(-2)-10.^(-6)误码曲线
r=0:
11;
rr=10。
^(r/10);
pe=0.5*(erfc(sqrt(rr)));
figure(22)
semilogy(r,pe)
r/dB’);
ylabel(’pe’);
title(’相干解调下,10。
^(-2)-10.^(-6)误码曲线’)
%不同强度白噪声下误码率
r=-8:
4:
16;
pe=0.5*(erfc(sqrt(rr)));
figure(23)
semilogy(r,pe1)
r/dB’);
ylabel(’pe’);
2PSK相干解调下误码率曲线'
pe2=0。
5*exp(—rr);
figure(24)
semilogy(r,pe2)
xlabel(’r/dB'
差分相干解调下误码率曲线'
figure(25)
semilogy(r,pe1,'
r'
holdon
semilogy(r,pe2,'
b'
legend('
差分相干解调误码率’,’相干解调误码率'
3)
五、心得体会
本次这个作业涉及到的内容是在本科学习的2PSK调制解调,那是学习觉得原理很简单,但那时只是纯粹学习原理理论,并没有亲自动手去实现那些过程,去画出各点的波形.这次就要求用软件仿真出来,要开始做还真有点无从下手。
因为不仅仅涉及到原理框图的简单实现,还有滤波器如何实现,所以又不得不翻《数字信号处理》这本书,还有各点频谱曲线,滤波器单位冲激响应,频率响应等曲线的画法,使用什么函数等等。
通过这次作业使我对原理理论有了更深的了解,对MATLAB仿真软件的使用更熟练,对其中很多函数的使用用法有了学习,加强了自己动手能力和学习技能。
其实这也许真的是自己独立第一次写这么长的程序,中间过程遇到很多困难,比如,自己再刚开始时没考虑载波频率是基带信号码元速率的两倍,因此一个周期应该有两个载波,由于刚开始没考虑就没注意这点,最后程序都编写的差不多时,再看题才注意到这个,这就告诉自己一开始就要注意到各个要求,对自己以后学习有很大帮助。
总的老说,这次作业收获很大,就像一句话说的,如果不做,总会有借口,如果做,总会有办法。
六、参考文献
[1]张辉,曹丽娜.现代通信原理与技术.西安电子科技大学出版社.
[2]高西全,丁玉美.数字信号处理.西安电子科技大学出版社.
[3]王玉磊.从零开始学MATLAB。
中国铁道出版社.