16-PSK (Poly16) 相位调制通信系统仿真项目
项目介绍
本仿真项目通过 MATLAB 平台构建了一个完整的 16 进制多相位调制(16-PSK)通信链路系统。项目全面模拟了数字通信系统从源端到宿端的物理层过程,包括随机信息源产生、基带处理、载波调制、信道传输以及接收端的信号恢复与性能统计。该系统特别强调了格雷码变换和匹配滤波技术在降低误码率及改善频谱特性方面的作用,能够为高频谱效率无线传输研究提供可靠的数据支撑。
功能特性
- 全链路模拟:涵盖了比特流生成、格雷编码、符号映射、RRC 滤波、载波调制、AWGN 信道模拟、相干解调、匹配滤波及性能评估。
- 匹配滤波技术:采用根升余弦(RRC)滤波器进行脉冲成形与辅助接收,严格执行群时延补偿,确保采样时刻的准确性。
- 格雷码映射:实现了 16 阶格雷码映射,能有效降低高信噪比环境下的误比特率。
- 相干解调与判定:采用正交下变频技术实现相干解调,并通过相位最大似然准则进行符号判决。
- 可视化分析:实时生成时域载波波形、功率谱密度(PSD)曲线、接收端星座图以及理论与仿真的比特误码率(BER)对比曲线。
- 兼容性补丁:内置了自定义的进制转换辅助工具,提高了在不同 MATLAB 版本间的运行稳定性。
实现逻辑与步骤
- 参数配置:系统设置符号速率为 1 MBaud,采样频率为 8 MHz(每符号 8 个采样点),载波频率为 2 MHz。滤波器滚降系数定为 0.35。
- 信号生成:随机生成满足仿真长度要求的二进制比特序列。
- 格雷编码与映射:将每 4 个比特分为一组,通过预定义的格雷码查找表转换为 16 进制符号。随后将符号映射到单位圆上的 16 个等分点,生成复基带信号。
- 发送端基带处理:对信号进行上采样,并通过根升余弦滤波器进行脉冲成形,同时对滤波器引入的群时延进行手动补偿。
- 载波调制:将复基带信号通过 IQ 调制方式上变频至 2 MHz 的高频载波。
- 信道传输:根据设定的 Eb/No 范围,计算对应的信噪比参数,并在载波信号中加入加性高斯白噪声。
- 接收端处理:
- 使用本地相干载波对接收信号进行下变频还原至复基带。
- 利用匹配滤波器(RRC 滤波器)进行抑制带外噪声及符号整形。
- 对滤波后的信号进行定时下采样,提取符号瞬时值。
- 计算采样点的相位角度,并判定为最接近的格雷码符号。
- 逆映射与解码:将判决后的符号还原为十进制,再通过格雷逆映射恢复出原始比特流。
- 性能对比:计算不同信噪比下的误码率与误符号率,并与基于 erfc 函数的理论公式结果进行对比验证。
关键函数与算法说明
- 脉冲成形与匹配滤波:使用
rcosdesign 构造根升余弦滤波器。发送端进行脉冲成形以限制带宽,接收端进行匹配滤波以获得最大输出信噪比。 - 相位判决算法:利用
angle 函数获取信号的瞬时相位,并通过归一化、四舍五入取整及取模运算将连续相位映射回 0-15 的有限符号集。 - 格雷码映射逻辑:通过特定的序列数组
[0 1 3 2 6 7 5 4 12 13 15 14 10 11 9 8] 实现比特到符号的非线性映射,确保相邻星座点间仅有 1 位比特差异。 - 时延补偿:在发送和接收滤波阶段,通过截断信号首部(长度为半个滤波器跨度)来消除线性相位滤波器产生的群时延。
- 信噪比换算:根据公式
SNR = EbNo + 10log10(k) - 10log10(sps),将比特信噪比转化为仿真所需的采样点信噪比。
系统要求
- 软件环境:MATLAB R2016b 或更高版本。
- 所需工具箱:信号处理工具箱(Signal Processing Toolbox)。
使用方法
- 启动 MATLAB 软件。
- 将仿真代码存放在同一个工作目录下。
- 在命令行窗口直接调用主函数或运行主脚本。
- 运行结束后,系统将弹出包含四个子图的分析界面,并同步在控制台打印系统仿真报告。