《移动通信原理与应用》——QAM调制解调仿真

目录

一、QAM调制与解调仿真流程图:

二、仿真结果:

三、Matlab仿真程序代码如下:


一、QAM调制与解调仿真流程图:

QAM调制仿真流程图:

QAM解调仿真流程图:

二、仿真结果:

(1)16QAM星座点图,如下图所示:

结果分析:此为16QAM星座点图,将此仿真结果根据与课堂所看到与学到的16QAM星座点图进行比对,发现完全一致,所以得出对于16QAM星座点图的仿真实验成功!!

(2)16-QAM载波调制信号在AWGN信道下的误比特率性能比较,如下图所示:

结果分析:由图可知,16QAM的误符号率和仿真理论误符号率完全拟合,16QAM的误比特率在性躁比越来越高情况下拟合情况和仿真理论误比特率越来越接近。

三、Matlab仿真程序代码如下:

Matlab 复制代码
clear;clc;
nsymbol=100000;
M=16;
graycode=[0 1 3 2 4 5 7 6 12 13 15 14 8 9 11 10];
EsN0=5:20;
snr1=10.^(EsN0/10);
msg=randi([0,15],1,nsymbol);
msg1=graycode(msg+1);
msgmod=qammod(msg1,M);
scatterplot(msgmod);

spow=norm(msgmod).^2/nsymbol;
for i=1:length(EsN0)
    sigma=sqrt(spow/(2*snr1(i)));
    rx=msgmod+sigma*(randn(1,length(msgmod))+1i*randn(1,length(msgmod)));
    y=qamdemod(rx,M);
    decmsg=graycode(y+1);
    [err1,ber(i)]=biterr(msg,decmsg,log2(M));
    [err2,ser(i)]=symerr(msg,decmsg);
end

p4=2*(1-1/sqrt(M))*qfunc(sqrt(3*snr1/(M-1)));
ser1=1-(1-p4).^2;
ber1=1/log2(M)*ser1;
figure();
semilogy(EsN0,ber,'o',EsN0,ser,'*',EsN0,ser1,EsN0,ber1,'-',EsN0,ber1,'-.');
title('16QAM-AWGN')
xlabel('Es/N0');ylabel('SER AND BER');
legend('ber simulation','ser simulatin','ser theory','ber theory');
相关推荐
rit84324997 小时前
有限元法求转子临界转速的MATLAB实现
开发语言·matlab
Matlab程序设计与单片机7 小时前
【机器人最短路径规划】基于标准蚁群算法
matlab·蚁群算法·路径规划问题
Marye_爱吃樱桃7 小时前
MATLAB R2024b的安装、简单设置——保姆级教程
开发语言·matlab
IT猿手20 小时前
基于控制障碍函数的多无人机编队动态避障控制方法研究,MATLAB代码
开发语言·matlab·无人机·openclaw·多无人机动态避障路径规划·无人机编队
【建模先锋】21 小时前
创新首发!基于注意力机制优化的高创新故障诊断模型
深度学习·信号处理·故障诊断·特征融合·轴承故障诊断·fft变换·vmd分解
Evand J1 天前
【MATLAB复现RRT(快速随机树)算法】用于二维平面上的无人车路径规划与避障,含性能分析与可视化
算法·matlab·平面·无人车·rrt·避障
s09071361 天前
【声纳成像】基于滑动子孔径与加权拼接的条带式多子阵SAS连续成像(MATLAB仿真)
开发语言·算法·matlab·合成孔径声呐·后向投影算法·条带拼接
IT猿手1 天前
基于 ZOH 离散化与增量 PID 的四旋翼无人机轨迹跟踪控制研究,MATLAB代码
开发语言·算法·matlab·无人机·动态路径规划·openclaw
IT猿手1 天前
基于控制障碍函数(Control Barrier Function, CBF)的无人机编队三维动态避障路径规划,MATLAB代码
开发语言·matlab·无人机·动态路径规划·无人机编队
SugarFreeOixi1 天前
MATLAB绘图风格记录NP类型
python·matlab·numpy