首页 / 用于对象定位的分布式传感器系统的系统和方法

用于对象定位的分布式传感器系统的系统和方法公开 发明

技术领域

[0003] 本文公开的方面一般涉及用于提供用于对象定位的分布式传感器系统的系统、装置和/或方法。

相关背景技术

[0004] 授予Shpak的美国专利No.10,182,315(以下称为‘315专利)公开了一种用于信号处理的方法,该方法包括在给定位置处接收分别从无线发送器的至少第一和第二天线发送的至少第一和第二信号。该至少第一和第二信号使用在发送信号之间具有预定义循环延迟的多载波编码方案来编码相同的数据。使用循环延迟处理接收的第一和第二信号,以便导出第一和第二信号之间的相位延迟的测量。基于对相位延迟的测量,估计第一信号和第二信号从无线接入点到给定位置的离开角。
[0005] 同样授予Shpak的美国专利No.9,814,051(以下称为‘051专利)公开了一种用于信号处理的方法。该方法尤其提供了在给定位置处接收分别从无线发送器的至少第一和第二天线发送的至少第一和第二信号,该至少第一和第二信号使用在发送信号之间具有预定义循环延迟的多载波编码方案来编码相同的数据,并且使用循环延迟来处理接收的第一和第二信号,以便导出第一和第二信号之间的相位延迟的测量。基于对相位延迟的测量,该方法提供估计第一和第二信号从无线发送器到给定位置的离开角。

具体实施方式

[0021] 根据需要,本文公开了本发明的详细实施例;然而,应当理解,所公开的实施例仅仅是可以以各种形式和替代形式体现的本发明的范例。附图不一定按比例绘制;一些特征可能被夸大或最小化以示出特定组件的细节。因此,本文公开的具体结构和功能细节不应被解释为限制性的,而是仅作为教导本领域技术人员以各种方式采用本发明的代表性基础。
[0022] 应当认识到,如本文公开的至少一个控制器(或至少一个处理器)可以包括各种微处理器、集成电路、存储器设备(例如,FLASH、随机存取存储器(RAM)、只读存储器(ROM)、电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)或其其他合适的变体)以及彼此协作以执行本文公开的(一个或多个)操作的软件。另外,如本文所公开的至少一个控制器利用一个或多个微处理器来执行体现在非暂时性计算机可读介质中的计算机程序,该非暂时性计算机可读介质被编程为执行所公开的任何数量的功能。此外,本文提供的(一个或多个)控制器包括外壳和位于外壳内的各种数量的微处理器、集成电路和存储器设备(例如,FLASH、随机存取存储器(RAM)、只读存储器(ROM)、电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM))。所公开的(一个或多个)控制器还包括基于硬件的输入和输出,用于分别从本文讨论的其他基于硬件的设备接收数据和向其发送数据。
[0023] 要求分组无线通信的收集系统被动地确定移动收发器(“设备”)的位置。设备与关联接入点(“AP”)通信,以将它们的业务桥接至互联网和从互联网桥接它们的业务。随着无线通信方案的进步,传输被适配和定制为瞬时链路条件,从而使得从任意位置的收集具有挑战性并且由于接收器的不适当位置而缺乏内容。例如,只有当设备决定针对接收AP的当前链路状况是原始的时,才选择1024正交幅度调制(“QAM”)的调制方案。这可能使从较不适当的位置的接收变得难以理解。因此,随着调制解调器技术的进步,被动无线嗅探器变得越来越不受欢迎;被动嗅探器变得不可靠,因为嗅探器被计入主动自适应过程之外。接收器位置的多样性是收集位置敏感数据的关键因素,例如,用于三角测量的目的。因此,固有的挑战是被动无线定位。
[0024] 下面将阐述的解决方案包括但不限于将从多个接收器和关联接入点收集的小块信息的马赛克重建为相干位置估计。可以由多个传感器在单个惯性参考系上在空间‑时间中观测对象。各个传感器读数随时间的马赛克可以揭示对象在期望的空间‑时间参考系中的位置。各个传感器可以是锁孔(keyhole)观测者,每个观测者只能看到一段空间。如果将不同锁孔观测融合到较大现实图片中,那么可实现有效观测。观测不是很好地同步的,观测者分布在空间‑时间中。此外,不同的传感器具有不同的能力,例如,位置接收器可以读取到达角,使用本地时钟注册时间戳事件,但不解码除它们的PHY报头之外的分组的内容。关联接入点可以解码分组的内容,包括它们的PHY和MAC层,并且注册时间戳事件,但不一定读取到达角。通过以某种方式将观测结果拼接在一起来重建现实是可能的。时间透视和空间透视都是需要的。
[0025] 所公开的实施例可以提供在时间上唯一地和全局地标记在空间和时间上的不同位置处记录的各个事件的能力,以构建对事件的全局理解,否则例如由单个“锁孔”观测者进行可能是不可能的。每个事件日志是按时间顺序的,即,从本地角度来看是相同排序的,第一是第一,第二是第二,以此类推。例如,使用伽马射线传感器的局部超新星事件遍布全球。传感器可以使用自主时钟。一旦识别出单独的爆炸事件,例如2015年2月2日在各种传感器位置处的NGC 2770,则大图片揭示了使用单独读数不可解读的秘密,例如,只有当从不同角度获取同一事件的读数时,才能通过三角测量(例如,使用视差效应)提取天空中的超新星的位置,从而展开传感器位置并识别多个分布式事件日志中的事件(例如,NGC 2770)。
[0026] 通过另一个类比,使用在时间上松散同步的不同证人的多个事件日志来解决犯罪,一个证人听到两次枪击,距离他/她的公寓三秒,另一个证人看到在街道上行走的闪光,并且在阳台的第三个观测者在看到闪光的一分钟后看到一个人跑步。由于观测者在相同的惯性参考系上,因此由两个观测者看到的两个不同事件之间的时间差几乎相同(例如,在牛顿世界中相同,在爱因斯坦世界中时间漂移)。因此,下面的实施例提供了一种系统,该系统能够基于从接收器收集的信息重建马赛克以提供相干位置估计。
[0027] 在另一示例中,一组无线接收器分析不同位置处的单独分组传输。只有当该单独的分组传输被唯一地和全局地标记时(例如,如先前示例中的NGC2770),才能分析发送器的位置和身份。在实践中,一些传感器可以提取接收的到达角度而不是身份,其他传感器可以提取发送器身份,另一个(例如,单个天线位置接收器)可以提取匿名传输的到达时间而不是身份,也不是到达角度,这需要多于单个天线。
[0028] 移动WiFi设备与(一个或多个)接入点通信,并且这样的WiFi设备与作为它们到互联网的网关的接入点相关联。移动设备可以一次仅与一个接入点相关联(如果有的话)。当发送数据分组时,移动设备利用诸如正交相移键控(QPSK)、16正交幅度调制(QAM)(或“16QAM”)等的不同调制方案和波束形式来对分组传输进行速率适配,使得特别是关联接入点可以可靠地接收这些分组,包括移动设备的媒体接入控制(MAC)地址(包括身份)。如果接入点未能接收到分组,则它避免确认分组的接收,使得移动设备将重新发送分组。该机制被称为自动重复请求(“ARQ”),并且这种重传可以确保消息的可靠和完整传输。然而,该机制通过设计在移动设备和关联接入点之间是点对点的。除了关联接入点之外的接收器可能不受ARQ机制的保护,或者可能在波束外。另外,其他接收器可能具有太少的天线而无法解码多输入多输出(MIMO)消息,并且因此可能由于错误(例如,没有传输)、或者由于速率太高而使得接收器无法接收(给定特定的链路条件),而无法接收移动MAC地址。随着MIMO的引入,ARQ和速率适配使得链路条件本质上更加点对点。类似地,可以在非常特定的多径条件下接收数据,该多径条件对发送器的位置、接收器和由发送器或接收器照射的反射对象非常敏感。因此,许多位置接收器可以仅接收PHY报头,其通过设计是鲁棒的,而不接收发送器地址。
[0029] 图1是根据本发明的实施例的用于无线通信和位置查找的系统100的示意性图示说明。作为示例,图1示出了典型的环境,诸如购物中心或街道,其中通常由不同的WLAN所有者彼此独立地部署多个接入点122、124、126(或发送器122、124、126)。应当认识到,接入点122、124、126的数量可以变化并且是静止的。接入点122可以被定义为关联接入点。关联接入点是由移动设备128选择的实体,其将所有业务与分布式(或分布)系统(“DS”)(即,系统
100)桥接。关联接入点122被配置为观测发送到移动设备128的所有信息。关联接入点122通常被配置为向至少一个服务器140(“服务器140”)提供信息,并且传送信标分组以及其他分组。下面将更详细地讨论该方面。接入点124和126通常各自被定义为非关联接入点并且发送或广播信标。接入点124和126不连接到服务器160(即,非关联接入点124和126不能向服务器140报告)。
[0030] 由接入点122、124、126发送的信号由以用户132操作的移动设备128、130形式的接收器接收。用户132在由系统100覆盖的区域内自由移动。在所示实施例中,移动设备128、130被示出为蜂窝电话;但是可以以类似的方式使用其他类型的移动收发器,诸如膝上型计算机、平板计算机、可穿戴电子设备(例如,智能手表)、物联网(IoT)设备等。应当认识到,移动设备128、130的数量也可以变化。还认识到,移动设备128还可以对应于位置标签137,其包括无线收发器和被布置用于附接到对象129的其他电子电路。例如,对象129可以对应于女士的手提包(或钱包),并且位置标签131可以提供指示手提包129的位置的信息。每一移动设备128、130通常包含MODEM或用于实现与环境中的各种接入点122、124、126的无线通信的其它装置。
[0031] 还认识到,接入点122、124和126以及移动设备128、130还可以与任何数量的传感器(也称为“接收器”或“被动接收器”或“位置接收器”)131a、131b等无线通信。应当认识到,可以提供任何数量的传感器(或接收器)131a、131b。在一个示例中,传感器131a、131b可以是静止位置传感器,诸如例如接近传感器、地理围栏传感器等,其遍及建筑物的一个或多个楼层定位以检测用户132的存在。一般而言,传感器131a、131b可以是静止的,并且被编程为从接入点122、124、126接收信标和其他信息以及从移动设备128、130接收数据分组。下面将更详细地讨论该方面。传感器131a、131b还可以向至少一个服务器140发送信息。在一个示例中,传感器131a、131b可以向服务器140发送到达角读数,以至少用于确定移动设备128、130的位置的目的。下面将更详细地描述该方面。
[0032] 位置接收器131a、131b等可以找到由移动设备128、130发送的信号的到达角。假设系统100中的位置接收器131a、131b等中的每一个例如具有两个或三个天线135,如图1所示。在系统100中天线135的数量可以变化。假设移动设备128、130各自具有单个全向天线136,但是本文描述的用于检测角度的技术可以类似地由多天线站实现。
[0033] 服务器140包括可编程处理器142和存储器144。本文描述的服务器140的功能通常在处理器142上运行的软件中实现,该软件可以存储在有形的非暂时性计算机可读介质上,诸如光学、磁性或电子存储介质。如本文所述,在将正在向网络中的关联接入点122和各种接收器131发送信息的移动设备128、130的身份拼凑在一起时存在固有问题。图2提供了这种挑战的图形表示。
[0034] 例如,图2一般性地示出了发送器128a、128b、128c(或移动设备128a、128b、128c),其将分组(例如,基于WiFi的分组)发送到关联接入点122及传感器131a、131b(下文中称为“接收器131a、131b”)。例如,发送器128a可以发送分组1和5,发送器128b可以发送分组3和7,并且发送器128c可以发送分组4。应当认识到,接入点126(例如,用于时间差的信标可以或可以不与关联接入点122相关联,而是与例如接入点126相关联)以符合802.11n(例如,基于WIFI的标准)的预定速率(例如,大约每102.4ms)周期性地发送信标150a、150b(作为分组
2和6)。类似地,接收器131a、131b旨在接收信标150a、150b(或分组2、6)。然而,如图所示,接收器131b尚未检测到信标150a(例如,如图2中还示出为分组2(然而不是数据分组)),但是已经检测到信标150b(或分组6(然而不是数据分组))。
[0035] 如图2中一般性地示出的,接入点126在时间上在接收器131a之后并且在时间上在接收器131b之前。还如示例所示,接收器131a没有检测到分组3和7;并且接收器131b没有检测到分组2。如上所述,发送器128a发送分组1和5。因此,由接收器131a检测到的分组1和5的到达角(AoA)读数大致相同(例如,100度)。到达角一般指示发送器128a、128a的位置被限制在平面上的已知线。
[0036] 接收器131b还从发送器128a接收分组1和5,并且接收器131b检测到的AoA读数大约为例如220度。与分组1和5相关的接收器131b的AoA读数不同于接收器131a的AoA读数,因为接收器131a和131b相对于发送器128a以不同的角度定位(参见图3)。假设接收器131a、131b和发送器128a是共线的并且发送器128a不在中间,则接收器131a、131b的相应AoA读数将大致相同。
[0037] 通常,应认识到,出于上文所解释的原因,数据分组或(WiFi分组)(例如,分组1、3、4、5和7)不向发送此类分组的发送器128a、128b、128c的位置接收器131a、131b提供身份。
WiFi分组通常包括物理报头(例如,PHY),随后是媒体接入控制(MAC)报头,然后是有效载荷。虽然发送器128a、128b、128c的标识可以被编码到每个数据分组中,但是并非所有接收器131a、131b都能够解码数据分组中的消息的该部分。通常,数据分组或消息包括物理“PHY”报头部分,其以简单/鲁棒的调制方案进行编码。该部分被设计成即使在极端链路条件下也是可理解的。PHY报头不包括发送器128a、128b、128c的身份。发送器128a、128b、128c的身份可以是在PHY报头之后发送的MAC报头的一部分。可以保证移动设备128a、128b与之相关联的唯一接入点122解码这样的移动设备128a、128b在诸如基本服务集“BSS”的无线网络与分布系统(“DS”)有线网络之间桥接的所有分组。如在802.11MAC协议中阐述的ARQ重试机制(其中接入点122可以在其中起作用)可以确保将整个消息可靠地发送到由帧校验序列(“FCS”)保护的接入点122。
[0038] 还需要提及的是,数据分组1、3、4、5和7不具有唯一的显式排序。数据分组(例如,分组1、3、4、5和7)中的PHY报头不是唯一的,因为许多分组承载相同的PHY报头。相反,完整的数据分组可能非常可能是唯一的,特别是在加密的情况下。分组的全部内容可以对关联接入点122可用,但是可以对接收器131a、131b不可用。
[0039] 图2一般传达发送器128a、128b、128c的身份不能由单独的位置接收器131a、131b确定。这种强制性确定的缺乏可能导致对发送器128a、128b、128c的位置估计的有害后果。例如,接收器131a可以从发送器128a读取AoA读数,并且接收器131b可以从发送器128b读取AoA读数,并且如果错误地假设源自发送器所在的相同位置,则得到的马赛克将是总异常值。
[0040] 在诸如IEEE802.11(例如,WIFI标准)的典型无线协议中,自适应地设置调制方案,以在给定链路条件的情况下优化数据速率。然而,其他接收器131a、131b可能经历不同的、更差的链路条件,从而妨碍数据的可靠接收。如上所述,由接入点122、124、126和移动台128a、128b、128c等发送的WiFi分组通常包括PHY报头,随后是(MAC)报头,然后是有效载荷。
分组PHY报头可以被设计为鲁棒的,以避免媒体分组冲突,例如,作为协议中精心设计的“冲突避免”机制的一部分。因此,分组PHY报头被设计成在最极端的链路条件下存活,以避免众所周知的“隐藏节点综合征”,由此发送器128a、128b、128c对接收器131a、131b是无用的,但是不知不觉地中断来自较近发送器128a、128b、128c的分组的接收。通常,例如,对于每个接收器131a、131b提取到达方向(“DoA”),这仅需要PHY报头,因此这种传感器(或接收器131a、
131b)提供AoA读数而不是发送器128a、128b、128c的身份。物理报头PHY提供由接收器131a、
131b的本地时钟采样的接收时期(epoch)(例如,分组到达的时间)的准确估计。然而,不同传感器(或接收器131a、131b)位置处的本地时钟是偏移的,并且由于晶体振荡器容差(通常高达百万分之100分率(ppm))还经历高达每2.78小时一秒的轻微漂移。此外,例如在IEEE 
802.11“无线LAN”中并且如上所述,信标150a、150b大约每102.4毫秒由接入点124发送一次,接入点124通常是静止的。接入点122、124、126将信标150a、150b发送到任何潜在接收器(例如,移动设备128a、128b、128c或接收器131a、131b),并且因此信标150无法速率适配且未经波束成形且未经MIMO编码。相反,信标150是CDD编码的,这有助于AoA技术。几乎所有接收器131a、131b和移动设备128、130都能够可靠地接收包括MAC层的内容的信标150。通常,信标分组中的MAC层包括可辨别的发送时间戳。信标150a、150b中的MAC层包括接入点122的源MAC地址加上发送时间戳,它们在空间‑时间上是全局唯一的,很像上面提到的NGC2270示例。通常,信标传输类似于在全球各地看到的彼此可区分的超新星事件。
[0041] 移动设备128、130(或发送器128a、128b、128c)发送不一定唯一且使用高速率调制方案的类型DATA的分组,该分组可经波束成形且经MIMO编码且因此对空间中大多数位置接收器131a、131b来说不是典型地清晰可读的。然而,接收器131a、131b能够从接入点122、124、126接收时间空间唯一的信标150,在它们的寿命期间使用固定的接收器位置和单调的本地时钟来给接收的分组加时间戳。通过测量(i)除了MAC地址和发送器时间戳之外的信标
150事件与(ii)包括AoA和本地接收器时间戳的数据分组事件之间的时间差,接收器131a、
131b可以以不变的形式报告它们的读数,使得可以通过在报告网络上从多个接收器131a、
131b收集数据来在中心位置(例如,服务器140)处估计每个单独的发送器128a、128b、128c的位置。通常,接收器131a、131b利用接入点122、124、126发送的信标150作为与发送器
128a、128b、128c发送的数据分组的时间同步机制,所述数据分组恰好在信标150a、150b的传输之前或在信标150a、150b之后。这种差分报告不易于遭受网络延迟和在位置接收器和服务器之间经历的抖动。
[0042] 每个接收器131a、131b可以提供单独报告,该单独报告包括信标150的分组标识、由接入点122、124、126发送的分组的接收时期、以及从来自发送器128a、128b、128c的数据分组的物理报头收集的位置信息(例如,到达角、到达时间等)。然后,服务器140可以合并相对于全球唯一信标事件具有几乎相同时间差的数据分组的所有读数,以相对于发送器128a、128b、128c和接收器131a、131b的位置及时提供特定移动分组传输事件的列表,使得可以在任何单个时间点进行观测。为了更高的准确性,可以通过报告来自不同的已知位置接收器的来自接入点122或124或126的信标分组之间的时间差来减轻接收器131a、131b之间的时钟漂移。
[0043] 图4描绘了根据一个实施例的由系统100执行的用于识别发送器122、124、126(或移动设备128、130)的位置的方法200。通常,参考图2到图4的本公开一般对应于其中接入点122、124、126将信标发送到移动设备(或发送器128a、128b、128c),由此可不响应于此类信标将确认发送回到接入点122、124、126的实例。类似地,图2到图4还对应于其中接入点122、
124、126响应于先前从接入点124、126、128发送到移动设备128a、128b、128c的数据分组而从移动设备128a、128b、128c接收确认的实例。然而,在这种情况下,可能必须执行结合图6公开的方案以考虑从移动设备128a、128b、128c发送回接入点122、124、126的确认。
[0044] 在操作202中,对应的发送器(或接入点)122、124或126向网络中的对应接收器131a、131b广播信标150,信标150具有物理(“PHY”)报头,随后是源MAC报头,然后是数据。应当认识到,PHY报头、MAC报头和数据都在基于WiFi的分组上提供。发送器122、124或126还向接收器131a、131b发送发送器时间戳。
[0045] 在操作204中,接收器131a、131b从对应的发送器122、124、126接收信标150以及发送器时间戳。接收器131通常确定由其本地时钟采样的信标150上的分组到达的时间,以提供接收器时间戳。通常,(一个或多个)信标150可以用作时间上的重演(encore)。参考唯一信标150报告来自发送器(或移动设备)128a、128b、128c的数据事件(或数据分组)。例如,数据分组可以刚好在接入点122、124、126发送信标150之前或之后由移动设备128a、128b、128c发送。因此,在这方面,可以确定数据分组和各个信标150之间的时间差。
[0046] 在操作208中,接收器131在信标150上提取对应接入点122、124、126的发送器时间戳。此外,接收器131还确定指示对应接入点122、124、126的标识的源MAC地址。通常,源MAC地址通常包括在由相应的接入点122、124、126发送的信标150的MAC层中。对应接入点122、124、126的发送器时间戳和MAC地址在空间‑时间上是全局唯一的。信标传输可以由服务区域中的接收器看到,并且每个信标传输可以彼此区分。
[0047] 在操作209中,接收器131从发送器128a、128b、128c接收数据分组。
[0048] 在操作210中,接收器131a、131b和关联接入点122生成单独的报告,其包括参考信标分组信息(例如,发送器时间戳和MAC地址)、信标150的接收时期与移动数据分组(例如,由发送器128a、128b、128c(或移动设备)发送的分组)的接收时期之间的时间差(例如,在接收器131处接收到信标150时与在接收器131处接收到数据分组时之间的相对时间测量),以及经由由位置接收器131a、131b接收的数据分组的PHY层(或物理报头)中的信息从AoA获得的位置信息。关联接入点生成的报告包括数据分组MAC层中的发送器地址(唯一标识),但不一定包括AoA信息。服务器140可以通过在位置发送器报告和关联接入点报告中定位接收器131a、131b的相同的接收信标150与接收数据分组之间的相同(在预定义的误差裕度内)时间差来确定发送器128a、128b、128c的身份。
[0049] 信标150的接收时期与来自发送器128a、128b、128c(或移动设备)的分组的接收时期之间的时间差可以描述如下。例如,由接入点122、124、126发送的信标150(或信标分组)和由发送器(或移动设备)128a、128b、128c发送的数据分组通过发送器128a、128b或128c一个接一个地没有重叠地发送,前者在后者开始之前结束。任一分组在接收器131结束处“开始”的确切时间经由WiFi标准以优于1微秒的高精度很好地定义。例如,信标开始(时期)已经在本地时间1.111111秒到达接收器131a、131b,并且数据分组已经在1.111999秒到达接收器131a、131b,因此计算的差值是0.000888秒或888微秒。
[0050] 在操作212中,每个接收器131将报告递送(或发送)到服务器140。关联接入点还将其报告递送到服务器140。然后,服务器140以相对于全局唯一信标事件(其中可以观测从不同已知位置观测时间上的单个事件的观测)的几乎相同的时间差合并数据分组的所有读数。这可以以以下方式执行。例如,服务器140正由对应的接收器131a、131b和131c报告具有111,222,333微秒的发送器时间戳(常规地从接入点最近启动以来测量的,在该示例中几乎不超过111秒)的信标150被接收器131a、131b和131c接收。所有三个接收器131a、131b或
131c还分别在344、346、347微秒之后从相应的发送器128接收数据分组。每个接收器131a、
131b或131c使用它们的本地时钟来测量时间差。服务器140确定所有三个分组事件源于同一数据分组传输事件,该事件源于单个特定移动发送器128a、128b或128c,因为定时误差低于预定误差。换句话说,服务器140确定发送器128的身份,因为每个接收器131a、131b、131c接收到具有发送器时间戳111222333的信标150,并且所有三个接收器131a、131b、131c在相对于发送器时间戳的通常相同的时间从发送器128接收到数据分组,并且例如,接收器131c是关联接入点,其报告包括由关联接入点从发送的数据分组的MAC层解码的移动发送器的身份。
[0051] 在操作214中,服务器140通过利用三角测量来确定发送器128的位置(一旦在操作212中被识别)。服务器140基于发送器131a的AoA读数(例如100度)并且基于接收器131b的AoA读数(例如220度)对所识别的接收器128执行三角测量(参见图3)。三角测量需要三个或更多个AoA读数,每个位置接收器一个AoA读数,以评估估计误差。可以基于AoA读数采用三角测量来确定发送器128的位置的方式的一个示例可以在以下文献中公开:“Providing Localization using Triangulation Method in Wireless Sensor Network,International Journal of Innovative Technology and Exploring Engineering(IJITEE)ISSN:2278‑3075,Volume‑4 Issue 6,2014年11月,Leelavathy S.R.和Sophia S”。
[0052] 以下结合图2阐述执行三角测量的另一示例。接收器131b报告信标150b(例如,6)、数据分组1、3、4、5和7的接收,并且接收器131a报告信标150a和150b(例如,2和6)的接收、数据分组1、4和5的接收;以及信标中的发送器时间戳等。数据分组1、4和5不能由位置接收器131解码,只有关联接入点122而位置接收器131a可以将它们的AoA读数分别估计为100度、
140度和100度。服务器140提供由接收器131a报告的描绘的分组(4)和由接收器131b报告的描绘的分组(4)也由关联接入点122报告为图2中的分组4的猜测。分组4和信标6(或信标
150b)之间的时间差在由接收器131a、接收器131b和关联接入点122报告的事件中相对于信标150b在预定的接收时间误差范围内几乎相同。(例如,10μs并且参见图10的表500中的事件#12‑24)。此时,已知分组5具有如接收器131a所见的100度的AoA读数和如关联接入点122所解码的发送器128a的身份(也参见下文)。给定在上面的示例中识别来自一个特定分组(例如,分组5)的接收器的至少三个AoA读数,可以通过绘制三条线来估计发送器128a的位置,每个接收器131a一条线,在接收器131a的100度的估计AoA方向(例如,参见图3的99.9度)上与接收器131a的已知位置交叉。这三条线构成三角形(为了简单起见,图3仅描绘了两条线),发送器128a通过该估计过程被限制在该三角形中。返回参考图2,仅示出了两个接收器131a、131b,然而实际三角测量可能需要第三接收器。应当认识到,虽然未在图3中示出,但是可能需要至少三个接收器来执行三角测量。
[0053] 图5一般性地对应于根据一个实施例的由系统100执行的用于识别发送器122、124、126(或移动设备128、130)的位置的更详细的方法250。
[0054] 在操作252中,服务器140从关联接入点122接收第一信息,该第一信息指示:(i)关联接入点122从移动设备128接收到第一数据分组的第一接收器时间戳,以及(ii)关联接入点122从接入点124(即,非关联接入点124)接收到第二(信标)分组的第二接收器时间戳。
[0055] 在操作254中,服务器140确定第一接收器时间戳和第二接收器时间戳之间的第一差,以生成第一差值。
[0056] 在操作256中,服务器140从第一位置接收器131a接收第二信息,该第二信息指示(i)第一位置接收器131b从移动设备128接收到第三数据分组的第三接收器时间戳131b,以及(ii)第一位置接收器131a从接入点124接收到第二(信标)分组的第四接收器时间戳。
[0057] 在操作258中,服务器140确定第三接收器时间戳和第四接收器时间戳之间的第二差,以生成第二差值。
[0058] 在操作260中,服务器140将第一差值和第二差值中的每一个与预定接收器时间误差范围进行比较。
[0059] 在操作262中,服务器140响应于第一差值和第二差值中的每一个在预定接收器时间误差范围内,确定由移动设备128发送的第一分组和第三分组相同。
[0060] 在操作264中,服务器140再次重新执行操作252、254、256、258、260和262,然而利用第二位置接收器131b而不是第一位置接收器131。例如,服务器140结合第二位置接收器131b执行以下操作。服务器140从第二位置接收器131b接收第三信息,该第三信息指示(i)第二位置接收器131b从移动设备128接收到第四分组的第五接收器时间戳,以及(ii)第二位置接收器128从接入点124接收到第二分组的第六接收器时间戳。服务器140确定第五接收器时间戳和第六接收器时间戳之间的第三差,以生成第三差值。
[0061] 然后,服务器140将第一差值和第三差值中的每一个与预定接收器时间误差范围进行比较,并且响应于第一差值和第三差值在预定接收器时间误差范围内,确定由移动设备128发送的第一分组和第四分组相同。然后,服务器140从第一位置接收器131a和第二位置接收器131b获得AoA信息,该AoA信息指示移动设备128相对于第一位置接收器131a和第二位置接收器131b的取向的方向。在操作266中,服务器140至少基于从第一位置接收器131a和第二位置接收器131b接收的AoA信息来确定移动设备128的位置。
[0062] 图6是表示根据一个实施例的由系统100执行的基于合并的立即确认分组事件来识别接入点122的方案300。当移动设备(或发送器128)响应于从接入点122接收到数据分组128c而将确认分组(或确认)发送回接入点122时,可以采用方案300。在一些情况下,例如,发送器128a、128b、128c可以将确认发送回关联接入点126。在其它情况下,例如,发送器
128a、128b、128c可以不将确认发送回关联接入点126。如果情况是后者,则如所阐述的操作。应当认识到,方法200提供了可以使用关联接入点122、124、126中的身份读数来识别发送器128a、128b、128c与接收器131a、131b的位置的方式(例如,通过合并同一事件的两个接收器读数)。然而,系统100也采用的方案300可以经由服务器140通过利用接入点122、124、
126将两个事件合并成一个事件来识别发送器128a、128b、128c。例如,WiFi协议(例如,IEEE802.11)依赖于称为立即确认的机制,其中接入点122a向移动设备128b发送分组。在这种情况下,移动设备128b立即将确认分组(或ACK分组)302发送回接入点122,以确认从接入点122接收到数据分组。然而,根据IEEE 802.11,发送回接入点128b的ACK分组中不存在发送器128b的身份,只有接入点128的身份被嵌入在分组中。通过观测在接收到ACK分组之前立即发送的数据分组中的MAC报头304,可以隐式地揭示发送器128b的身份。例如,MAC报头
304包括接收器地址(RA)字段306。因此,服务器140可以响应于从发送器128b接收到ACK分组302而检查MAC报头304中的RA字段306的内容,以确定哪个发送器128已经发送了ACK分组
302。在图6所示的方案300中,RA字段306被设置给发送器128b(或T2),并且在这种情况下,服务器140确定发送器128b发送了ACK分组302。
[0063] 图6还示出了接收器131a、131b从接入点122接收数据分组(例如,数据)并且从发送器128b接收ACK分组。接收器131a、131b正从发送器(或移动设备128b)接收ACK。接收器131a、131b还测量来自发送器128b的AoA读数(例如,接收器131a的100度的AoA读数和接收器131b的220度的AoA读数)。图6示出了虽然接收器131a、131b接收数据分组和确认分组,但是MAC层处的数据分组的内容是未知的或如上所述提供的。还认识到,接收器131a、131b还从接入点122接收信标150,信标150包括接入点122、124的发送器时间戳。如上所述,发送器时间戳指示接入点122将信标150发送到接收器131a、131b的时间。类似地,接收器131a、
131b接收由发送器128a(即,移动设备128a)发送的加时间戳的发送器确认。因此,就此而言,接收器131a生成用于接入点122a、122b和移动设备128a、128b两者的时间戳。可以存在两种类型的时间戳。例如,第一类型的时间戳(或发送器时间戳)可以由接入点122、124嵌入到信标分组中,并且第二类型的时间戳(或接收器时间戳)是当接收到信标150或数据或确认时由接收器131取得的时间戳。因此,信标分组包括发送器时间戳(例如,来自接入点122的时间戳)和接收器时间戳(例如,在接收器131处的时间戳)。因此,接收器131确定在接收器131处接收的信标150的时间戳与用于报告给服务器140的数据分组(或确认)的时间戳之间的时间差。发送器时间戳(例如,嵌入在由接入点122发送的信标150中的时间戳)用于使各个信标150在多个接收器131a、131b之间可识别(例如,相对于由接收器131a、131b嵌入发送器时间戳的信标的时间差报告,其相对于相同的信标传输事件进行)。
[0064] 如上所述,服务器140可以基于在从发送器128接收到确认之后查看RA字段306的内容来确定发送器128的身份。服务器140还从接入点122(例如,经由信标150)和移动设备128(例如,经由确认)从接收器131a、131b接收发送器时间戳,以基于信标150的多次接收来确定所识别的发送器128何时发送信息。基于发送器128的身份和发送器时间戳,服务器140可以确定或识别用于各个传输的不同接收。然后,接收器131a、131b可以向服务器140报告它们测量的AoA读数。服务器140可以基于发送器128的身份和两个或更多个AoA读数来确定单个发送器128(例如,移动设备)的位置。
[0065] 图7是根据一个实施例的用于基于图6的方案300确定接收器的位置的方法400。
[0066] 在操作402中,服务器140基于接收到确认来确定发送器(即,移动设备)128的身份,如结合图5的方案200所描述的。如上所述,接入点122、124、126从发送器128a或128b或128c接收确认分组(或确认)302,以确认从接入点122、124、126接收到数据分组。接入点
122、124、126向服务器140发送与包括RA字段306的MAC报头304相对应的信息。然后,服务器
140可以观测MAC报头304中的内容(例如,RA字段306的内容)以确定哪个发送器128已经发送了确认分组302。应当认识到,接入点122、124、126可以向服务器140发送与包括RA字段
306和确认分组302的MAC报头304相对应的信息,以使服务器140能够确定发送器128的身份。
[0067] 在操作404中,接收器131从接入点122、124、126接收信标150以及发送器时间戳。
[0068] 在操作406中,接收器131还从发送器128接收AoA读数和确认分组302。接收器131确定由其本地时钟采样的信标150上的分组到达的时间,以提供接收器时间戳。
[0069] 在操作408中,服务器140聚合来自位置接收器的由接入点122(例如,经由信标150)发送的发送器时间戳和MAC地址的报告,以及来自接收器131a、131b的分组接收时间戳加上AoA读数,以报告相对接收的时间戳和AoA读数对。时间戳是相对于信标150的。以下示例描述了所识别的移动设备(或发送器)发送确认并且接收器131a、131b几乎在单个时间点接收确认的方式(例如,几乎因为在可接受的误差裕度内的略微不同的传播延迟)。参考图2(还参见表500,事件编号21(参见502)),数据分组4详述发送器128c和发送器128a的接收器地址。根据IEEE 802.11,由关联接入点122接收的在时间上的下一个分组仅包括接收器地址,从作为接收器的发送器128c开始。服务器140可以任意地将该数据分组注释为分组#5。
服务器140可能需要揭示源自移动设备的移动身份分组#5。分组#5说明它指向发送器128c。
服务器140可以及时返回一个分组,注释为#4,验证它是由发送器128c发送的。分组#4声明指向发送器128a,因此,通过推断,分组#5源自移动发送器128a。服务器140可能仅需要及时返回一个分组,注释为#4。在这种推断的场景中,响应于分组#4,在分组#4之后立即发送确认分组#5。应当认识到,确认分组不报告发起者(或发送器128a、128b、128c)的身份,而是报告确认的预期接收者的身份。通过来自先前分组(例如,发送到发送器128a的注释的数据分组#4)的推断来揭示发起者的身份。
[0070] 在操作410中,服务器140合并相对于特定信标报告在相同的相对时间戳处的读数,并且具体地是发送时间戳和发送器MAC地址。位置接收器提供AoA读数,关联接入点提供发送器128(例如,移动设备)的身份。如下所述的图7结合操作410(以及结合图4所述的操作212)提供了更多细节。
[0071] 在操作412中,服务器140执行三角测量以确定发送器128的位置。如上所述,三角测量可以如下执行。接收器131b报告分组5的接收。接收器131a报告分组5的接收。给定来自相同分组传输事件的三个已知位置接收器的AoA读数和由唯一MAC地址表征的发送器的身份,服务器140对在接收器单独读取的测量AoA处的、穿过图3中描绘的接收器的已知位置的线进行三角测量,以获得发送器128被估计位于其中的三角形。
[0072] 图8是根据一个实施例的用于基于图5的方案确定接收器的位置的另一方法420。操作422、424、426、428、430和438分别类似于操作202、204、208、209、210、212和214;如图4所示。因此,下面将不描述这些操作。操作434和436对于方法420是唯一的。
[0073] 在操作434中,关联接入点122报告紧接在ACK分组之前的数据分组的目的地(“DST”)地址。
[0074] 在操作436中,服务器140从由关联接入点122报告的ACK分组之前的DST地址推断移动设备128的地址身份。
[0075] 图9描绘了根据一个实施例的用于针对图6的方案300和图1的系统100确定移动设备128的位置的更详细的方法450。
[0076] 在操作452中,服务器140从关联接入点122接收与从移动设备128接收的确认分组302相对应的第一信息。确认分组302由移动设备128响应于由关联接入点122发送的数据分组而发送,并且第一信息进一步对应于数据分组中的接收器地址字段306,该接收器地址字段306提供用于关联接入点122向其发送数据分组的移动设备128的标识。
[0077] 在操作454中,给定在关联接入点122处从移动设备128接收到确认分组302,服务器140访问接收器地址字段306以确定移动设备128的身份。
[0078] 在操作456中,服务器140从关联接入点122接收第一信息,该第一信息指示:(i)关联接入点122从移动设备128接收到第一分组的第一接收时间戳,以及(ii)关联接入点122从接入点124(即,非关联接入点124)接收到第二信标分组的第二接收时间戳。
[0079] 在操作458中,服务器140确定第一接收时间戳与第二接收器时间戳之间的第一差,以生成第一差值。
[0080] 在操作460中,服务器140从第一位置接收器131a接收第二信息,该第二信息指示(i)第一位置接收器131b从移动设备128接收到第三分组的第三接收时间戳131b,以及(ii)第一位置接收器131a从接入点124接收到第二分组的第四接收时间戳。
[0081] 在操作462中,服务器140确定第三接收时间戳与第四接收时间戳之间的第二差,以生成第二差值。
[0082] 在操作464中,服务器140在第一差值和第二差值之间进行比较,以满足预定的接收时间误差范围。
[0083] 在操作466中,服务器140响应于第一差值和第二差值中的每一个在预定接收器时间误差范围内,确定由移动设备128发送的第一分组和第三分组相同。由关联接入点接收的分组揭示MAC地址身份128。由位置服务器接收的分组为128的三角测量提供必要的信息。
[0084] 在操作468中,服务器140再次重新执行操作456、458、460、462、464和468,然而利用第二位置接收器131b而不是第一位置接收器131。例如,服务器140结合第二位置接收器131b执行以下操作。服务器140从第二位置接收器131b接收第三信息,该第三信息指示(i)第二位置接收器131b从移动设备128接收到第四分组的第五接收器时间戳,以及(ii)第二位置接收器128从接入点124接收到第二分组的第六接收器时间戳。服务器140确定第五接收器时间戳和第六接收器时间戳之间的第三差,以生成第三差值。
[0085] 然后,服务器140将第一差值和第三差值中的每一个与预定接收器时间误差范围进行比较,并且响应于第一差值和第三差值在预定接收器时间误差范围内,确定由移动设备128发送的第一分组和第四分组相同。然后,服务器140从第一位置接收器131a和第二位置接收器131b获得AoA信息,该AoA信息指示移动设备128相对于第一位置接收器131a和第二位置接收器131b的取向的方向。在操作470中,服务器140至少基于从第一位置接收器131a和第二位置接收器131b接收的AoA信息来确定移动设备128的位置。
[0086] 图10描绘了表500的示例,该表500可以由服务器140使用以至少基于以下各项将移动设备128的身份与由128发送的AoA读数合并:来自接入点122、124信标的发送器时间戳;移动设备128a、128b数据分组的接收时间戳;以及接收器131a、131b对来自接入点122、124的信标的接收器时间戳,以确定移动数据分组AoA读数的身份。列502描绘了对应于各种传输事件的各种事件编号。列504描绘了接收器枚举,或者一般地,描绘了正在接收信标
150、数据分组或确认的设备。列504示出了关联接入点122可以接收数据分组或确认,并且该条件适用于本文阐述的任何实施例。如贯穿本公开所述的,接收器131a、131b、131c和关联接入点122中的任何一个可以接收信标150、数据分组和/或确认。例如,如表500所示,事件编号为12‑24,并且应当认识到,在事件12‑24之前的事件也发生,并且在事件编号24之后的事件也发生。
[0087] 列506一般表示由发送设备(例如,如列514中所标识的发送器)嵌入在信标150中的时间戳。列508一般表示由接收设备(例如,接收器131a、131b、131c和关联接入点122)响应于接收到信标150、数据分组或确认而生成的时间戳。如上所述,响应于接收到信标150、数据分组或确认,基于驻留在接收器131a、131b、131c和关联接入点122上的内部时钟来生成接收器时间戳。
[0088] 列510一般对应于由位置接收器131接收和估计的发送器(例如,移动设备128)的分组的AoA读数。列512一般对应于由接收器131a、131b和关联接入点报告的接收分组事件的中心注释。如在410中所描述的,单独的分组被唯一地注释。各个事件的所有报告被注释为相同。例如,结合图2,关联接入点122中的第5分组、来自接收器131a的报告中的第4分组和来自接收器131b的报告中的第4分组都涉及相同的事件,并且服务器140注释为分组#5。该注释事件源自发送器128a,从接收器131a读取100度的AoA读数,并且从接收器131b读取
220度的AoA读数。数字标号1、3、4、5和7对应于数据或确认分组,并且数字标号2和6对应于信标150a、150b。列514一般对应于正在发送信标150、数据分组或确认的发送设备唯一标识。在这种情况下,发送设备可以是关联接入点122和非关联接入点124或移动设备128。
[0089] 参考图2和图10,接入点122(事件#23)报告在3980.03微秒的本地时间(或接收器时间戳)从发送器128a接收数据分组(例如,数据分组#5),然后在4000.04微秒的本地时间(或接收器时间戳)从另一接入点124接收具有1,000,000微秒的嵌入发送器时间戳的信标150b(例如,信标#6)(参见事件#17)。
[0090] 类似地,接收器131a报告在14,000.01微秒的本地时间以99.9度的AoA读数从发送器128a接收到数据分组(例如,数据分组#5)(参见事件#24),并且然后在14,020.10微秒的本地时间(或接收器时间戳)接收到嵌入有发送器时间戳1,000,000微秒的信标分组150b(参见事件#18)。在这种情况下,接收器131a在信标150到达时的接收器时间戳(例如,14,020.01微秒)与接收器131a在数据分组到达时的接收器时间戳(例如,14,000.10微秒)之间的时间差等于19.91微秒。
[0091] 另外,接收器131b报告在11,000.05微秒的本地时间(或接收器时间戳)以219.9度的AoA读数从发送器128a接收到数据分组(例如,数据分组#5)(参见事件#22),并且然后在11,019.85微秒的本地时间(或接收器时间戳)接收到嵌入有发送器时间戳1,000,000微秒的信标分组150b(例如,信标#6)(参见事件#19)。在这种情况下,接收器131b在信标150到达时的接收器时间戳(例如,11,019.85微秒)与接收器131a在数据分组到达时的接收器时间戳(例如,11,000.05微秒)之间的时间差等于19.8微秒。
[0092] 对于通过时间差的分组识别,接收器131(也称为调制解调器)以20MHz提供16个样本(或更好)的分辨率(即,16*50nsec=0.8μs),差异的误差可以不比两倍差(即,1.6μs)。发送器128和多个接收器131之间的传播路径的差为333m/μs。典型环境的尺寸限制为侧面100m,因此误差限制为0.5μs。在媒体接入层,从一个分组的尾部到下一个分组的头部,分组被分开至少10μs。通常,分组的尾部到下一个分组的头部由最短分组的长度加上分组间间隙(至少26μs,非常典型地为100‑400μs)分开。因此,2.1‑26μs的误差裕度安全地考虑了固有的不确定性,同时准确地确保了相邻分组之间的辨别。鉴于前述内容,例如100μs的裕度可以用作将被认为彼此相等的时间差的预定接收器时间间隔。
[0093] 如图所示,接收器131a的时间差(例如,19.91微秒)一般类似于接收器131b的时间差(例如,19.8微秒)。因此,在这方面,可以得出结论,接收器131a和131b从发送器128接收到相同的数据分组。还可以基于所公开的方法200来推断数据分组从发送器到网络中的两个或更多个接收器的传输事件。
[0094] 在上述示例中,服务器140通过至少收集从接入点122发送的信标150b上的发送器时间戳和接收器131a、131b的接收器时间戳来确定发送器128a的身份。例如,服务器140可以识别系统100中具有与信标上报告的相似的发送器时间戳的所有接收器,然后获得所有识别的接收器131a、131b的接收器时间戳之间的差。在各种接收器时间戳之间的时间差彼此相似的情况下,服务器140然后可以确定(或推断)哪个发送器128在单个时间点向对应的接收器131a、131b发起单个传输事件(例如,发送数据分组)。出于说明的目的,服务器140可以通过找到与已知信标事件具有相同相对时间差的事件、从由关联接入点122发送的报告中提取身份来确定位置接收器131a、131b报告的事件的身份。
[0095] 应当认识到,系统100可以采用上述方法,该方法涉及收集由接收器131a、131b、131c接收的来自信标150的所有报告的发送器时间戳,然后取在接收器处接收的数据分组的接收器时间戳与在接收器处接收的信标的接收器时间戳之间的差,以确定所报告的接收数据分组集合中的哪一个相对于已知信标事件具有相同的差,这是基于由位置接收器
131a、131b和关联接入点122接收的所有分组同时被接收的事实,最多小于如上所述的允许时间差误差的微小传播延迟差。进一步参考表500和图2,接收器131b尚未接收到信标150a。
然而,接收器131a已经接收到信标150a,因此在事件#12中,可以使用如在事件#16中报告的信标150b来推断信标150a。
[0096] 虽然上面描述了示例性实施例,但是并不旨在这些实施例描述本发明的所有可能形式。相反,说明书中使用的词语是描述性词语而不是限制性词语,并且应当理解,在不脱离本发明的精神和范围的情况下,可以进行各种改变。另外,各种实现实施例的特征可以组合以形成本发明的另外的实施例。

当前第1页 第1页 第2页 第3页