CN109074150A - 对遥控机器人的基于移动映射的控制 - Google Patents

对遥控机器人的基于移动映射的控制 Download PDF

Info

Publication number
CN109074150A
CN109074150A CN201680084534.4A CN201680084534A CN109074150A CN 109074150 A CN109074150 A CN 109074150A CN 201680084534 A CN201680084534 A CN 201680084534A CN 109074150 A CN109074150 A CN 109074150A
Authority
CN
China
Prior art keywords
user
remote
space
human user
command action
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.)
Granted
Application number
CN201680084534.4A
Other languages
English (en)
Other versions
CN109074150B (zh
Inventor
杨思睿
张益民
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN109074150A publication Critical patent/CN109074150A/zh
Application granted granted Critical
Publication of CN109074150B publication Critical patent/CN109074150B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1689Teleoperation
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/02Hand grip control means
    • B25J13/025Hand grip control means comprising haptic means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40174Robot teleoperation through internet
    • 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/012Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • User Interface Of Digital Computer (AREA)
  • Manipulator (AREA)

Abstract

用户空间(105)中的用户(101)的移动被映射成被发送至遥控机器人空间(110)中的遥控机器人(111)的命令动作流(109)的第一部分。遥控机器人(111)向用户(101)提供沉浸式反馈流(113)。在用户(101)移动进入或邻近于用户空间(105)的边缘之际,可挂起命令动作流的第一部分。用户(101)可在用户空间(105)中重新定向,然后可继续移动,且重新从事移动映射并恢复命令动作流的第二部分的传输。以这种方式,即使用户空间和遥控机器人空间可能不是相同的大小,用户也可经由移动映射控制遥控机器人。

Description

对遥控机器人的基于移动映射的控制
技术领域
本公开涉及计算领域,并且更具体地,涉及遥控机器人以及经由操作者的移动映射在远处对机器的操作。
背景技术
本文中所提供的背景描述是出于总体上呈现本公开的上下文的目的。除非在本文中另有指示,否则本部分中描述的材料不是本申请中的权利要求的现有技术,并且不因为包含在本部分中而被承认为现有技术。
在计算中,遥控机器人是涉及从远处对半自主机器人进行控制的机器人领域。如本文所使用的,“机器人”是被相对间接控制(诸如,通过编程)的计算机控制的机器。如本文所使用的,“遥控机器人”指的是由人类操作者远程控制的计算机控制的机器。“遥控机器人”的另一术语是“遥控操纵装置”。
远程人类控制可涉及人类操作者的命令动作与遥控机器人的动作之间的直接对应,例如无线电控制的模型飞行器,其中引擎、襟翼和方向舵由人类操作者实时直接控制。远程人类控制也可以是间接的,诸如当遥控机器人包括用于控制引擎、襟翼和方向舵的逻辑时,人类控制器的输入被解释为速度和/或方向的改变以及遥控机器人将实现速度和/或方向的改变的速率。人类操作者的命令动作可被基本上实时地(也就是说,具有小于四分之一秒的等待时间)传达,或者不是实时的(具有大于四分之一秒的等待时间)。
如本文所使用的,“化身”是虚拟世界(诸如,计算机游戏或计算机生成的三维空间)中的人、动物或物理对象的图形表示,其中该图形表示由活人、动物或其他生物体(在此统称为“操作者”或“人类操作者”)控制。
当操作者控制现实世界中的遥控机器人或数字空间中的化身时,来自遥控机器人或化身的反馈典型地可用于或被提供至操作者。反馈可以是通过操作者的直接观察(如,具有无线电控制的飞行器的情形)或通过将来自遥感机器人的传感器数据传送至操作者来进行。传感器数据的示例包括视频(图像和音频)、姿态(滚动、俯仰和偏航)、速度等。传感器数据可被解码或以其他方式转换成操作者可感知的输出。例如,经解码的(或模拟的)视频以及经解码的姿态数据可被输出成操作者可观看的屏幕上的视频,姿态数据可被解码并输出成视频屏幕上的姿态指示符的图形表示或者作为触觉反馈被输出至由人类操着者握持的操纵杆。在化身的情形中,能以类似方式提供反馈,但是具有生成传感器数据的第一步,诸如从计算机生成的三维空间内的视点生成视频。
提供至操作者的反馈可以是“沉浸式的”,因为其替代了操作者的某些或全部的感官体验,诸如利用显示图像(包括视频)、提供立体声音频和/或触觉反馈的虚拟现实耳机,这些图像、立体声音频和/或触觉反馈来源于由可用于或邻近于遥控机器人的传感器获得的数据;这在本文中称为“沉浸式反馈”。
关于遥控机器人和化身两者,可从操作者的现实世界移动或者甚至从检测操作者的神经系统的活动来解释操作者的控制命令。在无线电控制的飞行器的简单情形中,人类操作者可控制控制器中的一个或两个操纵杆、轮子、踏板、按钮等。人类操作者对控制器中的这些组件的移动产生(典型地被处理并且)随后被传送至远程飞行器的电信号。操作者的移动还可被观察——例如,通过视频相机、通过传感器轴承“棒”的移动等——被解释为控制命令、被编码、然后被传送至远程遥控机器人或化身。这在本文中称为“基于移动映射的控制”。
当在操作者与遥控机器人或化身之间提供基于移动映射的控制时,并且当遥控机器人或化身向操作者提供沉浸式听觉、视觉或触觉反馈(“沉浸式反馈”)时,问题会在操作者占据的现实空间与遥控机器人或化身占据的现实或虚拟空间之间存在差异时出现。例如,如果操作者佩戴显示沉浸式反馈(诸如,由遥控机器人记录的视频)的虚拟现实耳机,并且如果使用基于移动映射的控制来控制遥控机器人,则沉浸式反馈可能导致操作者经历头晕或混乱,或者如果由操作者导航的现实空间与遥控机器人不对齐,则操作者可能无法正确地控制遥控机器人。
附图简述
本公开的基于移动映射的遥现交互技术的实施例可克服某些或所有上述限制。通过下列具体实施方式结合附图,将容易理解技术。为了促进此描述,相同的附图标记指示相同的结构元件。在附图的各图中,通过示例的方式而非通过限制的方式来图示实施例。
图1是例示出根据本公开配置的示例性网络和计算机设备的第一视图的网络和设备图,该网络和计算机设备部署在物理空间中,并且其中用户经由运动控制远程遥控机器人。
图2是例示出根据本公开配置的示例性网络和计算机设备的第二视图的网络和设备图,该网络和计算机设备部署在物理空间中,并且其中用户经由运动控制远程遥控机器人。
图3是例示出被划分成用户区域的示例性用户空间。
图4是例示出根据本公开配置的示例性网络和计算机设备的网络和设备图。
图5是例示出示例性用户空间设备的功能框图。
图6是例示出示例性用户空间设备数据存储的功能框图,在该数据存储中包括数据记录的示例。
图7是例示出示例性遥控机器人空间设备的功能框图。
图8是例示出示例性遥控机器人空间设备数据存储的功能框图,在该数据存储中包括数据记录的示例。
图9是例示出根据各实施例的移动映射模块的示例/算法结构的流程图。
图10是例示出根据各实施例的用户空间映射模块的示例/算法结构的流程图。
图11是例示出根据各实施例的边缘确定模块的示例/算法结构的流程图。
图12是例示出根据各实施例的命令动作实现模块的示例/算法结构的流程图。
图13是例示出根据各实施例的遥控机器人空间映射模块的示例/算法结构的流程图。
具体实施方式
以下描述提供了用于理解本技术的各种示例的具体细节。本领域技术人员将理解,可在没有这些细节中的许多细节的情况下实践该技术。在一些实例中,没有详细示出或描述结构和功能,或者根本没有示出结构和功能,以避免不必要地模糊对技术示例的描述。旨在使下面呈现的描述中使用的术语以其最广泛的合理方式解释,即使其结合技术的某些示例的详细描述来使用。尽管下文可能强调某些术语,但是旨在以任何受限制的方式解释的任何术语同样将在本详细描述部分中公开且具体地定义。
除非上下文明确要求,否则在整个说明书和权利要求书中,词“包括”,“包含”等将以包含性的意义来解释,而不是排他性或穷举性的意义;也就是说,以“包括但不限于”的意义。如本文所使用的,术语“连接”,“耦合”或其任何变体意指两个或更多个元件之间直接或间接的任何连接或耦合;元件之间的连接的耦合可以是物理的、逻辑的或其组合。另外,当在本申请中使用时,词“本文”、“上文”、“下文”和类似含义的词将指代本申请的整体而不是本申请的特定部分。当上下文允许时,使用单数的上述详细描述中的词也可包括复数,而使用复数的词也可包括单数。参考两个或更多项的列表,词“或”涵盖对该词的所有以下解释:列表中的项的任一者、列表中的所有项、以及列表中的项的一个或多个的任意组合。
在以下具体实施方式中,参考形成本文一部分的附图,其中相同的标记指示全文中相同的部分,并且其中通过图示的方式示出了可实施的实施例。应理解,可利用其它实施例并作出结构或逻辑改变而不背离本公开的范围。因此,以下具体实施方式不旨在作为限制,并且实施例的范围由所附权利要求及其等效方案来限定。
所附说明书中公开了本公开的多个方面。可以设计本公开的替代实施例及其等效物而不背离本公开的精神或范围。应当注意,下文所公开的相同的元件由附图中相同的附图标记指示。
按照在理解要求保护的主题时最有帮助的方式,可将各操作依次描述为多个分立的动作或操作。然而,不应当将描述的次序解释为暗示这些操作必然取决于顺序。具体而言,可以不按照呈现的次序来执行这些操作。能以不同于所描述的实施例的次序执行所描述的操作。在附加的实施例中,可执行各种附加操作和/或可省略所描述的操作。
对于本公开的目的,短语“A和/或B”意思是(A)、(B)或(A和B)。对于本公开的目的,短语“A、B或C中的至少一者”意思是(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。
说明书可使用短语“在实施例中”或“在诸实施例中”,它们各自可指代相同或不同实施例中的一个或多个。此外,相对于本公开的实施例使用的术语“包含”、“包括”、“具有”等是同义的。
如本文中所使用的那样,术语模块摂可指执行提供所描述功能的一个或多个软件或固件程序、组合逻辑电路和/或其他合适的组件的专用集成电路(ASIC)、片上系统(SoC)、电子电路、处理器(共享的、专用的或成组的)和/或存储器(共享的、专用的或成组的),或可以是上述各项的部分,或可包括上述各项。
总的来说,描述了与用户空间中的用户进行的命令动作、遥控机器人空间中的遥控机器人、以及由遥控机器人向用户提供的沉浸式反馈流相关联的装置、方法和存储介质。
参看图1,例示出的是用户空间105中的用户操作者101。用户空间105可以是例如构造的或以其他方式形成的现有的部分封闭或全封闭的空间,诸如,建筑物、房间、办公室、或者至少具有操作者101无法或不应通过的部分边界的外部空间。图1中例示出边界的示例,该边界用“用户空间边缘107”(在此也被称为“边缘”)来标识。用户空间边缘107的示例是房间中的墙壁。用户空间边沿107可完全或部分地包围用户空间105。用户空间105在图1中被例示为沿一个轴具有长度“d”。
在图1中,操作者101和用户空间设备500可与遥控机器人111配对;一般而言,操作者101和遥控机器人111彼此远离。遥控机器人被例示为在遥控机器人空间110内。遥控机器人空间110被例示为沿一个轴具有长度“D”。长度“d”和“D”意味着是不同的。
同样在图1中例示出的是用户空间设备500。本文结合图4进一步例示和讨论用户空间设备500。如图4中所例示的,用户空间设备500可以是若干分开的设备和/或合并若干设备或若干设备的功能的一个设备,诸如移动映射设备405、沉浸式反馈设备410、空间映射设备415、邻近度传感器420以及用户空间网络设备425。在一个实施例中,用户空间设备500可以是例如由操作者101佩戴的沉浸式反馈设备410或虚拟现实耳机,诸如OCULUS RIFT(R)、HTC VIVE(TM)、PLAYSTATION VR(R)、SAMSUNG GEAR VR(R)、FOVE(TM)等。如本文进一步讨论的,虚拟现实耳机(和/或另一用户空间设备500)可将来自遥控机器人111的沉浸式反馈提供至操作者101,例如,允许操作者101体验由遥控机器人111记录的视频。此类沉浸式反馈流被例示为沉浸式反馈流113。虚拟现实耳机或另一用户空间设备500可替代地或者还充当移动映射设备405。当充当移动映射设备405时,其可执行例如移动映射模块900(图9)并将操作者101的移动和显式命令转换成命令动作流——被发送至遥控机器人111(和/或遥控机器人空间设备700(图7))、指导遥控机器人111在遥控机器人空间110内移动的命令动作流109。
例如,参看图1,用户空间105中的操作者101被例示为沿路径106从第一时间T1的第一位置移动至第二后续时间T2的第二位置。充当移动映射设备405并执行移动映射模块900的虚拟现实耳机可将操作者101沿路径106的移动转换成命令动作流109,该命令动作流109被发送至遥控机器人111(和/或遥控机器人空间设备700),导致遥控机器人111沿遥控机器人空间110中的路径114移动。路径106和114可以是相同或可以不是相同的距离。
当遥控机器人111沿路径114移动时,其继续将沉浸式反馈流113发送至操作者101和/或用户空间设备500。如果路径106和路径114不是相同的长度,则操作者101会经历头晕或其他不适,对操作者101的(人)运动感觉与虚拟现实耳机提供的视觉体验之间的分离产生不安、迷惑。如果路径106和路径114是相同的长度,则操作者101的视觉和运动感觉可较为紧密地对齐;然而,随后在遥控机器人111到达遥控机器人空间110中的期望目的地之前,操作者101可能到达用户空间边缘107。
同样在图1中例示出的是遥控机器人空间设备700。本文结合图4进一步例示和讨论遥控机器人空间设备700。如图4中所例示的,遥控机器人空间设备700可以是若干分开的设备和/或合并若干设备或若干设备的功能的一个设备,诸如命令动作实现设备470、沉浸式反馈传感器475、遥控机器人空间映射设备480、遥控机器人空间网络设备485、以及遥控机器人111。
在上文讨论的示例实施例中,遥控机器人空间设备700可以是例如遥控机器人111和/或命令动作实现设备470,诸如Suitable技术公司的BEAM PRO(TM)和BEAM+(TM)、Double机器人技术公司的DOUBLE(R)、iRobot的AVA(R)等。如上所述,遥控机器人111和/或命令动作实现设备470(和/或另一遥控机器人空间设备700)可从用户空间设备500接收命令动作流109并执行命令动作实现模块1200,从而实现命令动作流109并且导致遥控机器人111沿遥控机器人空间110中的路径114移动。当遥控机器人111沿路径114移动时,沉浸式反馈传感器475(其可以是遥控机器人111和/或分开设备的部分)可进行记录/编码,并将沉浸式反馈流113发送至操作者101和/或用户空间设备500,从而允许操作者101体验由遥控机器人111记录的视频(被描述为由命令动作实现模块1200执行或在命令动作实现模块1200内执行)。
转到图2,操作者201在第一时间T1与第二时间T2之间沿路径206移动、将命令动作流发送至遥控机器人111、指令遥控机器人111移动、导致沿路径214的移动、并从作出响应的遥控机器人111接收沉浸式反馈流(为了方便起见,图2中并未如图1中那样例示出分开的流)。
当操作者201到达或变得邻近于边缘207时(诸如,在T2处),操作者201的位置或移动触发命令动作流的挂起(在下文进一步详细描述)。在命令动作流被挂起的情况下,操作者201可在用户空间205内重新定向,而不发送命令动作流,否则该命令动作流可能导致遥控机器人111以对应路线移动。在此期间,遥控机器人111可停止移动。在图2中以弯曲箭头208例示出操作者201的重新定向。
在T3处,跟随操作者201的重新定向之后,可重新从事将操作者201的移动解释为命令动作指令。操作者201的重新定向可转向180度,但是其可以是更小或更大的度数。可通过例如不再进入边缘或预测不再进入边缘207的重新定向来触发对将操作者201的移动解释为命令动作指令的重新从事。不再进入边缘207的操作者201的新定向和航向可被归一化或建立为相对于遥控机器人111的现有定向和航向的新基线。
在T4(T3之后的时间)处,操作者201随后可沿路径209移动、产生命令动作流的第二部分、指令遥控机器人111沿路径213移动。操作者201可到达同一边缘或另一个边缘,这可以触发命令动作流的挂起,从而允许操作者201重新定向等。因此,操作者201可经由移动映射来控制遥控机器人111,同时操作者201在与遥控机器人空间不同大小的用户空间中移动。这可以避免关于操作者201的感觉的潜在不愉快或甚至有害的分离。
如图2中所例示的,遥控机器人空间210可被分成“单位区域”(单位区域1 215A、单位区域2 215B、单位区域3 215C一直到单位区域N 215D在图2中作为示例被例示出)。单位区域可对应于用户空间205。本文会进一步描述单位区域。
如图3中所例示的,用户空间(诸如,用户空间305)可被分成一个或多个用户区域(所例示的是用户区域1 315A、用户区域2 315B和用户区域N 315C)。用户区域可具有边缘(诸如,用户空间边缘107和边缘207),但可相对于障碍物(诸如,障碍物1 310A和障碍物2310B)创建这些边缘。如上文关于操作者相对于用户空间边缘107和边缘207的移动所讨论的,(诸)操作者可在用户区域内移动,且在操作者到达或变得邻近于用户区域的边缘之际挂起命令动作流。本文会进一步描述将用户空间分成用户区域以及其中的导航。
如图4中所例示的,用户空间设备500可表示和/或包括一个或多个设备,诸如移动映射设备405、沉浸式反馈设备410、空间映射设备415、邻近度传感器420和用户空间网络设备425。
移动映射设备405可以是映射移动并将此类移动转换成被发送至遥控机器人的命令动作的设备,诸如虚拟现实耳机(也关于沉浸式反馈设备410进行讨论)、游戏计算机系统或其他计算机系统(诸如例如,XBOX(R)KINECT(R)控制台)。关于例如移动映射模块900进一步描述了移动到命令动作的转换。沉浸式反馈设备410可以是例如虚拟现实耳机、屏幕、音频输出设备、触觉输出设备等。
空间映射设备415可映射用户空间并且可参与用户空间到用户区域的划分。空间映射设备415可以是沉浸式反馈设备410和/或移动映射设备405的组件。例如,空间映射设备415可以是沉浸式反馈设备410中记录沉浸式反馈设备410和用户的移动(姿态、航向和向量)从而根据用户的移动来映射用户空间的组件。替代地和/或附加地,空间映射设备415可以是的移动映射设备405(诸如,游戏计算机系统或其他计算机系统)的组件,该移动映射设备使用3D扫描仪(诸如例如,XBOX(R)KINECT(R)控制台)来映射用户移动并且还可映射用户所在空间。替代地和/或附加地,空间映射设备415可以是3D扫描仪。空间映射设备415可接收反射或发射的声学、射频、电磁或其他波能量,并且可生成和/或插入例如用于空间的点云。
邻近度传感器420可感测用户或操作者与用户空间或用户区域的边缘的邻近度。邻近度传感器420可以是另一设备(诸如,移动映射设备405、沉浸式反馈设备410、空间映射设备415等)的组件。邻近度传感器420可通过与映射相比的测量位置或者通过其他地理围栏划分(geo-fence demarcation)指示或检测技术来根据例如反射或发射的声学、射频、电磁或其他波能量、磁场感测与固体物体(诸如,墙壁、障碍物)的邻近度。
用户空间网络设备425可以是在用户空间内的组件之间提供局域网服务的网络设备。
如图4中所例示的,遥控机器人空间设备700可表示和/或包括一个或多个设备,诸如命令动作实现设备470、沉浸式反馈传感器475、遥控机器人空间映射设备480、遥控机器人空间网络设备111、以及遥控机器人111。命令动作实现设备470可接收命令动作流并诸如经由命令动作实现模块1200来实现它,从而使遥控机器人移动。沉浸反馈传感器475可记录或编码一个或多个传感器数据,诸如图像或音频,并且可将这些传感器数据传送至操作者和/或用户空间设备500。遥控机器人空间映射设备480可诸如经由遥控机器人空间映射模块来映射遥控机器人空间并且可参与遥控机器人空间到单位区域的划分。遥控机器人空间映射设备480能以与空间映射设备415类似或等同的方式操作。遥控机器人空间网络设备485可以是在遥控机器人空间内的组件之间提供局域网服务的网络设备。本文讨论诸遥控机器人和遥控机器人111。
关于用户空间设备500和遥控机器人空间设备700,由此类设备中的模块提供的这些设备和/或服务中的一个或多个可被组合至此类设备中的另一个中和/或由此类设备中的另一个提供。例如,虚拟现实耳机可用作移动映射设备、沉浸式反馈设备、空间映射设备和/或邻近度传感器等。例如,遥控机器人可用作命令动作实现设备、沉浸式反馈传感器、遥控机器人空间映射设备、遥控机器人空间网络设备等。
如图1、图2和图4所例示的,操作者101、用户空间设备500与遥控机器人111和遥控机器人空间设备700之间的通信可跨网络150和中间服务器160进行或者由网络150和中间服务器160促进。本文讨论了如在操作者101、用户空间设备500与遥控机器人111和遥控机器人空间设备700之间发生的通信。此类通信可跨网络150发生。远离操作者101、用户空间设备500、遥控机器人111和/或遥控机器人空间设备700的一个或多个计算机(诸如,中间服务器160)可提供在本文中被描述为由用户空间设备500、遥控机器人111和遥控机器人空间设备700内的模块提供的模块和/或服务。
关于网络150,此类网络可包括计算机、计算机之间的网络连接、以及用于通过网络连接实现计算机之间的通信的软件例程。网络150的示例包括以太网、因特网和/或无线网络,诸如Wi-Fi、GSM、TDMA、CDMA、EDGE、HSPA、LTE或由无线服务供应商提供或独立于无线服务供应商的其他网络。与网络150的连接可经由Wi-Fi连接。所例示设备之间的通信会话中可涉及多于一个网络。与网络150的连接可能需要计算机执行实现例如无线电话网络中的计算机联网的OSI模型的七层或等效物的软件例程。
本文可作如下讨论:第一计算机连接至第二计算机(诸如遥控机器人空间设备700连接至用户空间设备500)或连接至对应数据存储(诸如连接至用户空间设备数据存储600);应当理解此类连接可连至、通过或经由所述两组件中的另一者(例如,计算机设备与用户空间设备500连接或将数据发送至用户空间设备500的陈述应当被理解为表述计算机设备可与用户空间设备数据存储600连接或将数据发送至用户空间设备数据存储600)。本文对“数据库”的引用应当被理解为等同于“数据存储”。虽然被例示为集成在一个物理单元中的组件,但是计算机和数据库可通过公共(或分开)的物理硬件以及公共(或分开)的逻辑处理器和存储器组件来提供。虽然被讨论为发生在一个计算机设备中,但软件例程、模块、以及软件模块或例程所使用的数据组可通过例如应用虚拟化相对于计算机中的任一者来远程地存储和/或执行。
转到图5,该图例示出示例性用户空间设备(诸如,用户空间设备500)以及其一些数据结构和/或组件的功能框图。如关于图4来讨论的,用户空间设备500可表示和/或包括一个或多个设备,诸如移动映射设备405、沉浸式反馈设备410、空间映射设备415、邻近度传感器420和用户空间网络设备425。此类用户空间设备或诸设备一起被例示为用户空间设备500中的一个设备,但是应该理解,可使用多个分开的此类设备。
如图5所例示的,用户空间设备500包括至少一个处理单元510、用户空间设备存储器550、显示器540和输入545,它们全部经由总线520与网络接口530互连。显示器540可包括例如虚拟现实耳机、投影仪、显示器、屏幕、(诸)听觉输出设备、(诸)触觉输出设备等。本文会进一步讨论输入545。
处理单元510可包括一个或多个通用中央处理单元(“CPU”)以及一个或多个专用图形处理单元(“GPU”)。处理单元510的组件可被操作系统555用于由用户空间设备500执行的模块或例程所需的不同功能。网络接口530可被用于形成与网络150的连接或用于形成与其他计算机的设备-设备连接。网络接口530可由例如用户空间网络设备425使用。
用户空间设备存储器550一般包括随机存取存储器(“RAM”)、只读存储器(“ROM”)和永久大容量存储设备,诸如磁盘驱动器或SDRAM(同步动态随机存取存储器)。用户空间设备存储器550存储用于软件模块或例程(诸如,例如移动映射模块900、用户空间映射模块1000和边缘确定模块1100,以及例如浏览器、电子邮件客户端和服务器例程、客户端应用和数据库应用)的程序代码(在下文中进一步讨论)。用于模块或例程(诸如,用于web服务器和web浏览器)的附加数据组也可存在于用户空间设备500上并由用户空间设备500执行。Web服务器和浏览器模块可提供用于与其他计算机设备交互的接口,例如,通过Web服务器和Web浏览器模块(其能以网页和html文档或文件的形式供应和响应数据和信息)。浏览器和web服务器意在作为一般的用户界面和用户界面实现例程的示例,并且可由用于将信息供应至计算机设备中的设备中以及在计算机设备中的用户界面中呈现信息的等效模块或例程代替(不管是在web浏览器中还是例如在移动设备应用中)。
另外,用户空间设备存储器550还存储操作系统555。可使用与非瞬态计算机可读存储介质595(诸如软盘、磁带、DVD/CD-ROM驱动器、存储卡或其他类似存储介质)相关联的驱动机构(未示出)来将这些软件组件从非瞬态计算机可读存储介质595加载至用户空间设备存储器550中。在一些实施例中,软件组件还可以或替代地经由除驱动机构和计算机可读存储介质595以外的机构(例如,经由网络接口530)来加载。
用户空间设备500还可包括支持输入模态的硬件——输入545。输入545可包括例如听觉输入、视频或图像输入、距离测量输入(诸如,来自测距相机)、惯性传感器和/或陀螺仪传感器输入(其可测量设备或佩戴设备的人在滚动、俯仰和偏航方面的姿态)、罗盘传感器输入、邻近度传感器输入(诸如例如,用户与边缘或另一设备的邻近度)、全球定位系统(“GPS”)输入、以及来自能够产生此类输入的对应设备的类似输入。输入545还可用作显示器540,如在触摸屏显示器的情形中,该触摸屏显示器也用作输入545,并且该触摸屏显示器可对手指或手写笔与输入545的表面的接触形式的输入作出响应。
用户空间设备500还可包括用户空间设备数据存储600或经由总线520与用户空间设备数据存储600通信,如图6中进一步例示出的。在各实施例中,总线520可包括存储区域网络(“SAN”)、高速串行总线和/或经由其他合适的通信技术。在一些实施例中,用户空间设备500可经由网络接口530与用户空间设备数据存储600通信。在一些实施例中,用户空间设备500可包括比本附图中所示的那些组件多得多的组件。然而,不一定要示出所有这些一般常规组件以便公开示例性实施例。
图6是在图5的计算机设备中例示的用户空间设备数据存储600的功能框图。用户空间设备数据存储600的组件是由模块或例程使用的数据组。由模块或例程使用的数据组可由在数字文档或文件中定义的结构中的列中的单元或与其他值分开的值来表示。虽然在本文中被称为个体记录或条目,但是记录可包括多于一个数据库条目。数据库条目可以是、可表示或可编码数字、数字运算符、二进制值、逻辑值、文本、字符串运算符、联接、条件逻辑、测试等等。用户空间设备数据存储600的组件例如是用户空间映射605、沉浸式反馈流610、命令动作流615、输入-命令映射620、姿态航向625和遥控机器人630。本文会在其他附图的讨论中进一步讨论这些记录。总的来说,用户空间映射605记录可以是包括由例如用户空间映射模块1000创建的用户空间映射的记录。总的来说,沉浸式反馈流610可以是包括从遥控机器人空间设备接收的沉浸式反馈流的记录。总的来说,命令动作流615记录可以是命令动作流,包括由移动映射模块900创建并被发送或将要发送至遥控机器人空间设备700的命令动作流的一部分。总的来说,输入-命令映射620记录可由例如移动映射模块900用于将用户和其他输入转换成命令动作流615。总的来说,姿态-航向625记录可包括能由例如移动映射模块900使用的参考姿态和航向以及当前姿态和航向。总的来说,遥控机器人630记录可包括关于诸如通过移动映射模块900和/或命令动作实现模块1200与用户、操作者或用户空间设备500配对的遥控机器人111或遥控机器人空间设备700的信息。
转到图7,本图例示出示例性遥控机器人空间设备(诸如,遥控机器人空间设备700)以及其一些数据结构和/或组件的功能框图。如关于图4所讨论的,遥控机器人空间设备700可表示和/或包括一个或多个设备,诸如命令动作实现设备470、沉浸式反馈传感器475、遥控机器人空间映射设备480、遥控机器人空间网络设备485、以及遥控机器人111。此类遥控机器人空间设备或诸设备一起被例示为遥控机器人空间设备700中的一个设备,但是应该理解,可使用多个分开的此类设备。
如图7所例示的,遥控机器人空间设备700包括至少一个处理单元710、遥控机器人空间设备存储器750、显示器740和输入745,它们全部经由总线720与网络接口730互连。显示器740可包括例如投影仪、显示器、屏幕、虚拟现实耳机、(诸)听觉输出设备、(诸)触觉输出设备等。本文会进一步讨论输入745。
处理单元710可包括一个或多个通用中央处理单元(“CPU”)以及一个或多个专用图形处理单元(“GPU”)。处理单元710的组件可被操作系统755用于由遥控机器人空间设备700执行的模块或例程所需的不同功能。网络接口730可被用于形成与网络150的连接或用于形成与其他计算机的设备-设备连接。网络接口730可由例如遥控机器人空间网络设备485使用。
遥控机器人空间设备存储器750一般包括随机存取存储器(“RAM”)、只读存储器(“ROM”)和永久大容量存储设备,诸如磁盘驱动器或SDRAM(同步动态随机存取存储器)。遥控机器人空间设备存储器750存储用于软件模块或例程(诸如,例如命令动作实现模块1200和遥控机器人空间映射模块1300,以及例如浏览器、电子邮件客户端和服务器例程、客户端应用和数据库应用)的程序代码(在下文中进一步讨论)。用于模块或例程(诸如,用于web服务器和web浏览器)的附加数据组也可存在于遥控机器人空间设备700上并由遥控机器人空间设备500执行。Web服务器和浏览器模块可提供用于与其他计算机设备交互的接口,例如,通过Web服务器和Web浏览器模块(其能以网页和html文档或文件的形式供应和响应数据和信息)。浏览器和web服务器意在作为一般的用户界面和用户界面实现例程的示例,并且可由用于将信息供应至计算机设备中的设备中以及在计算机设备中的用户界面中呈现信息的等效模块或例程代替(不管是在web浏览器中还是例如在移动设备应用中)。
另外,遥控机器人空间设备存储器750还存储操作系统755。可使用与非瞬态计算机可读存储介质795(诸如软盘、磁带、DVD/CD-ROM驱动器、存储卡或其他类似存储介质)相关联的驱动机构(未示出)来将这些软件组件从非瞬态计算机可读存储介质795加载至遥控机器人空间设备存储器750中。在一些实施例中,软件组件还可以或替代地经由除驱动机构和计算机可读存储介质795以外的机构(例如,经由网络接口730)来加载。
遥控机器人空间设备700还可包括支持输入模态的硬件——输入745。输入745可包括例如听觉输入、视频或图像输入、距离测量输入(诸如,来自测距相机)、惯性传感器和/或陀螺仪传感器输入(其可测量遥控机器人在滚动、俯仰和偏航方面的姿态)、罗盘传感器输入、邻近度传感器输入(诸如例如,遥控机器人与边缘或另一设备的邻近度)、全球定位系统(“GPS”)输入、以及来自能够产生此类输入的对应设备的类似输入。输入745还可用作显示器740,如在触摸屏显示器的情形中,该触摸屏显示器也用作输入745,并且该触摸屏显示器可对手指或手写笔等与输入745的表面的接触形式的输入作出响应。
遥控机器人空间设备700还可包括遥控机器人空间设备数据存储800或经由总线720与遥控机器人空间设备数据存储800通信,如图8中进一步例示出的。在各实施例中,总线720可包括存储区域网络(“SAN”)、高速串行总线和/或经由其他合适的通信技术。在一些实施例中,遥控机器人空间设备700可经由网络接口730与遥控机器人空间设备数据存储800通信。在一些实施例中,遥控机器人空间设备700可包括比本附图中所示的那些组件多得多的组件。然而,不一定要示出所有这些一般常规组件以便公开示例性实施例。
图8是在图7的计算机设备中例示的遥控机器人空间设备数据存储800的功能框图。遥控机器人空间设备数据存储800的组件是由模块或例程使用的数据组。由模块或例程使用的数据组可由列中的单元或数字文档或文件中的定义的结构中与其他值分开的值来表示。虽然在本文中被称为个体记录或条目,但是记录可包括多于一个数据库条目。数据库条目可以是、可表示或可编码数字、数字运算符、二进制值、逻辑值、文本、字符串运算符、联接、条件逻辑、测试等等。遥控机器人空间设备数据存储800的组件例如是用户805、遥控机器人空间映射810、用户空间映射815、命令动作流820、姿态航向825、单位区域830、以及沉浸式传感器数据835记录。本文会在其他附图的讨论中进一步讨论这些记录。总的来说,用户805记录可包括关于诸如通过移动映射模块900和/或命令动作实现模块1200与遥控机器人或遥控机器人空间设备500配对的用户、操作者或用户空间设备500的信息。总的来说,遥控机器人空间映射810可以是包括遥控机器人空间映射的记录,该遥控机器人空间映射可由例如遥控机器人空间映射模块1300创建并划分成单位区域830。总的来说,用户空间映射815可以是由遥控机器人空间设备700接收的并且由遥控机器人空间映射模块1300用于将遥控机器人空间划分成单位区域830的用户空间映射。用户空间映射815可包括分区,诸如用户区域。总的来说,命令动作流820可以是由移动映射模块900创建并由遥控机器人空间设备700接收的命令动作流或命令动作流的部分。总的来说,姿态-航向825记录可包括用户和/或遥控机器人111的参考姿态和航向和/或当前姿态和航向。总的来说,单位区域830记录包括遥控机器人区域(诸如,遥控机器人空间映射810)内对应于用户空间和/或用户区域的单元。单位区域830记录可由例如遥控机器人空间映射模块1300创建。总的来说,沉浸式传感器数据835记录可包括经编码传感器数据,诸如来自沉浸式反馈传感器475的数据,该数据可被临时或永久地存储在此类记录中。
图9是例示出根据各实施例的移动映射模块900的示例/算法结构的流程图。如所指出的,移动映射模块900可由例如用户空间设备500(例如,其可以是虚拟现实耳机)执行,以通过在框905-999处执行的操作来提供移动映射服务。在框905处,如果尚未执行,则移动映射模块900将用户或用户空间设备500与遥控机器人进行配对,使得来自移动映射模块900的命令动作流将被发送至遥控机器人并由遥控机器人操作,并且使得来自经配对遥控机器人的沉浸式反馈流将被发送至经配对用户空间设备500并由经配对用户空间设备500输出。无论配对与否,关于遥控机器人的记录可被存储在例如一个或多个遥控机器人630记录中。
在框910处,移动映射模块900可经由用户空间设备700接收、解码沉浸式反馈流并将该沉浸式反馈流输出至用户空间设备500的用户。所接收的沉浸式反馈流可被存储(包括临时存储)在一个或多个沉浸式反馈流610记录中。
诸如在先前未挂起的命令动作流部分内,开循环框920到闭循环框955可针对例如从输入545接收的输入和/或用户输入来迭代。
在决策框925处,可关于用户(或用户空间设备500,诸如虚拟现实耳机)是否位于、邻近于或者被预测为位于或邻近于用户空间边缘(诸如,用户空间边缘107或边缘207)做出确定。参考图11和边缘确定模块1100来例示出关于如何作出此确定的示例。
如果用户位于或邻近于用户空间边缘,则在框945处,移动映射模块900可挂起命令动作流(如果已传送一个命令动作流)。对命令动作流的挂起可涉及中断对命令动作流的传输,其可涉及向遥控机器人发送用于挂起命令动作流的实现的信号,其可涉及中断用户(或用户空间设备)的姿态、航向和向量向命令动作流的转换等。
在决策框930处(其可跟随在决策框925之后),如果确定用户不位于(或不邻近于或被预测成进入)边缘,则移动映射模块900可确定框930是跟随在命令动作流的挂起之后还是处于关于命令动作流部分的开循环框920至闭循环框955的第一迭代。
如果在决策框930处为肯定(或等效的),则移动映射模块900可在框950处建立用户相对于遥控机器人的当前姿态和航向的起始参考姿态(滚动、俯仰和偏航)和航向(罗盘航向)以建立两者之间的等效姿态和航向。其原因可能在于,在框935处,移动映射模块900将用户的姿态和航向转换成针对遥控机器人的命令动作。如果此转换关于此类数据相对于起始姿态和航向的改变,或者如果此转换关于用户的绝对姿态和航向(而不是关于起点的改变),则可选择起点或者可相对于遥控机器人的姿态和航向来确定和归一化用户的姿态和航向(使得向北的用户航向可与向东的遥控机器人航向等效——用户和遥控机器人不必是在同一轴上对齐,只要它们在等效上达成一致)。如果此转换是此类数据相对于此类数据的先前实例的改变(例如,跨非常短的时间间距——毫秒级),则框950的归一化过程可能不是必需的;然而,前述等效上的一致以及仅使用姿态和航向上的改变可能会遭受较大的漂移(例如,存在确定此类改变上的系统误差)。参考姿态和航向以及当前姿态和航向可被存储在例如一个或多个姿态-航向625记录中。
如果在决策框930处为否定(或等效)——例如,其发生在先前的命令动作流部分被挂起或者如果开循环框920至闭循环框955正在仍然当前的、未被挂起的命令动作流部分上迭代的情况下——则移动映射模块900可在框935处将(开循环框920到闭循环框955的)当前输入映射成一个或多个命令动作指令。移动映射模块900可根据映射来完成此操作,将输入映射成命令动作。此类映射可在例如输入-命令映射620中找到。例如,用户在方向(或航向)和速率(向量)上的粗略移动可被映射成对遥控机器人的命令动作指令以使其以粗略的方式在等效的方向上并且以相同、类似或成比例的速率移动。例如,用户或用户的组件(诸如,手或头)的姿态(诸如,滚动、俯仰和偏航)的改变可被映射成对遥控机器人的命令动作指令以用相同、类似或成比例的方式改变遥控机器人或遥控机器人的组件的姿态。将输入映射成命令动作可以是关于控制遥控机器人的设备、结构或表面,诸如关于驱动马达、转向致动器、控制表面致动器等。
在框940处,移动映射模块900可将框935的命令动作指令输出为(诸)离散命令动作指令或者命令动作指令的连续或几乎连续的流的继续。包含命令动作指令的记录可被存储在例如一个或多个命令动作流615记录中。
在闭循环框955处,移动映射模块900可返回至开循环框920以迭代下一输入和/或用户输入。
在结束框999处,移动映射模块900可结束或返回到产生它的过程。
图10是例示出根据各实施例的用户空间映射模块1000的示例/算法结构的流程图。用户空间映射模块1000可例如通过在框1005-1099处执行的操作来映射用户空间。
在框1005处,用户空间映射模块1000可接收空间数据。空间数据可来自各种源,诸如例如移动映射设备405和移动映射模块900、浸式反馈设备410、空间映射设备415等。空间数据可包括如可由GPS、位置和定位服务、惯性和陀螺仪传感器等提供的用户和/或用户空间设备的绝对或相对姿态、航向和向量信息。空间数据还可包括关于用户空间的信息,诸如用户空间的点云,诸如来自空间映射设备415。空间数据还可由映射、建筑物平面图等提供。空间数据可包括关于用户空间中的边缘和障碍物(诸如例如,障碍物1 310A和障碍物2310B)两者的信息。
在框1010处,用户空间映射模块1000可接收用户边缘信号。用户边缘信号是用户正处于或进入用户空间的边缘和/或用户已遭遇障碍物的信号。此类信号可来自用户,例如通过激活按钮、触摸或语音控制等。诸如信号可替代地或附加地来自移动映射设备405、沉浸式反馈设备410、空间映射设备415、邻近度传感器420等。此信号可帮助标识用户空间的边缘和障碍物。
在框1015处,用户空间映射模块1000可基于在框1005和/或1010中接收的信息来映射用户空间。所得用户空间映射可被存储为例如一个或多个用户空间映射605记录。
在框1020处,用户空间映射模块1000可将如可被映射至用户空间映射中的用户空间划分成用户区域(诸如,用户区域1 315A、用户区域2 315B和用户区域N 315C)。划分成用户区域可基于障碍物的存在,这些障碍物可防止或阻止用户在用户空间中的移动。可在框1010处接收的用户边缘信号中和/或在框1005处接收的空间数据中标识障碍物的存在。
在框1025处,用户空间映射模块1000可将用户空间映射传送至另一个设备或模块,诸如遥控机器人和/或例如遥控机器人空间映射模块1300。
在框1099处,用户空间映射模块1000可结束或返回到产生它的过程。
图11是例示出根据各实施例的边缘确定模块1100的示例/算法结构的流程图。边缘确定模块1100可由例如一个或多个用户空间设备500执行,以通过在框1105-1199处执行的操作来提供边缘确定服务。边缘确定模块1100可由另一模块(诸如,由移动映射模块900)调用。
在决策框1105处,边缘确定模块1100可确定是否已接收到指示用户已达到用户空间的边缘的用户边缘信号。用户边缘信号是用户正处于或进入用户空间的边缘的信号。此类信号可来自用户,诸如通过激活按钮、触摸或语音控制等。诸如信号可替代地或附加地来自移动映射设备405、沉浸式反馈设备410、空间映射设备415、邻近度传感器420等。此信号可以独立出现,或者可经由或来自用户空间映射模块1000。
如果在决策框1105处为否定(或等效),并且如果尚未在决策框1105中执行,则在决策框1110处,边缘确定模块1100可确定邻近度传感器420是否已生成用户边缘信号。
如果在决策框1110处为否定(或等效),则边缘确定模块1100可确定用户的预测路径是否进入用户区域的已知边缘。此预测可基于相对于经测量或提供的用户空间内的用户的位置和向量的用户空间的映射(诸如,用户空间映射605)(如,可由移动映射设备405、移动映射模块900、空间映射设备415、用户空间映射模块1000等提供或产生)。此类预测可提供缓冲,使得预测将在用户进入或遭遇边缘之前发生。
如果在决策框1115处为否定(或等效),则在决策框1120处,边缘确定模块1100可确定是否已从遥控机器人接收到指示遥控机器人已到达或邻近于遥控机器人空间中的单位区域边缘的信号。此类信号可由例如命令动作实现模块1200产生。
如果在决策框1105、1110、1115和/或1120处为肯定(或等效),则在框1125处,边缘确定模块1100可输出信号以挂起或指示应挂起命令动作流。本文例如关于移动映射模块900的框945来讨论命令动作流的挂起。
在结束框1199处,边缘确定模块1100可终止和/或返回产生它的过程。
图12是例示出根据各实施例的命令动作实现模块1200的示例/算法结构的流程图。命令动作实现模块1200可由例如遥控机器人空间设备700执行(诸如,由遥控机器人111或者控制遥控机器人111或与遥控机器人111通信的设备(诸如,命令动作实现设备470))以通过在框1205-1299处执行的操作来实现命令动作。
在框1205处,如果尚未执行,则命令动作实现模块1200可将遥控机器人与用户和/或用户空间设备(诸如,沉浸式反馈设备410)配对。关于用户和/或用户空间设备的信息可被存储在例如一个或多个用户805记录中。
在框1210处,命令动作实施模块1200可将经编码传感器数据(诸如,来自沉浸式反馈传感器475的数据)输出到沉浸式反馈设备410和/或由用户空间设备执行的模块。传感器数据可被存储(即使是暂时的)为一个或多个沉浸式传感器数据835记录。在由预期接收者接收之际,沉浸式传感器数据可由沉浸式反馈设备410解码和输出。
开循环框1215到闭循环框1260可针对从例如移动映射模块900接收的每个命令动作和/或命令动作流部分进行迭代。命令动作流的部分可根据例如命令动作流的挂起之间发生的命令动作流的部分(如关于图9的方框945以及图9的开循环框920至关闭循环方框955讨论的)来定义。
在决策框1220处,命令动作实现模块1200可确定当前命令动作部分是否已被诸如来自例如移动映射模块900和/或边缘确定模块1100的信号挂起。此类信号还可由命令动作实现模块1200产生,诸如与框1250(在此进一步讨论)相关。
在决策框1225处,命令动作实现模块1200可确定自开循环框1215至闭循环框1260的最后一次迭代以来是否已开始新命令动作流部分。决策框1225类似于移动映射模块900中的决策框930和框950,因为在决策框1225中的肯定确定(或等效)之际,可关于是否需要建立用户与遥控机器人的等效姿态和航向做出决定,这在本文中也可称为用户与遥控机器人的相应姿态和航向的“归一化”。例如在关于新命令动作流部分的开循环框1215至闭循环框1260的第一次迭代中,这可能是需要的。如果命令动作流不描述绝对姿态和航向或相对于起点的姿态和航向,而仅仅是姿态和航向的改变,则可能不需要这样做。
如果在决策框1225(或等效物)处为肯定,则在框1230处,命令动作实现模块1200可归一化用户与遥控机器人的相应姿态和航向。
在框1235处,命令动作实现模块1200可诸如从移动映射模块900接收命令动作、命令动作流和/或命令动作流部分。
在框1240处,命令动作实现模块1200可诸如通过使马达、致动器等以与用户空间中的用户的运动相对应的方式参与移动遥控机器人来实现框1235的命令动作。
在决策框1245处,诸如跟随在框1240的命令动作流的实现之后,命令动作实现模块1200可确定遥控机器人是否已退出单位区域。这可通过参考单位区域830记录以及遥控机器人在遥控机器人空间中的已知的、经计算的或经确定的位置来执行。
如果在决策框1245处为肯定(或等效的),则在框1250处,命令动作实现模块1200可挂起当前命令动作流部分,这可包括向用户空间设备500和/或移动映射模块900和/或边缘确定模块1100发送信号。关于框945来详细讨论命令动作流的挂起。
在框1255处,命令动作实现模块1200可传送预测遥控机器人要移动至的下一单位区域的标识符。
在框1260处,命令动作实现模块1200可返回至框1215以在下一个命令动作流部分上迭代。
在框1299处,其可在中断命令动作实现模块1200的条件(诸如,用于解除遥控机器人与用户的配对的指令、错误等)发生之际发生,命令动作实现模块1200可结束和/或可返回至产生它的过程。
图13是例示出根据各实施例的遥控机器人空间映射模块1300的示例/算法结构的流程图。遥控机器人空间映射模块1300可由例如遥控机器人空间设备700执行(诸如,由命令动作实现设备470、遥控机器人空间映射设备480和/或遥控机器人111执行),以通过执行框1305-1399处的操作来提供遥控机器人空间映射服务。
在框1305处,遥控机器人空间映射模块1300可接收针对遥控机器人空间的空间数据。空间数据可来自各种源,诸如例如命令动作实现设备470、命令动作实现模块1200、浸式反馈传感器475、遥控机器人空间映射设备485等。空间数据可包括如可由GPS、位置和定位服务、惯性和陀螺仪传感器等提供的遥控机器人和/或遥控机器人空间设备的绝对或相对姿态、航向和向量信息。空间数据还可包括关于遥控机器人空间的信息,诸如遥控机器人空间的点云,诸如来自遥控机器人空间映射设备480。空间数据还可由映射、建筑物平面图等提供。
在框1310处,遥控机器人空间映射模块1300可基于在框1305中接收的信息来映射遥控机器人空间。所得遥控机器人空间映射可被存储为例如一个或多个遥控机器人空间映射810记录。
在框1315处,遥控机器人空间映射模块1300可在用户空间中接收用户空间和/或用户区域的映射。这可从例如用户空间映射模块1000接收。此映射可以对应于图3中所例示的信息。用户空间映射(和/或用户空间映射中的用户区域)可在遥控机器人空间设备中被存储为一个或多个用户空间映射815记录。
在框1320处,遥控机器人空间映射模块1300可基于用户空间的映射和/或基于用户空间中的用户区域(其也可以在用户空间的映射中)将遥控机器人空间(诸如,遥控机器人空间映射810记录中的遥控机器人空间)划分成单位区域(诸如,单位区域1 215A、单位区域2 215B、单位区域3 215C)。此框的目的是标识遥控机器人空间中的单位区域,该单位区域对应于用户空间或用户空间中的用户区域。单位区域可被存储为例如一个或多个单位区域830记录。
在框1399处,遥控机器人空间映射模块1300可结束或返回到产生它的过程。
如上所述,用户因此可在与遥控机器人空间不同大小的用户空间中移动,用户的移动可由用户空间设备(诸如,沉浸式反馈设备)进行移动映射,且所得命令动作例如作为命令动作流的第一部分而被发送至遥控机器人。遥控机器人可向用户和用户空间设备提供沉浸式反馈;用户可利用附加移动来响应沉浸式反馈,该附加移动产生作为命令动作流的部分而被发送至遥控机器人的更多命令动作。在用户移动进入或邻近于用户空间边缘之际,可挂起、暂停或以其他方式停止命令动作流。用户可在用户空间中重新定向,然后可继续移动,且重新从事移动映射并且恢复命令动作流的第二部分的传输。以这种方式,即使用户空间和遥控机器人空间可能不是相同的大小,用户也可控制遥控机器人。可避免沉浸式反馈流中可能与用户空间的用户体验冲突或不一致的迷失方向或其他不期望的反馈。
可以利用一种或多种计算机可用或计算机可读介质的任何组合。计算机可用或计算机可读介质可以是例如但不限于,电子、磁、光、电磁、红外或半导体系统、装置、设备或传播介质。计算机可读介质的更具体的示例(非排他性列表)将包括下述项:具有一条或多条线的电连接件、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式压缩盘只读存储器(CD-ROM)、光存储设备、诸如支持互联网或内联网的传输介质的传输介质或磁存储设备。注意,计算机可用或计算机可读介质甚至可以是在其上打印有程序的纸张或另一合适的介质,因为程序可以经由例如对纸张或其他介质的光学扫描而被电子地捕获,随后被编译、被解释,或以其他合适的方式被处理,如有必要,并随后被存储在计算机存储器中。在本文档的上下文中,计算机可用或计算机可读介质可以是可以包含、存储、通信、传播、或传输程序以供指令执行系统、装置或设备使用或结合指令执行系统、装置或设备一起使用的任何介质。计算机可用介质可包括被传播的数据信号与随其具体化在基带中或作为载波的一部分的计算机可用程序代码。可使用任何合适的介质来传送该计算机可用程序代码,该任何合适的介质包括但不限于无线、有线、光纤缆线、RF等。
用于执行本公开的操作的计算机程序代码可以一种或多种编程语言的任意组合来编写,包括面向对象编程语言(例如Java、Smalltalk、C++等等)以及常规程序化编程语言(诸如“C”编程语言或类似的编程语言)。该程序代码可完全在用户的计算机上执行,部分地在用户的计算机上执行,作为独立式软件包执行,部分地在用户的计算机上并且部分地在远程计算机上执行,或完全在远程计算机或服务器上执行。在后一场景中,可通过任何类型的网络(包括局域网(LAN)或广域网(WAN))将远程计算机连接至用户的计算机,或可作出至外部计算机的该连接(例如,通过使用互联网服务提供商的互联网)。
参照根据本公开的各实施例的流程图说明和/或方法、装备(系统)和计算机程序产品的框图描述了本公开。将会理解,可由计算机程序指令来实现流程图说明和/或框图的每一个框以及流程图说明和/或框图中的框的组合。可将这些计算机程序指令提供给通用计算机、专用计算机、或其他可编程数据处理装置的处理器来生产机器,使得经由计算机或其他可编程数据处理装置的处理器执行的这些指令创建用于实现流程图和/或框图的一个或多个框中所指定的功能/动作的装置。
也可将这些计算机程序指令存储在可指示计算机或其他可编程数据处理装置按照特定方式运作的计算机可读介质中,使得存储在该计算机可读介质中的这些指令生产制品,该制品包括实现流程图和/或框图的一个或多个框中所指定的功能/动作的指令装置。
也可将这些计算机程序指令加载到计算机或其他可编程数据处理装置上以使一系列操作步骤在该计算机或其他可编程装置上执行来产生计算机实现的进程,使得在该计算机或其他可编程装置上执行的这些指令提供用于实现流程图和/或框图的一个或多个框中所指定的功能/动作的进程。
多个图中的流程图和框图示出根据本公开的各实施例的系统、方法和计算机程序产品的可能的实现的架构、功能和操作。在这方面,流程图或框图中的每一个框可表示包括用于实现所指定的逻辑功能的一条或多条可执行指令的代码模块、代码段或代码部分。还应当注意,在一些替代实现中,框中所标注的多个功能可不按图中所标注的顺序发生。例如,取决于所涉及的功能,实际上可基本上同时执行连续地示出的两个框,或者有时可按相反的顺序来执行这些框。也将注意,可由执行所指定功能或动作的专用基于硬件的系统或专用硬件和计算机指令的多种组合来实现框图和/或流程图说明中的每一个框和框图和/或流程图说明中的多个框的组合。
可将实施例实现为计算机进程、计算机系统或实现为制品,诸如计算机可读介质的计算机程序产品。计算机程序产品可以是计算机存储介质,该计算机存储介质可由计算机系统读取并对计算机程序指令编码以执行计算机进程。
所附权利要求书中的所有装置或步骤以及功能元件的对应的结构、材料、动作及等效物旨在包括用于结合明确要求其权利的其他要求保护的元件来执行功能的任何结构、材料或动作。已出于说明和描述的目的呈现了本公开的描述,但是该描述不旨在是穷举性的,也不限于按所公开形式的本公开。许多修改和变型对本领域普通技术人员将是显而易见的,而不背离本公开的范围和精神。选择并描述实施例是为了最好地解释本公开的原理和实际应用,并且使其他本领域普通技术人员能够理解对具有各种修改的实施例的公开适用于所构想的特定使用。
因此,已描述了本公开的各种示例实施例,它们包括但不限于:
示例1.一种用于在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互的装置,包括:计算机处理器和存储器;耦合至计算机处理器的移动映射模块;其中移动映射模块用于向远程遥控机器人提供命令动作流,其中为了提供命令动作流,移动映射模块将把用户区域内的人类用户的第一姿态和向量转换成命令动作流的第一部分,并且,跟随在命令动作挂起之后,检测人类用户的第二姿态和向量并将人类用户的第二姿态和向量转换成命令动作流的第二部分;并且命令动作挂起由人类用户与用户区域的边缘的邻近度触发。
示例2.根据示例1的装置,其中根据以下中的至少一者来确定人类用户与用户区域的边缘的邻近度:来自人类用户的信号、来自邻近度传感器的信号、基于人类用户的第一姿态和向量以及用户区域的映射的人类用户的预测路径、或者远程遥控机器人与远程遥控机器人的远程空间的单位区域的邻近度。
示例3.根据示例2的装置,进一步包括人类用户空间映射模块,并且其中基于第一姿态和向量以及用户区域的映射的预测路径由人类用户空间映射模块预测。
示例4.根据示例3的装置,其中人类用户空间映射模块进一步用于映射用户区域。
示例5.根据示例4的装置,其中人类用户空间映射模块将根据从移动映射模块、沉浸式反馈模块以及空间映射传感器中的一者接收的空间数据来映射用户区域。
示例6.根据示例2的装置,其中来自人类用户的信号包括语音命令和来自物理按钮的命令中的至少一者。
示例7.根据示例2的装置,其中邻近度传感器是沉浸式反馈设备或用户区域中的至少一者的组件。
示例8.根据示例1的装置,进一步包括沉浸式反馈模块,该沉浸式反馈模块用于向人类用户输出沉浸式反馈流,其中向人类用户输出沉浸式反馈流包括从远程遥控机器人接收沉浸式反馈流并将沉浸式反馈流输出至人类用户的虚拟现实耳机。
示例9.根据示例1至8中任一项的装置,进一步包括远程遥控机器人单位区域映射模块,该远程遥控机器人单位区域映射模块用于将远程遥控机器人的远程空间划分成一个或多个单位区域,其中将远程遥控机器人的远程空间划分成一个或多个单位区域包括将远程遥控机器人的远程空间划分成对应于用户区域的一个或多个单位区域。
示例10.根据示例1至8中任一项的装置,其中命令动作挂起包括以下中的至少一者:对远程遥控机器人的用于忽略命令动作流的命令、对移动映射模块的用于停止将第一姿态和向量转换成命令动作流的命令、或者对将命令动作流的第一部分传输至远程遥控机器人的中止。
示例11.根据示例1的装置,其中移动映射模块将确定第二姿态和向量不朝向用户区域的边缘。
示例12.根据示例1至8中任一项的方法,其特征在于,其中移动映射模块将相对于远程遥控机器人的姿态和向量来归一化人类用户的第一姿态和向量以及第二姿态和向量。
示例13.根据示例1至8中任一项的装置,其中第一姿态和向量以及第二姿态和向量包括滚动、俯仰和偏航,并且其中第一姿态和向量以及第二姿态和向量包括平移通过空间。
示例14.根据示例1至8中任一项的装置,其中边缘包括障碍物或边界中的至少一者。
示例15.一种用于在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互的装置,包括:计算机处理器和存储器;耦合至计算机处理器的命令动作实现模块;其中命令动作实现模块用于实现命令动作流,其中为了实现命令动作流,命令动作实现模块将从远程人类用户接收命令动作流并且将在遥控机器人的姿态和向量中实现命令动作流;其中当人类用户邻近于用户区域的边缘时,来自人类用户的命令动作流将被挂起。
示例16.根据示例15的装置,进一步包括耦合至计算机处理器的沉浸式反馈传感器模块,其中沉浸式反馈传感器模块用于向远程人类用户提供沉浸式反馈流,其中为向远程人类用户提供沉浸式反馈流,沉浸式反馈传感器模块将对沉浸式反馈流进行编码并且将把沉浸式反馈流传送至远程人类用户的虚拟现实耳机。
示例17.根据示例15的装置,并且进一步包括耦合至计算机处理器的遥控机器人单位区域映射模块,该遥控机器人单位区域映射模块用于映射遥控机器人的空间,其中为了映射遥控机器人的空间,遥控机器人单位区域映射模块将接收用户区域的映射,并将遥控机器人的空间划分成对应于用户区域的一个或多个单位区域。
示例18.根据示例17的装置,其中遥控机器人空间映射模块将根据从沉浸式反馈传感器模块、命令动作实现模块以及空间映射传感器中的一者接收的空间数据来映射用户区域。
示例19.根据示例17的装置,其中遥控机器人单位区域映射模块将向远程人类用户的计算机设备传送遥控机器人处于一个或多个单位区域中的单位区域的边缘处的指示符。
示例20.根据示例19的装置,其中遥控机器人处于一个或多个单位区域中的单位区域的边缘处的指示符将挂起来自人类用户的命令动作流。
示例21.一种在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互的计算机实现的方法,包括:将用户区域内的人类用户的第一姿态和向量转换成命令动作流的第一部分并将命令动作流的第一部分传送至远程遥控机器人;检测命令动作流的第一部分的挂起;检测人类用户的第二姿态和向量;将人类用户的第二姿态和向量转换成命令动作流的第二部分;以及将命令动作流的第二部分传送至远程遥控机器人。
示例22.根据示例21的方法,其中命令动作流的挂起由人类用户与用户区域的边缘的邻近度触发。
示例23.根据示例22的方法,其中根据以下中的至少一者来确定人类用户与用户区域的边缘的邻近度:对来自人类用户的信号的接收、对来自邻近度传感器的信号的接收、对来自远程遥控机器人的关于远程遥控机器人与远程遥控机器人的远程空间的单位区域的邻近度的信号的接收、或者基于第一姿态和向量以及用户区域的映射而预测到人类用户到用户区域的边缘的路径。
示例24.根据示例23的方法,其中从人类用户接收的信号包括语音命令和来自物理按钮的命令中的至少一者。
示例25.根据示例23的方法,其中邻近度传感器是沉浸式反馈设备或用户区域中的至少一者的组件。
示例26.根据示例21的方法,进一步包括根据空间数据来映射用户区域,其中从人类用户的沉浸式反馈设备以及空间映射传感器中的至少一者接收空间数据。
示例27.根据示例26的方法,进一步包括将用户区域的映射发送至远程遥控机器人。
示例28.根据示例21至示例27中任一项的方法,进一步包括确定第二姿态和向量不朝向用户区域的边缘。
示例29.根据示例21至示例27中任一项的方法,进一步包括向人类用户的虚拟现实耳机输出来自远程遥控机器人的沉浸式反馈流。
示例30.根据示例21至27中任一项的方法,进一步包括相对于远程遥控机器人的姿态和向量来归一化人类用户的第一姿态和向量以及第二姿态和向量。
示例31.根据示例21至27中的方法,进一步包括通过以下中的至少一者来挂起命令动作流:向远程遥控机器人传送用于忽略命令动作流的第一部分的命令、停止第一姿态和向量向命令动作流的第一部分的转换、或者中止将所命令动作流的第一部分传送至远程遥控机器人。
示例32.根据示例21至27中任一项的方法,其中第一姿态和向量以及第二姿态和向量包括滚动、俯仰和偏航,并且其中第一姿态和向量以及第二姿态和向量包括平移通过空间。
示例33.根据示例21至27中任一项的方法,进一步包括将远程遥控机器人的远程空间划分成对应于用户区域的一个或多个单位区域。
示例34.根据示例21至27中任一项的方法,其中边缘包括障碍物或边界中的至少一者。
示例35.一种在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互的方法,包括:从远程人类用户接收命令动作流并在遥控机器人的姿态和向量中实现命令动作流;其中当人类用户邻近于用户区域的边缘时,来自人类用户的命令动作流将被挂起。
示例36.根据示例35的方法,进一步包括向远程人类用户的虚拟现实耳机传送来自遥控机器人的沉浸式反馈传感器的沉浸式反馈流。
示例37.根据示例35的方法,进一步包括映射遥控机器人的空间、接收用户区域的映射、以及将遥控机器人的空间划分成对应于用户区域的一个或多个单位区域。
示例38.根据示例37的方法,其中映射遥控机器人的空间根据从人类用户的沉浸式反馈传感器以及空间映射传感器中的至少一者接收的空间数据来映射。
示例39.根据示例37的方法,进一步包括向远程人类用户的计算机设备传送遥控机器人处于一个或多个单位区域中的单位区域的边缘处的信号。
示例40.根据示例39的方法,其中遥控机器人处于一个或多个单位区域中的单位区域的边缘处的信号将挂起命令动作流。
示例41.一种用于在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互的设备,包括:用于将用户区域内的人类用户的第一姿态和向量转换成命令动作流的第一部分的装置;用于将命令动作流的第一部分传送至远程遥控机器人的装置;用于检测命令动作流的第一部分的挂起的装置;用于检测人类用户的第二姿态和向量的装置;用于将人类用户的第二姿态和向量转换成命令动作流的第二部分的装置;以及用于将命令动作流的第二部分传送至远程遥控机器人的装置。
示例42.根据示例41的设备,其中用于检测命令动作流的挂起的装置包括确定人类用户与用户区域的边缘的邻近度的装置。
示例43.根据示例42的设备,其特征在于,用于确定人类用户与用户区域的边缘的邻近度的装置包括:用于从人类用户接收信号的装置、用于从邻近度传感器接收信号的装置、用于从远程遥控机器人接收关于远程遥控机器人与远程遥控机器人的远程空间的单位区域的邻近度的信号的装置、或者用于基于第一姿态和向量以及用户区域的映射而预测到人类用户到用户区域的边缘的路径的装置。
示例44.根据示例43的设备,进一步包括用于将语音命令和来自物理按钮的命令中的至少一者确定为从人类用户接收的信号的装置。
示例45.根据示例41的设备,进一步包括用于根据空间数据来映射用户区域的装置,并且进一步包括用于从人类用户的沉浸式反馈设备以及空间映射传感器中的至少一者接收空间数据的装置。
示例46.根据示例45的设备,进一步包括用于将用户区域的映射发送至远程遥控机器人的装置。
示例47.根据示例41至示例46中任一项的设备,进一步包括用于确定第二姿态和向量不朝向用户区域的边缘的装置。
示例48.根据示例41至示例46中任一项的设备,进一步包括用于向人类用户的虚拟现实耳机输出来自远程遥控机器人的沉浸式反馈流的装置。
示例49.根据示例41至46中任一项的设备,进一步包括用于相对于远程遥控机器人的姿态和向量来归一化人类用户的第一姿态和向量以及第二姿态和向量的装置。
示例50.根据示例41至46中任一项的设备,进一步包括用于通过以下中的至少一者来挂起命令动作流的装置:用于向远程遥控机器人传送用于忽略命令动作流的第一部分的命令的装置、用于停止第一姿态和向量向命令动作流的第一部分的转换的装置、或者用于中止将所命令动作流的第一部分传送至远程遥控机器人的装置。
示例51.根据示例41至46中任一项的装置,其中第一姿态和向量以及第二姿态和向量包括滚动、俯仰和偏航,并且其中第一姿态和向量以及第二姿态和向量包括平移通过空间。
示例52.根据示例41至46中任一项的设备,进一步包括用于将远程遥控机器人的远程空间划分成对应于用户区域的一个或多个单位区域的装置。
示例53.根据示例41至46中任一项的装置,其中边缘包括障碍物或边界中的至少一者。
示例54.一种用于在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互的设备,包括:用于从远程人类用户接收命令动作流的装置以及用于在遥控机器人的姿态和向量中实现命令动作流的装置;以及用于在人类用户邻近于用户区域的边缘时挂起来自人类用户的命令动作流的装置。
示例55.根据示例23的设备,进一步包括用于向远程人类用户的虚拟现实耳机提供沉浸式反馈流的装置;并且进一步包括用于映射遥控机器人的空间的装置、用于接收用户区域的映射的装置、以及用于将遥控机器人的空间划分成对应于用户区域的一个或多个单位区域的装置。
示例56.根据示例24的设备,进一步包括用于向远程人类用户的计算机设备传送遥控机器人处于一个或多个单位区域中的单位区域的边缘处的指示符的装置,其中遥控机器人处于一个或多个单位区域中的单位区域的边缘处的指示符将挂起命令动作流。
示例57.一种或多种计算机可读介质,包括指令,响应于计算设备的一个或多个处理器对指令的执行,指令使计算设备通过以下操作来在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互:通过将用户区域内的人类用户的第一姿态和向量转换成命令动作流的第一部分,并且跟随在命令动作挂起之后,确定人类用户的第二姿态和向量不朝向用户区域的边缘并将人类用户的第二姿态和向量转换成命令动作流的第二部分来向远程遥控机器人提供命令动作流;检测由人类用户与用户区域的边缘的邻近度造成的命令动作挂起,并且其中边缘包括障碍物或边界中的至少一者。
示例58.根据示例57的计算机可读介质,其中根据对来自人类用户的信号的接收、对来自邻近度传感器的信号的接收、对来自远程遥控机器人的关于远程遥控机器人与远程遥控机器人的远程空间的单位区域的邻近度的信号的接收、或者基于第一姿态和向量以及用户区域的映射而预测到人类用户到用户区域的边缘的路径中的至少一者来确定人类用户与用户区域的边缘的邻近度,其中从人类用户接收的信号包括语音命令和来自物理按钮的命令中的至少一者。
示例59.一种或多种计算机可读介质,包括指令,响应于计算设备的一个或多个处理器对指令的执行,指令使计算设备通过以下操作来在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互:接收命令动作流;在遥控机器人的姿态和向量中实现命令动作流;其中当人类用户邻近于用户区域的边缘时,来自人类用户的命令动作流将被挂起,其中边缘包括障碍物或边缘中的至少一者。
示例60.根据示例59的计算机可读介质,进一步包括映射遥控机器人的空间、接收用户区域的映射、将遥控机器人的空间划分成对应于用户区域的一个或多个单位区域、以及向远程人类用户的计算机设备传送遥控机器人处于一个或多个单位区域中的单位区域的边缘的信号,其中遥控机器人处于一个或多个单位区域中的单位区域的边缘的信号将挂起命令动作流。
上文的详细描述不旨在穷举或将本公开限制为以上公开的精确形式。尽管为了说明,在上文描述了本公开的具体实施例以及示例,但是,如相关领域技术人员所理解,在本系统的范围内,各种等效的修改是可能的。例如,虽然以给定次序呈现过程或块,但是替代实施例能以不同的次序执行具有操作的例程,或者采用具有块的系统,并且可删除、移动、添加、细分、组合、和/或修改一些过程或块。虽然有时将过程或块示出为串行执行,但是这些过程或块可替代地并行执行,或者可在不同时间执行。此外,本文提到的任何特定数字仅是示例;替代实施方式可采用不同的值或范围。

Claims (25)

1.一种用于基于移动映射的遥现交互的装置,包括:
用户空间设备中的计算机处理器和存储器;
耦合至所述计算机处理器的移动映射模块;
所述移动映射模块用于向远程遥控机器人提供命令动作流,其中为了提供所述命令动作流,所述移动映射模块将把用户区域内的人类用户的第一姿态和向量转换成所述命令动作流的第一部分,并且,跟随在命令动作挂起之后,确定所述人类用户的第二姿态和向量不朝向所述用户区域的边缘并将所述人类用户的所述第二姿态和向量转换成所述命令动作流的第二部分;
所述命令动作挂起将由所述人类用户与所述用户区域的边缘的邻近度触发,以及
其中所述边缘包括障碍物或边界中的至少一者。
2.如权利要求1所述的装置,其特征在于,进一步包括耦合至所述移动映射模块的边缘确定模块,所述边缘确定模块用于确定所述人类用户相对于所述用户区域的边缘的邻近度,其中为了确定所述人类用户相对于所述用户区域的邻近度,所述边缘确定模块将根据以下中的至少一项来确定所述人类用户的邻近度:来自所述人类用户的信号、来自邻近度传感器的信号、基于所述人类用户的所述第一姿态和向量以及所述用户区域的映射的所述人类用户的预测路径、或者所述远程遥控机器人与所述远程遥控机器人的远程空间的单位区域的邻近度。
3.如权利要求2所述的装置,其特征在于,进一步包括耦合至所述计算机处理器的人类用户空间映射模块,所述人类用户空间映射模块用于映射所述用户区域,其中为了映射所述用户区域,所述人类用户空间映射模块将根据从所述移动映射模块、沉浸式反馈模块以及空间映射传感器中的一者接收的空间数据来映射所述用户区域,并且其中基于所述第一姿态和向量以及所述用户区域的所述映射的所述人类用户的所述预测路径由人类用户空间映射模块来预测,和/或进一步包括耦合至所计算机处理器的沉浸式反馈模块,所述沉浸式反馈模块用于向所述人类用户输出沉浸式反馈流,所述沉浸式反馈模块将从所述远程遥控机器人接收所述沉浸式反馈流并将所述沉浸式反馈流输出至所述人类用户的虚拟现实耳机。
4.如权利要求1至3中任一项所述的装置,其特征在于,进一步包括耦合至所述计算机处理器的远程遥控机器人单位区域映射模块,所述远程遥控机器人单位区域映射模块用于将所述远程遥控机器人的远程空间划分成一个或多个单位区域,其中为了将所述远程遥控机器人的所述远程空间划分成一个或多个单位区域,所述远程遥控机器人单位区域映射模块将把所述远程遥控机器人的所述远程空间划分成对应于所述用户区域的一个或多个单位区域。
5.一种用于基于移动映射的遥现交互的装置,包括:
遥控机器人中的计算机处理器和存储器;
耦合至所述计算机处理器的命令动作实现模块;
所述命令动作实现模块用于实现命令动作流,其中为了实现所述命令动作流,所述命令动作实现模块将从远程人类用户接收所述命令动作流并且将在所述遥控机器人的姿态和向量中实现所述命令动作流;
其中当所述人类用户邻近于所述用户区域的边缘时,来自所述人类用户的命令动作流将被挂起。
6.如权利要求5所述的装置,其特征在于,进一步包括耦合至所述计算机处理器的沉浸式反馈传感器模块,所述沉浸式反馈传感器模块用于向所述远程人类用户提供沉浸式反馈流,其中为了向所述远程人类用户提供所述沉浸式反馈流,所述沉浸式反馈传感器模块将从沉浸式反馈传感器接收沉浸式反馈流并且将对所述沉浸式反馈流进行编码并且将把所述沉浸式反馈流传送至所述远程人类用户的虚拟现实耳机;并且进一步包括耦合至所述计算机处理器的遥控机器人单位区域映射模块,所述遥控机器人单位区域映射模块用于映射所述遥控机器人的空间,其中为了映射所述遥控机器人的空间,所述遥控机器人单位区域映射模块将接收所述用户区域的映射,并将所述遥控机器人的空间划分成对应于所述用户区域的一个或多个单位区域;其中所述遥控机器人单位区域映射模块将根据从所述沉浸式反馈传感器模块、所述命令动作实现模块以及空间映射传感器中的至少一者接收的空间数据来映射所述遥控机器人的空间,和/或其中所述遥控机器人单位区域映射模块将向所述远程人类用户的计算机设备传送所述遥控机器人处于所述一个或多个单位区域中的单位区域的边缘处的指示符,其中所述遥控机器人处于所述一个或多个单位区域中的所述单位区域的边缘处的所述指示符将挂起来自所述人类用户的所述命令动作流。
7.一种在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互的计算机实现的方法,包括:
向人类用户的虚拟现实耳机输出来自所述远程遥控机器人的沉浸式反馈流;
将用户区域内的所述人类用户的第一姿态和向量转换成所述命令动作流的第一部分并将所述命令动作流的所述第一部分传送至所述远程遥控机器人;
检测由所述人类用户与所述用户区域的边缘的邻近度触发的对所述命令动作流的所述第一部分的挂起;
确定所述人类用户的第二姿态和向量不朝向所述用户区域的边缘;
将所述人类用户的第二姿态和向量转换成所述命令动作流的第二部分;以及
将所述命令动作流的所述第二部分传送至所述远程遥控机器人;
其中所述边缘包括障碍物或边界中的至少一者。
8.如权利要求7所述的方法,其特征在于,根据对来自所述人类用户的信号的接收、对来自邻近度传感器的信号的接收、对来自所述远程遥控机器人的关于所述远程遥控机器人与所述远程遥控机器人的远程空间的单位区域的邻近度的信号的接收、或者基于所述第一姿态和向量以及所述用户区域的映射而预测到所述人类用户到所述用户区域的边缘的路径中的至少一者来确定所述人类用户与所述用户区域的边缘的邻近度,其中从所述人类用户接收的所述信号包括语音命令和来自物理按钮的命令中的至少一者。
9.如权利要求7所述的方法,其特征在于,进一步包括根据空间数据来映射所述用户区域,其中从所述人类用户的沉浸式反馈设备以及空间映射传感器中的至少一者接收所述空间数据,并且将所述用户区域的映射传送至所述远程遥控机器人。
10.如权利要求7至9中任一项所述的方法,其特征在于,进一步包括相对于所述远程遥控机器人的姿态和向量来归一化所述人类用户的所述第一姿态和向量以及所述第二姿态和向量。
11.如权利要求7至9中任一项所述的方法,其特征在于,进一步包括通过以下中的至少一者来挂起所述命令动作流:向所述远程遥控机器人传送用于忽略所述命令动作流的所述第一部分的命令、停止所述第一姿态和向量向所述命令动作流的所述第一部分的转换、或者中止将所命令动作流的所述第一部分传送至所述远程遥控机器人。
12.如权利要求7至9中任一项所述的方法,其特征在于,进一步包括将所述远程遥控机器人的远程空间划分成对应于所述用户区域的一个或多个单位区域。
13.一种在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互的方法,包括:
从所述远程人类用户接收命令动作流并在所述遥控机器人的姿态和向量中实现所述命令动作流;
向所述远程人类用户的虚拟现实耳机传送来自所述遥控机器人中的沉浸式反馈传感器的沉浸式反馈流;
其中当所述人类用户邻近于所述用户区域的边缘时,来自所述人类用户的命令动作流将被挂起。
14.如权利要求13所述的方法,其特征在于,进一步包括根据从所述沉浸式反馈传感器和空间映射传感器中的至少一者接收的空间数据来映射所述遥控机器人的空间、接收所述用户区域的映射、以及将所述遥控机器人的空间划分成对应于所述用户区域的一个或多个单位区域。
15.如权利要求14所述的方法,其特征在于,进一步包括向所述远程人类用户的计算机设备传送所述遥控机器人处于所述一个或多个单位区域中的单位区域的边缘处的信号,其中所述遥控机器人处于所述一个或多个单位区域中的所述单位区域的边缘处的信号挂起所述命令动作流。
16.一种用于在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互的计算机设备,包括:
用于向所述人类用户的虚拟现实耳机输出来自所述远程遥控机器人的沉浸式反馈流的装置;
用于将用户区域内的所述人类用户的第一姿态和向量转换成所述命令动作流的第一部分的装置;
用于将所述命令动作流的所述第一部分传送至所述远程遥控机器人的装置;
用于通过确定所述人类用户与所述用户区域的边缘的邻近度来检测所述命令动作流的所述第一部分的挂起的装置;
用于确定所述人类用户的第二姿态和向量不朝向所述用户区域的边缘的装置,其中所述边缘包括障碍物或边界中的至少一者;
用于将所述人类用户的第二姿态和向量转换成所述命令动作流的第二部分的装置;以及
用于将所述命令动作流的所述第二部分传送至所述远程遥控机器人的装置。
17.如权利要求16所述的设备,其特征在于,用于确定所述人类用户与所述用户区域的边缘的邻近度的装置包括以下中的至少一者:用于从所述人类用户接收信号的装置、用于从邻近度传感器接收信号的装置、用于从所述远程遥控机器人接收关于所述远程遥控机器人与所述远程遥控机器人的远程空间的单位区域的邻近度的信号的装置、或者用于基于所述第一姿态和向量以及所述用户区域的映射而预测到所述人类用户到所述用户区域的边缘的路径的装置。
18.如权利要求16所述的设备,其特征在于,进一步包括用于根据空间数据来映射所述用户区域的装置,进一步包括用于从所述人类用户的沉浸式反馈设备以及空间映射传感器中的至少一者接收所述空间数据的装置,并且进一步包括用于将所述用户区域的映射传送至所述远程遥控机器人的装置。
19.如权利要求16至18中任一项所述的设备,其特征在于,进一步包括用于通过以下中的至少一者来挂起所述命令动作流的装置:用于向所述远程遥控机器人传送用于忽略所述命令动作流的所述第一部分的命令的装置、用于停止所述第一姿态和向量向所述命令动作流的所述第一部分的转换的装置、或者用于中止将所命令动作流的所述第一部分传送至所述远程遥控机器人的装置。
20.一种用于在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互的设备,包括:
用于从所述远程人类用户接收命令动作流的装置以及用于在所述遥控机器人的姿态和向量中实现所述命令动作流的装置;以及
用于在所述人类用户邻近于所述用户区域的边缘时挂起来自所述人类用户的命令动作流的装置。
21.如权利要求20所述的设备,其特征在于,进一步包括用于向所述远程人类用户的虚拟现实耳机提供沉浸式反馈流的装置;并且进一步包括用于映射所述遥控机器人的空间的装置、用于接收所述用户区域的映射的装置、以及用于将所述遥控机器人的空间划分成对应于所述用户区域的一个或多个单位区域的装置;并且进一步包括用于向所述远程人类用户的计算机设备传送所述遥控机器人处于所述一个或多个单位区域中的单位区域的边缘处的指示符的装置,其中所述遥控机器人处于所述一个或多个单位区域中的所述单位区域的边缘处的所述指示符将挂起所述命令动作流。
22.一种或多种计算机可读介质,包括指令,响应于计算设备的一个或多个处理器对所述指令的执行,所述指令使所述计算设备通过以下操作来在人类用户与远程遥控机器人之间实现基于移动映射的遥现交互:
通过将用户区域内的人类用户的第一姿态和向量转换成所述命令动作流的第一部分,并且跟随在命令动作挂起之后,确定所述人类用户的第二姿态和向量不朝向所述用户区域的边缘并将所述人类用户的所述第二姿态和向量转换成所述命令动作流的第二部分来向所述远程遥控机器人提供命令动作流;
检测由所述人类用户与所述用户区域的边缘的邻近度造成的所述命令动作挂起,以及
其中所述边缘包括障碍物或边界中的至少一者。
23.如权利要求22所述的计算机可读介质,其特征在于,根据对来自所述人类用户的信号的接收、对来自邻近度传感器的信号的接收、对来自所述远程遥控机器人的关于所述远程遥控机器人与所述远程遥控机器人的远程空间的单位区域的邻近度的信号的接收、或者基于所述第一姿态和向量以及所述用户区域的映射而预测到所述人类用户到所述用户区域的所述边缘的路径中的至少一者来确定所述人类用户与所述用户区域的所述边缘的邻近度,其中从所述人类用户接收的所述信号包括语音命令和来自物理按钮的命令中的至少一者。
24.一种或多种计算机可读介质,包括指令,响应于计算设备的一个或多个处理器对所述指令的执行,所述指令使所述计算设备通过以下操作来在遥控机器人与远程人类用户之间实现基于移动映射的遥现交互:
接收命令动作流;
在所述遥控机器人的姿态和向量中实现所述命令动作流;
其中当所述人类用户邻近于用户区域的边缘时,来自所述人类用户的所述命令动作流将被挂起,其中所述边缘包括障碍物或边缘中的至少一者。
25.如权利要求24所述的计算机可读介质,其特征在于,进一步包括映射所述遥控机器人的空间、接收所述用户区域的映射、将所述遥控机器人的空间划分成对应于所述用户区域的一个或多个单位区域、以及向所述远程人类用户的计算机设备传送所述遥控机器人处于所述一个或多个单位区域中的单位区域的边缘处的信号,其中所述遥控机器人处于所述一个或多个单位区域中的所述单位区域的边缘处的所述信号将挂起所述命令动作流。
CN201680084534.4A 2016-05-11 2016-05-11 对遥控机器人的基于移动映射的控制的装置、方法和计算机设备 Active CN109074150B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/081674 WO2017193297A1 (en) 2016-05-11 2016-05-11 Movement mapping based control of telerobot

Publications (2)

Publication Number Publication Date
CN109074150A true CN109074150A (zh) 2018-12-21
CN109074150B CN109074150B (zh) 2022-05-13

Family

ID=60266061

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680084534.4A Active CN109074150B (zh) 2016-05-11 2016-05-11 对遥控机器人的基于移动映射的控制的装置、方法和计算机设备

Country Status (4)

Country Link
US (1) US10434653B2 (zh)
CN (1) CN109074150B (zh)
DE (1) DE112016006840T5 (zh)
WO (1) WO2017193297A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109857258A (zh) * 2019-02-20 2019-06-07 福州凡来界信息科技有限公司 一种虚拟远程遥控方法及装置、系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110009241A1 (en) * 2009-04-10 2011-01-13 Sovoz, Inc. Virtual locomotion controller apparatus and methods
WO2013089765A1 (en) * 2011-12-16 2013-06-20 Intel Corporation Use of motion language for network commands in 60ghz networks
CN104345802A (zh) * 2013-08-08 2015-02-11 派布勒斯有限公司 控制近眼式显示器的方法和设备
US20150049004A1 (en) * 2008-01-23 2015-02-19 Michael Frank Deering Eye Mounted Displays and Systems Using Eye Mounted Displays
CN105144030A (zh) * 2013-02-27 2015-12-09 微软技术许可有限责任公司 混合现实增强

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4137932B2 (ja) * 2005-10-28 2008-08-20 ファナック株式会社 ロボット制御装置
US9183676B2 (en) 2012-04-27 2015-11-10 Microsoft Technology Licensing, Llc Displaying a collision between real and virtual objects
US10359841B2 (en) 2013-01-13 2019-07-23 Qualcomm Incorporated Apparatus and method for controlling an augmented reality device
WO2014141504A1 (ja) 2013-03-11 2014-09-18 Necソリューションイノベータ株式会社 3次元ユーザインタフェース装置及び3次元操作処理方法
KR20150058848A (ko) 2013-11-21 2015-05-29 한국전자통신연구원 원격 현장감 생성 장치 및 방법
GB201404732D0 (en) 2014-03-17 2014-04-30 Sony Comp Entertainment Europe Virtual Reality
US10055892B2 (en) * 2014-11-16 2018-08-21 Eonite Perception Inc. Active region determination for head mounted displays
US20160225188A1 (en) * 2015-01-16 2016-08-04 VRstudios, Inc. Virtual-reality presentation volume within which human participants freely move while experiencing a virtual environment
CN104750249B (zh) * 2015-03-02 2020-02-21 联想(北京)有限公司 一种信息处理方法及电子设备
US10866631B2 (en) * 2016-11-09 2020-12-15 Rockwell Automation Technologies, Inc. Methods, systems, apparatuses, and techniques for employing augmented reality and virtual reality
JP6816553B2 (ja) * 2017-02-21 2021-01-20 オムロン株式会社 制御システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150049004A1 (en) * 2008-01-23 2015-02-19 Michael Frank Deering Eye Mounted Displays and Systems Using Eye Mounted Displays
US20110009241A1 (en) * 2009-04-10 2011-01-13 Sovoz, Inc. Virtual locomotion controller apparatus and methods
WO2013089765A1 (en) * 2011-12-16 2013-06-20 Intel Corporation Use of motion language for network commands in 60ghz networks
CN105144030A (zh) * 2013-02-27 2015-12-09 微软技术许可有限责任公司 混合现实增强
CN104345802A (zh) * 2013-08-08 2015-02-11 派布勒斯有限公司 控制近眼式显示器的方法和设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109857258A (zh) * 2019-02-20 2019-06-07 福州凡来界信息科技有限公司 一种虚拟远程遥控方法及装置、系统

Also Published As

Publication number Publication date
US20180200889A1 (en) 2018-07-19
WO2017193297A1 (en) 2017-11-16
DE112016006840T5 (de) 2019-03-21
CN109074150B (zh) 2022-05-13
US10434653B2 (en) 2019-10-08

Similar Documents

Publication Publication Date Title
US11720126B2 (en) Motion and image-based control system
US11861892B2 (en) Object tracking by an unmanned aerial vehicle using visual sensors
US20220179489A1 (en) Late update of eye tracking information to gpu for fast foveated rendering
US9399294B1 (en) Displaying estimated image data in a user interface
JP6440745B2 (ja) ロボット装置の行為の仮想表現を表示する拡張現実のための方法及びシステム
KR102305206B1 (ko) 인공 지능을 통해 바닥 상황을 고려하여 청소하는 로봇 청소기 및 그 방법
Sarkar et al. Gesture control of drone using a motion controller
US20210138654A1 (en) Robot and method for controlling the same
KR102286137B1 (ko) 공기 청정기의 배치 위치를 가이드하는 인공 지능 장치 및 그의 동작 방법
KR102658966B1 (ko) 공기 조화기의 센서 데이터를 보정하는 인공 지능 공기 조화기 및 그 방법
JP2017047519A (ja) クラウドロボティクスシステム、情報処理装置、プログラム、並びに、クラウドロボティクスシステムにおけるロボットの制御または支援方法
KR102234691B1 (ko) 인공 지능을 이용하여, 물품을 관리하는 냉장고 및 그의 동작 방법
KR20190102151A (ko) 사용자에게 정보를 제공하는 인공 지능 서버 및 그 방법
KR20200128486A (ko) 사용자의 위치를 결정하는 인공 지능 장치 및 그 방법
KR20190098102A (ko) 외부 기기를 제어하기 위한 인공 지능 장치
KR102231922B1 (ko) 인공 지능을 이용하여, 복수의 로봇들을 제어하는 인공 지능 서버
KR20190098930A (ko) 사용자에게 음식을 제공하는 방법 및 그 장치
KR20190094311A (ko) 인공 지능 로봇 및 그의 동작 방법
CN109074150A (zh) 对遥控机器人的基于移动映射的控制
US20210137311A1 (en) Artificial intelligence device and operating method thereof
KR20210057598A (ko) 알림을 제공하는 인공 지능 장치 및 그 방법
KR101659066B1 (ko) 가상 공간 및 가상 객체를 포함하는 메시지를 생성하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
EP3400992A1 (en) Providing a location-based mixed-reality experience
Lan et al. Construction of the control system of cleaning robots with vision guidance
KR20210063132A (ko) 콘텐츠에 최적화된 액션 로봇용 모션 데이터를 제공하는 장치 및 방법

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