【MATLAB源码-第91期】基于matlab的4QAM和4FSK在瑞利(rayleigh)信道下误码率对比仿真。

操作环境:

MATLAB 2022a

1、算法描述

正交幅度调制QAMQ uadrature A mplitude M odulation)是一种在两个正交载波上进行幅度调制调制方式。这两个载波通常是相位差为90(π/2)的正弦波,因此被称作正交载波。这种调制方式因此而得名。

同其它调制方式类似,QAM通过载波某些参数的变化传输信息。在QAM中,数据信号由相互正交的两个载波的幅度变化表示。

模拟信号的相位调制和数字信号的PSK可以被认为是幅度不变、仅有相位变化的特殊的正交幅度调制。由此,模拟信号频率调制和数字信号FSK也可以被认为是相位调制(PSK)的特例,因为它们本质上就是相位调制。这里主要讨论数字信号的QAM,虽然模拟信号QAM也有很多应用,例如NTSCPAL制式的电视系统就利用正交的载波传输不同的颜色分量。

类似于其他数字调制方式,QAM发射信号集可以用星座图方便地表示。星座图上每一个星座点对应发射信号集中的一个信号。设正交幅度调制的发射信号集大小为 N, 称之为N-QAM。星座点经常采用水平和垂直方向等间距的正方网格配置,当然也有其他的配置方式。数字通信中数据常采用二进制表示,这种情况下星座点的个数一般是2的幂。常见的QAM形式有16-QAM、64-QAM、256-QAM,以及未来5G采用之512-QAM及1024-QAM。星座点数越多,每个符号能传输的信息量就越大。但是,如果在星座图的平均能量保持不变的情况下增加星座点,会使星座点之间的距离变小,进而导致误码率上升。因此高阶星座图的可靠性比低阶要差。

当对数据传输速率的要求高过8-PSK能提供的上限时,一般采用QAM的调制方式。因为QAM的星座点比PSK的星座点更分散,星座点之间的距离因之更大,所以能提供更好的传输性能。但是QAM星座点的幅度不是完全相同的,所以它的解调器需要能同时正确检测相位和幅度,不像PSK解调只需要检测相位,这增加了QAM解调器的复杂性。在本文中,我们主要对16-QAM这种调制解调方式进行仿真。

4FSK在频移键控(FSK)编码的基础上有所扩展。FSK是一种调制技术,它通过在不同频率上切换来表示不同的数字或符号。而4FSK则是FSK的一种变种,表示使用了4个不同的频率来传输信息。

在4FSK中,每个数字或符号被映射到一组连续的四个频率中的一个。这些频率通常以二进制编码的形式进行表示,例如00、01、10和11。每个频率组合对应于不同的数字或符号。因此,通过在这四个频率之间进行切换,我们可以传输数字数据。

4FSK在一些通信系统中用于数据传输,因为它可以在有一定噪声干扰的情况下提供较好的抗干扰性能。然而,需要注意的是,频率越多,理论上可以传输的信息速率也越高,但同时也需要更宽的频谱带宽。

当使用4FSK进行数据传输时,发送端将要传输的数字数据映射到相应的频率组合,并以这些频率的序列形式发送。接收端则需要解码接收到的频率序列,将其转换回原始的数字数据。

4FSK的优点之一是其相对较高的抗干扰性能。因为它使用多个频率来表示不同的数字或符号,即使在信号中存在一些噪声或干扰,接收端仍然可以正确地解码出数据。这使得4FSK在无线通信、调制解调器、无线传感器网络等领域得到了广泛的应用。

2、仿真结果演示

3、关键代码展示

4、MATLAB 源码获取

V

点击下方名片

相关推荐
zzlyx996 分钟前
用C#采用Avalonia+Mapsui在离线地图上插入图片画信号扩散图
java·开发语言·c#
Yue丶越27 分钟前
【C语言】自定义类型:结构体
c语言·开发语言
合作小小程序员小小店29 分钟前
桌面开发,点餐管理系统开发,基于C#,winform,sql server数据库
开发语言·数据库·sql·microsoft·c#
笃行客从不躺平33 分钟前
线程池监控是什么
java·开发语言
星轨初途34 分钟前
C++的输入输出(上)(算法竞赛类)
开发语言·c++·经验分享·笔记·算法
dangdang___go1 小时前
动态内存管理||malloc和free.realloc和calloc
c语言·开发语言·算法·动态内存管理
YA3331 小时前
mcp-grafana mcp 使用stdio报错
java·开发语言
周杰伦_Jay1 小时前
【Go 语言主流 Web】 框架详细解析
开发语言·后端·微服务·架构·golang
PfCoder2 小时前
WinForm真入门(20)——StatusStrip控件解析
开发语言·windows·c#·winform·statusstrip
灵犀坠2 小时前
前端面试八股复习心得
开发语言·前端·javascript