CN110045813A - 用于二维跟踪和三维跟踪的触觉激活***设备 - Google Patents
用于二维跟踪和三维跟踪的触觉激活***设备 Download PDFInfo
- Publication number
- CN110045813A CN110045813A CN201811544047.9A CN201811544047A CN110045813A CN 110045813 A CN110045813 A CN 110045813A CN 201811544047 A CN201811544047 A CN 201811544047A CN 110045813 A CN110045813 A CN 110045813A
- Authority
- CN
- China
- Prior art keywords
- peripheral equipment
- equipment
- processor
- sensor
- haptic effect
- 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.)
- Pending
Links
- 230000002093 peripheral effect Effects 0.000 title claims abstract description 490
- 230000000694 effects Effects 0.000 claims abstract description 129
- 230000004044 response Effects 0.000 claims abstract description 55
- 230000033001 locomotion Effects 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 49
- 230000003287 optical effect Effects 0.000 claims description 32
- 230000004913 activation Effects 0.000 claims description 11
- 230000000704 physical effect Effects 0.000 claims description 9
- 235000013399 edible fruits Nutrition 0.000 claims description 6
- NJPPVKZQTLUDBO-UHFFFAOYSA-N novaluron Chemical compound C1=C(Cl)C(OC(F)(F)C(OC(F)(F)F)F)=CC=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F NJPPVKZQTLUDBO-UHFFFAOYSA-N 0.000 description 41
- 230000008569 process Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 11
- 230000003993 interaction Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 7
- 238000001514 detection method Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000003190 augmentative effect Effects 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 210000000707 wrist Anatomy 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000000638 stimulation Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 239000012530 fluid Substances 0.000 description 3
- 238000003860 storage Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000994 depressogenic effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000000696 magnetic material Substances 0.000 description 2
- 230000010358 mechanical oscillation Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 201000006549 dyspepsia Diseases 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 229920001746 electroactive polymer Polymers 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 210000000245 forearm Anatomy 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 1
- 239000010931 gold Substances 0.000 description 1
- 229910052737 gold Inorganic materials 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 238000012905 input function Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 229910052751 metal Inorganic materials 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000005424 photoluminescence Methods 0.000 description 1
- 239000004033 plastic Substances 0.000 description 1
- 229920003023 plastic Polymers 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 238000000518 rheometry Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000005060 rubber Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000002604 ultrasonography Methods 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
- 239000002023 wood Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03543—Mice or pucks
- G06F3/03544—Mice or pucks having dual sensing arrangement, e.g. two balls or two coils used to track rotation of the pointing device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
- G06F3/005—Input arrangements through a video camera
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/033—Indexing scheme relating to G06F3/033
- G06F2203/0333—Ergonomic shaped mouse for one hand
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/041—Indexing scheme relating to G06F3/041 - G06F3/045
- G06F2203/04101—2.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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0354—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of 2D relative movements between the device, or an operating part thereof, and a plane or surface, e.g. 2D mice, trackballs, pens or pucks
- G06F3/03543—Mice or pucks
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)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
本公开涉及用于二维跟踪和三维跟踪的触觉激活***设备。本文公开的一个说明性***设备包括一个或多个传感器,其能够用于检测所述***设备在真实空间中的物理位置。所述说明性***设备可以使用所述一个或多个传感器来确定所述***设备是位于真实空间中的表面上还是真实空间中的表面外。响应于确定所述***设备位于所述表面上,所述***设备可以激活第一触觉输出模式,所述第一触觉输出模式被配置为基于所述***设备沿所述表面的二维移动来提供第一组触觉效果。响应于确定所述***设备位于所述表面外,所述***设备可以激活第二触觉输出模式,所述第二触觉输出模式被配置为基于所述***设备在真实空间中的三维移动来提供第二组触觉效果。
Description
技术领域
本公开一般地涉及用户接口设备的领域。更具体地,但并非通过限制的方式,本公开涉及可用于二维和三维跟踪的触觉激活***设备。
背景技术
***设备是与计算设备连接并与其一起工作以提供对计算设备的输入、从计算设备接收输出或这两者的辅助设备。***设备独立于它们与之通信的计算设备,并为计算设备提供附加功能。例如,输入***设备可以向计算设备提供额外的输入功能。输入***设备的示例可以包括鼠标、键盘、游戏控制器、触笔或棒。输出***设备可以为计算设备提供额外的输出功能。输出***设备的示例可以包括显示器、打印机或投影仪。一些***设备可以同时是输入***设备和输出***设备,例如触摸屏、平板电脑、电子阅读器、耳机(例如,虚拟现实耳机或增强现实耳机)或智能设备(例如,智能手机或智能手表)。
输入外设通常被设计为向计算设备提供单一类型的输入。例如,鼠标可以仅向计算设备提供二维输入(例如,坐标平面中的X和Y坐标)。并且游戏控制器可以仅向计算设备提供三维输入(例如,X、Y和Z坐标)。这要求用户将至少两个不同的***设备连接到计算设备,并在不同的***设备之间手动切换,以便向计算设备提供不同类型的输入,这可能是耗时且困难的。此外,许多***设备缺乏触觉反馈能力。这使得使用***设备与计算设备的交互更具挑战性,并且不那么直观。
发明内容
本公开的各种示例涉及能够产生触觉效果并且可用于二维跟踪和三维跟踪两者的***设备。
在一个示例中,本公开的***设备包括一个或多个传感器,所述一个或多个传感器能够用于检测***设备在真实空间中的物理位置并发送与***设备在真实空间中的物理位置相关联的一个或多个传感器信号。***设备还可以包括耦合到一个或多个传感器的处理器。***设备还可以包括具有程序代码的存储器设备,该程序代码能够由处理器执行以使得处理器执行一个或多个操作。所述操作可以包括接收一个或多个传感器信号。所述操作可以包括基于一个或多个传感器信号确定***设备是位于真实空间中的表面上还是真实空间中的表面外。所述操作可以包括:响应于确定***设备是位于表面上,激活第一触觉输出模式,所述第一触觉输出模式被配置为基于***设备沿表面的二维移动来提供第一组触觉效果。所述操作可以包括:响应于确定***设备位于表面外,激活第二触觉输出模式,所述第二触觉输出模式被配置为基于***设备在真实空间中的三维移动来提供第二组触觉效果
在另一个示例中,本发明的方法包括从一个或多个传感器接收第一组传感器信号,所述一个或多个传感器能够用于检测***设备在真实空间中的物理位置。该方法可以包括基于第一组传感器信号确定***设备在物理上位于表面上。该方法可以包括:响应于确定***设备在物理上位于表面上,激活第一触觉输出模式,所述第一触觉输出模式被配置为基于***设备沿表面的二维移动来提供第一组触觉效果。该方法可以包括从一个或多个传感器接收第二组传感器信号。该方法可以包括基于第二组传感器信号确定***设备在物理上位于真实空间中的表面外。该方法可以包括:响应于确定***设备位于表面外,激活第二触觉输出模式,所述第二触觉输出模式被配置为基于***设备在真实空间中的三维移动来提供第二组触觉效果。该方法的一些或全部步骤可以由处理器(例如,***设备)实施。
在又一个示例中,本公开的非暂时性计算机可读介质可以包括用于实施上述方法的程序代码。
所提及的这些说明性示例不是为了限制本主题或限定本主题的限制,而是为了提供示例以帮助理解本主题。在具体实施方式中将讨论说明性示例,并在其中提供进一步的描述。通过检查本说明书和/或通过实践所要求保护的主题的一个或多个示例,可以进一步理解各种示例所提供的优点。
附图说明
本说明书的其余部分更详细地阐述了全面和有效的公开。本说明书参考以下附图。
图1A是根据本公开的一些方面的***设备的示例。
图1B是根据本公开的一些方面的位于表面之外的图1A的***设备的示例。
图2是根据本公开的一些方面的包括***设备的***的示例的框图。
图3是根据本公开的一些方面的具有可移动附件的***设备的示例。
图4是根据本公开的一些方面的具有承载设备的***设备的示例。
图5是根据本公开的一些方面的具有承载设备的***设备的另一示例。
图6是用于实施本公开的一些方面的过程的示例的流程图。
图7是根据本公开的一些方面的检测手势的***设备的示例。
图8是根据本公开的一些方面的检测对象的***设备的示例。
图9是用于实施本公开的一些方面的过程的示例的流程图。
具体实施方式
现在将详细参考各种和替代的说明性示例以及附图。每个示例都是以解释的方式而非限制的方式提供的。对于本领域技术人员来说显而易见的是,可以做出修改和变化。例如,作为一个示例的部分示出或描述的特征可以在另一个示例中使用,以产生更进一步的示例。因此,本公开旨在包括在所附权利要求及其等同物的范围内的修改和变化。
触觉激活***设备的说明性示例
本公开的一个说明性示例包括连接到诸如台式计算机之类的计算设备的***设备(或“外设”)。例如,***设备可以是放置在桌子表面上的计算机鼠标。用户可以沿着表面移动***设备,以向计算机提供二维(2D)输入。例如,用户可以使用计算机辅助设计(CAD)软件设计模型(例如,车辆的模型)。用户可以沿着表面滑动***设备,以与由CAD软件输出的按钮、图标、菜单、窗口或其他对象交互,从而操作模型。***设备所提供的2D输入能够使用户对使用CAD软件执行的操作进行精确控制。在说明性示例中,用户还可能希望使用更适合于三维(3D)环境的CAD软件执行其他操作。因此,用户可以在3D环境中放置增强现实耳机来查看模型。然后,用户可以把***设备从表面上拿下来,站在桌子旁边,通过***设备在真实空间中移动,从而向计算机提供3D输入。这可以使用户比仅使用2D输入更容易地旋转、移动或以其他方式操纵模型。例如,用户可以通过选择和调整模型上的控制点来与模型交互,以操纵模型的表面几何形状。一旦满足,用户可以坐在办公桌前,将***设备背靠地定位在办公桌表面,并使用2D输入继续工作。
在上述示例中,***设备能够向计算设备提供2D输入和3D输入两者。***设备可以包括一个或多个传感器,所述一个或多个传感器用于检测***设备在真实空间中的物理位置。***设备可以使用传感器来确定它是位于表面(在真实空间中)上还是表面外。如果***设备确定其位于表面上,则***设备可以激活第一跟踪模式,其中使用诸如光学传感器之类的第一传感器产生2D输入,并将其提供给计算设备。如果***设备确定其位于表面外,则***设备可以激活第二跟踪模式,其中使用诸如照相机之类的第二传感器产生3D输入,并将其提供给计算设备。这可以使得***设备能够检测其是位于表面上还是表面外,并相应地在跟踪模式之间进行切换。在一些示例中,用于不同跟踪模式的不同类型的传感器和/或算法可能导致第一跟踪模式比第二跟踪模式更加鲁棒且精确。
在一些示例中,***设备可以使用从内向外的跟踪来产生3D输入。从内向外的跟踪可以涉及一种设备,该设备使用位于其上并且面向设备外部的传感器来确定其自身位置相对于外部环境如何变化。还可以在外部环境中的各种固定位置上放置标记(例如,红外标记),以提高准确性。例如,相机可以位于***设备上,并且从***设备面向外部。***设备可以使用相机实施从内向外向的跟踪,以确定其相对于外部环境的位置。从内向外的跟踪可以与从外向内的跟踪形成对比,其中跟踪设备的传感器位于设备外部,并且面向设备。从外向内的跟踪的示例可以包括位于***设备外部的相机,例如放在桌子上或立在房间中,以采集***设备通过房间移动的图像。
从内向外的跟踪可以使用任何数量的算法和算法的组合来实施,例如经由同时定位和映射(SLAM)算法。SLAM可以包括构建或更新未知外部环境的地图,同时跟踪该环境内的对象的位置。在一个示例中,***设备实施SLAM算法以确定其在真实空间中的3D位置。然后,***设备可以将其3D位置作为输入输入到计算设备。
在一些示例中,外设还可以产生触觉反馈。***设备可以基于***设备是位于表面上还是表面外产生不同的触觉反馈。例如,如果***设备检测到其位于表面上,则***设备可以激活第一触觉输出模式,所述第一触觉输出模式被配置为基于***设备沿表面的2D移动来产生第一组触觉效果。如果***设备检测到其位于表面外,则***设备可以激活第二触觉输出模式,所述第二触觉输出模式被配置为基于***设备在真实空间中的3D运动来产生第二组触觉效果。第二组触觉效果在类型、振幅、波形、持续时间和/或频率上可能与第一组触觉效果不同。以上述方式在第一和第二触觉输出模式之间的切换可以使得根据***设备是位于表面上还是表面外来适当地调整触觉反馈。
给出这些说明性示例是为了向读者介绍这里讨论的一般主题,而不是为了限制所公开的概念的范围。以下各节参考附图描述各种附加特征和示例,其中相同的附图标记指示相同的元素,并且方向性描述用于描述说明性示例,但是与说明性示例一样,不应该用于限制本公开。
触觉激活***设备的说明性***
图1A是根据本公开的一些方面的***设备102的示例。在本示例中,***设备102是被配置为通过用户的手抓取和操纵的手持设备。***设备102(例如,无线地)连接到计算设备以用于向计算设备提供输入。
在该示例中,***设备102位于表面104上。表面104的示例可以包括台面;桌面;鼠标垫;一块木头、金属、橡胶或塑料;或者这些的任何组合。表面104可以具有弯曲的形状或大体上成平面的形状,其可以提供***设备102可沿其滑动的相对平坦的表面。
***设备102可以包括一个或多个输入设备,例如输入设备110。输入设备110的示例可以包括按钮、操纵杆、触摸屏、触摸板、开关或者这些的任何组合。输入设备可以检测用户输入并向计算设备发送输入信号。输入设备可以位于***设备102的任何表面或表面的组合上。
***设备102可以包括一个或多个传感器,例如传感器106a-b。尽管两个传感器106a-b在图1A中作为示例示出,但是***设备102可以包括更多或更少的传感器,例如一个或多三个传感器。(一个或多个)传感器可以检测***设备102在真实空间中的物理位置。并且传感器可以是同一类型,也可以是不同类型。例如,传感器106a可以是2D传感器,例如用于实施沿表面104的2D跟踪的光学传感器或球。传感器106b可以是用于实施真实空间中的3D跟踪的3D传感器,例如相机、加速度计、陀螺仪、距离检测器、深度传感器、全球定位***(GPS)和/或磁力计。
***设备102可以使用传感器106a-b来确定***设备102是位于表面104上还是表面104外。例如,***设备102可以分析来自光学传感器的光学信号,以确定***设备102和表面104之间的距离。然后,***设备102可以确定距离是否超过预定义的阈值。如果不是,则***设备102可以确定其位于表面104上并激活第一跟踪模式。如果是,则***设备102可以确定其位于表面104外并激活第二跟踪模式。如图1B中所示,当***设备102不接触表面时,***设备102可以位于表面104“外”。
***设备102还可以使用传感器106a-b来确定***设备102在真实空间中的2D位置和/或3D位置。例如,当***设备102处于第一跟踪模式时,***设备102可以使用球或光学传感器来确定***设备102在表面104上的2D位置。并且当***设备102处于第二跟踪模式时,***设备102可以使用一个或多个摄像机来确定***设备102在真实空间中的3D位置。
***设备102可以包括一个或多个触觉输出设备,例如触觉输出设备108a-b。触觉输出设备108a-b可以向用户提供一个或多个触觉效果。触觉输出设备108a-b可以使用任何数量的刺激和刺激的组合(例如振动、静电力、变形、温度变化和/或电刺激)来产生任何数量的触觉效果和触觉效果的组合。
***设备102可以使用触觉输出设备108a-b来响应于一个或多个事件输出触觉效果。事件可以发生在计算设备上或在***设备102上。事件是可能具有关联触觉效果的任何交互、动作、碰撞或其他事件。事件的示例可以包括用户输入(例如,与真实或虚拟按钮、操纵杆或触摸表面的交互;倾斜或定向设备;或弯曲、折叠、扭转、拉伸或折曲设备)、***状态(例如,低电量、低存储空间或***通知,例如,基于***接收到来的呼叫而产生的通知)、发送数据、接收数据或程序事件(例如,游戏事件,例如***、游戏对象之间的碰撞或交互,或前进到新级别)。作为特定示例,计算设备可以确定视频游戏中的虚拟角色已经被拍摄并响应性地将触觉信号发送到***设备102。然后,***设备102可以响应于触觉信号产生触觉效果。
在一些示例中,***设备102可以响应于检测到***设备102位于表面104上而激活第一触觉输出模式。响应于检测到***设备102位于表面104外,***设备102可以附加地或替代地激活第二触觉输出模式。***设备102可以根据激活的触觉输出模式输出不同的触觉效果。例如,***设备102可以使用不同的触觉输出设备来产生触觉效果,这取决于激活了哪个触觉输出模式。作为特定示例,当***设备102处于第一触觉输出模式时,***设备102可以使用第一触觉输出设备108a来产生第一类型的触觉效果(例如,使用第一类型的刺激,例如振动)。并且当***设备102处于第二触觉输出模式时,***设备102可以使用第二触觉输出设备108b来产生第二类型的触觉效果(例如,使用第二类型的刺激,例如变形)。
在一些示例中,***设备102使用不同的触觉效果库或算法来确定输出的触觉效果,这取决于激活了哪个触觉输出模式。例如,***设备102可以从计算设备接收指示事件已经发生的通知。如果***设备102处于第一触觉输出模式,则***设备102可以使用第一触觉效果库来确定响应于事件输出的触觉效果。如果***设备102处于第二触觉输出模式,则***设备102可以使用第二触觉效果库来确定响应于事件输出的另一触觉效果。这可以使触觉效果针对不同触觉输出模式进行调整。
在一些示例中,***设备102可以向计算设备发送指示激活了哪个触觉输出模式的信息。计算设备可以使用该信息来控制(i)何时使用***设备102产生触觉效果,(ii)使用***设备102产生哪些触觉效果,或者(iii)这两者。例如,当***设备102处于第一触觉输出模式时,计算设备可以仅使***设备102响应于第一组事件输出触觉效果。并且,当***设备102处于第二触觉输出模式时,计算设备可以仅使***设备102响应于第二组事件输出触觉效果。这可以使不同的触觉输出模式具有不同的事件组作为触觉触发器。作为另一示例,计算设备可以使用不同的触觉效果库或算法来确定由***设备102输出的触觉效果,这取决于激活了哪个触觉输出模式。
图2是根据本公开的一些方面的包括***设备102的***200的示例的框图。在该示例中,***设备102包括一个或多个处理器202,一个或多个处理器202经由总线206与其他硬件接口连接。其他硬件包括存储器设备204、网络接口设备210、输入/输出(I/O)接口212、一个或多个传感器106、以及一个或多个触觉输出设备108。下面将更详细地描述这些组件中的每一个。其他示例可以包括比图2中描绘的更多或更少的组件。
存储器设备204可以包括任何合适的有形(和非暂时性)计算机可读介质,例如RAM、ROM、EEPROM等,并且可以包含配置***设备102的操作的程序组件。例如,存储器设备204可以包括能够由一个或多个处理器202执行以使得一个或多个处理器202执行操作的程序代码。
网络接口设备210可以包括促进网络连接或以其他方式促进电子设备之间的通信的任何组件。在一些示例中,网络接口设备210可以包括有线接口,例如以太网、USB或IEEE1394接口。附加地或替代地,网络接口设备210可以包括无线接口,例如IEEE 802.11、蓝牙、近场通信、射频识别或无线电接口。无线电接口可以用于接入蜂窝电话网络(例如,CDMA、GSM、UMTS或其他移动通信网络)。
I/O接口212可以促进连接到诸如一个或多个显示器、触敏表面、扬声器、麦克风、按钮、操纵杆和/或用于输入数据或输出数据的其他硬件之类的设备。
在一些示例中,(一个或多个)传感器106可以用于检测***设备102在真实空间中的2D位置、***设备102在真实空间中的3D位置或这两者。这种传感器的示例可以包括球、光学传感器(例如,红外传感器)、相机、深度传感器、距离传感器、超声换能器、扬声器、麦克风、加速度计、陀螺仪、倾角计、GPS、磁力计或它们的任何组合。(一个或多个)传感器106可附加地或替代地包括用于其他目的的其他类型的传感器,例如电阻传感器、电容传感器、压力传感器、力传感器、生物传感器或它们的任何组合。(一个或多个)传感器106可以将传感器信号发送到处理器202。
(一个或多个)触觉输出设备108可以输出各种触觉效果。触觉效果的示例可以包括振动、感知摩擦系数的变化、模拟的纹理、温度的变化、抚摸感觉、电触觉效果、表面变形(例如,与***102相关联的表面的变形)或这些的任何组合。***设备102可以按顺序或协同地驱动相同或不同类型的多个触觉输出设备108以产生一个或多个触觉效果。触觉输出设备108可以响应于来自处理器202或计算设备214的触觉信号产生触觉效果。
在一些示例中,触觉输出设备108包括机械振动组件,例如压电材料、电动机、电磁致动器、音圈、形状记忆合金、电活性聚合物、螺线管、偏心旋转质量电动机(ERM)、或线性谐振致动器(LRA)。触觉输出设备108可以使用机械振动组件来产生振动。在一些示例中,触觉输出设备108可以包括能够以超声频率(例如,20kHz)振动的超声致动器。触觉输出设备108可以使用超声致动器,例如,减少表面上感知的摩擦系数。在一些示例中,触觉输出设备108可以包括静电致动器。静电致动器可以具有导电层和绝缘层。向导电层施加交流电(AC)可以在导电层与静电致动器附近的对象(例如,身体部分或触针)之间产生电容耦合,从而产生触觉效果。使用静电致动器产生的触觉效果的示例可以包括模拟的纹理、模拟的振动、抚摸感觉或***设备102表面上的摩擦系数的感知变化。
触觉输出设备108还可以在***设备102的表面上产生变形,这可以被称为变形触觉效果。变形触觉效果可以包括提高或降低表面的部分,例如产生纹理;弯曲、折叠、滚动、扭转、挤压或折曲表面;或者这些的任何组合。在一些示例中,触觉输出设备108可以使用智能凝胶或形状记忆合金产生变形触觉效果。在其他示例中,触觉输出设备108可以使用流变流体产生变形触觉效果。在又一些其他示例中,触觉输出设备108可以使用机械变形设备(例如旋转臂或活塞)产生变形触觉效果。在一些示例中,机械变形设备可以是被动设备,该被动设备使用耦合机构(例如闩或锁)来激活或去激活。例如,***设备102可以包括铰链,铰链使得***设备102的两个构件能够相对彼此弯曲。当***设备102位于表面上时,锁可以防止铰链打开,从而防止构件弯曲。当***设备102被抬离表面时,锁可以释放并且允许构件相对彼此弯曲,这可以使***设备102变形。
其他技术或方法可以附加地或替代地用于输出触觉效果。例如,触觉输出设备108可以使用空气或流体袋、粒子干扰、电磁铁、共振机械元件、微机电***(“MEMS”)元件或泵、热流体袋、可变孔隙率膜或层流调制来输出触觉效果。任何数量和组合的技术都可以用于产生触觉效果。
在一些示例中,***设备102可以响应于从表面上移除、位于表面上或这两者而改变形状。例如,当***设备102位于表面上时,***设备102可以处于第一形状(例如,鼠标形状)。当在二维中使***设备102沿表面滑动时,这种形状对用户来说在人体工程学上更舒适。如果***设备102从表面移除,则***设备102可以检测到移除并响应性地改变为第二形状(例如,杆状或触针状),当在三维中操纵***设备102时,这对于用户来说在人体工程学上更舒适。在一些示例中,***设备102可以通过操作触觉输出设备108来改变其形状,触觉输出设备108可以使***设备102的一个或多个表面变形以操纵***设备102的形状。***设备102可以能够附加地或者替代地检测其正在接近表面、其定位在表面上、输入设备(例如,图1的输入设备110)已经***纵、或者已经发生其他情况。作为响应,***设备102可以将其形状操纵回为第一形状。例如,***设备102可以使用相机或光学传感器来检测***设备102正在接近或接触表面。作为响应,***设备102可以将其形状改变回为鼠标形状。
***设备102可以与一个或多个外部电子设备(例如计算设备214)进行有线或无线通信。计算设备214的示例可以包括台式计算机、膝上型计算机、移动电话(例如,智能电话)、便携式媒体播放器(例如,MP3播放器)、平板电脑、电子阅读器、便携式游戏设备、游戏***、医疗设备、车辆计算设备、耳机或这些的任何组合。***设备102可以向计算设备214提供输入。例如,***设备102可以将其位置传送到计算设备214,计算设备214可以基于***设备102的位置来控制光标的位置。
***设备102可以附加地或替代地与耳机228通信,例如虚拟现实耳机或增强现实耳机。耳机228可以包括用于查看和与虚拟对象交互的显示器。***设备102可以向耳机228提供输入。例如,***设备102可以在***设备102位于表面外时向耳机228提供3D输入,并且在***设备102位于表面上时向耳机228提供2D输入。尽管计算设备214在图2中示出为与耳机228分离,但是在其他示例中,计算设备214是(或包括)耳机228。
在一些示例中,***设备102可以与耳机228和计算设备214两者通信,以在两者之间切换。例如,用户可以使用计算设备214在线购买衣服。计算设备可以显示虚拟对象,例如,表示服装项目。用户可以使用***设备102来根据需要与虚拟对象交互。然后,用户可以戴上耳机228,站起来,从表面拾起***设备102,以在3D环境中与虚拟对象结合。***设备102可以检测到其已经从表面移除,并且响应性地与耳机228通信,以使得耳机228在其显示器上显示虚拟对象。***设备102还可以与计算设备214通信,以使得计算设备214关闭其显示、进入待机模式或执行另一操作。一旦用户在3D环境中完成了与虚拟对象的结合,用户可以将***设备102放置回表面上。***设备102可以检测到其被放回表面上,并响应性地使计算设备214再次显示虚拟对象。***设备102还可以使耳机228关闭其显示、进入待机模式或执行另一操作。这使得用户能够容易地分别在计算设备214和耳机228提供的2D和3D环境之间切换。
***设备102可以附加地或者替代地与一个或多个外部传感器216通信。***设备102可以使用外部传感器216来确定***设备102在真实空间中的位置。外部传感器216的示例可以包括光学传感器、相机、深度传感器、距离传感器、麦克风、超声传感器或者这些的任何组合。在一些示例中,***设备102可以从外部传感器216接收传感器信号,并基于传感器信号产生从外向内的跟踪信息。***设备102还可以基于来自传感器106的传感器信号产生从内向外的跟踪信息。然后,***设备102可以基于从外向内的跟踪信息、从内向外的跟踪信息或这两者来确定***设备102在真实空间中的位置。在一些示例中,使用从外向内的跟踪信息和从内向外的跟踪信息两者来确定***设备102的位置可以比单独使用这些类型的信息中的任何一种更加鲁棒且准确。
在一些示例中,***设备102可以包括各种模块化组件,例如附件222。附件222的示例可以包括触针、棒、卡或模块。附件222可以可拆卸地耦合到***设备102的基座上。尽管图2描绘了单个附件222,但是***设备102可以包括任何数量和组合的附件222。
图3中示出了附件222的一个示例。在图3中,附件222形成***设备102的接触部分。接触部分是***设备102的外表面,该外表面被成形并定位为在操作期间由用户的手接触。附件222可以根据需要附接到***设备102的基座302,或者从***设备102的基座302移除。例如,附件222可以***由基座302形成的对接坞(dock)或插座或从由基座302形成的对接坞或插座移除。当附件222附接到基座302时,附件222和基座302可以共同形成***设备102。
附件222可以包括传感器230、触觉输出设备224、输入设备226、处理器、存储器设备、总线、I/O组件、网络接口设备或者这些的任何组合,这些组件可以以类似于上面讨论的组件的方式进行配置。
在一些示例中,附件222被配置为提供3D输入,并且基座302被配置为提供2D输入。例如,基座302中的传感器106可以是用于向计算设备提供2D输入的球或光学传感器。并且附件222中的传感器230可以是用于向计算设备提供3D输入的相机。在一个这样的示例中,***设备102可以检测附件222附接到基座302,并且使用传感器106响应性地向计算设备提供2D输入。如果用户从基座302移除附件222,则***设备102可以检测到附件222与基座302分离,并且使用传感器230响应性地向计算设备提供3D输入。例如,附件222可以将3D输入发送到基座302,基座302进而可以将3D输入中继到计算设备。替代地,附件222可以检测到其与基座302分离,并且响应性地将3D输入提供给计算设备,而不通过基座302中继3D输入。
作为特定示例,用户可以通过在表面上围绕***设备102(作为单个单元)移动,将附件222附接到***设备102,在计算设备上玩视频游戏。***设备102可以检测到附件222附接到***设备102,并经由传感器106提供2D输入。***设备102还可以经由触觉输出设备108、触觉输出设备224或这两者来提供触觉效果。然后,用户可以决定使用3D控制来玩视频游戏的一部分,从基座302提起附件222(例如,当基座302保持在表面上时),并操纵附件222以向计算设备提供3D输入。***设备102可以检测到附件222与***设备102分离,并响应性地提供3D输入。***设备102还可以经由触觉输出设备224提供触觉效果。例如,计算设备或基座302可以向附件222发送触觉信号,以使附件222经由触觉输出设备224产生触觉效果。
附件222还可以包括处于任何数量和组合的表面上的任何数量和组合的输入设备,以使用户能够在操作附件222时提供输入。在一些示例中,输入设备226可以位于附件222上,以便当附件222附接到基座时通常隐藏(例如,封闭在基座302中)。然后,当附件222从基座302移除时,输入设备226变得可见和/或可用。作为特定示例,附件222可以在图4中所示的位置具有按钮,该按钮通常被基座302阻止使用。但是,如果附件222从基座302移除,如虚线箭头所示,则输入设备226变得可以使用。
在一些示例中,附件222可以响应于与基座302分离和/或连接而改变形状。例如,当附件222附接到基座302时,附件222可以处于第一形状。如果附件222从基座302移除,则附件222可以检测到移除,并响应性地变为第二形状,例如变为杆状或触针状,这对于用户来说在人体工程学上更舒适。在一些示例中,附件222可以通过操作触觉输出设备224来改变其形状,触觉输出设备224可以使附件222的一个或多个表面变形,以操纵附件222的形状。附件222可以能够附加地或替代地检测出(i)其正在接近基座302,(ii)其附接到基座302,(iii)输入设备226已经***纵,或者(iv)发生了另一情况。作为响应,附件222可以将其形状操纵回到第一形状。
作为具体示例,附件222可以在至少两种形状之间切换。第一形状可以具有弯曲的顶表面和平坦的底表面,如图4中所示。第二形状可以大体上是圆柱形,在真实空间中可能更容易保持或操纵。附件222可以包括附接传感器304,其用于检测附件222是否附接到基座302。附接传感器304的示例可以包括导电路径、按钮、开关、光学传感器、相机或者这些的任何组合。如果用户从基座302移除附件222,则附件222可以经由附接传感器304检测该移除并响应性地变形为第二形状。然后,用户可以操纵附件222以向计算设备提供3D输入。当用户完成使用附件222时,用户可能希望将附件222重新附接到基座302。在一个示例中,用户可以操纵输入设备226,这可以使附件222改变回到第一形状。这可以使附件222重新附接到基座302。在另一示例中,当用户将附件222朝基座302移动时,附件222中的传感器可以检测到附件222正在接近基座302。传感器的示例可以包括相机、光学传感器、深度传感器、距离传感器、无线信号传感器(例如,802.11、蓝牙或RFID)或这些的任何组合。在一些示例中,传感器可以是传感器230。响应于检测到附件222接近基座302,附件222可以变形回第一形状。这可以允许附件222重新附接到基座302。
返回图2,在一些示例中,***设备102可以包括一个或多个承载设备,例如承载设备218。承载设备218的示例可以包括腕带、皮带、绳索、刚性构件,或者可以将***部件102耦合到除手之外的身体部分(例如用户的手腕或手臂)的另一设备。承载设备218可以永久性地或可拆卸地耦合到外设102。在图4中示出了带有承载设备218的***设备102的一个示例。在该示例中,承载设备218是柔性的(例如,带)。在其他示例中,例如图5中所示的示例,承载设备218可以是刚性的,这使得***设备102能够保持相对于用户身体(例如,用户的手或手指)的某种定位。这可以使***设备102更容易使用,例如,当***设备102抬离表面104时。在图5中所示的示例中,在***设备102和带504之间附接刚性构件502,带504环绕用户的身体(例如,用户的前臂)。但是具有更多、更少或不同刚性构件布置的其他配置也可用于将承载设备218耦合到用户的身体。
在一些实例中,承载设备218可以向用户提供触觉效果。例如,承载设备218可以包括一个或多个触觉输出设备,例如触觉输出设备220。***设备102可以驱动触觉输出设备220,以便向用户提供例如振动、动觉触觉效果、变形触觉效果或其他触觉效果。更具体地说,触觉输出设备220可以接收来自***设备102的触觉信号并响应性地振动;尺寸扩大、尺寸缩小、形状改变或以其他方式变形;产生电冲击;产生电容耦合;或产生被用户感知为触觉效果的另一感觉或感觉的组合。当承载设备218是刚性时,一些类型的触觉效果(例如振动和动觉触觉效果)可能特别明显。并且一些类型的触觉效果可以通过与***设备102的接触而间接感知。例如,承载设备218可以通过变形或振动来输出触觉效果。这可以通过承载设备218的刚性构件传播到***设备102,从而使得***设备102移动。用户可以接触***设备,并将***设备的运动感知为触觉效果。
在一些示例中,***200可以实施下面讨论的一个或多个过程。
触觉激活***设备的说明性方法
图6是用于实施本公开的一些方面的过程的示例的流程图。在其它示例中,可以实施更多的步骤、更少的步骤、不同的步骤或图6所示的步骤的不同组合。下面参考图2中所示的***200讨论步骤。
在步骤602,处理器202确定***设备102是否位于表面上。处理器202可以实施任何数量和组合的技术来确定***设备102是位于表面上还是表面外。
在一些示例中,处理器202可以确定从表面反射的传输的往返时间,然后使用往返时间来确定***设备102是位于表面上还是表面外。例如,传感器106可以是包括光源和传感器的光学传感器。光源的示例可以是发光二极管(LED),并且传感器的示例可以是互补金属氧化物半导体(CMOS)。光源能将光发射到表面,所发射的光可以被传感器反射和检测。处理器202可以确定在光源发射光时与传感器检测光时之间的时间量。该时间量可以被称为往返时间。当***设备102移开表面时,往返时间可能增加。处理器202可以将往返时间与预定义阈值进行比较。如果往返时间超过预定义阈值,则处理器202可以确定***设备102位于表面外。如果往返时间低于预定义阈值,则处理器202可以确定***设备102位于表面上。
作为另一个示例,传感器106可以包括压力源和传感器。压力源的示例可以是超声换能器或扬声器。传感器的示例可以是超声换能器或麦克风。声源可以向表面发射压力波(例如,声波或超声波),该压力波可以由传感器反射和检测。处理器202可以确定在压力源发射压力波时与传感器检测压力波时之间的往返时间。处理器202可以将往返时间与预定义阈值进行比较。如果往返时间超过预定义阈值,则处理器202可以确定***设备102位于表面外。如果往返时间低于预定义阈值,则处理器202可以确定***设备102位于表面上。在一些示例中,压力源和传感器可以是相同的。例如,单个超声换能器既能发射压力波又能检测压力波的反射。
在一些示例中,处理器202可以基于由相机采集的图像的一个或多个特性来确定***设备102是位于表面上还是表面外。例如,传感器106可以是面向表面的相机。如果***设备102从表面上移除,则与当***设备102位于表面上时所拍摄的图像相比,由相机采集的图像可以具有增加的亮度、视场、颜色分布或这些的任何组合。处理器202可以检测这些特性中的一些或全部的变化,并响应性地确定***设备102位于表面外。相反,如果***设备102位于表面上,则与当***设备102位于表面外时所拍摄的图像相比,由相机采集的图像可以具有减少的亮度、视场、颜色分布或这些的任何组合。处理器202可以检测这些特性中的一些或全部的一些变化,并响应性地确定***设备102位于表面上。
在一些示例中,处理器202可以基于磁性材料的磁场来确定***设备102是位于表面上还是表面外。例如,传感器106可以是磁力计,并且表面可以包括磁性材料。当***设备102移开表面时,由磁力计检测到的磁场强度会降低。处理器202可以将磁强计检测到的磁场强度与预定的阈值进行比较。如果磁场强度低于预定阈值,则处理器202可以确定***设备102位于表面之外。如果磁场强度高于预定阈值,则处理器202可以确定***设备102位于表面上。
在***设备102包括附件222的示例中,当附件222与***设备102的基座断开时,处理器202可以确定***设备102位于表面外。并且当附件222附接到***设备102的基座时,处理器202可以确定***设备102位于表面上。处理器202可以使用附件传感器(例如,图3的附件传感器304)来确定附件222是附接到基座还是从基座分离。
在一些示例中,处理器202可以基于***设备102的取向或倾斜来确定***设备102是位于表面上还是表面外。例如,传感器106可以是陀螺仪或惯性测量单元(IMU)。当***设备102位于表面上时,***设备102可以是水平的。处理器202可以检测到***设备102是水平的,并响应性地确定***设备102位于表面上。如果***102移开表面,则***设备102可能倾斜。处理器202可以检测倾斜,并响应性地确定***设备102位于表面之外。
在一些示例中,处理器202可以使用从内向外的跟踪或从外向内的跟踪技术来确定***设备102是位于表面还是表面外。例如,处理器202可以使用SLAM算法来确定***设备102在真实空间(例如,相对于表面)中的3D位置。然后,处理器202可以基于***设备102在真实空间中的3D位置来确定***设备102是位于表面上还是表面外。
在一些示例中,处理器202可以基于从***设备102的一部分施加到***设备102的另一部分上的力的量来确定***设备102是位于表面上还是表面外。例如,如果由***设备102的上壳施加到***设备102的下壳上的力超过预定义阈值,则处理器202可以确定***设备102位于表面上。
如果处理器202确定***设备102位于表面上,则处理可以进行到步骤604。否则,该过程可以进行到步骤616。
在步骤604中,处理器202激活第一跟踪模式。在一些示例中,处理器202通过在存储器(例如,存储器设备204)中设置标志来激活第一跟踪模式。附加地或者替代地,处理器202可以通过向计算设备214发送指示***设备102处于第一跟踪模式的通信来激活第一跟踪模式。
在一些示例中,当第一跟踪模式被激活时,处理器202可以将2D跟踪优先于3D跟踪。例如,处理器202可以对来自2D传感器的传感器值进行加权,使其高于来自3D传感器的传感器值(例如,通过将来自2D传感器的传感器值乘以某个系数)。作为另一个示例,当第一跟踪模式被激活时,处理器202可以完全忽略来自3D传感器的传感器值。将2D跟踪优先于3D跟踪可以使得更精确的2D传感器在控制计算设备214方面具有更大的效果,这可能导致对计算设备214的更精细的控制。
在步骤606中,处理器202激活第一触觉输出模式。在一些示例中,处理器202通过在存储器中设置标志来激活第一触觉输出模式。附加地或替代地,处理器202可以通过向计算设备214发送指示***设备102处于第一触觉输出模式的通信来激活第一触觉输出模式。
当***设备102处于第一触觉输出模式时,***设备102可以仅输出某些触觉效果,仅输出响应某些事件的触觉效果,或者这两者。在一些示例中,当处于第一触觉输出模式时,***设备102可以使用第一触觉效果库或第一触觉效果算法来产生触觉效果。
在步骤608中,处理器202确定身体部分是否与***设备102接触。当用户没有接触***设备102时,可能希望实施该步骤来减少通过输出触觉效果而浪费的电池功率,因为用户可能无法感受到这种触觉效果。处理器202可以通过分析来自接触传感器(例如,传感器106、压力传感器、电容传感器、应变计或这些的任何组合)的传感器信号来确定身体部分是否与***设备102接触。
作为特定示例,用户可以将手掌或手指搁置在***设备102上以操纵***设备102。当用户接触***设备102时,处理器202可以从接触传感器接收指示用户正在接触***设备102的传感器信号。基于传感器信号,处理器202可以确定用户正在与***设备102接触。在一个特定的示例中,接触传感器可以是力传感器。力传感器可以检测施加到***设备102的一部分(例如,上表面)的力的量,并向处理器202发送对应的传感器信号。例如,如果施加到***设备102的部分的力的量超过预定义阈值,则处理器202可以接收传感器信号并确定用户是否正在接触***设备102。处理器202可以响应于确定用户正在接触***设备102而允许输出触觉效果。作为另一个示例,用户可以从***设备上移除他的手,例如去另一个房间或在键盘上打字。处理器202可以从接触传感器接收指示用户没有接触***设备102的传感器信号。例如,处理器202可以接收指示施加到***设备102的部分的力低于预定义阈值的传感器信号。基于传感器信号,处理器202可以确定用户没有接触***设备102,并且例如禁用触觉效果(例如,在步骤612中)。
如果处理器202确定身体部分与***设备102接触,则处理可以返回到步骤606,并经由第一触觉输出模式提供触觉效果。否则,该过程可以进行到步骤610。
在步骤610中,处理器202确定***设备102是否物理地连接到承载设备218。可能希望实施该步骤,因为尽管用户可能没有直接接触***设备102,但是用户可以经由承载设备218耦合到***设备102,并且能够经由承载设备218接收触觉效果。
在一些示例中,***设备102可以包括附接传感器,以检测承载设备218是否附接到***设备102或从***设备102分离。处理器202可以接收来自附件传感器的传感器信号,并基于传感器信号确定承载设备218是否附接到***设备102。作为一个示例,***设备102可以包括通常打开的导电路径,当附接承载设备218时,该路径变得闭合。处理器202可以检测导电路径是打开的还是关闭的,并使用该信息来确定承载设备218是否附接。作为另一示例,***设备102可以包括当没有附接承载设备218时处于第一配置(例如,凸起)的按钮。当附接承载设备218时,按钮可以切换到另一个配置(例如,按下)。处理器202可以检测按钮的配置并使用该信息来确定是否附加了承载设备218。
如果处理器202确定***设备102没有物理地附接到承载设备218,则处理可以进行到步骤612,其中处理器202禁用触觉效果。处理器202可以通过在存储器中设置标志、向计算设备214发送指示要禁用触觉效果的通信、或者这两者来禁用触觉效果。当触觉效果被禁用时,***设备102可能不输出任何触觉效果。
如果处理器202确定***设备102物理上附接到承载设备218,则处理可以进行到步骤614,其中处理器202可以激活第三触觉输出模式。在一些示例中,第三种触觉输出模式用于在无手使用期间呈现触觉效果。例如,当处于第三触觉输出模式时,***设备102可以经由承载设备218输出触觉效果。并且***设备102还可以禁用位于***设备102中的触觉输出设备,例如触觉输出设备108和224。这样即使用户没有直接接触***设备102的主体,用户也能够经由承载设备218感知触觉效果。如果用户没有接触***设备102,这也可以减少触觉输出设备108和224所消耗的浪费功率。
作为特定示例,用户可以使用图5中所示的***设备102在玩视频游戏时提供2D输入。然后,用户可以希望提供3D输入,并从表面104拾起***设备102。***设备102可以经由承载设备218悬挂在用户的手腕上。当用户移动他的手臂时,由于承载设备218的刚性,***设备102也可以移动,从而提供3D输入。但是,用户可能实际上不与***设备102的主体直接接触。在一些示例中,***设备102可以检测到用户没有接触***设备102的主体,检测到承载设备218连接到***设备102,并且响应性地激活第三触觉输出模式。一旦处于第三触觉输出模式,***设备102就可以经由承载设备218提供用户可感知的触觉效果。
在其他示例中,当处于第三触觉输出模式时,***设备102可以导致可穿戴设备输出触觉效果。可穿戴设备的示例可以包括手表、领带、眼镜、手套、鞋、衬衫、皮带、帽子、补丁,或者这些的任何组合。例如,在上面的示例中,其中***设备102经由承载设备218悬挂在用户的手腕上,并且用户正在提供3D输入,用户还可以佩戴智能手表。***设备102可以检测到用户没有接触***设备102的主体,检测到承载设备218连接到***设备102,并且响应性地激活第三触觉输出模式。当处于第三触觉输出模式时,***设备102可以向智能手表发送触觉信号,智能手表可以接收触觉信号并响应性地产生触觉效果。这可以使用户能够经由耦合到用户身体的其他触觉输出设备接收触觉效果。
如上所述,关于步骤602,处理器202可以确定***设备102是否位于表面上。如果没有,则处理可以进行到步骤616,其中处理器202激活第二跟踪模式。在一些示例中,处理器202通过在存储器中设置标志来激活第二跟踪模式。附加地或者替代地,处理器202可以通过向计算设备214发送指示***设备102处于第二跟踪模式的通信来激活第二跟踪模式。
在一些示例中,当激活第二跟踪模式时,处理器202可以将3D跟踪优先于2D跟踪。例如,处理器202可以对来自3D传感器的传感器值进行加权,使其高于来自2D传感器的传感器值(例如,通过将来自3D传感器的传感器值乘以某个系数)。作为另一个示例,当第二跟踪模式被激活时,处理器202可以完全忽略来自2D传感器的传感器值。将3D跟踪优先于2D跟踪可以使得3D输入能够用于控制计算设备214,这可以为计算设备214提供更大范围的功能。
在步骤618中,处理器202激活第二触觉输出模式。在一些示例中,处理器202通过在存储器中设置标志来激活第二触觉输出模式。附加地或者替代地,处理器202可以通过向计算设备214发送指示***设备102处于第二触觉输出模式的通信来激活第二触觉输出模式。
当***设备102处于第二触觉输出模式时,***设备102可以仅输出某些触觉效果,仅输出响应于某些事件的触觉效果,或者这两者。例如,***设备102可以在第二触觉输出模式下输出至少一个触觉效果,这与第一触觉输出模式下输出的触觉效果不同。附加地或替代地,***设备102可以响应于第二触觉输出模式中的至少一个事件而输出触觉效果,该事件不同于在第一触觉输出模式中触发触觉效果的事件。作为特定示例,当***设备102处于第二触觉输出模式时,***设备102可以响应于用户使用***设备102通过真实空间做出3D手势而输出触觉效果。相比之下,由于当***设备102位于表面上时(并且在第一跟踪模式下),用户可能无法使用***设备102做出3D手势,所以当***设备102处于第一触觉输出模式时,***设备102可以响应于其他类型的事件(例如沿着表面的2D运动)输出触觉效果。
在一些示例中,当处于第二触觉输出模式时,***设备102可以使用第二触觉效果库或第二触觉效果算法来产生触觉效果。第二触觉效果库可以与第一触觉效果库不同,和/或第二触觉效果算法可以与第一触觉效果算法不同。
在步骤620中,处理器202确定身体部分是否与***设备102接触。在一些示例中,可以使用上面关于步骤608讨论的任何方法来实施该步骤。过程的其余部分可以如上所述地流动。
响应于在步骤602中检测到***设备102位于表面上或表面外,处理器202可以执行各种其他操作。例如,如果处理器202检测到***设备102位于表面上,则处理器202可以发送被配置为使得显示虚拟对象的2D版本的通信。在一个这样的示例中,处理器202可以向计算设备214发送使得计算设备214在计算机监视器上显示虚拟化身的2D版本的通信。附加地或替代地,如果处理器202检测到***设备102位于表面外,则处理器202可以发送被配置为使得显示虚拟对象的3D版本的通信。例如,处理器202可以向耳机228发送使耳机228显示虚拟化身的3D版本的通信。在一些示例中,上述从虚拟对象的2D版本到虚拟对象的3D版本的转变可以至少部分地通过用户与2D虚拟对象的交互来实现。例如,用户可以使用***设备102来选择2D对象(例如,通过按下按钮),并且然后将***设备102抬离表面。处理器202和/或计算设备214可以检测2D虚拟对象的选择,并且***设备102离开表面,并且响应性地导致显示虚拟对象的3D版本。
在一些示例中,处理器202可以确定***设备102位于水平或倾斜(例如,弯曲、倾斜、斜坡或其他不水平)的表面上。例如,处理器202可以使用步骤602中讨论的任何方法来确定***设备102位于表面上。处理器202还可以使用传感器106来检测***设备102的取向。如果处理器202确定***设备102既位于表面上又倾斜,则处理器202可以确定***设备102位于倾斜表面上。在一些示例中,处理器202响应于确定***设备102位于倾斜表面上而激活第三跟踪模式。第三跟踪模式可以结合第一跟踪模式和第二跟踪模式的特征。例如,当处于第三跟踪模式时,***设备102可以使用2D传感器和3D传感器两者向计算设备214提供输入。在一个这样的示例中,***设备102使用2D传感器来确定第一坐标平面中的一个或多个坐标(例如,X和Y坐标)。并且***设备102使用3D传感器来确定垂直于第一坐标平面的第二坐标平面中的一个或多个坐标(例如,Z坐标)。然后,***设备102可以向计算设备214发送一些或全部坐标,计算设备214可以使用这些坐标来确定***设备102在真实空间中的物理位置。
处理器202可以响应于确定***设备102位于倾斜表面上而附加地或替代地激活第四触觉输出模式。处理器202可以使用上述任何方法激活第四触觉输出模式。当***设备102处于第四触觉输出模式时,***设备102可以仅输出某些触觉效果,仅输出响应于特定事件的触觉效果,或者两者都输出。在一些示例中,当处于第四触觉输出模式时,***设备102可以使用第四触觉效果库或第四触觉效果算法来产生触觉效果。
作为特定示例,用户可以将***设备102定位在身体部分(例如,他的腿)上并且移动***设备102。当用户将***设备102移动到身体部分的水平部分上时,***设备102可以检测到其位于水平表面上,并响应性地激活第一跟踪模式和/或第一触觉输出模式。如果用户将***设备102朝向身体部分的倾斜或弯曲部分移动,则***设备102可以检测到其位于倾斜表面上,并响应性地激活第三跟踪模式和/或第三触觉输出模式。在第三跟踪模式中,***设备102可以使用传感器的组合向计算设备214提供3D输入。这可以使计算设备214能够在***设备102沿着不平坦、变形或倾斜的表面移动时准确地跟踪***设备102的物理位置,例如,以更新光标在计算设备214上的位置。
在一些示例中,第三跟踪模式可以使得光标在计算设备214上的移动符合(例如,一对一)***设备102沿着倾斜表面的移动,这可以实现新型用户界面。例如,物理表面可以被成形或以其他方式类似地配置为虚拟环境中的虚拟对象,并且***设备102沿着这些表面的移动可以被跟踪并转换为虚拟环境中的光标移动或其他交互。作为特定示例,虚拟环境可以包括具有圆形表面的虚拟球。用户可以在真实空间中沿着物理球的圆形表面移动***设备102,这可以被跟踪并转换为光标在虚拟环境中沿着虚拟球的圆形表面移动。作为另一个示例,虚拟环境可以包括浮动在虚拟空间中的虚拟高度的图标。为了访问图标,用户可以将***设备102沿倾斜平面(例如,在用户的桌子上)滑动,直到***设备102在真实空间中的物理高度对应于图标在虚拟环境中的虚拟高度。然后,用户可以使用***设备102来选择或以其他方式与图标交互。
尽管为了便于解释,上面将跟踪模式描述为“第一”、“第二”和“第三”,但是这些标签并不旨在规定跟踪模式的特定顺序,或者以其他方式限制由***设备102实施的跟踪模式的顺序、数量或组合。同样,尽管为了便于解释,上述触觉输出模式被描述为“第一”、“第二”、“第三”和“第四”,但是这些标签并不旨在规定触觉输出模式的特定顺序,或者以其他方式限制由***设备102实施的触觉输出模式的顺序、数量或组合。
用于触觉激活***设备的附加***和方法
图7是根据本公开的一些方面的检测手势的***设备102的示例。在该示例中,传感器106可以是相机或适于检测手势的另一传感器。用户可以用一只手从表面拾起***设备102,将***设备102的传感器106朝向另一只手,并使用另一只手执行夹持手势,如图所示。***设备102可以检测手势并响应性地执行一个或多个操作。操作的示例可以包括激活某个跟踪模式、激活某个触觉输出模式、输出触觉效果、基于手势向计算设备发送命令、向计算设备发送指示手势的信号或这些的任何组合。使***设备102能够执行手势识别可以使得双手能够用于向计算设备提供输入和/或向计算设备提供附加种类的输入(例如,手势、2D移动、3D移动等)。尽管该示例是参考检测用户手执行的手势而讨论的,但是用户可以替代地使用另一个对象(例如,腿、棒、电话或触笔)来执行手势。***设备102可以检测由任何数量和组合的对象执行的任何数量和组合的手势。
图8是根据本公开的一些方面的检测对象804(例如,物理对象)的***设备102的示例。在该示例中,***设备102中的传感器106可以是相机、激光扫描仪或适合于检测对象的另一种传感器。用户可以从表面拾起***设备102,并将***设备102的传感器106的视场802朝对象804进行定向。然后,***设备102可以“扫描”或以其他方式检测对象并响应性地执行一个或多个操作,例如上面讨论的操作。
在一个特定示例中,用户可以将***设备102的传感器106定向为面向对象804,在图8的示例中,对象804是壶。***设备102可以使用传感器106来确定对象804的各种物理性质。物理性质的示例可以包括对象804的高度、宽度、形状、大小、颜色、纹理、类型和/或位置(在真实空间中)。在一些示例中,***设备102然后可以将对象804的物理性质发送到计算设备,以使得计算设备呈现对象804的3D虚拟表示(例如,3D模型)。计算设备可以在虚拟现实环境或增强现实环境内呈现对象804的3D模型。
以上示例中的一些可以根据图中9所示的过程来实施。在其他示例中,可以实施更多的步骤、更少的步骤、不同的步骤或图9中所示的步骤的不同组合。下面参考图2中所示的***200讨论步骤。
在步骤902中,处理器202确定***设备102是否位于表面上。在一些示例中,可以使用关于图6的步骤602所讨论的任何数量和组合方法的来实施该步骤。如果处理器202确定***设备102位于表面上,则处理可以结束。否则,该过程可以继续到步骤704。
在步骤904中,处理器202确定是否检测到手势。例如,处理器202可以分析来自传感器106的图像或其他传感器数据,以确定是否执行了手势。如果是,则该过程可以继续到步骤906。否则,该过程可以继续到步骤908。
在步骤906中,处理器202基于该手势发送命令。例如,处理器202可以发送指示手势的命令,该命令是基于手势确定的,或者以其他方式与手势相关联。处理器202可以经由有线或无线接口向计算设备214发送命令。该命令可以使计算设备214执行一个或多个操作。
在步骤908中,处理器202确定是否检测到物理对象。例如,处理器202可以分析来自传感器106的图像或其他传感器数据,以确定是否检测到物理对象。如果是,则该过程可以继续到步骤910。否则,该过程可以结束。
在步骤910中,处理器202确定物理对象的物理性质。处理器202可以基于来自传感器106的传感器信号确定物理对象的物理性质。例如,处理器202可以分析来自传感器106的图像以确定物理对象的大小、形状、颜色和纹理。处理器202可以实施一个或多个图像处理算法,以经由图像识别物理对象的物理性质。
在步骤912中,处理器202使得产生物理对象的3D表示。例如,处理器202可以将物理对象的物理性质发送到计算设备214,计算设备214进而可以呈现物理对象的3D模型。替代地,处理器202可以使用物理对象的物理性质来呈现物理对象的3D表示。处理器202和/或计算设备214可以包括用于产生物理对象的3D表示的图形呈现软件。
示例的说明性组合
本公开的其他示例可以结合上述示例中的一些或全部。一个说明性示例可以涉及用户坐在桌前,并且通过在表面上滑动***设备与***设备进行交互。用户可以移动鼠标以与显示在计算机监视器上的各种图形对象交互,并执行各种操作(例如,拖放操作)。如果用户打开支持3D交互的应用程序,则计算设备可以向***设备发送触觉信号,该触觉信号使得***设备振动或以其他方式指示3D交互可用。应用程序的一个示例可以是3D建模应用程序。一旦感觉到振动,用户可以戴上增强现实耳机,并且向上举起他的手以提供3D输入。
当用户举起他的手时,承载设备(将***设备耦合到他的手腕)也将从表面提起***设备,使得用户能够从***设备释放他的抓地力,而不会使***设备下降。基于***设备被抬离表面,***设备可以激活第二触觉输出模式,其中***设备将形状从一个形状因子改变到另一个形状因子。例如,***设备可以检测到其已经从表面抬起,并且响应性地从针对用户手掌成形为置于***设备的顶表面的第一形状因子改变为针对用户手掌成形为置于60度斜坡的第二形状因子。然后,用户可以使用***设备与由增强现实耳机输出的各种全息图和虚拟对象交互。
为了提供附加类型的输入,用户可以从***设备移除附件(例如,模块或触针)。对于一方面是附件,另一方面是***设备的剩余部分,用户可以同时地(或顺序地)使用这两个设备提供输入。例如,用户可以使用这两个设备执行多目标交互、缩放手势、夹持手势或这些的任何组合。在这样的示例中,***设备的基座和附件都可以包括3D传感器。当针对附件完成时,用户可以将附件重新附接到***设备。
在将附件重新附接到***设备后,用户可以使***设备的传感器朝向空闲的手,并用空闲的手执行手势。***设备可以检测手势并执行相关联的操作。例如,***设备可以检测手势,并在应用程序中响应性地执行某个命令。命令的示例可以包括打开菜单、打开文件、保存文件、创建新文件或这些的任何组合。
用户可以附加地或替代地使用***设备通过将***设备中的传感器朝向物理对象来扫描房间中的物理对象,如雕塑。这可能导致对象的3D表示被呈现或显示(例如,作为全息图或虚拟对象)。例如,这可能导致对象的3D表示显示在应用程序中。然后,用户可以通过使用***设备执行各种3D移动来操纵对象的3D表示。用户可以附加地或替代地使用***设备与各种其他虚拟对象交互。例如,应用程序可以包括各种虚拟按钮。用户可以朝虚拟按钮伸出***设备,虚拟按钮例如是用于退出应用程序的虚拟退出按钮。当***设备接触虚拟按钮时,***设备可以振动(并且虚拟按钮的大小可以增加)以通知用户虚拟按钮已被接触。然后,用户可以操纵***设备上的输入设备来虚拟地“按”虚拟按钮,在一个示例中,这导致应用程序关闭。
一旦用户使用应用程序和/或提供3D输入来完成,用户可以坐下来将***设备放回表面。基于***设备被放回表面上,***设备可以激活第一触觉输出模式,其中***设备将形状改变回到第一形状因子。然后,用户可以继续使用***设备向计算设备提供2D输入。
一般考虑
以上讨论的方法、***和设备是示例。各种配置可以适当地省略、替换或添加各种过程或组件。例如,在替代配置中,可以按照与描述的顺序不同的顺序执行方法,并且/或者可以添加、省略和/或组合各种阶段。此外,关于某些配置描述的特征可以以各种其他配置组合。配置的不同方面和元素可以以类似的方式组合。此外,技术演进,并且因此,许多元素是示例,并且不限制本公开或权利要求的范围。
在说明书中给出了具体的细节以提供对示例性配置(包括实施方式)的透彻理解。然而,在没有这些具体细节的情况下,可以实践配置。例如,为了避免使配置难以理解,已经示出了公知的电路、过程、算法、结构和技术而没有不必要的细节。本说明书仅提供示例性配置,并且不限制权利要求的范围、适用性或配置。相反,前面对配置的描述将为本领域技术人员提供用于实施所描述的技术的激活描述。在不脱离本公开的精神或范围的情况下,可以对元素的功能和布置进行各种改变。
此外,可以将配置描述为被描绘为流程图或框图的过程。尽管每个都可以将操作描述为顺序过程,但是许多操作可以并行或并发地执行。此外,可以重新排列操作的顺序。过程可以具有不包括在图中的附加步骤。此外,这些方法的示例可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或其任何组合来实施。当以软件、固件、中间件或微代码实施时,执行必要任务的程序代码或代码段可以存储在非暂时性计算机可读介质(例如存储介质)中。处理器可以执行所描述的任务。
在描述了若干示例性配置之后,在不脱离本公开的精神的情况下,可以使用各种修改、替代构造和等效物。例如,上述元素可以是较大***的组件,其中其他规则可以优先于或以其他方式修改本发明的应用。此外,在考虑上述要素之前、期间或之后可以采取若干步骤。因此,上述描述并不限定权利要求的范围。
这里使用“适合于”或“被配置为”意指开放和包容性语言,其不排除适合于或被配置为执行附加任务或步骤的设备。此外,使用“基于”意指开放和包容性的,因为“基于”一个或多个所列举的条件或值的过程、步骤、计算或其他动作在实践中可以基于超出所列举的条件或值的附加条件或值。本文包括的标题、列表和编号只是为了便于解释,并且不意指进行限制。
根据本主题的各方面的示例可以以数字电子电路、计算机硬件、固件、软件中或以上各项的组合来实施。在一个示例中,计算机可以包括一个或多个处理器。处理器包括或具有对计算机可读介质的访问,例如耦合到处理器的随机存取存储器(RAM)。处理器执行存储在存储器中的计算机可执行程序指令,例如执行包括传感器采样例程、选择例程和用于执行上述方法的其他例程的一个或多个计算机程序。
这样的处理器可以包括微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)和状态机。这样的处理器还可以包括可编程电子器件,例如PLC、可编程中断控制器(PIC)、可编程逻辑器件(PLD)、可编程只读存储器(PROM)、电子可编程只读存储器(EPROM或EEPROM)或其他类似的器件。
这样的处理器可以包括媒体或可以与媒体通信,例如有形的计算机可读媒体,该媒体可以存储指令,当该指令被处理器执行时,可以使处理器执行本文描述的由处理器执行或辅助的步骤。计算机可读介质的示例可以包括但不限于能够向处理器(例如web服务器中的处理器)提供计算机可读指令的所有电子、光学、磁或其他存储设备。介质的其他示例包括但不限于软盘、CD-ROM、磁盘、存储器芯片、ROM、RAM、ASIC、配置的处理器、所有光学介质、所有磁带或其他磁性介质,或者计算机处理器可从中读取的任何其它介质。此外,各种其他设备可以包括计算机可读介质,例如路由器、专用或公共网络或其他传输设备。所述处理器和所述处理可以处于一个或多个结构中,并且可以分散在一个或多个结构上。处理器可以包括用于执行本文描述的方法(或方法的部分)中的一种或多种方法的代码。
虽然本主题已经关于其具体示例进行详细描述,但是应当理解,本领域技术人员在理解了上述内容后,可以容易地产生对这种示例的更改、变型和等效物。因此,应当理解,本公开是出于示例而非限制的目的而提出的,并且不排除包括对于本领域普通技术人员来说显而易见的对本主题的修改、变型和/或添加。
Claims (22)
1.一种***设备,包括:
处理器;以及
存储器设备,其包括能够由所述处理器执行的程序代码,以使得所述处理器:
从一个或多个传感器接收一个或多个传感器信号,所述一个或多个传感器能够用于检测所述***设备在真实空间中的物理位置;
基于所述一个或多个传感器信号确定所述***设备是位于真实空间中的表面上还是真实空间中的表面外;
响应于确定所述***设备位于所述表面上,激活第一触觉输出模式,所述第一触觉输出模式被配置为基于所述***设备沿所述表面的二维移动来提供第一组触觉效果;并且
响应于确定所述***设备位于所述表面外,激活第二触觉输出模式,所述第二触觉输出模式被配置为基于所述***设备在真实空间中的三维移动来提供第二组触觉效果。
2.根据权利要求1所述的***设备,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
响应于确定所述***设备在物理上位于所述表面外,通过应用基于所述一个或多个传感器信号的从内向外的跟踪技术来确定所述***设备在真实空间中的三维位置;
基于下述项来确定触觉效果:(i)所述第二触觉输出模式被激活;以及(ii)所述***设备在真实空间中的三维位置;并且
使触觉输出设备输出所述触觉效果。
3.根据权利要求2所述的***设备,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
从所述***设备外部的光学传感器接收传感器信号;
通过下述项来确定所述***设备在真实空间中的三维位置:(i)应用使用来自所述一个或多个传感器的所述一个或多个传感器信号的所述从内向外的跟踪技术;以及(ii)使用来自所述***设备外部的所述光学传感器的所述传感器信号。
4.根据权利要求1所述的***设备,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
响应于确定所述***设备在物理上位于所述表面上,基于所述一个或多个传感器信号来确定所述***设备在所述表面上的二维位置;
基于下述项来确定触觉效果:(i)所述第一触觉输出模式被激活;以及(ii)所述***设备在所述表面上的二维位置;并且
使触觉输出设备输出所述触觉效果。
5.根据权利要求1所述的***设备,其中,所述一个或多个传感器包括第一光学传感器和与所述第一光学传感器分离的第二光学传感器,并且其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
响应于确定所述***设备位于所述表面上,激活第一跟踪模式,其中,使用所述第一光学传感器产生的二维输入而不是使用所述第二光学传感器产生的三维输入被提供给远程计算设备;并且
响应于确定所述***设备位于所述表面外,激活第二跟踪模式,其中,使用所述第二光学传感器产生的三维输入而不是使用所述第一光学传感器产生的二维输入被提供给所述远程计算设备。
6.根据权利要求1所述的***设备,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
确定所述***设备是否在物理上附接到承载设备,所述承载设备被配置为将所述***设备在物理上耦合到除手之外的身体部分;并且
响应于确定所述***设备在物理上耦合到所述承载设备,激活第三触觉输出模式,所述第三触觉输出模式被配置为用于在徒手使用期间呈现触觉效果。
7.根据权利要求1所述的***设备,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
基于来自接触传感器的传感器信号来确定身体部分是否与所述***设备接触;并且
响应于确定所述身体部分没有接触所述***设备,禁用触觉效果。
8.根据权利要求1所述的***设备,还包括能够用于检测由远离所述***设备的对象执行的通过真实空间的手势的传感器,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
使用所述传感器确定所述通过真实空间的手势;并且
基于所述手势,将与所述手势相关联的命令发送到远程计算设备。
9.根据权利要求1所述的***设备,还包括能够用于确定真实空间中的物理对象的物理性质的传感器,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
使用所述传感器确定所述物理对象的物理性质;并且
使用所述物理对象的所述物理性质在虚拟环境中产生所述物理对象的三维虚拟表示。
10.根据权利要求1所述的***设备,其中,所述存储器设备还包括能够由所述处理器执行的程序代码,以使得所述处理器:
当所述***设备位于所述表面上时,使得虚拟对象的二维版本被显示;并且
当所述***设备位于所述表面外时,使得虚拟对象的三维版本被显示。
11.一种非暂时性计算机可读介质,包括能够由所述处理器执行的程序代码,以使得所述处理器:
从一个或多个传感器接收一个或多个传感器信号,所述一个或多个传感器能够用于检测***设备在真实空间中的物理位置;
基于所述一个或多个传感器信号确定所述***设备在物理上是位于真实空间中的表面上还是真实空间中的表面外;
响应于确定所述***设备在物理上位于所述表面上,激活第一触觉输出模式,所述第一触觉输出模式被配置为基于所述***设备沿所述表面的二维移动来提供第一组触觉效果;并且
响应于确定所述***设备位于所述表面外,激活第二触觉输出模式,所述第二触觉输出模式被配置为基于所述***设备在真实空间中的三维移动来提供第二组触觉效果。
12.根据权利要求11所述的非暂时性计算机可读介质,还包括能够由所述处理器执行的程序代码,以使得所述处理器:
响应于确定所述***设备在物理上位于所述真实空间中的表面外,通过应用基于所述一个或多个传感器信号的从内向外的跟踪技术来确定所述***设备在真实空间中的三维位置;
基于下述项来确定触觉效果:(i)所述第二触觉输出模式被激活;以及(ii)所述***设备在真实空间中的三维位置;并且
使触觉输出设备输出所述触觉效果。
13.根据权利要求11所述的非暂时性计算机可读介质,还包括能够由所述处理器执行的程序代码,以使得所述处理器:
响应于确定所述***设备在物理上位于所述表面上,基于所述一个或多个传感器信号来确定所述***设备在所述表面上的二维位置;
基于下述项来确定触觉效果:(i)所述第一触觉输出模式被激活;以及(ii)所述***设备在所述表面上的二维位置;并且
使触觉输出设备输出所述触觉效果。
14.根据权利要求11所述的非暂时性计算机可读介质,其中,所述一个或多个传感器包括第一光学传感器和与所述第一光学传感器分离的第二光学传感器,并且还包括能够由所述处理器执行的程序代码,以使得所述处理器:
响应于确定所述***设备在物理上位于所述表面上,激活第一跟踪模式,其中,使用所述第一光学传感器产生的二维输入而不是使用所述第二光学传感器产生的三维输入被提供给计算设备;并且
响应于确定所述***设备在物理上位于所述真实空间中的表面外,激活第二跟踪模式,其中,使用所述第二光学传感器产生的三维输入而不是使用所述第一光学传感器产生的二维输入被提供给所述计算设备。
15.根据权利要求11所述的非暂时性计算机可读介质,还包括能够由所述处理器执行的程序代码,以使得所述处理器:
确定所述***设备是否在物理上附接到承载设备,所述承载设备被配置为将所述***设备在物理上耦合到除手之外的身体部分;并且
响应于确定所述***设备在物理上耦合到所述承载设备,激活第三触觉输出模式,所述第三触觉输出模式被配置为用于在徒手使用期间呈现触觉效果。
16.根据权利要求11所述的非暂时性计算机可读介质,还包括能够由所述处理器执行的程序代码,以使得所述处理器:
基于来自接触传感器的传感器信号来确定身体部分是否与所述***设备接触;并且
响应于确定所述身体部分没有接触所述***设备,禁用触觉效果。
17.一种方法,包括:
通过***设备的处理器,从一个或多个传感器接收第一组传感器信号,所述一个或多个传感器能够用于检测所述***设备在真实空间中的物理位置;
通过所述处理器,基于所述第一组传感器信号确定所述***设备在物理上位于表面上;
通过所述处理器,响应于确定所述***设备在物理上位于所述表面上,激活第一触觉输出模式,所述第一触觉输出模式被配置为基于所述***设备沿所述表面的二维移动来提供第一组触觉效果;
通过所述处理器,从所述一个或多个传感器接收第二组传感器信号;
通过所述处理器,基于所述第二组传感器信号确定所述***设备在物理上位于所述表面外;以及
通过所述处理器,响应于确定所述***设备位于所述表面外,激活第二触觉输出模式,所述第二触觉输出模式被配置为基于所述***设备在真实空间中的三维移动来提供第二组触觉效果。
18.根据权利要求17所述的方法,还包括:
通过应用基于所述第二组传感器信号的从内向外的跟踪技术来确定所述***设备在真实空间中的三维位置;
基于下述项来确定触觉效果:(i)所述第二触觉输出模式被激活;以及(ii)所述***设备在真实空间中的三维位置;以及
使触觉输出设备输出所述触觉效果。
19.根据权利要求17所述的方法,其中,所述一个或多个传感器包括第一光学传感器和与所述第一光学传感器分离的第二光学传感器,并且所述方法还包括:
响应于确定所述***设备在物理上位于所述表面上,激活第一跟踪模式,其中,使用所述第一光学传感器产生的二维输入而不是使用所述第二光学传感器产生的三维输入被提供给计算设备;以及
响应于确定所述***设备在物理上位于所述表面外,激活第二跟踪模式,其中,使用所述第二光学传感器产生的三维输入而不是使用所述第一光学传感器产生的二维输入被提供给所述计算设备。
20.根据权利要求17所述的方法,还包括:
确定所述***设备是否在物理上附接到承载设备,所述承载设备被配置为将所述***设备在物理上耦合到除手之外的身体部分;以及
响应于确定所述***设备在物理上耦合到所述承载设备,激活第三触觉输出模式,所述第三触觉输出模式被配置为用于在徒手使用期间呈现触觉效果。
21.根据权利要求17所述的方法,还包括:
基于来自接触传感器的传感器信号来确定身体部分是否与所述***设备接触;以及
响应于确定所述身体部分没有接触所述***设备,激活第三触觉输出模式,其中触觉效果被禁用。
22.根据权利要求17所述的方法,还包括:
响应于确定所述***设备在物理上位于所述表面上,显示虚拟对象的二维版本;以及
响应于确定所述***设备在物理上位于所述表面外,显示所述虚拟对象的三维版本。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/845,845 US20190187819A1 (en) | 2017-12-18 | 2017-12-18 | Haptically-Enabled Peripheral Usable for Two-Dimensional and Three-Dimensional Tracking |
US15/845,845 | 2017-12-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110045813A true CN110045813A (zh) | 2019-07-23 |
Family
ID=64744518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811544047.9A Pending CN110045813A (zh) | 2017-12-18 | 2018-12-17 | 用于二维跟踪和三维跟踪的触觉激活***设备 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20190187819A1 (zh) |
EP (1) | EP3499344A1 (zh) |
JP (1) | JP2019109889A (zh) |
KR (1) | KR20190073281A (zh) |
CN (1) | CN110045813A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10751141B2 (en) * | 2018-01-08 | 2020-08-25 | Stockdale Medical, Llc | Medical device tray tracking system and method of use |
WO2020209864A1 (en) * | 2019-04-12 | 2020-10-15 | Google Llc | Electromagnetically tracked three-dimensional air mouse |
CN111459317B (zh) * | 2020-04-24 | 2024-02-27 | 维沃移动通信有限公司 | 输入设备和电子设备输入*** |
CN114730223A (zh) * | 2020-09-29 | 2022-07-08 | 微软技术许可有限责任公司 | 计算机鼠标模块 |
IL308982A (en) * | 2021-05-31 | 2024-01-01 | Univ Kansas | Magnetic sensors and methods to create and use them |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8352643B2 (en) * | 2010-09-30 | 2013-01-08 | Immersion Corporation | Haptically enhanced interactivity with interactive content |
US10410180B2 (en) * | 2012-11-19 | 2019-09-10 | Oath Inc. | System and method for touch-based communications |
KR20160044260A (ko) * | 2014-10-15 | 2016-04-25 | 삼성전자주식회사 | 원격 제어 장치 및 그 제어 방법 |
KR102316327B1 (ko) * | 2017-04-04 | 2021-10-22 | 엘지전자 주식회사 | 가상 공간의 캡쳐 방법 및 그 전자장치 |
US10841486B2 (en) * | 2017-07-20 | 2020-11-17 | Eclo, Inc. | Augmented reality for three-dimensional model reconstruction |
US10514780B2 (en) * | 2017-12-01 | 2019-12-24 | Logitech Europe S.A. | Input device |
-
2017
- 2017-12-18 US US15/845,845 patent/US20190187819A1/en not_active Abandoned
-
2018
- 2018-12-13 KR KR1020180160670A patent/KR20190073281A/ko unknown
- 2018-12-14 JP JP2018233985A patent/JP2019109889A/ja active Pending
- 2018-12-17 EP EP18213209.2A patent/EP3499344A1/en not_active Withdrawn
- 2018-12-17 CN CN201811544047.9A patent/CN110045813A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20190073281A (ko) | 2019-06-26 |
US20190187819A1 (en) | 2019-06-20 |
JP2019109889A (ja) | 2019-07-04 |
EP3499344A1 (en) | 2019-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN210573659U (zh) | 计算机***、头戴式设备、手指设备和电子设备 | |
CN110045813A (zh) | 用于二维跟踪和三维跟踪的触觉激活***设备 | |
CN110096131B (zh) | 触感交互方法、装置、以及触感可穿戴设备 | |
CN104122996B (zh) | 用于支持触觉的紧贴式和多面显示器的***和方法 | |
CN104679233B (zh) | 用于生成摩擦和振动触感效果的***和方法 | |
CN103261997B (zh) | 用于控制显示的信息的用户输入的装置和方法 | |
US20200023272A1 (en) | Haptic surround functionality | |
EP3588250A1 (en) | Real-world haptic interactions for a virtual reality user | |
KR101666096B1 (ko) | 강화된 제스처 기반 상호작용 시스템 및 방법 | |
US20180024623A1 (en) | Detecting user range of motion for virtual reality user interfaces | |
KR20170069936A (ko) | 위치 기반 햅틱 효과를 위한 시스템 및 방법 | |
CN109840022A (zh) | 用于根据基于倾斜的输入提供触觉反馈的***和方法 | |
CN110389659A (zh) | 针对增强或虚拟现实环境提供动态触觉回放的***和方法 | |
KR20180098166A (ko) | 가상 감성 터치를 위한 시스템들 및 방법들 | |
EP3096206A1 (en) | Haptic effects based on predicted contact | |
US20180011538A1 (en) | Multimodal haptic effects | |
KR20200008946A (ko) | 동적 시스템 식별에 기반한 적응적 햅틱 효과 렌더링 | |
KR20180066865A (ko) | 햅틱들을 가지는 컴플라이언스 착시들을 위한 시스템들 및 방법 | |
CN107918486A (zh) | 经由可穿戴或手持设备提供静电触觉效果的***和方法 | |
KR20110044391A (ko) | 입력 장치 및 방법 | |
CN113508355A (zh) | 虚拟现实控制器 | |
US20200286298A1 (en) | Systems and methods for a user interaction proxy | |
Stanković | Lecture 6—Input Devices and Tracking | |
Nguyen | 3DTouch: Towards a Wearable 3D Input Device for 3D Applications |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190723 |