郑志全 盛传贞 韩保民 董孝松
1. 山东理工大学 建筑工程学院,淄博 255049 2. 卫星导航系统与装备技术国家重点实验室,石家庄 050081 3. 中国电子科技集团公司第五十四研究所,石家庄 050081
随着“高端低用”的高精度导航需求的增长,解决低成本导航芯片的载波相位周跳探测是获取高精度数据、实现高精度导航的必要前提。然而,实际应用中低成本导航芯片在跟踪卫星过程中,过桥、树木遮挡等问题容易造成卫星信号暂时失锁,发生周跳[1],同时低成本导航设备较多以单频导航芯片为主,观测噪声较大。因此,探测载波相位中的周跳,以此为高精度导航提供“干净”的数据,是当前高精度导航的瓶颈。目前,周跳探测的方法主要有:伪距相位组合探测法[2]、电离层残差法[3]、多项式拟合法[4]、多频信号周跳探测法[5-6]和小波探测周跳[7]等,但它们均无法适用于当前低成本高精度导航的需求,比如高次差法和多项式拟合法受观测噪声影响较大,对于小周跳很难探测[8-9];电离层残差法修复周跳时存在多值性问题,并且不适合单频周跳探测;相位减伪距法易受伪距噪声的影响,无法识别小周跳的发生[10-12]等。此外,相关研究者探讨基于抗差估计的单频周跳探测与修复方法,其主要思想基于相对定位原理解算获取当前历元的验后单位权中误差,并基于抗差估计得到各个观测值残差,进而实现对单频多模接收机观测数据的周跳探测与修复,但是其方法复杂且需要多次迭代运算,对处理器的资源消耗较大,难以适用于低成本高精度导航的需求[13-15]。因此,本文针对单频低成本导航芯片的周跳问题,综合卫星频繁升降的情况,研究了多普勒观测值辅助的单频周跳探测方法。结合多普勒观测值与载波相位差分观测值,构造实时周跳探测的多普勒-载波相位差分序列。方法简单易行,对运算资源消耗小。同时,基于实测的北斗导航芯片观测数据,应用该方法对相关数据进行了周跳探测,并与传统的双差法进行了比较,探讨该方法探测BDS周跳的能力。
使用多普勒观测值探测周跳是单频载波相位探测周跳非常有效的方法,多普勒是一种非常稳定的观测值,是接收机与卫星在进行相对运动时由接收机收到的载波频率与卫星发射的载波频率的差值,它表示载波相位的瞬时变化率,多普勒独立于载波相位,不会因为发生周跳而改变。多普勒计算公式为:
式中:D代表多普勒观测值;L为距离;λ代表波长;φ1和φ2代表相邻2个历元的载波相位观测值;Δt代表相邻2个历元的时间差值。
由此可以得到多普勒观测值与接收机和卫星之间的距离变化率为:
D=dφ/dt
多普勒探测周跳的模型为:
式中:ΔN表示在Δt时间间隔内发生的周跳数;Δφ代表在Δt时间间隔内的载波相位改正量;ε是误差。
判断是否发生周跳的标准是依据ΔN的3倍中误差3mΔN作为阈值,若ΔN的绝对值大于3mΔN则发生了周跳,即
|ΔN|≥3mΔN
基于低成本导航芯片进行多普勒周跳探测执行逻辑中,由于低成本导航芯片的数据采样率可高于1Hz,因此该方法具有优异的适应性,基于此可以探测出单频载波相位周跳,因此在进行单频载波相位数据周跳探测时,使用多普勒法是一种较为理想的周跳探测方法。
对于双频观测量,根据不同时元电离层残差的变化探测周跳,但是不适用于单频观测值。对于单频观测值,存在着电离层延迟、对流层延迟及钟差等各项误差的影响,基于短基线数据组建双差观测方程,可以消除各项残余误差的影响,双差检验量如以下公式所示。
其中,φ代表载波相位;Δφ为双差检验量;i,j代表测站;p,q代表卫星;t为观测历元。双差检验量已经消除各项误差,比如钟差,削弱了对流层和电离层误差,若没有发生周跳,其值会随时间缓慢变化。在相邻双差检验量之间求得一次差,Δφ一般已经趋向于0,能够轻松检测到小周跳。但是双差法探测周跳无法确定具体发生周跳的测站与卫星,双差法仅适用于RTK双差探测周跳,对于单站单频载波单点定位、PPP则失去作用。
为了验证算法的有效性,2018年8月10日通过低成本小型导航天线、高精度导航芯片卫星接收终端(如图1),在石家庄采集静态短基线(10km左右)BDS B1数据对本文采用的周跳探测与修复方法进行验证分析,采样间隔为1s,芯片如图2红色方框内所示,此芯片为和芯星通28nm低成本导航芯片。为了区分,将两站数据分为基准站与移动站。处理策略为先用双差法对两站的2颗星进行周跳探测,然后再对基准站与移动站的每颗星分别通过多普勒法探测到具体发生周跳的位置以及卫星。 实验采用的卫星为C18和C10,2颗星的双差值时间序列如图3所示。
图1 小型导航天线
图3 双差值时间序列
从图3的双差值时间序列可以初步判定,在第50历元以及第120历元发生了周跳,采用双差高次差法对双差值周跳探测结果如图4。
图4 双差法探测周跳
从图3的双差值序列图和图4使用双差法探测周跳结果来看,实验数据属于在第50历元和第120历元分别发生了+2周和+4周的周跳,但是双差法探测周跳不能判断具体发生周跳的卫星以及周跳的大小,只能判定双差观测值发生了周跳,当同一个历元内的2颗星发生相同周跳时,经过做差后周跳会被减掉。使用多普勒法分别对基准站与移动的2颗星进行周跳探测,周跳探测结果以及周跳检验量如表1所示。
表1 用多普勒法探测基准站与移动站2颗星
从表1可以看出,使用多普勒法可以探测出每一颗星发生的周跳,相比于双差高次差法,使用多普勒法能够探测到每颗星发生的周跳。使用多普勒法探测周跳得到的ΔN值的波动变化在±0.3周内波动,这种不规则的波动变化主要由钟差、噪声等残余误差引起,若周跳检测阈值为0.3周,使用多普勒法可以检测到小周跳的发生。双差高次差法只能探测到基于双差观测值的周跳,对精密单点定位失去作用,不适用于单站,只适用于双站周跳探测,应用受到极大限制。从实验结果可以看出,对于低成本小型天线以及微型导航芯片,数据极易频繁发生周跳,使得双差法探测周跳受到很大限制,使用多普勒法则是一种非常有效的单频BDS周跳探测方法。
对以C18号作为基准星的历元里星间单差值、站间单差值以及双差观测值用多普勒法进行周跳探测,星间单差值是在基准站的同一个历元里的C18和C10星载波相位观测值求单差,站间单差值是在基准站与移动站的相同历元的C18星的载波相位观测值求单差,双差观测值是与双差法同样的方法组成的双差观测值,结果如图5~7。
图5 多普勒探测星间单差值周跳
图6 多普勒探测站间单差值周跳
从图4与7可以看出,双差高次差法与多普勒法探测双差值周跳具有相同的结果,均能探测到第50历元发生的+2周周跳和120历元发生的+4周周跳。图5与6说明,基于单差使用多普勒法同样能探测到发生的周跳值。说明多普勒法更具独立性,可以完全探测修复单频率上的周跳。多普勒法无论对非差观测值、单差观测值还是双差观测值都能探测到周跳,是一种非常灵活的周跳探测方法。
对多普勒探测BDS单频周跳进行了研究分析,并与双差高次法进行了对比。双差高次差法在短基线内能够消除各项残余误差的影响,但是计算量大,且探测到周跳时不能确定具体发生周跳的卫星,使其应用受到一定的限制。而多普勒法具有较强的独立性,不仅能对单差值、双差值周跳探测,还能对单颗星进行周跳探测,算法简单,仅需相邻2个历元的载波相位观测量和多普勒值,不需要其他的附属信息。对于低成本的导航芯片,由于接收数据质量相对较差,载波相位比较容易发生周跳,使用多普勒法探测周跳是一种比较有效的方法。多普勒法对于单频接收机、PPP具有较好的应用价值。