← 返回项目作品

Engineering Portfolio

MATLAB 数字通信链路仿真平台

用统一参数和可重复实验脚本比较调制、滤波、信道与误码率性能。

项目背景

不同课程实验常把调制、滤波和误码率拆开验证。本项目计划建立统一链路,让参数、图像和结论能够重复生成并与 FPGA 实现对照。

功能目标

  • 支持 BPSK、QPSK 与基础 QAM 调制。
  • 支持根升余弦成形、AWGN 信道和匹配滤波。
  • 绘制时域波形、频谱、眼图、星座图和 BER 曲线。
  • 自动导出实验配置与结果摘要。

硬件与软件环境

  • MATLAB 与通信、信号处理相关工具箱。
  • 脚本化实验入口,不依赖手动点击 App。

系统架构

配置层定义码率、采样率、滚降系数和信噪比;发送机、信道、接收机按函数分层;评估层统一统计误码与绘图;导出层保存参数和结果。

实现步骤

  1. 先建立可验证的 BPSK AWGN 基线。
  2. 对照理论 BER 检查随机数、能量归一化和噪声方差。
  3. 加入 QPSK 与脉冲成形。
  4. 增加参数扫描和结果导出。
  5. 与 FPGA 定点模型对照。

核心代码说明

所有调制方式统一输出单位平均功率的复符号,噪声方差根据 Eb/N0 与每符号比特数换算,避免曲线因归一化不一致产生偏移。

snr = EbN0 + 10*log10(bitsPerSymbol) - 10*log10(samplesPerSymbol);
rx = awgn(tx, snr, 'measured');

调试过程

每加入一个模块就保留旁路开关,并用无噪声条件验证零误码。随后比较蒙特卡洛结果和理论曲线,只在基线一致后继续扩展。

遇到的问题

预计难点是 Eb/N0、Es/N0 与采样率之间的换算,以及滤波器群时延造成的比特错位。

解决方案

在配置中显式保存能量定义;对发送与接收滤波器总延迟进行统一裁剪;所有曲线旁保存实验参数。

最终效果

当前页面是实施蓝图。完成后将补充脚本仓库、理论对照表、星座图和 BER 图,不提前宣称未完成结果。

后续改进

增加瑞利衰落、载波频偏、同步算法和 OFDM 链路。