CN109661640B - 交互式计算机系统的3d触觉 - Google Patents

交互式计算机系统的3d触觉 Download PDF

Info

Publication number
CN109661640B
CN109661640B CN201780053887.2A CN201780053887A CN109661640B CN 109661640 B CN109661640 B CN 109661640B CN 201780053887 A CN201780053887 A CN 201780053887A CN 109661640 B CN109661640 B CN 109661640B
Authority
CN
China
Prior art keywords
contact
user
controller device
contact device
actuator
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
Application number
CN201780053887.2A
Other languages
English (en)
Other versions
CN109661640A (zh
Inventor
M·J·辛克莱
E·奥菲克
H·本科
C·霍尔茨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109661640A publication Critical patent/CN109661640A/zh
Application granted granted Critical
Publication of CN109661640B publication Critical patent/CN109661640B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/013Force feedback applied to a game
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/01Indexing scheme relating to G06F3/01
    • G06F2203/015Force feedback applied to a joystick
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/041012.5D-digitiser, i.e. digitiser detecting the X/Y position of the input means, finger or stylus, also when it does not touch, but is proximate to the digitiser's interaction surface and also measures the distance of the input means within a short range in the Z direction, possibly with a separate measurement setup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04105Pressure sensors for measuring the pressure or force exerted on the touch surface without providing the touch position

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)

Abstract

用于虚拟环境的控制器设备包括手柄和具有基本平坦表面的接触设备。接触设备相对于手柄的位置是可调节的。致动器模块被布置成调节接触设备相对于手柄的位置。与虚拟环境通信的控制模块选择性地控制致动器模块,以响应于从虚拟环境接收的数据来调节接触设备的位置。该数据包括用户与虚拟环境内表示的物体之间的交互的指示。

Description

交互式计算机系统的3D触觉
技术领域
本公开涉及向控制器设备的用户提供触觉反馈。
背景技术
本文提供的背景描述是为了总体上呈现本公开的上下文。就本背景技术部分中所描述的工作而言的目前所称的发明人的工作,以及在提交时可能以其他方式没有资格作为现有技术的描述的各方面,既不明确也不暗示地被认为是针对本公开的现有技术。
实现虚拟环境的交互式计算机系统可以包括但不限于虚拟现实(VR)系统、增强现实系统、游戏系统等。仅作为示例,VR系统向用户提供三维(3D)VR环境的视觉和音频表示。在一些示例中,VR环境对应于游戏环境。VR系统可以使用显示器、结合了显示器的耳机等来提供VR环境的视觉表示。
用户可以使用一个或多个控制器设备来与VR环境或其他类型的交互式计算机系统交互。控制器设备包括但不限于被配置为与VR系统通信的手持(即,远程)控制器、手套或其他可穿戴设备等。例如,控制器设备可以向VR系统提供控制器设备的相应位置(例如,6个自由度(或6个DOF)位置)的指示。位置指示还可以指示握持控制器设备的相应手的位置、朝向、移动等。在一些示例中,VR系统实现光学跟踪以确定控制器设备的位置和移动。以这种方式,用户能够与VR环境交互(例如,向VR环境提供输入)。控制器设备还可以包括诸如按钮、触摸板、触控板(trackpad)等之类的其他输入机制,用于接收用户输入并引起与VR环境的进一步交互。
发明内容
用于虚拟环境的控制器设备包括手柄和具有基本平坦表面的接触设备。接触设备相对于手柄的位置是可调节的。致动器模块被布置成调节接触设备相对于手柄的位置。与虚拟环境通信的控制模块选择性地控制致动器模块,以响应于从虚拟环境接收的数据来调节接触设备的位置。该数据包括用户与虚拟环境内表示的物体之间的交互的指示。
用于操作用于虚拟环境的控制器设备的方法包括:在虚拟环境内显示物体,生成包括用户与物体的表面之间的交互的指示的数据,向控制器设备的致动器提供数据,并且使用致动器基于该数据来调节接触设备相对于控制器设备的手柄的位置。
从具体实施方式、权利要求书和附图中,本公开的其他应用领域将变得显而易见。具体实施方式和具体示例仅旨在说明的目的,并不旨在限制本公开的范围。
附图说明
图1是根据本公开的原理的示例虚拟现实系统。
图2是包括根据本公开的原理更详细地示出的控制器设备的简化虚拟现实系统。
图3A是根据本公开的原理的第一示例控制器设备的侧视图。
图3B是根据本公开的原理的第一示例控制器设备的平面图。
图4A和图4B是根据本公开的原理的第一示例接触设备和致动器模块。
图5A和图5B图示出了根据本公开的原理的第一示例控制器设备的示例操作。
图6A是根据本公开的原理的第二示例控制器设备的侧视图。
图6B是根据本公开的原理的第二示例控制器设备的平面图。
图7是根据本公开的原理的第二示例接触设备和致动器模块。
图8图示出了根据本公开的原理的第二示例控制器设备的示例操作。
图9是根据本公开的原理的用于向虚拟现实系统的用户提供反馈的示例方法。
在附图中,可以重用附图标号来标识相似和/或相同的元件。
具体实施方式
用于虚拟现实(VR)系统的一些控制器设备实现了用于向用户提供反馈的一个或多个机制。反馈可以指示VR环境的各种特征(例如,与诸如墙壁或其他结构之类的物体的接近度、在用户的特定范围内的事件的发生等)和/或响应于VR环境内的用户行为(例如,发射虚拟武器、与物体交互等)。
示例反馈包括振动、音频指示符(例如嘟嘟声)等。经由手持或可穿戴控制器设备提供给用户的反馈可能不能准确地表示用户与VR环境的交互。例如,诸如振动之类的反馈可能无法准确地将与VR环境中的物体的触觉交互传达给用户。
根据本公开的原理的系统和方法响应于与VR环境中的物体、表面等的交互而向用户提供触觉反馈。例如,根据本公开的原理的控制器设备包括接触设备(例如,平台、板等),其接触表面被布置成接纳用户的指尖。控制器设备被配置为根据用户和VR环境之间的交互来调节接触设备的接触表面,以提供触觉反馈(例如,皮肤和/或动觉反馈)。例如,在一些实现中,控制器设备响应于用户触摸VR环境中的物体或表面来调节接触表面的朝向。在其他实现中,控制器设备调节接触表面的纹理。尽管关于VR系统进行了描述,但是本公开的原理也可以被包括在实现虚拟环境的其他交互式计算机系统中,包括但不限于使用诸如PC或膝上型计算机监视器之类的显示器、使用电视的游戏控制台等的增强现实系统和游戏系统。因此,如本文所使用的,术语“虚拟现实系统”可以被用来指示实现虚拟环境的任何交互式计算机系统。
图1示出了示例VR系统100。VR系统100包括主机设备(例如,计算机、游戏控制台等)104和一个或多个外围设备,诸如根据本公开的原理的控制器设备108。在一些示例中,VR系统100可以包括跟踪系统116(例如,光学跟踪系统),其被配置为跟踪用户和/或控制器设备108的移动。VR系统100可以包括其他输入120(例如,键盘、鼠标、无线输入、诸如麦克风的语音输入机制等)和其他输出124(例如,扬声器、辅助显示器、无线输出等)。
主机设备104包括用于与外围设备通信的一个或多个接口128。例如,接口128可以包括但不限于输入/输出(I/O)接口和适配器(例如,通用串行总线或USB),以及用于与网络136通信的有线或无线通信接口(WiFi、蓝牙、蜂窝、有线以太网等)。接口128允许在外围设备和/或网络132与控制模块136之间传输数据。
控制模块136控制与VR系统100的操作有关的数据的处理。例如,控制模块136可以对应于一个或多个处理器,其被配置为执行主机设备104的操作系统和在盘储存器140、存储器144、云计算系统(例如,经由网络132)等中存储的一个或多个程序以实现VR环境。仅作为示例,盘储存器140可以对应于硬盘驱动器(HDD)、固态驱动器(SSD)、诸如CD或DVD ROM驱动器的可移动介质驱动器、闪存等。存储器144可以对应于系统存储器并且可以包括但不限于易失性和/或非易失性半导体存储器。
图2示出了仅包括主机设备204、控制器设备208、显示器212和跟踪系统216的简化VR系统200。控制器设备208包括被配置为实现根据本公开的原理的系统和方法的控制模块220、接触设备224、输入传感器228和输出致动器232。控制器设备208包括用于在控制器设备208和主机设备204之间传送数据的通信接口236(例如,有线和/或无线通信接口)。控制器设备208可以包括其他输入240和其他输出244。例如,其他输入240可以包括但不限于用于接收语音输入的麦克风、按钮、触摸板或触摸屏接口(例如,用于提供指尖在接触设备224上的相对位置的指示)等。其他输出244可以包括但不限于音频输出、集成显示器、LED、其他反馈机制(例如,振动)等。控制模块220基于从主机设备204、接触设备224和输入240接收的数据来控制控制器设备208的操作,并且将指示用户与控制器设备204的交互的数据提供给主机设备204,如下面更详细地描述的。
主机设备204向控制模块22提供指示用户与VR环境的交互的交互数据。例如,用户使用控制器设备208来与(例如,经由显示器212渲染给用户的)VR环境交互。在一些示例中,跟踪系统216通过监视控制器设备208的移动来跟踪用户移动,并向主机设备204提供指示用户移动的跟踪数据。基于从跟踪系统接收的跟踪数据,并且在一些示例中,还基于从控制器设备208接收的用户输入数据(例如,响应于用户与接触设备224、输入240等的交互而生成的用户输入数据),主机设备204生成并输出交互数据。
控制模块220基于交互数据控制接触设备224。例如,交互数据可以包括用户和VR环境之间的交互的特性。特性可以对应于与用户(例如,VR环境中的用户的指尖)和VR环境中的物体之间的接触相关联的接触特性,包括但不限于:物体的表面轮廓、形状和纹理,以及施加在物体上和/或由物体施加的力的量。因此,控制模块220控制输出致动器232以物理地调节接触设备224,使得接触设备224与用户的实际指尖之间的接触反映用户的指尖与VR环境中的物体之间的接触。在一些示例中,输入传感器228(其可以包括力传感器或手指位置传感器)提供指示用户与接触设备224之间的接触的附加反馈。
现在参考图3A和图3B并继续参考图2,分别以侧视图和平面图示出了根据本公开的原理的第一示例控制器设备300。控制器设备300包括手柄304、布置在手柄304的第一端部上的致动器模块308以及安装在致动器模块308上的接触设备312。将接触设备308布置成接纳用户的指尖316。尽管所示的接触设备308对应于基本上圆形的平台,但是在其他示例中接触设备308可以具有任何合适的形状(例如,矩形、椭圆形等)。在一些示例中,控制器设备300可以包括由跟踪系统216可检测的一个或多个跟踪元件320(例如,逆向反射球体),该跟踪系统216被布置成便于跟踪控制器设备300在3D空间中的移动。其他示例可以实现用于跟踪控制器设备300的移动的其他合适的系统和方法。仅作为示例,诸如控制模块220、致动器模块308等的组件可以位于手柄304的壳体内。
致动器模块308基于从主机设备204接收的交互数据选择性地物理地调节接触设备312,如上面关于图2所述。例如,致动器模块308可以包括与相应的致动器臂324通信的伺服机制或其他合适的机制。致动器模块308可以被配置成独立地致动(例如,伸展和缩回)致动器臂324,以调节接触设备312相对于手柄304(并且因此相对于指尖316)的位置(例如,倾斜以调节偏转和俯仰、升高、降低等)。当用户移动控制器设备300以引起用户的指尖(即,虚拟指尖)与VR环境中的物体之间的接触时,致动器模块308相应地调节接触设备312的位置。还可以调节VR环境内的用户的指尖的视觉表示以指示接触(例如,通过倾斜或挤压手指)。
现在参考图4A和图4B,示出了示例接触设备400和致动器模块404。接触设备400包括基本上平坦的上平台408和下平台412。上平台408可以具有凹形上表面416。在一些示例中,平台408由乙缩醛(acetal)或其他塑料材料形成。在一些示例中,将力传感器(例如,力变换器)420布置在上平台408和下平台412之间,以检测用户施加到接触设备400的力的量。
致动器模块404包括伺服电动机424,伺服电动机424被配置成经由相应的控制臂428和致动器臂432调节接触设备400(例如,响应于来自控制模块220的命令)。如图所示,致动器模块404包括三个伺服电动机424、控制臂428和致动器臂432,以提供接触设备400的三个自由度移动。仅作为示例,控制臂428经由相应的旋转接头436连接到致动器臂432,并且致动器臂432经由球窝球形接头440连接到接触设备400。
仅作为示例,力传感器420包括力感测电阻器(FSR)材料和两个内部电极,用于响应于由用户施加到上平台408的力来检测上平台408和下平台412之间的压缩。在一些示例中,上平台408经由可调螺钉或其他紧固件444连接到下平台412,所述可调螺钉或其他紧固件444在径向臂448的相应端部处围绕上平台408的外周边。例如,可以在上平台408的材料中形成臂444,以允许上平台408的内部部分响应于用户施加的力而向下移动。
当没有力被施加到上平台408时,力传感器420的电极彼此不接触并且不生成电压。相反,施加到上平台408的最小量的力引起力传感器420的电极之间的接触,并且相应地生成电压以指示用户施加到接触设备400的力的量。在一些示例中,臂444可以被配置成即使在没有来自用户的接触的情况下也使上平台408向下偏,抵靠力传感器420。因此,力传感器420可以在没有用户接触的情况下生成标称电压,而电压可以与用户施加到上平台408的力的量成比例地增加。提供电压作为指示用户施加(例如,施加到控制模块220)的力的量的反馈。
以下关于图5A和图5B描述示例接触设备500的操作。在图5A中,接触设备500被示出为处于相对于用户的指尖504的多个示例位置中。如图所示,接触设备500的位置对应于用户的虚拟指尖与VR环境中的示例物体508的表面之间的接触点。例如,(例如,经由显示器212而被渲染并提供给用户的)用户的虚拟指尖基于控制器设备300的移动而在VR环境内移动。因此,当用户移动控制器设备300时,虚拟指尖相对于物体508移动并且接触沿着物体508的表面的不同点。随着控制器设备300的移动引起虚拟指尖与物体508产生初始接触、接触物体508的不同部分、停止与物体508的接触等,而调节(例如,倾斜)接触设备500。例如,随着虚拟指尖沿物体508的表面“滑动”时,接触设备500相应地被倾斜(例如相对于控制器设备300,诸如致动器模块512等的安装部分)。仅作为示例,调节接触设备500,使得接触设备500在虚拟指尖和物体508之间的接触点处基本垂直于物体508的表面法线516。
在图5B中,接触设备500被示出为当用户的虚拟指尖接触VR环境中的表面520时处于多个位置(例如,高度位置)中。在524处,虚拟指尖与表面520未接触,并且因此接触设备500被示出处于完全缩回位置。在528处,虚拟指尖与表面520接触。
控制器设备300的持续向下移动可以使得虚拟指尖穿透(penetrate)表面520。根据本公开的原理的接触设备500可以响应于否则将使得虚拟指尖穿透VR环境内的表面520的移动而被伸展。例如,在532处,接触设备500被伸展以抵抗用户的指尖504施加向上的力。换句话说,随着控制器设备300正在向下移动,由于接触设备500的相对向上移动,指尖504仍然被保持在相同位置。以这种方式,接触设备500向用户指示控制器设备300的移动正在使得虚拟指尖试图穿透表面520。
如果用户行为继续以使得虚拟指尖向下朝向表面520移动,则接触设备500被进一步伸展,如在536处所示。如在536处所示的接触设备500的位置可以对应于完全伸展的位置。因此,控制器设备300的进一步向下移动允许指尖504的对应移动,导致表面520的穿透,如在540处所示。在一些示例中,在VR环境中渲染的虚拟指尖(和虚拟手,其对应于在VR环境中呈现的控制器设备300的位置)的位置可以与控制器设备300的进一步移动解耦,以补偿表面520的穿透。例如,响应于控制器设备300的继续移动,不是允许虚拟指尖穿透表面520,接触设备500可以被保持在部分伸展的位置(例如,完全伸展位置的50%或75%),同时保持虚拟指尖呈现在表面520上。因此,如果用户无意中穿透表面520,则用户仍然能够与表面520交互。
现在参考图6A和图6B,分别以侧视图和平面图示出了根据本公开的原理的第二示例控制器设备600。控制器设备600包括手柄604、布置在手柄604的第一端部上的致动器模块608、以及安装在致动器模块308上的接触设备612。将接触设备608布置成接纳用户的指尖616。尽管所示的接触设备608对应于基本上圆形的平台,但是在其他示例中接触设备608可以具有任何合适的形状(例如,矩形、椭圆形等)。在一些示例中,控制器设备600可以包括可由跟踪系统216检测的一个或多个跟踪元件620(例如,逆向反射球体),其被布置成使得跟踪控制器设备600的移动。仅作为示例,诸如控制的组件模块220、致动器模块608等的组件可以位于手柄604的壳体内。
致动器模块608基于从主机设备204接收的交互数据选择性地调节接触设备612,如上面关于图2所述。在该示例中,接触设备612包括可调节销628的触觉阵列624(例如,如图所示,4×4阵列)。致动器模块608包括被配置成独立地致动相应的销628的伺服机制和/或其他合适的机制。例如,致动器模块608独立地致动(例如,伸展和缩回)销628,以调节触觉阵列624相对于手柄604(因此,相对于指尖616)的位置(例如,倾斜、升高、降低等)。当用户移动控制器设备600以引起用户的指尖(即,虚拟指尖)与VR环境中的物体之间的接触时,致动器模块608相应地调节触觉阵列624的销628的相应位置。
现在参考图7,示出了示例接触设备700和致动器模块704。接触设备700包括基本平坦的上平台708,其包括由16个销716组成的4×4触觉阵列712。尽管触觉阵列712具有4×4配置,但是其他示例可以使用不同的配置(例如,3×4、5×5、4×6等)。致动器模块704被配置为基于与VR环境中的物体的交互来独立地致动(例如,伸展和缩回)每个销716。
例如,致动器模块704包括与相应的销716连通的多个线性致动器系统720,但是为了简单起见仅示出了单个线性致动器系统720。仅作为示例,线性致动器系统720具有齿条(rack)和小齿轮(pinion)配置。每个线性致动器系统720包括伺服电动机724,伺服电动机724被配置成使第一正齿轮(spur gear)或小齿轮齿轮(pinion gear)728旋转。第一正齿轮728的旋转引起齿条齿轮732的线性致动,其继而引起第二正齿轮736的旋转。第二正齿轮736机械地耦合到销716的较低齿轮部分740。因此,齿条齿轮732的水平线性致动被转换为销716的垂直线性致动。以这种方式,致动器模块704调节触觉阵列712,以表示用户与VR环境中的表面之间的接触(例如,响应于来自控制模块220的命令)。
下面在图8中示出示例接触设备800的操作。在相对于用户的指尖804的多个示例配置中示出了接触设备800。如图所示,接触设备800的位置对应于用户的虚拟指尖与VR环境中的示例物体808的表面之间的接触点。例如,(例如,经由显示器212而被渲染并提供给用户的)用户的虚拟指尖基于控制器设备600的移动而在VR环境内移动。因此,当用户移动控制器设备600时,虚拟指尖相对于物体808移动,并且接触沿着物体808的表面的不同点。随着控制器设备600的移动引起虚拟指尖与物体808进行初始接触、接触物体808的不同部分、停止与物体808的接触等时,调节接触设备800。
例如,当虚拟指尖沿着物体808的表面“滑动”时,致动器模块812选择性地伸展和/或缩回触觉阵列820的销816。仅作为示例,将销816调节到这样的配置,该配置使得由触觉阵列820限定的平面在虚拟指尖和物体808之间的接触点处基本垂直于物体808的表面法线816。在一些示例中,可以基于物体808的表面的纹理进一步调节销816。例如,对于具有基本平坦且光滑的表面的物体808,可以将每个销816调节到相同的高度以提供光滑的表面。相反,对于具有粗糙表面的物体808,可以将销816调节到不同的高度以提供粗糙表面。在一些示例中,触觉阵列820可以包括布置在销816上方的柔性或可拉伸膜。
控制器设备300和600可以实现附加特征。例如,控制器设备300和600可以包括振动机制(例如,对应于图2的其他输出244),其被配置为响应于用户与VR环境中的物体的表面的接触和/或横向移动而振动。例如,振动机制可以被配置为根据控制器设备300或600相对于物体表面的移动速度而振动。以这种方式,振动可以是表面的纹理(例如,粗糙度)的指示。其他特征可以包括但不限于用于提供温度反馈的加热器或其他温度输出设备,诸如触摸板或结合在相应的接触设备312和612内的力传感器等的输入等。一些示例VR系统可以包括两个或者更多的控制器设备300或600,和/或包括控制器设备300和控制器设备600二者。
根据本公开的原理的用于向VR系统的用户提供反馈的示例方法900开始于904。在908处,方法900将控制器的接触设备(例如,诸如控制器设备300或600之类的手持控制器)调节到默认位置。例如,默认位置可以对应于相对于控制器具有中性朝向的完全降低或缩回位置。仅作为示例,在默认位置中,接触设备的平坦表面可以基本上平行于控制器的水平轴。
在912处,方法900确定用户的附体(appendage,例如,指尖)是否接触VR环境中的物体的表面。如果是,则方法900继续到916。如果否,则方法900继续到908。在916处,方法900基于与物体的接触来调节接触设备。例如,方法900可以基于用户与VR环境中的物体之间的接触点处的物体的表面法线,来调节接触设备的位置。在920处,方法900确定用户和物体之间的接触点是否由于用户的移动而改变。如果是,则方法900继续到916。如果否,则方法900继续到924。在924处,方法900保持接触设备的位置。
在928处,方法900确定用户是否已经停止与VR环境中的物体的接触。如果是,则方法900继续到908并将接触设备返回到默认位置。如果否,则方法900继续到920。
前面的描述本质上仅是说明性的并且决不是要限制本公开、其应用或用途。本公开的广泛教导可以以各种形式来实现。因此,尽管本公开包括特定示例,但是本公开的真实范围不应受此限制,因为在研究附图、说明书和所附权利要求后,其他修改将变得显而易见。应当理解,在一个方法内的一个或多个步骤可以以不同的顺序(或同时)执行,而不改变本公开的原理。此外,尽管上面将每个实施例描述为具有某些特征,但是关于本公开的任何实施例所描述的那些特征中的任何一个或多个可以在任何其他实施例中实现和/或与任何其他实施例的特征组合——即使该组合未明确描述。换句话说,所描述的实施例不是相互排斥的,并且一个或多个实施例彼此的排列仍然在本公开的范围内。
使用各种术语来描述元件之间(例如,模块、电路元件、半导体层等之间)的空间和功能关系,包括“连接”、“接合”、“耦合”、“相邻”、“靠近”、“在...之上”、“上方”、“下方”和“安置”。除非明确地描述为“直接”,否则当在上面的公开中描述第一和第二元件之间的关系时,该关系可以是其中在第一和第二元件之间不存在其他中间元件的直接关系,但也可以是其中在第一和第二元件之间(在空间上或在功能上)存在一个或多个中间元件的间接关系。如本文所使用的,短语A、B和C中的至少一个应该被解释为使用非排他性逻辑“或”来意指逻辑(A或B或C),并且不应该被解释为意指“A中的至少一个、B中的至少一个、以及C中的至少一个”。
在附图中,箭头所指示的箭头方向通常表示图示所关注的信息(例如数据或指令)的流动。例如,当元件A和元件B交换各种信息但是从元件A传输到元件B的信息与图示相关时,箭头可以从元件A指向元件B。这个单向箭头并不意味着没有其他信息从元件B传输到元件A。此外,对于从元件A传输到元件B的信息,元件B可以向元件A发送对信息的请求或接收对信息的确认。
在本申请中,包括下面的定义,术语“模块”或术语“控制器”可以用术语“电路”代替。术语“模块”可以指代、作为其部分或包括:专用集成电路(ASIC);数字、模拟或混合模拟/数字分立电路;数字、模拟或混合模拟/数字集成电路;组合逻辑电路;现场可编程门阵列(FPGA);执行代码的处理器电路(共享、专用或组);存储由处理器电路执行的代码的存储器电路(共享、专用或组);提供所述功能性的其他合适的硬件组件;或者诸如在片上系统中的上述部分或全部的组合。
模块可以包括一个或多个接口电路。在一些示例中,接口电路可以包括连接到局域网(LAN)、因特网、广域网(WAN)或其组合的有线或无线接口。本公开的任何给定模块的功能性可以分布在经由接口电路连接的多个模块之中。例如,多个模块可以允许负载平衡。在另外的示例中,服务器(也称为远程或云)模块可以代表客户端模块完成某些功能性。
如上所使用的术语代码可以包括软件、固件和/或微代码,并且可以指代程序、例程、函数、类、数据结构和/或对象。术语共享处理器电路包含执行来自多个模块的一些或所有代码的单个处理器电路。术语组处理器电路包含与附加处理器电路组合来执行来自一个或多个模块的一些或所有代码的处理器电路。对多个处理器电路的参考包含在分立管芯上的多个处理器电路、在单个管芯上的多个处理器电路、单个处理器电路的多个核、单个处理器电路的多个线程、或上述的组合。术语共享存储器电路包含存储来自多个模块的一些或所有代码的单个存储器电路。术语组存储器电路包括与附加存储器组合存储来自一个或多个模块的一些或所有代码的存储器电路。
术语存储器电路是术语计算机可读介质的子集。本文所使用的术语计算机可读介质不包含(例如在载波上)通过介质传播的瞬时电信号或电磁信号;因此,术语计算机可读介质可以被认为是有形的和非暂时的。非暂时性有形计算机可读介质的非限制性示例是非易失性存储器电路(诸如闪存电路、可擦除可编程只读存储器电路或掩模只读存储器电路)、易失性存储器电路(诸如静态随机存取存储器电路或动态随机存取存储器电路)、磁储存介质(诸如模拟或数字磁带或硬盘驱动器)和光储存介质(诸如CD、DVD或蓝光盘)。
在本申请中,被描述为具有特定属性或执行特定操作的装置元件被具体配置为具有那些特定属性并执行那些特定操作。具体地,对执行动作的元件的描述意味着该元件被配置为执行动作。元件的配置可以包括对元件的编程,诸如通过将指令编码在与元件相关联的非暂时性有形计算机可读介质上来对元件的编程。
本申请中描述的装置和方法可以由专用计算机部分或全部实现,该专用计算机通过配置通用计算机以执行计算机程序中体现的一个或多个特定功能来创建。上述功能块、流程图组件和其他元件用作软件规范,其可以通过熟练技术人员或程序员的例行工作而被转换成计算机程序。
计算机程序包括存储在至少一个非暂时性有形计算机可读介质上的处理器可执行指令。计算机程序还可以包括或依赖于存储的数据。计算机程序可以包含与专用计算机的硬件交互的基本输入/输出系统(BIOS)、与专用计算机的特定设备交互的设备驱动程序、一个或多个操作系统、用户应用、后台服务、后台应用等。
计算机程序可以包括:(i)要被解析的描述性文本,诸如HTML(超文本标记语言)或XML(可扩展标记语言),(ii)汇编代码,(iii)由编译器从源代码生成的目标代码,(iv)由解释器执行的源代码,(v)用于由即时编译器编译和执行的源代码等。仅作为示例,可以使用包括C、C++、C、Objective C、Haskell、Go、SQL、R、Lisp、
Figure BDA0001983009110000141
Fortran、Perl、Pascal、Curl、OCaml、
Figure BDA0001983009110000142
HTML5、Ada、ASP(活动服务器页面)、PHP、Scala、Eiffel、Smalltalk、Erlang、Ruby、
Figure BDA0001983009110000143
Lua和
Figure BDA0001983009110000144
在内的语言的语法来编写源代码。
除非使用短语“用于……的装置”或在方法权利要求的情况下使用短语“用于……的操作”或“用于……的步骤”明确叙述元件,权利要求中所记载的元件中没有一个旨在是美国法第35章第112(f)条款的含义内的装置加功能元件。

Claims (20)

1.一种用于虚拟环境的控制器设备,所述控制器设备包括:
手柄;
具有基本平坦表面的接触设备,其中所述接触设备相对于所述手柄的位置是可调节的;
致动器模块,所述致动器模块被布置在所述手柄的第一端部,包括多个致动器臂,所述多个致动器臂被配置以调节所述接触设备相对于所述手柄的所述位置,其中所述接触设备经由所述多个致动器臂被安装在所述致动器模块上;以及
与所述虚拟环境通信的控制模块,其中所述控制模块选择性地控制所述致动器模块的所述多个致动器臂中的一个或多个致动器臂,以响应于从所述虚拟环境接收的数据来调节所述接触设备的所述位置,其中所述数据包括用户和所述虚拟环境内表示的物体之间的交互的指示。
2.根据权利要求1所述的控制器设备,其中所述接触设备包括平台,并且其中为了调节所述接触设备的所述位置,所述致动器模块执行以下中的至少一个:(i)倾斜所述平台,和(ii)伸展和缩回所述平台。
3.根据权利要求1所述的控制器设备,其中为了调节所述接触设备的所述位置,所述致动器模块基于所述用户与所述虚拟环境内表示的所述物体之间的接触点来调节所述接触设备的所述位置。
4.根据权利要求3所述的控制器设备,其中所述致动器模块基于在所述接触点处的对于所述物体的表面法线,来调节所述接触设备的所述位置。
5.根据权利要求3所述的控制器设备,其中所述致动器模块基于确定所述控制器设备的移动是否引起所述用户穿透所述虚拟环境内表示的所述物体,来调节所述接触设备的所述位置。
6.根据权利要求5所述的控制器设备,其中所述致动器模块基于确定所述控制器设备的移动是否引起所述用户穿透所述虚拟环境内表示的所述物体,来选择性地伸展所述接触设备。
7.根据权利要求1所述的控制器设备,其中所述接触设备包括力传感器、振动机制、温度输出设备和触摸板中的至少一个。
8.根据权利要求7所述的控制器设备,其中所述力传感器包括力感测电阻器。
9.根据权利要求7所述的控制器设备,其中所述力传感器响应于与所述接触设备的用户接触而生成信号。
10.一种用于操作用于虚拟环境的控制器设备的方法,所述方法包括:
在所述虚拟环境内显示物体;
生成包括用户与所述物体的表面之间的交互的指示的数据;
向所述控制器设备的致动器提供所述数据;以及
使用所述致动器,基于所述数据来调节接触设备相对于所述控制器设备的手柄的位置,其中所述接触设备具有基本平坦表面,其中所述致动器被布置在所述手柄的第一端部并且包括多个致动器臂,所述多个致动器臂被配置以调节所述接触设备相对于所述手柄的所述位置,以及其中所述接触设备经由所述多个致动器臂被安装在所述致动器模块上,
其中通过选择性地控制所述致动器的所述多个致动器臂中的一个或多个致动器臂,所述接触设备的所述位置响应于从所述虚拟环境接收的数据而被调节。
11.根据权利要求10所述的方法,其中调节所述接触设备的所述位置包括以下中的至少一个:(i)倾斜所述接触设备,和(ii)伸展和缩回所述接触设备。
12.根据权利要求10所述的方法,其中调节所述接触设备的所述位置包括基于所述用户与所述物体的所述表面之间的接触点来调节所述接触设备的所述位置。
13.根据权利要求12所述的方法,其中调节所述接触设备的所述位置包括基于在所述接触点处的对于所述物体的表面法线来调节所述接触设备的所述位置。
14.根据权利要求10所述的方法,进一步包括:通过使用所述接触设备,响应于与所述接触设备的用户接触而生成信号。
15.一种用于虚拟环境的控制器设备,所述控制器设备包括:
手柄;
具有基本平坦表面的平台,其中所述平台相对于所述手柄的位置是可调节的;
致动器模块,所述致动器模块被布置在所述手柄的第一端部,包括多个致动器臂,所述多个致动器臂被配置以调节所述平台相对于所述手柄的所述位置,其中所述平台经由所述多个致动器臂被安装在所述致动器模块上;以及
与所述虚拟环境通信的控制模块,其中所述控制模块:
接收指示用户和所述虚拟环境内表示的表面之间的接触的数据,其中所述数据包括在所述用户和所述表面之间的接触点处的所述表面的表面法线的指示,以及
基于所述表面法线的所述指示来提供用以调节所述平台的所述位置的命令,
其中所述致动器模块选择性地控制所述多个致动器臂中的一个或多个致动器臂,以响应于由所述控制模块提供的所述命令来调节所述平台相对于所述手柄的所述位置,以便对于经调节的所述位置中的所述平台的表面法线对应于在所述用户和所述表面之间的所述接触点处的所述表面法线。
16.根据权利要求15所述的控制器设备,其中为了调节所述平台的所述位置,所述致动器模块执行以下中的至少一个:(i)倾斜所述平台,和(ii)伸展和缩回所述平台。
17.根据权利要求15所述的控制器设备,其中为了调节所述平台的所述位置,所述致动器模块基于所述用户与所述虚拟环境内表示的物体之间的接触点来调节所述平台的所述位置。
18.根据权利要求17所述的控制器设备,其中所述致动器模块基于确定所述控制器设备的移动是否引起所述用户穿透所述虚拟环境内表示的所述物体,来调节所述平台的所述位置。
19.根据权利要求18所述的控制器设备,其中所述致动器模块基于确定所述控制器设备的移动是否引起所述用户穿透所述虚拟环境内表示的所述物体,来选择性地伸展所述接触设备。
20.根据权利要求15所述的控制器设备,其中所述平台包括力传感器、振动机制、温度输出设备和触摸板中的至少一个。
CN201780053887.2A 2016-09-02 2017-08-23 交互式计算机系统的3d触觉 Active CN109661640B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/255,866 US9916003B1 (en) 2016-09-02 2016-09-02 3D haptics for interactive computer systems
US15/255,866 2016-09-02
PCT/US2017/048099 WO2018044634A1 (en) 2016-09-02 2017-08-23 3d haptics for interactive computer systems

Publications (2)

Publication Number Publication Date
CN109661640A CN109661640A (zh) 2019-04-19
CN109661640B true CN109661640B (zh) 2022-05-06

Family

ID=59791155

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780053887.2A Active CN109661640B (zh) 2016-09-02 2017-08-23 交互式计算机系统的3d触觉

Country Status (4)

Country Link
US (1) US9916003B1 (zh)
EP (1) EP3507678B1 (zh)
CN (1) CN109661640B (zh)
WO (1) WO2018044634A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572016B2 (en) * 2018-03-06 2020-02-25 Microsoft Technology Licensing, Llc Spatialized haptic device force feedback
US10845879B2 (en) * 2018-05-02 2020-11-24 Intel IP Corporation Deformable objects for haptic feedback
US20220409996A1 (en) * 2021-06-24 2022-12-29 Microsoft Technology Licensing, Llc Mobile Haptic Robots

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446870A (zh) * 2007-11-28 2009-06-03 索尼株式会社 触敏片构件、输入装置以及电子设备
CN101887323A (zh) * 2009-05-14 2010-11-17 爱特梅尔公司 二维触摸传感器
CN103180802A (zh) * 2010-11-09 2013-06-26 皇家飞利浦电子股份有限公司 具有触觉反馈的用户接口
US9142105B1 (en) * 2012-06-01 2015-09-22 Jonathan M. Crofford Haptic device capable of managing distributed force
CN105144035A (zh) * 2013-04-26 2015-12-09 意美森公司 利用触觉单元阵列模拟有形用户界面交互和手势

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5803738A (en) 1994-06-24 1998-09-08 Cgsd Corporation Apparatus for robotic force simulation
US6184868B1 (en) 1998-09-17 2001-02-06 Immersion Corp. Haptic feedback control devices
US7098888B2 (en) 2000-04-28 2006-08-29 Texas Tech University System Development of stereoscopic-haptic virtual environments
US20060209019A1 (en) 2004-06-01 2006-09-21 Energid Technologies Corporation Magnetic haptic feedback systems and methods for virtual reality environments
US20050285854A1 (en) 2004-06-29 2005-12-29 Ge Medical Systems Information Technologies, Inc. 3D display system and method
WO2006081198A2 (en) 2005-01-25 2006-08-03 The Board Of Trustees Of The University Of Illinois Compact haptic and augmented virtual reality system
GB2467461B (en) 2007-09-14 2012-03-07 Nat Inst Of Advanced Ind Scien Virtual reality environment generating apparatus and controller apparatus
US8542105B2 (en) * 2009-11-24 2013-09-24 Immersion Corporation Handheld computer interface with haptic feedback
US9298264B2 (en) * 2011-05-16 2016-03-29 Massachusetts Institute Of Technology Methods and apparatus for actuated 3D surface with gestural interactivity
US9563266B2 (en) 2012-09-27 2017-02-07 Immersivetouch, Inc. Haptic augmented and virtual reality system for simulation of surgical procedures
US9715300B2 (en) 2013-03-04 2017-07-25 Microsoft Technology Licensing, Llc Touch screen interaction using dynamic haptic feedback
CN105094310B (zh) 2014-05-09 2019-08-16 梦工厂动画公司 虚拟现实驾乘系统中减少晕车的方法和系统
US20170124767A1 (en) * 2015-11-02 2017-05-04 Scott Everitt Foust Dynamic Surfaces for Virtual Reality Applications
US10509468B2 (en) * 2016-01-27 2019-12-17 Tactai, Inc. Providing fingertip tactile feedback from virtual objects

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101446870A (zh) * 2007-11-28 2009-06-03 索尼株式会社 触敏片构件、输入装置以及电子设备
CN101887323A (zh) * 2009-05-14 2010-11-17 爱特梅尔公司 二维触摸传感器
CN103180802A (zh) * 2010-11-09 2013-06-26 皇家飞利浦电子股份有限公司 具有触觉反馈的用户接口
US9142105B1 (en) * 2012-06-01 2015-09-22 Jonathan M. Crofford Haptic device capable of managing distributed force
CN105144035A (zh) * 2013-04-26 2015-12-09 意美森公司 利用触觉单元阵列模拟有形用户界面交互和手势

Also Published As

Publication number Publication date
US9916003B1 (en) 2018-03-13
WO2018044634A1 (en) 2018-03-08
CN109661640A (zh) 2019-04-19
EP3507678B1 (en) 2020-09-09
US20180067543A1 (en) 2018-03-08
EP3507678A1 (en) 2019-07-10

Similar Documents

Publication Publication Date Title
US11093053B2 (en) Input device
US10234944B2 (en) Force feedback system including multi-tasking graphical host environment
EP3105660B1 (en) Low-profile pointing stick
CN109661640B (zh) 交互式计算机系统的3d触觉
US6300936B1 (en) Force feedback system including multi-tasking graphical host environment and interface device
JP6478535B2 (ja) 触覚変換を行うためのシステム及び方法
CN107422966B (zh) 触敏输入
US9189088B2 (en) Electronic device and touch operating method thereof
KR20200003841A (ko) 가상 현실/증강 현실 핸드헬드 제어기 감지
WO2017172006A1 (en) System to provide tactile feedback during non-contact interaction
EP3105662B1 (en) Low-profile pointing stick
KR101680265B1 (ko) 촉각 발생 장치
KR20110082139A (ko) 에러 방지 특징을 가진 포인팅 디바이스 및 방법
US20140002249A1 (en) Three dimensional (3d) tactile feedback apparatus and method
KR20170083377A (ko) 전자 장치 및 이의 제어 방법
US11086398B2 (en) Haptic rendering
EP3846005A1 (en) Input device, control method, and program
US10589428B1 (en) Automatic distribution of control functions between multiple knob controllers based on proximity and relative positioning of the knobs

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