全球定位系统中的接收机快速启动和定位的方法
技术领域
本发明涉及全球卫星定位与导航系统领域,尤其涉及在集成的快速捕获接收机(接收机基带处理芯片)中接收和跟踪的卫星信号,及快速实现接收机位置的定位。
背景技术
全球卫星定位与导航系统,例如美国的全球定位系统(GPS),包括一组发送GPS信号的一个卫星星座(又被称为Navstar卫星),该GPS信号能被接收机用来确定该接收机的位置。卫星轨道被安排在多个平面内,以便在地球上任何位置都能从至少四颗卫星接收该种信号。更典型的情况是,在地球上绝大多数地方都能从六颗以上卫星接收该种信号。
每一颗GPS卫星所传送的GPS信号都是直接序列扩展频信号。商业上使用的信号与标准定位服务(SPS)有关,而且被称之为粗码(C/A码)的直接序列二相扩展信号,在1575.42MHz的载波下,具有每秒1.023兆码片的速率。伪随机噪声(PN)序列长度是1023个码片,对应于1毫秒的时间周期。每一颗卫星发射不同的PN码(Gold码),使得信号能够从几颗卫星同时发送,并由一接收机同时接收,相互间几乎无干扰。术语“卫星星号”和这个PN码相关,可以用以标示不同的GPS卫星。
GPS的调制信号是导航电文(又被称为D码)和PN码的组合码。导航电文的速率为每秒50比特。D码的基本单位是一个1500比特的主帧,主帧又分为5个300比特的子帧。其中子帧一包含了标识码,星种数据龄期,卫星时钟修正参数信息。子帧二和子帧三包含了实时的GPS卫星星历(ephemeris),星历是当前导航定位信息的最主要内容。子帧四和子帧五包含了1-32颗卫星的健康状况,UTC校准信息和电离层修正参数及1-32颗卫星的历书(alamanc)。历书是卫星星历参数的简化子集。其每12.5分钟广播一次,寿命为一周,可延长至2个月。
GPS接收机的主要目标之一是确定PN码的到达时间。术语“GPS到达之间”指GPS卫星PN码到达GPS接收机的时间。这是通过将(每一接收信号)本地产生的PN参考信号与接收的信号相比并且“滑动”本地基准直至与接收信号在时间上对齐来完成的。通过称之为“相关”的相乘和积分过程,将这两个信号相互比较。当两个信号在时间上是对齐时,输出的结果为最大。如果每半个码片的时间里作一次这样的比较,那么在一个PN信号出现时间里,需要完成搜索2046次比较。必须对所有卫星都进行这样的搜寻以确定哪些卫星在视线之内。另外,接收信号频率的误差(这个偏差是由卫星相对于接收机运动产生的多普勒效应导致)经常要求对信号频率的各种假设进行附加的搜寻。换而言之,这个搜索过程需要通过搜索取定三个未知量:可见的卫星星号,该卫星的载波频率和PN码的码相位。搜索过程在商业化接收机(基带处理芯片)通常采取大规模相关器并行的方式加速捕获过程。然而,这样的搜索和捕获过程依然很费时。同时过大规模的并行相关器还会导致功耗和成本的大幅度增加等诸多负面问题。
术语“GPS启动时间”是衡量GPS基带处理芯片性能的重要指标之一。GPS启动时间包括热启动时间、温启动时间和冷启动时间。术语“启动时间”是指GPS接收机从上电到输出首次定位结果的时间差。术语“热启动时间”是指在已知用户位置和GPS卫星星历情况下的启动时间。术语“温启动时间”是指在已知用户位置、用户时间及GPS卫星历书的启动时间。术语“冷启动时间”是指在无任何先验信息的启动时间。
通常GPS基带芯片在没有任何先验信息的前提下需要通过下一系列过程才能正常定位:首先进入捕获状态搜索卫星,这个过程包括搜索用户可见的卫星号和该卫星发射信息的频率。一旦搜索到可用的卫星,则通过一个频率牵引过程转入跟踪状态,使接收机的频率和码相位和捕获的GPS卫星一致。在跟踪状态下,接收机可以解调载波信息获得GPS广播的星历和历书信息,同时计算GPS卫星到达时间。获得上述信息后,接收机即可解算出接收机位置。这样一个过程通常时间很长(>2分钟),GPS用户往往期望更高的启动速度。
很多情况下,接收机启动与其最后一次运行(指已经计算出定位结果)有某些相关性,这些相关性包括:接收机启动时所在的位置和接收机最后一次运行的位置相差不大(例如小于15千米);接收机启动时和接收机最后一次运行时间间隔较小(对热启动小于10秒,对于温启动或者小于2个月)。在这些前提下,GPS可以获得一系列先验信息,从而可以通过各种方式大大提高启动和定位速度,这就是所谓的热启动和温启动。如何提高接收机的热启动时间和温启动时间是GPS基带处理的一个重要研究方向。
发明内容
本发明目的是公开一种全球定位系统接收机的快速启动和定位方法。该方法在一般冷启动(无任何先验信息)的基础上,增加了基于先验信息的混合热启动和温启动的快速启动方法与快速定位方法;单一温启动方法,以及上述所有先验信息的获取方法。具体包括如下步骤:
确定接收机的先验信息;
确定并存储接收机最后一次运行的第一时间;
确定接收机重启时来自实时时钟的第二时间;
根据第一时间与第二时间之差,从混合热启动方法,单一温启动方法,冷启动方法中选择一种方法启动。
进一步,所述先验信息是指接收机最后一次运行的、位置、速度和方向。
进一步,所述方法中,如果第一时间与第二时间之差小于星历有效期,则使用混合热启动方法,并在该方法下实现快速定位;如果第一时间与第二时间之差大于星历有效期且小于历书有效期,则使用单一温启动方法;如果第一时间与第二时间之差大于历书有效期,则使用冷启动方法启动。
进一步,所述方法中,需要为热启动以及混合热启动中的热启动部分确定的先验信息包括:来自实时时钟的重启时间,接收机最后一次运行的调和世界时(UTC)时间,处于跟踪状态的卫星星号,多普勒频偏和伪随机噪声(PN)码码相位。
进一步,所述方法中,需要为温启动以及包括混合热启动中的温启动部分确定的先验信息包括:来自实时时钟的重启时间、接收机位置与速度和历书。
进一步,所述方法中,需要为快速定位确定的先验信息为包括:接收机最后一次运行时处于跟踪状态的卫星的星号和星历。
所述方法中的混合热启动方法是混合了热启动和温启动的方法,、包括以下步骤:
利用热启动方法预测可见卫星;
利用温启动方法预测可见卫星;
扣除温启动预测卫星中与热启动方法相同的卫星;
预测热启动卫星的频偏以及伪随机噪声(PN)码码相位;
预测温启动卫星的频偏;
使用上述信息初始化接收机各个通道,开始捕获过程。
进一步,如果预测卫星是由混合热启动方法中热启动方法预测的,且存在大于或等于四颗该种预测卫星处于跟踪状态,则可以实现快速度定位,该方法包括以下步骤:
如果热启动卫星处于跟踪状态则计算全球定位系统(GPS)信号到达时间;
检测星历是否接收完成;
如果星历接收没有完成,则使用存储的星历计算卫星位置,进而解算接收机位置,即实现快速定位;
如果星历接收完成,则使用新解调出的星历计算卫星位置,进而解算接收机位置,同时更新存储的星历。
进一步,所述热启动方法根据接收机最后一次运行处于跟踪状态的卫星作预测。
进一步,所述方法中使用存储的载噪比估算值作为选择卫星的依据。
进一步,所述热启动方法中,利用存储的热启动卫星频偏规整到搜索步长单位,同时为其生成一个特定优化规则的频率搜索空间用以初始化搜索通道。
所述温启动方法包括以下步骤:
从实时时钟获得重启时的调和世界时(UTC)时间;
利用历书计算卫星位置;
利用卫星位置和存储的接收机位置计算卫星相对接收机的仰角;
选取可见卫星;
预测可见卫星的多普勒频偏。
进一步,所述温启动方法中,利用卫星相对接收机的仰角大于零作为卫星可见的条件。进一步,所述温启动方法中,利用卫星相对接收机的仰角和接收功率最大时的仰角之差作为选取预测卫星的标准。
进一步,所述温启动方法中,利用预测的温启动卫星频偏规整到搜索步长单位,同时为其生成一个特定优化规则的频率搜索空间用以初始化搜索通道。
进一步,所述方法中,如果热启动预测卫星和温启动预测卫星星号相同,则优先使用热启动预测卫星。
进一步,所述生成频率搜索空间的方法中的搜索步长和搜索频点与预测频偏之见的距离成反比。
进一步,其中预测热启动卫星伪随机噪声(PN)码码相位的方法包括以下步骤:
确定接收机最后一次运行的第一时间;
获得接收机最后一次运行处于跟踪状态的卫星的伪随机噪声(PN)码码相位;
确定接收机重启时来自实时时钟的第二时间;
根据第一时间与第二时间之差,外推重启时热启动卫星的伪随机噪声(PN)码码相位;
根据预测的伪随机噪声(PN)码码相位生成码相位搜索空间用以初始化搜索通道。
进一步,采用该方法的接收机拥有一个实时时钟。所述实时时钟能够被接收机计算出的调和世界时(UTC)时间进行校准,并能被接收机随时读取。而且,所述实时时钟能够通过外部电池供电保证接收机掉电后可以继续工作。
本发明的方法能够大大提高了接收机的启动速度。本发明的一个实施例可以实现在相关器数量相对很小的情况下(12通道,每个通道6个共72个相关器)仍能达到很高的热启动速度(<5秒50%几率)和温启动速度(<40秒50%几率)。这种快速启动和定位方法适用于任意的多通道全球定位系统接收机,高效实用,且芯片面积开销小,成本低。
附图说明
图1是无辅助信息下的GPS接收机启动至解算定位流程图;
图2是本发明的一个较优实施例的硬件结构框图;
图3是本发明的一个较优实施例的整体流程框图;
图4是本发明的一个较优实施例的温启动流程框图;
图5是GPS信号的接收功率与卫星相对接收机仰角关系图;
图6是本发明的一个较优实施例的基于预测多普勒的频率搜索空间示意图;
图7是本发明的一个较优实施例的混合热启动流程框图;
图8是本发明的一个较优实施例的先验信息存储流程框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
图1描述了一个典型的无辅助信息下的GPS接收机启动流程。GPS基带芯片是GPS接收机中处理基带信号芯片,是整个GPS接收机中的核心。本发明的各种方法均在GPS基带芯片中实现。为方便起见,本发明中“接收机”均指“GPS基带芯片”。
图1所示过程是从接收机上电初始化101开始,直至解算出用户位置106结束。术语“GPS启动时间”指的是这个过程所耗费时间。为简单起见,本发明中,各种启动时间均指GPS接收机(GPS基带芯片)的启动时间。
通常接收机上电后进入捕获状态102,搜索视线内的卫星、该卫星的载波频率和PN码的码相位。这个状态下对载波频率的搜索是粗糙的,通常在数百赫兹的量级。之后进入频率牵引状态103,把本地频率牵引到和卫星载波频率相差几个赫兹的量级,同时进行比特同步。完成频率牵引后,接收机进入跟踪状态104,完成帧同步,即可以进入解调电文状态105,将载波上调制的电文解调出来用于在随后的解算状态106下计算接收机位置。
图2描述的是本发明的一个较优实施例硬件结构框图。这是一个针对GPS的12通道基带处理芯片。嵌入式处理器201用于控制整个芯片同时完成解调电文和解算接收机位置的工作。12通道相关器203用于相关操作。并行控制器202控制12通道相关器,同时完成相关器和嵌入式处理器的交互。该基带处理芯片还拥有片内RAM 205供嵌入式处理器使用;片内Flash 206用以存储程序和为快速启动服务的先验信息。同时该芯片还拥有一个高精度的实时时钟用以提供时间基准。该实时时钟可被嵌入式处理器计算出的UTC时间(协调世界时)更新。同时该时钟可以由片外电池独立供电,保证系统掉电的情况下仍能正常工作。该时钟确定接收机最后一次运行的第一时间,以及确定接收机重启时的第二时间。片内RAM、片内Flash和实时时钟通过内部总线204和嵌入式处理器相连。本发明的另外一个实施例中,RAM、Flash和实时时钟都由片外芯片实现。
图3描述的是本发明的一个较优实施例整体软件流程框图。系统上电后,接收机首先进行初始化301,确定热启动方法,温启动方法以及混合启动方法中需要的先验信息。随即从片内Flash 206读取存储的最后一次运行时间302。该时间的存储方法将在图8中详细描述。然后从实时时钟207获取系统当前运行时间303。计算两次运行时间之差304,如果该时间差小于t1 305,即星历有效期内(通常长达2个小时左右,本发明的一个较优实施例中使用60秒作为门限),例如0~10秒,则使用混合热启动308方法启动(具体过程在图6中详述);如果该时间差大于t1而小于t2306,即大于星历有效期而小于历书有效期(通常为一个月,本发明的一个较优实施例中经过扩展使用2个月作为门限),例如10秒~604800秒,则使用温启动方式启动309,具体过程在图4中详述;如果该时间差大于t2则使用没有辅助信息的冷启动307方式启动。随后接收机进入和类似图1所示过程,即捕获310,频率牵引311,跟踪312,解调电文313,直至解算出用户位置314。术语“热启动卫星”是指通过热启动方法(混合热启动中的热启动部分)预测的可见卫星。术语“温启动卫星”是指通过温启动方法(混合热启动中的温启动部分及单一温启动)预测的可见卫星。
图4描述了本发明的一个较优实施例温启动流程框图。接收机如图3中所示选择温启动后首先初始化401,随后从实时时钟读取当前的运行时间402,从Flash中读取接收机最后一次运行时记录的接收机位置和速度403,同时读取存储的星历历书404,该历书的存储在图8中详细说明。之后利用当前时间、卫星历书接收机速度即可以计算所有32颗卫星的位置405及卫星相对接收机的多普勒频偏406。利用用户位置和卫星位置即可以计算出卫星相对接收机的仰角407。该计算过程如下
其中为卫星的坐标,
为接收机位置指向卫星位置的矢量
卫星相对接收机的仰角大于零说明该卫星理论上是可见的,因而将其作为卫星可见的条件。进一步地,因为卫星相对用户仰角为40度时,接收的GPS信号功率最大(见图5),所以对各卫星仰角和40度的差值进行排序,选取差值较小的卫星作为目标卫星搜索,即利用卫星相对接收机的仰角和接收功率最大时的仰角之差作为选取预测卫星的标准。同时为这些卫星跟据其预测的多普勒频偏生成各自最优的频率搜索空间409。该空间由图6所示的规则。由频率搜索空间初始化各个通道410,即进入捕获411,之后的流程和图1所示的过程频率迁移103到解算106的过程相同。
图5描绘了GPS信号的接收功率与卫星相对接收机仰角的关系。图中可见卫星相对接收机的仰角在40度左右时,接收机接收到的GPS信号功率有最大值,而在相对接收机的天顶和地平线处的接收功率有最小值。
图6描绘了本发明的一个较优实施例的基于预测多普勒的频率搜索空间图样。图中的f是图4 406步骤所预测的卫星多普勒频偏。Δ为频率搜索的步长单位。本实施例中的搜索步长是可变的,为Δ的整数倍。搜索步长以预测的频偏为原点,正负两个方向逐步放大,直至到步长的最大值(例如5Δ)后保持该步长不变。这个步长的最大值是由锁频环的最大频率牵引能力和频率收敛速度平衡后的结果,一个典型值为500赫兹。整个频率搜索空间覆盖卫星信号可能产生的最大多普勒频率偏移范围。这个范围针对低动态接收机典型范围为-5千赫兹到+5千赫兹,对于高动态接收机而言典型值为-10千赫兹到+10千赫兹。通过使用这种搜索空间,即可以实现预测频偏周围的频段使用短步长搜索,在远离预测频偏的频段使用长步长搜索,也即实现搜索步长和搜索频点与预测频偏之见的距离成反比的效果。
图7描述了本发明的一个较优实施例的混合热启动流程。热启动方法针对接收机重启时间间隔较短的情况。该情况下,接收机最后一次运行处于跟踪状态的卫星重启后依然在视线内的几率很大,且频偏变化不大,通常只有每秒1赫兹的偏移率。以此作为预测的基准,在已知关机时间和重启时间则可以预测重启后可见卫星的星号、信号频偏。另外因为已知关机时的可见卫星的PN码码相位,可以外推出重启后的码相位。又因为星历已知,在其有效期内,只要计算出信号到达时间利用储存的星历即可以解算用户位置。但是单纯热启动有某些缺点:例如,最后一次运行处于跟踪状态的卫星可能只有少数几颗,热启动后大量通道资源被浪费,同时一旦预测失败,再次定位的时间可能很长。本发明中提出了一套简单可靠、能够快速捕获并能快速解算接收机位置的热启动方法,同时将温启动方法加入到通常意义下的热启动中,形成了独特的混合热启动方式,提高了预测命中率,同时没有增加额外的硬件。具体过程如下:由图3中309触发热启动后,系统首先初始化701,随即读取存储的先验信息702。这些信息包括:来自实时时钟接收机重启时的当前运行时间(第二时间),接收机最后一次运行的UTC时间(第一时间)、位置、速度、方向,卫星历书,接收机最后运行时处于跟踪状态且星历接收完整的卫星星号、频偏、码相位、载噪比及星历。这些信息的存储过程将在图8中详细解释。进一步地,计算第一时间与第二时间之差,用于混合启动中的热启动部分,特别是用以计算热启动卫星PN码码相位。
进一步地,以载噪比的估计作为依据选取热启动卫星703,本实施例中选取四颗卫星用于热启动,因为四颗卫星即可以实现定位的最低要求。当然在其他实施例中可以选取更多的热启动卫星。其中载噪比是通过如下的公式进行估计,在捕获过程中实现。
其中I为某通道同向采样信号,Q为某通道正交项采样信号,K=50,M=20
随后利用热启动卫星存储的频偏规整到搜索步长单位,进而生成各自最优的频率搜索空间704,频率搜索空间图样和图6所示的图样相同,当然,也可以使用其他形式的图样。利用实时时钟的当前时间和存储的该卫星码相位预测卫星的码相位,同时生成最优的码相位搜索空间705。之后进入类似温启动的过程,即利用历书预测可见卫星及其频偏706,同时生成各自最优的搜索空间的过程707。这个过程和图四所示的404-409过程是完全一致的。之后从温启动预测的队列中扣除和热启动预测卫星相同的卫星708,保证两种方法没有重复的预测卫星。如果热启动预测卫星和温启动预测卫星星号相同,则优先使用热启动预测卫星。用预测的频偏和码相位搜索空间初始化各个通道709。进入图1类似的解算过程。首先进入捕获过程710,如果捕获成功712则进入频率牵引状态713,否则重新进入捕获状态710。检测频率牵引是否成功,若成功则进入跟踪状态714,否则经过更换一个尚未搜索的卫星号711重新进入捕获状态。进入跟踪之后即可以计算出GPS信号到达时间716,同时记录所下次启动时所需要的先验信息717。这个获取先验信息的过程将在图8中详述。随后检测处于跟踪状态的卫星星历是否接收完成718。如果不是,解调电文719的同时,检测所跟踪的卫星是否为热启动预测的卫星720。如果所跟踪的卫星是热启动所预测卫星,即其星历已经被存储而已知,则直接使用存储的星历721,即可以实现快速解算接收机位置。否则,则使用解调出的星历722计算卫星位置代替存储的旧卫星。当热启卫星解调后的星历完整718后,即使用解调出的星历解算卫星位置,同时更新存储的星历。如果大于四颗卫星可用,即可计算接收机位置724。之后重新进入捕获,进行新一轮的解算。
特别的,如果预测卫星是由混合热启动方法中热启动方法预测的,且存在大于或等于四颗该种预测卫星处于跟踪状态,则可以实现快速度定位。如前所述,热启动卫星进入跟踪之后则计可以算GPS信号到达时间。进一步地检测星历是否接收完成。如果星历接收没有完成,则使用存储的星历计算卫星位置,进而解算接收机位置,即实现快速定位。如果星历接收完成,则使用新解调出的星历计算卫星位置,进而解算接收机位置,同时更新存储的星历。
图8描述了本发明的一个较优实施例的先验信息存储流程。所有热启动、温启动都是基于先验信息的。这些先验信息必须在合适的时候存储并存储,以保证重启后这些存储的信息都是表征系统关机前的最新信息。接收机进入跟踪状态801之后,即可以存储处于跟踪状态的卫星星号,多普勒频偏和码相位802,并可以计算并存储载噪比803。进入跟踪状态的卫星即可以开始解调电文804,当电文完整805后即可以存储星历和历书806。此时的UTC校准信息已经完整,可以利用这些信息通过GPS时间计算出UTC时间并将其存储807,同时可以用这个时间更新实时时钟808。这个从GPS时间到UTC时间的转换方法在Interface Control Document(ICD-GPS-200)P145—P148已经有了完整的描述。当有效卫星大于等于4颗时,即可以解算出接收机位置809,即可存储接收机位置及速度810。至此,一次解算过程结束,可以从捕获开始新一轮解算。
尽管本发明的方法和装置是参照GPS卫星来描述的,但应当理解,这些原理同样适用于采用假卫星(pseudolites)或卫星与假卫星的组合的定位系统。假卫星是一种基于地面的发射机,它传播调制在L频段在波信号上PN码(与GPS信号相似),并且通常是与GPS时间同步的。每一发射机可以被赋予一个独特的PN码,从而允许由远端接收机进行识别。假卫星用在这样的情况下,即,来自轨道卫星的GPS信号缺失,如隧道、矿山、建筑物或者其他的封闭区及明显遮挡。这里所使用的术语“卫星”包括假卫星或假卫星的等效,而这里所使用的术语GPS信号包括来自假卫星或者假卫星等效的类似GPS的信号。
在前面的讨论中,本发明是参照美国全球定位系统(GPS)来描述的。然而,应当理解,这些方法同样适用于类似的卫星定位系统,如俄罗斯的格洛纳斯(Glonass)系统,欧洲的伽利略(Galileo)系统和中国的北斗1及北斗2系统。所使用的术语“GPS”还包括这样一些卫星定位系统,如俄罗斯的格洛纳斯(Glonass)系统,欧洲的伽利略(Galileo)系统和中国的北斗1及北斗2系统。术语“GPS信号”包括来自另一些卫星定位系统的信号。
上文中,已经描述了通过快速启动与定位方法实现GPS接收机的系统。尽管本发明是参照特定实施例来描述的,但很明显,本领域的普通技术人员,在不偏移权利要求书所限定的发明范围和精神的情况下,还可以对这些实施例作各种修改和变更。因此,说明书和附图是描述性的,而不是限定性的。
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变换或替换,都应涵盖在本发明的包含范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。