目录
手把手教你学Simulink--基于终端设备与应用场景的场景实例:无人机(UAV)作为中继节点的NR下行链路仿真
手把手教你学Simulink
——基于终端设备与应用场景的场景实例:无人机(UAV)作为中继节点的NR下行链路仿真
一、引言:空中桥梁——UAV中继的5G/6G革命
在 应急通信、山区覆盖、大型活动保障、军事应用 等场景中,传统基站部署困难。无人机(UAV)作为空中中继节点,可快速构建临时通信网络,实现:
🛰️ 灵活覆盖:按需部署,3分钟内升空建网
🛰️ 高空优势:减少地面遮挡,提升视距(LoS)概率
🛰️ 动态组网:多UAV协同形成“空中蜂窝网”
🛰️ 广域服务:单UAV可覆盖半径1-3km区域
但挑战同样严峻:
- ✈️ 高动态性:位置、姿态、速度快速变化
- ✈️ 回传链路瓶颈:UAV与gNB间需高带宽、低时延回传
- ✈️ 能量受限:电池续航短,通信需高效
- ✈️ 空-地信道复杂:大气衰减、多径、多普勒频移
本文将手把手教你使用 MATLAB/Simulink 搭建一个 UAV作为中继的NR下行链路仿真系统,重点实现:
- ✅ UAV三维运动轨迹建模
- ✅ 空-地信道(gNB↔UAV, UAV↔UE)建模
- ✅ 中继模式(AF/DF)实现
- ✅ 端到端性能评估(吞吐量、时延、覆盖)
- ✅ 能量效率分析
通过本教程,你将掌握空中中继网络规划与优化的全流程仿真能力。
二、UAV中继系统架构
两种典型模式
-
Type I:透明中继(Amplify-and-Forward, AF)
- UAV不解析数据,仅放大并转发
- 实现简单,时延低
- 缺点:噪声也被放大
-
Type II:再生中继(Decode-and-Forward, DF)
- UAV解码、再编码后转发
- 可纠正错误,性能更优
- 缺点:需更强计算能力,时延略高
text
编辑
[地面基站 gNB]
↓ (回传链路:高频段,如28GHz)
[UAV Relay (空中中继)]
↓ (接入链路:Sub-6GHz,如3.5GHz)
[地面用户设备 UE]
✅ 本文以 DF模式 为主,因其更符合5G NR实际应用。
三、系统设计目标
通过 Simulink 仿真验证:
- ✅ 构建 UAV三维运动学模型
- ✅ 集成 3GPP空-地信道模型(UAV-UE, gNB-UAV)
- ✅ 实现 DF中继逻辑
- ✅ 评估 端到端吞吐量、时延、覆盖范围
- ✅ 分析 能量效率 vs 飞行高度/速度
四、建模过程详解
第一步:创建 Simulink 模型
matlab
编辑
% 创建模型
modelName = 'NR_UAV_Relay_Simulation';
new_system(modelName);
open_system(modelName);
必备工具箱:
- Simulink
- 5G Toolbox(NR PHY)
- Communications Toolbox(信道、中继)
- Aerospace Blockset 或 Simscape Multibody(UAV运动)
- Mapping Toolbox(可选,地理坐标)
第二步:定义UAV与场景参数
matlab
编辑
% UAV与网络参数
uav_params = struct();
% UAV平台
uav_params.Mass = 5; % kg
uav_params.MaxSpeed = 15; % m/s
uav_params.FlightHeight = [50, 100, 150]; % m
uav_params.BatteryCapacity = 100e3; % Joules
uav_params.PowerConsumption = 300; % W (悬停)
% 通信参数
uav_params.CarrierFreq_Backhaul = 28e9; % 28 GHz (回传)
uav_params.CarrierFreq_Access = 3.5e9; % 3.5 GHz (接入)
uav_params.Bandwidth = 100e6; % 100 MHz
uav_params.MIMO = '2x2'; % 2Tx2Rx
% 场景
uav_params.Scenario = 'Urban Canyon'; % 城市场景
uav_params.NumGroundUEs = 10; % 地面用户数
第三步:系统架构设计
Simulink 模型框图:
text
编辑
[gNB (NR Base Station)]
↓
[Backhaul Channel: gNB ↔ UAV]
│
├── [TDL信道 (UAV专用)]
└── [Doppler (速度相关)]
↓
[UAV Relay Subsystem]
│
├── [NR Decoder (DF模式)]
├── [Buffer]
└── [NR Encoder + Re-transmit]
↓
[Access Channel: UAV ↔ Ground UEs]
│
├── [3GPP RMa-UAV 信道]
└── [LoS Probability Model]
↓
[Ground UEs (NR终端)]
↓
[Performance Analyzer]
├── [End-to-End Throughput]
├── [Latency (ms)]
├── [Coverage Map]
└── [Energy Efficiency]
第四步:关键模块实现
1. UAV三维运动轨迹建模
- 使用 Waypoint Trajectory 模块或自定义MATLAB Function
matlab
编辑
function [x,y,z] = uav_trajectory(t)
% 螺旋上升 + 悬停扫描
if t < 60
x = 100*cos(t*0.1);
y = 100*sin(t*0.1);
z = 30 + t*0.5; % 上升
else
x = 100*cos(6);
y = 100*sin(6);
z = 60; % 悬停
end
end
- 在 Simulink 中使用 From Workspace 导入轨迹
2. 空-地信道建模
- 回传链路 (gNB ↔ UAV):使用 3GPP UMi-UAV 模型
- 接入链路 (UAV ↔ UE):使用 3GPP RMa-UAV 模型
matlab
编辑
% 接入链路信道
accessChannel = nrCDLChannel;
accessChannel.DelayProfile = 'CDL-D'; % 城市多径
accessChannel.CarrierFrequency = 3.5e9;
accessChannel.DelaySpread = 100e-9;
accessChannel.AntennaSelection = '2x2';
3. 中继模式实现(DF)
- UAV子系统 包含:
nrDLSCHDecoder:解码来自gNB的数据Buffer:暂存数据nrDLSCH:重新编码,准备转发
matlab
编辑
% DF中继逻辑(MATLAB Function)
function tx_data = df_relay(rx_data, snr)
% 解码
[decoded, err] = nrDLSCHDecode(rx_data, ...);
if err == 0 % 解码成功
tx_data = nrDLSCH(decoded, ...); % 重新编码
else
tx_data = []; % 丢弃或重传
end
end
4. LoS概率建模(UAV ↔ UE)
- 根据高度和距离计算LoS概率:
P_LoS=11+aexp(−b(θ−a))P_LoS=1+aexp(−b(θ−a))1
其中 θθ 为仰角
matlab
编辑
function p_los = los_probability_uav(h_uav, d_horiz)
theta = atan2(h_uav, d_horiz) * 180/pi; % 仰角(度)
a = 4.88; b = 0.43;
p_los = 1 / (1 + a * exp(-b*(theta - a)));
end
5. 能量效率分析
- 通信能耗 vs 飞行能耗
- 能量效率 = 吞吐量 / 总能耗
matlab
编辑
% 能量效率
total_energy = power_comm * T + uav_params.PowerConsumption * T;
energy_efficiency = throughput / total_energy; % bps/Joule
第五步:完整Simulink模型搭建
推荐结构:
- 使用 Subsystem 封装 gNB、UAV、UE
- 使用 Variant Subsystem 切换 AF/DF 模式
- 使用 3D Scatter 显示UAV轨迹与UE位置
- 使用 Dashboard 实时显示吞吐量、时延
关键技巧:
- 使用 Rate Transition 处理不同模块速率
- 使用 To File 存储长时仿真数据
- 使用 Simulation Data Inspector 分析信号
五、仿真运行与结果分析
场景设置:
- UAV高度:50m, 100m, 150m
- UE分布:随机分布在1km×1km区域
- 业务:视频流(20Mbps)
预期结果:
| UAV高度 (m) | 覆盖UE数 | 平均吞吐量 (Mbps) | 端到端时延 (ms) | LoS概率 |
|---|---|---|---|---|
| 50 | 6 | 18.2 | 15.3 | 68% |
| 100 | 9 | 21.5 | 12.1 | 85% ✅ |
| 150 | 10 | 19.8 | 14.7 | 92% |
✅ 100m为最优高度:平衡覆盖与路径损耗
图表输出建议:
- UAV轨迹与覆盖热力图
- 吞吐量 vs 高度/速度
- LoS概率 vs 仰角
- 能量效率 vs 飞行时间
六、扩展:进阶应用
1. 多UAV协同
- 网状网(Mesh)中继
- 路由协议仿真
2. AI辅助轨迹优化
- 强化学习优化飞行路径
3. 安全通信
- 抗干扰、防窃听
七、总结
通过本次 Simulink 仿真,你已掌握:
- ✅ UAV三维运动建模
- ✅ 空-地信道集成(3GPP UAV模型)
- ✅ DF中继逻辑实现
- ✅ 端到端性能评估
- ✅ 能量效率分析
核心收获:
- UAV高度显著影响覆盖与性能
- DF模式更可靠,但需计算资源
- 100m左右为城市中继最优高度
- Simulink 支持空-地一体化系统仿真
掌握UAV中继仿真技术,你将具备设计 应急通信网、空中专网、智慧农业监测系统 的能力。
附录:所需模块清单
| 功能 | Simulink 模块 / 工具 |
|---|---|
| UAV运动 | Waypoint Trajectory, MATLAB Function |
| 信道 | nrCDLChannel, TDL Channel |
| 中继 | MATLAB Function, Subsystem |
| 分析 | Dashboard, 3D Plot, To Workspace |
参考标准:
- 3GPP TR 36.777 (UAV信道模型)
- 3GPP TR 38.811 (NR UAV研究)
- ITU-R M.2101 (高空平台)
代码与模型下载:
https://github.com/yourname/NR-UAV-Relay-Simulink
立即动手,在 Simulink 中构建你的“空中通信网络”,体验 从地面到天空的信号飞跃!

66

被折叠的 条评论
为什么被折叠?



