1. 先搞清楚我们到底在防什么
1.1 一颗卫星发出来的信号,比手机信号弱了一亿倍
先说个数据,很多刚接触GNSS的人第一次听到都会愣一下:GPS L1频段的C/A码信号,到了地面接收机天线口面的时候,典型功率大约是-130 dBm,也就是10的负16次方瓦特。这是个什么概念?一台普通手机发射功率是23 dBm左右(200毫瓦),GNSS卫星信号到地面比它弱了150个dB以上。换句话说,你头顶上那颗卫星努力发信号,传到地面之后,能量还不如一台家用台灯在几公里外照过来那么微弱。
正因为信号这么弱,GNSS接收机本质上是在"一锅噪声汤里捞一根面条"。正常情况下,接收机靠着伪码相关增益,把这根面条从锅里捞出来;但如果旁边有个干扰源,不管是故意还是无意,只要它的功率稍微大一点,这根面条就会被彻底淹没。有人做过统计,一个5瓦的个人信号屏蔽器,放在距离接收机10米以内,就能让周边几百米范围内的普通接收机全部失锁。这就是GNSS抗干扰存在的根本原因。
所以这个领域所有技术,本质上就干一件事:从噪声和干扰的混合物里,把真正属于卫星的那点微弱信号尽可能完整地抠出来。抠得越干净,测距越准,定位、授时、测速才越可靠。
1.2 干扰从哪里来:无意的和故意的
在实际工程项目里,我习惯把干扰源分成两大类,因为应对手段完全不同。
无意的电磁干扰是日常最常见的。比如民航客机上不允许开手机,就是因为手机信号可能落在航空GPS频段附近;再比如大功率广播电台的谐波、微波中继链路、附近基站的天线互调产物、工业设备的电磁泄漏,都可能踩进GNSS L1/L2频段。这一类干扰的特点是"信号特征相对固定",功率一般不会特别极端,但一旦踩进频段,影响范围很大。
故意的干扰就麻烦了。一类是压制式干扰,俗称"盖帽",用噪声或连续波把整个频段盖住,让你什么都收不到;另一类是欺骗式干扰,伪造卫星信号发给你,让你的接收机算出错误的位置或时间。前者是"把你眼睛蒙上",后者是"给你看一张假地图"。欺骗的隐蔽性和危害性比压制还要大,因为接收机自己很难发现被骗了。
我见过不少设备招标文件,抗干扰指标就一句话"支持抗干扰",至于抗什么干扰、能扛多大功率、扛完还剩什么性能,一个字没写。这种情况到了验收阶段最容易扯皮。所以理解干扰类型,是后面谈任何指标的基础。
1.3 抗干扰到底在哪个环节使劲
GNSS接收链路可以粗暴分成四段:天线、射频前端、基带处理、导航解算。抗干扰技术在这四个环节都有对应的招式:
- 天线端:用阵列天线在空间上把干扰方向"调零";
- 射频端:加滤波器、限幅器,把带外强信号挡在门外;
- 基带端:用时域、频域、空时域信号处理把残留干扰剥离;
- 解算端:用完好性监测、多源校验识别欺骗和异常。
很多人一说抗干扰就只想到天线,这不对。真正工程化的抗干扰一定是多层联合,单靠任何一层都有天花板。下面我按这个思路一层一层说。
2. 干扰类型与抗干扰技术体系
2.1 压制式干扰:三种最常见的"盖帽"方式
压制式干扰按频谱形态分,最典型的是三种。
窄带瞄准干扰:把全部功率集中在一个很窄的频率点上,比如正好压在GPS L1的1575.42 MHz上。它就像一个人在你耳边持续尖叫一个固定音调,虽然频率窄,但单位频带内功率密度极高,能把对应频点的信号彻底淹没。对付这种干扰,经典手段就是频域陷波,后面我会细讲实现。
宽带压制干扰:用噪声把整个GNSS频段(比如从1.1 GHz到1.6 GHz)全部铺满。这种方式功率被摊薄了,单位带宽内的干扰密度反而不如窄带高,但它覆盖面广,能同时废掉L1、L2、L5好几个频点。这是军用场景里最常见的威胁样式之一。
扫频干扰:一个窄带干扰源在整个频段内快速来回扫。它兼顾了窄带的高功率密度和宽带的覆盖面,属于比较难处理的类型。因为它的频率一直在变,固定陷波器跟不住,需要时频联合分析才能有效抑制。
2.2 欺骗式干扰:比压制造麻烦得多
欺骗干扰这两年讨论得特别多,尤其是针对无人机、车载导航、金融授时的攻击案例越来越多。它分两种基本形态:
生成式欺骗:干扰机自己生成一套完整的、功率略高于真实卫星的伪造信号。接收机如果信噪比较差,很容易锁定这些假信号,然后被带着算出完全错误的位置或时间。
转发式欺骗:干扰机把收到的真实卫星信号做延迟或功率调整后转发出来。这种方式伪造的信号和真实信号高度相关,接收机几乎无法从信号结构上分辨,只能靠载波相位一致性、多普勒一致性等高级检测手段去识别。
抗欺骗和抗压制的逻辑完全不一样:抗压制是"把干扰抠掉",抗欺骗是"把假的揪出来"。一个做减法,一个做鉴别。这也是为什么我建议不要笼统地说"抗干扰",要分清楚面对的是压制还是欺骗,技术路线完全不同。
2.3 抗干扰技术的三层架构
工程上我习惯把整个抗干扰体系分成三层,每层各司其职:
| 层级 | 主要手段 | 对抗对象 | 特点 |
|---|---|---|---|
| 空间层(天线) | 自适应调零天线、抗干扰阵列 | 各种方向的压制干扰 | 在干扰进入接收机之前就削弱,最彻底 |
| 信号层(基带) | 时域滤波、频域陷波、STAP | 带内窄带/宽带/扫频干扰 | 灵活、可升级,但对强干扰有处理上限 |
| 信息层(解算) | 完好性监测、多源校验 | 欺骗干扰、异常信号 | 不能恢复信号,但能发现并剔除假信息 |
这三层是递进关系,不是替代关系。天线端把干扰压下去,基带端才能更好地提取信号;信息层则负责最后一道把关。实际工程里,天线端的阵列成本高、体积大,不是所有场景都用得起;基带端的算法则几乎每个接收机都能做,属于性价比最高的抗干扰手段。
3. 天线端的杀招:自适应调零天线
3.1 为什么多个天线就能抗干扰
先想一个问题:干扰和卫星信号对你来说,最大的区别是什么?除了功率和频率,还有一个非常关键的东西——方向。卫星在天上,分布在不同的方位和仰角;干扰通常来自地面某个固定方向。如果接收机能在空间上区分方向,把来自干扰方向的信息"屏蔽"掉,同时保留来自卫星方向的信息,问题不就解决了?
这就是阵列天线的基本思路。用一个天线单元,你只能接收,没有方向选择性;用多个天线单元组成阵列,配合合适的加权系数,就可以在特定方向形成增益,在另一个特定方向形成零点(null)。干扰来自哪里,就在哪里打一个零点,这叫自适应调零。我做过的一个四阵元抗干扰天线,能把干扰方向的天线增益压到-40 dB以下,相当于把到达干扰的功率直接削减了上万倍。
3.2 算法层面:MVDR和LCMV是怎么回事
调零天线的核心算法很多,最经典的是MVDR(最小方差无失真响应)和LCMV(线性约束最小方差)。
拿MVDR举例,它的目标很直接:在保证卫星方向增益不变(约束条件)的前提下,让阵列输出功率最小。因为输出功率里包含信号、噪声、干扰三部分,信号功率被约束住了,剩下的就是噪声加干扰,最小化它,等于自动把干扰压下去了。公式可以写成:
min w^H R_x w, subject to w^H a(θ_s) = 1
其中R_x是接收数据的协方差矩阵,a(θ_s)是卫星方向的导向矢量,w就是我们要算的加权系数。这个约束的含义是"卫星方向的信号我一个不剩地保留,其他方向能压多少压多少"。解出来w = R_x^{-1} a(θ_s) / (a(θ_s)^H R_x^{-1} a(θ_s))。
LCMV则是MVDR的扩展,可以同时约束多个方向的增益,比如同时保留两颗卫星的信号、同时压制两个干扰,只要约束矩阵和响应向量设置得当就行。
实际工程里,导向矢量的精度、协方差矩阵的估计质量、快拍数够不够,都会直接影响调零深度。我踩过的一个坑是:在单干扰场景下调零效果很好,但出现两个相干干扰(一个直射一个地面反射)时,协方差矩阵秩亏,算法直接失效。后来改用对角加载(对协方差矩阵加一个小的对角矩阵)才稳住,这是一个非常实用的工程技巧。
3.3 工程实现里最容易被低估的几个细节
阵列抗干扰天线要做到好用,光有算法远远不够。以下几个细节,任何一个没处理好,性能都会大打折扣。
阵元数:理论上一根天线没法调零(自由度不足),两单元只能对付一个干扰,四单元可以对付三个干扰。原则是阵元数量要大于干扰数量加1。如果干扰源有四个,你装了三根天线的阵列,天线端就废了,只能靠基带硬抗。
阵型:阵元怎么摆,决定了空间分辨能力。常见的L型阵列、圆环阵列各有优劣。圆环阵在方位上对称性好,适合地面设备;L型阵列结构紧凑,适合机载平台。但要注意阵元间距,间距过大容易出现栅瓣(在非干扰方向形成虚假零点),间距过小则阵元间耦合严重,降低调零深度。
通道一致性:这是阵列天线工程里最头疼的一环。天线出来要接多个射频通道,每个通道的幅度增益、相位延迟、群时延要尽可能一致。不一致的话,算法算出的导向矢量与实际偏差很大,调零深度直接劣化。我做过一台样机,四个通道相位偏差从5度漂到15度的时候,干扰方向增益从-40 dB恶化到只有-25 dB,差距非常明显。常规做法是设计数字校正电路,每次开机做一次在线标校。
相位中心:很多只做定位的人不会在意相位中心,但做高精度测量、事后定轨这种cm/s量级的应用就躲不开。抗干扰天线在调零过程中,加权系数一直在变,等效相位中心也在飘。如果相位中心变化达到厘米级,对普通导航无所谓,对精密单点定位就是灾难。所以真正高端的抗干扰天线,会把相位中心稳定性作为一个硬指标来考核。
4. 接收机端的组合拳:时域、频域与空时域联合
4.1 时域滤波:对付脉冲干扰和窄带干扰
时域抗干扰最经典的手段是脉冲干扰抑制。GNSS信号本身近似高斯噪声,幅度平稳;而脉冲干扰(比如雷达脉冲、电火花)在时域上表现为突然的大幅度尖峰。做法很简单:对输入信号做幅度统计,设置一个门限,超过门限的采样点直接置零或限幅。
这个思路听起来简单,但门限设置非常讲究。门限太高,压不住脉冲;门限太低,会把正常的噪声和信号也削掉,反而降低信噪比。我习惯用滑动窗统计幅度分布,取均值加若干倍标准差作为门限,并且根据干扰占空比动态调整。占空比高的时候要适当松一点,否则信号损失太严重。
还有一种时域手段是自适应预测滤波。它利用窄带干扰的时间相关性,用前几个时刻的采样值预测当前值,再用预测残差把干扰剥离。这个思路对单音干扰非常有效,但多音干扰和扫频干扰就吃力了,因为信号不再是一个稳定的窄带过程。
4.2 频域滤波:FFT加陷波器的经典组合
对付窄带干扰,频域是最直接的战场。流程大概是这样的:
- 对一段时域数据做FFT变换到频域;
- 在频域做谱线检测,找出功率明显高于背景噪声的频点;
- 对这些频点做陷波处理(置零、衰减或幅度加权);
- 反变换回时域,再送入相关器。
这里有个关键参数:FFT点数。点数越多,频率分辨率越高,越能精准定位窄带干扰的频点;但点数多也意味着时延变大、实时性变差,而且对扫频干扰的跟踪能力会下降。我常用的折中是2的16次方点FFT,对应L1频段大约几kHz的分辨率,既能有效处理大多数窄带干扰,时延也能控制在毫秒级以内。
还有一个细节:窗函数。直接对时域数据截断做FFT,频谱会有严重的泄漏效应,让窄带干扰的能量"糊"到旁边的频点上去,导致误判。加一个海明窗或布莱克曼窗能显著改善泄漏,但加窗会降低主瓣宽度、影响频率分辨率,算是两难的选择。我的经验是,如果干扰源是稳定的连续波,不加窗直接检测反而更准;如果是扫频干扰,一定要加窗,否则检测结果会一塌糊涂。
4.3 空时联合处理:把天线和基带的活儿一起干
前几年大家发现,单独靠空域调零或者单独靠频域陷波,总有不尽人意的地方。比如调零天线对宽带干扰效果好,但对扫频干扰就反应不够快;频域陷波对窄带干扰很灵,但遇到多个干扰源、或者干扰和卫星信号方向接近的时候,就束手无策。
于是就有了STAP(空时自适应处理)。它的核心是把阵列天线每个阵元的输出先做一串时间延迟(时域抽头),然后再做自适应加权。这样一来,阵列就不只是在空间上形成零点,还能在"空间+频率"的二维平面上同时形成零陷。原来空域只有一个自由度,STAP把每个阵元扩展成多个时间抽头,自由度大大增加,能同时对付多个方向、多个频段的干扰。
STAP的代价也明显:计算量暴涨。阵元数乘抽头数就是总的自由度,四阵元、每个阵元8个抽头就是32维的自适应权值,协方差矩阵是32乘32的,实时求逆对硬件有压力。现在很多方案是用FPGA做并行处理,加上降秩算法(比如把抽头数从8降到4)来降低复杂度。如果项目预算允许,STAP是当前综合抗干扰能力最强的基带方案。
4.4 抗欺骗:接收机怎么识别"假货"
前面说的都是抗压制,对抗欺骗的思路完全不同。常用的欺骗检测手段有这么几类:
信号质量监测(SQM):真实的卫星信号经过电离层、对流层和多径作用后,相关峰的形态是相对稳定的;欺骗信号为了掩盖自己,往往会有一些特征破绽,比如相关峰变形、C/N0异常跳高、码相位不一致。通过监测相关峰的形状参数(比如Early-Late间距上的幅度比值),可以识别异常。
一致性校验:用惯导、里程计、气压计等自主传感器的位置变化,与GNSS解算的位置变化做对比。欺骗信号会带着位置"飘",自主传感器不会,一对比就露馅了。这个方法在车载和机载场景特别常用,便宜效果好。
双频校验:同时接收L1和L2/L5频段的信号,正常的电离层延迟在双频之间有确定的数学关系。如果两个频点的延迟关系对不上,大概率是被人骗了。这是目前比较可靠的抗欺骗基线方案。
时钟跳跃检测:很多欺骗攻击为了让接收机平滑过渡到假信号,会先注入功率略高的真实信号复制品,再逐步拉偏伪码相位。这个过程中接收机的本地时钟会出现微小但异常的跳跃。高稳晶振或铷钟配合监测这种跳跃,能提前报警。
我的经验是:抗欺骗没有"一招制敌"的神器,一定是多种检测手段交叉验证,任何一个指标都不能单独定罪,但多个指标同时异常就很有说服力了。
5. 抗干扰性能怎么测、怎么评
5.1 测试环境:微波暗室和干扰模拟器
抗干扰测试最怕两件事:一是外部环境有不可控的电磁干扰,导致测试结果不可重复;二是干扰源本身辐射方向不可控,无法做定量分析。所以正规的测试必须在微波暗室里做。
微波暗室墙壁贴满吸波材料,能有效吸收反射信号,模拟自由空间传播条件。暗室里架设GNSS信号模拟器和干扰模拟器,前者产生多颗卫星信号,后者产生可调频率、可调功率的干扰信号,通过天线辐射到被测接收机。被测接收机放转台上,可以精确控制方位角、仰角,测试不同来向的干扰对接收机的影响。
干扰模拟器是这套测试系统的核心,好的模拟器能同时产生多个独立干扰信号源,支持连续波、调制噪声、扫频、脉冲等多种干扰样式,而且能和信号源协同控制功率差。选型的时候别只看干扰频段覆盖范围,还要看调制质量和信号纯度,否则干扰信号本身的杂散会掩盖测试对象的真实性能。
5.2 三个关键指标:C/N0、干信比门限、定位误差
抗干扰性能的量化,业内最常用的三把尺子:
载噪比C/N0:单位是dB-Hz,衡量接收机处理后的信号质量和干扰抑制能力的直接体现。同一干扰条件下,抗干扰算法开启前后C/N0的变化量,基本就是这套系统的"净收益"。正常开阔环境下GPS L1 C/N0在45 dB-Hz左右;遇到干扰会往下掉;抗干扰系统应该把它拉回去。
干信比门限(J/S):干信比是干扰功率与信号功率之比,单位是dB。接收机在多大干信比下还能保持正常定位,这个值就是抗干扰能力的核心指标。普通民用接收机在J/S约60-70 dB就失锁了;加了频域抗干扰的能扛到90 dB左右;阵列调零天线可以到110 dB以上。军标一般要求更高,因为面对的是专门设计的干扰机。
定位精度恶化度:这是最容易忽略的指标。有的设备抗干扰之后"还能定位",但精度差到几十米甚至失效,实际意义就不大了。正确的测试方法是:在无干扰状态下测一组定位坐标作为基准,然后加干扰、开抗干扰,再测一组,比较两组的定位误差、速度误差(cm/s量级精度)。尤其是高精度应用,一定要关心抗干扰后精度恶化了多少。
5.3 实测中的一次真实记录
我之前测过一台带四阵元调零天线的接收机,测试场景是这样的:信号模拟器输出8颗GPS卫星,干扰模拟器在L1频点施加一个连续波干扰,功率从-120 dBm逐步升到-60 dBm,每步保持30秒,记录接收机的C/N0和定位状态。
结果很有意思:干扰刚加上时,C/N0从47 dB-Hz立刻掉到25 dB-Hz左右,接收机还能勉强定位,但精度已经惨不忍睹;继续增大干扰功率,接收机直接失锁。开启自适应调零之后,同样的干扰功率下C/N0只掉了不到5 dB,定位精度几乎和无干扰时持平。但当干扰功率超过-70 dBm时(干信比大约110 dB),调零深度到达物理极限,C/N0开始快速恶化,说明任何抗干扰系统都有上限。
这个测试给我的教训是:抗干扰系统的"能力边界"必须实测,不能只看仿真结果。仿真里算法性能很漂亮,到了暗室一测,通道一致性、天线互耦、算法收敛速度等问题全暴露出来了。
6. 常见问题与排查技巧实录
6.1 典型故障速查表
我把这些年调试抗干扰系统遇到的典型问题整理成一张表,方便现场排查:
| 现象 | 可能原因 | 排查步骤 |
|---|---|---|
| 调零深度始终上不去(比如只能到-20 dB) | 阵列通道相位不一致 | 检查射频通道标校数据,重新做在线校正 |
| 干扰方向正确但零点偏了 | 阵型安装角度不对或天线罩影响相位 | 用测试信号源逐阵元标定实际安装后的相位 |
| 抗干扰开启后定位精度反而变差 | 调零时把卫星方向的信号也压了 | 确认算法约束条件是否包含所有可见卫星 |
| 单干扰正常,多干扰时失锁 | 阵元数不够或算法矩阵奇异 | 加密阵元、加对角加载、评估是否超出自由度 |
| 扫频干扰一出现就失锁 | 时域/频域处理跟不上干扰变化速度 | 缩短FFT更新周期、检查干扰跟踪环路带宽 |
| 欺骗干扰无法识别 | 只做了信号级检测,没做信息级校验 | 增加双频一致性、惯导组合校验 |
| 同一套设备换环境后性能差异大 | 外部环境中存在暗室测不到的杂散干扰 | 用频谱仪扫描现场电磁环境,确认干扰源 |
6.2 几个容易被忽视的坑
天线罩对相位的影响。很多阵列天线装进天线罩后,罩体材料的介电常数不均匀,会让每个阵元看到的相位各差一点。这个问题在微波暗室测试时不明显(罩内测试),一到户外就暴露。所以我建议做天线罩材质选型时,优先选低介电常数、厚度均匀的材料,并且在天线装罩后重新做一次整机相位标定。
电源噪声串入射频链路。这是我踩过的最隐蔽的坑。有一台设备,抗干扰算法明明是对的,但干扰抑制后残余噪声总比理论值高,怎么查都查不到。后来发现是DC-DC电源模块的开关噪声谐波,正好落在L1频段附近,通过电源走线辐射到了射频输入端。解决办法是把电源模块远离射频前端、加强滤波和屏蔽。类似的情况还容易出现在天线馈线扭结、接头氧化等环节。
自适应权值的更新速率。阵列调零算法是持续迭代的,但如果干扰方向快速变化(比如车载干扰机高速移动),权值更新跟不上,零点就会"追不上"干扰。这时需要提高权值更新率,但太高又增加噪声。我一般会把更新率做成可配置参数,测试时根据干扰动态特性调,而不是写死。
卫星方向约束的数量。调零天线做约束时,理论上要把所有可见卫星的方向都作为约束保护起来。但可见卫星仰角低于一定角度时,信号本来就弱、多径还严重,保护它的成本(占用自由度)远大于收益。实战中我的做法是只保护仰角15度以上的卫星,低仰角卫星放弃约束,把自由度留给更多的干扰零点。
抗干扰评估不能只看平均性能。有的设备测试时把干扰持续1分钟,取平均C/N0,结果不错。但你不知道在某个瞬间C/N0是否掉到失锁边缘。正确的做法是看时间序列的瞬态表现和统计分布,重点关注5%分位的C/N0,而不是平均值。这是很多验收报告喜欢玩文字游戏的地方,真做工程的人要注意。
6.3 我的几条实操心得
第一,抗干扰系统一定要在最恶劣的干扰场景下做验证,而不是只在标准场景下测。标准场景(比如固定方向、固定频点的连续波干扰)只能证明算法能跑,不能证明系统能打。真实世界里干扰方向会变、频点会扫、功率会跳,你一定要在暗室把这些组合场景全测一遍。
第二,算法是保底,硬件是上限。我见过很多团队把精力全投在算法上,天线阵元和射频通道做得稀烂,结果算法再牛也发挥不出来。反过来,阵元和通道做扎实了,哪怕算法朴素一点,整体效果也不会太差。工程上70%的功力应该花在硬件和标校上,这是我和同行交流后的一致结论。
第三,抗干扰系统不是"开关键",它是一个性能渐变的过程。干扰从弱到强,系统表现从"完全不掉点"到"精度轻微恶化"到"部分卫星失锁"到"彻底失锁",是一条平滑的曲线。验收或者选型时,一定要搞清楚这条曲线的拐点在哪,而不是只看一个二元结论——能不能抗、不能抗。拐点位置才是这套系统真实能力的体现。
第四,多频点联合抗干扰是趋势。现在军用和高端民用设备都在向多频段(L1/L2/L5/B1/B2/B3)发展,干扰机也在进步,有些能同时压制多个频段。所以做抗干扰方案设计时,别只盯着一个频点做文章,要考虑多频联动、干扰样式识别与自适应切换。这也是为什么这几年STAP相关的研究热度一直很高。
最后说句实在话,GNSS抗干扰这个行当,门槛不低,但真正决定系统能不能用的,往往不是最玄乎的算法创新,而是对工程细节的把握——通道一致性、标校精度、测试方法、环境适配。把这些基本功做扎实了,哪怕用市面上的成熟器件和经典算法,也能做出可靠好用的抗干扰产品。反过来,基本功稀松,再高级的算法也是空中楼阁。这也是我写这篇文章想传达的最核心的一点:抗干扰不是某个神器一装就完事,而是一整套从天线到算法、从硬件到测试的体系工程。