激活触觉输出设备的方法和激活触觉输出设备的装置转让专利

申请号 : CN200480028532.0

文献号 : CN1860430B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 安德鲁·约翰·哈德威克

申请人 : 英国电讯有限公司

摘要 :

为了克服在触觉传输系统中由网络延迟所造成的问题,本地PC(23,24)尝试建立远程触觉设备(22,21)的力/位置模型,使得当经由该网络5接收到打包的位置数据时,可以对控制该本地触觉设备(21,22)的电动机的信号进行调节,以反映出仍然要去接收的预测位置。通过使用该远程环境的本地数据模型,该预测可以考虑到来自被本地仿真的目标/质地的反作用力。

权利要求 :

1.一种激活触觉输出设备的方法,该触觉输出设备是可以对定义了方向力的信号做出响应的类型,所述方法包括:经由网络接收定义了多个位置数据包的一系列信号,每个位置数据包都定义了要发送到第二定位的在第一定位上测量到的位置;

根据位置数据来确定定义了希望该与所述第二定位相关的触觉输出设备移动到的位置的信息;

存储历史位置数据,该历史位置数据定义了与所述第一定位相关的触觉输出设备移到过的多个位置中的每一个;

推导出以下空间的数据模型并存储定义了所述模型的数据,在该空间中方向力被施加在所述第一定位上,所述方法特征在于,还包括以下步骤:

推导出网络延迟测量值;

至少部分地根据所述网络延迟测量值,从所述历史位置数据和定义了所述模型的数据中推导出一预期位置,并产生定义了用于将所述与第二定位相关的触觉输出设备朝着所述预期位置移动的力和方向的输出信号;

以及在所述第二定位收到后续位置数据时,对该预期位置与所收到的后续位置之间的差别进行校正。

2.根据权利要求1所述的方法,还包括在每个方向都发送信号,由此以一系列返回数据包中的当前位置信号的形式,将作为朝向当前定义的位置施加的力的反作用力而施加给与所述第一定位相关的触觉输出设备的触觉力反映给与所述第二定位相关的触觉输出设备。

3.根据权利要求1或2所述的方法,还包括根据所述空间的数据模型来确定阻碍物体的存在,由此可以对所预期的位置和/或力进行修改。

4.根据权利要求1或2所述的方法,其中通过以下操作来确定网络延迟测量值:将所述位置数据包发送给该网络,所述位置数据包包括时间决定性标识;通过该网络来反射所述位置数据包;以及将接收时间与发送时间进行比较。

5.根据权利要求1至2中任何一项所述的方法,其中至少某些所发送的位置数据包也包括时间决定性标识,某些所述位置数据包包括被返回以允许更新网络延迟测量值的时间决定性标识。

6.根据权利要求1或2所述的方法,还包括将修改因子施加给所述力和方向信号的步骤,所述修改因子是从预先确定的用户喜好数据中导出的。

7.一种与双向传输结构相组合的交互式触觉输出终端,该终端至少包括:触觉输出设备(21,22);

控制装置(23,24);和

推导出网络延迟测量值的单元,

所述控制装置被设置为:

从所述触觉输出设备接收信号以确定所述触觉输出设备的当前位置;

通过从所述传输结构接收到的信号来确定所述触觉输出设备的优选当前位置;

确定将所述触觉输出设备从该当前位置移动到该优选当前位置所需的输出力和方向;

存储历史位置数据,该历史位置数据定义了所述触觉输出设备移到过的多个位置中的每一个;

推导出以下空间的模型并存储定义了所述模型的数据,该空间中被施加了方向力;和从所述历史位置数据和定义了所述模型的数据中推导出一预期位置,其中至少部分地根据所述网络延迟测量值而得到该预期位置,并产生定义了用于将所述触觉输出设备朝着所述预期位置移动的力和方向的输出信号,以及在收到后续位置数据时,对该预期位置与所接收的后续位置之间的差别进行校正。

8.根据权利要求7所述的终端,其中所述控制装置从触觉输出设备接收信号,所述信号包含有定义了所述设备在任意特定时刻的位置的数据,所述控制装置将所述数据转换为用于以预定的间隔发送给所述双向传输结构的信号。

9.根据权利要求7或8所述的终端,其中由环境仿真装置来产生定义了优选当前位置的信号。

10.根据权利要求7或8所述的终端,其中由位于该传输结构的相对端上的相应的交互式输出终端来产生定义了优选当前位置的信号。

说明书 :

技术领域

本发明涉及触觉传输系统,更具体地,涉及一种包含经改进的延迟校正的系统和一种用于改进延迟校正的方法。

本发明涉及触觉通信,更具体地,涉及对通过电信网络连接的触觉设备的响应进行改进。

背景技术

来自计算机的触觉输出已经被用于使所玩的游戏进一步提供“感觉”,例如颤动,由此增添对该游戏额外的感官知觉。这种输出还用于使视觉受损的人能够阅读文献和感觉图画等。已公布的我们的共同未决PCT专利申请(公开号为WO03/007136)中已经描述了触觉输出设备的基本操作,该专利申请公开了一种改变触觉接口输出特性以校正每个人的触觉差异的方法。在公开号为WO03/02885的另一个PCT专利申请中,公开了一种使得能够通过使用触觉输出设备来阅读盲文字母表(Moonalphabet)的方法。在将字符组从计算机或者数据存储器传输到触觉输出设备的过程中,不太可能存在依赖于该输出信号的对时间要求很急的行为(time critical activity)。但是,如果涉及玩游戏,特别地,如果游戏者彼此之间或者与游戏机之间以竞赛的方式进行对抗,则正向或者反向力参数的传输延迟可能对所感受的体验具有很大的影响。
由于玩游戏很可能通过无连接的网络,例如互联网或者万维网,而不是通过点对点通信链路来执行,所以可能会引入信号延迟,这会导致所感觉到的输出的移动与输入相比的不一致。
此外,如果想要使所感受到的移动和对于用户响应的反应逼真,则感觉设备需要在两个信号方向上频繁地更新。保持逼真所需的更新数目,虽然在触觉输出设备与发生处理器紧密相邻,以及直接连接到该发生处理器的情况下并不是问题,但是也可能在非常短的时间内导致该通信网络过载,并且/或者可能需要极大的带宽分配。

发明内容

根据本发明的一个方面,提供了一种激活触觉输出设备的方法,该触觉输出设备是可以对定义了方向力的信号做出响应的类型,所述方法包括:经由网络接收定义了多个位置数据包的一系列信号,每个位置数据包都定义了要发送到第二定位的在第一定位上测量到的位置;根据位置数据来确定定义了希望该与所述第二定位相关的触觉输出设备移动到的位置的信息;存储历史位置数据,该历史位置数据定义了与所述第一定位相关的触觉输出设备移到过的多个位置中的每一个;推导出以下空间的数据模型并存储定义了所述模型的数据,在该空间中方向力被施加在所述第一定位上,所述方法特征在于,还包括以下步骤:推导出网络延迟测量值;至少部分地根据所述网络延迟测量值,从所述历史位置数据和定义了所述模型的数据中推导出一预期位置,并产生定义了用于将所述与第二定位相关的触觉输出设备朝着所述预期位置移动的力和方向的输出信号;以及在所述第二定位收到后续位置数据时,对该预期位置与所收到的后续位置之间的差别进行校正.
优选地,该方法包括在每个方向都发送信号,由此以一系列返回数据包中的当前位置信号的形式,将作为朝向当前定义的位置施加的力的反作用力而施加给与所述第一定位相关的触觉输出设备的触觉力反映给与所述第二定位相关的触觉输出设备。
该方法可以包括根据所述空间的数据模型来确定阻碍物体(impending object)的存在,由此可以对所预期的位置和/或力进行修改。
本发明的一个特征提供了一种激活触觉输出设备的装置,该触觉输出设备是可以对定义了方向力的信号做出响应的类型,所述装置包括:经由网络接收定义了多个位置数据包的一系列信号的部件,每个位置数据包都定义了要发送到第二定位的在第一定位上测量到的位置;根据位置数据来确定定义了希望该与所述第二定位相关的触觉输出设备移动到的位置的信息的部件;存储历史位置数据的部件,该历史位置数据定义了与所述第一定位相关的触觉输出设备移到过的多个位置中的每一个;推导出以下空间的数据模型并存储定义了所述模型的数据的部件,在该空间中方向力被施加在所述第一定位上,所述装置特征在于,还包括以下部件:推导出网络延迟测量值的部件;执行以下操作的部件:至少部分地根据所述网络延迟测量值,从所述历史位置数据和定义了所述模型的数据中推导出一预期位置,并产生定义了用于将所述与第二定位相关的触觉输出设备朝着所述预期位置移动的力和方向的输出信号;以及在所述第二定位收到后续位置数据时对该预期位置与所收到的后续位置之间的差别进行校正的部件。
所接收的信号包含有定义了所述触觉输出设备在任意特定时刻的位置的数据,所述装置还包括将所述数据转换为用于以预定的间隔发送给所述双向传输装置的信号的部件。
可以由环境仿真装置,例如受程序控制的计算机,来产生定义了优选当前位置的信号,或者可以由位于该传输装置的相对端上的相应的交互式输出终端来产生。
在接收到一系列定义了优选位置的数据包(每个包都定义了施加在用于发送给当前位置的一个位置的方向力)的情况下,该控制装置可以包括以下装置,该装置用于从数据包中确定该传输序列,并且将该数据重新排序为数字正确的系列,从以前接收的数据包中推断出由随后接收的数据包定义的预期线性移动,以及对于任意丢失的数据包,对应于所述预期线性移动来施加输出方向力信号。

附图说明

现在将参照附图仅以示例的方式来说明根据本发明的触觉传输系统,附图中:
图1是第一触觉通信系统的示意框图,其中网络使触觉输入/输出设备与环境仿真互连;
图2是具有多个互连的触觉输入/输出设备的触觉通信系统的示意框图;
图3是图2的系统内的数据交换的示意图;
图4是在两个位置之间测量延迟以实现对图2的系统进行调整的方法的示意流程图;
图5是计算要被本地施加的力的方法的示意流程图;
图6至8是表示如何将本发明应用于实际的示意流程图。

具体实施方式

参照图1,在我们的共同未决欧洲专利申请第01305947.2号中,公开了一种提供例如作为目标模型数据而存储的场景的触觉输出表示的方法。在这种情况下,处理器1包括对触觉输出设备(例如,来自美国的Sense Able Technologies Inc的幻影1.0触觉输出设备)的位置进行响应,以基于该目标模型数据来输出反作用力的程序。存储在数据存储器3中的该目标模型数据可以定义固定或者可移动目标(其可以由触觉输出接口2的用户感知)的纹理、外表和位置。在先前的申请中公开的某些进一步的开发中,基于用户标识6而保存在数据存储器4中的信息使得可以使用用户喜好7和伽玛校正因子8来提供适当的输出调节,以确保不同的用户对该触觉输出接口2上的输出具有基本相同的感觉。
如所公开的,该处理器1与该触觉输出接口2紧密地耦接,并且因此可以对该用户的手指相对于该设备的x、y、z轴的定位进行大体连续的检测,从而允许实时地建模由该目标模型数据3定义的环境。
如在上文中提及的,一旦在触觉输出接口2和处理器1之间引入网络5,那么如果人们需要以大体上连续的速率来更新信令,则通过到处理器1的输入/输出接口6在该虚拟环境和确定用户的响应和位置的响应信令之间进行连续通信变得不切实际。此外,由该网络引入信令中的延迟导致对被传输的信息非常不平稳的感觉。
现在转向图2,其中多个触觉输出设备21、22通过各自的输入/输出接口25、26与各自的处理器23、24进行通信,网络延迟和信令限制的问题变得更加严重。因此,如果处理器23通过网络适配器27接收到表示该触觉输出设备22的位置的信号,并且相应地立即设法将触觉设备21移动到那个位置,则移动过程中的大量急推将是显而易见的。总之,触觉输出设备21的用户将被施加一个反向力,其可以防止这样的移动,由此防止处理器23将触觉输出设备21的位置与触觉输出设备22的位置对准。相应地,在测量触觉输出设备21的位置的过程中,处理器23将通过网络适配器28经由网络5将信号发送回处理器24,其将试图在触觉输出设备22中进行相应的移动。因此,因为触觉设备21和22之间的通信不再是连续的模式,而是间隔地接收和发送位置信息,所以用户的感受将显著地被削弱。此外,信号穿过该网络所花费的时间段(网络延迟)将进一步削弱用户的感觉。
因此,还考虑到图3,有可能发觉如果用户将触觉输出设备21“位置”设置在位置A上,并且从该触觉输出设备接收到力,则个人计算机(PC)23从“位置”中导出本地位置数据,并将其发送至网络。同时,PC 23将从该网络接收的远程位置数据转换为本地力数据。
相应的位置和力导出数据还将在位置B上由PC 24使用。
在实际的网络中,位置数据和力输出以近似5毫秒的间隔在各终端之间传输。因此,每当接收到一个新的位置时,就输出一个力,以求有效地借助于对本地用户进行推动的电动机将该输出设备移动到新的位置。实际上,位置A和B的各端的用户被连接在一起,因此双向动作和数据传输有效地试图将输出设备21和22都移动到相应的位置。这样就以如下方式对这两个用户的连接进行了仿真,好像它们是通过某种弹性器件,例如弹簧或者柔性杆连接在一起的。因为各端上都存在反作用力,所以两个器件之间可能是不稳定的,因为对力进行延迟传输的该反馈回路可能引起有效的正反馈。
网络延迟还导致该用户在响应该受动器(effector)的过程中,由于在通过该网络接收数据包时的延迟而容易感觉到急动,特别是在该网络的延迟出现变化时.这可能有损于该用户的感受质量.
因此,如上所述,再次参照图3,以下系统易于受到以上略述的网络延迟问题的影响,该系统包括两个触觉输出设备21、22,分别安装在个人计算机23、24上,个人计算机23、24进而经由所述互联网5进行连接。
使用中,每个计算机23、24都读取安装于其上的触觉输出设备21、22各自的位置,并且将定义了其触觉显示的手持件的位置坐标的数据发送给另一台计算机,该另一台计算机计算使所连接的触觉显示的各自手持件强制接近相同的坐标所需的力。因此,该计算机指示该触觉显示器经由该手持件对该用户施加该力。该对称通信使两个显示器保持一致的移动,从而能够在它们之间传输简单的力、位置、形状纹理和运动。
现在转向图4,在位置A和B的每一个中,PC 23、24各自的本地时钟30被用于确定网络延迟。因此,从位置A开始,将来自该本地时钟的时间捆绑到传输数据包中(步骤31),并且在步骤32中经由网络5进行发送。在位置B接收该数据包(步骤33),并且在步骤34中立即经由网络5进行转发,然后在步骤35中在位置A上再次接收,对接收时间(是首次出现传输的时间)进行剥离,并且在步骤37中对该接收时间与本地时钟30再次进行比较,以在步骤38中提供该网络5的延迟的可用测量值。
虽然可以在该网络上传输延迟信息从而使得每个终端都可以使用相同的延迟,但是在网络变化的情况下,可以使用各自的本地时钟40从位置B执行类似的延迟测量,以通过与步骤31至37相对应的步骤41至47推导出延迟测量值。
应该注意到,因为在确定该延迟测量值的过程中仅仅涉及一个时钟,所以不需要时钟在两个通信系统上同步。当然,应该理解,该数据包信息不必是特定的时钟时间,而可能只是被发送和接收的序列号,并且使用查找表来确定该序列号数据包的发送时间,以便与当前时间进行比较。
注意到,在网络所经历的延迟之间由于正反向传播路径中路径的差异而会有所差别的情况下,每个终端都可以执行各自的延迟测量。
一旦确定了每个方向中的延迟,就可以使用各种各样的方法来解决延迟问题。这样的方法的一些示例在我们共同未决的专利申请No.EP02254458.9和同时提交的申请No GB(我方案号A30267)中进行了公开。
考虑图5,在跨越该网络的典型触觉连接中,使用如步骤51所示的从触觉输出设备传感器导出的本地位置,和步骤52中从该网络接收的远程位置来计算差别,并且提供相对于这两个触觉输出设备的x、y和z坐标的差别矢量(步骤53)。然后使用这两个设备之间的连接的连接强度或者弹力(步骤54)来计算将该本地触觉设备强制移动到该远程设备的相对位置所需的力(步骤55),使得可以发送x、y和z矢量,以在步骤56中为电动机提供本地力。
在本发明中,提出了一种补偿网络延迟的另选方法,其可以用来代替以前提出的延迟补偿方法或者作为其改进。
因此,与其仅仅使用远程手持件的接收位置,倒不如使用预测的下一个接收位置.提出了用于预测该位置的多种方法,包括基于通过当前位置和速度进行动态归纳,通过测量和发送来自该手持件上的接触力传感器的接触力来改善内插,建立该远程环境和力场建模的模型来进行预测.
然后转向图6,在上述第一种方法中,当从该网络接收到该远程位置时(步骤60),将其存储在位置历史记录(61)中,其可以仅是该手持件最后的“x”位置的滚动日志。现在可以基于该接收位置和先前位置使用已知的先前位置来预测下一个位置,以确定速度(62)(从先前的运动中估计出)和变化出现的时间间隔。可以考虑高次项,例如使用加速度(63)、加速度的变化率等等。这种估计适用于平滑移动,例如其中用户在自由空间中移动该手持件,或者其中对一个表面进行跟踪,但是在预测急剧的运动时将发生错误,诸如预测用户以高速击中硬表面的效果,或者手持件被用于感觉实心目标(诸如立方体、球体或者墙壁)的边界时。
确定了先前位置、速度和加速度以后,可以利用所确定的延迟测量(64)的输入,使用采用一因子(取决于包之间所采用的附加步骤的数目)的上述方法来计算到下一个接收的数据包的位置的期望变化(73),并且随后可以将位置的预测改变添加到从网络接收的当前位置中(66)。下面使用通过本地手持件中的传感器而确定的本地位置来计算远程手持件的预测位置和本地手持件的当前位置之间的差别矢量(68)。
下面可以与该差别矢量结合地使用其他输入,例如两个手持件之间的连接强度设定(69),来计算将本地手持件强制移动到与远程手持件相同的相对位置所需的力,并且输出x、y和z信号,以向本地手持件的电动机提供该本地力。
注意到,在位置“A”和“B”上都执行相同的算法。从每个终端上发送的位置都是该手持件当前驻留在其上的实际位置,并且不是用来计算提供给电动机的本地力的预测位置。位置预测中的任何误差当然不可以实时校正,但是可以修改该力以校正以前预测不准确的结果,并将该本地手持件朝向该远程手持件位置移动。
如果该手持件装备有力传感器,那么可直接计算加速度,而不是根据位置数据来实现计算。因此如果位置和力数据在该远程和本地环境之间传输,则以前的加速度数据是可用的。
因此,参照图7,已经参照图6描述了计算方面的相应步骤,因此在这里不进一步详细描述。但是,在这里,采用附加的步骤以通过引进与力场模型相关的元素,来修改到该触觉输出设备的电动机的输出。因此,一旦在步骤63中计算出了加速度,就与实际的输出力一起使用它,以导出力场模型。因此,在步骤74中,从该力中减去加速度的惯性分量,并且被用于利用该预测位置上的该力来更新所存储的力场模型(75)。确定了位置的变化以后,在力场模型中查找新位置上的力,并且在步骤77中将其添加到已计算出的使本地手持件强制接近远程手持件的计算位置所需的力中,使得输出给该输出设备的x、y和z电动机的力的精度被调节为考虑到该力。
在本例的进一步发展中,本地PC的每一个都建立受动器在其中移动的空间的模型,并且使用该模型去影响输出给电动机的本地力.可以随时间从位置的确定和/或在两个触觉输出设备之间传输的力数据来导出该空间模型数据,或者可以通过抽样来导出.特别是在使用抽样的情况下,可能会构成有限的数据模型,也就是说,在每十个可移动的点上,而不是在该空间模型中在每个点上,存储定义了阻抗或者力存在的数据,或者插入在该模型内具有已知值的位置之间.如果该远程环境的全计算机建模是可用的,那么可以计算与环境之间的相互作用,而不是对远程用户的影响.例如,如果该手持件的预测位置截取如下位置,已知在该位置上远程环境具有已知机械性能的实心目标,那么可以预测到一个反作用力,并且增加到经由该本地手持件施加于本地用户的力中.
因而转向图8,其中对与那些参照图6和7说明的步骤相对应的步骤进行了相应的编号,因此不再进一步说明,对来自步骤74的惯性力和阈值进行比较,该阈值确定该位置上是否存在目标(78),并且该确定被用于更新操作空间的模型(79)。一旦计算出了位置的变化,就使用该预测位置来检查目标的存在(80),并且如果存在,就计算来自该目标的反作用力(81),然后在步骤77中如前所述进行添加。
当然,应该注意到,可以在步骤71中使用力建模和空间建模的组合来影响该电动机的最终输出。如果该远程空间的全计算机建模是可用的,则这当然是优选的。
但是,该远程环境未必可以按照总精度进行建模,其也未必可以保证作为用户和远程环境之间相互作用的结果,该远程环境内的目标没有被移动。可以随时间通过位置和力数据来更新该模型,例如,如果以往位置数据示出在特定区域中的某个位置上,该手持件的以往移动导致该手持件反弹回来,则可以将该位置上的目标的试验性记录添加给该模型。因此,当该手持件接下来移动到该位置时,对该模型中与该目标的冲突进行仿真,并且即使当报告该冲突的实际数据仍然在经由该网络运送时,也向该用户的输出中添加反作用力。
在更多的考虑中,该模型可以通过对随时间的变化进行平均而得到更新,而不是通过完全地替换当前数据模型仿真来更新。因此,当前位置上的模型掺入旧模型中,并且在一个位置上花费的时间越多,对应于该远程环境的新版本就越多,并且平均值中旧版本的特征就越少。虽然这会降低该模型更新为真实变化的速度(例如通过由于与该手持件及在该模型中的其他目标的相互作用而在其移动过程中不可预见的目标),但其增加了该模型对无连接传输的噪声效应、短暂的及其他虚假效应的抵抗力。对于线性力场及其他可线性结合的效应,可以施加衰减因子δ,并且每当步骤用δ-1乘以位于该位置上的模型的已有值时,将其增加给δ倍新版本中。
由于未必可以确定该远程环境的完整模型,并且借助于目前的系统去抽样手持件所工作的整个空间将是不切实际的,所以除了在发明的情形之外,该结果很可能是该环境的数量稀少的建模。当该手持件在模型中移动时,可以建立局部模型。因此,必须在该建模中的已知值之间进行内插。在一个示例中,内插可以通过找到最靠近的已知值点来进行。另选地,可以使用有限单元模型,其具有较之触觉操作空间中存在的那些模型更少的点。在这种情况下,该模型具有多个比触觉i/o设备的最小位置识别率大很多的单元,但是,可以使用位置之间的融合技术来避免对于用户所感觉到的力的像素化。在一种更加复杂的配置中,系统可以配置为确定该操作空间内实心目标的最有可能的排布,该排布与具有已知值的点的子集的值相匹配。
可以在该建模中结合其他的数据简化功能,例如在对纹理进行仿真的情况下,它们可以被表示为具有相对少的参数的周期性或者随机函数,例如,可以由波峰、斜率和波谷宽度之间的周期、幅度和比率来指定波峰。因此,当在远程表面上跟踪时,虽然由于精细纹理表面的凸起较小意味着在网络延迟推后期间,可以移开精细纹理表面的许多凸起而难以通过内插来预测表面纹理的振动,但是可以通过保存在数据模型中的整体质地参数来对来自表面纹理的振动进行仿真。
可以使用其他网络延迟测量(例如,ISDN、IP上的TCP或者经PSTN在调制解调器-调制解调器链路上的RS232串行)来代替UDP。可以使用其他网络延迟测量(例如,“ping”时间,来自该网络上其他计算机的网络性能量度,或者通过同步时钟进行单向测量)。