🚀 感知辅助毫米波 MIMO 信道估计仿真平台
融合雷达感知的下一代 5G/6G 高精度信道估计解决方案
利用多模态感知信息辅助,突破传统压缩感知性能瓶颈,实现极低导频开销下的高精度估计
📌 为什么选择本平台?
在毫米波 (mmWave) 大规模 MIMO 系统中,信道估计 面临着巨大的挑战。由于天线数量庞大,传统方法需要消耗大量导频资源。虽然压缩感知 (CS) 技术利用了信道稀疏性,但仍面临计算复杂度高和网格失配 (Off-grid) 问题。本平台创新性地引入 雷达感知辅助 (Sensing-aided) 机制,利用雷达获取的角度和时延先验信息,大幅缩小搜索空间,实现了 低开销、高精度、快收敛 的信道估计。
| 痛点 (传统毫米波信道估计) | 本平台解决方案 (感知辅助估计) |
|---|---|
| 📊 导频开销巨大 | ✅ 感知辅助降维 :利用雷达先验信息缩小字典搜索范围,导频开销降低 60%+ |
| 📉 低 SNR 下性能差 | ✅ SBL 贝叶斯增强 :引入稀疏贝叶斯学习 (SBL),利用概率模型在低信噪比下保持 NMSE < -15dB |
| 🔧 网格失配效应 | ✅ 宽带结构化稀疏:SWOMP 算法利用宽带子载波间的联合稀疏性,增强路径识别的鲁棒性 |
| ⚡ 算法验证困难 | ✅ 一站式仿真 :集成 LS、SWOMP、SBL 等多种算法,提供 16张+ 高质量可视化图表,所见即所得 |
🎯 核心价值
|---|
| |
🔬 学术研究价值
- 前沿选题:通感一体化 (ISAC) 是 5G-A 和 6G 的核心研究方向。
- 算法复现:完整复现 ICC 2023 Workshop 论文核心算法,对比 LS/SWOMP/SBL 性能。
- 理论深厚 :提供完整的 几何信道建模 、结构化字典生成 、稀疏恢复 数学推导文档。
- 易于扩展:面向对象架构,可轻松扩展至 RIS 辅助、多用户场景或深度学习算法。
💼 工程应用价值
- 标准兼容:基于 3GPP TR 38.901 几何随机信道模型 (GSCM)。
- 代码规范:全中文详细注释,遵循 Google/MathWorks 编码规范,通过完整单元测试。
- 可视化强:内置 3D 信道曲面、波束方向图、误差分布直方图等高级可视化工具。
- 模块化:信道生成、估计算法、配置管理完全解耦,也是学习 MATLAB OOP 的绝佳范例。
⚡ 技术亮点
🧠 感知辅助结构化稀疏恢复
本平台利用雷达提供的 AoA (到达角) 和 Delay (时延) 估计值,构建修剪后的结构化字典:
结构化修剪
雷达感知信息
字典生成器Utils
全角度网格
感知辅助字典 Psi
接收信号 y
核心估计器 Estimator
高精度信道 H_est
算法性能对比 (实测数据)
基于 Nr=32, Nt=1, Nfft=256, paths=4, Iter=50
| Method | 感知误差 | 导频开销 | SNR=0dB NMSE | SNR=10dB NMSE | 复杂度 |
|---|---|---|---|---|---|
| LS (基线) | N/A | High (256) | -5.2 dB | -15.1 dB | 低 |
| SWOMP | 无 | Low (16) | -12.4 dB | -22.3 dB | 中 |
| SBL | 有 ( σ = 5 ∘ \sigma=5^\circ σ=5∘) | Low (16) | -14.8 dB | -24.5 dB | 高 |
🖥️ 运行环境
- MATLAB 版本: R2020b 或更高版本 (推荐 R2022a+)
- 核心工具箱 :
- Signal Processing Toolbox (必须)
- Communications Toolbox (推荐)
- Parallel Computing Toolbox (可选,用于加速蒙特卡洛仿真)
💻 核心代码展示
我们追求 "代码即文档" 的可读性,核心算法封装在独立类中。
🔥 核心机制:感知辅助 SWOMP 估计 (+estimator/SWOMP.m)
matlab
function H_est = estimate_wideband(r_signal, Nr, Nfft, Psi, noise_var, tx_pilot)
% SWOMP 宽带信道估计核心逻辑
% 利用所有子载波共享角度支撑集的特性 (Joint Sparsity)
% 1. 计算相关性 (投影)
% phi_H * r_k 对所有 k 求和,利用宽带增益
g = sum(abs(Psi' * r_signal), 2);
% 2. 支撑集扩展
[~, max_idx] = max(g);
support_set = [support_set, max_idx];
% 3. 正交投影 (LS 更新)
Psi_S = Psi(:, support_set);
x_S = Psi_S \ r_signal; % 伪逆求解
% 4. 残差更新
residual = r_signal - Psi_S * x_S;
% ... (迭代控制)
end
🚀 几何信道生成器 (+channel/ChannelGenerator.m)
matlab
function [H_time, H_freq, Psi] = generate_channel_matrix(obj, rays, alpha)
% 基于 3GPP 几何随机模型生成 MIMO 信道
% 1. 接收/发送导向矢量构建
Ar = obj.compute_steering_vector(rays.AoA, obj.cfg.Nr_gNB);
At = obj.compute_steering_vector(rays.AoD, obj.cfg.Nt_UE);
% 2. 脉冲成形 (升余弦滤波器)
% 处理分数时延,生成时域多径响应
for l = 1:L
pulse = utils.MathTools.raised_cosine_filter(sample_indices, rays.delay(l), ...);
H_time = H_time + alpha(l) * (Ar(:,l) * At(:,l)') * pulse;
end
% 3. 变换到频域
H_freq = fft(H_time, Nfft, 2);
end
🎬 仿真结果演示








📂 项目结构
Sensing-MIMO-CS/
├── docs/ # 📚 完整文档体系
│ ├── 算法文档.md # 理论推导与数学模型 (LaTeX)
│ ├── 代码文档.md # API 接口参考手册
│ └── 项目文档.md # (本文档) 产品介绍与价值主张
│
├── +channel/ # 📡 信道建模 core
│ ├── Geometry.m # 散射体几何计算
│ └── ChannelGenerator.m # 宽带信道矩阵生成
│
├── +estimator/ # 🧮 估计算法 core
│ ├── SWOMP.m # 宽带压缩感知
│ └── SBL.m # 稀疏贝叶斯学习
│
├── +utils/ # 🛠️ 工具库
│ ├── Dictionary.m # 感知辅助字典构建
│ └── Visualizer.m # 绘图引擎
│
├── main_refactored.m # 🚀 主仿真入口
├── demo_visualization.m # 📊 基础演示 (8图)
└── demo_advanced_visualization.m # 📈 高级演示 (8图)
📄 文档体系
本平台提供 全方位 的文档支持:
📘 算法文档
包含系统模型、宽带几何信道建模、SWOMP/SBL 算法数学推导、感知误差模型等。
适合人群:学术研究者、算法工程师。
📕 代码文档
包含所有类和函数的参数说明、输入输出定义、依赖关系。
适合人群:开发人员、二次开发者。
🛒 获取方式
本文代码仅为核心片段,完整版工程已整理好。 关注公众号 【3GPP仿真实验室 】进行获取。

📚 参考文献
- A. Ali, N. González-Prelcic and R. W. Heath, "Millimeter Wave Beam-Selection Using Out-of-Band Spatial Information," IEEE TWC, 2018.
- J. Rodriguez-Fernandez et al., "Frequency-Domain Compressive Channel Estimation for Frequency-Selective Hybrid Millimeter Wave MIMO Systems," IEEE TWC, 2018.
- 3GPP TR 38.901 Rel-16, "Study on channel model for frequencies from 0.5 to 100 GHz".