首页 / 用户接口

用户接口有效专利 发明

技术领域

[0001] 本发明涉及用于电子设备的用户接口。它尤其涉及包括利用声学信号表征一个或多个对象的运动的接口;尤其,但并不排他,是利用超声信号,且涉及对多个在彼此附近的这样的设备的操作。

相关背景技术

[0002] 已知使用飞行时间测量结果对与具有超声发射机和多个接收机的计算设备进行非接触式交互的对象作追踪。实际上对于此类追踪已经提出了很多方案,例如在苹果公司的专利申请US2006/0161871中,尤其涉及通过用户的手指输入到手持设备。然而,这些方案都有缺陷,特别是,它们可能对来自其他物体所引起的回波的干扰和来自积极噪声源的干扰敏感。
[0003] 也已尝试基于飞行时间原理的光学追踪;然而,部分地由于需要光学部件和要求非常高的时钟速度,该技术复杂而昂贵。此外,无法嵌入地安装具有较宽(例如180度)视场的摄像头,这意味着摄像头镜头必须部分地从所述设备的表面凸出,使得它们遭受损坏和污染,以及潜在地不太符合视觉美观。
[0004] 由于更宽的色散特性和更低的声波速度,干扰在声学跟踪系统中,与光学的系统相比,尤其成问题。
[0005] 本发明人认识到一个具体问题,当两个或更多设备,尤其是移动设备,试图在彼此的可听范围内使用声学输入系统时。它们很可能相互干扰,尤其是当它们被配置成发射将类似的或相同的声音信号发射到彼此(例如,在相同的频率范围内)。在这种情况下,使用已有技术方法,一个设备通常不能区分来自目标对象的反射和由其它设备产生的声音。这会导致不能正确地识别用户的输入。尤其是,来自所述其它设备的直达声音可以是比来自所述输入对象的反射强很多倍,并且如果它们在接收的时间中重叠,可以因此淹没所述回波。因为用户通常对输入失败的忍耐力有限,所以这可能是非常严重的问题。由于采用声学输入机制的设备的数量在增加,所述多个设备在彼此的可听范围内的发生率势必随之增加。

具体实施方式

[0054] 首先转到图1,可以看到便携电子设备2包括发射超声波信号a的超声波发射机4。信号被输入对象6反射且反射的信号b由超声波接收机8接收。设备2可由输入对象
6(例如,用户的手)的运动控制,所述运动由接收到的信号检测。实际上,通常将提供一个以上的接收机和/或发射机以给出足够的分辨率。然而,接口的细节对于本说明书不是必须的,并且为了简单起见,仅示出了一个发射机和接收机。
[0055] 将信号从发射机4传递到接收机8所花费的时间是所发射和反射的信号a、b的飞行时间的总和。设备2可被配置成使得它仅响应于具有低于最大阈值的飞行总时间的信号。该阈值限定了椭圆10的边缘。椭圆10内部的区域被称为目标区域。如果输入对象在椭圆边界10的内部,那么设备2将响应于它,但如果在边界10的外部,那么来自它的信号的反射将被忽略。这可以以直接的方式通过在发射之后仅仅响应于在预定时间窗口期间在设备2中接收到的反射的信号b实现。时间窗口的末端与最大飞行时间相对应。物理上,考虑到信号的传播速度,这设定了椭圆边界10的尺寸。时间窗口的开始可以为发射之后的短时间,以便忽略直接从发射机传递到接收机的“直接路径”信号。
[0056] 如果另一个设备在第一设备2的附近,那么如果在时间窗口期间第一设备2(直接地或在反射后)接收到它发射的信号c,那么存在干扰的风险,其中在所述时间窗口中设备正在监听来自其输入对象6的反射。然而,如将参照图2在下面更详细解释的,如果其他设备同步发射并保持在由以接收机8为中心的球形边界12划定的禁止区域的外部,干扰就可以被避免。区12的半径至少与限定了目标区域边界10的最大飞行时间一样大,带有一些安全余量,比如说10%。因此,这提供了一种确保多个设备之间不存在干扰的简单方法,无论有多少个设备。给出典型的实例,目标区域直径可约为30cm(尽管略呈椭圆形),在这种情况下,禁止区域12将具有至少为60cm的直径。
[0057] 参照图2,可以看到图示了同步发射的优点的示意性时序图。图的上面部分示出了由设备2所发射的规则信号14,例如线性调频脉冲,操作非接触交互模式设备。应该理解的是,由于该图是纯示意性的,信号14并不用于作为线性调频脉冲的精确表示,它只是与这个解释相关的时序。图的下部示出了由接收机8接收到的信号。如可看到的,在每个发射14后的短时间内,接收到来自输入对象6的反射16。由于反射16在预定时间窗口22内,所述反射作为其非接触式交互模式的一部分用于控制设备。时间窗口22的末端与从目标区域边界10内的对象6反射的信号14所用的最大时间相对应。因此,它也与信号从禁止区域边界12到达接收机8所花费的时间相对应。
[0058] 在图的下部同样可见的是由与第一设备2同步发射的另一个设备所发射的信号20。由于信号20是来自第二设备的“直接路径”信号(即不经历任何反射),尽管从更远处发出,但它具有比反射信号20更高的幅度。然而,由于第二设备在禁止区域12的外部,其信号20到达第一设备的接收机8所花费的时间24将信号位于接收窗口22之外。因此,无视信号20是一件简单的事情,并且从而避免错误地尝试把它解读为设备2的输入。从而避免了设备之间的干扰。此外,对于禁止区域12外部的任何设备,同样情况成立。
[0059] 然而,不是完全忽略信号20,而是其定时可以用于计算飞行时间(由于发射的时间是已知的),并从而推导出到第二设备的距离。事实上,如果设备2实际上如通常一样具有一个以上的接收机,那么有可能估计第二设备的实际位置。设备的距离或位置可经由第一设备上的显示器向用户进行指示和/或可用于实现涉及两个设备的特征。
[0060] 存在许多可将两个或多个设备同步使得它们的发射同时或至少大致同时发生的可能的方法。一个实例是设备将其发射基于源自在外部射频(RF)信号(如来自电信网络或卫星信号)的定时。这在图3中示意性地进行了说明。可以看到第一便携电子设备31装备有超声波发射机32和超声波接收机33。它接收来自外部发射机34的射频同步信号(例如,通过内部天线-未示出)。设备31使用射频同步信号将定时作为其超声波信号的基础。类似地,第二设备35也具有超声波发射机36和超声波接收机37。它接收来自外部发射机34的相同的射频同步信号。然后,第二设备35也使用射频同步信号将定时作为其超声波信号的基础,使得它与第一设备31自动地进行同步。清楚地,任意数量的设备可被添加并自动地进行同步。
[0061] 另一个实例是用于将射频信号从一个设备发射到另一个设备。这在图4中示意性地进行了说明。在这里,第一设备41具有超声波发射机42和射频发射机43。第一设备发射射频同步信号,该射频同步信号可以由第二设备44接收,并用于同步第二设备的超声波发射机45的发射。各种协议对于此都是可能的。合适的协议的一个实例将对于每个设备周期性地发射射频同步脉冲,但是如果它在其下一个发射到期之前接收到脉冲,那么调整射频脉冲和超声波线性调频脉冲的脉冲定时。这将导致在附近的任何设备之间的快速同步。射频同步的优点是传播延迟可以以忽略不计。
[0062] 现在将参照图5至12描述同步多个设备的另一种方法。图5示出了表示来自便携电子设备100的两个连续的超声波线性调频脉冲发射101、102的示意图。该图在水平方向示出了时间以及在垂直方向上示出了距离。因此,每个发射101、102在各个方向上产生传播的信号103、104(在这些图中只显示了一个空间维度)。阴影区域表示来自输入对象和周围的对象(如墙壁、桌子等)的可能的反射。
[0063] 在每个发射之后,限定时间窗口105、106,其与来自目标区域中的对象的反射的飞行最大时间相对应,如上文参照图1和图2所解释的。
[0064] 图6示出了当引入第二设备200时会发生的情况。第二设备200也以与第一设备100相同的速率发射相同的超声波线性调频脉冲,然而,紧接在图6所示的情况之前,它跳过发射并监听发射,从而接收来自第一设备100的发射。然后,如图6所示,来自第二设备的后续发射201被定时,使得与第二设备200的目标区域相对应的时间窗口205、206在从第一单元接收到信号103、104之前完成。因此,如前所解释的,避免了第一设备100和第二设备200的发射和回波之间的干扰。将注意到的是,在这点上,来自各自的设备100、200的各自的发射101、201和102、202不在完全相同的时间发生,但如将在下文中的算法所示,趋向于那样。
[0065] 图7示出了引入第三设备300的影响,其更进一步是来自第一设备100。这个行为与图2中第二设备200所显示的十分相似,并且因此结果是第三设备300对其发射301、302进行定时,使得相应的ROI时间窗口305、306在来自第二设备的信号203、204的接收之前出现。这避免了信号和回波之间的干扰。
[0066] 图8示出了第四设备400物理地进入第一设备和第二设备100、200之间的效果。正如在前面的情况下,新的设备400对其发射401、402进行定时,因此相应的时间窗口405、
406在信号103、104从第一单元被接收到之前发生。然而,这具有干扰第二设备的时间窗口205、206的意外效果(实际上,正如所描绘的那样,来自第四设备的信号403、404几乎与第二设备自身的发射201、202在同一时间到达第二设备)。
[0067] 图9示出了图8中所述的情况的连锁效应。这里第二设备200已经使得其发射201、202在时间上向前以消除与第四设备的冲突,即来自第四设备403、404的信号403、404不再与第二设备的窗口205、206发生冲突。由此可以看出,这样的结果是将第二设备的发射201、202带入更密切地与第一设备101、102的发射同步。然而,第二设备的发射201、202的定时偏移意味着它们现在正与第三设备的时间窗口305、306发生冲突。
[0068] 在图10中消除了第二设备200和第三设备300之间的冲突,通过第三设备对其发射301、302进行重新定时,使得其定时窗口305、306提前于从第二设备的信号203、204的到达。因此,现在所有的四个设备100、200、300、400可以通过迭代地使它们彼此的发射时间接近同步,从而使它们不冲突地进行操作。因此,可以观察到,设备之间的发射定时中的差别在图10的稳定情况下比图7的稳定情况下小。也可以通过比较图8至图10观察到,引入新设备的效果是更良好地同步从一个设备“波及”到另一个设备。
[0069] 在图11和图12中也可以看到上述“波及”自动地产生更良好的同步,图11和图12示出了在第二设备200和第三设备300之间出现第五单元500的效果。如图11所示,信号503、504由此最初干扰来自第三设备的时间窗口305、306,但随后第三设备300偏移其发射301、302,使得其窗口在来自第五设备的信号503、504之前。这引起所有的五个设备无冲突地进行操作,并且接近同步,如在图12中可以看到的那样。同步的程度将随着更多的设备被添加以及随着设备被四处移动而增加(在上述的说明中它们被假定为是静态的)。
[0070] 因此,可以看出,根据如上所述的实施例,通过使用所述的方法,大量的设备可以同时操作,而不会发生冲突并允许新的设备自动加入。总之,这不要求设备之间的任何通信超出它们发射的信号,以便操作它们各自的非接触式的交互模式。
[0071] 该方法并不总是保证有效,因为,如果这些设备太靠近彼此,即,它们不是通过参照如图1和图2所说明的禁用区域分开,则不能找到稳定的解决方案,该解决方案避免来自一个设备的发射或回波在另一个设备的ROI时间窗口内到达。然而,这可以通过给予各个设备的用户它们太过接近的警示,并且它们要么可以移得更开,要么它们中的一个或多个可以关闭用于非接触式交互模式的信号。或者,设备中的一个或多个可切换到另一种干扰规避算法,如故意造成设备发射不同步,使得一个的发射和回波可发生在另一个的ROI时间窗口之外。
[0072] 现在将参考图13描述同步的另一种方法。在该方法中,其中每一个具有超声非接触式交互模式的一些便携式电子设备也能够使用两个单独的超声信道(以下称为信道1和信道2)在彼此之间进行通信,这两个单独的超声信道是对于它们所有而言是共用的,并且在不同的相应频率上进行操作。
[0073] 这些设备都被配置为以相同的速率通过信道1发射超声波线性调频脉冲信号。每个设备被配置为实现载波侦听多路访问/冲突避免。这涉及选择起始数字的每个设备C,例如:C=2。该设备然后生成一个在0和C之间的随机数字N,并在发射其线性调频脉冲之前等待该数字个时隙(N)。该设备然后监听以确定是否有另一个设备也在相同的时隙中进行发射。这通过检查与信号的其余部分相比的在该设备自身的线性调频脉冲内的能量的量来完成。
[0074] 如果另一个设备在该时隙内进行发射,则该线性调频脉冲发射被视为已失败,并且原来的数字C在算法重复之前被加倍。如果没有检测到其他的发射,则该线性调频脉冲被视为已成功地被发射,并且数字C在算法重复之前被减半。
[0075] 图13中的时序图显示了在两个设备单元A和单元B之间工作的方法。最初在时间a1,单元A在信道1上发射线性调频脉冲。这被另一个设备单元B在时间b3接收。时间b3是进入单元B的时隙的时间X。单元B存储X的值,X的值是由线性调频脉冲从单元A行进到单元B所花费的时间(它们的相互的间隔和声速的函数)和由它们各自的时隙起始之间的偏移(即,它们不同步的程度)所确定的。时间a4是单元A的下一个时隙的开始。同样,时间b5是单元B的下一个时隙b8的开始。在这个时隙期间,单元B在信道2上将线性调频脉冲发射回。它在时间b6发射该线性调频脉冲,时间b6是在该时隙结束之前的一个时间X,X的值如上述已经被预先存储。
[0076] 应答信号是由单元A在信道2上在时间a9被接收的,时间a9是在单元A的下一个时隙a7的起始后的时间P。可以显示,此间隔P等于单元A和B的时隙之间的偏移的两倍,即P=2×(b2-a1)。因此,单元A只需要测量间隔P并使其减半,以确定时隙之间的偏移b2-a1。单元A可以随后按照这个数量调整其发射,以便使它们根据需要进行同步。
[0077] 当然,该过程可以由存在的其它设备中的每一个进行重复,以便它们都同步。因此,如果两个设备单元A和单元B是同步的,但单元C和单元D没有被同步,那么当单元C请求从其他单元同步(通过在信道1上发送线性调频脉冲)时,会观察到来自单元A和B的同时答复(因为它们已经同步)。来自单元A和B的总幅度将大于来自单元D的幅度,从而通过选择具有最大幅度的答复,单元C可以从单元A和单元B获得同步。单元D随后可以做同样的操作。通过确保“新”的单元与大部分网络同步,这使得同步能够在该网络中“向外蔓延”。
[0078] 图14和图15示意性地示出了本发明的另一种可能的实施例,该实施例遵循以上参照图3和图4所述的实施例的原理。在本实施例中,如将要描述的,来自WiFi路由器或接入点的信号被用于同步设备。
[0079] 首先转向图14,这里可以示意性地看到三个不同的WiFi接入点(AP)601、602、603以及电子设备604,电子设备604可能是一台笔记本电脑、智能电话、平板电脑或类似物。AP601、602、603每一个有各自独立的一个百万赫兹的时钟611、612、613,被称为定时同步功能(TSF)时钟。AP601、602、603发射规则信号,该规则信号被称为信标606,信标606,除其他方面,包含各自TSF时钟611、612、613的发射时间。
[0080] 电子设备604包括一些不同的模块。这些其中之一是管理与接入点601、602、603的通信的WiFi网络控制器608。该设备还包括同步模块610和超声控制器模块614。设备604将通常包括一些时钟。这些其中之一是维持日常的一天时间和日期的本地系统时钟616。该本地系统时钟(SYS时钟)默认具有相当低的精确度,如15毫秒左右,但具有的好处是可由大多数系统组件(包括低级别的网络驱动器)普遍进行访问。设备和计算机通常具有至少一个高精度时钟(通常在1-2.5MHz下运行)。但不幸的是,这通常并非可同样通过系统进行访问。
[0081] 超声波控制器614每隔一定时间发射线性调频脉冲。它也维持自系统启动开始已发射多少线性调频脉冲的指数。当控制器614使设备以恒定的速率发射线性调频脉冲时,这也有效地变成一个时钟,在本文中称为样本指数时钟(SI时钟)618。
[0082] 正如将在下面将要描述的,设备604和附近的任何其他设备可根据AP信标606中的信息同步它们的超声发射。
[0083] 同步是通过估算AP时钟611、612、613中的一个与SI时钟618之间的漂移和偏移而进行的。这使得线性调频脉冲在相对于AP时钟611、612、613指定的时间点被发射。通过估算漂移和偏移,可以估算根据SI时钟618的时间戳定义的这些时间点何时发生,从而建立同步发射。如下面将要讨论的,特定的AP由待使用的设备进行选择,要么是直接通过与彼此进行通信,要么是通过中间的在线服务。
[0084] 虽然将有可能直接估算AP时钟611、612、613与SI时钟618之间的这些参数(通过例如进行AP时钟时间戳与SI时钟时间戳之间的线性回归),如将要描述的那样,在实践中比较容易使得AP时钟611与SYS时钟616同步,并且然后使得SYS时钟616与SI时钟618同步。
[0085] 正如已经提到的,接入点601、602、603发射包含关于它们各自的本地时钟611、612、613的时间戳信息的信标606。通常,这些信标以大约为10Hz的速率从每个个体的接入点发射。连接的设备将以它们的固有速率(10Hz)从它们所连接到的接入点接收这些信标。
设备将以显著较低的速率(通常约为0.25Hz)从它们没有连接到的接入点接收信标。这是由于在WiFi无线接口608中的典型限制,其要求它通过对其它频率进行扫描以监听其他信标,从而不允许它接收从给定的AP发射的大多数信标。对于最大的精度而言,将所有的设备都连接到同一个AP是理想的(但不是必需的)。
[0086] 这些时间戳 由Wi-Fi网络控制器608接收,并且将接收的时间戳设置为TSYS,TSYS是相对于系统时钟616的。合并后的信息 被提供给同步模块610。
[0087] 来自SI时钟618和SYS时钟616同步信息分别由同步模块610进行收集。
[0088] 总之,所有这些信息被用于提供在参考超声控制器614的SI时钟618帧中的时间戳XSI,时间戳XSI指示应当在何时发射线性调频脉冲。
[0089] 同步模块610首先收集关于附近的接入点的信息。在本实施例中,这是通过使用何时从附近的所有接入点601、602、603接收最新的信标606的列表进行的,该列表可以由Windows(RTM)及其底层网络接口软件驱动器提供。这个列表包含至少每个接入点的以下信息:从AP时钟611、612、613发射的时间戳;接收的时间戳(通常从SYS时钟616);媒体接入控制(MAC)地址,一个48位的整数,它唯一地标识特定的AP;以及服务集标识符(SSID),这是一个人类可读的网络名称,可在多个AP之间共享,以使用户能够像他或她在建筑内四处移动一样在接入点之间漫游。
[0090] 这提供了使得TSF时钟和SYS时钟同步的必要信息。这样的时间戳信息是在一段时间内针对选定的接入点收集的。通常,最初2-5秒是足够的。
[0091] 为了以下说明的目的,将假定设备604通过普通的WiFi连接连接到第一AP601,并且它用此来进行同步。
[0092] 如上文所述收集的信息被用于估算AP时钟611与设备的本地时钟616之间的漂移和偏移。
[0093] 实际的同步是通过使用下列方法之一进行的。在这两种情况下,TTSF(i)都是在信标606中接收到的TSF时间戳的列表,而TSYS(i)是对应的本地时钟616的时间戳的列表。需要估算漂移DTSF和偏移OTSF,使得理想地:
[0094] TSYS(i)-DTSF·TTSF(i)+OTSF
[0095] 这当然可以通过正常的线性回归进行,通过找出DTSF和OTSF,使得下面的函数相对于参数DTSF和OTSF最小化:
[0096]
[0097] 这依赖于一个假设,即测量噪声主要是高斯的及由于系统延迟。
[0098] 对于某些系统而言,已在实验中发现大部分噪声是由于SYS时钟616的量化,而不是系统延迟。然而通过将SYS时钟的精度的相关信息进行合并,这些结果可以得到改善。SYS时钟的主要缺点是所报告的时间戳被四舍五入至最接近的时间量子QSYS。然而,申请人已经发现,通过使用系统调用NtQueryTimerResolution和NtSetTimerResolution,系统时钟616的精度可提高到0.5毫秒。换言之,QSYS可以从QSYS=15ms降低到QSYS=0.5毫秒。
[0099] 由于时钟量化此信息由不惩罚偏差合并。这是通过对于DTSF和QTSF做替代的优化函数g来完成的。
[0100]
[0101] 其中,
[0102]
[0103] 该函数可以通过例如使用单纯形(Nelder-Mead)方法而被最小化。
[0104] 下一个步骤是:通过收集SYS时钟616和SI时钟618的同时样本来同步SYS时钟616和SI时钟618。这是通过首先每隔一定的时间对这两个时钟都进行采样,以及然后估算漂移和偏移来完成的。
[0105] 根据超声软件的实现,对这两个时钟的采样可以至少以两个不同的方式完成。
[0106] 如果超声软件实现允许的话,当它知道一个特定的样本指数已被发射时,该软件本身可以以重复的时间间隔测量SYS时钟616。然后,它可以显示TSYS(i)和TSI(i)的列表,该列表包含SYS时钟616和SI时钟618的同时样本。
[0107] 如果超声软件不允许这样,则外部的软件必须对SI时钟616和SYS时钟618进行采样。同样,知道SYS时钟616(和SI时钟618)的量化可用于改善结果。
[0108] 通过反复且快速地对两个时钟采样,当,例如,SYS时钟616从一个时间戳步入下一个时间戳(即,对于0.5ms的分辨率,这可能是从10000.0毫秒到10000.5毫秒),并且只使用接近这样的时间步长的测量时,时钟标记可以被收集。
[0109] 通过这样做,量化的噪声被有效地降低到最低限度。然后,使用线性回归估算漂移DSI和偏移OSI,使得
[0110] TSI(i)-DSI·TSYS(i)+OSI
[0111] 然后,同步模块610使用估算的漂移和偏移来同步发射。
[0112] 假设设备604和附近的其他设备被配置为对线性调频脉冲应当在何时被发射使用共用方案。这可以是预定义的(即每10毫秒),或是可以采用在线服务来对此达成一致的。
[0113] 为了本文讨论的目的,假设设备604被配置为每Cms进行发射,其中C使用AP时钟611的时间进行定义,所以在AP的时钟时间中的发射时间XTSF是
[0114] XTSF=nC
[0115] 其中,是n线性调频脉冲的数目。这意味着,在SYS时钟616时间内,发射时间XSYS将是
[0116] XSYS=DTSF·XTSF+OTSF=DTSFnC+OTSF
[0117] 这进一步可以转换为SI时钟618的时间戳XSI,SI时钟618的时间戳XSI可以用于实际的发射:
[0118] XSI=DSIXSYS+QSI=DSI(DTSFnC+QTSF)+OSI
[0119] 上述的过程可以被用于使用来自AP601的信标606来允许设备604与附近的其他设备同步地发射超声线性调频脉冲。因此重要的是,为了使该同步能够进行,在区域(例如房间)内的任何其他设备使用相同的定时源(例如共同的接入点)对它们的发射进行定时。
[0120] 由于所有的接入点都发送唯一标识它们的一个48位整数(MAC码),所以该信息可以被用于商定特定的接入点。
[0121] 为了能够实现这一点,房间内的所有设备必须首先确立它们都可以从中接收信标的接入点。这可以由每个设备通过首先收集来自所有接入点的信标(如上所述),以及然后与该房间内的所有其他设备交换该信息而完成。
[0122] 这种交换可以本地发生(通过设备彼此直接地交换信息),或通过将该信息发送到中央服务器,所述中央服务器协助选择接入点。
[0123] 公共接入点的实际选择可以使用几个标准中的任何一个或它们的组合而执行。一个这样的标准可以是可以连接到特定的AP的设备数量。如果所有单元都连接到同一个AP,则实现了最佳的同步效果。另一种可能的标准可以是时钟质量,时钟质量可以通过为每个接入点估算BTSF和DTSF并且使用误差项来表示该质量而导出。另一种可能的应用标准是选择具有可以从该AP接收信标的设备的最大数目的AP。更简单地说,可以应用简单的信号强度标准。这些或其他标准的任意组合可能被用作为复合算法的基础。
[0124] 如果上文所述的标准没有得到明确的答案,则这些设备可以被配置为简单地基于MAC地址默认选择优选的AP(例如,在所有其他参数相等的情况下,选定具有最低的48位MAC地址的接入点)。
[0125] 用于同步的接入点的这种选择可以定期重复,以提供接入点等的可用性中变化的鲁棒性。
[0126] 上述用于选择共同AP的过程的潜在的局限性是:上述方法的问题是设备可能不能够从同一个AP接收信标。这可以发生在如图15中所示的那个情形中。
[0127] 在这种情况下,第一设备604能够从特定的AP601接收信标,并且第二设备604'只能够从不同的AP602接收信标。作为相对分离的结果,第一设备不能够从所述第二AP602接收信标,并且第二设备604'不能够从第一AP601接收信标。为了解决这个问题,设备604、604'可以中继时间信息。它们可以通过除了将设备604连接到原来的接入点以外其本身还成为接入点来做到这一点。这意味着,它们本身将开始发射信标,该信标包含相对于它们所连接到的接入点的时间信息。这可以通过启用包括在最近版本的Windows(RTM)中的虚拟WiFi组件而完成。
[0128] 为了利用该中继信息,每个设备的无线网络卡的MAC地址被报告到其他设备,从而其他设备将知晓哪些明显的接入点是真实源,而哪些只是时间信息的中继器。
[0129] 一旦那时已经以预定义的时间间隔建立同步(或者如果选择的接入点变得不可用),则从这些单元对通过使用哪个接入点直到确定偏移和漂移等达成一致的步骤开始重复以上所述的程序。
[0130] 在上面的描述中,假定任何设备都已连接到接入点(要么是源AP要么是充当中继器的另一设备),它从该接入点接收其需要用于同步的定时信息。然而,这不是必要的,并且在下面描述的变型中,设备可被连接到第一接入点,但从第二接入点接收用于同步的定时信息。
[0131] 因此,在某些情况下,这些设备可被连接到不同的接入点。对于大多数无线电而言,这意味着,它们将接收来自它们所连接到接入点的频繁的信标更新(10赫兹)以及来自其余的接入点的偶发更新(约0.25赫兹)。
[0132] 即使这些设备没有连接到公共接入点,但是只要它们都接收来自该接入点的信标,则仍然有可能实现这些设备的同步。为了实现这一点,每个设备都既从它们所连接到的接入点又从作为同步源的接入点收集信标。返回到图14,可以假定设备604被连接到第一接入点601并将第二接入点602用于同步。
[0133] 因此,将有相应的AP时钟时间( 和 )和SYS时间 和的两个列表。到第二接入点602的同步意为估算 和 并且随后应用
和 再使用上面所述的程序。
[0134] 如果无线电将要以高的速率(例如,10赫兹)接收来自第二接入点601的信标,则可以直接使用本文前述的程序来估算 和 然而如前面说明的,因为设备604未连接到第二接入点602,因此设备604很可能以低得多的速率接收来自第二接入点602的信标。然而,随后可以使用下面的程序。
[0135] 首先, 和 被用于建立漂移和偏移 和 这如在前面所描述的那样。从第一接入点601接收到的数据的量使得这些被快速而精确地估算。
[0136] 通过估算与 相等的 继续该程序。这样做部分是因为接收自第二接入点602的数据相对少得多,但也是因为802.11Wi-Fi标准规定所有的AP时钟应该有非常精确的振荡器。
[0137] 为了估算 和 被用于计算来自第二接入点602的信标何时被接收并给第一接入点的时钟611打上时间戳。这是通过注意到
而完成的。通过 来代替 以及对等式进行转换,可通过计算下式来估算信标在第一接入点601的时钟时间内的接收时间
[0138]
[0139] 现在可以通过进行如下的平均来估算这两个AP的时钟611、612之间的时钟偏移[0140]
[0141] 这反过来可被用来估算
[0142]
[0143] 当估算了 和 后,可以使用先前所概述的程序来启动实际的同步发射。
[0144] 测试表明,如果两个PC被连接到同一个接入点上,则上述的方法能够提供在两个设备之间的达到0.1-0.2毫秒内的同步,0.1-0.2毫秒接近于限制可以用其测量的同步精度的本底噪声。同步在1-2秒内建立。

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