m基于MATLAB Simulink的16QAM调制解调系统仿真

1.算法概述

       16QAM全称正交幅度调制是英文Quadrature Amplitude Modulation的缩略语简称,意思是正交幅度调制,是一种数字调制方式。产生的方法有正交调幅法和复合相移法。

 

16QAM是指包含16种符号的QAM调制方式。

16QAM 调制解调原理方框图如右图1

      16QAM 是用两路独立的正交 4ASK 信号叠加而成,4ASK 是用多电平信号去键控载波而得到的信号。它是 2ASK 调制的推广,和 2ASK 相比,这种调制的优点在于信息传输速率高。

正交幅度调制是利用多进制振幅键控(MASK)和正交载波调制相结合产生的。

16 进制的正交振幅调制是一种振幅相位联合键控信号。16QAM 的产生有 2 种方法:

1)正交调幅法,它是有 2 路正交的四电平振幅键控信号叠加而成;

2)复合相移法:它是用 2 路独立的四相位移相键控信号叠加而成。

这里采用正交调幅法。

        /并变换器将速率为Rb的二进制码元序列分为两路,速率为Rb/2.2-4电平变换为Rb/2 的二进制码元序列变成速率为RS=Rb/log216 4 个电平信号,4 电平信号与正交载波相乘,完成正交调制,两路信号叠加后产生 16QAM信号.在两路速率为Rb/2 的二进制码元序列中,2-4 电平变换器输出为 4 电平信号,M=16.4 电平正交幅度调制和叠加后,输出 16 个信号状态,16QAM.

RS=Rb/log216=RB/4.

2. 16QAM 解调原理

       16QAM 信号采取正交相干解调的方法解调,解调器首先对收到的 16QAM 信号进行正交相干解调,一路与 cos ω c t 相乘,一路与 sin ω c t 相乘。然后经过低通滤波器,低通滤波器 LPF 滤除乘法器产生的高频分量,获得有用信号,低通滤波器LPF 输出经抽样判决可恢复出电平信号。

 

QAM解调部分:

 

将接收到的信号和两个正弦信号相乘,即signal*sin, signal*cos.

 

其相位分别设置为pi/2,0表示SINCOS

 

===================================================

 

然后将信号分别通过根升余弦滤波器。其具体的参数设置如下:

 

 

 

2.仿真效果预览

matlab2013b运行,得到如下结果:

 

 

3.MATLAB程序

 

 

 

clc;
clear;
close all;
warning off;
addpath(genpath(pwd));
 
SNRindB1=0:1:15;
SNRindB2=0:0.1:15;
M=16;
k=log2(M);
for i=1:length(SNRindB1),
    smld_err_prb(i)=qammoto(SNRindB1(i));
end;
 
for i=1:length(SNRindB2),
    SNR=exp(SNRindB2(i)*log(10)/10);
    theo_err_prb(i)=4*Qfunct(sqrt(3*k*SNR/(M-1)));
end;
 
figure(1);
subplot(211),semilogy(SNRindB1,smld_err_prb,'mo');  grid on; % 实际的信噪比—误码率曲线
subplot(212),semilogy(SNRindB2,theo_err_prb,'r-');  grid on; % 理论的曲线
 
figure(2);
 
semilogy(SNRindB1,smld_err_prb,'r*');   % 实际的信噪比—误码率曲线
hold on;
semilogy(SNRindB2,theo_err_prb,'b-');   % 理论的曲线
grid on;
legend('实际误码率曲线','理论误码率曲线');

01_003_m

 

  

 

posted @ 2022-12-05 14:27  我爱C编程  阅读(693)  评论(0编辑  收藏  举报