基于Matlab模拟M-QAM 传输

简介: 基于Matlab模拟M-QAM 传输

✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法       神经网络预测       雷达通信      无线传感器        电力系统

信号处理              图像处理               路径规划       元胞自动机        无人机

⛄ 内容介绍

MQAM (Multiple Quadrature Amplitude Modulation) 多进制正交幅度调制。4相相位键控信号其实也是一种二电平正交振幅键控。如果将二电平振幅键控进一步发展为多电平(例如4、8、16电平等)正交振幅键控,显然可以获得更高的频谱利用率。

⛄ 代码

% *************** Simulation M-QAM transmission over noise *********%

% with using Monte Carlo simulation


% ********************* Initialization ***********************************%

clc;

clear all;

close all;

q=4; %

M=2^q; % M-QAM level power of 2

loop=10; % Monte Carlo

N=100000;  % Frame length (x_1 x_2 ... x_N)

SNRdB=0:15; % SNR in dB

SNR=10.^(SNRdB/10);

Rate= zeros(1, length(SNRdB)); %


% ********************* Transmitter **************************************%


for dB= 1: length(SNRdB) % start looping by SNR

   dB

   for lp= 1: loop, % start looping of frame data


% ********************* q-QAM signal generation **************************%    

x_inp=round(rand(N,1)); % 1 or 0

   x_inp_mod=qammod(x_inp,q);

   

% ********************* Channel ******************************************%

 

   y_channel=awgn(x_inp_mod,SNRdB(dB)); %  AWGN

   

   

% ********************* Receiver *****************************************%

   y=y_channel;

   x_inp_dem=qamdemod(y,q);

   x_out=round(x_inp_dem);

 

% ********************* Bit Error Rate (BER) calulation ******************%    

   

   [err, rate]= symerr(x_inp, x_out);

   Rate(dB)= Rate(dB) + rate;

   

   end % end for loop

 

   Rate(dB)= Rate(dB)/loop; % Average value over Monte Carlo simulation

                             % loop

 

end % end Monte Carlo


% ********************* Plot the simulation result ***********************%

   f1 = figure(1);

   set(f1,'color',[1 1 1]);

   semilogy(SNRdB,Rate, 'b-*')

   hold on;

   BER_th= (2*(sqrt(M)-1)/sqrt(M))*qfunc(sqrt((6*q/(M-1)))*sqrt(SNR)); % theoritical calculation for BER

   semilogy(SNRdB,BER_th,'r-o');

   hold on;

   axis([0 12 0.00000001  1.2]);  

   xlabel( 'Signal-to-Noise Ratio (SNR)')

   ylabel( 'Bit Error Rate (BER)')

   title('Simulation QAM transmission over noise');

   legend('BER simulation','BER calculation')

   grid on;

⛄ 运行结果

⛄ 参考文献

[1] XUE Wen-ling. 基于MATLAB的模拟线性通信系统可视化设计[J]. 河北软件职业技术学院学报, 2010(001):012.

[2] 黄永东. 基于Matlabm文件的PCM传输系统仿真[J]. 科技风, 2011(5):3.

[3]  Dwivedi P ,  Ranjan A ,  Srivastava A . Simulation of M-ary QAM and M-ary PSK Modulation Techniques Using MATLAB GUI[J]. Social Science Electronic Publishing.

[4]  Raza M S . MATLAB code for M-array QAM modulation[J].

⛳️ 代码获取关注我

❤️部分理论引用网络文献,若有侵权联系博主删除
❤️ 关注我领取海量matlab电子书和数学建模资料


相关文章
基于OFDM的水下图像传输通信系统matlab仿真
基于OFDM的水下图像传输通信系统matlab仿真
|
算法
m基于OFDM+QPSK和LDPC编译码以及MMSE信道估计的无线图像传输matlab仿真,输出误码率,并用图片进行测试
MATLAB2022a仿真实现了无线图像传输的算法,包括OFDM、QPSK调制、LDPC编码和MMSE信道估计。OFDM抗频率选择性衰落,QPSK用相位表示二进制,LDPC码用于前向纠错,MMSE估计信道响应。算法流程涉及编码、调制、信道估计、均衡、解码和图像重建。MATLAB代码展示了从串行数据到OFDM信号的生成,经过信道模型、噪声添加,再到接收端的信道估计和解码过程,最终计算误码率。
222 1
|
1月前
|
传感器 机器学习/深度学习 编解码
【电缆】中压电缆局部放电的传输模型研究(Matlab代码实现)
【电缆】中压电缆局部放电的传输模型研究(Matlab代码实现)
100 3
|
4月前
|
算法
基于RMD算法模型的信号传输统计特性的matlab模拟仿真
本项目基于RMD(Random Midpoint Displacement)算法模型,使用MATLAB 2022A进行信号传输统计特性的模拟仿真。通过递归在区间中点加入随机位移,生成具有自相似性和长相关性的随机信号,实现了文中多个仿真图,并提供操作视频与中文注释代码。RMD模型生成的信号均值为零,方差无穷大,具备低误码率、强抗干扰能力及高传输效率等优势,为现代通信系统提供了新思路。
数字频带传输——多进制数字调制及MATLAB仿真
数字频带传输——多进制数字调制及MATLAB仿真
276 2
|
机器学习/深度学习 算法
m基于OFDM+QPSK和DNN深度学习信道估计的无线图像传输matlab仿真,输出误码率曲线,并用实际图片进行测试
m基于OFDM+QPSK和DNN深度学习信道估计的无线图像传输matlab仿真,输出误码率曲线,并用实际图片进行测试
544 0
|
传感器 定位技术 光互联
【COlor传感器】通过扰动调制光传感实现智能光传输的占用分布估计研究(Matlab代码实现)
【COlor传感器】通过扰动调制光传感实现智能光传输的占用分布估计研究(Matlab代码实现)
114 0
|
资源调度 算法
m基于OFDM+QPSK和LDPC编译码以及LS信道估计的无线图像传输matlab仿真,输出误码率,并用图片进行测试
m基于OFDM+QPSK和LDPC编译码以及LS信道估计的无线图像传输matlab仿真,输出误码率,并用图片进行测试
221 2
|
机器学习/深度学习 传感器 算法
【无线传输】基于SPM模型模拟无线传输附Matlab代码
【无线传输】基于SPM模型模拟无线传输附Matlab代码
【无线传输】基于SPM模型模拟无线传输附Matlab代码
|
算法
【漂移-扩散通量重建 FV 方案】用于半导体和气体放电模拟的电子传输的更准确的 Sharfetter-Gummel 算法(Matlab代码实现)
【漂移-扩散通量重建 FV 方案】用于半导体和气体放电模拟的电子传输的更准确的 Sharfetter-Gummel 算法(Matlab代码实现)
210 0

热门文章

最新文章

下一篇
开通oss服务