首页/文章/ 详情

GPS软件接收机v2之三 信号捕获(3)PMF-FFT算法

2月前浏览87

本文根据正式发布版本的捕获程序进行注释讲解所形成。继续看文档和对应的程序!首先看卫星导航设备中的参数,大家能明白什么意思吗?

% 捕获相干累加时长:1ms

% 捕获非相干累加时长:20ms

% 捕获码相位2046,半码片为一个相位

% 频率搜索间隔:频率步进203Hz

% 64点FFT,覆盖-6.5kHz~6.5kHz

之前已经发布过关于该算法的文章。如果大家不明白参数的意义或者不知道如何用,那就请跟着文章的节奏一步步的学下去,学完了自然就懂了。之前公众 号已有一些文章能够有助于大家理解PMF-FFT算法。本人主张学习要依循脉络,不可能一口吃成一个“胖子”。

程序中采用了滑动伪码的方式完成了PMF的过程,实际产品中的算法又是如何完成呢?滑动伪码还是滑动信号?符号位的跳变会给捕获带来影响吗?这些问题唯有通过仿真一一来找到答案。本文同时通过仿真完成了PMF-FFT算法的实用化过程,同时也比较了传统FFT算法之间的差异。文章将重点讲解实用化的PMF-FFT程序的仿真过程和完善过程,让大家体会算法工作逐渐精进的过程,体会个中辛苦。高薪不是那么好拿的哦!本文写作时间长达四个月,大家消化起来自然也需要时间,切莫囫囵吞枣哦!

原理简介!

PMF-FFT 伪码捕获算法可以把伪码相位和载波频率的二维捕获转化为沿伪码相位的一维捕获,既缩短了捕获周期,又得到一定精度的多普勒频偏估计值,很适合于直扩伪码的捕获。

中频信号!

N点FFT!N是分割的段数!

基带信号!

如何体现对频偏的搜索呢?也是通过FFT移位来完成的吗?下面的文章重点讲解了原理和等效过程。

大学毕业设计一席谈之三十二 GPS卫星采样信号的捕获(11)工程利用移位等同调制特性

但这些内容对PMF-FFT算法适用吗?下面这篇文章中的仿真已经给出了解答。

大学毕业设计一席谈之三十二 GPS卫星采样信号的捕获(14)FFT归档程序
大学毕业设计一席谈之三十二 GPS卫星采样信号的捕获(15)PMF-FFT程序
大学毕业设计一席谈之三十二 GPS卫星采样信号的捕获算法仿真(16)PMF-FFT程序

全匹配滤波方法在存在频率偏移下捕获信号时的不适用性:在进行相干积分的时候,如果频偏比较大,较长的相干积分时间会导致较大的相关峰损失,当相干积分时间是频偏周期的整数倍的时候甚至没有相关峰,而这只能通过增加频点数加以解决。频偏信号的捕获实际上就是要保证有足够大能被用于判决的相关峰,为了避免相关峰的损失,需要缩短相干积分的时间,且相干积分的时间最好小于频偏周期的一半;为了抗噪声,又需要一定长度的相关序列保证增益,当一次短的序列相关不能保证既能抗频偏,又能抗噪声的时候,重复几次同样长度的相关并对相关值进行一些处理将有可能实现这些要求。 

部分匹配滤波的基本思路为:首先仍像全匹配滤波一样将本地参考序列与接收信号相乘,其次将总的相关序列分成多段,也就是多个子集,然后在子集内相干积分(求和),最后的相干积分值用于后续处理。

部分匹配滤波技术属于匹配滤波法的改进型,继承了匹配滤波法的优良特点:捕获速度快,实时性高,只需花费半个扩频码片的时间就能够输出相关值;而其分段匹配的方式又提高了抗频偏的能力,分段相关的时间决定了抗频偏、抗噪声的大小。但是由于部分匹配滤波比匹配滤波法多出分段相关这个步骤,使得匹配这个操作无法通过 FFT 来减少计算量,并且分段越多,后续处理时需要的计算量也越大,这就对硬件实现提出了较高的要求。总的来说,部分匹配滤波是以一定量的计算量和后续处理复杂度增加,换取抗频偏的能力。 

由于分段可以较大程度消除数据跳变带来的影响,在存在频率偏移的情况下处理扩频信号,很多时候都会用到部分匹配滤波的思想,使单个频点下的抗频偏范围得到扩大,以减少搜索的频点数。

了解了PMF-FFT算法之后,还要做进一步研究。

PMF非相干积累是最常见的结合部分匹配滤波的频偏捕获方法。记住非相干三个字!其基本思路为:在接收信号与本地参考序列分段相关后,将各个段输出的相关值取模平方并相加,以此作为最终的相关值进行后续判决。这种方法思路直接,实现较为简单,且能够在合适的分段数目以及段内相干积分时间下取得不错的抗噪声、抗频偏性能。


与PMF非相干积累不同,PMF差分相干积累在部分匹配滤波(即分段相关)后,将得到的 M 个相关积分值各自与其后一个相关值共轭相乘,并将这些乘积进行求和,最后取模值得到最终的相关值。

这个方法没有试过,感兴趣的同行可以自行仿真测试效果。理论讲解就先到这,开始展示仿真程序了。

程序实用化!
必须考虑信号的特点和FFT的特点。信号的特点最主要体现在采样率上!一个码片中含有几个采样点会获取捕获算法的最高性价比?如果起始点不是码相位的起始点,那么该怎么办?FFT的工程使用方式?也就是要考虑工程应用中如何规划数据长度。实用化的过程其实就是考虑工程可实现的过程。采样信号进行滑动,以获取相关峰值还是码相位移动获取相关峰?到底是几个周期进行合并检测?一起来看代码吧!看看实际中如何解决这个问题!


来源:通信工程师专辑
理论
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2025-09-11
最近编辑:2月前
算法工匠
博士后 | 高级工程师 诚信做事 认真讲课 传播知识
获赞 422粉丝 2767文章 531课程 40
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习计划 福利任务
下载APP
联系我们
帮助与反馈