全球卫星导航系统接收机及其定位时间的方法
技术领域
本发明涉及全球卫星导航系统,尤其涉及一种全球卫星导航系统接收机及其定位时间的方法。
背景技术
全球卫星导航系统(Global Navigation Satellite System,GNSS)接收机的作用是定位和授时,为用户提供精确的位置坐标和时间,极大地解决了用户在何地在何时的问题。GNSS接收机最主要的性能指标为首次定位时间以及信号捕获跟踪灵敏度。其中首次定位时间用于衡量接收机信号搜索过程的快慢程度。搜索过程,也称“信号捕获”。首次定位时间即为GNSS接收机加电至其首次输出当前用户位置坐标的时间。根据GNSS接收机开机上电时的不同实际情况,首次定位过程有冷启动,温启动和热启动三种模式。
对于全球定位系统(Global Position System,GPS)卫星,卫星的星历信息有效期在两个小时以内,卫星的历书信息有效期为7天。包括星历和历书信息,上次关机时的接收机位置信息也将存入接收机的闪速存储器(Flash ROM)中。当再次开机后,根据开机时间和概略位置,在星历和历书信息有效的前提下,将可以预测头顶可见卫星,不同程度地加速定位过程。
其中,冷启动模式,基本没有可用信息,是指如下几种情况:(1)接收机第一次开机;(2)接收机相隔开机时间,未超过7天,但发生超过500km范围移动;(3)相隔开机超过7天。上述情形,都造成开机时没有可用信息,所以启动过程需要经过盲搜索的捕获过程、比特同步、跟踪过程、星历电文提取过程,共需40秒左右。
温启动模式,是指如下几种情况:(1)接收机相隔开机时间,未超过一个月,未发生超过500km范围移动;(2)相隔开机未超过2个小时,但位置发生超过500km范围移动。温启动模式的突出特点是开机时已经有了历书,可以不用盲搜索,直接预测头顶可见卫星号和多普勒频偏。由于省去盲搜索,因此可以减少启动时间。
热启动模式,是指本地概略位置、星历数据、卫星历书均有效的开机情况。这样,分别利用卫星历书和星历数据获得卫星位置,明确当前用户位置可见卫星号,进行定位。目前,常规热启动过程在电文提取过程前,需要先完成子帧同步,这一过程共需要6s时间,热启动的整个过程维持在8~9秒左右。
现有技术中GPS接收机热启动模式定位时间的过程如下:
接收机开机上电,从本地实时时钟单元(Real Time Clock,RTC)读取当前时间,判断上次关机时存储的星历和历书信息是否过期,如果星历和历书信息有效,并且也存储有上次关机时刻的接收机坐标,则符合热启动的条件,则进入热启动的信号捕获阶段;否则,执行其它启动模式。捕获状态时,进行扩频码-载波频率的二维捕获,将本地C/A码与接收到的码流基本对齐,偏差在0.5码片以内,载波频率与接收到的载波频率相差不超过100Hz。捕获完成后,则进行比特同步。比特同步,是为了发现20ms的电文比特边界。比特同步完成,则进入跟踪状态,使得本地扩频码发生器和本地载波发生器实时“跟踪”接收到的GPS码信号和载波信号。稳定跟踪后,将进行子帧同步过程。子帧同步,最长可能花费一个子帧的周期6s,它的主要作用是更新卫星发射时刻的历元。之后,将计算出伪距和卫星坐标。由于星历有效,直接进入定位解算环节,完成第一次定位。
上述热启动过程需要进行子帧同步,子帧同步是耗时最长的环节。开始进行子帧同步的时间点,是随机的,最恶劣的情况,需要耗费一个子帧周期6s去完成子帧同步,因此耗时较长。
发明内容
本发明实施例解决的问题是如何减少缩短热启动模式的定位过程。
为解决上述问题,本发明实施例提供一种全球卫星导航系统接收机定位时间的方法,所述方法包括:
从本地实时时钟单元获取本地实时时钟时间TRTC;
当确定所述本地实时时钟时间TRTC在本地保存的星历数据有效期内时,通过捕获信号、跟踪、位同步,获取至少5颗卫星的发射时间小于20ms的部分和实时多普勒数据;
从所述至少5颗卫星中选取1颗卫星作为基准卫星;
将所述本地实时时钟时间TRTC分解为大于20ms的部分和小于20ms的部分;将所述本地实时时钟时间TRTC大于20ms部分与所述基准卫星的发射时间小于20ms的部分进行求和运算,获得所述基准卫星的一个新的发射时间
根据所述星历数据,计算在所述基准卫星的新的发射时间时刻所述基准卫星的坐标,并结合所述上一次定位点坐标,解算所述基准卫星的伪距,进而获得本地接收机时间
根据所述本地接收机时间所述星历数据和所述实时多普勒数据,通过定位解算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间。
可选的,从所述至少5颗卫星中选取1颗卫星作为基准卫星,具体为:从所述至少5颗卫星中选取信号质量最好的卫星作为所述基准卫星。
可选的,根据计算得到的所述卫星的仰角,以及提取得到的所述卫星的载噪比、所述卫星所对应通道的通道质量,选取所述信号质量最好的卫星。
可选的,所述获取至少5颗卫星的发射时间小于20ms的部分包括:分别提取所述至少5颗卫星中每颗卫星的20ms内计数、码片计数和小数码片计数,并分别求和,得到所述至少5颗卫星中每颗卫星的发射时间小于20ms的部分。
可选的,所述根据所述星历数据,计算所述基准卫星的新的发射时间时刻所述基准卫星的坐标,并结合所述上一次定位点坐标,解算所述基准卫星的伪距,包括:将所述基准卫星与上一次定位点坐标的直线距离与由于地球自转所导致的延迟距离进行求和运算,获得所述基准卫星的伪距。
可选的,所述根据所述本地接收机时间所述星历数据和所述实时多普勒数据,通过定位解算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间,包括:
根据所述本地接收机时间所述星历数据和所述实时多普勒数据,推算在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星每颗卫星的坐标、速度、发射时间和伪距;
对在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星各自对应的伪距进行求导运算,并建立所述求导运算得到的伪距的导数与所述卫星对应的实时多普勒数据之间的关系式,通过数据变换,进行最小二乘法运算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间。
可选的,所述方法还包括:当确定所述本地实时时钟时间TRTC未在本地保存的星历数据有效期内,但在本地保存的历书数据的有效期内时,进入温启动模式进行定位时间;当确定所述本地实时时钟时间TRTC未在本地历书数据有效期内时,进入冷启动模式进行定位时间。
为解决上述问题,本发明实施例还提供了一种全球卫星导航系统接收机,包括:
第一时间获取单元,用于从本地时钟单元获取本地实时时钟时间TRTC;
卫星数据获取单元,用于当所述本地实时时钟时间TRTC在本地保存的星历数据有效期内时,根据所述第一计算单元得到的TRTC时刻可见卫星仰角,通过捕获信号、跟踪、位同步,获取至少5颗卫星的发射时间小于20ms的部分和实时多普勒数据;
基准卫星确定单元,用于从所述至少5颗卫星中选取1颗卫星作为基准卫星;
第二时间获取单元,用于将所述本地实时时钟时间TRTC分解为大于20ms的部分和小于20ms的部分,将所述本地实时时钟时间TRTC大于20ms部分与所述基准卫星的发射时间小于20ms的部分进行求和,获得所述基准卫星的一个新的发射时间
第三时间获取单元,用于根据所述星历数据,计算所述基准卫星的新的发射时间时刻所述基准卫星的坐标,并结合所述上一次定位点坐标,解算所述基准卫星的伪距,进而获得本地接收机时间
定位解算单元,用于根据所述本地接收机时间所述星历数据和所述实时多普勒数据,通过定位解算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间。
可选的,所述基准卫星确定单元,用于从所述至少5颗卫星中选取信号质量最好的卫星作为所述基准卫星。
可选的,所述基准卫星确定单元,用于根据计算得到的所述卫星的仰角,以及提取得到的所述卫星的载噪比、所述卫星所对应通道的通道质量,选取所述信号质量最好的卫星。
可选的,所述卫星数据获取单元,用于分别提取所述至少5颗卫星中每颗卫星的20ms内计数、码片计数和小数码片计数,并分别求和,得到所述至少5颗卫星中每颗卫星的发射时间小于20ms的部分。
可选的,所述定位解算单元,用于根据所述本地接收机时间所述星历数据和所述实时多普勒数据,推算在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星中每颗卫星的坐标、速度、发射时间和伪距,并对在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星各自对应的伪距进行求导运算,并建立所述求导运算得到的伪距的导数与所述卫星对应的实时多普勒数据之间的关系式,通过数据变换,进行最小二乘法运算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间。
可选的,所述全球卫星导航系统接收机还包括:
温启动模式定位单元,用于在所述本地实时时钟时间TRTC未在本地保存的星历数据有效期内但在本地保存的历书数据有效期内时,进入温启动模式进行定位时间;
冷启动模式定位单元,用于在所述本地实时时钟时间TRTC未在本地保存的历书数据有效期内时,进入冷启动模式进行定位时间。
从以上技术方案可以看出,上述热启动模式定位时间的过程仅需要捕获信号、跟踪、位同步来获得卫星的发射时间小于20ms的部分,并从至少5颗卫星中选取其中一颗卫星作为基准卫星,将所述本地实时时钟时间TRTC大于20ms部分与所述基准卫星的发射时间小于20ms的部分进行求和运算,获得所述基准卫星的一个发射时间并根据所述星历数据,计算所述基准卫星在新的发射时间时刻所述基准卫星的坐标,并结合所述本地接收机上一次定位点坐标,进而推算在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星中每颗卫星的坐标、速度、发射时间和伪距,通过定位解算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间,整个过程不需要通过子帧同步来获得大于20ms的部分,因此可以缩短定位时间,提高定位速度。
此外,选择信号质量最好的卫星作为基准卫星,可以减少由于信号干扰产生的误差,并且由于每颗卫星的坐标、速度、发射时间和伪距等参数,都是基于所选取的信号质量最好的卫星计算得出的,因此可以避免由信号质量不稳定的卫星进行跟踪、提取数据所造成的误差,从而可以提高定位精度。
附图说明
图1是本发明实施例一中GNSS接收机定位时间的方法流程图;
图2是本发明实施例二中GPS接收机定位时间的方法流程图;
图3是本发明实施例三中GNSS接收机的结构示意图。
具体实施方式
本发明实施例中,在热启动模式的定位时间过程中,不需要进行子帧同步,而是将位同步后所选取的基准卫星的发射时间小于20ms的部分与本地实时时钟时间TRTC大于20ms的部分进行结合,获得所述基准卫星的新的发射时间并解算所述基准卫星的伪距,进而获得本地接收机时间之后计算所有被选取卫星的坐标、速度、发射时间和伪距,并通过定位解算,获得定位时间。
由于整个定位过程中不需要子帧同步,因此可以缩短定位时间,提高定位速度。
为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
实施例一
参照图1所示的GNSS接收机定位时间的方法流程图,以下通过具体步骤进行详细说明。
S101,从本地实时时钟单元获取本地实时时钟时间TRTC。
S102,当所述本地实时时钟时间TRTC在本地保存的星历数据EPHsv有效期内时,通过捕获信号、跟踪、位同步,获取至少5颗卫星的发射时间小于20ms的部分和实时多普勒数据
本实施例中,本地保存的星历数据EPHsv处于有效期,是指相隔开机未超过两个小时,且用户位置移动未超过500km范围。
S103,从所述至少5颗卫星中选取1颗卫星作为基准卫星。
在具体实施中,用户可以随机选取其中任意一颗卫星作为基准卫星,也可以根据特定的需求选取其中一颗卫星作为基准卫星。
S104,将所述本地实时时钟时间TRTC分解为大于20ms的部分TRTC_20ms_up和小于20ms的部分TRTC_20ms_down;将所述本地实时时钟时间TRTC大于20ms部分TRTC_20ms_up与所述基准卫星的发射时间小于20ms的部分进行求和运算,获得所述基准卫星的一个新的发射时间
为更清楚地描述技术方案,可以用如下关系式表示:
TRTC=TRTC_20ms_up+TRTC_20ms_down
S105,根据所述星历数据EPHsv,计算所述基准卫星的新的发射时间时刻所述基准卫星的坐标并结合所述上一次定位点坐标(Ulastx,Ulasty,Ulastz),解算所述基准卫星的伪距进而获得本地接收机时间
S106,根据所述本地接收机时间所述星历数据EPHsv和所述实时多普勒数据通过定位解算,获得所述本地接收的当前定位点坐标(Ulastx,Ulasty,Ulastz)和所述当前定位点坐标(Ulastx,Ulasty,Ulastz)对应的接收时间。
在具体实施中,可以采用多种算法进行定位解算。例如,可以通过闭合形式求解,或者线性化迭代的最小二乘法,还可以采用卡尔曼滤波方法等。
其中,根据所述本地接收机时间所述星历数据EPHsv和所述实时多普勒数据可以推算出在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星各自的卫星发射坐标发射时间和伪距其中与的单位均为秒,即:
本实施例中,对于每颗卫星的伪距计算,都是选取的本地接收机时间及而 即本地实时时钟时间TRTC中大于20ms的部分TRTC_20ms_up作为大数部分,与所选取的基准卫星的发射时间小于20ms的部分作为小数部分,组合成本地接收机时间 与中仅包含本地实时时钟时间TRTC的大数部分,本地实时时钟时间TRTC只要在本地保存的星历数据EPHsv的有效期内,通过粗略的本地接收机时间计算各颗卫星的多普勒与实际测量的卫星多普勒之间的误差,建立方程,进行校准,可以修正误差,将本地时间精度提高,因此不需要对本地实时时钟单元的时钟偏差作特别的限制。
本实施例定位解算过程中,所选择的是和这两个时刻的数据进行的解算。可以理解的是,也可以选择的和之外的其他时刻的数据进行定位解算。
从本实施例可以看出,由于不需要子帧同步,仅需要在捕获信号、跟踪、位同步后选取其中一颗卫星的小于20ms的部分,因此整个定位过程可以需要时间较短,具有较快的定位速度。
在具体实施中,本发明实施例中的GNSS接收机可以应用于多种卫星导航系统,例如目前通用的GPS、格洛纳斯(GLONASS)、伽利略(Galileo)和北斗(Compass)等卫星导航系统。为使本领域技术人员更好地理解和实现本发明,以下通过GPS接收机定位时间的方法进行详细说明。
实施例二
参照图2所示的GPS接收机定位时间的方法流程图,本实施例具体包括以下步骤:
S201,从本地实时时钟单元获取本地实时时钟时间TRTC。
S202,确定所述本地实时时钟时间TRTC是否在本地保存的星历数据EPHsv有效期内时,如果是,则执行步骤S203;如果否,则执行步骤S209;
本实施例中,本地保存的星历数据EPHsv处于有效期,是指相隔开机未超过两个小时,且用户位置距离上次定位点移动未超过500km范围。而如果相隔开机时间超过2个小时,或者用户位置距离上次定位点移动超过500km范围,则本地保存的星历数据EPHsv失效,不能采用热启动模式定位时间的方法,而采用冷启动模式或者温启动模式定位时间的方法,具体可以采用现有技术中冷启动模式或者温启动模式定位时间的方法,这里不再赘述。
S203,通过捕获信号、跟踪、位同步,获取至少5颗卫星的发射时间小于20ms的部分和实时多普勒数据其中i表示每颗卫星的卫星号。
其中,每颗卫星的发射时间小于20ms的部分可以采用如下方式得到:分别提取每颗卫星的20ms内计数epochi、码片计数chipi和小数码片计数decimal_chipi,并分别求和,得到所述至少5颗卫星中每颗卫星的发射时间小于20ms的部分,即:
S204,选取信号质量最好的卫星作为基准卫星。
本实施例中,选取信号质量最好的卫星作为基准卫星。在具体实施中,可以通过计算得到的所述卫星的仰角elevi,提取得到的所述卫星的载噪比所述卫星所对应通道的通道质量,选取所述信号质量最好的卫星。
其中,所述卫星的仰角elevi可以采用如下方式获得:在获得本地实时时钟时间TRTC,并确定所述本地实时时钟时间TRTC在本地保存的星历数据EPHsv有效期内时,根据所述星历数据EPHsv计算出在TRTC时刻的卫星坐标并结合上一次定位点坐标(Ulastx,Ulasty,Ulastz),粗略计算出TRTC时刻所有可见卫星的仰角elevi,i表示可见卫星号。在计算出所有可见卫星仰角elevi,即可通过捕获卫星的信号对卫星进行跟踪,获得所跟踪卫星的载噪比以及所对应通道的通道质量等数据。根据所跟踪得到的卫星的仰角以及所获得的上述数据,即可确定每颗卫星的信号质量,进而可以从中选取出信号质量最好的卫星。
则所述信号质量最好的卫星的发射时间小于20ms部分可以表示为:
其中,i表示信号质量最好的卫星的卫星号。
S205,将所述本地实时时钟时间TRTC分解为大于20ms的部分TRTC_20ms_up和小于20ms的部分TRTC_20ms_down。
为描述方便,可以用如下关系式表示:
TRTC=TRTC_20ms_up+TRTC_20ms_down
S206,将所述本地实时时钟时间TRTC大于20ms部分TRTC_20ms_up与所述信号质量最好的卫星的发射时间小于20ms的部分进行求和运算,获得信号质量最好的卫星的一个新的发射时间
为描述方便,可以用如下关系式表示:
S207,根据所述星历数据EPHsv,计算在所述信号质量最好的卫星的新的发射时间时刻所述信号质量最好的卫星的坐标并结合所述上一次定位点坐标(Ulastx,Ulasty,Ulastz),解算所述信号质量最好的卫星的伪距进而获得本地接收机时间
所述信号质量最好的卫星的伪距用公式可以表示如下:
其中,表示由于地球自转导致的延迟距离。
本地接收机时间可以用如下关系式表示:
其中,C为光速。
S208,根据所述本地接收机时间所述星历数据EPHsv和所述实时多普勒数据推算在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星中每颗卫星的坐标速度发射时间和伪距,对在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星各自对应的伪距进行求导运算,并建立所述求导运算得到的伪距的导数与所述卫星对应的实时多普勒数据之间的关系式,通过数据变换,进行最小二乘法运算,获得所述本地接收机的当前定位点坐标(Ulastx,Ulasty,Ulastz)和所述定位点坐标(Ulastx,Ulasty,Ulastz)对应的接收时间。
其中,时刻的各卫星的伪距可以表示如下:
时刻各卫星的伪距可以表示如下:
对上述两式求导,分别得到:
上式可简化为:
其中,
建立方程有:
式中分别为i号卫星在和时刻的卫星坐标;
分别为i号卫星在和时刻的卫星速度。
其中与的单位均为秒,即:
本实施例定位解算过程中,所选择的是和这两个时刻的数据进行的解算。可以理解的是,也可以选择的和之外的其他时刻的数据进行定位解算。
若跟踪上5颗卫星,则可以建立如下矩阵:
式中,ti,αi,βi,γi分别代表如下表达式:
上述矩阵可以表示为:H·Δx=Δρ。
如前所述,可以采用多种方法进行定位解算,本实施例中以通过最小二乘法为例对Δx=(HTH)HTΔρ进行解算,即:
其中Δt是对本地接收机晶振因长期抖动造成的一个慢慢增大的误差修正(对ms级别以上的误差修正),而dδt是指本地接收机晶振实时抖动误差修正(ns级别),dUxdUydUz是对用户坐标的修正。
将新的(Ulastx,Ulasty,Ulastz)、δt代入S208,重新计算,得到新的(Ulastx,Ulasty,Ulastz)、δt,直到Δt误差小于20ms,即接收机时钟校正成功,(Ulastx,Ulasty,Ulastz)即为修正后的正确的所述接收机的当前定位点坐标,接收机定位结束。
这里20ms仅是本实施例所设置的一个阈值,在具体实施中,所设置的阈值越小,精度越高。
在具体实施中,本地实时时钟单元通常使用的是价格相对低廉的晶振,因此精度相对较低,因此本实施例中,只要确定所述本地实时时钟时间TRTC处于星历数据的有效期内,即使所述晶振的精度不高,通过上述运算,通过不断修正,获得的也是接收机精度较高的定位时间。因此在本实施例中,不需要对本地实时时钟单元的时钟偏差进行特别限制。
S209,进入温启动模式或者冷启动模式进行定位时间。
其中,在所述本地实时时钟时间TRTC未在本地保存的星历数据有效期内但在本地保存的历书数据有效期内时,进入温启动模式进行定位时间。在所述本地实时时钟时间TRTC未在本地保存的历书数据有效期内时,进入冷启动模式进行定位时间。
在具体实施中,所述历书的有效期时长可能有所不同,例如,可以是7天,一个月,三个月等。
可见,在热启动模式定位时间的过程中,仅需要根据获取到的本地实时时钟时间TRTC中大于20ms的部分以及位同步所获得的信号质量最好的卫星的发射时间的小于20ms的部分,即可进行定位,不需要进行子帧同步,而子帧同步最长需要6s时间,因此本实施例中的定位时间的方法可以大大缩短定位时间,提高定位速度。
并且,由于选取的是信号质量最好的卫星,因此可以减少由于信号干扰产生的误差,且由于每颗卫星的坐标、速度、发射时间和伪距等参数,都是基于所选取的信号质量最好的卫星计算得出的,因此可以避免由信号质量不稳定的卫星进行跟踪、提取数据所造成的误差,从而可以提高定位精度。
为使本领域技术人员更好地理解和实现本发明实施例,以下还通过具体实施例对上述定位方法实施例对应的GNSS接收机进行了详细的说明。
实施例三
参照图3所示的GNSS接收机,本实施例中的GNSS接收机300包括:第一时间获取单元301、卫星数据获取单元302、基准卫星确定单元303、第二时间获取单元304、第三时间获取单元305和定位解算单元306,其中:
第一时间获取单元301,用于从本地时钟单元获取本地实时时钟时间TRTC;
卫星数据获取单元302,用于当所述本地实时时钟时间TRTC在本地保存的星历数据有效期内时,通过捕获信号、跟踪、位同步,获取至少5颗卫星的发射时间小于20ms的部分和实时多普勒数据;
基准卫星确定单元303,用于从所述至少5颗卫星中选取1颗卫星作为基准卫星;
第二时间获取单元304,用于将所述本地实时时钟时间TRTC分解为大于20ms的部分和小于20ms的部分,将所述本地实时时钟时间TRTC大于20ms部分与所述基准卫星的发射时间小于20ms的部分进行求和,获得所述基准卫星的一个新的发射时间
第三时间获取单元305,用于根据所述星历数据,计算所述基准卫星的新的发射时间时刻所述基准卫星的坐标,并结合所述上一次定位点坐标,解算所述基准卫星的伪距,进而获得本地接收机时间
定位解算单元306,用于根据所述本地接收机时间所述星历数据和所述实时多普勒数据,通过定位解算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间。
可以理解的是,本地接收机即本发明实施例所提供的GNSS接收机,可以为GPS接收机,也可以为GLONASS、Galileo和Compass等卫星导航系统接收机。
在具体实施中,基准卫星确定单元303可以从所述至少5颗卫星中选取信号质量最好的卫星作为所述基准卫星。例如,基准卫星确定单元303可以根据计算得到的所述卫星的仰角,以及提取得到的所述卫星的载噪比、所述卫星所对应通道的通道质量,选取所述信号质量最好的卫星。
在具体实施中,卫星数据获取单元302可以分别提取所述至少5颗卫星中每颗卫星的20ms内计数、码片计数和小数码片计数,并分别求和,得到所述至少5颗卫星中每颗卫星的发射时间小于20ms的部分。
在具体实施中,定位解算单元306,可以根据所述本地接收机时间所述星历数据和所述实时多普勒数据,推算在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星中每颗卫星的坐标、速度、发射时间和伪距,并对在所述本地接收机时间时刻以及在本地接收机时间时刻所述至少5颗卫星各自对应的伪距进行求导运算,并建立所述求导运算得到的伪距的导数与所述卫星对应的实时多普勒数据之间的关系式,通过数据变换,进行最小二乘法运算,获得所述本地接收机的当前定位点坐标和所述当前定位点坐标对应的接收时间。
其中与的单位均为秒,即:
本实施例接收机在定位解算过程中,所选择的是和这两个时刻的数据进行的解算。可以理解的是,也可以选择的和之外的其他时刻的数据进行定位解算。
在具体实施中,为使所述GNSS接收机适应不同情况,参照图3,GNSS接收机300还可以包括温启动模式定位单元307以及冷启动模式定位单元308,其中:
温启动模式定位单元307,用于在确定所述本地实时时钟时间TRTC未在本地保存的星历数据有效期内但在本地保存的历书数据有效期内时,进入温启动模式进行定位时间;
冷启动模式定位单元308,用于在所述本地实时时钟时间TRTC未在本地保存的历书数据有效期内时,进入冷启动模式进行定位时间。
可见,本实施例中的GNSS接收机在热启动模式进行定位时间时,不需要进行子帧同步,而子帧同步在现有的方案中占用了大部分的定位时间,因此可以大大缩短定位时间,提高定位效率。
而且,选择信号质量最好的卫星作为基准卫星,可以减少由于信号干扰产生的误差,且由于每颗卫星的坐标、速度、发射时间和伪距等参数,都是基于所选取的信号质量最好的卫星计算得出的,因此可以避免由信号质量不稳定的卫星进行跟踪、提取数据所造成的误差,故可以提高定位精度。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。