一种定位方法及电子设备的制作方法

文档序号:6159875阅读:129来源:国知局
一种定位方法及电子设备的制作方法
【专利摘要】本发明公开了一种定位方法及电子设备,该方法应用在第一电子设备中,方法包括:获得用于定位所述第一电子设备的定位请求;基于定位请求,生成N个数据获得指令;获得N部分定位数据,其中,N部分定位数据由N个定位数据采集模块通过执行N个数据获得指令采集到的,N个部分定位数据中的每部分定位数据中都包含有与其它部分定位数据不相同的数据;基于N部分定位数据,确定第一电子设备的位置信息。电子设备包括:第一获取模块,用于获得定位电子设备的定位请求;第一控制模块,用于基于定位请求,生成数据获取指令;第二获取模块,用于获取至少一个定位数据采集模块采集到的定位数据;数据处理模块,用于根据定位数据,确定电子设备的位置信息。
【专利说明】 一种定位方法及电子设备
【技术领域】
[0001 ] 本发明涉及电子【技术领域】,尤其涉及一种定位方法及电子设备。
【背景技术】
[0002]随着科技的发展,由于GPS (Global Positioning System,全球定位系统)全天候的精准定位,使得其越来越多的被应用在人们的日常的生活中,比如,车载的GPS导航仪,手机上的具有GPS定位功能的手机地图。
[0003]目前,如要对具有GPS的电子设备进行定位,根据GPS的工作原理,首先,GPS接收机,也就是具有GPS模块的电子设备,接收GPS卫星的导航电文,导航电文包括卫星星历、工作状况、时钟改正、电离层时延修正、大气折射修正等信息。然后,当用户端接收到导航电文时,提取出卫星时间并将其与自己的时钟作对比,这样就得到了卫星与上述电子设备之间的距离,接下来,再利用导航电文中的卫星星历数据推算出卫星发射电文时所处位置,就能够得知电子设备在大地坐标中的位置信息,进而实现对电子设备的定位。理论上来说,只需要接收四颗GPS卫星的导航电文即可准确定位,但由于用户接受机使用的时钟与卫星星载时钟不可能总是同步,所以除了用户的三维坐标x、y、z外,还要引进一个At即卫星与接收机之间的时间差作为未知数,然后用4个方程将这4个未知数解出来。所以如果想知道接收机所处的位置,至少要能接收到4个卫星的信号。
[0004]但本申请发明人在实现本申请实施例中发明技术方案的过程中,发现上述技术至少存在如下技术问题:
[0005]由于电子设备完成一次定位至少需要接收到至少四颗卫星发送的卫星信息,所以,导致电子设备搜索卫星的时间较长,进而存在无法快速定位电子设备的技术问题。

【发明内容】

[0006]本发明提供一种定位方法及电子设备,用以解决现有技术中无法快速定位电子设备的问题。
[0007]本发明实施例一提供一种定位方法,应用在第一电子设备中,所述方法包括:
[0008]获得用于定位所述第一电子设备的定位请求;
[0009]基于所述定位请求,生成N个数据获得指令;
[0010]获得N部分定位数据,其中,所述N部分定位数据由N个定位数据采集模块通过执行所述N个数据获得指令采集到的,所述N个部分定位数据中的每部分定位数据中都包含有与其它部分定位数据不相同的数据,所述N为大于等于2的整数;
[0011]基于所述N部分定位数据,确定所述第一电子设备的位置信息。
[0012]可选的,所述获得用于定位所述第一电子设备的定位请求,具体包括:
[0013]检测是否有用于触发生成定位请求的触发操作;
[0014]当检测到有所述触发操作时,响应所述触发操作,生成用于定位所述电子设备的定位请求。[0015]可选的,所述获得用于定位所述第一电子设备的定位请求,具体包括:
[0016]获得由第二电子设备发送来的用于触发生成定位请求的数据信息;
[0017]基于所述数据信息,生成用于定位所述第一电子设备的定位请求。
[0018]可选的,所述获得用于定位所述第一电子设备的定位请求,具体包括:
[0019]判断所述第一电子设备中打开的第一应用程序是否满足一预设条件;
[0020]当所述第一应用程序满足一预设条件时,生成用于定位所述第一电子设备的定位请求。
[0021]可选的,所述生成N个数据获取指令,具体包括:
[0022]检测所述第一电子设备中是否包含K个定位数据采集模块;
[0023]检测与所述第一电子设备连接的至少一个电子设备是否包含有J个定位数据采集模块;
[0024]在所述第一电子设备包含K个定位数据采集模块和/或在所述至少一个电子设备包含有J个定位数据采集模块,且K,M或K+J之和等于N时,生成N个数据获得指令。
[0025]可选的,所述获得N部分定位数据,具体包括:
[0026]给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息;
[0027]给所述N个定位数据采集模块中的每个模块发送所述N个数据获得指令中对应的数据获得指令和所述N个任务信息中对应的任务信息;
[0028]所述N个定位数据采集模块中的每个定位数据采集模块执行与其对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得N部分定位数据。
[0029]可选的,所述基于所述N部分定位数据,确定所述第一电子设备的位置信息,具体包括:
[0030]检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;
[0031]当没有至少两部分定位数据包括的定位数据都相同时,基于所述N部分定位数据,确定所述第一电子设备的位置信息。
[0032]可选的,所述基于所述N部分定位数据,确定所述第一电子设备的位置信息,具体包括:
[0033]检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;
[0034]当有至少两部分定位数据包括的定位数据都相同时,再次通过执行所述获得N部分定位数据的步骤,以重新获得N部分定位数据;
[0035]基于所述重新获得的N部分定位数据,确定所述第一电子设备的位置信息。
[0036]本发明实施例二提供一种电子设备,包括:
[0037]第一获取模块,用于获得定位所述电子设备的定位请求;
[0038]第一控制模块,用于基于所述定位请求,生成数据获取指令;
[0039]第二获取模块,用于获取至少一个定位数据采集模块采集到的定位数据;
[0040]数据处理模块,用于根据所述的定位数据,确定所述电子设备的位置信息。
[0041]可选的,所述第一获取模块包括:
[0042]第一子检测模块,用于检测是否有触发生成所述定位请求的触发操作;
[0043]第一子控制模块,用于在检测到有所述触发操作时,响应所述触发操作,生成所述定位请求。[0044]可选的,所述第一获取模块包括:
[0045]第一子获取模块,用于获得由所述至少一个电子设备发送来的用于触发生成所述定位请求的数据信息;
[0046]第二子控制模块,用于根据所述数据信息,生成所述定位请求。
[0047]可选的,所述第一获取模块包括:
[0048]第一子判断模块,用于判断所述电子设备中打开的第一应用程序是否满足一预设条件;
[0049]第三子控制模块,用于在所述第一应用程序满足一预设条件时,生成所述定位请求。
[0050]可选的,所述第一控制模块包括:
[0051]第二子检测模块,用于检测所述电子设备中是否包含定位数据采集模块;
[0052]第三子检测模块,用于检测与所述至少一个电子设备是否包含有定位数据采集模块;
[0053]第四子控制模块,用于在所述电子设备包含定位数据采集模块和/或在所述至少一个电子设备包含定位数据采集模块时,生成数据获得指令。
[0054]可选的,所述第二获得模块包括:
[0055]第五子控制模块,用于给所述至少一个定位数据采集模块分配获取定位数据任务,生成至少一个任务信息;
[0056]第一子数据传输模块,用于给所述至少一个定位数据采集模块中的每个模块发送所述至少一个数据获得指令中对应的数据获得指令和所述至少一个任务信息中对应的任务信息;
[0057]第二子获取模块,用于执行与所述至少一个定位数据采集模块中的每个定位数据采集模块对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得至少一部分定位数据。
[0058]可选的,所述数据处理模块包括:
[0059]第四子检测模块,用于检测所述至少一部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;
[0060]第一子确定模块,用于在没有至少两部分定位数据包括的定位数据都相同时,基于所述至少一部分定位数据,确定所述电子设备的位置信息;
[0061]第六子控制模块,用于在有至少两部分定位数据包括的定位数据都相同时,发送控制指令给所述第二获取模块,以重新获得N部分定位数据,再次进行对所述电子设备进行定位。
[0062]本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
[0063]1、由于采用多个电子设备合作对第一电子设备进行定位,使得每个电子设备搜索的卫星数量减少到至少一颗,在根据不同设备搜到的不同卫星信息,完成对第一电子设备的定位,所以,有效解决了现有技术中无法快速定位电子设备的问题,进而实现了快速高效的卫星定位。
[0064]2、由于对用于定位的每个卫星定位模块分配搜索卫星的任务,使得每个卫星定位模块搜到的卫星信息都是不同的,所以,使得不会因为卫星信息重复而无法精确定位,进而实现精确闻效的卫星定位。
[0065]如,现有A、B、C、D四台设备合作对A进行卫星定位,A给包括自己在内的四台电子设备分别分配搜索卫星的任务,A搜索卫星1,B搜索卫星2,C搜索卫星3,D搜索卫星4,这样,四台设备同时开始搜索卫星就可以用搜索一颗卫星的时间搜索不同的四颗卫星1、2、3、4,而且因为卫星1、2、3、4的卫星信息不同,使得仅搜索一次就可以完成对A的精确定位。
【专利附图】

【附图说明】
[0066]图1为本申请实施例一中定位方法的流程图;
[0067]图2为本申请实施例二中电子设备的模块图。
【具体实施方式】
[0068]本发明提供一种定位方法及电子设备,用以解决现有技术中无法快速定位电子设备的问题,通过给多个卫星定位模块分配搜索卫星的任务,协作工作,使得能在较短的时间内得到至少四颗卫星的信息,进而实对电子设备的快速定位。
[0069]本发明实施例中的技术方案为实现对电子设备的快速定位,总体思路如下:
[0070]获得用于定位所述第一电子设备的定位请求;
[0071]基于所述定位请求,生成N个数据获得指令;
[0072]获得N部分定位数据,其中,所述N部分定位数据由N个定位数据采集模块通过执行所述N个数据获得指令采集到的,所述N个部分定位数据中的每部分定位数据中都包含有与其它部分定位数据不相同的数据,所述N为大于等于2的整数;
[0073]基于所述N部分定位数据,确定所述第一电子设备的位置信息。
[0074]为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式进行详细的说明。
[0075]本发明实施例一提供一种定位方法,该方法应用在第一电子设备中,第一电子设备可以是手机,可以是导航仪,当然,还可以为其他电子设备,本申请不做具体限定。具体的卫星定位方式可以采用GPS进行定位,也可以采用北斗星导航系统进行定位,当然,还可以采用其他的卫星定位方式进行定位,本申请不做具体限定。在下面的描述中,本实施例将以手机为例,并以采用GPS进行定位的方式来进行说明。
[0076]如图1所示,所述方法的步骤包括:
[0077]步骤SlOl:获得用于定位所述第一电子设备的定位请求。
[0078]具体的来讲,就是第一电子设备获得了一个定位请求,要求对其进行定位。
[0079]在具体实施过程中,获得上述定位请求的方式可分为三种:
[0080]第一种:通过一触发操作触发,获得定位请求。
[0081]比如,用户在一个陌生的地方,此时,想要知道自己的地理位置,那么,用户可以通过在触摸屏上的点触操作,也可以是一个按下实体键的操作,来打开手机地图这个应用程序,接下来,用户再通过一操作,如点触定位图标,或者是对组合快捷键进行按压,由此来触发第一电子设备生成定位请求。
[0082]当采用第一种获得方式时,步骤SlOl具体包括:[0083]检测是否有用于触发生成定位请求的触发操作;
[0084]当检测到有所述触发操作时,响应所述触发操作,生成用于定位所述电子设备的定位请求。
[0085]具体来讲,当手机为触摸屏手机时,SlOl的实现过程为:
[0086]用户先通过点触手机触摸屏上手机地图的图标,打开手机地图这个应用程序,然后,手机就会检测用户有没有进一步的触发操作,比如点触“定位”图标,或者“我的位置”图标;在当手机检测到用户点触了“定位”图标或者“我的位置”图标时,手机就会响应这个触发操作,生成用于定位手机的定位请求。
[0087]当手机为含有机械键盘的手机时,SlOl的实现过程为:
[0088]首先,用户按下键盘上的一个或多个实体按键,打开手机地图这个应用程序,然后,手机就会检测用户有没有进一步的触发操作,如按下组合快捷键,在本实施例中,组合快捷键的具体组合方式可以由软件供应商设定的,也可以由用户自行设定,如:可将组合快捷键设置为“数字键1+ ‘#,键”;当手机检测到用户同时按下数字键I和“#”键时,手机就会响应这个触发操作,生成用于定位手机的定位请求。
[0089]第二种:第一电子设备基于收到的来自第二电子设备发送来一数据信息,获得定位请求。
[0090]比如,用户在进行通话的过程中,通话的另一方想知道用户所处的位置,那么,另一方所持的电子设备,可能是手机,也可能是电脑,就发送数据信息给用户的手机,要求对用户的手机进行定位,用户的手机就根据接收到的数据信息,生成定位请求。
[0091]当采用第二种获得方式时,步骤SlOl具体包括:
[0092]获得由第二电子设备发送来的用于触发生成定位请求的数据信息;
[0093]基于所述数据信息,生成用于定位所述第一电子设备的定位请求。比如,用户在进行通话的过程中,对方想要知道用户的位置,而用户也不清楚自己在哪里,于是对方就通过第二电子设备向用户的手机发送来的一个内容为“你好,能否告诉我一下你现在所处的具体位置?多谢! ”的短信;然后用户的手机可以根据这条短信的内容,自动生成一个用于定位第一电子设备的定位请求。
[0094]第三种:第一电子设备在检测到一符合预设条件的应用程序启动时,自动生成定位请求。
[0095]比如,当第一电子设备检测到用户通过一个触发操作打开了一个社交网站的客户端程序时,就会自动生成一个定位请求。
[0096]当采用第三种获得方式时,步骤SlOl具体包括:
[0097]判断所述第一电子设备中打开的第一应用程序是否满足一预设条件;
[0098]当所述第一应用程序满足一预设条件时,生成用于定位所述第一电子设备的定位请求。
[0099]具体来讲,实现过程为:首先,用户通过一个操作,如:点触操作或组合快捷键操作打开手机中的第一应用程序,如:社交网站的客户端程序或音乐播放程序;然后,手机会判断第一应用程序是否满足一预设条件,在本实施例中,当假设预设条件为:应用程序正常运行的输入参数为手机的位置信息时,判断的过程具体为:首先,获得第一应用程序正常运行的所需要的输入参数;然后,判断所需要的输入参数中是否包含了手机的位置信息,在包含时,表明第一应用程序满足预设条件;在不包含时,表明第一应用程序不满足预设条件。
[0100]显然,当第一应用程序具体为社交网站的客户端程序时,由于社交网站的客户端程序在运行时要用到手机的位置信息,所以,此时,手机在检测到社交网站的客户端程序运行时,就会自动生成一个用于定位手机位置的定位请求;而当第一应用程序具体为音乐播放程序时,由于音乐播放程序在运行时不需要用到手机的位置信息,所以,手机在检测到音乐播放程序在运行时,就不会生成用一定位手机位置的定位请求。
[0101]当然,预设条件还可以是别的条件,本领域普通技术人员可根据需要自行设置,本申请不做具体限定。
[0102]在具体实施过程中,根据第一电子设备是否包含至少一个定位数据采集模块,第一电子设备完成定位的过程会有3种,由于获得定位请求已经在上述步骤SlOl中详细说明了,所以,下面从步骤S102开始接着描述。
[0103]即在通过步骤SlOl获得定位请求之后,本申请实施例中的方法会进入步骤:
[0104]S102,S卩:基于所述定位请求,生成N个数据获得指令。以及,
[0105]S103,即:获得N部分定位数据。
[0106]针对步骤S102和S103的实现过程,本申请实施例中将分三种情况来具体进行描述:
[0107]第一种,第一电子设备包含多个定位数据采集模块,且K等于N。
[0108]此时,第一电子设备只需要用自己包含的多个定位数据采集模块来获取定位数据即可。
[0109]此时,步骤S102具体包括:
[0110]检测第一电子设备中是否包含K个定位数据采集模块;
[0111]在第一电子设备包含N个定位数据采集模块时,就生成N个数据获得指令。
[0112]比如,手机在接收到定位请求之后,就生成一条检测指令,检测自身有没有GPS模块A、B,在检测确定手机有2个GPS模块时,生成2条数据获得指令,分别为数据获取指令I和数据获取指令2,假设数据获取指令I数据获取指令I内包含有GPS模块A的标识,那么,数据获取指令I对应的GPS模块就是GPS模块A ;同样的,数据获取指令2中包含有GPS模块B的标识,那么,数据获取指令2对应的GPS模块就是GPS模块B。
[0113]在具体实施过程中,数据获取指令与GPS模块的对应关系不一定根据标识来对应,还可以有其他形式的对应关系,本领域普通技术人员可自行设定,本申请不做具体限定。
[0114]接下来,进入步骤S103,S卩:获得N部分定位数据。步骤S103所获得的N部分定位数据均来自第一电子设备上的N个定位数据采集模块。
[0115]此时,步骤S103具体包括:
[0116]给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息;
[0117]给所述N个定位数据采集模块中的每个模块发送所述N个数据获得指令中对应的数据获得指令和所述N个任务信息中对应的任务信息;
[0118]所述N个定位数据采集模块中的每个定位数据采集模块执行与其对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得N部分定位数据。
[0119]具体来说,实现过程为:就是要给第一电子设备中的N个GPS模块分配任务,使得每个模块搜索到的卫星信息都不一样,这样才能保证快速高效的定位第一电子设备。而给GPS模块分配任务的方式可以为通过存储在第一电子设备中的卫星星历来计算需要定位的这个时刻会有哪几颗卫星在第一电子设备的上空,然后生成分别包含这些卫星的信息的N个任务信息。然后,再把生成的这N个任务信息分别发送给第一电子设备上的N个GPS模块,与此同时,还要发送由步骤S102生成的N个数据获取指令给其对应的N个GPS模块。每个GPS模块根据其收到的数据获取指令以及任务信息,执行上述数据获取指令,生成与任务信息对应的定位数据。
[0120]比如,要搜索A、B、C、D四颗卫星来对手机进行定位,手机包含A、B两个GPS模块,对这两个GPS模块分配任务,让GPS模块A搜索卫星A、B,让GPS模块B搜索卫星C、D,于是生成相应的两个任务信息1、2,然后,同时发送任务信息I和数据获得指令I给GPS模块A,发送任务信息2和数据获得指令2给GPS模块B。模块A执行数据获取指令1,获得卫星A、B的卫星信息,模块B执行数据获取指令2,获得卫星C、D的卫星信息,由此,手机就获得两部分定位数据。
[0121]通过步骤S103获得N部分定位数据后,进入步骤S104,即:基于所述N部分定位数据,确定所述第一电子设备的位置信息。
[0122]具体来说,实现过程为:由于GPS定位信号会受到天气因素、电气电磁干扰、无线电、强磁场等等因素的干扰,使得GPS模块搜索到的卫星不完全是任务信息中指定的卫星,所以需要对获得N部分定位数据进行处理。那么,N个GPS模块获得N部分数据之后,首先,检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;也就是说,检测N部分定位数据中是否有相同的卫星信息。然后,当没有至少两部分定位数据包括的定位数据都相同时,基于所述N部分定位数据,确定所述第一电子设备的位置信息。也就是说,在这N部分定位数据中没有相同的卫星信息时,根据得到的N部分定位数据来确定第一电子设备的位置;当有至少两部分定位数据包括的定位数据都相同时,就返回步骤S103,以重新获得N部分定位数据;基于所述重新获得的N部分定位数据,确定所述第一电子设备的位置信息。
[0123]比如,GPS模块A实际搜索到的是卫星A、B,GPS模块B搜索到的是卫星C、D,那么,手机依此定位出自己的位置;GPS模块A实际搜索到的是卫星A、B,模块B实际只搜索到C,那么,手机就无法定位出自己的位置,于是就得重新获得定位数据,再次进行定位。
[0124]至此,就完成了当第一电子设备具有K个定位数据采集模块,且K等于N时,对第一电子设备的定位。所有定位数据均来自第一电子设备。
[0125]第二种,第一电子设备没有包含有定位数据采集模块,N个定位数据采集模块在其它电子设备中,且J为N。
[0126]此时,第一设备就要依靠与自己连接的至少一个电子设备来获取定位数据,其中,为了保证定位的精确度,第一电子设备与至少一个电子设备之间的距离不能超过10米。这里说的连接可以是通过数据线连接,也可以是通过无线连接,本领域普通技术人员可自行设定,本申请不做具体限定。
[0127]此时,步骤S102具体包括:
[0128]检测与第一电子设备连接的至少一个电子设备是否包含有J个定位数据采集模块;[0129]在至少一个电子设备包含N个定位数据采集模块时,就生成N个数据获得指令。
[0130]比如,手机通过无线与两个导航仪连接,那么在手机接收到定位请求后,就生成2条检测指令,分别发送这2条检测指令给导航仪A、以及导航仪B,检测导航仪A、B中共有多少个GPS模块。假设检测到导航仪A和导航仪B分别包含I个GPS模块,即,导航仪A包含GPS模块A,导航仪B包含GPS模块B,那么,手机就会生成2个数据获得指令。2条数据获得指令中的一条指令为数据获取指令1,另一条指令为数据获取指令2,数据获取指令I内包含有GPS模块A的标识,那么指令I对应的GPS模块就是模块A,同样的,数据获取指令2中包含有GPS模块B的标识,那么,数据获取指令2对应的GPS模块就是模块B。
[0131]在具体实施过程中,数据获取指令与GPS模块的对应关系不一定根据标识来对应,还可以有其他形式的对应关系,本领域普通技术人员可自行设定,本申请不做具体限定。
[0132]接下来,进入步骤S103,S卩:获得N部分定位数据。步骤S103所获得的N部分定位数据均来自与第一电子设备连接的至少一个电子设备上的N个定位数据采集模块。
[0133]此时,步骤S103具体包括:
[0134]给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息;
[0135]给所述N个定位数据采集模块中的每个模块发送所述N个数据获得指令中对应的数据获得指令和所述N个任务信息中对应的任务信息;
[0136]所述N个定位数据采集模块中的每个定位数据采集模块执行与其对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得N部分定位数据。
[0137]具体来讲,实现过程为:首先,要给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息;也就是说,要给至少一个电子设备上的N个GPS模块分配任务,使得每个模块搜索到的卫星信息都不一样,这样才能保证快速高效的定位第一电子设备。而给N个GPS模块分配任务的方式可以为通过存储在第一电子设备中的卫星星历来计算需要定位的这个时刻会有哪几颗卫星在第一电子设备的上空,然后生成分别包含这些卫星的信息的N个任务信息。然后,就把生成的这N个任务信息分别发送给至少一个电子设备上的N个GPS模块,与此同时,还要分别发送由步骤S102生成的N个数据获取指令给其对应的N个GPS模块。每个GPS模块根据其收到的数据获取指令以及任务信息,执行上述数据获取指令,生成与任务信息对应的定位数据。一个GPS模块生成一部分定位数据,N个GPS模块就会生成N部分定位数据。
[0138]比如,现在需要搜索A、B、C、D四颗卫星来对手机进行定位,与手机连接的2个导航仪包含A、B两个GPS模块,那么,就对模块A、B分配任务,让模块A搜索卫星A、B,让模块B搜索卫星C、D,生成相应的两个任务信息,分别发送给模块A与模块B,同时发送任务信息I和数据获得指令I给GPS模块A,发送任务信息2和数据获得指令2给GPS模块B。模块A执行数据获取指令1,获得卫星A、B的卫星信息,然后根据该卫星信息,得到一部分定位数据,将这部分定位数据发送给手机;模块B执行数据获取指令2,获得卫星C、D的卫星信息,然后根据该卫星信息,得到另一部分定位数据,将这部分定位数据发送给手机,由此,手机就获得两部分定位数据。
[0139]通过步骤S103获得N部分定位数据后,进入步骤S104,即:基于所述N部分定位数据,确定所述第一电子设备的位置信息。[0140]具体来说,由于GPS定位信号会受到天气因素、电气电磁干扰、无线电、强磁场等等因素的干扰,使得GPS模块搜索到的卫星不完全是任务信息中指定的卫星,所以需要对获得N部分定位数据进行处理。那么,实现过程为:首先,检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;也就是说,检测N部分定位数据中是否有相同的卫星信息。然后,当没有至少两部分定位数据包括的定位数据都相同时,基于所述N部分定位数据,确定所述第一电子设备的位置信息。也就是说,在这N部分定位数据中没有相同的卫星信息时,根据得到的N部分卫星信息来确定第一电子设备的位置。当有至少两部分定位数据包括的定位数据都相同时,就返回步骤S103,以重新获得N部分定位数据,基于所述重新获得的N部分定位数据,确定所述第一电子设备的位置信息。
[0141]比如,GPS模块A实际搜索到的是卫星A、B,GPS模块B搜索到的是卫星C、D,那么,手机依此定位出自己的位置;GPS模块A实际搜索到的是卫星A、B,模块B实际只搜索到C,那么,手机就无法定位出自己的位置,于是就得重新获得定位数据,再次进行定位。
[0142]至此,就完成了当第一电子设备一个定位数据采集模块都不包含,与其连接的至少一个电子设备包含J个定位数据采集模块,且J等于N时,确定第一电子设备的位置信肩、O
[0143]第三种,第一电子设备上有K个定位数据采集模块,且与第一电子设备连接的至少一个设备上有J个定位数据采集模块,且K和J的和为N。
[0144]此时,第一电子设备需通过第一电子设备与至少一个电子设备之间的配合来实现定位,其中,为了保证定位的精确度,第一电子设备与至少一个电子设备之间的距离不能超过10米。这里说的连接可以是通过数据线连接,也可以是通过无线连接,本领域普通技术人员可自行设定,本申请不做具体限定。
[0145]此时,步骤S102具体包括:
[0146]检测第一电子设备中是否包含K个定位数据采集模块。
[0147]检测与第一电子设备连接的至少一个电子设备是否包含有J个定位数据采集模块;
[0148]在至少一个电子设备包含N个定位数据采集模块时,就生成N个数据获得指令。
[0149]此时,K+J等于N。
[0150]比如,手机上包含I个GPS模块A,与手机连接的导航仪A包含I个GPS模块B,在检测到手机以及导航仪A上均有一个GPS模块时,生成2条数据获得指令,分别为数据获取指令I和数据获取指令2,数据获取指令I内包含有GPS模块A的标识,那么,数据获取指令I对应的GPS模块就是模块A,同样的,数据获取指令2中包含有GPS模块B的标识,那么,数据获取指令2对应的GPS模块就是模块B。
[0151 ] 在具体实施过程中,N个数据获得指令与N个GPS模块的对应方式还有很多种,不仅限于包含标识,本领域技术人员可自行设定,本申请不做具体限定,只需保证一条指令对应一个GPS模块即可。
[0152]接下来,进入步骤S103,即:获得N部分定位数据。
[0153]所获得的N部分定位数据分别来自第一电子设备的K个定位数据采集模块,以及与第一电子设备连接的至少一个电子设备上的J个定位数据采集模块。
[0154]此时,步骤S103具体包括:[0155]给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息;
[0156]给所述N个定位数据采集模块中的每个模块发送所述N个数据获得指令中对应的数据获得指令和所述N个任务信息中对应的任务信息;
[0157]所述N个定位数据采集模块中的每个定位数据采集模块执行与其对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得N部分定位数据。
[0158]具体来讲,实现过程为:首先,要给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息;也就是说,要给第一电子设备以及至少一个电子设备上的N个GPS模块分配任务,使得每个模块搜索到的卫星信息都不一样,这样才能保证快速高效的定位第一电子设备。而给N个GPS模块分配任务的方式可以为通过存储在第一电子设备中的卫星星历来计算需要定位的这个时刻会有哪几颗卫星在第一电子设备的上空,然后生成分别包含这些卫星的信息的N个任务信息。然后,就把生成的这N个任务信息分别发送给第一电子设备上的K个GPS模块,以及至少一个电子设备上的J个GPS模块,与此同时,还要分别发送由步骤S102生成的N个数据获取指令给其对应的N个GPS模块。每个GPS模块根据其收到的数据获取指令以及任务信息,执行上述数据获取指令,生成与任务信息对应的定位数据。一个GPS模块生成一部分定位数据,N个GPS模块就会生成N部分定位数据。
[0159]比如,现在需要搜索A、B、C、D四颗卫星来对手机进行定位,手机包含GPS模块A这一个GPS模块,导航仪A、导航仪B、以及导航仪C分别包含B、C、D三个GPS模块,那么,手机就对这四个模块分配任务,让模块A搜索卫星A,让模块B搜索卫星B,让模块C搜索卫星C,让模块D搜索卫星D,生成相应的四个任务信息,分别发送给模块A、模块B,模块C、模块D,同时,还要分别发送与与模块A、模块B,模块C、模块D相应的数据获取指令1、2、3、4给模块A、模块B,模块C、模块D。模块A执行数据获取指令1,获得卫星A的卫星信息,然后根据该卫星信息,得到第一部分定位数据;导航仪A上的模块B执行数据获取指令2,获得卫星B的卫星信息,然后根据该卫星信息,得到第二部分定位数据;导航仪B上的模块C执行数据获取指令3,获得卫星C的卫星信息,然后根据该卫星信息,得到第三部分定位数据;导航仪C上的模块D执行数据获取指令4,获得卫星D的卫星信息,然后根据该卫星信息,得到第四部分定位数据,分别发送第二部分定位数据、第三部分定位数据、第四部分定位数据给手机,由此,手机就获得四部分定位数据。
[0160]通过步骤S103获得N部分定位数据后,进入步骤S104,即:基于所述N部分定位数据,确定所述第一电子设备的位置信息。
[0161]具体来说,由于GPS定位信号会受到天气因素、电气电磁干扰、无线电、强磁场等等因素的干扰,使得GPS模块搜索到的卫星不完全是任务信息中指定的卫星,所以需要对获得N部分定位数据进行处理。那么,实现过程为:首先,检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;也就是说,检测N部分定位数据中是否有相同的卫星信息。然后,当没有至少两部分定位数据包括的定位数据都相同时,基于所述N部分定位数据,确定所述第一电子设备的位置信息。也就是说,在这N部分定位数据中没有相同的卫星信息时,根据得到的N部分卫星信息来确定第一电子设备的位置,当有至少两部分定位数据包括的定位数据都相同时,就返回步骤S103,以重新获得N部分定位数据;基于所述重新获得的N部分定位数据,确定所述第一电子设备的位置信息。
[0162]比如,GPS模块A实际搜索到的是卫星A,GPS模块B搜索到的是卫星B,GPS模块C实际搜索到的是卫星C,GPS模块D实际搜索到的是卫星D,那么,手机依此定位出自己的位置;GPS模块A实际搜索到的是卫星A、B,模块B实际搜索到B、D,GPS模块C实际搜索到的是卫星C,GPS模块D实际搜索到的是卫星D,那么,手机就无法定位出自己的位置,于是就得重新获得定位数据,再次进行定位。
[0163]至此,就完成了当第一电子设备包含K个定位数据采集模块,与其连接的至少一个电子设备包含J个定位数据采集模块,且K+J等于N时,确定第一电子设备的位置信息。
[0164]如图2所示,本发明实施例二提供一种电子设备,包括:
[0165]第一获取模块201,用于获得定位所述电子设备的定位请求;
[0166]第一控制模块202,用于基于所述定位请求,生成数据获取指令;
[0167]第二获取模块203,用于获取至少一个定位数据采集模块采集到的定位数据;
[0168]数据处理模块204,用于根据所述的定位数据,确定所述电子设备的位置信息。
[0169]进一步,所述第一获取模块包括:
[0170]第一子检测模块,用于检测是否有触发生成所述定位请求的触发操作;
[0171]第一子控制模块,用于在检测到有所述触发操作时,响应所述触发操作,生成所述定位请求。
[0172]进一步,所述第一获取模块包括:
[0173]第一子获取模块,用于获得由所述至少一个电子设备发送来的用于触发生成所述定位请求的数据信息;
[0174]第二子控制模块,用于根据所述数据信息,生成所述定位请求。
[0175]进一步,所述第一获取模块包括:
[0176]第一子判断模块,用于判断所述电子设备中打开的第一应用程序是否满足一预设条件;
[0177]第三子控制模块,用于在所述第一应用程序满足一预设条件时,生成所述定位请求。
[0178]进一步,所述第一控制模块包括:
[0179]第二子检测模块,用于检测所述电子设备中是否包含定位数据采集模块;
[0180]第三子检测模块,用于检测与所述至少一个电子设备是否包含有定位数据采集模块。
[0181]第四子控制模块,用于在所述电子设备包含定位数据采集模块和/或在所述至少一个电子设备包含定位数据采集模块时,生成数据获得指令。
[0182]进一步,所述第二获得模块包括:
[0183]第五子控制模块,用于给所述至少一个定位数据采集模块分配获取定位数据任务,生成至少一个任务信息;
[0184]第一子数据传输模块,用于给所述至少一个定位数据采集模块中的每个模块发送所述至少一个数据获得指令中对应的数据获得指令和所述至少一个任务信息中对应的任务信息;
[0185]第二子获取模块,用于执行与所述至少一个定位数据采集模块中的每个定位数据采集模块对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得至少一部分定位数据。[0186]进一步,所述数据处理模块包括:
[0187]第四子检测模块,用于检测所述至少一部分定位数据中是否有至少两部分定位数据包括的定位数据都相同;
[0188]第一子确定模块,用于在没有至少两部分定位数据包括的定位数据都相同时,基于所述至少一部分定位数据,确定所述电子设备的位置信息;
[0189]第六子控制模块,用于在有至少两部分定位数据包括的定位数据都相同时,发送控制指令给所述第二获取模块,以重新获得N部分定位数据,再次进行对所述电子设备进行定位。
[0190]上述各种模块都设置在一块电路板上,其中,第一获取模块与第二获取模可以为同一模块,也可以为两个模块;第一子控制模块,第二子控制模块,第三子控制模块,第四子控制模块,第五子控制模块及第六子控制模块可以为同一模块,也可以为六个模块;第一子检测模块,第二子检测模块,第三子检测模块及第四子检测模块,可以为同一模块,也可以为四个模块;第一子获取模块及第二子获取模块,可以为同一模块,也可以为两个模块。本领域普通技术人员可自行设定,本申请不做限定。
[0191]上述本发明一个或多个实施例中的技术方案,至少具有如下的技术效果或优点:
[0192]1、由于采用多个电子设备合作对第一电子设备进行定位,使得每个电子设备搜索的卫星数量减少到至少一颗,在根据不同设备搜到的不同卫星信息,完成对第一电子设备的定位,所以,有效解决了现有技术中无法快速定位电子设备的问题,进而实现了快速高效的卫星定位。
[0193]2、由于对用于定位的每个卫星定位模块分配搜索卫星的任务,使得每个卫星定位模块搜到的卫星信息都是不同的,所以,使得不会因为卫星信息重复而无法精确定位,进而实现精确闻效的卫星定位。
[0194]比如,现有A、B、C、D四台设备合作对A进行卫星定位,A给包括自己在内的四台电子设备分别分配搜索卫星的任务,A搜索卫星1,B搜索卫星2,C搜索卫星3,D搜索卫星4,这样,四台设备同时开始搜索卫星就可以用搜索一颗卫星的时间搜索不同的四颗卫星1、
2、3、4,而且因为卫星1、2、3、4的卫星信息不同,使得仅搜索一次就可以完成对A的精确定位。
[0195]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0196]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【权利要求】
1.一种定位方法,应用在第一电子设备中,其特征在于,所述方法包括: 获得用于定位所述第一电子设备的定位请求; 基于所述定位请求,生成N个数据获得指令; 获得N部分定位数据,其中,所述N部分定位数据由N个定位数据采集模块通过执行所述N个数据获得指令采集到的,所述N个部分定位数据中的每部分定位数据中都包含有与其它部分定位数据不相同的数据,所述N为大于等于2的整数; 基于所述N部分定位数据,确定所述第一电子设备的位置信息。
2.如权利要求1所述的方法,其特征在于,所述获得用于定位所述第一电子设备的定位请求,具体包括: 检测是否有用于触发生成定位请求的触发操作; 当检测到有所述触发操作时,响应所述触发操作,生成用于定位所述电子设备的定位请求。
3.如权利要求1所述的方法,其特征在于,所述获得用于定位所述第一电子设备的定位请求,具体包括: 获得由第二电子设备发送来的用于触发生成定位请求的数据信息; 基于所述数据信息,生成用于定位所述第一电子设备的定位请求。
4.如权利要求1所述的方法,其特征在于,所述获得用于定位所述第一电子设备的定位请求,具体包括:` 判断所述第一电子设备中打开的第一应用程序是否满足一预设条件; 当所述第一应用程序满足一预设条件时,生成用于定位所述第一电子设备的定位请求。
5.如权利要求1所述的方法,其特征在于,所述生成N个数据获取指令,具体包括: 检测所述第一电子设备中是否包含K个定位数据采集模块; 检测与所述第一电子设备连接的至少一个电子设备是否包含有J个定位数据采集模块; 在所述第一电子设备包含K个定位数据采集模块和/或在所述至少一个电子设备包含有J个定位数据采集模块,且K,J或K+J之和等于N时,生成N个数据获得指令。
6.如权利要求1-5中任一权利要求所述的方法,其特征在于,所述获得N部分定位数据,具体包括: 给所述N个定位数据采集模块分配获取定位数据任务,生成N个任务信息; 给所述N个定位数据采集模块中的每个模块发送所述N个数据获得指令中对应的数据获得指令和所述N个任务信息中对应的任务信息; 所述N个定位数据采集模块中的每个定位数据采集模块执行与其对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得N部分定位数据。
7.如权利要求1-5中任一权利要求所述的方法,其特征在于,所述基于所述N部分定位数据,确定所述第一电子设备的位置信息,具体包括: 检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同; 当没有至少两部分定位数据包括的定位数据都相同时,基于所述N部分定位数据,确定所述第一电子设备的位置信息。
8.如权利要求1-5中任一权利要求所述的方法,其特征在于,所述基于所述N部分定位数据,确定所述第一电子设备的位置信息,具体包括: 检测所述N部分定位数据中是否有至少两部分定位数据包括的定位数据都相同; 当有至少两部分定位数据包括的定位数据都相同时,再次通过执行所述获得N部分定位数据的步骤,以重新获得N部分定位数据; 基于所述重新获得的N部分定位数据,确定所述第一电子设备的位置信息。
9.一种电子设备,其特征在于,包括: 第一获取模块,用于获得定位所述电子设备的定位请求; 第一控制模块,用于基于所述定位请求,生成数据获取指令; 第二获取模块,用于获取至少一个定位数据采集模块采集到的定位数据; 数据处理模块,用于根据所述的定位数据,确定所述电子设备的位置信息。
10.如权利要求9所述的电子设备,其特征在于,所述第一获取模块包括: 第一子检测模块,用于检测是否有触发生成所述定位请求的触发操作; 第一子控制模块,用于在检测 到有所述触发操作时,响应所述触发操作,生成所述定位请求。
11.如权利要求9所述的电子设备,其特征在于,所述第一获取模块包括: 第一子获取模块,用于获得由所述至少一个电子设备发送来的用于触发生成所述定位请求的数据信息; 第二子控制模块,用于根据所述数据信息,生成所述定位请求。
12.如权利要求9所述的电子设备,其特征在于,所述第一获取模块包括: 第一子判断模块,用于判断所述电子设备中打开的第一应用程序是否满足一预设条件; 第三子控制模块,用于在所述第一应用程序满足一预设条件时,生成所述定位请求。
13.如权利要求9所述的电子设备,其特征在于,所述第一控制模块包括: 第二子检测模块,用于检测所述电子设备中是否包含定位数据采集模块; 第三子检测模块,用于检测与所述至少一个电子设备是否包含有定位数据采集模块;第四子控制模块,用于在所述电子设备包含定位数据采集模块和/或在所述至少一个电子设备包含定位数据采集模块时,生成数据获得指令。
14.如权利要求9所述的电子设备,其特征在于,所述第二获得模块包括: 第五子控制模块,用于给所述至少一个定位数据采集模块分配获取定位数据任务,生成至少一个任务信息; 第一子数据传输模块,用于给所述至少一个定位数据采集模块中的每个模块发送所述至少一个数据获得指令中对应的数据获得指令和所述至少一个任务信息中对应的任务信息; 第二子获取模块,用于执行与所述至少一个定位数据采集模块中的每个定位数据采集模块对应的数据获得指令,获得与其对应的任务信息对应的定位数据,进而获得至少一部分定位数据。
15.如权利要求9所述的电子设备,其特征在于,所述数据处理模块包括: 第四子检测模块,用于检测所述至少一部分定位数据中是否有至少两部分定位数据包括的定位数据都相同; 第一子确定模块,用于在没有至少两部分定位数据包括的定位数据都相同时,基于所述至少一部分定位数据,确定所述电子设备的位置信息; 第六子控制模块,用于在有至少两部分定位数据包括的定位数据都相同时,发送控制指令给所述第二获取模块,以重新获得N部分定位数据,再次进行对所述电子设备进行定位。
【文档编号】G01S19/42GK103513263SQ201210207719
【公开日】2014年1月15日 申请日期:2012年6月18日 优先权日:2012年6月18日
【发明者】王江涛 申请人:联想(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1