GPS软件接收机基带信号处理算法及验证*
2016-08-10刘瑞华孔月明蔚保国邢兆栋
刘瑞华 孔月明 蔚保国 邢兆栋
1.中国民航大学电子信息工程学院,天津 300300 2.中国电子科技集团公司第54研究所,石家庄 050081
GPS软件接收机基带信号处理算法及验证*
刘瑞华1孔月明1蔚保国2邢兆栋2
1.中国民航大学电子信息工程学院,天津 300300 2.中国电子科技集团公司第54研究所,石家庄 050081
主要研究基于数据块的GPS软件接收机基带信号处理流程和算法,包括对载波和伪码的捕获和跟踪过程,并解调出导航电文数据。利用实际接收到的卫星信号数据,结合MATLAB软件平台,对GPS软件接收机基带信号处理过程的各个环节进行仿真验证。结果表明,所研究的基带信号处理算法能较好的捕获卫星信号,可准确跟踪载波信号和伪码序列,能正确解调出导航数据。同时验证了该算法在软件接收机系统中应用的可行性,并为开发实时GPS接收机奠定了基础。 关键词 GPS软件接收机;捕获;跟踪;仿真验证;可行性
随着现代全球导航卫星定位系统的迅速发展,设计并实现能灵活充分利用所有导航卫星信号的下一代GNSS接收机成为一项极具挑战性的工程[1]。传统的GNSS接收机主要基于专用集成电路结构,这种接收机设计较为固定,一般不可进行重置,用户很难改变接收机各类参数以适应不同导航信号处理的需求,同时也给基带信号处理新算法的实现、测试和分析带来不便[1-3]。而基于软件无线电思想的GNSS软件接收机,将硬件作为无线通信基本平台,用软件来实现尽可能多的用户通信功能,只需进行软件修改便可对接收机实现升级,且这种更改设置还可以用于处理不同体制的卫星信号。
与传统的GNSS接收机相比,软件接收机系统设计简洁,开发速度快,成本更低,且有高度可配置性,更具方便性和灵活性,对新一代导航接收机的开发有着重要意义[2]。本文以接收处理L1波段C/A码信号的单频GPS软件接收机为例,基于GPS中频信号采样实际数据,并对数字中频GPS信号的捕获和跟踪过程及其算法进行了分析研究,同时结合MATLAB软件,仿真基带信号数据处理流程,最后解调出导航数据,验证了捕获和跟踪算法的正确性及其在接收机系统中应用的可行性。
1 GPS信号捕获算法的分析与仿真
接收机的捕获是一个粗同步过程,能粗略估计出接收信号的 C/A 码相位和载波频率,然后传递给跟踪过程,作为跟踪环路的初始化参数[4-5]。
1.1 GPS信号捕获算法的原理分析
本文研究的捕获方法是基于频域的并行码相位搜索捕获算法,通过傅里叶变换实现对C/A码相位的并行搜索。只需对多个不同的载波频率点进行捕获运算,从而将搜索空间消减,加快信号搜索速度[4,6]。并行码相位搜索捕获算法的工作原理如图1所示。
图1 并行码相位搜索捕获算法框图
采集到包含多颗卫星的信号可表示为:
sr(n)=s1(n)+s2(n)+…+sk(n)+e(n)
(1)
其中,sr(n)是采集到的卫星信号,sk(n)代表当前可见第k颗GPS卫星信号,e(n)是高斯白噪声。对卫星信号的搜索就是从这一混合信号中确认出可见卫星及其信号的C/A码初始相位和载波粗频率。
数字中频信号表达式为:
sk(n)=Ck(n)Dk(n)cos[(wIF+wd)n+φ]+e(n)
(2)
其中,Ck(n)是第k颗卫星的C/A码序列,Dk(n) 是导航数据序列,wIF是载波频率经下变频后的中频,wd是载波多普勒频移,φ是载波初始相位。
输入的数字中频信号与本地载波相乘,分别得到I,Q两路信号:
(3)
(4)
其中,we是输入信号与本地载波之间的频率差,ei(n),eq(n)是e(n)与本地载波相乘后进行积分的结果。
由I,Q两路信号组合得到复信号,进行归一化可得:
x(n)=I(n)-jQ(n)
(5)
对x(n),C(n)分别进行傅里叶变换,结果为X(k)和C(k),则:
(6)
式中,m=0,1,2,…,N-1,C*(k)是C(k)的复共轭。对z(m)取模可得:
(7)
式(7)可用于得到输入信号与本地信号之间的相关关系,最后检测出最大相关值,来判断卫星信号是否成功捕获。对某一频点的码相位进行并行搜索,只需要完成2次FFT,一次逐点相乘和一次IFFT运算[7]。
1.2GPS信号捕获算法的仿真验证
本文使用美国科罗拉多大学利用射频采集前端获得的数据进行MATLAB仿真,验证GPS软件接收机中的并行码相位搜索捕获算法。
实际采得的GPS数据重要参数为:GPS信号带宽为19.096MHz;采样频率为38.192MHz;中频频率为9.548MHz;数据时长为37s;以8位的二进制形式存储。文中采用接收处理L1波段C/A码信号的单频GPS软件接收机:包含8个通道;可捕获32颗卫星;载波频率搜索范围为中频频率±7KHz;载波频率的搜索步长取500Hz;C/A码相位搜索范围为0~38192;码相位的搜索步长取1个采样点;判决捕获成功与否的相关峰比值门限设为2.5。
MATLAB软件仿真得到32颗卫星的捕获结果如图2所示。
图2 所有卫星信号捕获结果
该GPS软件接收机捕获到PRN21,PRN22,PRN15,PRN18,PRN26,PRN06,PRN09和PRN03这8颗卫星的信号,它们的捕获峰值都大于预设门限2.5,相应的相关峰值小于2.5的卫星信号没有被捕获到。捕获结果包括卫星对应的PRN号、载波频率、码相位和多普勒频移,并按照卫星信号强度列于表1。
表1 8个通道的捕获结果
结合表1和图2可以看出PRN21的卫星信号最强,所以选取卫星PRN21为例进行分析研究。图3和4是使用并行码相位搜索捕获算法成功捕获PRN21卫星信号的结果。
图3 PRN21卫星二维捕获结果
图4 PRN21卫星三维捕获结果
图3和图4分别为PRN21卫星信号的二维和三维捕获结果。循环互相关运算完成后,成功捕获到PRN21卫星,其峰值位于频率9.547MHz和码相位13404处。
从MATLAB仿真结果可以看出,GPS软件接收机利用并行码相位搜索捕获算法能成功捕获到实测数据中所包含的8颗卫星信号,并粗略估计出各个卫星信号对应的载波频率和码相位参数,这充分验证了此算法的正确性及其在GPS接收机系统中应用的可行性。
2 GPS信号跟踪算法的分析与仿真
GPS信号捕获仅提供了对载波频率和码相位参数的粗略估计。跟踪的主要目的是使这些估计值精确化,并保持跟踪,然后从跟踪到的卫星信号中提取各观测量,解调出导航数据[6]。跟踪的实质就是为了稳定的跟踪信号而采取的一种对环路参数的动态调整策略。信号跟踪有2个方面:1)实现对GPS信号中载波分量的跟踪;2)实现对伪码分量的跟踪。
2.1 GPS信号跟踪算法的原理分析
在GPS软件接收机内部必须有2个跟踪环:码跟踪环(DLL)和载波跟踪环(PLL),它们的连接方式如图5所示,载波跟踪环中用来剥离C/A码的本地码来自码跟踪环,码跟踪环中用来剥离载波的两路本地载波信号来自载波跟踪环[6,8]。
图5 组合的DLL和PLL跟踪环框图
PLL与DLL优化组合的跟踪环工作原理为:
1)载波跟踪:采用Costas环实现载波跟踪环路,这种锁相环对导航数据引起的相位翻转不敏感,其目的是将所有的信号能量保留在I支路[9]。本地码相位精确对齐时,I,Q支路混频结果分别为:
(8)
(9)
其中,φe是输入信号与本地载波的相位差。混频后的信号分别经过低通滤波器输出结果为:
(10)
(11)
输入信号与本地载波的相位差可由式(12)求得:
(12)
(13)
相位误差通过载波环滤波器滤除噪声后,输出给数控振荡器(NCO),调节振荡器频率,使其与输入信号的频率保持一致。利用该方式,实现对输入信号载波的本地复现,解调码跟踪环的输出信号,得到导航电文数据。
2)码跟踪:码相位跟踪的实现通常采用非相干延迟锁定环,其运行和控制过程与载波环很相似,区别在于DLL需要三路本地伪码为输入信号的跟踪提供延迟依据,用来判断本地伪码与输入信号之间相关结果的最大值。
当码相位需要调整时,码相位鉴别器利用E,L支路上的相关结果计算出码相位误差,经滤波后输入到PRN码发生器,调节本地伪码的频率和相位,使其与输入信号的伪码保持对齐。码相位鉴别器通常使用超前-滞后能量差相位鉴别器,鉴别因子D表示为:
(14)
其中,IE,QE,IL和QL为图5所示的6个相关器中的4个输出。DLL对载波相位不敏感,当本地载波存在相位误差时,可同时利用I,Q两路信号判断正确的相关输出,从而保证C/A码相位的正确跟踪。
2.2GPS信号跟踪算法的仿真验证
采用PLL与DLL优化组合的跟踪环对实测数据中的卫星信号进行跟踪处理,跟踪环路参数选择为:载波环中,阻尼系数ξ=0.7,噪声带宽BL=25Hz;码环中,阻尼系数ξ=0.7,噪声带宽BL=2Hz。MATLAB软件仿真结果如图6所示(取PRN21卫星为例)。
图6反映了PLL和DLL的跟踪质量。图中左半部分,PLL鉴别器的输出经过短暂的牵引过程后,载波相位误差抖动逐渐变小,这表明载波环路维持在良好的跟踪状态。PLL滤波器的输出随时间的推移,载波多普勒频率变化近似呈线性,最终能得到1个稳定的信号用来调节NCO载波发生器,生成与输入信号载波相一致的本地载波。图中右半部分,DLL鉴别器输出的码相位误差抖动在零值附近相对稳定,这表明码跟踪环路维持在良好的跟踪状态。DLL滤波器的输出随时间的推移,码速率变化近似呈线性,最终得到1个稳定的信号用来调节PRN码发生器,生成与输入信号伪码完全对齐的本地伪码。图6结果表明PLL与DLL优化组合的跟踪环能正确、稳定的跟踪输入信号的载波频率和C/A码相位,完成对输入信号的解调和解扩。
图6 PRN21卫星载波环和码环鉴别器及环路滤波器输出
图7为PLL处于锁定状态时码跟踪环中6个相关器的输出结果。当信号被正确跟踪时,可以看出信号能量主要集中在I路,从而验证了本文所设计的码跟踪环不受载波相位影响的优点。
图7 码跟踪环中同相支路和正交支路的6个相关器输出
图8所示分别为PRN21卫星经过1s跟踪积分累加后输出的Q路和I路分量。Q路输出为噪声分量,I路输出为原始的导航电文数据。在整个GPS信号跟踪环节,它们反映出信号的跟踪质量并确定软件接收机的整体性能。
接收机完成跟踪后,需要把跟踪环I路输出的积分累加值转换为导航数据,理论上1ms输出1bit数据。但实际处理的是带有噪声的弱信号,导航电文每一比特持续20ms,所以应每 20ms计算1个平均值,输出1bit数据,并二值化为1和-1[6,10,11]。
图8 PRN21卫星跟踪环中Q支路和I支路输出
在导航数据转换时,对数据进行简单的归一化处理,归一化公式为:
(15)
根据导航数据位跳变来标记每一导航比特的起始位置,相邻位跳变时刻之差除以20并四舍五入,得到跳变位之间的比特数。图9为跟踪环输出对应PRN21卫星的以比特为单位的部分导航数据转换结果。
图9 PRN21卫星归一化导航数据
由图9可以看出,利用PLL与DLL优化组合的跟踪环形式能准确且稳定的跟踪GPS卫星信号,最终得到精确的码相位值和载波频率值,正确解调出各个卫星对应的导航数据,充分验证了此跟踪算法的优越性及其在GPS软件接收机系统中应用的可行性。
3 结论
详细阐述了GPS软件接收机对数字中频信号的捕获、跟踪及解调过程。主要分析了基于L1波段C/A码信号的单频GPS软件接收机的捕获和跟踪算法方案,即在捕获阶段采用基于频域的并行码相位搜索捕获方法,在跟踪阶段采取PLL与DLL优化组合的跟踪环形式。最后利用MATLAB软件实现了GPS信号捕获和跟踪算法的仿真,解调出导航数据,验证了信号处理算法在系统中应用的正确性和可行性。
[1]OlivierJulien,BoZheng,LeiDong,GérardLachapelle.ACompleteSoftware-BasedifGNSSSignalGeneratorforSoftwareReceiverDevelopment[C].ProceedingofIONGNSS2004,LongBeach,CA, 2004.
[2]MaC,LachapelleG,CannonME.ImplementationofSoftwareGPSReceiver[C].ProceedingofIONGNSS2004 (SessionA3),LongBeach,CA, 2004.
[3]FalinWu,KefeiZhang,andAkioYasuda.GPSSignalAcquisitionandTrackingUsingSoftwareGPSReceiver
[C]. 8thInternationalSymposiumonSignalProcessingandItsApplications,Sydney, 2005.
[4]AkopianD.FastFFTBasedGPSSatelliteAcquisitionMethods[J].Radar,SonarandNavigation, 2005, 152 (4):277-286.
[5]DineshManandhar,RyosukeShibasaki,HideyukiTorimoto.GPSReflectedSignalAnalysisUsingSoftwareReceiver[J].JournalofGlobalPositioningSystems, 2006, 5 (1-2):29-34.
[6]KaiBorre,DennisMAkos,etal.杨东凯,张飞舟,张波,译.软件定义的GPS和伽利略接收机[M].北京:国防工业出版社,2009:63-102. (KaiBorre,DennisMAkos,etal.YangDongkai,ZhangFeizhou,ZhangBo,etal.Translated.ASoftware-DefinedGPSandGalileoReceiver[M].Beijing:NationalDefenseIndustryPress, 2009:63-102.)
[7] 谢刚.GPS原理与接收机设计[M].北京:电子工业出版社,2011:372-374. (XieGang.PrinciplesofGPSandReceiverDesign[M].Beijing:PublishingHouseofElectronicsIndustry, 2011:372-374.)
[8] 易维勇,董绪荣,孟凡玉,郭晶,等.GNSS单频软件接收机应用与编程[M].北京:国防工业出版社,2010:190-195.(YiWeiyong,DongXurong,MengFanyu,GuoJing,etal.GNSSSingleFrequenceSoftwareReceiverDevelopmentandApplications[M].Beijing:NationalDefenseIndustryPress, 2010:190-195.)
[9]RonaldE.BestPhase-LockedLoops:Design,Simulation,andApplications[M]. 6ed.NewYork:McGraw-HillProfessional, 2004:364-366.
[10]JamesBao-YenTsui.FundamentalsofGlobalPositioningSystemReceiversASoftwareApproach[M].NewYork:JohnWiley&Sons,Inc, 2000:133-144.
[11] 田炳丽,宁春林,丁风雷,李建辉.GPS软件接收机导航电文提取的研究[J].通信技术,2009,42(3):212-217.(TianBingli,NingChunlin,DingFenglei,LiJianhui.NavigationDataExtractionBasedonGPSSoftwareReceiver[J].CommunicationsTechnology, 2009, 42 (3):212-217.)
Algorithm and Verification of Baseband Signal Processing for GPS Software Receiver
Liu Ruihua1, Kong Yueming1, Yu Baoguo2, Xing Zhaodong2
1.School of Electronic and Information Engineering, CAUC, Tianjin 300300, China 2.The 54th Research Institute of CETC, Shijiazhuang 050081, China
Inthispaper,thebasebandsignalprocessingflowandalgorithmforGPSsoftwarereceiverbasedonadatablockarestudied,includingtheacquiringandtrackingofcarrierandpseudo-codeaswellasdemodulatingthenavigationdata.TheMATLABsoftwareplatformisusedtosimulateandvalidateeachlinkofthebasebandsignalprocessingforGPSsoftwarereceiverbasedontheactual
satellitesignal.Duringtheexperiment,thesatellitesignalcanbepreferablyacquiredbyusingthisalgorithmresearched,thecarrierandpseudo-codecanbeaccuratelytrackedandthenavigationdatacanbecorrectlydemodulated.Furthermore,thefeasibilityofitsapplicationinthesoftwarereceiversystemisverified,italsocanserveasthereferenceforthedevelopmentofreal-timeGPSsoftwarereceiver.
GPSsoftwarereceiver;Acquisition;Tracking;Simulationandverification;Feasibility
*民航安全能力建设项目“北斗机载设备技术标准规定与应用研究”(AADSA0007);中央高校基本科研业务费中国民航大学专项“基于北斗的通用航空指挥监控系统”(20001006);中电科54所新技术研究高校合作项目“通航机载GNSS终端完好性技术研究”(KX14260033)
2013-03-12
刘瑞华(1965-),男,陕西人,博士,教授, 研究生导师,主要研究方向为卫星导航、 惯性导航和组合导航;孔月明(1989-),女,山东人,硕士,主要研究方向为卫星导航新技术及应用;蔚保国(1966-),男,内蒙古人,博士,研究员,博士生导师,主要研究方向为卫星导航总体技术、航天测控技术、阵列信号处理技术和自动测试系统技术;邢兆栋(1976-),男,山东人,博士,高级工程师,主要研究方向为卫星导航信号处理及航空应用。
TN967.1
A
1006-3242(2016)01-0003-06