唐光杰,张仁杰
(上海理工大学 光电信息与计算机工程学院,上海 200093)
GPS卫星捕捉及跟踪算法研究
唐光杰,张仁杰
(上海理工大学 光电信息与计算机工程学院,上海 200093)
为了能完成卫星定位,需要对卫星信号进行捕获、追踪。文中针对带有C/A码的L1频段的GPS信号进行定位研究,捕获能从接收的信号中粗略地估算出可见卫星的信号参数,用于帮助接收机初始化跟踪环路,并开始跟踪信号。码跟踪和载波跟踪模块则将这些参数细化,跟踪后即可解调出导航数据。仿真结果表明,算法可准确快速地从32颗卫星中捕捉和跟踪预定的卫星信号。
C/A码;GPS; 捕捉算法;跟踪算法
TANG Guangjie, ZHANG Renjie
(School of Optical-Electrical and Computer Engineering, University of Shanghai for Science and Technology,Shanghai 200093, China)
GPS正常运行时的实际卫星数目约为30颗,而根据接收机所处地理位置的不同,每一时刻的可见卫星也是在不断的变化,所以接收机首先要做的就是识别当前所有的可见卫星,并确定信号频率和码相位的粗略值,为下一步对信号的跟踪做准备。其中卫星信号的频率不同于它的标称值,因为受到卫星相对运动的影响,会产生多普勒效应,当卫星速度达到最大值时,产生的多普勒频移可高达5 kHz。码相位则表示了当前数据段中C/A码开始的位置[1]。
本设计是针对使用带有C/A码的L1频段的GPS信号进行定位。尽管本设计没有做射频前端的信号处理工作,但所使用的数据都是基于真实的GPS数据。数据文件"GPSdata-DiscreteComponents-fs38_192-if9_55.bin" 中的数据由美国科罗拉多大学团队利用其设计的专用射频采集前端采集获得[2]。
GPS卫星导航系统中的信号处理是基于通道结构的,一个单一的接收机通道概要如图1所示。
图1 接收机通道
本设计采用的捕获方法是CDMA系统中常用的一种捕获算法,其框图如图2所示。这种方式是基于接收信号与本地产生伪码序列及本地载波的乘积。大体分为以下几步:(1)接收信号首先与本地产生的伪码序列相乘;(2)与本地产生载波相乘产生I支路信号;(3)与本地产生载波的90°相移信号相乘产生正交Q支路路信号;(4)I、Q支路信号分别经过1 ms,即C/A码周期的时间积分后,平方相加;(5)同时对I、Q支路信号进行研究,输出接收信号与本地产生信号的相关值;(6)判断相关值是否超过了预设门限,若超过,则转入跟踪过程。
图2 捕获算法框图
1.1 积分与平方
串行搜索的最后一部分是余弦和正弦信号分别相乘后进行积分和平方。其中,平方是为了获得信号功率;积分则是将对应于处理数据长度的所有38 192个点的值相加。如果本地伪码与接收信号伪码完全对齐,且本地载波频率与接收信号频率相匹配,则得到的输出值比不满足这些条件的结果要大得多。图3(a)为对应于一个不可见星的捕获结果,图3(b)显示的是对应于一颗可见星的捕获结果[3-4]。
图3 捕获后的输出信号
其中,第19颗星为不可见星,第21颗为可见星。显然,在对不可见星的捕获中,没有一点的幅度能够超过门限值500,所以表示相关运算的结果均较小,即没有完全自相关的点,捕获失败。而对可见星的捕获中,可得到一个明显的相关峰输出。
1.2 捕获仿真结果
对32颗卫星的捕获结果如图4所示。其中,横坐标代表32颗卫星的PRN号,即1~32,纵坐标用于度量捕获的结果,Acquisition signals代表捕获到了信号,Not acquired signals代表未捕获到的信号。显然,此刻可见卫星号为:3,6,9,15,18,21,22,26。
图4 捕获仿真结果
GPS卫星首先利用伪码(C/A码)对所要播发的数据码进行扩频调制,再将伪码与数据码的组合码通过BPSK机制对载波进行调制。因此,在信号接收端,接收机要同时复制出与接收到的卫星信号相一致的载波和伪码信号。其中,复制载波与接收信号进行混频可以将信号下变频到基带,而复制伪码与接收信号进行相乘可以实现信号解扩。如此,便得到了接收信号中的数据码[5-7]。
2.1 载波跟踪
为产生准确的载波信号,锁相环或者锁频环常用于跟踪载波信号。GPS接收机常采用到的是Costas环,其特点是对180°相位不敏感,这也保证了导航数据的翻转不会对其造成影响。
图5 Costas环结构
如图5所示,Cotas环内包括两个乘法器,一个是本地载波和与C/A码相乘后的输入信号相乘形成I支路,另一个是经过90°相移本地载波和与C/A码相乘后的输入信号相乘形成Q支路。其主要目的是通过对载波发生器加上反馈回路,从而将能量保留在I支路。
2.2 码跟踪
码跟踪环的作用是保持对信号中特定码的相位跟踪,其输出是和输入信号中的伪码完全相同并且对齐的序列。本设计的接收机中采用了一种Early-Late跟踪环的延迟锁定环(DLL)。DLL的基本思想是输入信号和3个不同相位的码做相关,如图6所示。
图6 码跟踪环的结构
输入信号首先和一个完全对齐的本地载波相乘后转换到基带,相乘后的信号I和超前(E)、即时(P)、滞后(L)3个不同的码序列分别相乘,其中P序列的初始相位是捕获得到C/A码相位,E、L序列的相位与P序列的相位相差为±1/2个码元。最后第2个乘法器的输出信号经过积分滤波运算输出IE,IP和IL,这3个值的大小代表了输入信号中的PRN码和本地C/A码的相关程度,通过对相关结果IE,IP,IL的比较,可找到最大的相关结果,从而得到C/A的初始相位[8]。
2.3 跟踪算法仿真
如图7所示,在对卫星的跟踪图中,图7(a)是载波跟踪环路原始的PLL鉴别器的幅度响应;图7(b)和图7(d)分别是码跟踪环路中,原始DLL鉴别器的幅度响应和对信号进行跟踪后的DLL鉴别器的幅度响应。从图7可看出,由于跟踪环路中噪声的存在,载波跟踪环路中原始的PLL鉴别器的幅度响应均码跟踪环路中原始的DLL鉴别器的幅度响应都不为零。跟踪结果为下一步的导航解算提供导航数据信息[9]。
图7 跟踪仿真结果
为了能完成卫星定位,需要对卫星信号进行捕获、追踪。捕获的目的是从接收的信号中粗略地估算出那些可见卫星的信号参数,用于帮助接收机初始化跟踪环路,并开始跟踪信号。捕获给出了信号参数的粗略估计,而码跟踪和载波跟踪模块则将这些参数细化。跟踪后即可解调出导航数据。本文针对带有C/A码的L1频段的GPS信号进行定位研究,给出了捕捉算法和跟踪算法的原理,介绍了跟踪原理中的Costas环、码跟踪环结构。仿真结果表明,文中方法可准确快速地捕捉和跟踪卫星信号。
[1] Kai Borre,Dennis M Akos.软件定义的GPS和伽利略接收机[M].杨东凯,张飞舟,张波,译.北京:国防工业出版社,2009.
[2] 吴娟丽.GPS软件接收机的研究及Matlab实现[D].西安:长安大学,2009.
[3] 刘俊成.GPS软件接收机关键技术研究[D].长沙:国防科学技术大学,2006.
[4] 刘中华,刘文红.基于FPGA的北斗卫星信号接收机设计[J].数字技术与应用,2014(7):144-145.
[5] 郭盛桃.北斗导航接收机中频频率设计[J].无线电工程,2014,44(9):63-66.
[6] 刘辰.基于北斗收发系统的前端研制[D].合肥:安徽大学,2012.
[7] 李晶.北斗/GPS接收机设计与实现[D].武汉:华中师范大学,2014.
[8] 杨鑫.Locata系统定位算法研究[D].成都:西南交通大学,2015.
[9] Gao Z, Zhang H, Zhao Q, et al. Analyzing the impact of satellite clock milGD coupled error on BDS positioning accuracy[J]. Lecture Notes in Electrical Engineering, 2014, 30(3):267-278.
Research on Capture and Tracking Algorithm of GPS Satellite
The satellite positioning requires the capture and tracking of satellite signals. In this paper a C/A code of L1 band GPS signals were located. The visible satellite signal parameters that can be roughly estimated from the received signal are captured for the receiver to initialize the tracking loop and start tracking the signal. Parameter refinement is performed by the code tracking and carrier tracking module, after which the navigation data are demodulated. Simulation results show that the proposed method is accurate and fast in capturing and tracking the scheduled satellite signals from 32 satellites.
C/A code; GPS; capture algorithm; tracking algorithm
2016- 01- 13
全国大学生科技创新重点基金资助项目(201310252012)
唐光杰(1988-),男,硕士研究生。研究方向:通信技术等。
10.16180/j.cnki.issn1007-7820.2016.10.010
TN911.72
A
1007-7820(2016)10-033-03