张 伟,董启甲,张爽娜,马 跃,薛伟罗晨
(1.天津航天中为数据系统科技有限公司,天津 300301;2.航天恒星科技有限公司,北京 100095)
随着北斗三号卫星导航系统组网成功以及接收机应用领域的不断延伸,用户对定位精度、完好性、连续性和可用性都提出了更高的要求与期望,尤其是国防军工、交通运输、测绘勘探、精准农业等行业,需求尤为迫切[1]。传统的卫星导航信号具有落地功率较低、穿透性差、信号易丢失、再定位困难、易受欺骗、抗干扰能力差等弱点[2-3],难以满足丛林、沟壕、洞库和城市街区的导航需求,复杂环境下的服务性能急需提升。
针对弱信号的捕获技术,国内外学者也做了大量的研究工作,其中相干积分、非相干积分和差分相干积分是三种经典的弱信号捕获方法[4-6]。相干积分法能获得最大的信噪比增益,然而受比特跳变的影响,相干积分时间通常不能超过一个比特的长度。非相干积分法通过对相关器输出进行平方累积获得信噪比增益,缺点是噪声也相应地被平方,产生平方损耗[7]。差分相干积分通过将连续2个相关器的输出共轭相乘再进行累积以避免噪声的直接平方,该方案只是在一定程度上克服了相干积分法的缺陷,使得积分时间得以扩展。鉴于上述方法受某些条件的限制,对弱信号的捕获性能提升有限。后续也有诸多学者提出了利用外部辅助的方法进一步提升捕获性能,常见的辅助方法有惯性辅助[8-9]和基站网络辅助[10-11]等方式。
同时,随着卫星技术日渐成熟及运载成本的降低,低轨(Low Earth Orbit,LEO)卫星星座快速部署已具备条件。LEO卫星凭借其轨道和信号的独特优势以及广泛的应用潜力,逐步受到导航增强领域的关注和青睐,并有望成为下一代卫星导航系统发展的新方向[12-14]。因此,本文提出了一种利用LEO卫星辅助完成弱信号高灵敏捕获的算法,对于提升北斗系统的服务水平具有重要意义。
针对复杂环境下弱信号的捕获,综合考虑了相干积分与非相干积分的优缺点,本文采用借助LEO卫星的辅助,以相干积分为主、非相干为辅的实施方法实现弱信号的快速捕获。本文设计利用LEO卫星搭载导航增强载荷,转发北斗卫星的电文,并播发导航增强信号。首先LEO卫星接收处理全球卫星导航系统(Global Navigation Satellite System,GNSS)导航信号,并依据GNSS卫星信号完成自身的定位,同时得到北斗卫星的电文信息。然后将北斗卫星的电文信息进行处理,通过导航增强信号播发给地面终端。地面终端通过接收LEO卫星的导航增强信号获取辅助信息,辅助实现B1C弱信号的长时间相干积分,提高了弱信号的处理增益,进而完成弱信号的快速捕获。
(1)LEO卫星的特点
①成本较低
LEO卫星比中高轨卫星的质量小、轨道更低,可通过一箭多星的方式发射,LEO卫星的研发成本和火箭发射成本都较低。
②信号落地功率高
LEO卫星轨道高度一般为1000km 左右,相较于20000km 以上高度的中高轨导航卫星,LEO卫星信号传输路径更短、信号时延和功率损耗更小。简单来说,如果LEO卫星和中高轨卫星发射相同的信号功率,LEO卫星发射抵达地球表面的信号功率将比中高轨卫星高出30dB(即1000 倍[15])。更强的落地信号功率可在复杂地形环境和复杂电磁环境下改善定位效果,提升抗干扰和反欺骗能力。
③多普勒变化快,几何构型更优
LEO卫星轨道高度低,运行速度快,多普勒频移现象明显,有利于提高测速的精度和基于多普勒观测值的载波相位周跳探测效果。在LEO卫星单重或者双重覆盖的场景下,可以利用LEO卫星几何构型变化快的特点,基于多普勒测速原理实现定位。
(2)相干积分
相干积分算法通过将相干积分结果相加,实现信号功率的平方倍数增长,而噪声功率线性增长,随着累加时间的增长,信噪比显著增长。由文献[16]可知,在捕获过程中I和Q支路的相干积分结果可以表示为
I(n)=aD(n)R(τ)sinc(feTcoh)cos(φe)
(1)
Q(n)=aD(n)R(τ)sinc(feTcoh)sin(φe)
(2)
其中,a2为输入信号的平均功率;D(n)为值为±1 的数据比特电平值;R(τ)为伪码自相关函数;fe为输入信号与本地信号之间的载波频差;φe为输入信号与本地信号的相位差异;Tcoh为相干积分长度。
由公式可知,在相干积分中,如果没有比特翻转,I/Q支路的能量峰值则不会受影响;如果存在比特翻转,那么相干积分过程中跳变沿前后的能量极性相反,能量相互抵消,减少了I/Q支路的积分能量峰值。
延长相干积分时间是提高信噪比最有效的方法,但是也存在局限性。一方面是受到数据比特符号跳变的限制,最长积分时间不能超过数据码的比特宽度;另一方面是受载波频差的限制,延长相干积分时间会导致信号频率维度搜索步进值减小。输入信号与本地信号的载波频差主要包含多普勒频差和接收机时钟频差等,由于接收机固有频差的存在,在工程实现中,相干时间也不能无限延长。
(3)非相干积分
非相干积分算法一般是在相干积分的基础上进行的,通过将相干积分结果平方处理后叠加,实现信噪比的提升。平方处理不包含相位信息,使得非相干积分不受数据比特符号跳变的影响。
非相干积分虽然去除了积分输出中的残留相位,但是在对相干积分输出采取平方操作时,相当于同时放大了信号项和噪声项,降低了信号处理增益的提升效果,这就是非相干积分损失,也叫平方损耗。非相干积分带来的平方损耗可由式(3)计算
(3)
其中,n为非相干积分的次数;Dc(1)为理想能力检测因子,是关于检测概率Pd和虚警概率Pfa的函数,表示为
Dc(1)=[erf-1(1-2Pfa)-erf-1(1-2Pd)]2
(4)
其中,erf-1(x)为误差函数的反函数。给定检测概率Pd=0.9和虚警概率Pfa=10-7,Dc(1)约等于21。
根据上述公式可得,在上述理想能力检测因子Dc(1)约等于21的条件下,平方损耗与非相干积分次数之间的曲线关系,如图1所示。由图1可知,在输入信噪比一定的条件下,非相干积分次数越大,越容易受多普勒频偏和本地钟差的影响,带来的平方损耗越大,因此在实际应用时非相干积分的次数也不能过多。
图1 平方损耗与非相干积分次数的关系
根据文献[17],北斗三号B1C信号采用了新型的BOC调制方式,同时也从传统的单一数据通道改进为数据和导频双通道结构。数据通道调制有包含测距信息的导航电文,而导频通道不包含任何数据信息。B1C 信号测距码采用分层码结构,由主码和子码相异或构成,子码的码片宽度与主码的周期相同,子码码片起始时刻与主码第一个码片的起始时刻严格对齐。
根据B1C信号的特点,结合LEO卫星的优势,本文提出了基于LEO辅助的B1C高灵敏快速捕获算法[8-17]。该算法通过LEO获取B1C信号的时间信息和频率信息,辅助实现低信噪比条件下B1C信号的高灵敏快速捕获。在低信噪比环境下,信号被淹没在噪声中,短时间的相关运算无法捕获到伪码的相位与载波多普勒,基于LEO获取的时间信息,获取子码的码相位估计值,剥离子码,消除比特跳变的限制,进行长时间的相干积分,提高了信号的信噪比,实现了弱信号的高灵敏捕获。
由于B1C信号的数据通道和导频通道的信号是同步的,而且导频通道未调制导航电文,故在捕获过程中只捕获导频支路即可完成对B1C信号的捕获。如图2所示,基于LEO辅助的B1C高灵敏快速捕获算法的实现可总结为如下步骤:
图2 基于LEO辅助的B1C捕获算法框图
1)获取B1C数字中频信号。
2)接收处理LEO数字中频信号,完成LEO信号的定位解算。
3)选取频率搜索单元。在LEO的辅助下获取B1C的频率信息,缩小频率搜索范围,确定载波频率搜索步长及当前载波频率的搜索单元。
4)产生本地载波。根据载波频率的搜索单元,产生本地载波。
5)混频运算。将接收到的B1C数字中频信号与产生的本地载波进行混频运算。
6)产生本地测距码。首先在LEO的辅助下获取B1C信号的时间信息;然后根据B1C信号结构得到导频支路码相位的估计值,由码相位的估计值分别产生导频支路的主码序列和子码序列;最后将主码序列和子码序列进行异或运算得到本地测距码。
7)相关运算。将混频运算得到的同相支路和正交支路分别与产生的本地测距码进行相关运算。
8)长相干积分运算。对相关运算后的同相支路和正交支路分别进行长时间相干积分。由于导频支路的子码参与相关运算,这样在相关运算后就消除了比特跳变对相干积分的影响,不考虑频率误差的影响,理论上可以进行无限长时间相干积分。
10)门限判决与峰值检测。对非相干积分的结果V寻找最大值,并且把该值与预设阈值进行比较,如果非相干积分的最大值超过预设阈值,则认为捕获成功,同时该最大值对应的频率和码相位即为要捕获信号的载波频率和码相位;否则需要更换频率搜索单元和码搜索单元继续搜索,直至完成所有频率搜索范围和码搜索范围。
基于LEO辅助的北斗B1C高灵敏快速捕获算法的关键在于通过LEO卫星获取辅助信息。目前LEO卫星的落地功率一般比北斗卫星高出10~30dB,所以在B1C信号遮挡或者干扰环境下,地面终端依然能正常接收LEO的导航增强信号。
考虑到LEO的轨道高度较低,多普勒搜索范围较大,一般在±40kHz,对于LEO信号的捕获采用并行码的捕获算法,可以实现LEO信号的快速捕获。
此外,由于LEO数量有限,多数情况下为单重或双重覆盖,利用LEO卫星相对地面运动速度较快、多普勒变化快的特点,采用多普勒测速原理完成地面接收机的导航定位解算。
(5)
(6)
其中,1n是北斗卫星n所述GNSS在接收机处的单位观测矢量
(7)
根据上述分析可知,多普勒估计值的精度受测速精度和接收机钟漂钟差等多方面因素影响。
基于LEO辅助的B1C高灵敏快速捕获算法的特点在于,一方面,利用LEO获取的时间辅助信息可以进行长时间的相干积分,提高了信号的检测信噪比,实现了弱信号的高灵敏捕获;另一方面,利用LEO获取的时间辅助信息和频率辅助信息,可以缩小信号在频率维度和码维度的搜索范围,降低捕获时间,提高捕获效率。
(1)提高捕获灵敏度
在LEO的辅助下,通过时间辅助信息在相关运算中剥离子码,实现长时间相干积分,提高了接收信号的信噪比,进而提高了信号的捕获灵敏度。
由文献[16],相干积分增益为
Gcoh=10lg(BpdTcoh)
(8)
其中,Bpd为相关器之前的噪声带宽;Tcoh为相干积分时间。记SNRpd为信号的预检信噪比(相关器之前的信噪比),SNRcoh为相干积分后的信噪比,则有
SNRcoh=SNRpd+Gcoh
(9)
其中
SNRpd=C/N0-10lg(Bpd)
(10)
因此
SNRcoh=C/N0+10lg(Tcoh)
(11)
由于载噪比C/N0在相干积分前后不会改变,所以当延长相干积分时间Tcoh,信噪比SNRcoh也会提高。根据公式,当相干积分时间增加1倍,信噪比SNRcoh会相应提高约3dB。
设置B1C相关之前的噪声带宽为4.092MHz,可以得出相干积分时间与相干积分增益的曲线关系,如图3所示。无LEO辅助下,为了减少比特跳变对相干积分的影响,一般相干积分时间不能超过一个子码宽度的一半,此处采用2ms,对应的相干积分增益为39dB。在LEO辅助下,相干积分时间可以实现大于10ms的参数选择,具体地,当Tcoh=80ms,相干积分增益为55dB,相比Tcoh=2ms,相干积分增益提高了16dB,由于高信噪比的检测信号比低信噪比的检测信号更容易超过捕获门限,意味着信号的捕获灵敏度可以相应地提高16dB。
图3 相干积分时间与相干积分增益的关系
(2)缩短捕获时间
对某一颗卫星导航信号的捕获过程一般通过对该信号的载波频率和码相位这2个维度进行扫描来完成搜索[7]。而对该信号捕获搜索所需的时间也就由载波频率和码相位不确定区间的大小决定。
如图4所示,其中信号载波频率和码相位的不定值分别为func与tunc,搜索频带与码带宽度分别为fbin与tbin,那么该二维搜索范围包含的搜索单元数据Ncell为
(12)
假设驻留时间Tdwell是指接收机在每个搜索单元上进行一次信号搜索所需要的时间,于是驻留时间乘以搜索单元总数就等于搜索一遍整个不定区间所需要的时间Ttot,即
Ttot=TdwellNcell
(13)
接收机中捕获的信号参数值一般是随机地分布在二维搜索范围之内的,那么接收机在声明信号捕获之前所搜索过的搜索单元数目的平均值等于总搜索单元数目的一半,即平均捕获时间Tacq的估算公式为
(14)
根据图4(a)所示,无LEO辅助下,对于频率和码相位的搜索必须对应进行全频段和全码段的搜索。根据图4(b)所示,有LEO辅助模式下,根据时间信息和频率信息的辅助,对于频率和码相位的搜索只需对应进行局部频段和局部码段的搜索,同时在频率维度和码维度减少了搜索单元数量,二维搜索范围由图4(a)缩小至图4(b)灰色部分,搜索范围有着大幅度地缩小。
(a)无低轨卫星辅助下的搜索范围
具体地分析如表1所示,B1C信号的码长为10230,码率为1.023Mcps,码周期为10ms。无LEO卫星辅助下,接收机对B1C信号的频率和码相位的搜索范围分别设为±5kHz和10230码片,并采用500Hz的频率搜索步长和0.5码片的码相位搜索步长,则二维搜索的搜索单元总数为429660个。
表1 无辅助与LEO辅助下捕获搜索单元对比
对于有LEO辅助场景,根据2.2节,综合考虑LEO的定位精度、授时精度、测速精度和接收机钟差钟漂等因素,进行了仿真标的,得到在LEO辅助下,接收机对B1C信号的频率搜索范围可以缩小至±10Hz,码相位的搜索范围可以缩小至±20个码片。
在频率和码片搜索步长保持不变的情况下,二维搜索的搜索单元总数为80个,相比无LEO辅助下减少了5.4×103倍。在弱信号条件下,为了提高捕获灵敏度,采用延长相干积分时间的策略,考虑频率误差与相干积分时间的关系,设置5Hz的频率搜索步长和0.5码片的码相位搜索步长,则二维搜索的搜索单元总数为400个,相比无LEO辅助下减少了1.1×103倍。
此外,虽然理论上减少捕获搜索单元数就相当于缩短了捕获时间,但是在实际工程实现中,多数接收机可能会采用快捕方法,即并行频率和/或并行码。如果采用串行搜索,可以辅助减少搜索单元数,进而缩短搜索时间。如果采用并行搜索策略,通过辅助可以显著地减小对单路信号处理的计算量,并减少并行处理的通道数量,达到节省硬件计算资源的效果。
为了验证上述LEO辅助的长相干积分方法对B1C捕获灵敏度性能提升的有效性,测试实验采用Matlab和FPGA两种方式进行验证分析,Matlab平台是从算法层面进行验证试验,为了进一步证明本文提出算法在工程化中的可行性,进行了FPGA设计及EDA验证试验。其中上述两种试验的输入中频信号均是利用Matlab搭建平台产生的B1C数字中频信号。
(1)捕获算法的功能测试
为了验证LEO辅助下高灵敏捕获算法功能的正确性,首先利用软件产生信号功率为-130dBm和-140dBm的B1C数字中频信号,然后分别采用2ms、10ms和20ms的相干积分时间,两次非相干积分进行信号捕获,捕获结果如图5和图6所示。
图5 基于Matlab的捕获仿真结果(-130dBm)
图6 基于Matlab的捕获仿真结果(-140dBm)
图5展示了信号功率为-130dBm条件下基于Matlab的捕获结果,根据捕获检测到的峰值可以看到,三种情况均成功捕获,而且码相位结果均与预设码相位偏移一致,累加峰值成比例增长。
图6展示了信号功率为-140dBm条件下基于Matlab的捕获结果,根据捕获检测到的峰值可以看到,相干积分为2ms下无辅助的情况捕获失败;LEO卫星辅助下的相干积分为10ms和20ms的情况下均成功捕获,而且码相位结果均与预设码相位偏移一致,能量值成比例增长。
为了进一步证明该算法在工程化中的可行性,利用FPGA实现LEO辅助B1C高灵敏捕获算法,并进行了EDA仿真验证,仿真验证结果如图7所示。
图7 基于FPGA的捕获仿真结果
图7展示了信号功率为-140dBm条件下基于FPGA的捕获结果。无LEO辅助下,相干积分为2ms,两次非相干积分,对非相干后的结果进行峰值检测,无法检测到峰值,捕获失败。有LEO辅助下,相干积分设置为20ms,同样采用两次非相干积分,由图7可知,成功检测到峰值,捕获成功,并且产生了捕获转跟踪的信号,说明捕获完成,进入跟踪阶段。
综上所述,LEO辅助下的B1C高灵敏捕获算法功能正确,在提高信号捕获灵敏度方面具有显著的效果,工程实现可行性高。
(2)捕获算法的灵敏度测试
针对低动态导航信号,采用蒙特卡罗仿真方式在信号强度、虚警率和相干积分时间三方面设置对比实验,比较有无LEO辅助下对不同强度信号的捕获灵敏度。首先,用软件分别生成不同信号强度的低动态中频仿真信号;然后,设置多组虚警率,并根据虚警概率与捕获门限的关系,计算出对应的捕获门限;最后,分别采用2ms、10ms、20ms、40ms和80ms相干积分时间进行蒙特卡罗实验,每组实验的非相干次数均设置为两次,得到捕获算法的ROC曲线如图8~图10所示
图8 B1C捕获灵敏度测试(Pfa=10-5)
图9 B1C捕获灵敏度测试(Pfa=10-6)
图10 B1C捕获灵敏度测试(Pfa=10-7)
从图8~图10中可以看出,当虚警率为10-5时,使用80ms的相干积分对载噪比24dB以上的信号可以达到0.9的检测率;而使用2ms的相干积分时间时,只有当载噪比在39dB以上信号的检测概率才能达到0.9左右。当虚警率为10-6时,使用80ms的相干积分对载噪比26dB以上的信号可以达到0.9的检测率;而使用2ms的相干积分时间时,只有当载噪比在40dB以上信号的检测概率才能达到0.9左右。当虚警率为10-7时,使用80ms的相干积分对载噪比28dB以上的信号可以达到0.9的检测率;而使用2ms的相干积分时间时,只有当载噪比在42dB以上信号的检测概率才能达到0.9左右。
综上可知,在LEO卫星辅助下使用80ms相干积分时间比无LEO卫星辅助下信号捕获灵敏度可以提高至少14dB。
本文首先对提升接收机捕获灵敏度进行了分析,对比了相干积分与非相干积分对于信号处理增益的影响,得出在低轨导航增强信号的辅助下采用增加相干积分时间的捕获算法对低信噪比条件下B1C信号的捕获更有效。然后提出了基于LEO辅助的B1C高灵敏快速捕获算法,从理论分析和实验仿真两方面对比验证了LEO辅助下高灵敏捕获算法的有效性和可行性。
综上所述,本文提出的基于LEO辅助的B1C高灵敏快速捕获算法的创新点有两点:
1)利用LEO获取的时间辅助信息可以进行长时间的相干积分,提高了信号的检测信噪比,实现了弱信号的高灵敏捕获。对于低动态信号,在LEO卫星辅助下使用80ms相干积分时间比无LEO卫星辅助下信号捕获灵敏度可以提高至少14dB。
2)利用LEO获取的时间辅助信息和频率辅助信息,可以缩小信号在频率维度和码维度的搜索范围,降低捕获时间,提高捕获效率。
此外,本文所提的基于LEO辅助的北斗B1C高灵敏快速捕获算法仅对低动态场景进行了仿真验证,后续还需要对高动态场景下LEO辅助捕获性能的提升做进一步研究分析。