GNSS兼容型快速捕获模块设计
2015-03-15伍蔡伦孙一雄
伍蔡伦,孙一雄
(河北省卫星导航技术与装备工程技术研究中心,河北 石家庄 050081)
GNSS兼容型快速捕获模块设计
伍蔡伦,孙一雄
(河北省卫星导航技术与装备工程技术研究中心,河北 石家庄 050081)
摘要卫星导航系统信号格式日益多样化,在高精度测量型接收机中几乎要接收和处理所有卫星导航系统信号,因此实现兼容性极强且高效的捕获模块非常有必要。为了解决多系统多频点的兼容型捕获问题,同时考虑到捕获速度和资源限制,在原基础上提出了一种新的捕获模块设计方案,解决了兼容性问题并大幅度提升了捕获速度。根据算法模型完成了仿真实现,并在高精度测量型接收机板卡上进行了实际验证,满足捕获当前所有卫星导航信号的要求,同时还可以兼容捕获未来的北斗全球系统信号。
关键词卫星导航;捕获算法;兼容性;模块设计
Design on Compatible Fast Acquisition Module for GNSS
WU Cai-lun,SUN Yi-xiong
(HebeiSatelliteNavigationTechnologyandEquipmentEngineeringTechnologyCenter,ShijiazhuangHebei050081,China)
AbstractWith the development of multi-mode satellite navigation signals,it is necessary to design a kind of acquisition module with extreme compatibility because almost all of current satellite navigation signals need to be received especially in the receivers for high-accuracy measurement.In order to solve the problem of multi-mode compatibility for acquisition,in view of acquisition speed and resource limitation,this paper proposes a new method acquisition algorithm based on traditional acquisition module.This method resolves the compatibility problem and improves acquisition speed.The simulation results show that this method can be used in high-accuracy receiver,and satisfy all acquisition requirements of current satellite navigation signals and BDS global signals in the future.
Key wordssatellite navigation;acquisition algorithm;compatibility;module design
0引言
随着科技不断发展,北斗产业不断壮大,卫星导航技术在现代社会中得到了越来越多的应用。利用卫星导航信号实现定位,首要任务就是实现对卫星信号的捕获。捕获是要检测出空间中所存在的导航卫星信号,实现对该信号伪码相位和载波多普勒的粗同步。捕获卫星信号的过程实际是一个频率和码相位的二维搜索过程,要求能较为准确地估计出信号的伪码相位和载波多普勒,如果估计偏差过大则会导致接收机无法完成正常跟踪。接收机的各种应用需求也对捕获完成的时间长短和资源占用提出了要求。多频多模卫星导航技术逐渐兴起,传统的单一频点捕获模块已经不适用于现代接收机。本文提出了一种新的并行捕获模块设计方法,以较小的复杂度和资源占用实现了对导航信号的快速捕获,同时也保证了捕获灵敏度和对多种卫星信号捕获的兼容性。
1捕获原理及传统实现方式
由于卫星与用户接收机在二者连线方向上的相对运动所引起的多普勒效应,接收机实际接收到的卫星载波信号的中心频率一般不再等于发射信号的标称频率,二者之间存在一个载波多普勒频率差值,这就需要接收机在载波频率一维内对卫星信号进行搜索。由于卫星到接收机的距离时刻在发生变化,加上接收机时钟相对于系统时间偏差又不固定,因而接收信号的C/A码相位值也在时刻发生改变,这就需要接收机在C/A码相位一维内对信号进行搜索。因此,为了完成对卫星导航信号的捕获,接收机就需要实现对载波多普勒频率以及伪码相位的二维搜索[1-3]。
捕获的目的是确定接收机当前位置的可见卫星的多普勒频率和C/A码相位值。捕获的实质是进行二维搜索[4],码相位通常以半码片的增量进行搜索,每个码相位搜索增量对应一个码分格;同理多普勒频移通常以几百赫兹的增量进行搜索,每个多普勒频移的增量对应一个多普勒频格。捕获模块通常以一定的搜索策略沿着一个方向对整个搜索空间进行搜索。当输入信号和本地复制信号匹配时,就能得到一个相关峰。如果相关峰超过信号捕获门限值,那么就能判断卫星信号存在,也就实现了整个捕获过程。
传统接收机的捕获结构如图1所示,其中传统捕获模块的实现方法一般有串行捕获方法和并行频率域捕获方法[5]。
图1 传统接收机捕获结构
串行捕获算法是最为通用的一种捕获算法。捕获算法基于本地生成的C/A码及载波频率信号同卫星信号相乘,本地码序列有确定的码相位,一般以半码片作为一个搜索频格,而载波频率以500 Hz为一个搜索频格。对于确定的码相位和载波频率,本地载波发生器产生正交I/Q两路载波信号,2路载波信号同时与输入的采样信号进行乘积运算,然后与本地伪码序列进行相关累积运算,然后对2路累计值进行平方和运算,这样就可以得到1个搜索频格内的相关值,依次串行搜索完所有频格,得到一个最大值,如果超过预设门限则证明捕获到了卫星信号[6,7]。
串行捕获实现简单,但消耗的时间较长,以GPS为例,多普勒搜索范围为正负10 kHz,则搜索次数为:
(1)
可见串行捕获搜索次数太多,不适用于实际接收机。现在一般采用并行频率域搜索的方法,数字中频信号首先同接收机内部复制的载波进行混频,再与本地伪码序列进行相关累积运算,得到时域的相关累积结果I和Q。然后将相关结果I+jQ经过傅里叶变换转换为频率域信号,这反映了相关结果中各个频率分量的强度,从而只需要一次搜索就完成了频率域所有频格的搜索过程,则搜索次数为:
(2)
可见并行频率域搜索大大减少了搜索次数,缩短了捕获时间,然而FFT计算的要通过引入IP核实现,这需要耗费较多的资源[8,9]。
更进一步的方法就是频率并行保留,在码相位搜索的过程中同样引入局部并行。比如并行搜索100个码相位,那么完成1 023个码相位和正负10 k的频率搜索,只需要21次就可以完成[10]。
以上方法都是采用滑动输入信号的方式来进行,通过不断滑动本地伪码发生器,直到捕获成功,本地伪码逐步实现对输入信号的初同步。同时捕获时间还受限于实时性,为了完成捕获,需要实时收集卫星信号,以确保本地产生伪码能够对齐输入信号。在每一次的搜索过程中,都要花费大量的时间重新对卫星信号进行实时收集,这样导致捕获时间无法有本质的提升。
2兼容性捕获方案
针对以上几种捕获方式的不足,采用一种新的非实时性的并行捕获方案,首先花费一段时间进行信号采集,然后针对采集信号进行捕获处理,得到捕获结果,期间仅需要对实际信号进行一次采集。这样既保证了能快速捕获信号,也保证了资源的较小消耗,同时可以做到多系统兼容的模块化设计,为了简化描述,以下捕获方案以GPS的L1为例进行说明。
首先接收机将进入接收机捕获模块的中频数字信号存入RAM,采取2块RAM做乒乓的结构,这样保证了接收机的信号处理速度。
然后1 ms数据按照32段进行短积分,积分后的相关值进行载波补偿,以500 Hz为一个搜索格,正负10 k的频率就需要41个频格,这样就需要预先设计40*32的本地载波表以及本地码表。
按照伪码相位的搜索顺序进行相干积分操作,对于每一个当前搜索的半码片伪码相位,接收机先从存满卫星数据的RAM中取出长度为16的卫星数据Rp(k),同时从存满伪码序列的RAM中取出本地伪码序列dp(k)的前16个半码片做相关累加,计算方法如下:
(3)
Ncoh1为本次相关累加的长度,这里第一阶段长度大小选为16。这样就得到了一个相关累加过后的累加值Rp,然后相应地控制读取卫星数据的地址寄存器和控制读取伪码序列的地址寄存器分别加1,开始进行下一段的相关累加操作。依次计算4段数据的相关累加并求和,得到的第2阶段的相关累加累加值Mp,
(4)
Ncoh2为第2阶段做相关累加的长度,在这里大小选为4。将所求得的第2阶段相关累加和存储到寄存器中,继续移动控制读取卫星数据的地址寄存器和控制读取伪码序列的地址寄存器,依此类推求出总共32组相关累加和,这样1 ms卫星数据就计算完成。将所求得的32个相干累加和与40×32的本地载波补偿表进行乘法运算,这样就得到了一个码相位下的频率域搜索值,完成了对多普勒的并行捕获。然后进行非相干积分累加:
(5)
最后判断非相干积分结果有没有越过捕获门限。如果有则说明捕获到了卫星信号,即得到了当前卫星的多普勒频率和伪码相位的初步估计值。同时采用了通用化设计,同一个捕获模块可以用于捕获多种卫星信号,只需修改码相位长度。
同传统方法相比,本文的捕获模块设计方案在捕获时间,捕获灵敏度以及资源占用方面都有着较大改进。该捕获方案针对不同的卫星导航信号的码长和搜索最小间隔也可进行灵活设置,所以除了兼容传统的导航信号以外,还可兼容未来的B1C/B2A/B2B/B3C等北斗全球信号。
捕获时间方面,串行捕获要搜索83 886个频格,不考虑非相干累加次数,以一个搜索频格占用1 ms时间计算,则需要83.886 s才能完成整个捕获。现在采用的并行频率搜索,一次FFT可以完成整个频率域的搜索,同时在码相位域做100组并行搜索,因而用0.21 s时间完成捕获。而本文的设计方案采取存储数据后处理的方式,仅用0.020 s就可以完成二维搜索,相比较传统方法大大提升了捕获速度。
占用资源方面,串行捕获实现最为简单,同样所需要的资源也是最少的,但是由于捕获时间过长,不适用于实际接收机中。FFT方法实现起来较为复杂,占用资源也相对较多。而本文的捕获模块设计方案相比较传统方法减少了FFT核并提升了捕获速度,这样减少了对资源的占用,同时增加了本文方案的实用性。
3仿真及实测结果
为了验证上述捕获方案的可行性,这里利用MATLAB进行了仿真,设置信号功率为-130 dBm,多普勒为-2 200 Hz,捕获GPS L1信号结果如图2所示。
图2 捕获模块结果
从图2可以看出,捕获模块输出有很高的相关峰,得到多普勒频率值为-2.25 kHz,码相位为1 448,说明成功捕获到了信号。
为了进一步测试捕获模块性能,针对不同的信号电平值,接收机的并行捕获模块的捕获灵敏度测试结果如图3所示。
图3 不同信号的捕获模块捕获灵敏度
由图3可以看出,捕获模块可以实现对GPS信号以及BDS区域信号的捕获,同时对BDS全球信号B1C,B3C等信号均可完成捕获,对-130 dBm以上的信号有着较高的捕获概率。
在FPGA中对捕获模块进行了实现,编译报告如图4所示。
图4 FPGA资源占用结果
由图4可以看出,整个模块逻辑资源占用率不到40%,相比上面的方法减少了近一半,而存贮单元稍微有所增加,这是因为会将伪码序列和载波表直接写到RAM中,稍微增加了存贮单元占用,不过这保证非实时捕获的进行,实现了捕获速度的提升。
4结束语
采用预存数据进行捕获,捕获过程采用了比实时采样时钟更高节拍的工作时钟,使捕获速度更快。不仅能够对GPS和BDS区域信号进行捕获,还可以对BDS的全球信号B1C/B2A/B2B/B3C进行捕获,也能够扩展捕获GLONASS和Galileo卫星信号,兼容性强。本捕获模块是针对预存数据的捕获,只需要在转跟踪时加入很小的一组并行相关器即可切换到正常牵引和跟踪模式,且二者为并行操作,不影响捕获时间。经过仿真和实时实现,确定该模块可以在高精度接收机中实现,实现目前所有卫星导航信号的捕获,为多模多频高精度接收机的开发打下了很好的基础。
参考文献
[1]谢刚.GPS原理与接收机设计[M].北京:电子工业出版社,2012.
[2]KAPLAN D,HEGARTY C.Understanding GPS Principles and Applications[M].寇艳红,译.北京:电子工业出版社,2007.
[3]丁仁天.GPS双频捕获技术研究[D].杭州:浙江大学硕士学位论文,2008:25-26.
[4]马英昌,谢松.GPS L5接收机的设计与实现[J].无线电通信技术,2013,39(6):94-96.
[5]门兰宁.北斗接收机关键技术研究[D].西安:西安电子科技大学硕士学位论文,2012.
[6]秦明峰,王兴刚,张国强.基于MATLAB集成环境的GPS接收机设计[J].无线电工程,2009,39(2):61-64.
[7]赵婉璐.BDS接收机捕获和跟踪方法的研究[D].南京:南京理工大学硕士学位论文,2014.
[8]陆永彩.多模卫星导航捕获技术研究[D].成都:电子科技大学硕士学位论文,2011.
[9]宋锐.FFT与串行相关相结合的GPS捕获方法及FPGA实现[D].大连:大连理工大学硕士学位论文,2013.
[10]温聊梅.GPS接收机基带信号处理技术研究[D].南京:南京理工大学硕士学位论文,2012.
伍蔡伦男,(1981—),工程师,博士。主要研究方向:高精度测量接收机技术。
孙一雄男,(1990—),助理工程师,硕士。主要研究方向:高精度测量接收机技术。
作者简介
基金项目:国家高新技术研究发展计划(“863”计划)资助项目(2012AA12A206)。
收稿日期:2015-05-22
中图分类号TP391.4
文献标识码A
文章编号1003-3106(2015)08-0091-03
doi:10.3969/j.issn.1003-3106.2015.08.25
引用格式:伍蔡伦,孙一雄.GNSS兼容型快速捕获模块设计[J].无线电工程,2015,45(8):91-93,98.