ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

阵列天线方向图原理与对比:从干涉机制到设计取舍

阵列天线方向图原理与对比:从干涉机制到设计取舍

简介:这份资料围绕阵列天线方向图展开,面向无线通信、天线设计与电磁场相关专业的学生及工程技术人员,帮助理解单元个数、阵元间距与波长变化对辐射方向图的具体影响。压缩包共4个文件,均为MATLAB脚本(.m),整体约2KB,分别对应不同参数组合下的方向图计算与对比,便于直接运行观察波束宽度、增益与旁瓣的变化规律。已有2136人学习下载,说明其在阵列天线入门与教学演示中具有一定参考价值。读者可借助这些脚本复现2单元、4单元、8单元等不同配置下的方向图曲线,对比λ/2、λ、λ/4等间距条件对主瓣与零点的作用,进而掌握阵列参数与波束赋形之间的对应关系,为远程通信、多路径干扰规避或空间分辨率提升等场景的阵列选型提供直观依据。

1. 阵列方向图:为什么单元越多,主瓣反而越窄

把两个全向天线并排放在一起,馈入同幅同相的电流,你会得到一个意外结果:某些方向上信号变强,某些方向上几乎抵消。这不是玄学,而是空间相位差在起作用——电磁波到达远场某点时,两路信号走过的路程不同,叠加时相位不同,于是有的方向相加、有的方向相消。阵列天线方向图的一切机制,都从这个最朴素的干涉事实出发。

搞懂方向图,本质上是在搞懂「空间相位差如何被阵列几何结构翻译成角度选择性」。单元数、间距、幅度分布、相位递变,每一个参数都在改写这张图的形状。几种阵列的方向图比较,比的不是谁的主瓣好看,而是谁在给定口径和单元数下,把能量更精准地压到目标角度、把旁瓣压得更低。这份资源把均匀阵、加权阵、非均匀间距阵等几种典型结构的方向图放在一起对照,正好是理解「参数如何决定形状」的绝佳切口。下面从干涉机制一路拆到方向图的计算实现,把每个参数背后的物理含义讲透。

2. 从阵因子看方向图:干涉如何被写成公式

2.1 阵因子是方向图的核心骨架

方向图由两部分相乘得到:单个单元的元因子,和阵列排布决定的阵因子。元因子描述一个天线自己往各方向辐射的能力,阵因子描述多个单元叠加后产生的空间选择性。工程上比较不同阵列,绝大多数时候比的就是阵因子,因为元因子在单元类型确定后基本不变,真正被阵列几何结构改写的是阵因子。

对沿一条直线等间距排布的 N 元均匀线阵,阵因子写成归一化形式:

import numpy as np def array_factor_uniform(N, d_lambda, theta, theta0=0.0): """ N : 单元数 d_lambda : 单元间距,以波长为单位 theta : 观察角度(弧度),相对阵列法线 theta0 : 波束指向角(弧度) 返回归一化阵因子幅度 """ # 相邻单元之间的空间相位差 psi = 2 * np.pi * d_lambda * (np.sin(theta) - np.sin(theta0)) # 等比数列求和后取归一化幅度,避免 0/0 用极限处理 with np.errstate(divide='ignore', invalid='ignore'): af = np.sin(N * psi / 2) / (N * np.sin(psi / 2)) af = np.where(np.abs(np.sin(psi / 2)) < 1e-12, 1.0, af) return np.abs(af)

这段代码里最关键的量是psi,它把「两个相邻单元到远场某点的波程差」换算成相位差。sin(theta) - sin(theta0)这一项说明:波束指向theta0时,所有单元在该方向的相位差被补偿为零,于是同相叠加形成主瓣。N * psi / 2出现在分子,是因为 N 个单元等比求和后,幅度呈现为 Dirichlet 核的形式。分母的N * sin(psi / 2)做归一化,保证主瓣峰值恒为 1,方便不同 N 之间直接比较。

参数上,d_lambda决定栅瓣出现的角度位置,N决定主瓣宽度和旁瓣数量。把d_lambda调到大于 1,psi在可见角域内会跨越多个 2π 周期,于是出现与主瓣等高的栅瓣——这是阵列设计里最典型的翻车点之一。

2.2 主瓣宽度与单元数的定量关系

均匀阵的零点出现在N * psi / 2 = ±kπ处,第一对零点之间的宽度就是主零点波束宽度。对边射阵(theta0 = 0)做小角度近似,半功率波束宽度约为:

HPBW ≈ 0.886 * lambda / (N * d) (弧度,边射,d 为实际间距)

这个式子直接回答了「为什么单元越多主瓣越窄」:口径N * d越大,波束越锐利。它和光学里口径越大分辨率越高的道理完全同源,都是衍射极限的体现。但要注意,这个近似只在边射附近成立,扫描到较大角度时波束会展宽,展宽因子约为1 / cos(theta0),这是相控阵扫描时增益下降的根源之一。

2.3 幅度加权如何改写旁瓣

均匀阵的第一旁瓣约 -13.2 dB,这个数字在很多场景下不够用。降低旁瓣的通用手段是幅度加权,让中间单元强、边缘单元弱,等效于给阵因子乘一个窗函数。常见的几种加权及其代价如下表:

加权方式第一旁瓣主瓣展宽特点
均匀-13.2 dB1.0增益最高,旁瓣最差
三角窗-26 dB约 1.4实现简单,折中
汉明窗-43 dB约 1.5旁瓣低,主瓣明显变宽
切比雪夫可指定随旁瓣要求增大等旁瓣,最优折中

加权本质上是拿主瓣宽度换旁瓣电平,没有免费午餐。比较几种阵列方向图时,如果只盯着旁瓣低就下结论,会忽略主瓣展宽带来的分辨率损失。合格的比较必须同时看主瓣宽度、旁瓣电平、增益损失三个指标。

3. 非均匀间距阵:用几何换旁瓣的另一种思路

3.1 为什么打乱间距能压旁瓣

均匀阵的旁瓣是周期性相位叠加的产物,间距一致导致各单元贡献在旁瓣方向规律性同相。如果把单元间距做成非均匀,各单元到远场的相位差不再有统一周期,旁瓣方向的能量被「打散」,峰值自然下降。这就是非均匀间距阵(稀疏阵、随机阵)压旁瓣的底层逻辑:不是靠幅度衰减,而是靠破坏相位相干性。

代价是方向图不再有解析闭式,只能数值计算,而且旁瓣电平对具体间距分布敏感,同一组间距在不同扫描角下表现可能差异很大。常见的实现思路是用优化算法搜索间距组合,目标函数设为峰值旁瓣电平最小,约束主瓣宽度和口径不超限。

3.2 数值计算非均匀阵方向图

def array_factor_sparse(positions_lambda, theta, theta0=0.0): """ positions_lambda : 各单元位置,以波长为单位的一维数组 theta : 观察角度(弧度) theta0 : 波束指向角(弧度) """ # 每个单元相对参考点的空间相位 phase = 2 * np.pi * positions_lambda[:, None] * \ (np.sin(theta)[None, :] - np.sin(theta0)) # 各单元贡献相干叠加 af = np.sum(np.exp(1j * phase), axis=0) return np.abs(af) / len(positions_lambda)

和均匀阵的闭式解相比,这里直接对每个单元的复指数贡献求和,positions_lambda可以是任意分布。代码里[:, None]和[None, :]做广播,把「单元维」和「角度维」展开成矩阵,一次算出所有角度。这种写法对均匀阵同样适用,只是均匀阵有闭式解可以省算力。

参数说明:positions_lambda的第一个单元通常设为 0 作为相位参考,整体平移不改变方向图形状,只改变绝对相位。如果间距分布里出现小于半波长的相邻单元,互耦会显著增强,实际方向图偏离独立单元叠加的预测,这是数值模型和实测对不上的常见原因。

3.3 稀疏阵的栅瓣陷阱

非均匀间距能压旁瓣,但不等于随便打乱就安全。如果平均间距仍大于一个波长,某些角度上仍可能出现准栅瓣;如果间距分布存在近似周期性,旁瓣会在特定角度抬升。我一般会这么理解:稀疏阵是把「确定性旁瓣」换成了「统计性旁瓣」,平均旁瓣低了,但最坏情况旁瓣需要靠大量随机试验或优化来保证。比较方向图时,稀疏阵必须给出多组间距下的旁瓣分布,而不是只画一条曲线。

4. 避坑与排查:方向图对不上的五个常见原因

4.1 现象:仿真主瓣位置偏移,指向角对不上

原因通常是相位递变符号搞反。波束扫描靠给相邻单元加递增相位-2π d sin(theta0) / λ,符号取决于角度定义方向和阵列排布方向。解决方法是先用theta0 = 0验证边射,再扫一个小角度看主瓣移动方向是否符合预期,确认符号约定后再做大角度扫描。

4.2 现象:间距略大于半波长就冒出等高旁瓣

这是栅瓣,不是旁瓣。当d > λ,可见角域内出现第二个同相叠加方向,其幅度与主瓣相同。排查方法是检查d_lambda是否超过 1,扫描状态下还要满足d < λ / (1 + |sin(theta0)|)。解决方式是缩小间距或改用非均匀排布,不能靠加权消除栅瓣。

4.3 现象:加权后旁瓣没降多少,主瓣却明显变宽

多半是加权系数没有归一化,或者加在了错误的位置。幅度加权应作用在各单元的激励幅度上,且要保证总功率或峰值归一化一致,否则比较基准就变了。排查时把加权系数打印出来,确认边缘单元确实小于中心单元,且系数和为合理值。

4.4 现象:单元数增加后主瓣宽度没按预期变窄

检查是否把「单元数」和「有效口径」混为一谈。如果增加单元的同时缩小了间距,口径没变,主瓣自然不会变窄。另一个可能是角度单位用错,公式里的弧度被当成角度代入。解决方法是固定口径比较单元数,或固定单元数比较口径,一次只改一个变量。

4.5 现象:仿真与实测旁瓣差异大,主瓣附近尤其明显

独立单元叠加模型忽略了互耦和单元方向图差异。间距小于半波长时互耦最强,边缘单元和中心单元的實際激励幅度、相位都会偏离设计值。排查方法是先测单元自身的实际方向图和有源驻波,再把实测单元方向图代入阵因子相乘。解决方式是在设计阶段留旁瓣余量,或引入互耦补偿。

5. 设计取舍:方向图比较到底在比什么

把几种阵列的方向图放在一起,最容易犯的错是拿不同口径、不同单元数的曲线直接比旁瓣。公平的比较必须锁定约束条件:相同口径比旁瓣和主瓣宽度,相同单元数比增益和栅瓣风险,相同旁瓣要求比口径效率。均匀阵口径效率最高但旁瓣差,加权阵用主瓣宽度换旁瓣,稀疏阵用优化复杂度换几何自由度,三者没有绝对优劣,只有约束下的最优解。

验证一套方向图计算是否可信,我习惯做三件事:先用边射均匀阵对照解析式,确认0.886 λ / (N d)的波束宽度对得上;再把扫描角推到 60 度,看主瓣是否按1 / cos(theta0)展宽;最后把间距推到大于一个波长,确认栅瓣出现在理论角度。这三步走完,代码里的符号、单位、归一化基本就都对齐了。

这份资源把几种典型阵列的方向图并列呈现,价值不在于给出标准答案,而在于让你能沿着同一条计算链路,看清每个参数改动如何传导到最终形状。拿到手后建议先复现均匀阵的解析结果,再逐个替换成加权阵和稀疏阵,对照着看旁瓣和主瓣此消彼长的关系。从那以后我每次做阵列方向图比较,都强制先锁定口径和单元数这两个约束再动笔,否则曲线画得再漂亮也是自欺欺人。希望帮到你。

本文还有配套的精品资源,点击获取

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进