MATLAB2psk通信系统仿真报告Word下载.docx
《MATLAB2psk通信系统仿真报告Word下载.docx》由会员分享,可在线阅读,更多相关《MATLAB2psk通信系统仿真报告Word下载.docx(17页珍藏版)》请在冰点文库上搜索。
如果一个达到正最大值时.另一个达到负最大值.则称为"
反相"
。
一般把信号振荡一次(一周)作为360度。
如果一个波比另一个波相差半个周期.我们说两个波的相位差180度.也就是反相。
当传输数字信号时."
1"
码控制发0度相位."
0"
码控制发180度相位。
载波的初始相位就有了移动.也就带上了信息。
相移键控是利用载波的相位变化来传递数字信息.而振幅和频率保持不变。
在2PSK中.通常用初始相位0和π分别表示二进制“1”和“0”。
因此.2PSK信号的时域表达式为
(t)=Acos
t+
)
其中.
表示第n个符号的绝对相位:
=
因此.上式可以改写为
图22PSK信号波形
解调原理
2PSK信号的解调方法是相干解调法。
由于PSK信号本身就是利用相位传递信息的.所以在接收端必须利用信号的相位信息来解调信号。
下图2-3中给出了一种2PSK信号相干接收设备的原理框图。
图中经过带通滤波的信号在相乘器中与本地载波相乘.然后用低通滤波器滤除高频分量.在进行抽样判决。
判决器是按极性来判决的。
即正抽样值判为1.负抽样值判为0.
2PSK信号相干解调各点时间波形如图3所示.当恢复的相干载波产生180°
倒相时,解调出的数字基带信号将与发送的数字基带信号正好是相反,解调器输出数字基带信号全部出错.
图32PSK信号相干解调各点时间波形
这种现象通常称为"
倒π"
现象.由于在2PSK信号的载波恢复过程中存在着180°
的相位模糊,所以2PSK信号的相干解调存在随机的"
现象,从而使得2PSK方式在实际中很少采用.
三仿真方真
四程序源代码
clearall;
closeall;
clc;
max=15;
s=randint(1,max);
%长度为max的随机二进制序列
Sinput=[];
forn=1:
length(s);
ifs(n)==0;
A=zeros(1,2000);
elses(n)==1;
A=ones(1,2000);
end
Sinput=[SinputA];
end
figure
(1);
subplot(211);
plot(Sinput);
gridon
axis([02000*length(s)-22]);
title('
输入信号波形'
);
Sbianma=encode(s,7,4,'
hamming'
%汉明码编码后序列
a1=[];
b1=[];
f=1000;
t=0:
2*pi/1999:
2*pi;
length(Sbianma);
ifSbianma(n)==0;
B=zeros(1,2000);
%每个值2000个点
elseSbianma(n)==1;
B=ones(1,2000);
a1=[a1B];
%s(t),码元宽度2000
c=cos(2*pi*f*t);
%载波信号
b1=[b1c];
%与s(t)等长的载波信号.变为矩阵形式
figure
(2);
subplot(211)
plot(a1);
gridon;
axis([02000*length(Sbianma)-22]);
编码后二进制信号序列'
a2=[];
b2=[];
forn=1:
ifSbianma(n)==0;
C=ones(1,2000);
%每个值2000点
d=cos(2*pi*f*t);
elseSbianma(n)==1;
d=cos(2*pi*f*t+pi);
a2=[a2C];
%s(t).码元宽度2000
b2=[b2d];
%与s(t)等长的载波信号
tiaoz=a2.*b2;
%e(t)调制
figure(3);
plot(tiaoz);
2psk已调制信号'
subplot(212);
plot(abs(fft(a1)));
axis([02000*length(Sbianma)0400]);
编码后二进制信号序列频谱'
plot(abs(fft(tiaoz)));
2psk信号频谱'
)
%-----------------带有高斯白噪声的信道----------------------
tz=awgn(tiaoz,10);
%信号tiaoz加入白噪声.信噪比为10
figure(4);
plot(tz);
通过高斯白噪声后的信号'
plot(abs(fft(tz)));
axis([02000*length(Sbianma)0800]);
加入白噪声的2psk信号频谱'
%-------------------同步解调-----------------------------
jiet=2*b1.*tz;
%同步解调
figure(5);
plot(jiet);
相乘后的信号波形'
plot(abs(fft(jiet)));
相乘后的信号频率'
%----------------------低通滤波器---------------------------
fp=500;
fs=700;
rp=3;
rs=20;
fn=11025;
ws=fs/(fn/2);
wp=fp/(fn/2);
%计算归一化角频率
[n,wn]=buttord(wp,ws,rp,rs);
%计算阶数和截止频率
[b,a]=butter(n,wn);
%计算H(z)
figure(6);
freqz(b,a,1000,11025);
axis([040000-1003])
lpf频谱图'
jt=filter(b,a,jiet);
figure(7);
plot(jt);
axis([02000*length(Sbianma)-22]);
经低通滤波器后的信号波形'
plot(abs(fft(jt)));
经低通滤波器后的信号频率'
%-----------------------抽样判决--------------------------
form=1:
2000*length(Sbianma);
ifjt(m)<
0;
jt(m)=1;
elsejt(m)>
jt(m)=0;
figure(8);
plot(jt)
经抽样判决后信号jt(t)波形'
经抽样判决后的信号频谱'
n=500:
2000:
a5=[];
a5=[a5jt(n)];
s1=decode(a5,7,4,'
a6=[];
length(s1);
ifs1(n)==0;
G=zeros(1,2000);
elses1(n)==1;
G=ones(1,2000);
a6=[a6G];
plot(a6);
汉明码译码后的波形'
%------------------2psk误码率仿真-------------------------
snrdB_min=-10;
snrdB_max=10;
snrdB=snrdB_min:
1:
snrdB_max;
Nsymbols=200;
snr=10.^(snrdB/10);
h=waitbar(0,'
SNRIteration'
len_snr=length(snrdB);
forj=1:
len_snr
waitbar(j/len_snr);
sigma=sqrt(1/(2*snr(j)));
error_count=0;
fork=1:
Nsymbols
d=round(rand
(1));
%随即数据
x_d=2*d-1;
%0.1分别转化为-1.1
n_d=sigma*randn
(1);
%加噪
y_d=x_d+n_d;
%加噪后接收
ify_d>
d_est=1;
else
d_est=0;
if(d_est~=d)
error_count=error_count+1;
errors(j)=error_count;
ber_sim=errors/Nsymbols;
ber_theor=(erfc(sqrt(snr))).*(1-0.5*erfc(sqrt(snr)));
figure(9);
semilogy(snrdB,ber_theor,'
-'
snrdB,ber_sim,'
*'
axis([snrdB_minsnrdB_max0.00011]);
xlabel('
信噪比'
ylabel('
误码率'
2psk信噪比误码率关系图'
legend('
理论值'
'
实际值'
)、
五实验结果及分析
图1.随机产生的15位二进制序列波形
图2.汉明码编码后的序列波形极其频谱
由图2可看出输入信号经过汉明码编码后的波形与理论推出的序列相同
图3.经过2psk调制后的信号波形及其频谱
图3中显示的2psk由于显示幅度限制已叠在一起.放大看可得到以理论相同的正弦波波形.在0.1变换出有π的相位变化.并且信号的频谱图符合信号频率被载波搬移的解释。
图4.信号通过信道加入白噪声后的波形极其频谱
图4所示是信号加入高斯白噪声后的波形.其噪比可调.实验噪比为10dB。
在频谱图下方可以看到高斯白噪声的频谱密度.和理论的高斯白噪声频谱密度相同。
图5.经过相干解调后的信号波形及其频谱
经过调制的2psk信号只能通过相干解调。
实验中当信号与载波相乘后与实验原理中的推导相符。
图6.经过低通滤波器后的信号波形及其频谱
经过低通滤波后.除去信号中的高频成分和大部分高斯白噪声
图7.低通滤波器的传输函数的频谱及相谱图
图8.经过抽样判决后的信号极其频谱
经过抽样判决后输出的波形与编码后的波形一致
图9.判决后的信号经过汉明码译码后的波形
将上一步中的信号经过汉明码译码后得到与输入波形相同的信号。
可得出这个2psk通信系统可实现。
图10.2psk信噪比与误码率关系图
六心得体会
通过这次通信原理实验.我发现自己的基础知识和应用能力都很差。
刚拿到题目时.在如何实现汉明码编码处就卡住.再后来的译码.由于程序有问题.每次都进入死循环。
最后通过各种网上的资料解决了种种问题。
通过了这次实验.我加深了课堂上所学的理论知识.提高了知识的应用能力。
熟悉了MATLAB的运行环境.掌握了一些MATLAB语言和函数的调用.很大程度上提高了自己的能力。