密集城市环境无人机空对地路径损耗研究
1. 概述
本文推导了低空无人机与移动站之间的空对地(A2G)信道分析模型,适用于频率为 1GHz、2GHz 和 5.8GHz 的密集城市环境。模型项基于 A2G 通道光线追踪仿真分析和刀口衍射理论确定。该模型与其他 A2G 模型相比,显示出更好的标准误差和置信区间验证结果。此外,还讨论了改变频率和无人机高度对路径损耗和视线概率的影响。
当现有地面网络受损或无法完全运行时,无人机(UAV)已成为紧急情况和公共安全情况下的有前途的解决方案。无人机自主操作的能力可用于支持关键任务,如灾害信息融合、损失评估。此类应用需要高效的部署模型来建立无人机和地面站之间的通信。为了有效部署无人机,无线电波传播信道的建模至关重要。
空对地(A2G)信道建模方法通常可分为随机模型和确定性模型。确定性信道模型已在相关文献中提出。然而,部分基于单一模型城市的统计模型不能在不同类型的城市环境中广泛推广。因此,本文提出了无人机(发射机)与终端用户(接收机)链路的解析传播模型,该模型基于光线追踪仿真结果和刀刃衍射理论的分析,表示为无人机高度和仰角的函数。
使用无线 InSite 程序执行光线追踪模拟。它通过从发射器发射光线并在定义的环境中传播它们来进行计算。仿真输出包括路径损耗、延迟、延迟扩展、到达方向和脉冲响应。
2. 密集城市环境对无线信号传播的影响
主要影响因素
- 建筑密度与高度:高层建筑导致衍射损失增加,低层建筑密集区则依赖反射和绕射。
- 材质与穿透损耗:混凝土和金属结构对高频信号(如 5.8 GHz)的穿透损耗可达 20-30 dB。
- 多径效应:信号通过街道峡谷反射形成多径分量,引起快衰落和码间干扰。
- 阴影效应:建筑物遮挡导致慢衰落,信号强度呈对数正态分布。
典型传播现象
- 波导效应:沿街道方向的信号增强,垂直方向衰减显著。
- 屋顶衍射主导:在高层建筑区,信号主要通过反射进入街道,而非屋顶绕射。
3. U2G 路径损耗建模方法
经典模型
- 自由空间模型:适用于高空场景(>100 m),假设无遮挡,路径损耗与距离平方成反比,但低估城市环境损耗。
- 双射线模型:考虑直射波与地面反射波叠加,适用于郊区开阔区域。
概率 LoS 模型
- 仰角依赖模型:LoS 概率随无人机高度和接收端仰角变化,公式为 $P_{LoS} = \frac{1}{1 + a\exp(-b(\theta - a))}$,其中 $\theta$ 为仰角,a、b 为环境参数。
- 三状态模型:将信道分为 LoS、阴影(NLoS)、阻塞状态,通过半马尔可夫链描述状态转移。
实测数据与模型验证
- 最佳飞行高度:存在唯一高度使路径损耗最小(如密集城市中约 196.96 m),过低时 NLoS 主导,过高时自由空间损耗增加。
- 频率影响:5.8 GHz 频段路径损耗比 2 GHz 高约 15 dB,但波束成形可部分补偿。
- 建筑布局影响:在摩天大楼区域,LoS 概率较普通城市降低 40%,额外路径损耗增加 10-15 dB。
4. Matlab 代码实现
以下代码用于计算覆盖半径与无人机高度的关系,以及特定高度下路径损耗与仰角的关系。
% First app to calculate the coverage radius vs UAV height and to
% calculate the optimum elevation angle
% Parameters initialization
path = 0;
path3 = 0;
path4 = 0;
i = 0;
j = 0;
ColorSet = varycolor(floor(90));
% Pathloss input parameters
env = 2; % Environment type selection
f = 1000000000 * 2; % Operating frequency (2 GHz)
L_r = 0.3; % Reflection loss
h_ms = 2; % Mobile station height
h_B = 35; % Building height
Ptx = 20; % Transmitting power
Prx = -80; % Received power
A = 1; % Antenna loss flag
Go = 2.15; % Max antenna gain
seta_3db = 76; % Antenna 3dB bandwidth
% Call path loss function model1
[path, Seta_A2G_opt, R_A2G, h_UAV] = A2G_model1_R_h(env, f, L_r, h_ms, h_B, A, Go, seta_3db, Ptx, Prx);
% Configure plot axes
fig1 = figure;
ax = gca;
hold on;
color = 1;
% Plot function
draw_R_h(ax, path, R_A2G, h_UAV, color);
% Call the path loss function model2
[path, Seta_A2G_opt, R_A2G, h_UAV] = A2G_model2_R_h(env, f, h_ms, A, Go, seta_3db, Ptx, Prx);
color = 2;
draw_R_h(ax, path, R_A2G, h_UAV, color);
legend({'model-1', 'optimum elevation angle', 'model-2'}, 'Location', 'southeast');
hold off;
% Save output figure
saveas(fig1, '../results/A2Gpathloss_coverage_vs_height.png');
% Second app to calculate the path loss vs elevation angle at certain UAV height
h_UAV = 200; % UAV height
% Call the path loss function model1
path3 = A2G_model1_PL_h(env, f, L_r, h_ms, h_B, A, Go, seta_3db, h_UAV);
% Configure plot axes
fig2 = figure;
hold on
ax = gca;
color = 1;
grid(ax, 'on');
seta = 85;
scale = 1;
% Plot path loss vs. elevation angle at certain height
draw_PL_h(ax, path3, color);
% Call the path loss function model2
path4 = A2G_model2_PL_h(env, f, h_ms, A, Go, seta_3db, h_UAV);
color = 2;
draw_PL_h(ax, path4, color);

