GNSS 高级篇
6 跟踪算法
6.3 跟踪算法抗干扰秘籍
捕获把信号"找到"了,跟踪环要把信号"锁住"——但在真实环境中,干扰、多径、弱信号、高动态都在试图把跟踪环"撬开"。这一节讲跟踪环怎么在恶劣条件下"屹立不倒"。
在正式开始前,请大家思考几个问题:
1,窄带干扰来临时,跟踪环是怎么"扛住"的?为什么有的接收机一干扰就失锁,有的却纹丝不动?
2,多径信号会让相关峰畸变,跟踪环怎么区分"真峰"和"假峰"?
3,弱信号下载噪比很低,跟踪环噪声很大——有什么办法能在噪声中"稳住"?
4,什么是"矢量跟踪"?它跟传统的标量跟踪有什么区别?为什么说它是未来的方向?
接下来我们深入跟踪算法的"防御术"。
6.3.1 干扰对跟踪环的影响
干扰的本质是:降低了有效载噪比(C/N0),让跟踪环的噪声增大,最终可能导致失锁。
不同干扰类型对跟踪环的影响:
| 干扰类型 | 对跟踪环的影响 | 典型失锁阈值 |
|---|---|---|
| 窄带连续波 | 载噪比下降,相位噪声增大 | 干扰/信号比 > 30dB |
| 宽带噪声 | 载噪比直接下降 | 干扰/信号比 > 20dB |
| 脉冲干扰 | 周期性导致相关值畸变 | 跟占空比有关 |
| 扫频干扰 | 扫过信号频带时短暂失锁 | 跟扫速和功率有关 |
| 欺骗干扰 | 跟踪环可能被诱骗到假信号 | 隐蔽,不易察觉 |
跟踪环的抗干扰能力,取决于"在载噪比下降到多少时还能维持锁定"——这就是跟踪灵敏度。
6.3.2 跟踪环层面的抗干扰
a. 自适应带宽
最基本的抗干扰手段:根据载噪比自动调整环路带宽。
- 信号强时:用宽带宽,跟动态
- 信号弱/有干扰时:自动收窄带宽,压制噪声
自适应带宽可以让跟踪环在干扰来临时"稳住"——代价是动态响应变慢,但至少不失锁。
实现方式:
- 根据 C/N0 估计值查表调整带宽
- 或者用 FLL 辅助 PLL——弱信号时切到 FLL(FLL 对噪声更鲁棒)
b. 高阶环路
三阶环比二阶环能跟踪更高的动态,在相同带宽下相位噪声更小。
高动态+干扰场景下,三阶环的失锁概率明显低于二阶环。
代价是三阶环更难稳定,参数设计更复杂。
c. 相干积分延长
干扰导致载噪比下降,可以通过延长相干积分时间来补偿:
- 从 1ms 延长到 10ms、20ms
- 信噪比跟积分时间成正比——20ms 比 1ms 高 13dB
- 导频分量可以做更长的相干积分
- 代价是跟踪延迟增大,动态响应变慢
d. 多径抑制技术
多径是跟踪环的一大"杀手"——反射信号导致相关峰畸变,码环和载波环都受影响。
跟踪环层面的抗多径:
- 窄相关器:减小早迟间距,相关峰更窄,多径影响小
- MED/MET/Strobe:特殊相关器设计,估计和消除多径
- 多径估计与补偿:用高分辨率算法估计多径参数,从测量值中扣除
- 选星策略:剔除多径严重的低仰角卫星
e. 频域抗干扰
在跟踪之前做频域处理:
- FFT 变换到频域,检测窄带干扰
- 对干扰频点做陷波(置零或衰减)
- IFFT 变回时域,再送跟踪环
频域陷波可以抑制 40~60dB 的窄带干扰,是目前最常用的基带抗干扰技术。
缺点是会损失一部分信号能量(陷波时信号也被滤掉了),但通常损失很小(< 1dB)。
6.3.3 矢量跟踪:跟踪算法的革命
传统跟踪是"标量跟踪"(Scalar Tracking)——每颗卫星每个频点一个独立的跟踪环,各管各的。
矢量跟踪(Vector Tracking)是一种全新的架构——把所有通道的跟踪和 PVT 解算耦合在一起,用位置/速度的估计来辅助跟踪。
a. 标量跟踪的问题
标量跟踪下,每个通道独立工作:
- 一颗卫星被遮挡或干扰,它的跟踪环就失锁了
- 即使其他卫星还在正常跟踪,也帮不了这颗星
- 弱信号通道容易失锁,因为它没有利用其他通道的信息
这就像每个人各走各的路,有人摔倒了,别人不会扶。
b. 矢量跟踪的原理
矢量跟踪的核心思想:所有卫星的信号都包含同一个用户的位置和速度信息。
所以,可以用所有卫星的观测值联合估计用户的位置和速度,再用这个估计来预测每颗卫星的多普勒和码相位,辅助跟踪环。
矢量跟踪的结构:
- 一个联合的估计器(通常是扩展卡尔曼滤波 EKF)
- 输入:所有通道的相关结果(I/Q)
- 输出:用户的位置、速度、钟差、钟漂,以及每颗星的码相位和载波相位预测
- 用预测值来控制每个通道的 NCO
c. 矢量跟踪的优势
优势一:抗遮挡/抗干扰
- 一颗星被遮挡了,其他星的信息可以帮它"维持"跟踪
- 遮挡结束后,可以快速重锁,不需要重新捕获
- 弱信号通道可以借助强信号通道的信息维持锁定
优势二:弱信号跟踪
- 矢量跟踪把所有通道的信息"汇聚"起来,等效于更长的积分
- 可以跟踪比标量跟踪低 5~10dB 的弱信号
- 室内、城市峡谷等场景优势明显
优势三:抗欺骗
- 欺骗信号通常跟真实信号的位置/速度不一致
- 矢量跟踪可以检测到"某颗星的观测跟其他星不一致",从而识别欺骗
- 标量跟踪下,每颗星独立,不容易发现这种不一致
优势四:高动态
- 用位置/速度预测来辅助跟踪,高动态下更稳定
- 惯导辅助的矢量跟踪,可以应对极高动态
d. 矢量跟踪的挑战
挑战一:计算量大
- EKF 的状态维数高(位置3 + 速度3 + 钟差1 + 钟漂1 + 每颗星的码相位和载波相位)
- 实时性要求高
挑战二:稳定性
- 所有通道耦合在一起,一个通道出问题可能影响全局
- 需要好的故障检测和隔离(FDI)机制
挑战三:冷启动
- 矢量跟踪需要初始的位置和速度估计
- 冷启动时还是要先用标量跟踪捕获,再切换到矢量跟踪
矢量跟踪是目前 GNSS 算法研究的热点——军用和高端民用接收机已经开始采用,未来会越来越普及。
6.3.4 惯导辅助跟踪(INS-Aided Tracking)
如果说矢量跟踪是"用其他卫星帮这颗星",那惯导辅助就是"用 IMU 帮所有星"。
a. 原理
IMU(惯性测量单元)可以高频(100~1000Hz)输出加速度和角速度,通过积分推算位置和速度。
用 IMU 推算的速度,可以精确预测每颗卫星的多普勒——把这个预测送给跟踪环,跟踪环只需要跟踪预测值的残差。
b. 优势
- 多普勒预测精度高:IMU 速度误差通常 < 0.1m/s,对应多普勒误差 < 0.5Hz
- 跟踪环带宽可以极窄(< 1Hz),噪声极低
- 高动态下完全跟得上(IMU 直接测加速度)
- 短时遮挡(几秒)可以完全靠 IMU 维持,GNSS 恢复后立即重锁
- 抗干扰能力大幅提升
c. 组合深度
惯导辅助有不同的"深度":
- 松组合(Loosely Coupled):GNSS 输出位置/速度,跟 IMU 组合——不辅助跟踪环
- 紧组合(Tightly Coupled):GNSS 输出伪距/载波相位,跟 IMU 组合——部分辅助
- 深组合(Deeply Coupled / Ultra-tight Coupled):IMU 直接辅助跟踪环的 NCO——完全辅助
深组合是抗干扰能力最强的方案——军用接收机和高端自动驾驶系统普遍采用。
6.3.5 跟踪环的故障检测与恢复
再好的抗干扰,也有失锁的时候。关键是失锁后能不能快速检测、快速恢复。
a. 失锁检测
常用的失锁检测指标:
- C/N0 骤降:载噪比突然下降到阈值以下
- 锁定指示器(Lock Detector):I/Q 相关值的相位一致性
- 码环/载波环的相位误差:误差持续偏大
- 伪距/载波相位残差:跟 PVT 结果的残差异常
- 多星一致性:某颗星的观测跟其他星明显不一致
b. 失锁恢复策略
- 短时失锁(< 1秒):保持本地 NCO 频率,信号恢复后快速重锁
- 中等失锁(1~10秒):在小范围内搜索码相位和频率(重捕)
- 长时失锁(> 10秒):放弃当前参数,重新捕获
- 矢量跟踪/惯导辅助:失锁期间用预测维持,恢复后立即重锁
c. 智能调度
现代接收机的跟踪管理是"智能"的:
- 根据信号质量动态分配跟踪资源
- 强信号通道用低资源,弱信号通道用高资源(长积分)
- 被遮挡的卫星进入"挂起"状态,不浪费资源,信号恢复后快速激活
- 优先跟踪高仰角、高质量的卫星
小结一下:
跟踪算法的抗干扰,是一个"多层防御"体系:
- 射频/基带层:滤波器、频域陷波,把干扰挡在外面
- 跟踪环层:自适应带宽、高阶环、长相干积分,提升跟踪灵敏度
- 架构层:矢量跟踪,用所有通道的信息互相辅助
- 外部辅助层:惯导深组合,用 IMU 预测多普勒,彻底解放跟踪环
- 恢复层:快速失锁检测和重捕,确保短暂干扰后迅速恢复
没有任何一种技术能"包治百病"——实际接收机是多种技术组合使用,根据场景和成本选择合适的方案。
消费级接收机可能只用自适应带宽 + 频域陷波;专业级会加矢量跟踪;军用和高端会做惯导深组合 + CRPA 天线。
跟踪算法这一章就到这里。下一章,我们进入 PVT 解算——有了伪距和载波相位,怎么算出最终的位置、速度、时间。