一种定位方法和装置制造方法

文档序号:8005554阅读:187来源:国知局
一种定位方法和装置制造方法
【专利摘要】本发明提供一种定位方法和装置,其中,定位方法包括:在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表;确定时间服务器列表中响应时间最短的时间服务器和A-GPS服务器列表中响应时间最短的A-GPS服务器;根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位。提高了定位过程中的搜星速度和获取时间服务器上的当前时间的速度,从而提高了定位速度。
【专利说明】一种定位方法和装置
【技术领域】
[0001]本发明涉及通信【技术领域】,尤其涉及一种定位方法和装置。
【背景技术】
[0002]现有技术中,当移动终端进行定位时,移动终端首先从配置文件gps.conf中获取A-GPS服务器标识,根据A-GPS服务器标识获取A-GPS服务器上保存的移动终端所在区域内的卫星星历图,根据卫星星历图确定需要进行跟踪的GPS卫星,获取进行跟踪的GPS卫星发送的导航电文,根据导航电文中携带的发送导航电文的卫星时间,以及从配置文件gps.conf中的时间服务器标识对应的时间服务器获取到的接收导航电文的标准时间,获取移动终端到GPS卫星的距离,综合移动终端到多个GPS卫星的距离以及多个GPS卫星的位置,计算移动终端所在的位置。
[0003]然而现有技术中,移动终端上的A-GPS服务器和时间服务器都是由厂商提前进行配置的,例如,厂商一般将时间服务器配置为北美地区的时间服务器,将A-GPS服务器配置为位于国外的谷歌的服务器,由于移动终端距离时间服务器和A-GPS服务器的距离较远,导致移动终端从时间服务器、A-GPS服务器上获取参数的时间较长,移动终端的定位速度较慢。

【发明内容】

[0004]本发明提供一种定位方法和装置,用于解决现有技术中定位速度较慢的问题。
[0005]本发明的第一个方面是提供一种定位方法,包括:
[0006]在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表;
[0007]确定所述时间服务器列表中响应时间最短的时间服务器和所述A-GPS服务器列表中响应时间最短的A-GPS服务器;
[0008]根据所述响应时间最短的时间服务器和所述响应时间最短的A-GPS服务器对所述终端进行定位。
[0009]如上所述的定位方法,所述确定所述时间服务器列表中响应时间最短的时间服务器和所述A-GPS服务器列表中响应时间最短的A-GPS服务器,包括:
[0010]向所述时间服务器列表中的时间服务器和所述A-GPS服务器列表中的A-GPS服务器发送测试信息;
[0011]接收各个时间服务器和各个A-GPS服务器返回的响应信息,所述响应信息中携带响应时间;
[0012]分别根据各个时间服务器的响应信息和各个A-GPS服务器的响应信息确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
[0013]如上所述的定位方法,所述根据所述响应时间最短的时间服务器和所述响应时间最短的A-GPS服务器对所述终端进行定位,包括:[0014]根据所述响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据确定至少3个待跟踪GPS卫星;
[0015]接收待跟踪GPS卫星发送的导航电文,所述导航电文包括:卫星时间和待跟踪GPS卫星的卫星星历数据;
[0016]从所述响应时间最短的时间服务器上获取接收所述导航电文的当前时间;
[0017]根据所述当前时间和所述卫星时间的差值,确定待跟踪GPS卫星到所述终端的距离;
[0018]根据所述待跟踪GPS卫星的卫星星历星历数据计算在卫星时间时待跟踪GPS卫星所处的位置;
[0019]根据待跟踪GPS卫星的位置以及待跟踪GPS卫星到所述终端的距离,确定所述终端的位置。
[0020]如上所述的定位方法,若所述终端中未存储A-GPS服务器列表,所述方法还包括:
[0021]获取所述终端维护的星历数据服务器列表;
[0022]确定所述星历数据服务器列表中响应时间最短的星历数据服务器;
[0023]根据所述响应时间最短的时间服务器和所述响应时间最短的星历数据服务器对所述终端进行定位。
[0024]本发明的另一个方面提供一种定位装置,包括:
[0025]获取模块,用于在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表;
[0026]确定模块,用于确定所述时间服务器列表中响应时间最短的时间服务器和所述A-GPS服务器列表中响应时间最短的A-GPS服务器;
[0027]定位模块,用于根据所述响应时间最短的时间服务器和所述响应时间最短的A-GPS服务器对所述终端进行定位。
[0028]如上所述的定位装置,所述确定模块具体用于,向所述时间服务器列表中的时间服务器和所述A-GPS服务器列表中的A-GPS服务器发送测试信息;
[0029]接收各个时间服务器和各个A-GPS服务器返回的响应信息,所述响应信息中携带响应时间;
[0030]分别根据各个时间服务器的响应信息和各个A-GPS服务器的响应信息确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
[0031]如上所述的定位装置,所述定位模块具体用于,根据所述响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据确定至少3个待跟踪GPS卫星;
[0032]接收待跟踪GPS卫星发送的导航电文,所述导航电文包括:卫星时间和待跟踪GPS卫星的卫星星历数据;
[0033]从所述响应时间最短的时间服务器上获取接收所述导航电文的当前时间;
[0034]根据所述当前时间和所述卫星时间的差值,确定待跟踪GPS卫星到所述终端的距离;
[0035]根据所述待跟踪GPS卫星的卫星星历星历数据计算在卫星时间时待跟踪GPS卫星所处的位置;
[0036]根据待跟踪GPS卫星的位置以及待跟踪GPS卫星到所述终端的距离,确定所述终端的位置。
[0037]如上所述的定位装置,所述获取模块还用于,若所述终端中未存储A-GPS服务器列表,则获取所述终端维护的星历数据服务器列表;
[0038]确定模块还用于,确定所述星历数据服务器列表中响应时间最短的星历数据服务器;
[0039]定位模块还用于,根据所述响应时间最短的时间服务器和所述响应时间最短的星历数据服务器对所述终端进行定位。
[0040]本发明中,通过获取响应时间最短的时间服务器和响应时间最短的A-GPS服务器,根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位,提高了定位过程中的搜星速度和获取时间服务器上的当前时间的速度,从而提高了定位速度。
【专利附图】

【附图说明】
[0041]图1为本发明提供的定位方法一个实施例的流程图;
[0042]图2为本发明提供的定位装置一个实施例的结构示意图。
【具体实施方式】
[0043]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0044]图1为本发明提供的定位方法一个实施例的流程图,如图1所示,包括:
[0045]101、在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表。
[0046]本发明的执行主体为定位装置,定位装置的具体表现形式可以为终端或者终端中的定位软件。在获取终端维护的时间服务器列表和A-GPS服务器列表之前,终端需要通过设置菜单,开启GPS/A-GPS定位功能。
[0047]其中,预设的时间阈值为终端根据终端的定位速度进行确定的。例如,可以将预设的时间阈值设置为30秒。终端维护的时间服务器(Network Time Protoco 1_SERVER, NTP_SERVER)列表和A-GPS服务器(Secure User Plane Location_H0ST,SUPL_H0ST)列表可以由终端的厂商在出厂前进行设置,也可以由终端用户通过接口或操作界面主动进行设置。时间服务器列表还可以由终端用户主动通过网站http://www.pool.ntp.0rg获取的全球或当地可用的时间服务器列表。时间服务器提供精确时间,一般是国际标准时间(UniversalTime Coordinated, UTC),时间服务器获得UTC的时间来源可以是原子钟、天文台、卫星等。A-GPS服务器列表中还可以包括A-GPS服务器的端口号(SUPL_P0RT);
[0048]可选的,终端可以根据维护的标志位,判断用户是否是首次使用定位服务。若标志位为0,则表示终端首次使用定位服务,终端可以先根据维护的时间服务器列表中各时间服务器的响应时间确定响应时间最短的时间服务器,并根据维护的A-GPS服务器列表中各A-GPS服务器的响应时间确定响应时间最短的A-GPS服务器,再根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器进行定位;若标志位为1,则表示终端不是首次使用定位服务,终端可以根据配置文件直接进行定位。在终端出厂或重置时,将标志位归为O ;当终端开启过GPS/A-GPS定位功能后,将标志位改为I。
[0049]在定位过程中,终端可以实时判断定位时间是否超过预设的时间阈值,在定位时间超过预设的时间阈值时,终止定位过程,确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器,若终端确定的响应时间最短的时间服务器与配置文件中的时间服务器是同一个服务器,且终端确定的响应时间最短的A-GPS服务器与配置文件中的A-GPS服务器是同一个服务器,说明配置文件中的时间服务器和A-GPS服务器已经是响应时间最短的服务器,则终端定位失败;若终端确定的响应时间最短的时间服务器与配置文件中的时间服务器不是同一个服务器,或者,终端确定的响应时间最短的A-GPS服务器与配置文件中的A-GPS服务器不是同一个服务器,则重新进行定位。
[0050]102、确定时间服务器列表中响应时间最短的时间服务器和A-GPS服务器列表中响应时间最短的A-GPS服务器。
[0051]可选的,终端确定时间服务器列表中响应时间最短的时间服务器和A-GPS服务器列表中响应时间最短的A-GPS服务器的具体方式可以为:向时间服务器列表中的时间服务器和A-GPS服务器列表中的A-GPS服务器发送测试信息;接收各个时间服务器和各个A-GPS服务器返回的响应信息,响应信息中携带响应时间;分别根据各个时间服务器的响应信息和各个A-GPS服务器的响应信息确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
[0052]可选的,终端向时间服务器列表中的时间服务器和A-GPS服务器列表中的A-GPS服务器发送的测试信息具体可以为网络命令PING测试。例如,终端根据各个时间服务器的响应信息确定响应时间最短的时间服务器的具体方式可以为:终端根据各个时间服务器的响应时间,按照冒泡算法进行升序或降序排序,将升序排序结果中的第一个时间服务器或降序排序结果中的最后一个时间服务器作为响应时间最短的时间服务器。
[0053]另外,终端可以将响应时间最短的时间服务器和响应时间最短的A-GPS服务器写入终端中的system—>etc目录下的配置文件gps.conf,以便终端进行定位时,从gps.conf中获取响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
[0054]实际中,距离终端越近的时间服务器的响应时间越短,距离终端越近的A-GPS服务器的响应时间越短。通过在首次定位或者在定位时间超过预设的时间阀值时,确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器,可以使得终端自动对配置文件gps.conf进行优化,实时保证配置文件中的时间服务器为响应时间最短的时间服务器,并实时保证配置文件中的A-GPS服务器为响应时间最短的A-GPS服务器,方便终端根据配置文件进行快速定位。
[0055]103、根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位。
[0056]其中,终端根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位的具体过程可以为:根据响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据确定至少3个待跟踪GPS卫星;
[0057]接收待跟踪GPS卫星发送的导航电文,导航电文包括:卫星时间和待跟踪GPS卫星的卫星星历数据;
[0058]从响应时间最短的时间服务器上获取接收导航电文的当前时间;
[0059]根据当前时间和卫星时间的差值,确定待跟踪GPS卫星到终端的距离;
[0060]根据待跟踪GPS卫星的卫星星历星历数据计算在卫星时间时待跟踪GPS卫星所处的位置;
[0061]根据待跟踪GPS卫星的位置以及待跟踪GPS卫星到终端的距离,确定终端的位置。
[0062]进一步地,在终端进行定位的过程中,终端实时记录定位时间,在终端定位成功后,终端可以将定位时间归为O。
[0063]本实施例中卫星到用户接收机之间的距离可以通过公式:距离=光速*时间差值来确定。对终端进行定位采用的参考坐标系可以为WGS-84大地坐标系(World GeodeticSystem-1984Coordinate System)。导航电文中除了卫星时间和待跟踪GPS卫星的卫星星历数据之外,还可以包括工作状况、时钟改正、电离层时延修正、大气折射修正等信息,用于对导航电文中的卫星时间和待跟踪GPS卫星所处的位置进行校正。响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据可以包含当地区可用的卫星频段、方位、仰角等信息,终端根据上述信息搜索卫星,不需要在全频段大范围搜索卫星,而且终端通过网络获取A-GPS服务器上的卫星星历数据,网络数据传输速度比卫星链路快,大大提高了搜星的速度。
[0064]本实施例中,终端通过获取响应时间最短的时间服务器和响应时间最短的A-GPS服务器,根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位,提高了定位过程中的搜星速度和获取时间服务器上的当前时间的速度,从而提高了定位速度。
[0065]进一步地,若终端中未存储A-GPS服务器列表,为了提高定位速度,图1所示的定位方法还可以包括:获取终端维护的星历数据服务器列表;
[0066]确定星历数据服务器列表中响应时间最短的星历数据服务器(eXTendedReceiver Assistance_SERVER, XTRA_SERVER);
[0067]根据响应时间最短的时间服务器和响应时间最短的星历数据服务器对终端进行定位。
[0068]其中,XTRA_SERVER上包含预测的7天之内的所有卫星的星历数据,即卫星的星历表和年历。终端维护的星历数据服务器列表中一般可包含有三个XTRA_SERVER,即:
[0069]XTRA_SERVER_l=http://xtral.gpsonextra.net/xtra.bin
[0070]XTRA_SERVER_2=http://xtra2.gpsonextra.net/xtra.bin[0071 ] XTRA_SERVER_3=http://xtra3.gpsonextra.net/xtra.bin
[0072]确定星历数据服务器列表中响应时间最短的星历数据服务器的具体过程与图1所示实施例中确定A-GPS服务器列表中响应时间最短的A-GPS服务器的具体过程类似,根据响应时间最短的时间服务器和响应时间最短的星历数据服务器对终端进行定位的具体过程与图1所示实施例中根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位的具体过程类似,此处不再进行赘述。
[0073]本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0074]图2为本发明提供的定位装置一个实施例的结构示意图,如图2所示,包括:
[0075]获取模块21,用于在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表;
[0076]确定模块22,用于确定时间服务器列表中响应时间最短的时间服务器和A-GPS服务器列表中响应时间最短的A-GPS服务器;
[0077]定位模块23,用于根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位。
[0078]可选的,确定模块22确定时间服务器列表中响应时间最短的时间服务器和A-GPS服务器列表中响应时间最短的A-GPS服务器的方式具体可以为,向时间服务器列表中的时间服务器和A-GPS服务器列表中的A-GPS服务器发送测试信息;接收各个时间服务器和各个A-GPS服务器返回的响应信息,响应信息中携带响应时间;分别根据各个时间服务器的响应信息和各个A-GPS服务器的响应信息确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
[0079]可选的,定位模块23根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位的方式具体可以为,根据响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据确定至少3个待跟踪GPS卫星;接收待跟踪GPS卫星发送的导航电文,导航电文包括:卫星时间和待跟踪GPS卫星的卫星星历数据;从响应时间最短的时间服务器上获取接收导航电文的当前时间;根据当前时间和卫星时间的差值,确定待跟踪GPS卫星到终端的距离;根据待跟踪GPS卫星的卫星星历星历数据计算在卫星时间时待跟踪GPS卫星所处的位置;根据待跟踪GPS卫星的位置以及待跟踪GPS卫星到终端的距离,确定终端的位置。
[0080]另外,若终端中未存储A-GPS服务器列表,获取模块21还用于,获取终端维护的星历数据服务器列表;
[0081]确定模块22还用于,确定星历数据服务器列表中响应时间最短的星历数据服务器;
[0082]定位模块23还用于,根据响应时间最短的时间服务器和响应时间最短的星历数据服务器对终端进行定位。
[0083]本实施例中,终端通过获取响应时间最短的时间服务器和响应时间最短的A-GPS服务器,根据响应时间最短的时间服务器和响应时间最短的A-GPS服务器对终端进行定位,提高了定位过程中的搜星速度和获取时间服务器上的当前时间的速度,从而提高了定位速度。
[0084]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种定位方法,其特征在于,包括: 在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表; 确定所述时间服务器列表中响应时间最短的时间服务器和所述A-GPS服务器列表中响应时间最短的A-GPS服务器; 根据所述响应时间最短的时间服务器和所述响应时间最短的A-GPS服务器对所述终端进行定位。
2.根据权利要求1所述的方法,其特征在于,所述确定所述时间服务器列表中响应时间最短的时间服务器和所述A-GPS服务器列表中响应时间最短的A-GPS服务器,包括: 向所述时间服务器列表中的时间服务器和所述A-GPS服务器列表中的A-GPS服务器发送测试信息; 接收各个时间服务器和各个A-GPS服务器返回的响应信息,所述响应信息中携带响应时间; 分别根据各个时间服务器的响应信息和各个A-GPS服务器的响应信息确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述响应时间最短的时间服务器和所述响应时间最短的A-GPS服务器对所述终端进行定位,包括: 根据所述响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据确定至少3个待跟踪GPS卫星; 接收待跟踪GPS卫星发送的导航电文,所述导航电文包括:卫星时间和待跟踪GPS卫星的卫星星历数据; 从所述响应时间最短的时间服务器上获取接收所述导航电文的当前时间; 根据所述当前时间和所述卫星时间的差值,确定待跟踪GPS卫星到所述终端的距离;根据所述待跟踪GPS卫星的卫星星历星历数据计算在卫星时间时待跟踪GPS卫星所处的位置; 根据待跟踪GPS卫星的位置以及待跟踪GPS卫星到所述终端的距离,确定所述终端的位置。
4.根据权利要求1所述的方法,其特征在于,若所述终端中未存储A-GPS服务器列表,所述方法还包括: 获取所述终端维护的星历数据服务器列表; 确定所述星历数据服务器列表中响应时间最短的星历数据服务器; 根据所述响应时间最短的时间服务器和所述响应时间最短的星历数据服务器对所述终端进行定位。
5.一种定位装置,其特征在于,包括: 获取模块,用于在首次定位或定位时间超过预设的时间阈值时,获取终端维护的时间服务器列表和A-GPS服务器列表; 确定模块,用于确定所述时间服务器列表中响应时间最短的时间服务器和所述A-GPS服务器列表中响应时间最短的A-GPS服务器; 定位模块,用于根据所述响应时间最短的时间服务器和所述响应时间最短的A-GPS服务器对所述终端进行定位。
6.根据权利要求5所述的装置,其特征在于,所述确定模块具体用于,向所述时间服务器列表中的时间服务器和所述A-GPS服务器列表中的A-GPS服务器发送测试信息; 接收各个时间服务器和各个A-GPS服务器返回的响应信息,所述响应信息中携带响应时间; 分别根据各个时间服务器的响应信息和各个A-GPS服务器的响应信息确定响应时间最短的时间服务器和响应时间最短的A-GPS服务器。
7.根据权利要求5或6所述的装置,其特征在于,所述定位模块具体用于,根据所述响应时间最短的A-GPS服务器上的当地卫星的卫星星历数据确定至少3个待跟踪GPS卫星; 接收待跟踪GPS卫星发送的导航电文,所述导航电文包括:卫星时间和待跟踪GPS卫星的卫星星历数据; 从所述响应时间最短的时间服务器上获取接收所述导航电文的当前时间; 根据所述当前时间和所述卫星时间的差值,确定待跟踪GPS卫星到所述终端的距离;根据所述待跟踪GPS卫星的卫星星历星历数据计算在卫星时间时待跟踪GPS卫星所处的位置; 根据待跟踪GPS卫星的位置以及待跟踪GPS卫星到所述终端的距离,确定所述终端的位置。
8.根据权利要求5所述的装置,其特征在于,所述获取模块还用于,若所述终端中未存储A-GPS服务器列表,则获取所述终端维护的星历数据服务器列表; 确定模块还用于,确定所述星历数据服务器列表中响应时间最短的星历数据服务器;定位模块还用于,根据所述响应时间最短的时间服务器和所述响应时间最短的星历数据服务器对所述终端进行定位。
【文档编号】H04W64/00GK103458501SQ201310379091
【公开日】2013年12月18日 申请日期:2013年8月27日 优先权日:2013年8月27日
【发明者】赵友军, 王蓓蓓, 李显洲 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1