发明内容
本发明要解决的技术问题是针对上述现有技术的不足,而提供一种适用于船舶交通管理系统的双模卫星融合定位方法,该适用于船舶交通管理系统的双模卫星融合定位方法能融合北斗和GPS两个系统,显著增加可视卫星数目,并利用卫星的双频伪距进行电离层延时修正,有效消除电离层延时误差,同时建立多权重模型,运用加权最小二乘法进行定位解算,定位精度高、算法复杂度小、系统安全性强,从而实现对船舶的精确、实时、可靠定位。
为解决上述技术问题,本发明采用的技术方案是:
一种适用于船舶交通管理系统的双模卫星融合定位方法,包括如下步骤。
步骤1、建立卫星双频伪距误差修正模型:对编号为s的卫星,建立如下所示的双频伪距误差修正模型:
式(5)中,
表示卫星s经双频修正后的伪距测量值。f
1和f
2分别表示卫星信号的两个不同载波频率。
和
分别表示船载接收终端u在同一时刻对卫星s所发射的两个不同载波频率信号f
1和f
2上接收的伪距测量值。
步骤2、修正卫星的伪距测量值:假设船载接收终端u所能接收的所有可见卫星包括m颗北斗卫星和n颗GPS卫星。则在当前观测历元t时刻下,通过船载接收终端,根据步骤1中建立的卫星双频伪距误差修正模型,对每颗卫星均进行伪距测量值的修正。
步骤3、北斗卫星和GPS卫星的空间位置解算及时空转换:接收m颗北斗卫星和n颗GPS卫星的星历数据,根据星历中的开普勒参数对卫星位置进行解算,得到每颗卫星的空间位置坐标,然后将n颗GPS卫星的空间位置坐标转换到北斗坐标系下,同时将GPS时间系统转换到北斗时间系统下,从而实现北斗系统和GPS的时空转换与统一。
步骤4、初步求解船舶位置:针对m颗北斗卫星和n颗GPS卫星,建立双模伪距定位观测方程组,并对其进行线性化,通过最小二乘法初步解算出在当前观测历元t时刻下船舶在北斗坐标系中的空间位置坐标(xt,yt,zt)。
步骤5、计算每颗卫星相对于船舶的高度角:根据步骤3得到的卫星空间位置坐标和步骤4初步得到的船舶空间位置坐标,计算m颗北斗卫星和n颗GPS卫星相对于船舶的高度角,得到m颗北斗卫星的高度角为
n颗GPS卫星的高度角为
步骤6、建立多权重模型:根据卫星的系统类别、信噪比和高度角,建立如下所示的多权重模型:
W·A·△X=W·B (21)
W=W1·W2·W3 (20)
其中,A为观测系数矩阵。△X为关于船舶从t-1时刻至t时刻的修正量矩阵。B为过程矩阵;W为综合权重矩阵;W1为(m+n)颗卫星基于系统类别的权重矩阵。W2为(m+n)颗卫星基于信噪比的权重矩阵。W3为(m+n)颗卫星基于高度角的权重矩阵。
步骤7、二次精确求解船舶位置:采用加权最小二乘法求解线性化后的公式(21),得到修正量矩阵△X,从而获得在当前观测历元t时刻下船舶在北斗坐标系中的精确空间位置坐标。其中,获得的修正量矩阵△X为:
△X=-(AT·WT·W·A)-1·AT·WT·W·B (22)
式(22)中,AT表示矩阵A的转置,WT表示矩阵W的转置,(AT·WT·W·A)-1表示矩阵(AT·WT·W·A)的逆。
步骤8,在下一历元时刻,重复步骤1到步骤7,获得船舶的空间位置坐标。
步骤6中,(m+n)颗卫星基于系统类别的权重矩阵W1如下所示:
其中,WB表示m颗北斗卫星构成的基于系统类别的权重矩阵。WG表示n颗GPS卫星构成的基于系统类别的权重矩阵。
(m+n)颗卫星基于信噪比的权重矩阵W2如下所示:
式(18)中,
分别表示m颗北斗卫星基于信噪比的权重值。
分别表示n颗GPS卫星基于信噪比的权重值。
权重矩阵W2中m颗北斗卫星或n颗GPS卫星基于信噪比的权重值,简称基于卫星信噪比的权重Q2,计算公式如下:
式(15)中,β表示卫星的信噪比值。
(m+n)颗卫星基于高度角的权重矩阵W3如下所示:
式(19)中,
分别表示m颗北斗卫星基于高度角的权重值。
分别表示n颗GPS卫星基于高度角的权重值。
权重矩阵W3中m颗北斗卫星或n颗GPS卫星基于高度角的权重值,简称基于卫星高度角的权重Q3,计算公式如下:
Q3=sinθ (16)
式(16)中,θ表示卫星的高度角。
步骤1中,当编号S卫星为北斗卫星,则接收B1I信号和B3I信号,其载波频率f1和f2分别为1561.098MHz和1268.520MHz。若编号S卫星为GPS卫星,则接收L1信号和L5信号,其载波频率f1和f2分别为1575.42MHz和1176.45MHz。
步骤6中,观测系数矩阵A、修正量矩阵△X和矩阵B,分别表示如下:
其中,(δx
t,δy
t,δz
t)为观测历元t时刻下定位结果的位置变化量。δt
u为船载接收终端u的钟差。
为在当前观测历元t时刻下m颗北斗卫星B1I信号上经步骤2误差修正后的伪距测量值。
为在当前观测历元t时刻下n颗GPS卫星L5信号上经步骤2误差修正后的伪距测量值。
分别为m颗北斗卫星到接收终端上一观测历元t-1时刻下位置坐标(x
t-1,y
t-1,z
t-1)的距离,
分别为n颗GPS卫星到接收终端上一观测历元t-1时刻下位置坐标(x
t-1,y
t-1,z
t-1)的距离。
分别为:船载三模接收终端在上一观测历元t-1时刻下的位置坐标(x
t-1,y
t-1,z
t-1)到第1~m颗北斗卫星位置坐标之间的距离向量,分别在北斗坐标系x轴、y轴、z轴上的方向余弦。
分别为:船载三模接收终端在上一观测历元t-1时刻下的位置坐标(x
t-1,y
t-1,z
t-1)到第1~n颗GPS卫星位置坐标之间的距离向量,分别在北斗坐标系x轴、y轴、z轴上的方向余弦。
本发明具有如下有益效果:
1、相比于传统的单GPS定位方法,本发明所提出的基于北斗和GPS的双模卫星融合定位方法降低了对单GPS系统的依赖程度,提升了整个定位系统的安全性和容错性;
2、本发明所提出的定位方法,利用卫星的双频伪距进行电离层延时修正,有效消除了伪距测量值的电离层延时误差,从而显著提升了船舶的定位精度;
3、本发明所建立的多权重模型,充分考虑了卫星的系统类别、信噪比和高度角等因素对每颗卫星伪距测量值的影响,并采用加权最小二乘法进行定位解算,进一步提升了船舶定位精度,同时也明显降低了定位算法的复杂度,具有较高的工程实用性。
具体实施方式
下面结合附图和具体较佳实施方式对本发明作进一步详细的说明。
本发明的描述中,需要理解的是,术语“左侧”、“右侧”、“上部”、“下部”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,“第一”、“第二”等并不表示零部件的重要程度,因此不能理解为对本发明的限制。本实施例中采用的具体尺寸只是为了举例说明技术方案,并不限制本发明的保护范围。
如图1所示,一种适用于船舶交通管理系统的双模卫星融合定位方法,包括如下步骤。
步骤1、建立卫星双频伪距误差修正模型。
步骤11、建立伪距误差模型并对伪距测量值进行初步修正。
针对船载接收终端u在同一时刻对同一颗编号为s的卫星所发射的两个不同载波频率信号上的伪距测量值ρ
1 (s)和
误差模型定义如下:
式(1)中,r表示卫星s至船载接收终端u之间的真实距离;I1和I2分别表示两个不同载波频率信号的电离层延时误差;T表示对流层延时误差;δtu表示船载接收终端u的钟差;δt(s)表示卫星钟差;I1,I2,T,δtu,δt(s)均为等效距离误差,单位为米(m)。
在当前观测历元t时刻下,通过船载接收终端u,接收所有可见卫星所发射的两个不同载波频率信号上的伪距测量值以及导航电文数据,得到m颗北斗卫星和n颗GPS卫星的相关数据,并根据相应的卫星导航电文数据计算卫星伪距测量值的卫星钟差δt(s)和对流层延迟误差T,进而完成对每颗卫星伪距测量值的初步修正。
步骤12、利用卫星的双频伪距测量值计算电离层延时误差。
电离层为距地面70~1000km的大气层,在太阳光的照射下大气分子会分解为大气电子和电离子,此时当电磁波穿过充满电子的电离层时,它的传播速度和方向会发生一定改变,由此造成了伪距测量值中的电离层延时误差。电离层是一种弥散性介质,即不同频率的电磁波在电离层中有着不同的传播速度。电离层延时I与信号频率f之间的具体关系如下:
式(2)中,I代表伪距测量值中的电离层延时,为等效距离误差,单位为米(m),Ne代表在信号传播途径上的、横截面为1m2的这样一个管状通道空间所包含的电子数总量。通常来说,电离层延时是伪距测量值中最大的误差量之一。
之前的定位方法通常采用数学模型来估算电离层延时,实验证明这些模型只能修正50%到60%的电离层延时误差。随着我国北斗的建成完善以及美国GPS的现代化,卫星信号体制也发生了改变,除了已有的北斗B1I和GPS L1频段,逐渐加入了北斗B1I、B2a和GPSL2、L5频段,可用的频段资源越来越丰富。同时,越来越多的接收终端支持接收多个频段的卫星信号。对于这些多频接收终端,可以不借助任何电离层延时数学估算模型,而是直接利用卫星两个频段的伪距测量值对电离层延时进行实时测定,进而完全消除电离层延时误差。
对于步骤11中的式(1),由于几何距离r、对流层延时T、接收终端钟差δtu和卫星钟差δt(s)均为公共量,所以若不考虑测量噪声,则式(1)中的两个等式右边只有电离层延时这一项不同。根据电离层延时与信号频率之间的函数关系式(2),可以将双频电离层延时I1和I2分别表达为:
式(3)中,f1和f2分别表示卫星信号的两个不同载波频率。
若此卫星为北斗卫星,则接收B1I信号和B3I信号,其载波频率分别为1561.098MHz和1268.520MHz;若此卫星为GPS卫星,则接收L1信号和L5信号,其载波频率分别为1575.42MHz和1176.45MHz。
接着,将式(1)中的两个等式相减,并将式(3)代入相减后的等式中,消除40.28Ne,再经整理后可得电离层延时误差模型,如下所示:
然后,将式(4)所示的电离层延时I1和I2代入下式:
式(5)中,
表示卫星s经双频修正后的伪距测量值。f
1和f
2分别表示卫星信号的两个不同载波频率。
和
分别表示船载接收终端u在同一时刻对卫星s所发射的两个不同载波频率信号f
1和f
2上接收的伪距测量值。
式(5)表明,对电离层延时误差的双频修正,事实上就是对双频伪距测量值
和
的线性组合,而经过这种组合的测量值
将不再含有电离层延时误差。
故在当前观测历元t时刻下,利用卫星的双频伪距测量值计算出电离层延时误差,从而完成对m颗北斗卫星和n颗GPS卫星伪距测量值的进一步修正。
步骤2、修正卫星的伪距测量值:假设船载接收终端u所能接收的所有可见卫星包括m颗北斗卫星和n颗GPS卫星。则在当前观测历元t时刻下,通过船载接收终端,根据步骤1中建立的卫星双频伪距误差修正模型,对每颗卫星均进行伪距测量值的修正。
步骤3、北斗卫星和GPS卫星的空间位置解算及时空转换:接收m颗北斗卫星和n颗GPS卫星的星历数据,根据星历中的开普勒参数对卫星位置进行解算,得到每颗卫星的空间位置坐标。
由于北斗和GPS两个系统采用不一样的时间基准和坐标基准,为实现双模融合定位解算,应将两者的时间基准和坐标基准进行转换和统一。所以将n颗GPS卫星的空间位置坐标转换到北斗坐标系(BeiDou Coordinate System,BDCS)下,同时也将GPS时间系统(GPST)转换到北斗的时间系统(BDT)下,进而实现北斗系统和GPS的时空转换与统一。
步骤4、初步求解船舶位置:针对m颗北斗卫星和n颗GPS卫星,建立双模伪距定位观测方程组,并对其进行线性化,通过最小二乘法初步解算出在当前观测历元t时刻下船舶在北斗坐标系中的空间位置坐标(xt,yt,zt)。
船载接收终端u在上一观测历元t-1时刻下的定位结果为(xt-1,yt-1,zt-1),与观测历元t时刻下定位结果的位置变化量为(δxt,δyt,δzt),在当前观测历元t时刻下待解算的船舶位置为(xt,yt,zt),并满足下面的方程:
然后,针对m颗北斗卫星和n颗GPS卫星,建立双模伪距定位观测方程组:
其中,
为在当前观测历元t时刻下m颗北斗卫星B1I信号上经步骤2误差修正后的伪距测量值。
为在当前观测历元t时刻下n颗GPS卫星L5信号上经步骤2误差修正后的伪距测量值。
分别为在当前观测历元t时刻下m颗北斗卫星经步骤3解算出在北斗坐标系中的空间位置坐标;
分别为在当前观测历元t时刻下n颗GPS卫星经步骤3解算出在北斗坐标系中的空间位置坐标;
δtu为船载接收终端u的钟差,δtu为等效距离误差,单位为米(m)。
接着,分别求取m颗北斗卫星和n颗GPS卫星相对于北斗坐标系三个坐标轴的方向余弦,m颗北斗卫星的方向余弦为:
式(8)中,
分别为船载接收终端在上一观测历元t-1时刻下的位置坐标(x
t-1,y
t-1,z
t-1)到第i颗北斗卫星位置坐标
在北斗坐标系x轴、y轴、z轴上的方向余弦。
n颗GPS卫星的方向余弦为:
式(9)中,
分别为船载接收终端在上一观测历元t-1时刻下的位置坐标(x
t-1,y
t-1,z
t-1)到第j颗GPS卫星位置坐标
在北斗坐标系x轴、y轴、z轴上的方向余弦。
接着对双模伪距定位观测方程组进行线性化,并将结果转换为矩阵形式:
式(10)中,
分别为m颗北斗卫星到接收终端上一观测历元t-1时刻下位置坐标(x
t-1,y
t-1,z
t-1)的距离,
分别为n颗GPS卫星到接收终端上一观测历元t-1时刻下位置坐标(x
t-1,y
t-1,z
t-1)的距离。
分别为:船载三模接收终端在上一观测历元t-1时刻下的位置坐标(x
t-1,y
t-1,z
t-1)到第1~m颗北斗卫星位置坐标之间的距离向量,分别在北斗坐标系x轴、y轴、z轴上的方向余弦。
分别为:船载三模接收终端在上一观测历元t-1时刻下的位置坐标(x
t-1,y
t-1,z
t-1)到第1~n颗GPS卫星位置坐标之间的距离向量,分别在北斗坐标系x轴、y轴、z轴上的方向余弦。
将上述线性化后的双模伪距定位观测方程组表示为:
A·△X=B (11)
然后采用最小二乘法求解线性化后的双模伪距定位观测方程组,得到修正量矩阵△X为:
△X=-(AT·A)-1·AT·B (12)
式(12)中,AT表示矩阵A的转置,(AT·A)-1表示矩阵(AT·A)的逆。
接着就可以初步得到在当前观测历元t时刻下船舶在北斗坐标系中的空间位置坐标为:
步骤5、计算每颗卫星相对于船舶的高度角:根据步骤3得到的卫星空间位置坐标和步骤4初步得到的船舶空间位置坐标,计算m颗北斗卫星和n颗GPS卫星相对于船舶的高度角,,单位为度(°),得到m颗北斗卫星的高度角为
n颗GPS卫星的高度角为
步骤6、建立多权重模型。
考虑到电离层延时、对流层延时、卫星钟差以及多径误差,每颗卫星的伪距测量值相互独立、非同等分布,有着不同的测量误差。这种情况下,最小二乘法就不能保证其最优性,无法获得最优的定位结果,这就需要加权最小二乘法来提升定位精度。加权最小二乘的思想就是赋予每颗卫星的伪距测量值不同的权重,权重越大的伪距测量值在求解方程的过程中起到的作用就越大。
根据卫星的系统类别、信噪比和高度角,建立如下所示的多权重模型:
W·A·△X=W·B (21)
W=W1·W2·W3 (20)
其中,A为观测系数矩阵。△X为关于船舶从t-1时刻至t时刻的修正量矩阵。B为过程矩阵;W为综合权重矩阵;W1为(m+n)颗卫星基于系统类别的权重矩阵。W2为(m+n)颗卫星基于信噪比的权重矩阵。W3为(m+n)颗卫星基于高度角的权重矩阵。
首先出于国家安全考虑,北斗系统的安全性及其可靠性都要强于GPS系统,故可以在实际的双模融合定位解算过程中赋予北斗卫星更高的权重,即给予北斗卫星信号更高的置信度,于是可以定义基于卫星系统类别的权重如下:
式(14)中,Q1表示基于卫星系统类别的权重,α表示卫星系统类别;
当α=1时,表示该颗卫星属于北斗系统,其对应的权重设为1;
当α=0时,表示该颗卫星属于GPS系统,其对应的权重指数设为0.8。
故而,上述(m+n)颗卫星基于系统类别的权重矩阵W1如下所示:
其中,WB表示m颗北斗卫星构成的基于系统类别的权重矩阵。WG表示n颗GPS卫星构成的基于系统类别的权重矩阵。
接着考虑到卫星信号的信噪比(Signal Noise Ratio,SNR)值越大,即表明卫星信号的质量越好。当SNR值较小时,表明卫星的可观测性较差,卫星信号的传播可能受到多路径效应等因素的干扰,导致观测数据质量不佳,若将此类卫星用于定位解算,势必会导致较大的定位误差,于是可以定义基于卫星信噪比的权重Q2如下:
式(15)中,β表示卫星的信噪比值;
当β<30dB时,其对应的权重设为0,即表示剔除了该颗卫星;
当30dB≤β<45dB时,其对应的权重设为0.3;
当45dB≤β<60dB时,其对应的权重设为0.6。
因而,(m+n)颗卫星基于信噪比的权重矩阵W2如下所示:
式(18)中,
分别表示m颗北斗卫星基于信噪比的权重值。
分别表示n颗GPS卫星基于信噪比的权重值,分别取自Q
2中数值。
最后考虑到在船舶航道上会分布一些峡谷或两岸存在建筑物,使得高度角较小的卫星信号易受到遮挡、反射或衍射,导致多径干扰、信号衰减、非视距信号(Non Line OfSight,NLOS)被接收,若将此类卫星用于定位解算,势必会导致较大的定位误差。故应该赋予高度角小的卫星一个较低的权重,赋予高度角大的卫星一个较高的权重,于是可以定义基于卫星高度角的权重如下:
Q3=sinθ (16)
式(16)中,Q3表示基于卫星高度角的权重,θ表示卫星的高度角;
故而,m+n)颗卫星基于高度角的权重矩阵W3如下所示:
式(19)中,
分别表示m颗北斗卫星基于高度角的权重值。
分别表示n颗GPS卫星基于高度角的权重值,分别参见Q
3进行取值。
步骤7、二次精确求解船舶位置:采用加权最小二乘法求解线性化后的公式(21),得到修正量矩阵△X,从而获得在当前观测历元t时刻下船舶在北斗坐标系中的精确空间位置坐标。其中,获得的修正量矩阵△X为:
△X=-(AT·WT·W·A)-1·AT·WT·W·B (22)
式(22)中,AT表示矩阵A的转置,WT表示矩阵W的转置,(AT·WT·W·A)-1表示矩阵(AT·WT·W·A)的逆。
接着就可以最终确定在当前观测历元t时刻下船舶在北斗坐标系中的空间位置坐标为:
在下一历元时刻,重复上述步骤一到步骤六的双模融合定位过程,即可以获得船舶在这一时刻的空间位置坐标,从而实现船舶的精确、实时、可靠定位。
步骤8,在下一历元时刻,重复步骤1到步骤7,获得船舶的空间位置坐标。
以上详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种等同变换,这些等同变换均属于本发明的保护范围。