CN109906622B - 一种定位方法及设备 - Google Patents
一种定位方法及设备 Download PDFInfo
- Publication number
- CN109906622B CN109906622B CN201780068509.1A CN201780068509A CN109906622B CN 109906622 B CN109906622 B CN 109906622B CN 201780068509 A CN201780068509 A CN 201780068509A CN 109906622 B CN109906622 B CN 109906622B
- Authority
- CN
- China
- Prior art keywords
- sta
- mac address
- time
- aps
- measurement message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种定位方法及设备,涉及通信技术领域,可以在不改变WiFi芯片设计的同时,实现定位功能,并且避免了站点(STA)的位置泄漏的问题。具体方案为:STA与至少三个接入点(AP)信息交互,获得每个AP对应的传输时间信息;其中,STA与每个AP信息交互采用的MAC地址互不相同,每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、STA接收第一测量消息的时刻、STA发送第一确认消息的时刻以及AP接收第一确认消息的时刻;STA根据每个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置。本发明实施例应用于STA与AP信息交互,得到STA的位置的过程中。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种定位方法及设备。
背景技术
无线保真(Wireless Fidelity,WiFi)技术是一种短距离无线通信技术。WiFi技术的结构包含有一个中心节点,称为接入点(Access Point,AP),以及包含有其他节点,称为站点(Station,STA)。
其中,STA可以采用精确时间测量(Fine Time Measurement,FTM)技术,通过WiFi网络与至少三个AP进行信息交互实现定位。具体的,此处以一个AP为例对STA与AP的交互过程进行说明:AP在t1时刻向STA发送第一测量消息,STA在t2时刻接收第一测量消息并在t3时刻向AP反馈确认消息,AP在t4时刻接收确认消息后,向STA发送携带有t1时刻和t4时刻的第二测量消息。如此,STA在获得至少3组时间组后,可以根据AP的坐标信息和至少3组时间组计算出STA的位置,其中,每个时间组中包括与至少三个AP信息交互时的信息传输的时刻(如t1时刻、t2时刻、t3时刻和t4时刻)。
但是,由于只要STA的t2时刻与t3时刻的时间差(即t3-t2)固定,至少三个AP可以交换各自的(t4-t1)之后便可以计算出STA的位置,而与STA交互的AP可能是不可靠的,因此上述采用FTM技术实现STA定位的方法存在STA的位置隐私泄漏的问题。
现有技术中,STA在在t2时刻成功接收第一测量消息后,在随机设定的一个时长后,向AP发送确认消息。这样,AP便不能够得到正确的t2时刻与t3时刻的时间差,从而不能获得STA的正确位置。
但是,由于STA在随机设定的一个时长后,向AP发送确认消息时,需要先调整自身的时间(即增加随机数);因此,现有技术的方案需要改变现有的设备在WiFi芯片上的设计,修改到底层的处理机制,增加额外的处理功能;并且该增加的处理功能只有在新设备上才可以实现,而现有的很多老设备WiFi芯片的设计是不能修改的,因此现有技术的方法缺少通用性。
发明内容
本申请提供一种定位方法及设备,可以在不改变WiFi芯片设计的同时,实现定位功能,并且避免了STA的位置泄漏的问题。
为达到上述目的,本申请采用如下技术方案:
本申请的第一方面,提供一种定位方法,包括:STA与至少三个AP信息交互,获得每个AP对应的传输时间信息;STA根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置。其中,STA与至少三个AP信息交互时所采用的介质访问控制(MediaAccess Control,MAC)地址互不相同;每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、STA接收第一测量消息的时刻、STA发送第一确认消息的时刻以及AP接收第一确认消息的时刻。本申请中,STA可以与至少三个AP信息交互,计算出STA的位置,实现定位功能;并且,由于STA在与每个AP信息交互时采用的MAC地址互不相同,当AP在计算STA的位置时,获得的多个方程来自不同MAC地址的STA,因此AP不知道哪三个方程是属于同一个STA的,AP无法计算出STA的位置,如此在不改变WiFi芯片设计的情况下,避免了STA的位置隐私泄露的问题。
结合第一方面,在本申请的一种可能的实现方式中,在上述“STA根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置”之前,本申请的方法还可以包括:STA接收至少三个AP分别发送的位置信息。其中,STA可以接收每个AP发送的WiFi消息,该WiFi消息中携带有每个AP的位置信息。当然,STA还可以通过在存储器存储的数据库中查询获得;或者,STA可以接收一个AP发送的至少两个AP(该至少两个AP中包含该一个AP)的位置信息。
结合第一方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,针对第一AP,第一AP为至少三个AP中任一AP,“STA与第一AP信息交互,获得第一AP对应的传输时间信息”的方法可以包括:STA接收第一AP发送的第一测量消息,并获取第一时刻,该第一测量消息中携带有第一MAC地址和第一AP的地址,该第一时刻为STA接收第一测量消息的时刻;STA采用第一MAC地址在第二时刻向第一AP发送第一确认消息,该第一确认消息中携带有第一MAC地址和第一AP的地址;STA接收第一AP发送的第二测量消息,该第二测量消息中携带第二MAC地址和第一AP的地址以及第三时刻和第四时刻,该第三时刻为第一AP发送第一测量消息的时刻,该第四时刻为第一AP接收第一确认消息的时刻;STA采用第二MAC地址向第一AP发送第二确认消息,该第二确认消息中携带有第二MAC地址和第一AP的地址。其中,由于STA在与每个AP信息交互时,可以采用至少一个MAC地址,因此当AP在计算STA的位置时,获得的多个方程来自不同MAC地址的STA,因此AP不知道哪三个方程是属于同一个STA的,AP无法计算出STA的位置,如此便避免了STA的位置隐私泄露的问题。
结合第一方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,第一MAC地址与第二MAC地址相同;或者,第一MAC地址与第二MAC地址不同。其中,STA在与一个AP交互时,可以采用一个MAC地址,也可以采用多个MAC地址。
结合第一方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,针对第一AP,第一AP为至少三个AP中任一AP,在上述“STA接收第一AP发送的第一测量消息,并获取第一时刻”之前,本申请的方法还可以包括:STA采用第三MAC地址向第一AP发送携带有至少一个MAC地址和第一AP的地址的请求消息,该至少一个MAC地址中包括第三MAC地址。其中,第一MAC地址、第二MAC地址与第三MAC地址均相同;或者,第一MAC地址与第二MAC地址相同,第二MAC地址与第三MAC地址不同;或者,第一MAC地址与第三MAC地址相同,第二MAC地址与第三MAC地址不同;或者,第一MAC地址与第二MAC地址不同,第二MAC地址与第三MAC地址相同;或者,第一MAC地址、第二MAC地址与第三MAC地址互不相同。
结合第一方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,在上述“STA与至少三个AP信息交互,获得每个AP对应的传输时间信息”之前,本申请的方法还可以包括:STA生成MAC地址列表,该MAC地址列表中包括至少三个MAC地址。相应的,上述“STA与至少三个AP信息交互,获得每个AP对应的传输时间信息”的方法可以包括:STA根据MAC地址列表,按顺序使用MAC地址列表中的MAC地址分别与每个AP信息交互,获得每个AP对应的传输时间信息。其中,STA可以采用MAC地址列表,保存多个MAC地址,以方便STA在与AP信息交互时使用。
本申请的第二方面,提供一种STA,包括:获取模块和计算模块。其中,获取模块,用于STA与至少三个AP信息交互,获得每个AP对应的传输时间信息,其中,STA与至少三个AP信息交互时所采用的MAC地址互不相同,每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、STA接收第一测量消息的时刻、STA发送第一确认消息的时刻以及AP接收第一确认消息的时刻。计算模块,用于根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置。
结合第二方面,在本申请的一种可能的实现方式中,本申请中的STA还可以包括:接收模块。其中,接收模块,用于在计算模块根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置之前,接收至少三个AP分别发送的位置信息。
结合第二方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,针对第一AP,该第一AP为至少三个AP中任一AP,上述获取模块,具体可以包括:接收单元、获取单元和发送单元。其中,接收单元,用于接收第一AP发送的第一测量消息,该第一测量消息中携带有第一MAC地址和第一AP的地址。获取单元,用于获取第一时刻,该第一时刻为STA接收第一测量消息的时刻。发送单元,用于采用第一MAC地址在第二时刻向第一AP发送第一确认消息,该第一确认消息中携带有第一MAC地址和第一AP的地址。接收单元,还用于接收第一AP发送的第二测量消息,该第二测量消息中携带第二MAC地址和第一AP的地址以及第三时刻和第四时刻,该第三时刻为第一AP发送第一测量消息的时刻,该第四时刻为第一AP接收第一确认消息的时刻。发送单元,还用于采用第二MAC地址向第一AP发送第二确认消息,该第二确认消息中携带有第二MAC地址和第一AP的地址。
结合第二方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,第一MAC地址与第二MAC地址相同;或者,第一MAC地址与第二MAC地址不同。
结合第二方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,上述发送单元,还可以用于在接收单元接收第一AP发送的第一测量消息之前,采用第三MAC地址向第一AP发送携带有至少一个MAC地址和第一AP的地址的请求消息,该至少一个MAC地址中包括第三MAC地址。
结合第二方面和上述可能的实现方式,在本申请的另一种可能的实现方式中,本申请中的STA还可以包括:生成模块。其中,生成模块,用于在获取模块在STA与至少三个AP信息交互,获得每个AP对应的传输时间信息之前,生成MAC地址列表,该MAC地址列表中包括至少三个MAC地址。相应的,获取模块,具体可以用于:根据MAC地址列表,按顺序使用MAC地址列表中的MAC地址分别与每个AP信息交互,获得每个AP对应的传输时间信息。
需要说明的是,本发明实施例的第二方面及其各种可能的实现方式的各个功能单元,是为了执行上述第一方面以及第一方面的各种可选方式的定位方法,而对STA进行的逻辑上的划分。第二方面及其各种可能的实现方式的各个功能单元的详细描述以及有益效果分析可以参考上述第一方面及其各种可能的实现方式中的对应描述及技术效果,此处不再赘述。
本申请的第三方面,提供一种STA,该STA可以包括:处理器、存储器和通信接口。其中,存储器用于存储计算机执行指令,处理器、通信接口与存储器通过总线连接,当STA运行时,处理器执行存储器存储的计算机执行指令,以使STA执行如第一方面以及第一方面的各种可选方式所述的定位方法。
本申请的第四方面,提供一种计算机存储介质,该计算机存储介质中存储有一个或多个程序代码,当第三方面中的STA的处理器执行该程序代码时,STA执行如第一方面以及第一方面的各种可选方式所述的定位方法。
本申请的第五方面,提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面以及第一方面的各种可选方式所述的定位方法。
上述第三方面中STA的各个模块的详细描述和相应技术效果分析可参见上述第一方面及其各种可能的实现方式中的详细描述,本发明实施例这里不再赘述。
附图说明
图1为本发明实施例提供的一种WiFi网络的网络架构示意图;
图2为本发明实施例提供的一种STA的结构示意图一;
图3为本发明实施例提供的一种定位方法流程图一;
图4为本发明实施例提供的一种定位方法流程图二;
图5为本发明实施例提供的一种定位方法流程图三;
图6为本发明实施例提供的一种定位方法流程图四;
图7为本发明实施例提供的一种STA的结构示意图二;
图8为本发明实施例提供的一种STA的结构示意图三;
图9为本发明实施例提供的一种STA的结构示意图四。
具体实施方式
本发明实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一AP和第二AP等是用于区别不同的AP,而不是用于描述设备的特定顺序。在本发明实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本发明实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本发明实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本发明实施例提供的定位方法及设备可以应用于实现STA定位的过程中,具体的,可以应用于STA与AP信息交互,计算出STA的位置的过程中。
请参考图1,其示出了本发明实施例提供的一种WiFi网络的网络架构示意图。如图1示,该WiFi网络中包括:STA 10和至少三个AP(如AP 21、AP 22和AP 23)。
其中,STA 10和至少三个AP(如AP 21、AP 22和AP 23)通信连接,STA 10可以与至少三个AP进行信息交互,STA与每个AP进行信息交互时采用的MAC地址互不相同。例如,STA10可以采用MAC地址1与AP 21进行信息交互,STA 10可以采用MAC地址2与AP 22进行信息交互,STA 10可以采用MAC地址3与AP 23进行信息交互。
其中,本发明实施例中的STA 10可以为安装有WiFi模块的电子终端,该电子终端可以通过WiFi网络与至少三个AP进行信息交互。例如,该电子终端可以为手机、个人计算机(Personal Computer,PC)、手持设备以及pad等。
本发明实施例中的至少三个AP不局限于常规的接入点,本发明实施例中的AP可以为具备接入点功能的任一通信设备,该至少三个AP可以通过WiFi网络与STA 10进行数据交互。例如,该至少三个AP可以为WiFi路由器,此时STA 10可以为手机、电脑等用户终端;当手机或者电脑等用户终端设置为WiFi热点模式,为其他终端提供WiFi网络时,该手机或者电脑等用户终端则为本发明实施例中的至少三个AP,其它连接该至少三个AP提供的WiFi网络的终端则可以为STA 10。
或者,本发明实施例中的至少三个AP可以为手机或者电脑等用户终端,STA 10可以为与手机或者电脑等用户终端连接的可穿戴设备。
如图2所示,本发明实施例中的STA 10可以包括处理器100、存储器101和通信接口102。其中,处理器100、存储器101和通信接口102通过总线103相互连接。
其中,处理器100是STA 10的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器100可以是一个中央处理单元(Central Processing unit,CPU),也可以是专用集成电路(Application Specific Integrated Circuit,ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路,例如:一个或多个微处理器,或,一个或多个数字信号处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,FPGA)。STA 10可以包括一个或多个处理器100,即STA10可以包括多核处理器。例如,处理器100可以用于采用不同的MAC地址通过通信接口102与至少三个AP进行信息交互。
存储器101可以用于存储STA 10中的运行数据/信息或软件模块中的至少一项。例如,存储器101可以用于存储本发明实施例提供的第一测量消息。
通信接口102是一种用于数据和信息传输的通道。例如,通信接口102可以用于传输本发明实施例中的第一确认消息。
其中,总线103可以是外设部件互连标准(英文:Peripheral ComponentInterconnect,简称:PCI)总线或扩展工业标准结构(英文:Extended Industry StandardArchitecture,简称:EISA)总线等。上述总线103可以分为地址总线、数据总线、控制总线等。为便于表示,图2中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
基于图1所示的WiFi网络中STA 10与至少三个AP(如AP 21、AP 22和AP 23)之间的交互,以及图2中STA 10的各模块或组成部分,本发明实施例提供一种定位方法,该方法对图1所示的系统中STA 10与至少三个AP交互过程,进行了详细的介绍。具体的,如图3所示,该定位方法可以包括S301和S302:
S301、STA与至少三个AP信息交互,获得每个AP对应的传输时间信息。
其中,STA在与至少三个AP通信连接后,STA中的处理器100可以通过通信接口102与至少三个AP进行信息交互,获得每个AP对应的传输时间信息;并且处理器100与至少三个AP中每个AP信息交互时所采用的MAC地址互不相同。每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、STA接收第一测量消息的时刻、STA发送第一确认消息的时刻以及AP接收第一确认消息的时刻。
示例性的,STA中的处理器100可以采用MAC地址1通过通信接口102与第一AP信息交互,获得第一AP对应的传输时间信息,该第一AP对应的传输时间信息包括第一AP发送第一测量消息的时刻、STA接收第一AP发送的第一测量消息的时刻、STA向第一AP发送第一确认消息的时刻以及第一AP接收第一确认消息的时刻;处理器100可以采用MAC地址2通过通信接口102与第二AP信息交互,获得第二AP对应的传输时间信息,该第二AP对应的传输时间信息包括第二AP发送第一测量消息的时刻、STA接收第二AP发送的第一测量消息的时刻、STA向第二AP发送第一确认消息的时刻以及第二AP接收第一确认消息的时刻;处理器100可以采用MAC地址3通过通信接口102与第三AP信息交互,获得第三AP对应的传输时间信息,该第三AP对应的传输时间信息包括第三AP发送第一测量消息的时刻、STA接收第三AP发送的第一测量消息的时刻、STA向第三AP发送第一确认消息的时刻以及第三AP接收第一确认消息的时刻。
本发明实施中,STA与至少三个AP信息交互的方法相同,此处仅以STA与第一AP信息交互为例,对STA与AP信息交互的方法进行详细描述。示例性的,针对第一AP,STA采用MAC地址1与第一AP信息交互,获得第一AP对应的传输时间信息的方法可以如S401-408所述。
需要说明的是,本发明实施例中为了说明STA与每个AP信息交互时采用的MAC地址互不相同,使用MAC地址1、MAC地址2和MAC地址3等表示不同的MAC地址,且MAC地址1可能仅是第一MAC地址,也可能是第一MAC和第二MAC地址,也可能是第一MAC和第三MAC地址等等。
如图4所示,其示出了本发明实施例提供的一种STA与第一AP信息交互的方法,该方法包括S401-S408:
S401、STA采用第三MAC地址向第一AP发送请求消息。
其中,请求消息中携带有至少一个MAC地址和第一AP的地址,该至少一个MAC地址中包括第三MAC地址。
示例性的,STA中的处理器100可以使用预先生成的MAC地址列表中的第三MAC地址,通过通信接口102向第一AP发送请求消息。处理器100在向第一AP发送请求消息时,将STA的发送地址填写为第三MAC地址,将STA的接收地址填写为第一AP的地址。
S402、第一AP接收请求消息,并向STA发送第一测量消息。
其中,第一测量消息中携带有第一MAC地址和第一AP的地址,该第一MAC地址为至少一个MAC地址中任一MAC地址。第一测量消息用于指示STA获取与第一AP信息交互时的信息传输的第一时刻。
示例性的,第一AP在接受到请求消息后,在第三时刻(如T31时刻)向STA发送第一测量消息。第一AP在向STA发送第一测量消息时,将第一AP的发送地址填写为第一AP的地址,将第一AP的接收地址填写为第一MAC地址,该第一MAC地址可以与第三MAC地址相同,也可以与第三MAC地址不同。
S403、STA接收第一AP发送的第一测量消息,并获取第一时刻。
其中,第一时刻为STA接收第一测量消息的时刻。
示例性的,STA中的处理器100在T11时刻通过通信接口102接收到第一AP发送的第一测量消息,则获取的第一时刻为T11时刻。
S404、STA采用第一MAC地址在第二时刻向第一AP发送第一确认消息。
其中,第一确认消息中携带有第一MAC地址和第一AP的地址。STA中的处理器100在接收到第一测量消息后,根据第一测量消息中携带的第一MAC地址和第一AP的地址,在第二时刻通过通信接口102向第一AP发送第一确认消息,即处理器100以第一MAC地址作为STA的发送地址,以第一AP的地址作为STA的接收地址,在第二时刻通过通信接口102向第一AP发送第一确认消息。
示例性的,STA中的处理器100在T11时刻通过通信接口102接收到第一测量消息后,并在T21时刻通过通信接口102向第一AP发送第一确认消息,则获取的第二时刻为T21时刻。
S405、第一AP接收第一确认消息,并向STA发送第二测量消息。
其中,第二测量消息中携带第二MAC地址和第一AP的地址以及第三时刻和第四时刻,该第二MAC地址为至少一个MAC地址中任一MAC地址,该第三时刻为第一AP发送第一测量消息的时刻,该第四时刻为第一AP接收第一确认消息的时刻。
示例性的,第一AP在第四时刻(如T41时刻)接收到第一确认消息后,向STA发送携带有第三时刻和第四时刻的第二测量消息。第一AP在向STA发送第二测量消息时,将第一AP的发送地址填写为第一AP的地址,将第一AP的接收地址填写为第二MAC地址,该第二MAC地址可以与第一MAC地址相同,也可以与第一MAC地址不同。
S406、STA接收第一AP发送的第二测量消息。
其中,STA中的处理器100通过通信接口102接收第二测量消息,并根据第二测量消息获取到第三时刻和第四时刻。
S407、STA采用第二MAC地址向第一AP发送第二确认消息。
其中,第二确认消息中携带有第二MAC地址和第一AP的地址。STA中的处理器100在接收到第二测量消息后,根据第二测量消息中携带的第二MAC地址和第一AP的地址,通过通信接口102向第一AP发送第二确认消息,即处理器100以第二MAC地址作为STA的发送地址,以第一AP的地址作为STA的接收地址,通过通信接口102向第一AP发送第二确认消息。
示例性的,本发明实施例中,至少一个MAC地址中的第一MAC地址、第二MAC地址与第三MAC地址均相同;或者,第一MAC地址与第二MAC地址相同,第二MAC地址与第三MAC地址不同;或者,第一MAC地址与第三MAC地址相同,第二MAC地址与第三MAC地址不同;或者,第一MAC地址与第二MAC地址不同,第二MAC地址与第三MAC地址相同;或者,第一MAC地址、第二MAC地址与第三MAC地址互不相同。
示例性的,如下表1所示,为本发明实施例提供的至少一个MAC地址中包含的MAC地址(如第一MAC地址、第二MAC地址和第三MAC地址)的部分对应关系示例。
表1
上述表1中列举的内容为第一MAC地址、第二MAC地址和第三MAC地址的部分对应关系,其还可以包括其他的对应关系,本发明实施例不再一一列举。
需要说明的是,表1中MAC地址对应的数字相同时,则表示MAC地址相同,MAC地址对应的数字不同时,则表示MAC地址不同。例如,第一MAC地址、第二MAC地址和第三MAC地址均对应数字“1”,则表示第一MAC地址、第二MAC地址和第三MAC地址均相同;第一MAC地址和第二MAC地址对应数字“1”,第三MAC地址对应数字“2”,则表示第一MAC地址和第二MAC地址相同,且第二MAC地址与第三MAC地址不同。当然,本发明实施例还可以采用其他的标识来表示上述MAC地址,本发明实施例不再一一列举。
S408、第一AP接收第二确认消息。
S302、STA根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置。
其中,STA可以通过接收每个AP发送的信息以获取每个AP的位置信息,该位置信息包括每个AP的位置坐标。
具体的,STA中的处理器100通过通信接口102与每个AP信息交互时,获得与每个AP信息交互时的信息传输的时刻,即处理器100可以获得至少三组“与AP信息交互时的信息传输的时刻”,处理器100可以根据至少三个AP的位置信息以及至少三组“与AP信息交互时的信息传输的时刻”,采用预先设定的公式计算出STA的位置。
示例性的,针对第一AP,处理器100可以通过通信接口102接收第一AP发送的位置信息;处理器100还可以通过通信接口102与第一AP信息交互,获得与第一AP信息交互时的信息传输的时刻,即第一时刻、第二时刻、第三时刻和第四时刻。相应的,处理器100与任一个AP信息交互时,可以获得四个与该AP对应的信息传输的时刻(即AP发送第一测量消息的时刻、STA接收第一测量消息的时刻、STA发送第一确认消息的时刻以及AP接收第一确认消息的时刻)。
例如,此处仅以STA与三个AP信息交互为例,对STA计算STA的位置的具体实现方式进行说明。STA中的处理器100通过通信接口102接收的第一AP发送的位置信息为第一AP的位置坐标(x1,y1),处理器100通过通信接口102与第一AP信息交互获得的第一时刻为T11时刻、第二时刻为T21时刻、第三时刻为T31时刻以及第四时刻为T41时刻;处理器100通过通信接口102接收的第二AP发送的位置信息为第二AP的位置坐标(x2,y2),处理器100通过通信接口102与第二AP信息交互获得的第一时刻为T12时刻、第二时刻为T22时刻、第三时刻为T32时刻以及第四时刻为T42时刻;处理器100通过通信接口102接收的第三AP发送的位置信息为第三AP的位置坐标(x3,y3)处理器100通过通信接口102与第三AP信息交互获得的第一时刻为T13时刻、第二时刻为T23时刻、第三时刻为T33时刻以及第四时刻为T43时刻。
处理器100可以将上述获得的各个参数代入预先设定的公式其中,c为信息传输的速度,一般采用光速,T1为第一时刻,T2为第二时刻,T3为第三时刻,T4为第四时刻,x和y分别为STA的位置的横坐标和纵坐标,xi和yi分别为AP的位置的横坐标和纵坐标;如此,得到三个如下方程:
其中,处理器100可以根据方程(1)、(2)和(3),计算出x和y,得到STA的位置坐标(x,y)。
进一步的,当STA与至少四个AP信息交互时,STA中的处理器100可以将获得的各个参数代入上述预先设定的公式中,得到至少四个方程,该至少四个方程可以组合为多个方程组,每个方程组中包含三个方程;处理器100可以根据多个方程组计算出多个x和多个y,然后计算多个x的平均值以及多个y的平均值,得到的多个x的平均值和多个y的平均值则为STA的位置坐标。如此计算的STA的位置更加准确。
例如,假设处理器100与四个AP信息交互,得到四个方程(1)、(2)、(3)和(4);处理器100可以根据方程(1)、(2)、(3),计算出x和y,处理器100可以根据方程(1)、(2)、(4),计算出x和y,处理器100可以根据方程(1)、(3)、(4),计算出x和y,处理器100可以根据方程(2)、(3)、(4),计算出x和y;然后处理器100计算所有x的平均值,以及计算所有y的平均值,如此得到的x和y则为STA的更加准确的位置的坐标。
本发明实施例提供一种定位方法,STA可以与至少三个AP信息交互,计算出STA的位置,实现定位功能;并且,由于STA在与每个AP信息交互时采用的MAC地址互不相同,当AP在计算STA的位置时,获得的多个方程来自不同MAC地址的STA,因此AP不知道哪三个方程是属于同一个STA的,AP无法计算出STA的位置,如此在不改变WiFi芯片设计的情况下,避免了STA的位置隐私泄露的问题。
进一步的,本发明实施例中,STA可以在计算STA的位置之前,通过与至少三个AP交互,获取每个AP的位置信息。具体的,如图5所示,其示出了本发明实施例提供的另一种定位方法,与图3所示的定位方法相比,主要是在S302之前增加了S501,在此只对不同的地方进行详细说明,参见图5,该定位方法包括:
S301、STA与至少三个AP信息交互,获得每个AP对应的传输时间信息。
其中,STA与至少三个AP信息交互时所采用的MAC地址互不相同。每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、STA接收第一测量消息的时刻、STA发送第一确认消息的时刻以及AP接收第一确认消息的时刻。
S501、STA接收至少三个AP分别发送的位置信息。
其中,STA中的处理器100可以通过通信接口102与至少三个AP信息交互,获取每个AP的位置信息。例如,处理器100可以通过通信接口102接收每个AP发送的WiFi消息,该WiFi消息中携带有每个AP的位置信息。
当然,STA还可以通过在存储器存储的数据库中查询获得;或者,STA可以接收一个AP发送的至少两个AP(该至少两个AP中包含该一个AP)的位置信息。需要说明的是,本发明实施例中对于STA获取至少三个AP的位置信息的方法不做限制。
S302、STA根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置。
需要说明的是,本发明实施例中可以先执行S301,再执行S501;也可以先执行S501,再执行S301;还可以同时执行S301和S501。本发明实施例对于S301和S501执行的先后顺序不做限制。
进一步的,本发明实施例中,STA可以使用预先生成的MAC地址列表中的MAC地址与AP信息交互。具体的,在S301或S401之前,本发明实施例的方法还可以包括S601。例如,与图3所示的定位方法相比,在S301之前,本发明实施例还包括S601,相应的S301可以替换为S301a,在此只对不同的地方进行详细说明,参见图6,该定位方法包括:
S601、STA生成MAC地址列表。
其中,MAC地址列表中包括至少三个MAC地址。处理器100可以采用生成MAC地址列表的方式,保存多个MAC地址,以方便处理器100在与AP信息交互时使用。
例如,处理器100生成的MAC地址列表中包括第一MAC地址、第二MAC地址和第三MAC地址等。
S301a、STA根据MAC地址列表,按顺序使用MAC地址列表中的MAC地址分别与每个AP信息交互,获得每个AP对应的传输时间信息。
其中,处理器100与每个AP信息交互采用的MAC地址互不相同,处理器100在与每个AP信息交互时,可以依次按顺序使用MAC地址列表中的MAC地址。
示例性的,假设处理器100在与第一AP交互时使用的是MAC地址列表中的第一MAC地址,则在与第二AP交互时可以使用MAC地址列表中的第二MAC地址,在与第三AP交互时可以使用MAC地址列表中的第三MAC地址;若处理器100在与第一AP交互时使用的是MAC地址列表中的第一MAC地址和第二MAC地址,则在与第二AP交互时可以使用MAC地址列表中的第三MAC地址,在与第三AP交互时可以使用MAC地址列表中的第四MAC地址。
当然,本发明实施例中,STA还可以在生成MAC地址列表后,随机使用MAC地址列表中的MAC地址与至少三个AP信息交互。
例如,假设处理器100在与第一AP交互时使用的是MAC地址列表中的第一MAC地址,处理器100在与第二AP交互时可以使用MAC地址列表中的第四MAC地址,在与第三AP交互时可以使用MAC地址列表中的第三MAC地址。
S302、STA根据至少三个AP对应的传输时间信息以及至少三个AP的位置信息,计算STA的位置。
上述主要从STA的角度对本发明实施例提供的方案进行了介绍。可以理解的是,STA为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的STA及算法步骤,本发明能够以硬件,或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本发明实施例可以根据上述方法示例对STA进行功能模块或者功能单元的划分,例如,可以对应各个功能划分各个功能模块或者功能单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块或者功能单元的形式实现。其中,本发明实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图7示出了上述实施例中所涉及的STA的一种可能的结构示意图。该STA700可以包括:获取模块701和计算模块702。
其中,获取模块701的功能可以通过图2所示的处理器100实现。计算模块702的功能可以通过图2所示的处理器100实现。
其中,获取模块701用于支持上述实施例中的S301、S401、S403、S404、S406、S407和S301a,和/或用于本文所描述的技术的其它过程。计算模块702用于支持上述实施例中的S302,和/或用于本文所描述的技术的其它过程。
进一步的,如图8所示,针对第一AP,图7中的获取模块701可以包括:发送单元7001、接收单元7002和获取单元7003。其中,发送单元7001的功能可以通过图2所示的通信接口102实现。接收单元7002的功能可以通过图2所示的通信接口102实现。获取单元7003的功能可以通过图2所示的处理器100实现。
其中,发送单元7001用于支持上述实施例中的S401、S404和S407,和/或用于本文所描述的技术的其它过程。接收单元7002用于支持上述实施例中的S403和S406,和/或用于本文所描述的技术的其它过程。获取单元7003用于支持上述实施例中的S403和S404,和/或用于本文所描述的技术的其它过程。
进一步的,如图9所示,图7所示的STA 700还可以包括:接收模块703和生成模块704。其中,接收模块703的功能可以通过图2所示的通信接口102实现。生成模块704的功能可以通过图2所示的处理器100实现。
其中,接收模块703用于支持上述实施例中的S501,和/或用于本文所描述的技术的其它过程。生成模块704用于支持上述实施例中的S601,和/或用于本文所描述的技术的其它过程。
当然,本发明实施例提供的STA 700包括但不限于上述所述的模块,例如STA 700中还可以包括存储模块。该存储模块的功能可以通过图2所示的存储器101实现。
在采用集成的单元的情况下,上述获取模块701、计算模块702、获取单元7003和生成模块704等可以集成在一个处理模块中实现,该处理模块可以是处理器100。发送单元7001、接收单元7002和接收模块703可以集成在一个通信模块中实现,该通信模块可以是通信接口102。
本发明实施例还提供一种计算机存储介质,该计算机存储介质中存储有一个或多个程序代码,当STA 10的处理器100执行该程序代码时,该STA 10执行图3-图6中任一附图中的相关方法步骤。
其中,本发明实施例提供的STA 10中各个模块的详细描述以及各个模块或单元执行图3-图6中任一附图中的相关方法步骤后所带来的技术效果可以参考本发明方法实施例中的相关描述,此处不再赘述。
本发明实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行图3-图6中任一附图中的相关方法步骤。
其中,本发明实施例提供的STA 10、STA 700、计算机存储介质或者计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种定位方法,其特征在于,包括:
站点STA与至少三个接入点AP信息交互,获得每个AP对应的传输时间信息;其中,所述STA与所述至少三个AP信息交互时所采用的介质访问控制MAC地址互不相同;所述每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、所述STA接收所述第一测量消息的时刻、所述STA发送第一确认消息的时刻以及AP接收所述第一确认消息的时刻;
所述STA根据所述至少三个AP对应的传输时间信息以及所述至少三个AP的位置信息,计算所述STA的位置。
2.根据权利要求1所述的方法,其特征在于,针对第一AP,所述第一AP为所述至少三个AP中任一AP,所述STA与所述第一AP信息交互,获得所述第一AP对应的传输时间信息,包括:
所述STA接收所述第一AP发送的第一测量消息,并获取第一时刻;其中,所述第一测量消息中携带有第一MAC地址和所述第一AP的地址,所述第一时刻为所述STA接收所述第一测量消息的时刻;
所述STA采用所述第一MAC地址在第二时刻向所述第一AP发送第一确认消息;其中,所述第一确认消息中携带有所述第一MAC地址和所述第一AP的地址;
所述STA接收所述第一AP发送的第二测量消息;其中,所述第二测量消息中携带第二MAC地址和所述第一AP的地址以及第三时刻和第四时刻,所述第三时刻为所述第一AP发送所述第一测量消息的时刻,所述第四时刻为所述第一AP接收所述第一确认消息的时刻;
所述STA采用所述第二MAC地址向所述第一AP发送第二确认消息,所述第二确认消息中携带有所述第二MAC地址和所述第一AP的地址。
3.根据权利要求2所述的方法,其特征在于,所述第一MAC地址与所述第二MAC地址相同;
或者,所述第一MAC地址与所述第二MAC地址不同。
4.根据权利要求1-3任一项所述的方法,其特征在于,在所述站点STA与至少三个接入点AP信息交互,获得每个AP对应的传输时间信息之前,所述方法还包括:
所述STA生成MAC地址列表,所述MAC地址列表中包括至少三个MAC地址;
相应的,所述站点STA与至少三个接入点AP信息交互,获得每个AP对应的传输时间信息,包括:
所述STA根据所述MAC地址列表,按顺序使用所述MAC地址列表中的MAC地址分别与每个AP信息交互,获得每个AP对应的传输时间信息。
5.一种站点STA,其特征在于,包括:
获取模块,用于所述STA与至少三个接入点AP信息交互,获得每个AP对应的传输时间信息;其中,所述STA与所述至少三个AP信息交互时所采用的介质访问控制MAC地址互不相同;所述每个AP对应的传输时间信息包括AP发送第一测量消息的时刻、所述STA接收所述第一测量消息的时刻、所述STA发送第一确认消息的时刻以及AP接收所述第一确认消息的时刻;
计算模块,用于根据所述至少三个AP对应的传输时间信息以及所述至少三个AP的位置信息,计算所述STA的位置。
6.根据权利要求5所述的STA,其特征在于,针对第一AP,所述第一AP为所述至少三个AP中任一AP,所述获取模块,具体包括:
接收单元,用于接收所述第一AP发送的第一测量消息;其中,所述第一测量消息中携带有第一MAC地址和所述第一AP的地址;
获取单元,用于获取第一时刻,所述第一时刻为所述接收单元接收所述第一测量消息的时刻;
发送单元,用于采用所述第一MAC地址在第二时刻向所述第一AP发送第一确认消息,所述第一确认消息中携带有所述第一MAC地址和所述第一AP的地址;
所述接收单元,还用于接收所述第一AP发送的第二测量消息;其中,所述第二测量消息中携带第二MAC地址和所述第一AP的地址以及第三时刻和第四时刻,所述第三时刻为所述第一AP发送所述第一测量消息的时刻,所述第四时刻为所述第一AP接收所述第一确认消息的时刻;
所述发送单元,还用于采用所述第二MAC地址向所述第一AP发送第二确认消息,所述第二确认消息中携带有所述第二MAC地址和所述第一AP的地址。
7.根据权利要求6所述的STA,其特征在于,所述第一MAC地址与所述第二MAC地址相同;
或者,所述第一MAC地址与所述第二MAC地址不同。
8.根据权利要求5-7任一项所述的STA,其特征在于,所述STA还包括:
生成模块,用于在所述获取模块在所述STA与至少三个接入点AP信息交互,获得每个AP对应的传输时间信息之前,生成MAC地址列表,所述MAC地址列表中包括至少三个MAC地址;
相应的,所述获取模块,具体用于:
根据所述MAC地址列表,按顺序使用所述MAC地址列表中的MAC地址分别与每个AP信息交互,获得每个AP对应的传输时间信息。
9.一种站点STA,其特征在于,所述STA包括:处理器、存储器和通信接口;
所述存储器用于存储计算机执行指令,所述处理器、所述通信接口与所述存储器通过总线连接,当所述STA运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述STA执行如权利要求1-4中任一项所述的定位方法。
10.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在一个站点STA上运行时,使得所述STA执行如权利要求1-4中任一项所述的定位方法。
11.一种计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得所述计算机执行如权利要求1-4中任一项所述的定位方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710124887 | 2017-03-03 | ||
CN2017101248879 | 2017-03-03 | ||
PCT/CN2017/090645 WO2018157529A1 (zh) | 2017-03-03 | 2017-06-28 | 一种定位方法及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109906622A CN109906622A (zh) | 2019-06-18 |
CN109906622B true CN109906622B (zh) | 2020-12-08 |
Family
ID=63371124
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780068509.1A Active CN109906622B (zh) | 2017-03-03 | 2017-06-28 | 一种定位方法及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109906622B (zh) |
WO (1) | WO2018157529A1 (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379437A (zh) * | 2012-04-28 | 2013-10-30 | 华为终端有限公司 | 一种无线终端定位方法及相关设备、系统 |
CN105891866A (zh) * | 2016-03-31 | 2016-08-24 | 北京金山安全软件有限公司 | 一种定位方法、装置及电子设备 |
US9474041B1 (en) * | 2013-10-30 | 2016-10-18 | Marvell International Ltd. | Method and apparatus for determining a location of a network device in a wireless network |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105282842A (zh) * | 2014-06-30 | 2016-01-27 | 上海酷远物联网科技有限公司 | 一种手持终端精准定位方法 |
-
2017
- 2017-06-28 WO PCT/CN2017/090645 patent/WO2018157529A1/zh active Application Filing
- 2017-06-28 CN CN201780068509.1A patent/CN109906622B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379437A (zh) * | 2012-04-28 | 2013-10-30 | 华为终端有限公司 | 一种无线终端定位方法及相关设备、系统 |
US9474041B1 (en) * | 2013-10-30 | 2016-10-18 | Marvell International Ltd. | Method and apparatus for determining a location of a network device in a wireless network |
CN105891866A (zh) * | 2016-03-31 | 2016-08-24 | 北京金山安全软件有限公司 | 一种定位方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109906622A (zh) | 2019-06-18 |
WO2018157529A1 (zh) | 2018-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2727392B1 (en) | Distributed positioning mechanism for wireless communication devices | |
JP2006527542A (ja) | 建物内における無線装置の位置を正確に計算するためのmacプロトコル | |
CN1574846A (zh) | 与网络连接的节点的位置信息管理方法 | |
CN112134664B (zh) | 资源确定方法及装置 | |
US20120322479A1 (en) | Communication link monitoring and failure handling in a network controlled device-to-device connection | |
EP3369215B1 (en) | Bulk propagation timing measurement messaging | |
CN111565435B (zh) | 一种通信方法和接入网设备 | |
CN109391316B (zh) | 一种频带状态处理方法及设备 | |
CN108351397B (zh) | 批量精细定时测量消息调度 | |
US10557930B2 (en) | Time measurement-based positioning method, related device, and system | |
CN108353002B (zh) | 批量精细时序测量分配消息 | |
JP7455233B2 (ja) | 測位情報決定方法及び通信装置 | |
CN109906622B (zh) | 一种定位方法及设备 | |
CN111565437A (zh) | 一种通信方法和接入网设备 | |
CN110650453B (zh) | 一种通信方法及装置 | |
JP2019536016A (ja) | 測位情報伝送方法、関連デバイス、およびシステム | |
CN111565434B (zh) | 一种通信方法和接入网设备 | |
CN111565436B (zh) | 一种通信方法和接入网设备 | |
CN111565433B (zh) | 一种通信方法和接入网设备 | |
US20170118587A1 (en) | Location detection using bulk fine timing | |
CN114125936A (zh) | 一种资源调度方法、装置和存储介质 | |
WO2017063177A1 (zh) | 一种信号确定方法及装置 | |
WO2023202302A1 (zh) | 一种定位方法及通信装置 | |
WO2024031714A1 (zh) | 定位方法及其装置 | |
WO2021102944A1 (zh) | 相对定位方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |