基阵把多个换能器协同工作,波束形成对各阵元信号施加相位(时延)补偿,使某方向的波同相叠加、其他方向相消——在电子域转动"声学探照灯"而无需机械转动。波束宽度由孔径与波长之比决定,阵元间距过大产生栅瓣(假波束)。
上一节的预算表里有一项 DI(指向性指数)没展开——它正是基阵给的。单个小换能器全向听音,信噪比被各向噪声淹没;把几十上百个阵元排成阵,指向性增益直接换算成探测距离。
N 个间距 d 的阵元排成直线,平面波从方位 θ 入射,相邻阵元收到信号的额外路程是 d·sinθ。想让 θ 方向同相叠加,就给第 n 个阵元补上时延 τn = n·d·sinθ/c——对哪个方向补偿,波束就指向哪里,扫描纯电子化、微秒级完成。阵列响应是阵元因子乘阵因子,后者就是 sinc 型波束图:
import numpy as np c = 1500.0 N, d, f = 16, 0.5, 1500.0 # 16 元、间距 0.5 m、1.5 kHz(水中波长 1 m) lam = c/f def array_factor(theta_deg, steer_deg=0.0): th, st = np.radians(theta_deg), np.radians(steer_deg) k = 2*np.pi/lam psi = k*d*(np.sin(th) - np.sin(st)) # 阵元间相位差(补偿后) n = np.arange(N)[:, None] af = np.abs(np.sum(np.exp(1j*psi*n), axis=0))/N return af th = np.linspace(-90, 90, 721) af = array_factor(th) hpbw = th[np.argmax(af < 0.5) ] # 半功率角(近似) print(f"波长 {lam} m,阵长 {(N-1)*d} m") print(f"-3 dB 半波束角(单侧)约 {hpbw:4.1f}°;第一旁瓣约 {20*np.log10(0.217):.1f} dB") print(f"指向性增益近似 10lg(N) = {10*np.log10(N):.1f} dB") # 波长 1 m,阵长 7.5 m # -3 dB 半波束角(单侧)约 3.8°;第一旁瓣约 -13.3 dB # 指向性增益近似 10lg(N) = 12.0 dB # 孔径/波长 = 7.5 -> 波束窄;阵元数翻倍,增益加 3 dB,波束减半。
三条设计法则从这段代码里长出来:孔径对波长的比值决定波束宽度;阵元增益 10lg(N);等幅加权的固定旁瓣约 −13 分贝(sinc 的宿命)。压旁瓣要幅度加权(锥削窗),代价是主瓣变胖——雷达与声呐共用的老交易。
阵元间距超过半波长时,波束图出现与主瓣等高的栅瓣——目标的方位会被误报。条件一目了然:d > λ/2 且扫描角非零时,不同"补偿方向"给出相同的阵元相位差。侧扫声呐与医用相控探头的阵元间距都卡在半波长以内,这是采样定理在空间域的化身(空间采样,阵元即采样点):
import numpy as np def grating_lobe(N, d_over_lambda, steer_deg=20.0): """返回出现栅瓣的扫描角(若存在)""" s = np.sin(np.radians(steer_deg)) # 栅瓣方向 sinθ' 满足 sinθ' - s = m·λ/d(m 非零整数) lobes = [] for m in (-1, 1): sp = s + m/d_over_lambda if -1 <= sp <= 1: lobes.append(round(np.degrees(np.arcsin(sp)), 1)) return lobes for dlam in (0.4, 0.5, 0.8): print(f"d/λ = {dlam:.1f},扫描 20° 时栅瓣方向:{grating_lobe(16, dlam) or '无'}") # d/λ = 0.4,扫描 20° 时栅瓣方向:无 # d/λ = 0.5,扫描 20° 时栅瓣方向:无(半波长间距,全扫描角无栅瓣) # d/λ = 0.8,扫描 20° 时栅瓣方向:[-33.7] <- 假目标! # 真目标在 20°,阵列同时"看见" -33.7° 的幻影 —— 空间欠采样的直接恶果。

窄带近似下时延补偿可写成复数乘法(移相);宽带信号则需真时延或频域分带处理。更聪明的是自适应波束形成(如 MVDR):按实际噪声场协方差计算权重,在保持期望方向增益的同时,在干扰方向自动形成"零陷"——拖曳阵声呐在强干扰方向挖出几十分贝的深零,是它压制商船噪声的看家本领。代价是对误差敏感:阵元位置标定误差、指向失配会让零陷"歪掉",稳健自适应是几十年不衰的研究题。医用超声相控阵、射频大规模天线阵列、麦克风阵列会议系统——第4章的"指向性"与这里的"波束形成"本是同一门手艺在不同介质里的分号。
⚠️ 常见坑:把阵元摆得太密以为"越多越好"。超过半波长间距的栅瓣报假方位;而阵元过密(远小于半波长)虽然无害,但增益只由孔径决定,白花换能器的钱。
下一节进入组织与材料:超声检测与医学成像。
波束越窄越好吗? 不一定。搜索阶段要宽波束快扫覆盖;跟踪锁定才切窄波束提精度。医用超声同理:先低频宽束找病灶,再高频窄束看细节。扫描速度与分辨率的交换无处不在。
为什么拖曳阵要拖几千米长? 低频波长数十米,要窄波束就得百米级孔径;舰体装不下(还会被自身噪声污染),拖在安静的后方是唯一解。阵长换增益,力学与布放工程随之而来。
MVDR 为什么"脆"? 它假设协方差矩阵精确已知。阵元位置毫米级误差、指向失配一度,协方差就与模型失配,零陷跑偏甚至放大干扰。对角加载等稳健化手段,本质是承认无知、付出增益换保险。