基于MATALAB下的16QAM和16PSK的仿真及对比文档格式.docx
- 文档编号:18414212
- 上传时间:2022-12-16
- 格式:DOCX
- 页数:15
- 大小:469.06KB
基于MATALAB下的16QAM和16PSK的仿真及对比文档格式.docx
《基于MATALAB下的16QAM和16PSK的仿真及对比文档格式.docx》由会员分享,可在线阅读,更多相关《基于MATALAB下的16QAM和16PSK的仿真及对比文档格式.docx(15页珍藏版)》请在冰豆网上搜索。
4.3.2正交振幅键控(QAM)
它是把2ASK和2PSK两种调制结合起来的调制技术,使得带宽得到双倍扩展。
QAM调制技术用两路独立的基带信号对频率相同、相位正交的两个载波进行抑制载波双边带调幅,并将已调信号加在一起进行传输。
nQAM代表n个状态的正交调幅,一般有二进制(4QAM)、四进制(16QAM)、八进制(64QAM)。
我们需要得到多进制的QAM信号,需将二进制信号转换为m电平的多进制信号,然后进行正交调制,最后相加输出。
如图14所示。
图14QAM信号产生原理图
QAM信号用正交相干解调方法进行解调,通过解调器将QAM信号进行正交相干解调后,用低通滤波器LPF滤除乘法器产生的高频分量,输出抽样判决后可恢复出的两路独立电平信号,最后将多电平码元与二进制码元间的关系进行
转换,将电平信号转换为二进制信号,经并/串变换后恢复出原二进制基带信号。
4.3.3多电平残留边带调制(VSB)
VSB是一种幅度调制,它在双边带调制的基础上,通过设计适当的输出滤波器,使信号一个边带的频谱成分原则上保留,另一个边带频谱成分只保留小部分。
VSB的调制方法既比双边带调制节省频谱,又比单边带易于解调,因此在载波调制中得到广泛运用。
4.416QAM和16PSK的MATALAB仿真和性能对比
4.4.1MATALAB的简介
MATLAB(MatrixLaboratory)是一款数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。
MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。
在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。
可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
MATLAB的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。
附加的工具箱(单独提供的专用MATLAB函数集)扩展了MATLAB环境,以解决这些应用领域内特定类型的问题。
4.4.216QAM信号仿真
16QAM调制框图:
图1516QAM信号调制框图
16QAM最佳接收框图:
图1616QAM最佳接收框图
(1)、首先生成一个随机且长度为10000的二进制比特流,并画出了前50个比特的信号图(如图17所示)。
(2)、在MATLAB中16QAM调制器要求输入的信号为0-15这16个值,所以需要用函数reshape和bi2de将二进制的比特流转换为对应的十六进制信号。
(3)、利用MATLAB中的modem.qammod函数生成16QAM调制器,再通过其对信号进行调制并画出信号的星座图。
(4)、通过awgn信道在16QAM信号中加入高斯白噪声(假设Eb/No=15db)。
(5)、利用MATLAB中的scatterplot函数画出通过信道后接受到的信号的星座图。
(6)、利用MATLAB中的eyediagram函数生成经过信道后的眼图。
(7)、利用MATLAB中的demodulate和modem.qamdemod函数生成解调器对16QAM信号的解调,并将十六进制信号转化成二进制比特流信息。
(8)、用得到比特流信息除以原始发送的比特流信息来计算误码率。
程序如下:
>
M=16;
k=log2(M);
n=100000;
%比特序列长度
samp=1;
%过采样率
x=randint(n,1);
%生成随机二进制比特流
stem(x(1:
50),'
filled'
);
%画出相应的二进制比特流信号
title('
二进制随机比特流'
xlabel('
比特序列'
ylabel('
信号幅度'
x4=reshape(x,k,length(x)/k);
%将原始的二进制比特序列每四个一组分组,并排列成k行length(x)/k列的矩阵
xsym=bi2de(x4.'
'
left-msb'
%将矩阵转化为相应的16进制信号序列
figure;
stem(xsym(1:
50));
%画出相应的16进制信号序列
16进制随机信号'
信号序列'
y=modulate(modem.qammod(M),xsym);
%用16QAM调制器对信号进行调制
scatterplot(y);
%画出16QAM信号的星座图
text(real(y)+0.1,imag(y),dec2bin(xsym));
axis([-55-55]);
EbNo=15;
snr=EbNo+10*log10(k)-10*log10(samp);
%信噪比
yn=awgn(y,snr,'
measured'
%加入高斯白噪声
h=scatterplot(yn,samp,0,'
b.'
%经过信道后接收到的含白噪声的信号星座图
holdon;
scatterplot(y,1,0,'
k+'
h);
%加入不含白噪声的信号星座图
接收信号星座图'
legend('
含噪声接收信号'
不含噪声信号'
eyediagram(yn,2);
%眼图
yd=demodulate(modem.qamdemod(M),yn);
%此时解调出来的是16进制信号
z=de2bi(yd,'
%转化为对应的二进制比特流
z=reshape(z.'
numel(z),1'
[number_of_errors,bit_error_rate]=biterr(x,z)
运行结果:
number_of_errors=
0
bit_error_rate=
相关截图:
图17二进制随机比特流
图1816QAM信号序列
图1916QAM信号的星座图
图20含白噪声的信号星座图
图21不含白噪声的信号星座图
图22眼图
4.4.316PSK信号仿真
16PSK调制框图:
图2316PSK调制框图
16PSK最佳接收框图:
图2416PSK最佳接收框图
(1)、生成一个随机的二进制比特流。
(2)、将二进制比特流转换成对应的十六进制信号。
(3)、用16PSK调制器对信号进行调制并画出信号的星座图。
(4)、在16PSK信号中加入高斯白噪声。
(5)、画出通过信道之后接收信号的星座图。
(6)、生成信号眼图。
(7)、16PSK信号的解调。
(8)、计算误码率。
y=modulate(modem.pskmod(M),xsym);
%用16PSK调制器对信号进行调制
%画出16PSK信号的星座图
%假设Eb/No=15db
%加入高斯白噪声
%加入不含高斯白噪声的信号星座图
不含噪声接收信号'
holdoff;
%眼图
yd=demodulate(modem.pskdemod(M),yn);
%此时解调出来的是16进制信号
[number_of_errors,bit_error_rate]=biterr(x,z)%计算误码率
94
9.4000e-004
图25二进制随机比特流
图2616PSK的信号序列
图2716PSK信号的星座图
图28含高斯白噪声的信号星座图
图29不含高斯白噪声的信号星座图
图30眼图
4.4.4仿真结果分析
在相同的比特流和相同的Eb/No=15db条件下,对比结果如下:
(1)、误码率是衡量数据在规定时间内传输精确性的指标。
误码率=传输中的误码/传输的总码数*100%。
16QAM误码率为0,而16PSK误码率为94。
证明了16QAM误码性能高于16PSK。
(2)、通常,把信号矢量端点的分布图称为星座图。
16QAM星座图中信号点间距离要比16PSK星座图中信号点间距离大。
(3)、眼图是示波器屏幕上所显示的数字通信符号,由许多波形部分重叠形成,其形状类似“眼”的图形。
“眼”大表示系统传输特性好;
“眼”小表示系统中存在符号间干扰。
对比后我们发现,16QAM信号眼图“睁眼较大”,比较清晰,说明性能较好,而16PSK的眼图基本闭合,性能不良。
(4)、带宽利用率就是对现有信道的有效利用数比上带宽总数,用于比较恒定带宽上的利用效率。
16QAM和16PSK信号的宽带利用率相同,均为
综上所述:
16QAM要比16PSK总体性能更好。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATALAB 16 QAM PSK 仿真 对比