您现在的位置:首页 >> 机器学习 >> 内容

m基于深度学习的32QAM调制解调系统频偏估计和补偿算法matlab仿真

时间:2024/3/23 2:43:34 点击:

  核心提示:0X_047m,包括程序操作录像...

1.完整项目描述和程序获取

>面包多安全交易平台:https://mbd.pub/o/bread/ZZ2UlZpx

>如果链接失效,可以直接打开本站店铺搜索相关店铺:

点击店铺

>如果链接失效,程序调试报错或者项目合作可以加微信或者QQ联系。

2.部分仿真图预览


3.算法概述

       在无线通信系统中,接收端收到的信号由于各种原因可能会存在载波频率偏差(Frequency Offset, FO)。在32-QAM系统中,频偏会导致星座图旋转和幅度失真,严重影响解调性能。因此,准确快速地估计并补偿频偏至关重要。

4.部分源码

..........................................................................

for i = 1:length(SNR)

    i

    for j = 1:10

        [i,j]

        %产生信号

        signal                  = round(rand(1,LEN));

        signal_modulated1       = Modulator(signal,K);        

        signal_receive1         = awgn(signal_modulated1,SNR(i),'measured');

        signal_receive2         = signal_receive1.*exp(sqrt(-1)*2*pi*OFFSET*t );

        

        

        offset2   = func_phase_est_dnn(signal_receive2);%基于深度学习的相位估计

        

        RR        = signal_receive2.*exp(-sqrt(-1)*2*pi*mean2(offset2)*t);

        %加相位补偿

        output    = DeModulator(RR,K);

        

        msgr      = ones(size(output));

        idx       = find(output<=0);

        msgr(idx) = 0;

        

        len         = length(find(signal==msgr));

        errrate(i,j)= 1-len/length(signal);

        %没有相位补偿

        output2     = DeModulator(signal_receive2,K);

        

        msgr2       = ones(size(output2));

        idx2        = find(output2<=0);

        msgr2(idx2) = 0;

        

        len2      = length(find(signal==msgr2));

        errrate2(i,j)= 1-len2/length(signal);

 

    end

end

 

figure;

semilogy(SNR,mean(errrate2,2),'b-o');

hold on

semilogy(SNR,mean(errrate,2),'r-s');

grid on

xlabel('SNR');

ylabel('误码率');

legend('32QAM无频偏补偿误码率','32QAM频偏补偿误码率');

 

0X_047m

 

---

作者:我爱C编程 来源:我爱C编程
本站最新成功开发工程项目案例
相关文章
相关评论
发表我的评论
  • 大名:
  • 内容:
本类固顶
  • 没有
  • FPGA/MATLAB商业/科研类项目合作(www.store718.com) © 2025 版权所有 All Rights Reserved.
  • Email:1480526168@qq.com 站长QQ: 1480526168