通信系统的计算机仿真.docx
《通信系统的计算机仿真.docx》由会员分享,可在线阅读,更多相关《通信系统的计算机仿真.docx(16页珍藏版)》请在冰豆网上搜索。
通信系统的计算机仿真
课程设计说明书
学生姓名:
学号:
学院:
班级:
题目:
频带最佳接收系统的仿真实现并比较其性能
指导教师:
一设计题目
频带最佳接收系统的仿真实现并比较其性能
二设计任务及要求
利用所学《数字通信原理》的基础知识,通过matlab实现频带最佳接收系统的仿真,并通过对2ASK,2PSK,2FSK不同接收方式进行仿真得出实际接收机与最佳接收机误码率性能的比较。
三分析
信道的特性和传输过程中引入的噪声干扰是影响通信系统性能的两个主要因素。
在发送端,考虑的是如何设计信号;在接收端,考虑的是如何从噪声干扰中正确地接收信号,即最佳接收。
在数字通信系统中,更关心的是错误概率,因为错误概率是衡量数字通信传输质量的主要指标。
信号的检测概率与信噪比有直接的关系,信噪比越大,正确检测的概率也就越大,错误概率越小;反之,信噪比越小,正确检测的概率就越小,错误概率也就越大。
确知信号的最佳接收
所谓确知信号是指其取值在任何时间都是确定的,可以预知的。
实际中在恒参信道(恒参信道是指其传输特性的变化量基本不变)中接收到的数字信号可以认为是确知信号。
二进制确知信号最佳接收机原理图
二进制确知数字信号最佳接收机的总误码率为
Pe=P(s1)P(s2/s1)+P(s2)P(s1/s2)
经推导计算可得:
式中:
ρ为互相关函数,n0为噪声功率谱密度;Eb为信号的能量;erfc(x)为误差函数。
(1)当互相关函数ρ=-1时,即相关系数最小,误码率Pe最小,此时发送的二进制信号s1(t)和s2(t)的波形为最佳波形,其误码率为
Pe=
(2)当互相关函数ρ=0时,即s1(t)和s2(t)正交,其误码率为
Pe=
(3)当发送信号s1(t)和s2(t)中有一个能量为0,此时的误码率为
Pe=
比较式
(1)、
(2)、(3),它们之间的性能相差3dB,即2ASK信号的性能比2FSK信号的性能差3dB,而2FSK信号的性能又比2PSK信号的性能差3dB。
由于2PSK信号能使互相关函数ρ=-1,因此2PSK信号是最佳信号波形;2FSK和2ASK信号的互相关系数ρ=0,因此2PSK系统的性能优于2FSK和2ASK系统;2FSK信号是等能量信号,而2ASK
信号是不等能量信号,因此2FSK系统的性能优于2ASK。
二进制随相数字信号最佳接收机的误码率
Pe=
exp(-
)
由于随机信号的相位具有随机性,因此二进制随相数字信号最佳接收机是一种非相干接收机。
实际接收机与最佳接收机误码率性能功能的比较
接收方式
实际接收机误码率Pe
最佳接收机误码率Pe
相干2PSK
相干2FSK
非相干2FSK
exp(-
)
exp(-
)
相干2ASK
非相干ASK
exp(-
)
exp(-
)
各模块的仿真实现
一、2ASK
2ASK信号的解调分为相干解调和非相干解调两种,如图所示。
相干解调需要将载频位置的已调信号频谱重新搬回原始基带位置,因此用相乘器与载波相乘来实现。
输入输出
(a)非相干解调
输入输出
Coswct
(b)相干解调
仿真程序
rs=1e3;%时间轴频率步进
fc=1e2;%载波频率100HZ
tzd=1e2;
t=0:
1/rs:
(tzd-1/rs);%码元周期0.1s,即码元速率10
forsnrb=0:
1:
10%不同信噪比
ratio=0;%初始误码数设为0,累计十次得到总误码数
fork=1:
10%十次循环产生10000码元
n=1e3;%1次产生码元数
g=randint(1,n);%产生1000个码元
tz=g(ceil(10*t+(1/rs))).*cos(2*pi*fc*t);%得到已调信号tz,100个点表示1个码元
signal=awgn(tz,snrb);%信号通过白噪声信道
Fs=1e3;%采样频率
[b,a]=butter(2,[80,120]*2/Fs);%设计巴特沃斯带通滤波器,2阶,系数为a,b
sg1=filter(b,a,signal);%信号通过该BPF
sg2=abs(sg1);%信号通过全波整流器
Fs=1e3;%采样频率
[b,a]=butter(2,10*2/Fs)%设计巴特沃斯低通滤波器
sg3=filter(b,a,sg2);%信号通过该LPF
b=0.4;%判决门限
LL=tzd/2;
fori=1:
n
ifsg3((i-1)*tzd+LL)>0.4;%取sg2的中间的点作为判决点
sg4(i)=1;
else
sg4(i)=0;
end
end%得到判决信号
[numbers,pe]=symerr(g,sg4);%利用函数得到误码率和误码数
ratio=ratio+numbers;
end
r1=ratio/(n*10);%误码数除以总点数为误码率
pel(1,snrb+1)=r1;%11个信噪比对应的11个误码率存入数组pel
end
figure;%画图
x=0:
1:
10;
x1=10.^((x+7)./10);%分贝值转化为真值
y=0.5*(erfc(sqrt(x1/4)));%2ASK信号非相关解调理论误码率计算
semilogy(x,pel,'-r',x,y,'-b');
legend('simulation','theoriticalcase');
xlabel('信噪比')
ylabel('误码率');gridon;
title('2ASK信号非相干解调时信噪比与误码率的关系');
rs=1e3;%时间轴频率步进
fc=1e2;%载波频率100HZ
tzd=1e2;%1个码元用100个点模拟
t=0:
1/rs:
(tzd-1/rs);
forsnrb=0:
1:
10%不同信噪比
ratio=0;%初始误码数设为0,累计十次得到总误码数
fork=1:
10%十次循环产生10000码元
n=1e3;%一次产生码元数
g=randint(1,n);%产生1000个码元
tz=g(ceil(10*t+(1/rs))).*cos(2*pi*fc*t);%得到调制信号tz,100个点表示1个码元
signal=awgn(tz,snrb);%信号通过白噪声信道
Fs=1e3;%采样频率
[b,a]=butter(2,[80,120]*2/Fs);%设计巴特沃斯带通滤波器,2阶,系数为a,b
sg1=filter(b,a,signal);%信号通过该BPF
sg2=2*sg1.*cos(2*pi*fc*t);%信号通过相乘器
Fs=1e3;%采样频率
[b,a]=butter(2,10*2/Fs)%设计巴特沃斯低通滤波器
sg3=filter(b,a,sg2);%信号通过该LPF
b=0.4;%判决门限
LL=tzd/2;
fori=1:
n
ifsg3((i-1)*tzd+LL)>b;%取sg2的中间的点作为判决点
sg4(i)=1;
else
sg4(i)=0;
end
end%得到判决后信号sg4
[numbers,pe]=symerr(g,sg4);%利用函数得到误码率和误码数
ratio=ratio+numbers;
end
r1=ratio/(n*10);%误码数除以总点数为误码率
pel(1,snrb+1)=r1;%11个信噪比对应的11个误码率存入数组pel
end
figure;%画图
x=0:
1:
10;
x1=10.^((x+7)./10);%分贝值转化为真值
y=0.5*(erfc(sqrt(x1/4)));%2ASK信号相干解调理论误码率计算
semilogy(x,pel,'-r',x,y,'-b');
legend('simulation','theoriticalcase');
xlabel('信噪比')
ylabel('误码率');gridon;
title('2ASK信号相干解调时信噪比与误码率的关系');
仿真结果:
2ASK非相干解调误码率统计
2ASK相干解调误码率统计
二、2PSK
2PSK信号的解调通常采用相干解调,如图所示
2PSK信号的相干解调
仿真程序
clear;
closeall;
Fd=10;%消息序列的采样频率
Fs=3*Fd;%已调信号的采样频率
M=2;
SNR_db=0:
12;%仿真信噪比范围
SNR1_db=0:
0.1:
12;%理论信噪比范围
%误码情况仿真
forn=1:
length(SNR_db)
Eb_N0=10^(SNR_db(n)/10);
sgma=sqrt(1/(2*Eb_N0));%nc,ns的均方差
x=randint(10000,1,M);%产生随机消息序列
y=dmodce(x,Fd,Fs,'psk',M);%PSK调制
ynoise=y+sqrt(Fs/Fd)*sgma*(randn(length(y),1)+j*randn(length(y),1));%加噪
z=ddemodce(ynoise,Fd,Fs,'psk',M);%解调
[numbers,pm(n)]=symerr(x,z);%计算误符号率
end;
form=1:
length(SNR1_db)
Eb_N0=10^(SNR1_db(m)/10);
pm_theory(m)=Qfunct(sqrt(2*Eb_N0));%理论误符号率0.5erfc(x/sqrt
(2))
pe_theory(m)=pm_theory(m)/log2(M);
end
semilogy(SNR_db,pm,'*',SNR1_db,pm_theory);%作图
xlabel('信噪比(dB)');
ylabel('误符号率');
legend('仿真得到的误符号率','理论符号误码曲线');
仿真结果:
2PSK误码率统计
三、2FSK
2FSK调制方式有非相干解调和相干解调:
1非相干解调
经过调制后的2FSK数字信号通过两个频率不同的带通滤波器f1、f2滤出不需要的信号,然后再将这两种经过滤波的信号分别通过包络检波器检波,最后将两种信号同时输入到抽样判决器同时外加抽样脉冲,最后解调出来的信号就是调制前的输入信号。
其原理图如下图所示:
带通滤波器f2
(a)非相干解调
2相干解调
根据已调信号由两个载波f1、f2调制而成,则先用两个分别对f1、f2带通的滤波器对已调信号进行滤波,然后再分别将滤波后的信号与相应的载波f1、f2相乘进行相干解调,再分别低通滤波、用抽样信号进行抽样判决器即可.
抽样脉冲
(b)相干解调
仿真程序
functionFSK
Fc=10;%载频
Fs=40;%系统采样频率
Fd=1;%码速率
N=Fs/Fd;
df=10;
numSymb=25;%进行仿真的信息代码个数
M=2;%进制数
SNRpBit=60;%信噪比
SNR=SNRpBit/log2(M);
seed=[1234554321];
numPlot=15;
%产生25个二进制随机码
x=randsrc(n