能够执行增强指纹映射和位置识别的无线通信装置转让专利

申请号 : CN201310058932.7

文献号 : CN103298106B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 陈安宁弗拉迪米尔·贝洛夫陆岩亚历山大·马科夫斯基史蒂文·马尔科斯

申请人 : 美国博通公司

摘要 :

本发明涉及能够执行增强指纹映射和位置识别的无线通信装置,具体公开了一种能够在室内环境中确定其位置的无线通信装置。在室内环境中,无线通信装置可能不能充分访问GNSS卫星或蜂窝塔以对其位置进行精确确定。因此,无线通信装置通过对可访问接入点和特性来估计其在环境内的位置和扫描环境内的多个位置,生成该环境的指纹映射。该装置在存储器中存储该信息,该信息随后可与确定该装置的当前位置有关。

权利要求 :

1.一种被配置为确定具有多个接入点的受限通信环境内的位置的无线通信装置,所述无线通信装置包括:无线电模块,被配置为在多个位置处针对附近接入点扫描所述环境,并响应所述扫描而从所述附近接入点接收信号;

处理模块,被配置为从所述无线电模块接收信号,识别包括在所接收的信号中的所述附近接入点,以及确定对应于每个被识别的所述接入点的至少一个信号特性;

存储器模块,被配置为将被识别的所述接入点及其相应的至少一个信号特性存储在第一数据库和第二数据库中,所述第二数据库不同于所述第一数据库来组织;以及定位模块,被配置为基于所述第一数据库使用第一位置识别算法来确定所述无线通信装置的当前位置,以及被配置为基于所述第二数据库使用第二位置识别算法来有条件地确定所述无线通信装置的所述当前位置。

2.根据权利要求1所述的无线通信装置,其中,所述存储器模块被配置为在执行相应的所述扫描时,与所述无线通信装置的估计位置相关地共同存储被识别的所述接入点及其相应的至少一个信号特性。

3.根据权利要求1所述的无线通信装置,其中,所述定位模块还被配置为对从被识别为蓝牙接入点的接入点接收到的信号执行接收信号强度指示(RSSI)标度转换。

4.根据权利要求1所述的无线通信装置,其中,所述扫描包括用于从至少一个所述接入点接收被动模式信号的被动扫描和用于从至少一个所述接入点接收主动模式信号的主动扫描,其中,所述至少一个信号特性包括基于在主动模式扫描期间接收到的信号的主动模式RSSI和基于在被动模式扫描期间接收到的信号的被动模式RSSI。

5.根据权利要求1所述的无线通信装置,其中,所述第一位置识别算法是加权k-最近邻算法,以及其中,所述第二位置识别算法是功率测距算法。

6.根据权利要求1所述的无线通信装置,其中,所述定位模块被配置为确定从所述第一位置识别算法产生的所计算的当前位置的不确定性,以及其中,当所述不确定性超出预定阈值时,所述定位模块被配置为执行所述第二位置识别算法。

7.一种被配置为确定具有多个接入点的受限通信环境内的位置的无线通信装置,所述无线通信装置包括:存储器模块,被配置为将所述受限通信环境的多个无线通信指纹存储在数据库中,每个指纹包括所述多个接入点的识别信息、所述多个接入点中的每一个的至少一个信号特性、以及检测所述多个接入点中的每一个的估计位置;以及定位模块,被配置为利用第一位置识别算法来确定所述无线通信装置的第一当前位置,以及基于存储在所述存储器模块中的所述指纹利用第二位置识别算法来确定所述无线通信装置的第二当前位置,所述定位模块还被配置为基于至少一个参数来选择所述第一当前位置或所述第二当前位置中的一个作为所述无线通信装置的最终位置。

8.根据权利要求7所述的无线通信装置,其中,所述至少一个参数包括所述第一当前位置的不确定性。

9.根据权利要求7所述的无线通信装置,其中,所述第一位置识别算法是加权k-最近邻算法,其中,所述定位模块被配置为确定每个所述接入点的类型,以及

其中,所述定位模块基于所确定的所述接入点的类型来设置要在所述第一位置识别算法中使用的邻居数量。

10.一种用于确定无线通信装置在受限通信环境中的位置的方法,所述方法包括:存储对应于所述受限通信环境内的多个位置的多个无线通信指纹,所述无线通信指纹包括被识别的接入点和与这些接入点相关联的信号特性;

获取对应于所述无线通信装置的当前位置的无线通信指纹的当前位置指纹;

基于所述当前位置指纹和至少一个被存储的所述无线通信指纹,利用第一位置识别算法来计算第一位置;以及根据与所述第一位置识别算法相关联的至少一个参数,利用第二位置识别算法来有条件地计算第二位置。

说明书 :

能够执行增强指纹映射和位置识别的无线通信装置

[0001] 相关申请的交叉引用
[0002] 本申请要求于2012年2月24日提交的美国临时专利申请第61/602,999号和于2012年6月29日提交的美国专利申请第13/538,780号的权益,将其全部内容结合于此供参考。

技术领域

[0003] 本公开涉及无线通信,更具体地,涉及一种在无线通信环境中能够执行增强指纹映射和位置识别的无线通信装置及相应方法。

背景技术

[0004] 无线通信装置(诸如用于提供一个实例的蜂窝电话)在个人和商业环境中越来越普遍。无线通信装置向用户提供对各种信息的访问,以及提供与其他这种装置跨远距离通信的能力。例如,用户可通过装置上的网络浏览器访问网络、从数字市场下载小型应用程序(例如,“apps”)、发送和接收电子邮件、或者利用互联网语音协议(VoIP)进行电话呼叫。因此,无线通信装置向用户提供显著移动性,同时允许他们与通信信道和信息保持“连接”。
[0005] 无线通信装置与一个或多个其他无线通信装置或无线接入点通信以发送和接收数据。通常,第一无线通信装置生成并发送用编码信息调制的射频信号。该射频信号被发送到无线环境中并由第二无线通信装置接收。第二无线通信装置对接收信号解调和解码以获取信息。第二无线通信装置随后可以类似方式来响应。无线通信装置可用任何已经调制方案彼此或与接入点通信,已经调制方案包括:调幅(AM)、调频(FM)、正交振幅调制(QAM)、相移键控(PSK)、正交相移键控(QPSK)和/或正交频分复用(OFDM)以及现在已知或将来知晓的任何其他通信方案。
[0006] 现代无线通信装置使用任何不同方法来获取其位置。通过获取其位置,无线通信装置可执行特定位置的功能和/或操作特定位置的应用。户外环境中,无线通信装置可通过使用GNSS卫星信息很容易获取其位置。类似地,可利用附近基站来简单执行三角测量法,因为这些基站一致性地以设定功率水平来发送信号。
[0007] 然而,在室内环境中,装置可能不具有足以做出精确位置确定的对GNSS和/或附近基站的接入。此外,尽管很多室内环境包括其他通信接入点,诸如蓝牙和WiFi,但这些通信协议采用波动的传输功率和睡眠/休眠模式。因此,在室内环境中执行常规定位和映射(mapping)技术可能无法产生精确结果。

发明内容

[0008] 本发明提供了一种被配置为确定具有多个接入点的受限通信环境内的位置的无线通信装置,所述无线通信装置包括:无线电模块,被配置为在多个位置处针对附近接入点扫描所述环境,并响应所述扫描而从附近无线接入点接收信号;处理模块,被配置为从所述无线电模块接收信号,识别包括在所接收的信号中的所述附近接入点,以及确定对应于每个被识别的所述接入点的至少一个信号特性;存储器模块,被配置为将被识别的所述接入点及其相应的至少一个信号特性存储在第一数据库和第二数据库中,所述第二数据库不同于所述第一数据库来组织;以及定位模块,被配置为基于所述第一数据库使用第一位置识别算法来确定所述无线通信装置的当前位置,以及被配置为基于所述第二数据库使用第二位置识别算法来有条件地确定所述无线通信装置的所述当前位置。
[0009] 在上述无线通信装置中,所述存储器模块被配置为在执行相应的所述扫描时,与所述无线通信装置的估计位置相关地共同存储被识别的所述接入点及其相应的至少一个信号特性。
[0010] 在上述无线通信装置中,所述第一数据库由估计位置来组织,并列出每个被识别的接入点和在每个估计位置处识别的相应的所述至少一个信号特性,以及其中,所述第二数据库由接入点组织,并列出相应的所述至少一个信号特性和每个接入点的估计位置。
[0011] 在上述无线通信装置中,所述定位模块还被配置为对从被识别为蓝牙接入点的接入点接收到的信号执行接收信号强度指示(RSSI)标度转换。
[0012] 在上述无线通信装置中,所述扫描包括用于从至少一个所述接入点接收被动模式信号的被动扫描和用于从至少一个所述接入点接收主动模式信号的主动扫描,其中,所述至少一个信号特性包括基于在主动模式扫描期间接收到的信号的主动模式RSSI和基于在被动模式扫描期间接收到的信号的被动模式RSSI。
[0013] 在上述无线通信装置中,所述第一位置识别算法是加权k-最近邻算法,以及其中,所述第二位置识别算法是功率测距算法。
[0014] 在上述无线通信装置中,所述定位模块被配置为确定从所述第一位置识别算法产生的所计算的当前位置的不确定性,以及其中,当所述不确定性超出预定阈值时,所述定位模块被配置为执行所述第二位置识别算法。
[0015] 本发明还提供了一种被配置为确定具有多个接入点的受限通信环境内的位置的无线通信装置,所述无线通信装置包括:存储器模块,被配置为将所述受限通信环境的多个无线通信指纹存储在数据库中,每个指纹包括所述多个接入点的识别信息、所述多个接入点中的每一个的至少一个信号特性、以及检测所述多个接入点中的每一个的估计位置;以及定位模块,被配置为利用第一位置识别算法来确定所述无线通信装置的第一当前位置,以及基于存储在所述存储器模块中的所述指纹利用第二位置识别算法来确定所述无线通信装置的第二当前位置,所述定位模块还被配置为基于至少一个参数来选择所述第一当前位置或所述第二当前位置中的一个作为所述无线通信装置的最终位置。
[0016] 在上述无线通信装置中,所述至少一个参数包括所述第一当前位置的不确定性。
[0017] 在上述无线通信装置中,仅在所述不确定性超出预定阈值时,所述定位模块被配置为执行所述第二位置识别算法。
[0018] 在上述无线通信装置中,所述定位模块被配置为计算所述第二当前位置的不确定性,以及其中,所述定位模块被配置为选择所述第一当前位置或所述第二当前位置中的具有较小不确定性的一个作为所述最终位置。
[0019] 在上述无线通信装置中,所述第一位置识别算法是加权k-最近邻算法,其中,所述定位模块被配置为确定每个所述接入点的类型,以及其中,所述定位模块基于所确定的所述接入点的类型来设置要在所述第一位置识别算法中使用的邻居数量。
[0020] 在上述无线通信装置中,所述定位模块被配置为在所述接入点被确定为蓝牙接入点时,将所述邻居数量设置为至少3个,以及在所述接入点被确定为WiFi接入点时,将所述邻居数量设置为至少5个。
[0021] 在上述无线通信装置中,所述定位模块被配置为确定所述受限通信环境的当前无线通信指纹,其中,所述定位模块被配置为确定包括在所述指纹中的所述接入点的链接状态,其中,所述定位模块被配置为基于所述链接状态,使所述当前无线通信指纹与被存储的所述多个无线通信指纹相关,以及其中,所述定位模块被配置为识别最接近的邻居作为与所述当前无线通信指纹最密切相关的被存储的所述无线通信指纹。
[0022] 在上述无线通信装置中,所述定位模块被配置为基于所述最接近的邻居与所述当前无线通信指纹的相关性来对所述最接近的邻居加权,以及其中,所述定位模块被配置为通过对被加权的所述最接近的邻居的位置取平均来确定所述无线通信装置的所述第一当前位置。
[0023] 本发明提供了一种用于确定无线通信装置在受限通信环境中的位置的方法,所述方法包括:存储对应于所述受限通信环境内的多个位置的多个无线通信指纹,所述无线通信指纹包括被识别的接入点和与这些接入点相关联的信号特性;获取对应于所述无线通信装置的当前位置的无线通信指纹的当前位置指纹;基于所述当前位置指纹和至少一个被存储的所述无线通信指纹,利用第一位置识别算法来计算第一位置;以及根据与所述第一位置识别算法相关联的至少一个参数,利用第二位置识别算法来有条件地计算第二位置。
[0024] 在上述方法中,所述存储所述多个无线通信指纹包括在具有第一数据排布的第一数据库中存储所述指纹和在具有第二数据排布的第二数据库中存储所述指纹。
[0025] 上述方法还包括:计算与所述第一位置相关联的不确定性;以及将所述不确定性与预定阈值相比较,其中,所述第二位置仅在所述不确定性超出所述预定阈值时被计算。
[0026] 在上述方法中,所述第一位置识别算法是加权k-最近邻算法,所述方法还包括:将所述当前位置指纹与被存储的所述多个无线通信指纹相关;以及基于所述相关,从用于所述第一位置识别算法的被存储的所述无线通信指纹中选择多个最接近的邻居。
[0027] 上述方法还包括:基于所述相关,对每个被选择的所述最接近的邻居的位置加权;以及通过对被加权的所述位置取平均,计算所述第一位置。

附图说明

[0028] 参照附图来描述实施方式。附图中,类似附图标记表示相同或功能相似的元件。另外,附图标记的最左侧数字表示该附图标记首次出现的附图。
[0029] 图1示出了示例性无线通信环境的框图;
[0030] 图2示出了可表示之前描述的无线通信环境的子集的示例性无线通信环境的框图;
[0031] 图3示出了可在无线通信环境中实施的示例性无线通信装置的框图;
[0032] 图4示出了可包括在无线通信装置内的示例性位置模块;
[0033] 图5示出了可由位置模块生成和使用的示例性位置映射;
[0034] 图6示出了用于在无线通信环境中收集数据的示例性方法的框图;
[0035] 图7示出了用于由无线通信装置执行位置确定的示例性方法的框图;
[0036] 图8示出了用于由无线通信装置执行指纹位置识别的示例性方法的框图;以及[0037] 图9示出了可用于实施本公开各个方面的示例性计算机系统。

具体实施方式

[0038] 以下详细描述涉及示出符合本公开的示例性实施方式的附图。详细描述中对“一种示例性实施方式”、“示例性实施方式”、“实例的示例性实施方式”等的引用表示所述示例性实施方式可包括具体特征、结构或特性,但每种示例性实施方式可不必包括该具体特征、结构或特性。此外,这些短语不一定是指相同的示例性实施方式。此外,当结合示例性实施方式来描述具体特征、结构或特性时,对结合不论是否明确描述的其他示例性实施方式的该特征、结构或特性的影响属于相关领域技术人员认识范围内。
[0039] 提供本文所述示例性实施方式是用于说明的目的且并非限定。其他示例性实施方式也是可行的,且可在本公开的精神和范围内对示例性实施方式进行修改。因此,详细描述不意味着限定本公开。此外,本发明的范围仅根据所附权利要求及其等同物来限定。
[0040] 实施方式可以硬件(例如,电路)、固件、软件或它们的任何组合来实施。实施方式也可作为存储在机器可读介质上的指令来实施,该指令可由一个或多个处理器来读取和执行。机器可读介质可包括用于以机器(例如,计算装置)可读形式存储或传送信息的任何机制。例如,机器可读介质可包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪存装置、电学、光学、声学或其他形式的传播信号(例如,载波、红外信号、数字信号等)以及其他。此外,固件、软件、例程、指令在本文中可被描述为执行特定动作。然而,应当理解,这种描述仅是为了方便起见,且这种动作实际是由计算装置、处理器、控制器或执行固件、软件、例程、指令等的其他装置来产生。此外,任何实施的变形均可由通用计算机来执行,如下所述。
[0041] 为了该讨论的目的,术语“模块”应被理解为包括软件、固件和硬件(诸如一个或多个电路、微芯片或装置、或者其任何组合)及其任何组合中的至少一个。另外,将理解,每个模块可包括实际装置内的一个或多于一个的部件,且构成所述模块的一部分的每个部件可与构成模块的一部分的任何其他部件协作或独立于任何其他部件来起作用。相反地,本文所述的多个模块可表示实际装置内的单个部件。此外,模块内的部件可位于单个装置内,或者以有线或无线方式分布在多个装置中。
[0042] 对示例性实施方式的以下详细描述将充分揭示本发明的一般特性,使得在不脱离本公开的精神和范围的情况下,其他人可通过应用相关领域技术人员的知识很容易地修改和/或适用这种示例性实施方式的各种应用而无需过多实验。因此,这种适用和修改旨在落入基于本文给出的教导和指导的示例性实施方式的含义和多个等同物范围内。应当理解,本文的措词或术语是用于描述的目的且并非限定,从而本说明书的术语或措辞将由相关领域技术人员根据本文的教导来解释。
[0043] 尽管将以蓝牙和WiFi环境的形式来进行以下描述,但相关领域技术人员将认识到,在不脱离本公开的精神和范围的情况下,该描述也可适用于使用其他无线通信方法的其他通信。
[0044] 示例性无线通信环境
[0045] 图1示出了示例性无线通信环境100的框图。无线通信环境可表示室内环境,或GNSS信号和/或基站信号不可用的一些其他环境(本文称为“受限通信环境”)。
[0046] 无线通信环境100包括多个接入点(AP)120a至120e。接入点120可以是WiFi和/或蓝牙接入点,且可根据多个不同参数中的一个或多个(包括接入点120在无线通信环境中是否与任何装置通信)以不同传输功率水平来工作。
[0047] 无线通信环境100还包括寻求当其在无线通信环境100中移动时确定其位置的移动装置110。如之前所讨论,由于无线通信环境100是受限通信环境,所以移动装置110无法利用传统方法来确定其位置。
[0048] 图2示出了无线通信环境200的示例性框图。无线通信环境200提供了在无线通信装置之间信息(诸如一个或多个命令和/或数据)的无线通信,且可表示无线通信环境
100的一个子集。
[0049] 无线通信装置各自可被实施为单独或分立的装置(诸如移动电话),或者可并入或耦接至另一电子装置或主机装置(诸如便携式计算装置、摄像机或全球定位系统(GPS)单元)或另一计算装置(诸如用于提供一些实例的个人数字助理、视频游戏装置、笔记本电脑、台式计算机或平板电脑、计算机外围设备(诸如打印机)或便携式音频和/或视频播放器)和/或在不偏离本公开的精神和范围的情况下对相关领域技术人员将是显而易见的任何其他合适的电子装置。
[0050] 示例性无线通信环境200包括第一无线通信装置210和第二无线通信装置220。第一无线通信装置210和第二无线通信装置220中的每一个均可包括在各自均能无线发送和无线接收的相应无线通信装置中。为了该讨论的目的,第一无线通信装置210可表示移动装置110的示例性实施方式,以及第二无线通信装置220可表示接入点120的示例性实施方式。
[0051] 接入点220包括天线221,其可包括一个或多个天线且能够向无线通信环境发送信号和/或从其接收信号。利用其天线221,接入点220与移动装置210通信。移动装置210还包括天线211,该天线211可包括一个或多个天线且能够向无线通信环境200发送信号和/或从其接收信号。
[0052] 无线通信装置210还包括位置模块215。尽管由接入点120在无线通信环境100中采用波动的发射功率,位置模块215被配置为基于从接入点120收集的信息来映射特定位置,并确定无线通信装置210在无线通信环境100中的位置。
[0053] 示例性移动装置
[0054] 图3示出了示例性无线通信装置300的框图,无线通信装置300可在无线通信环境100中实施。无线通信装置300包括位置模块320,且可表示移动装置110/210的示例性实施方式。
[0055] 在无线通信装置300中,无线电模块310执行对经由天线305从无线通信环境100中接收到的信号的前端处理,且可包括信号放大、滤波和混频。所接收到的信号可包括来自无线通信环境中的一个或多个附近接入点的信息。一经处理,无线电模块310便转发所接收到的信号至位置模块320。
[0056] 位置模块320被配置为基于所接收到的信号来执行映射和位置识别。位置模块320的配置将在下文进一步详细描述。位置模块320与控制器模块330通信。
[0057] 控制器模块330被配置为在无线通信装置300中执行一般处理和控制功能。例如,控制器模块330可协调利用位置模块320的映射和/或位置识别启动以及时序,可对接收到的信号执行一般信号处理,可控制无线通信装置的各种组件的操作,可准备用于由无线电模块310发送至无线通信环境的信号,和/或可基于由位置模块320确定的位置来执行特定位置的功能。
[0058] 图4示出了可包括在无线通信装置300中的示例性位置模块400。位置模块400包括存储模块440和定位模块430,且可表示位置模块320的示例性实施方式。
[0059] 如上所述,当处于受限通信环境中时,移动装置将不访问传统的位置数据。因此,为识别其位置,移动装置首先执行环境内的数据收集以映射环境。
[0060] 1.数据收集
[0061] 当移动装置在环境中移动时,其可通过利用其最后知晓的位置作为起点来插入(interpolate,插值)位置估计。然而,由于估计其位置的固有不精确性,装置在环境中行进得越远,估计位置偏离“真实”位置越远。改进的位置估计可在所提交的题为“Wireless Communication Device Capable of Accurately Performing Position Estimations”的待审查美国专利申请第13/538,686号(代理人案号2875.9970000)中找到,将其全部内容结合于此供参考。在本文所公开的位置估计中,装置使用初始位置作为该装置访问GNSS或其他位置识别信息的最终位置。一旦该信息不再可用,则该装置采用一个或多个传感器(诸如加速度计、陀螺仪和磁力计)来检测运动速度和方向。基于运动信息,装置可基于初始位置来估计新位置。因此,为精确识别其在环境中的位置,移动装置执行数据收集和环境映射,其后续可与位置识别有关。
[0062] 为执行映射,无线通信装置300应扫描在环境中多个位置处的附近接入点。例如,当无线通信装置300在环境中移动时,定位模块430可插入对无线通信装置的位置估计。当定位模块430确定无线通信装置已行进预定距离时,定位模块430将该信息传送至控制模块330。
[0063] 在一种实施方式中,预定距离是离开发生最近扫描的位置的距离。在该情况下,在另一扫描被执行之前,无线通信装置300必须距离其之前扫描的位置足够远。在另一实施方式中,预定距离仅是行进距离。在该情况下,在已行进了预定距离之后,无线通信装置300执行扫描,而不管无线通信装置300离其执行最近扫描的位置多近或多远。
[0064] 当控制模块330从已满足预定距离的定位模块430接收到通知时,控制器模块330使无线电模块310发起对环境的扫描。无线电模块310从无线通信装置300的通信范围内的所有接入点接收信息,并将结果转发到位置模块400。
[0065] 位置模块400在其滤波器模块420处接收信号。滤波器模块420对接收到的信息执行各种滤波操作,诸如噪声滤波等。随后,所产生的信息被转发到处理模块410。处理模块410从所接收到的信号提取所需信息,并确定与接收到的信号相关联的各种信号特性。例如,处理模块410应识别包括在接收到的信号中的每个接入点。这可通过识别包括在接收到的信号中的MAC地址来执行。
[0066] 一旦响应接入点的身份已被确定,则处理模块410确定对应于被识别的接入点的信号的信号特性。这些信号特性可以是接收信号强度指示(RSSI)、信噪比(SNR)、信号干扰加噪声比(SINR)中的任何一个或多个,以及能够比较类似特性的任何其他信号特性。在一种实施方式中,处理模块410确定由无线通信装置300在扫描之后接收到的每个接入点信号的RSSI。
[0067] 如上所述,新的蓝牙规范允许接入点根据各种通信和/或节电方面来使用宽范围的发射功率。因此,为在蓝牙环境中获得当前位置的精确指纹,控制器模块330执行被动扫描和主动扫描。
[0068] 在被动扫描中,控制器模块330使无线电模块310简单地从接入点接收被动模式信号。这种被动模式信号不需要无线通信装置300与接入点建立连接,而是仅简单接收其信标信号。
[0069] 另一方面,主动扫描需要无线通信装置300与附近接入点建立通信链接(这可顺序发生、同时发生和/或交叠发生)。该主动连接允许无线通信装置从接入点接收比被动扫描更高的功率发射信号。应理解,主动和被动扫描对于其他无线通信协议可能是不必要的。例如,由于针对WiFi而指定的发射功率范围明显小于针对蓝牙的发射功率范围,所以对于WiFi接入点可以是不必要的。
[0070] 处理模块410从附近接入点接收响应信号,并确定对于每个被动和主动响应的RSSI信息。在处理之后,处理模块410将接入点信息转发到存储器模块440来存储。
[0071] 在一种实施方式中,接收到的信息被存储在诸如例如两个单独数据库或单个数据库内的两个单独表格的两个不同分区。第一分区可由位置组织,并在指纹位置识别处理期间被使用。如上所讨论,使用如上所讨论的改进的位置估计,扫描时的位置是先验已知的。第二分区可由访问点识别(例如,MAC地址)来组织,并在测距位置识别处理期间被使用。
[0072]
[0073] 表1位置数据库
[0074]
[0075] 表2接入点数据库
[0076] 如表1所示,第一数据库可由位置来组织,且每个位置可包括多个被识别的接入点。此外,给定接入点可在多于一个位置处被扫描(例如,表1中的MAC B在位置2、3处被扫描),尽管期望所测量的RSSI将从一个位置变为其他位置。另外,尽管未示出,但特定位置可能是空的,其中,无线通信装置300无法识别在该特定位置处的任何接入点。类似地,表2示出了第二数据库可由接入点(例如,基于MAC地址)来组织。每个接入点包括该接入点被识别的位置,以及所测量的在这些位置处的信号强度。
[0077] 尽管上述表格被描述为用于蓝牙环境,无线通信装置300可在本公开的精神和范围内生成用于任何其他无线通信协议的指纹表格。例如,对于WiFi接入点,该数据库将基本包括相同数据,但可能不需要被动和主动RSSI。此外,数据库可包括用于存储通信“类型”的附加列。该“类型”可识别与特定接入点相关联的通信协议,这随后可通过允许甚至更详细的指纹来进一步增强位置识别。
[0078] 2.位置识别
[0079] 无线通信装置300可在任何时间执行位置识别。在映射和数据收集之前或期间,可利用如上简述的插值处理来确定环境中的新位置点。然而,在大多数实施方式中,无线通信装置300使用被配置为比传统测距方法增加了精度的动态指纹来执行位置识别,而传统测距方法不适于新的蓝牙发射功率范围。
[0080] 在任何给定时间,无线通信装置可发起位置识别。此时,类似于在数据收集期间,控制器模块330指示无线电模块310针对附近接入点扫描当前区域。无线电模块310将接收到的信息转发到位置模块400的滤波器模块420。在滤波之后,滤波器模块420将接收到的信号转发到处理模块410。
[0081] 处理模块410从接收到的信号提取附近接入点的标识(例如,MAC地址)。处理模块410还确定对于每个被识别的接入点的信号特性。在一种实施方式中,这些信号特性与存储在存储器中的那些相同(例如,RSSI)。处理模块410将所产生的信息转发到定位模块430以用于位置确定。
[0082] 在从处理模块410接收到信息之后,定位模块430执行动态指纹。动态指纹包括执行两种不同的位置识别计算,并估计两个结果位置中的哪一个具有更好的精度(例如,通过计算有关每种计算的不确定性)。
[0083] 指纹位置识别
[0084] 两种位置识别计算中的第一种是指纹计算。定位模块430使用以下详细描述的增强型加权k-最近邻算法来执行计算。
[0085] 由于蓝牙(或半蓝牙)环境,定位模块430对最先接收到的信息执行几种操作。例如,定位模块430可执行扫描滤波以进一步减少噪声,然而,这可由滤波器模块事先执行。此外,定位模块430执行RSSI标度转换(scaling),以在接入点和无线通信装置300之间解释硬件差异。定位模块430还执行链接状态识别,其识别被识别的接入点的链接状态(例如,是否处于主动发射模式或被动发射模式)。这可基于相应接入点的RSSI和/或其他或附加的信号信息来确定。
[0086] 利用被标度转换的RSSI和被识别的链接状态,定位模块430拥有对应于无线通信装置300的当前位置的环境指纹。随后,定位模块430访问存储器模块440,并使当前指纹(例如,一个或多个当前测量的RSSI)与之前存储的那些指纹相关。由于当前指纹与无线通信装置的当前位置有关,所以该相关性应由位置数据库(表1)中的相应实体产生。
[0087] 例如,在当前位置,当前指纹可检测对于MAC A和B的RSSI。相关性将对于这些MAC的RSSI与之前存储的指纹相比较,并确定这些指纹中的哪些包括对于MAC A和B的最接近在当前位置处检测到的RSSI的RSSI。由于当前位置指纹包括对于MAC A和B的RSSI,所以若当前RSSI在存储的这些RSSI的预定范围内,则最密切相关的位置可以是表1的位置1。
[0088] 定位模块430基于相关性从存储器模块440检索多个“最近邻居”。在大多数位置中,对于蓝牙环境,最近邻居的数量优选最少为3,以及对于WiFi环境,最近邻居的数量优选最少为5。然而,对于扫描区域中接入点的不同密度,这些数量可被调整。最近邻居可仅基于对当前指纹的相关性(例如,最密切相关的位置指纹)来确定。应当注意,相关性解释了所确定的链接状态,并给予被识别的链接状态的存储的RSSI比其他链接状态的存储的RSSI更大的权重。
[0089] 一旦已确定了最近邻居,则定位模块430基于任何数量的因素来对最近邻居加权。在一种实施方式中,根据邻居对当前指纹的相关性来对邻居位置加权。随后,定位模块430对最近邻居的加权位置执行处理,以达到无线通信装置300的当前位置。例如,在一种实施方式中,定位模块430对加权位置取平均,以达到无线通信装置300的当前位置。
[0090] 在一种实施方式中,相关性确定了当前指纹与之前存储的指纹之间的相似性,其中,值为1可指示指纹是相同的,以及值为0可指示指纹是彼此完全不同的,以及在0和1之间的任何值表示当前指纹与之前测量的指纹之间的相似性。随后,这些相关性值可乘以相应的之前存储的最近邻居位置,以提供相应的加权位置。随后,加权位置可被取平均,以达到当前位置的估计值。例如,加权位置的相应纬度和经度被取平均,其中,在对最近邻居位置取平均之前,权重被施加到单个纬度和经度。其他加权方法可基于之前存储的指纹位置而用于提供智能位置估计。
[0091] 功率测距位置识别
[0092] 除执行指纹位置识别之外,定位模块430还可执行功率测距位置识别。在一种实施方式中,每当无线通信装置300的当前位置被搜索时,定位模块430执行功率测距位置识别,并基于一个或多个参数来选择优选结果(如下所讨论)。然而,倘若无线通信装置300接近存储在存储器中的之前指纹位置,则指纹位置识别通常比功率测距位置识别更精确。因此,在另一实施方式中,当与指纹位置识别相关联的一个或多个参数超出预定阈值以面临一定程度的不精确性时,定位模块430可仅执行功率测距位置识别。
[0093] 在功率测距位置识别中,基于从处理模块410接收到的信息,定位模块430访问存储器模块440并检索有关被识别的接入点的发射功率信息。由于定位模块430寻找有关单个接入点的信息,所以该信息优选应从接入点数据库(表2)检索。
[0094] 随后,定位模块430将被识别的接入点的当前检测的功率水平与这些接入点的所存储的最大功率水平相比较。基于接入点的当前检测的功率水平与之前存储的功率水平之间的差异,定位模块430可确定无线通信装置的位置。换句话说,由于信号电平随距离而衰减,所以无线通信装置300可将在其当前位置处对被检测接入点测量的信号强度与所存储的这些接入点的最大信号强度相比较。根据该信息,无线通信装置300可估计其到这些接入点中的每一个的距离。通过知晓到接入点的距离和这些接入点的位置,无线通信装置300可通过确定距离彼此重叠的点利用三角测量来估计其位置,或者利用现在或将来知晓的任何其他方法来估计其位置。
[0095] 位置选择
[0096] 当指纹位置和功率测距位置两者被确定时,定位模块430必须选择其认为更精确的结果。为了进行该选择,定位模块430确定每个位置结果的不确定性。
[0097] 在指纹位置识别中,不确定性可基于存储的指纹与当前指纹之间的相关性。例如,若当前指纹非常类似于一个或多个存储的指纹,则不确定性可以是很低的。另一方面,若当前指纹与最相似的存储的指纹仅松散相关,则不确定性可以是很高的。类似地,功率测距位置识别的不确定性可基于接入点的当前检测的功率水平与存储的功率水平之间的差异。
[0098] 定位模块430将所产生的不确定性水平相互比较,以确定哪个位置结果被认为是“更精确的”。例如,定位模块430可选择具有最小不确定性的位置结果作为最终位置。
[0099] 图5示出了可由位置模块400生成和使用的示例性位置映射(map,图)。位置映射包括之前存储在存储器模块440中的25个指纹。为了示例性的目的,指纹被排布在网格中,且以下按照(列号,行号)来引用。
[0100] 在第一位置P1处,定位模块430执行指纹位置识别技术。基于与存储的指纹的相关性,五个最近邻居(对于蓝牙环境)是在位置(3,1)、(3,2)、(3,3)、(4,2)和(4,3)处的指纹。即使未对存储的位置加权,最近邻居的平均值也会将装置的位置放置于(3.4,2.2),其非常接近该装置的实际位置,如图5所示。利用加权,位置(3,2)将可能被加权至稍高,以及位置(3,1)被加权至稍低,该位置甚至可能更接近地定位该装置。
[0101] 此外,由于该装置特别靠近至少位置(3,2),所以该装置的当前指纹将很可能足够靠近不确定性将不会超出预定阈值的位置(3,2)的存储的指纹。因此,可能没必要执行功率测距。
[0102] 在第二位置P2处,定位模块430再次执行指纹位置识别技术。然而,由于该装置并非与任何一个邻居位置最靠近,所以当前指纹可能与这些指纹不密切相关。在该情况下,定位模块430可确定超出预定阈值的较大的不确定性。随后,定位模块430继续执行功率测距。一旦已执行了功率测距,则定位模块430比较不确定性,以选择该装置的最终位置。
[0103] 在第三位置P3处,定位模块执行指纹位置识别技术。然而,由于所有最接近的邻居明显远离该装置(且所有位于一个普通区域中),所以不确定性将特别高(且精度将非常低)。因此,定位模块430执行功率测距方法。在该情况下,由于该装置被定位至远离映射(map),所以功率测距技术将可能具有较低的不确定性,且因此,其位置结果被定位模块430选择。
[0104] 一旦定位模块430已选择了对于该装置的最终位置,则定位模块430将该结果输出到控制器模块330。控制器模块330可向用户报告该位置,或者在特定位置应用程序、指令等中应用该位置。
[0105] 3.协作数据的使用
[0106] 通过环境中装置的协作,可明显增强上述许多功能和特征。
[0107] 例如,由于装置在准备映射时不访问环境中的精确位置信息,所以该装置必须依赖各种估计方法来估计其位置。由于该装置开始于已知位置,所以靠近环境入口的位置可能具有高精度。遗憾地是,由于估计过程中的固有误差,伴随装置在环境中进一步行进,精度将下降。
[0108] 因此,在一种实施方式中,当无线通信装置300检测到当前指纹与之前存储的指纹之间的高相关性时,无线通信装置300可重新初始化其位置。换句话说,当该装置检测到当前位置已被指纹化时,该装置可将其当前位置设置为之前存储的(且可能更精确的)位置。以此方式,无线通信装置300可生成更精确的指纹映射。
[0109] 扩展该想法,在另一实施方式中,来自无线通信装置300的映射数据可经由一个或多个接入点上传至环境中的服务器。随后,该数据可与从其他类似装置上传的类似数据相结合。同时,其他无线通信装置可在不同时间将其位置初始化为存储在服务器中的数据。通过从几个装置收集数据,以及使用该数据来使未来的数据更加精确,数据映射的精度将成倍增加,直到其非常接近实际位置信息。
[0110] 映射环境的示例性方法
[0111] 图6示出了用于由无线通信装置收集无线通信环境中的数据的示例性方法的框图。
[0112] 在该方法中,装置在环境中移动,同时估计其当前位置(610)。该装置将其当前估计位置与该装置或另一装置获取指纹的之前位置相比较(620)。若该装置尚未获取指纹,则该装置可将其当前估计位置与其之前的已知位置(诸如最近的GPS位置)相比较。若该装置未行进离开其之前位置的足够距离(620的否),则该装置继续其位置估计。
[0113] 若该装置确定其已行进了离开其之前位置的足够距离(620的是),则该装置对附近接入点扫描其当前位置(630)。根据从扫描接收到的信息,该装置确定附近接入点的识别信息(诸如MAC地址)(640)。随后,该装置确定与被识别的接入点的信号相关联的信号特性(诸如RSSI)(650)。
[0114] 随后,该装置将该信息存储在存储器中(660)。在一种实施方式中,该信息可被存储在两个表中或者包括位置数据库和接入点数据库的数据库中。一旦信息已被存储在存储器中,则该装置继续估计其当前位置(610),并重复该方法。
[0115] 相关领域技术人员应理解,上述方法可附加地或可替代地包括以上所讨论的无线通信装置300以及其任何变形例的任何功能。此外,上述对示例性方法的描述不应被解释为限定了本方法,且不应被解释为限定了无线通信模块300的描述。
[0116] 识别装置在通信环境内的位置的示例性方法
[0117] 图7示出了用于由无线通信装置执行位置确定的示例性方法的框图。
[0118] 为确定其当前位置,装置首先在其当前位置扫描环境,并识别接入点和响应的信号特性(710)。一旦获得,则该装置执行指纹位置识别(720),如图8进一步详细示出。
[0119] 图8示出了用于由无线通信装置执行指纹位置识别的示例性方法的框图。
[0120] 一旦已获得指纹(810、710),则该装置对信息执行各种处理(820),包括滤波、RSSI标度转换(以解释硬件差异)以及链接状态确定(以确定特定接入点是否处于主动状态或被动状态)。随后,该装置从存储器检索k个最接近的邻居(830)。这些最接近邻居可以是与当前指纹最密切相关的之前存储的指纹。对于蓝牙,k应被设置为最小为3,而WiFi应具有至少为5的k值。
[0121] 随后,该装置基于一个或多个标准来对所检索的指纹加权(840)。例如,指纹可简单基于其与当前指纹的相关性。一旦被加权,则该装置以某种方式组合该结果,以达到装置的位置(850)。这可通过例如简单对被加权指纹的纬度和经度取平均来获得。
[0122] 返回图7,该装置还可执行功率测距位置识别(730)。功率测距可与指纹匹配顺序执行,或者与指纹匹配同时执行(如图所示)。此外,功率测距可仅在满足一个或多个条件(诸如指纹位置结果的不确定性超出了预定阈值)时被执行。
[0123] 一旦已使用指纹匹配和功率测距两者来确定位置,则该装置确定对于每个所确定位置的不确定性(740)。随后,这些不确定性相互比较(750)。最终,该装置选择从该方法产生的具有最小不确定性的位置(760)。该位置被确定为该装置在环境中的位置。
[0124] 相关领域技术人员应理解,上述方法可附加地或可替代地包括以上所讨论的无线通信装置300以及其任何变形例的任何功能。此外,上述对示例性方法的描述不应被解释为限定了本方法,且不应被解释为限定了无线通信模块300的描述。
[0125] 示例性计算机系统的实施
[0126] 如本文所述,对于相关领域技术人员而言,显然本公开的各种元件和特征可以使用模拟和/或数字电路的硬件、通过由一个或多个通用或专用处理器执行指令的软件,或者作为硬件和软件的组合来实施。
[0127] 为完整起见,提供了对通用计算机系统的以下描述。本公开的实施方式可以硬件来实施,或者作为软件和硬件的组合来实施。因此,本公开的实施方式可在计算机系统或其他处理系统的环境下实施。这种计算机系统900的一个实例在图9中示出。之前图中所示的一个或多个模块可至少部分地在一个或多个不同计算机系统900上实施,其中包括例如位置模块320/400。
[0128] 计算机系统900包括一个或多个处理器,诸如处理器904。处理器904可以是专用或通用数字信号处理器。处理器904连接至通信基础设施902(例如,总线或网络)。各种软件实施以该示例性计算机系统的形式来描述。对于相关领域技术人员而言,在阅读该描述之后,如何利用其他计算机系统和/或计算机架构来实施本公开将变得显而易见。
[0129] 计算机系统900还包括主存储器906,优选随机存取存储器(RAM),且还包括辅助存储器908。辅助存储器908例如可包括硬盘驱动器910和/或可移动存储驱动器912,该可移动存储驱动器912表示软盘驱动器、磁带驱动器、光盘驱动器等。可移动存储驱动器912以已知方式从可移动存储单元916读取和/或向其写入。可移动存储单元916表示由
可移动存储驱动器912读取和写入的软盘、磁带、光盘等。相关领域技术人员将理解,可移动存储单元916包括其中存储有计算机软件和/或数据的计算机可用存储介质。
[0130] 在可替代实施方式中,辅助存储器908可包括用于允许计算机程序或其他指令被载入计算机系统900的其他类似装置。该装置可包括例如可移动存储单元918和接口914。该装置的实例可包括程序盒和盒接口(诸如视频游戏装置中可见的程序盒和盒接口)、可移动存储芯片(例如EPROM或PROM)和相关插槽、U盘和USB端口、以及其他可移动存储单元
918和允许软件和数据从可移动存储单元918传送至计算机系统900的接口914。
[0131] 计算机系统900还可包括通信接口920。通信接口920允许软件和数据在计算机系统900与外部装置之间传送。通信接口920的实例可包括调制解调器、网络接口(诸如以太网卡)、通信端口、PCMCIA插槽和卡等。经由通信接口920传送的软件和数据的形式可以是电子信号、电磁信号、光信号、或其他能被通信接口920接收的信号。这些信号经由通信通路922提供给通信接口920。通信通路922承载信号且可使用导线或电缆、光纤、电话线、手机链路、RF链路和其他通信信道来实施。
[0132] 如本文所用,术语“计算机程序介质”和“计算机可读介质”通常用来指示有形存储介质,诸如可移动存储单元916和918或安装在硬盘驱动器910中的硬盘。这些计算机程序产品是用于提供软件给计算机系统900的装置。
[0133] 计算机程序(也称为计算机控制逻辑)存储在主存储器906和/或辅助存储器908中。计算机程序也可经由通信接口920接收。这种计算机程序在被执行时能使计算机系统900实施如本文所讨论的本公开。具体地,该计算机程序在被执行时能使处理器904实施本公开的处理,诸如本文所述的任何方法。相应地,该计算机程序表示计算机系统900的控制器。其中,使用软件来实施本公开,该软件可存储在计算机程序产品中,并使用可移动存储驱动器912、接口914或通信接口920载入计算机系统900。
[0134] 在另一实施方式中,主要以使用例如硬件部件(诸如专用集成电路(ASIC)和门阵列)的硬件来实施本公开的特征。实施硬件状态机以执行本文所述功能对于相关领域技术人员而言也将是显而易见的。
[0135] 结论
[0136] 应理解,具体实施方式部分而非摘要部分旨在用于解释权利要求。摘要部分可阐述一个或多个但并非全部的示例性实施方式,且因此,并不意味着以任何方式限定本公开和所附权利要求。
[0137] 以上已借助于示出具体功能及其关系的实施的功能块描述了本发明。为便于描述,本文任何定义了这些功能块的边界。只要能适当执行具体功能及其关系,也可定义替代性边界。
[0138] 对于相关领域技术人员而言,显然在不偏离本公开的精神和范围的情况下,可在形式和细节上对其进行各种改变。因此,本发明不应由上述任何示例性实施方式来限定,而是应仅根据所附权利要求及其等同物来限定。