我是靠谱客的博主 舒心裙子,最近开发中收集的这篇文章主要介绍《通信原理》awgn信道仿真,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、实验内容

1.仿真正交相移键控(Quarterrary Phase Shift Keying,QPSK)调制的基带数字通信系统通过AWGN信道的误符号率(Symbol Error Rate,SER)和误比特率(Bit Error Rate,BER),假设发射端信息比特采用Gray编码影射,基带脉冲采用矩形脉冲,仿真时每个脉冲的抽样点数为8,接收端采用匹配滤波器进行相干解调。

2.计算信号的BER和SER,并画出信号的发射信号的星座图和接收信号的星座图以及BER和SNR随SNR变化的曲线。

二、实验结果

        实验:仿真正交相移键控(Quarterrary Phase Shift Keying,QPSK)调制的基带数字通信系统通过AWGN信道的误符号率(Symbol Error Rate,SER)和误比特率(Bit Error Rate,BER),假设发射端信息比特采用Gray编码影射,基带脉冲采用矩形脉冲,仿真时每个脉冲的抽样点数为8,接收端采用匹配滤波器进行相干解调。

1.实验代码

%AWGN信道仿真。
nSamp=8;
%矩形脉冲的取样点数。
numSymb=200000;
%每种SNR下的传输的符号数。
M=4;
%QPSK的符号类型数。
SNR=-3:3;
%SNR的范围。
grayencod=[0,1,3,2];
%Gray编码格式。
for ii=1:length(SNR)
msg=randsrc(1,numSymb,[0:3]);
%产生发送符号。
msg_gr=grayencod(msg+1);
%进行Gray编码影射。
msg_tx=pskmod(msg_gr,M);
%QPSK调制。
msg_tx=rectpulse(msg_tx,nSamp);
%矩形脉冲成形。
msg_rx=awgn(msg_tx,SNR(ii),'measured');
%通过AWGN信道。
msg_rx_down=intdump(msg_rx,nSamp);
%匹配滤波相干解调。
msg_gr_demod=pskdemod(msg_rx_down,M);
%QPSK解调。
[dummy graydecod]=sort(grayencod);
%Gray编码逆映射。
[errorBit BER(ii)]=biterr(msg,msg_demod,log2(M)); %计算BER。
[errorSym SER(ii)]=symerr(msg,msg_demod);
%计算SER。
End %结束循环。
scatterplot(msg_tx(1:100));
%画出发射信号的星座图。
title('发射信号星座图');
%主题说明。
xlabel('同相分量');
%横轴说明。
ylabel('正交分量');
%纵轴说明。
scatterplot(msg_rx(1:100));
%画出接收信号的星座图。
title('接收信号星座图');
%主题说明。
xlabel('同相分量');
%横轴说明。
ylabel('正交分量');
%纵轴说明。
figure('name','BER和SNR信号处理','position',[0,50,500,400]); %画出BER和SNR随SNR变化的曲线。
legend('BER','SER');
%注明图形。
title('QPSK在AWGN信道下的性能');
%主题说明。
xlabel('信噪比(dB)');
%横轴说明。
ylabel('误符号率和误比特率');
%纵轴说明。

2.实验结果

 

 

最后

以上就是舒心裙子为你收集整理的《通信原理》awgn信道仿真的全部内容,希望文章能够帮你解决《通信原理》awgn信道仿真所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部