基于MRC最大比合并算法的SIMO无线通信系统性能仿真
项目介绍
本项目实现了一个单输入多输出(SIMO)无线通信系统的链路级仿真。在无线信道环境下,信号通过多个相互独立的瑞利衰落路径到达接收端。项目重点展示了接收机利用最大比合并(MRC)分集接收技术来对抗多径衰落,并通过对比不同天线数量(1、2、4、8根天线)下的系统表现,定量分析空间分集对比特误码率(BER)性能的显著提升。
功能特性
- 多天线配置仿真:支持从单天线(SISO)到多天线(1x2, 1x4, 1x8)的多种配置,直观展现分集增益。
- 瑞利衰落建模:模拟复杂的无线传播环境,采用独立同分布的复高斯增益表示各接收支路的衰落特性。
- MRC算法实现:核心接收算法能够根据各支路的信道状态信息进行最优加权合并,最大化合并后的信噪比。
- 性能评估与对比:内置理论误码率计算公式,将蒙特卡洛仿真结果与理论曲线进行拟合验证。
- 信号可视化:输出不同配置下的BER-SNR降幅曲线,并提供特定信噪比下的合并信号星座图,用于分析信号质量。
系统要求
- 软件环境:MATLAB 2016b 或更高版本。
- 工具箱需求:基础MATLAB功能即可运行。
实现逻辑与步骤
系统通过循环迭代不同的天线数量和信噪比参数,完整经历了信号从产生到判决的闭环过程:
- 参数设定:初始化发送比特数为10万位,设定信噪比范围为0dB至20dB,跨度为2dB,并定义不同的接收天线数量。
- 信号调制:使用二进制随机函数生成码流,并将其映射为BPSK符号,即逻辑0映射为-1,逻辑1映射为+1。
- 信道模拟:
- 生成与天线数量和信号长度对应的复高斯矩阵。
- 通过归一化处理(除以sqrt(2))确保信道平均功率为1,模拟典型的瑞利衰落。
- 噪声叠加:根据设定的信噪比计算噪声标准差,产生与接收支路数匹配的复高斯白噪声。
- 信号传输:主干算法执行接收信号矩阵计算,将调制符号与信道增益矩阵相乘并叠加噪声。
- 分集合并(MRC):
- 获取每个支路信道增益的复共轭作为合并权重。
- 将接收信号与权重相乘并对所有天线支路求和,消除信道相位偏移并最大化输出功率。
- 判决与统计:
- 对合并后的信号取实部进行硬判决(以0为阈值)。
- 将恢复的比特流与原始流对比,计算误码数并得出误码率。
- 理论验证:执行针对瑞利信道下Nr阶分集的BPSK理论误码率公式计算。
- 可视化输出:使用对数坐标绘制BER曲线,并绘制特定场景下(如4天线、10dB)的星座图分布。
关键技术与算法分析
- 最大比合并 (Maximum Ratio Combining):在接收端,各支路信号被乘以其对应信道系数的复共轭。这种做法确保了所有支路的信号相位在合并时完全一致(同相相加),同时根据信号强度分配权重——信道条件好的支路权重更大。这在数学上证明了能够获得最高的合并输出信噪比。
- 瑞利衰落信道生成:代码通过两个独立的正态分布随机数合成虚数,构建了瑞利分布的幅度特性。这种模型准确捕捉了无直射路径环境下信号幅度的随机大幅波动。
- 性能理论计算:算法内部集成了一个基于Nr阶分集的求和公式。该公式考虑了不同天线数量下的分集增益和阵列增益,通过计算特定参数mu(基于EbN0)及其阶乘组合,给出了瑞利衰落环境下的最优性能基准。
- 星座图分析:通过对比理想映射点(-1,0 和 1,0)与实际合并后接收符号的偏移,表现了MRC算法在克服信道相移和减小噪声干扰方面的有效性。
使用方法
- 启动MATLAB软件。
- 将仿真脚本加载到编辑器窗口。
- 点击“运行”按钮。
- 仿真结束后,程序将自动弹出两个图形窗口:
- 窗口1展示了不同天线配置下的BER随SNR变化的曲线对比,包含实测点与理论线。
- 窗口2展示了特定配置下的信号星座分布,反映了接收端信号的汇聚情况。
- 在命令行窗口可以观察到当前的仿真进度和最终的汇总统计信息。