发明名称 一种基于GPS和北斗双星座的车辆快速优化选星定位方法
摘要 本发明公开了一种面向车辆的快速优化选星定位方法,利用全球定位系统(Global Positioning System,GPS)和北斗卫星导航系统(BeiDou Navigation Satellite System,BDS)双模实现车辆的准确、实时定位,主要有如下步骤:通过载波信噪比值完成卫星的第一级筛选;利用误差模型校正伪距测量值;接收星历数据解算卫星位置;进行GPS及北斗双模伪距定位解算,初步求解车辆位置;计算卫星的高度角和方位角;结合第二级选星算法继续对卫星进行筛选;再次进行GPS及北斗双模伪距定位解算,最终确定车辆在当前时刻的位置;本发明的方法与传统的基于GPS或北斗的单模车辆导航定位相比,定位精度更高,系统容错性和可靠性更好。
申请公布号 CN105785412A 申请公布日期 2016.07.20
申请号 CN201610120726.8 申请日期 2016.03.03
申请人 东南大学 发明人 李旭;高怀堃;徐启敏
分类号 G01S19/42(2010.01)I 主分类号 G01S19/42(2010.01)I
代理机构 南京苏高专利商标事务所(普通合伙) 32204 代理人 柏尚春
主权项 一种基于GPS和北斗双星座的车辆快速优化选星定位方法,其特征在于,在高速、无遮挡工况下,采用GPS和北斗双模定位,结合两级快速优化选星算法,提高定位精度和实时性,进而实现对于开阔区域行驶车辆的高可靠、准确、实时定位,所述方法包括如下步骤:步骤1)通过卫星信号的载波信噪比值完成所有可见观测卫星的第一级筛选;在当前观测历元,通过车载GPS和北斗双模接收机,采集所有可见卫星信号的载波信噪比(Carrier to Noise Density Ratio,C/N<sub>0</sub>)值,C/N<sub>0</sub>的单位为分贝/赫兹(dB/Hz),剔除信号的C/N<sub>0</sub>值小于40dB/Hz的卫星,完成第一级选星,得到m颗GPS卫星和n颗北斗卫星;步骤2)利用误差模型校正卫星的伪距测量值;对于第一级选星后得到的m颗GPS卫星和n颗北斗卫星,接收卫星的伪距测量值并根据伪距测量误差模型,计算各个卫星的星钟误差、信号的电离层及对流层传播误差,进而对各卫星的伪距测量值进行校正;步骤3)接收卫星星历数据,确定卫星的位置;对于第一级选星后得到的m颗GPS卫星和n颗北斗卫星,采集卫星星历数据并进行星历解算,计算出各个卫星的位置,然后将m颗GPS卫星的坐标转换到2000中国大地坐标系(China Geodetic Coordinate System 2000,CGCS2000)下,完成GPS卫星与北斗卫星的坐标系的统一;步骤4)通过GPS和北斗双模伪距定位解算,初步求解车辆的位置;根据第一级选星的结果,对m颗GPS卫星和n颗北斗卫星建立GPS和北斗双模伪距定位观测方程组:<maths num="0001"><math><![CDATA[<mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msubsup><mi>&rho;</mi><mn>1</mn><mi>G</mi></msubsup><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mi>x</mi><mn>1</mn><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>x</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>y</mi><mn>1</mn><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>y</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>z</mi><mn>1</mn><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>z</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>+</mo><msub><mi>&delta;t</mi><mrow><mi>G</mi><mi>P</mi><mi>S</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&rho;</mi><mn>2</mn><mi>G</mi></msubsup><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mi>x</mi><mn>2</mn><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>x</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>y</mi><mn>2</mn><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>y</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>z</mi><mn>2</mn><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>z</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>+</mo><msub><mi>&delta;t</mi><mrow><mi>G</mi><mi>P</mi><mi>S</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mo>...</mo></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&rho;</mi><mi>m</mi><mi>G</mi></msubsup><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mi>x</mi><mi>m</mi><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>x</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>y</mi><mi>m</mi><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>y</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>z</mi><mi>m</mi><mi>G</mi></msubsup><mo>-</mo><msub><mover><mi>z</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>+</mo><msub><mi>&delta;t</mi><mrow><mi>G</mi><mi>P</mi><mi>S</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&rho;</mi><mn>1</mn><mi>B</mi></msubsup><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mi>x</mi><mn>1</mn><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>x</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>y</mi><mn>1</mn><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>y</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>z</mi><mn>1</mn><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>z</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>+</mo><msub><mi>&delta;t</mi><mrow><mi>B</mi><mi>D</mi><mi>S</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&rho;</mi><mn>2</mn><mi>B</mi></msubsup><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mi>x</mi><mn>2</mn><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>x</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>y</mi><mn>2</mn><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>y</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>z</mi><mn>2</mn><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>z</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>+</mo><msub><mi>&delta;t</mi><mrow><mi>B</mi><mi>D</mi><mi>S</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mo>...</mo></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&rho;</mi><mi>n</mi><mi>B</mi></msubsup><mo>=</mo><msqrt><mrow><msup><mrow><mo>(</mo><msubsup><mi>x</mi><mi>n</mi><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>x</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>y</mi><mi>n</mi><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>y</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup><mo>+</mo><msup><mrow><mo>(</mo><msubsup><mi>z</mi><mi>n</mi><mi>B</mi></msubsup><mo>-</mo><msub><mover><mi>z</mi><mo>~</mo></mover><mi>t</mi></msub><mo>)</mo></mrow><mn>2</mn></msup></mrow></msqrt><mo>+</mo><msub><mi>&delta;t</mi><mrow><mi>B</mi><mi>D</mi><mi>S</mi></mrow></msub></mrow></mtd></mtr></mtable></mfenced>]]></math><img file="FDA0000933684060000021.GIF" wi="1206" he="885" /></maths>其中,<img file="FDA0000933684060000022.GIF" wi="596" he="60" />分别为m颗GPS卫星和n颗北斗卫星误差校正后的伪距值,<img file="FDA0000933684060000023.GIF" wi="789" he="60" />为m颗GPS卫星在CGCS2000坐标系中的坐标,<img file="FDA0000933684060000024.GIF" wi="772" he="59" />为n颗北斗卫星在CGCS2000坐标系中的坐标,δt<sub>GPS</sub>和δt<sub>BDS</sub>分别为接收机与GPS时钟、接收机与北斗时钟的钟差,<img file="FDA0000933684060000025.GIF" wi="189" he="53" />为当前观测历元t时刻车辆在CGCS2000坐标系中的待解算的位置坐标;将双模伪距定位观测方程组线性化,然后通过最小二乘法求解出车辆在当前观测历元t的位置坐标<img file="FDA0000933684060000026.GIF" wi="213" he="53" />步骤5)根据车辆的位置,计算各卫星的高度角和方位角;根据步骤4)得到的车辆位置,计算m颗GPS卫星和n颗北斗卫星相对于车辆的高度角和方位角,高度角和方位角的单位均为度(°),m颗GPS卫星的高度角为<img file="FDA0000933684060000027.GIF" wi="260" he="60" />方位角为<img file="FDA0000933684060000028.GIF" wi="298" he="60" />n颗北斗卫星的高度角为<img file="FDA0000933684060000029.GIF" wi="252" he="59" />方位角为<img file="FDA00009336840600000210.GIF" wi="293" he="59" />步骤6)利用卫星的高度角和方位角,结合第二级选星算法,继续对GPS和北斗卫星进行筛选;对于m颗GPS卫星,首先剔除高度角小于10°的卫星,若余下卫星数目小于或等于四颗,则将余下的全部GPS卫星用于步骤7)中的定位解算;若GPS卫星数目仍大于四颗,则选出四颗GPS卫星用于步骤7)中的定位解算,选星的具体过程如下:1.选出高度角最大的一颗卫星,将其编号为GPS1,GPS1号卫星的高度角为<img file="FDA0000933684060000031.GIF" wi="97" he="60" />2.选出高度角最小的一颗卫星,将其编号为GPS2,GPS2号卫星的高度角为<img file="FDA0000933684060000032.GIF" wi="92" he="60" />3.选出高度角最接近于<img file="FDA0000933684060000033.GIF" wi="226" he="119" />的一颗卫星,将其编号为GPS3,GPS3号卫星的高度角为<img file="FDA0000933684060000034.GIF" wi="93" he="60" />方位角为<img file="FDA0000933684060000035.GIF" wi="105" he="60" />4.选出余下的卫星中与GPS3号卫星的方位角<img file="FDA0000933684060000036.GIF" wi="82" he="60" />相差超过90°的所有卫星,并分别计算这些卫星与前三颗已选出的卫星进行四星组合定位时的HDOP值,然后从中选出使HDOP值最小的一颗卫星,将其编号为GPS4;若没有与GPS3号卫星方位角<img file="FDA0000933684060000037.GIF" wi="82" he="60" />相差超过90°的卫星,则选取与GPS3号卫星方位角<img file="FDA0000933684060000038.GIF" wi="82" he="60" />相差最大的一颗卫星,将其编号为GPS4;对于n颗北斗卫星,首先剔除高度角小于10°的卫星,若余下卫星数目小于或等于四颗,则将余下的全部北斗卫星用于步骤7)中的定位解算;若北斗卫星数目仍大于四颗,则选出四颗北斗卫星用于步骤7)中的定位解算,选星的具体过程如下:1.选出高度角最大的一颗卫星,将其编号为BDS1,BDS1号卫星的高度角为<img file="FDA0000933684060000039.GIF" wi="97" he="59" />2.选出高度角最小的一颗卫星,将其编号为BDS2,BDS2号卫星的高度角为<img file="FDA00009336840600000310.GIF" wi="92" he="59" />3.选出高度角最接近于<img file="FDA00009336840600000311.GIF" wi="227" he="118" />的一颗卫星,将其编号为BDS3,BDS3号卫星的高度角为<img file="FDA00009336840600000312.GIF" wi="99" he="58" />方位角为<img file="FDA00009336840600000313.GIF" wi="104" he="59" />4.选出余下的卫星中与BDS3号卫星方位角<img file="FDA00009336840600000314.GIF" wi="82" he="59" />相差超过90°的所有卫星,并分别计算这些卫星与前三颗已选出的卫星进行四星组合定位时的HDOP值,然后从中选出使HDOP值最小的一颗卫星,将其编号为BDS4;若没有与BDS3号卫星方位角<img file="FDA00009336840600000315.GIF" wi="82" he="59" />相差超过90°的卫星,则选取与BDS3号卫星方位角<img file="FDA00009336840600000316.GIF" wi="83" he="58" />相差最大的一颗卫星,将其编号为BDS4;步骤7)根据第二级选星的结果再次解算车辆的位置;根据第二级选星的结果,确定用于定位解算的GPS和北斗卫星,然后再次进行步骤4)中所述的GPS和北斗双模伪距定位解算,最终确定车辆在当前观测历元的位置。
地址 210096 江苏省南京市四牌楼2号