本发明涉及通信领域,具体涉及一种适用于室内定位导航的伪卫星导航电文模拟方法。
背景技术:
卫星导航系统为用户提供了全天候实时导航、定位与授时服务,其应用几乎涉及国防建设和经济社会的各个领域。目前室内定位技术多种多样,基于伪卫星的室内定位是其中一种,伪卫星也就是地面上的模拟卫星信号发生器,通用的伪卫星定位原理与GPS卫星相同,比如澳大利亚locata公司研制的locata定位系统,它使用完全特定的导航电文和定制的接收机接收所模拟的GPS信号来定位。根据现有GPS定位原理,接收机实现GPS单点绝对定位所要具备的条件是获得从卫星到接收机的距离测量值以及计算出GPS卫星的空间位置坐标。距离测量值是通过接收机从导航信号中获得码相位测量值得出,卫星空间坐标是通过接收机对导航电文中的星历进行解析得出,得到码相位测量值与卫星坐标之后进行定位解算便可以得出接收机坐标,从而完成定位。
现有的伪卫星都是使用自定义格式的导航电文,与现有GPS系统导航电文不一样,现有的伪卫星系统导航定位都使用特定结构的接收机,不能使用市场上的通用GPS信号接收机,这给实际的应用场景带来了很大局限性,也带来了成本上的提升。同时使用现有的GPS导航电文解算出的卫星位置时刻都在变化,这不能满足实际使用的伪卫星位置是固定的情况,并且现有伪卫星系统使用起来繁琐,已逐渐地不能满足人们的需要。
技术实现要素:
本发明所要解决的技术问题是提供一种适用于室内导航定位的伪卫星导航电文模拟方法,在原有电文的基础上将伪卫星的位置参数作为星历信息填入导航电文,其它参数都不改变,相应的,对接收机的接收算法也只改变轨道升交点赤经对时间的变化率的比例因子,使得使用该方法下的伪卫星进行导航定位解算出的卫星位置相对于地面位置不变,能够迅速完成导航定位,实现室内外导航定位全天候无缝衔接,解决了目前使用的导航电文不能够模拟出相对地面静止的问题。
本发明解决上述技术问题的技术方案如下:一种适用于室内定位导航的伪卫星导航电文模拟方法,包括以下步骤:
(1)根据星历参考时间toe计算规化时间tk,以及根据开普勒第三定律计算卫星的平均角速度n;
(2)根据规化时间tk和平均角速度n,计算信号发射时刻的平近点角Mk;
(3)根据平近点角Mk和星历参数es,计算信号发射时刻的偏近点角Ek;
(4)根据偏近点角Ek与星历参数es,计算信号发射时刻的真近点角vk。
(5)根据真近点角vk,计算信号发射时刻的升交点角距Φk;
(6)根据升交点角距Φk,计算信号发射时刻的二次谐波摄动校正项δuk,δrk,δik;
(7)根据二次谐波摄动校正项δuk,δrk,δik,计算摄动校正后的升交点角距uk、伪卫星矢径长度rk和轨道倾角
(8)根据升交点角距uk和伪卫星矢径长度rk,计算信号发射时刻伪卫星在轨道平面的位置(x′k,y′k);
(9)计算信号发射时刻的升交点赤经Ωk,根据升交点赤经Ωk和伪卫星在轨道平面的位置(x′k,y′k),计算伪卫星在WGS-84地心地固坐标系中的坐标(xk,yk,zk),得到伪卫星坐标值,以模拟生成伪卫星导航电文。
本发明的有益效果是:
1.只对现有的GPS卫星导航电文中的部分参数进行更改,将伪卫星的位置参数作为星历信息填入导航电文,其它参数不改变,简单方便。
2.相比于其他的伪卫星室内定位系统,使用该发明提供的导航电文模拟方法的室内导航定位系统,能够解算出真实伪卫星的位置,实现室内外无缝衔接导航定位;
3.定位结果精确,成本低廉,功能完整,用户体验好。
在上述技术方案的基础上,本发明还可以做如下改进。
进一步,所述步骤(1)中的计算规化时间tk,具体计算公式为,
tk=t-toe
其中,toe为星历参考时间,tk为相对于toe的规化时间,t为计算伪卫星位置时刻,即当前时刻,是根据当前时刻t与星历参考时间toe来计算规化时间tk。当计算得到的tk大于302400s时,则tk应该减去604800s,当tk小于-302400s时,则tk加上604800s。
所述步骤(1)中的计算卫星的平均角速度n,根据开普勒第三定律不同行星绕太阳运动的公转周期的平方分别与它们的轨道长半径的立方成正比,其公式为,
其中,T为公转周期,as为轨道长半径,M为太阳质量,G为引力常数;
令n0代表卫星的平均角速度,则
由此可得
其中,u为常数,计算可知n0为1.458555*10^(-4),
校正之后的卫星平均角速度n为
n=n0+Δn
将Δn置0处理,可得n=n0
采用上述进一步方案的有益效果是使得n取得最小值,从而使得下一步计算中的Mk与时间的关系不大。
进一步,所述步骤(2)中的根据规化时间tk和平均角速度n,计算信号发射时刻的平近点角Mk,具体计算公式为,
Mk=M0+ntk
令轨道长半径as等于ICD文件所要求的最大值的极限条件,则Mk=M0,
其中,M0为星历给出的平近点角。
采用上述进一步方案的有益效果是使得计算出的平近点角Mk的大小与时间无关。
进一步,所述步骤(3)中根据平近点角Mk和星历参数es,计算信号发射时刻的偏近点角Ek,具体计算公式为,
Ek=Mk+es sin(Ek-1)
其中,es为轨道离心率,k=1、2、3……为迭代次数,在第一次迭代中,E的初始值可设为M。
进一步,所述步骤(4)中计算信号发射时刻的真近点角vk,具体计算公式为,
椭圆的极坐标方程为,
由开普勒轨道模型的几何关系可知,
as cos Ek=ases+r cos v
可得:
解得真近点角vk
进一步,所述步骤(5)中计算信号发射时刻的升交点角距Φk,具体计算公式为,将星历给出的ω代入下式,
Φk=vk+ω
其中,ω为轨道近地角距。
进一步,所述步骤(6)中计算信号发射时刻的摄动校正项δuk,δrk,δik,具体计算公式为,
将星历参数中的矫正量Cuc,Cus,Crc,Crs,Cuc,Cis置0,可得,
δuk=Cus sin(2Φk)+Cuc cos(2Φk)=0
δrk=Crs sin(2Φk)+Crc cos(2Φk)=0
δik=Cis sin(2Φk)+Cic cos(2Φk)=0
其中,δuk,δrk,δik分别为升交点角距二次谐波摄动校正量、轨道半径二次谐波摄动校正量和轨道倾角二次谐波摄动校正量;Cuc为升交点角距余弦调和校正振幅;Cus为升交点角距正弦调和校正振幅;Crc为轨道半径余弦调和校正振幅;Crs为轨道半径正弦调和校正振幅;Cic为轨道倾角余弦调和校正振幅;Cis为轨道倾角正弦调和校正振幅。
进一步,所述步骤(7)中计算摄动校正后的升交点角距uk、伪卫星矢径长度rk和轨道倾角具体计算公式为,
uk=Φk+δuk
rk=as(1-es cos Ek)+δrk
其中,as,为卫星轨道长半轴;es为轨道离心率;i0为星历参考时间时的轨道倾角;为轨道倾角对时间的变化率,Φk代表信号发射时刻的升交点角距;Ek为偏近点角,δuk,δrk,δik为摄动校正项。
进一步,所述步骤(8)中计算信号发射时刻伪卫星在轨道平面的位置(x′k,y′k),通过以下公式得到坐标(x′k,y′k)
x′k=rk cos uk
y′k=rk sin uk
其中,x′k,y′k分别代表伪卫星在轨道平面的横坐标与纵坐标,rk代表伪卫星矢径长度,uk代表计算摄动校正后的升交点角距。
进一步,所述步骤(9)中计算信号发射时刻的升交点赤经Ωk,升交点赤经的计算公式为,
其中,toe为星历参考时间,Ω0为周内时等于0时的轨道升交点赤经;为轨道升交点赤经对时间的变化率,为地球自转角速度常数,将接收机接收算法中的轨道升交点赤经对时间的变化率的比例因子由2-43改为2-30,对于导航电文中的参数,在2-30比例因子下设置与常数相等,则此时,Ωk与tk无关;
所述计算伪卫星在WGS-84地心地固坐标系(XT,YT,ZT)中的坐标(xk,yk,zk),具体计算公式为,
xk=x′k cosΩk-y′k cosik sinΩk
yk=x′k sinΩk+y′k cosik cosΩk
zk=y′k sinik
其中,xk,yk,zk分别为计算所得的伪卫星在WGS-84地心地固坐标系(XT,YT,ZT)中的横坐标、纵坐标与竖坐标,x′k,y′k分别为伪卫星在轨道平面的横坐标与纵坐标,Ωk为升交点赤经,ik代表轨道倾角。
附图说明
图1是本发明的方法流程图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
本发明提供的一种适用于室内导航定位的伪卫星导航电文模拟方法,适用于使用伪卫星进行导航定位的室内定位系统,在原有电文的基础上将伪卫星的位置参数作为星历信息填入导航电文,其它参数都不改变,相应的,对接收机的接收算法也只改变轨道升交点赤经对时间的变化率的比例因子,使得使用该方法下的伪卫星进行导航定位解算出的卫星位置相对于地面位置不变,能够迅速完成导航定位,实现室内外导航定位全天候无缝衔接,解决了目前使用的导航电文不能够模拟出相对地面静止的问题。
在伪卫星的室内定位系统中,载波、伪码和导航电文一起构成了GPS卫星所发射的信号,导航电文首先与伪码异或相加实现扩频,然后它们的组合码再通过双相移位键控(BPSK)对载波进行调制,导航电文中含有时间、卫星运行轨道、电离层延时等用于定位的重要信息,其中卫星运行轨道包含在星历信息中,星历信息主要由16个参数组成,这些参数符号及含义如下:
toe:星历参考时间
卫星轨道长半轴的平方根
es:轨道离心率
i0:星历参考时间时的轨道倾角
Ω0:周内时等于0时的轨道升交点赤经
ω:轨道近地角距
M0:toe时的平近点角
Δn:平均运动角速度校正值
轨道倾角对时间的变化率
轨道升交点赤经对时间的变化率
Cuc:升交点角距余弦调和校正振幅
Cus:升交点角距正弦调和校正振幅
Crc:轨道半径余弦调和校正振幅
Crs:轨道半径正弦调和校正振幅
Cic:轨道倾角余弦调和校正振幅
Cis:轨道倾角正弦调和校正振幅
对导航电文的模拟主要是通过对星历参数的修改然后对电文进行解析得到,该导航电文模拟方法的主要步骤如下:
(1)根据星历参考时间toe计算规化时间tk,以及根据开普勒第三定律计算卫星的平均角速度n;
卫星星历给出的轨道参数是以星历参考时间toe作为基准的,为了得到各个轨道参数在t时刻的值,先要求出t时刻与参考时间toe之间的差异,即
tk=t-toe
上式得到的tk称为相对于toe的规化时间。当计算得到的tk大于302400s时,则tk应该减去604800s,当tk小于-302400s时,则tk应该加上604800s。
计算卫星的平均角速度n
由开普勒第三定律可知,不同行星绕太阳运动的公转周期的平方分别与它们的轨道长半径的立方成正比,即
其中,T为公转周期,as为轨道长半径,M为太阳质量,G为引力常数
如果n0代表卫星的平均角速度,即
由此可得
其中,u为常数,计算可知n0为1.458555*10^(-4),
校正之后的卫星平均角速度n为
n=n0+Δn
本方法中将Δn置0处理,可得n=n0
(2)根据规化时间tk和平均角速度n,计算信号发射时刻的平近点角Mk;
将星历给出的平近点角M0代入以下的线性模型公式:
Mk=M0+ntk
令轨道长半径as等于ICD文件(GPS界面控制文件)所要求的最大值的极限条件,则该步骤为,Mk=M0
(3)根据平近点角Mk和星历参数es,计算信号发射时刻的偏近点角Ek;
偏近点角Ek与平近点角Mk有如下的迭代关系:
Ek=Mk+es sin(Ek-1)
其中,es为轨道离心率,k=1、2、3……为迭代次数,在第一次迭代中,E的初始值可设为M。
(4)根据偏近点角Ek与星历参数es,计算信号发射时刻的真近点角vk;
椭圆的极坐标方程为,
由开普勒轨道模型的几何关系可知,
as cos Ek=ases+r cos v
可得,
解得真近点角vk
(5)根据真近点角vk,计算信号发射时刻的升交点角距Φk;
将星历给出的ω代入下式
Φk=vk+ω
可解得伪卫星当前位置点S与升交点相对于地心O的夹角;
(6)根据升交点角距Φk,计算信号发射时刻的摄动校正项δuk,δrk,δik;
将星历参数中的矫正量Cuc,Cus,Crc,Crs,Cuc,Cis置0,可得,
δuk=Cus sin(2Φk)+Cuc cos(2Φk)=0
δrk=Crs sin(2Φk)+Crc cos(2Φk)=0
δik=Cis sin(2Φk)+Cic cos(2Φk)=0
其中,δuk,δrk,δik分别为升交点角距二次谐波摄动校正量、轨道半径二次谐波摄动校正量和轨道倾角二次谐波摄动校正量;Cuc为升交点角距余弦调和校正振幅;Cus为升交点角距正弦调和校正振幅;Crc为轨道半径余弦调和校正振幅;Crs为轨道半径正弦调和校正振幅;Cic为轨道倾角余弦调和校正振幅;Cis为轨道倾角正弦调和校正振幅。
(7)根据摄动校正项δuk,δrk,δik,计算摄动校正后的升交点角距uk、伪卫星矢径长度rk和轨道倾角
将步骤7得到的摄动校正量代入以下各式,
uk=Φk+δuk
rk=as(1-es cos Ek)+δrk
其中,as,为卫星轨道长半轴;es为轨道离心率;i0为星历参考时间时的轨道倾角;为轨道倾角对时间的变化率,Φk代表信号发射时刻的升交点角距;Ek为偏近点角,δuk,δrk,δik为摄动校正项。
(8)根据升交点角距uk和伪卫星矢径长度rk,计算信号发射时刻伪卫星在轨道平面的位置(x′k,y′k);
通过以下公式得到坐标(x′k,y′k)
x′k=rk cos uk
y′k=rk sin uk
其中,x′k,y′k分别代表伪卫星在轨道平面的横坐标与纵坐标,rk代表伪卫星矢径长度,uk代表计算摄动校正后的升交点角距。
(9)计算信号发射时刻的升交点赤经Ωk,根据升交点赤经Ωk和伪卫星在轨道平面的位置(x′k,y′k),计算伪卫星在WGS-84地心地固坐标系中的坐标(xk,yk,zk),得到不随时间改变的唯一的伪卫星坐标值;
升交点赤经的线性模型为
其中,Ω0为周内时等于0时的轨道升交点赤经;为轨道升交点赤经对时间的变化率,为地球自转角速度常数,令星历参数中的与相等,则此时的Ωk与tk无关;
按照现有导航接收算法,与的值不能够保持相等,因为在接收算法中处理时需要先乘上比例因子2-43,然后再转换为十进制,这决定了能够取到的最大值与的值差了3个数量级,因此在接收算法中将的比例因子改为2-30,此时按照现有导航电文格式得到的的值便能够与相等。
计算伪卫星在WGS-84地心地固坐标系(XT,YT,ZT)中的坐标(xk,yk,zk),
xk=x′k cosΩk-y′k cosik sinΩk
yk=x′k sinΩk+y′k cosik cosΩk
zk=y′k sinik
最终能够得到伪卫星在WGS-84坐标系中的坐标值,按照如上的电文设计方法,可得到不随时间改变的唯一的伪卫星坐标值,以模拟生成伪卫星导航电文;对得到的一个不随时间改变的伪卫星的静止位置,据接收机测得的伪距进行定位解算,便可得到接收机在WGS-84坐标系下的坐标,从而完成定位。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。