CN110603122A - 用于交互式学习应用的自动个性化反馈 - Google Patents
用于交互式学习应用的自动个性化反馈 Download PDFInfo
- Publication number
- CN110603122A CN110603122A CN201880027919.6A CN201880027919A CN110603122A CN 110603122 A CN110603122 A CN 110603122A CN 201880027919 A CN201880027919 A CN 201880027919A CN 110603122 A CN110603122 A CN 110603122A
- Authority
- CN
- China
- Prior art keywords
- robot
- workspace
- user
- mission
- task
- 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
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/06—Control stands, e.g. consoles, switchboards
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/0081—Programme-controlled manipulators with leader teach-in means
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/42—Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/35—Nc in input of data, input till input file format
- G05B2219/35444—Gesture interface, controlled machine observes operator, executes commands
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/40—Robotics, robotics mapping to robotics vision
- G05B2219/40414—Man robot interface, exchange of information between operator and robot
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Automation & Control Theory (AREA)
- Manipulator (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
一种机器人训练系统允许用户触摸、点击或以其他方式从实际工作空间中投影的显示器中选择项目,以便为机器人定义任务目标和约束。一种计划程序响应任务定义和约束,并创建一系列机器人指令来执行已定义的任务。
Description
相关申请的交叉引用
本申请要求2017年4月28日提交的美国申请No.62/491,532的优先权和权益,其全部内容通过引用并入本文。
技术领域
本发明的领域通常涉及机器人技术,尤其是涉及任务目标和约束的机器人训练。
背景技术
机器人在整个行业中得到广泛使用,执行越来越多的各种任务。尽管许多机器人是用于特定任务的,已经设计为在单一制造环境中执行一组特定的动作,但是能够执行许多任务的更通用的机器人已变得很普遍。对通用机器人进行编程以执行一组特定的动作通常是一个繁琐的过程。用户必须以某种方式向机器人传达任务的意图(例如,在此位置拾取此对象并将其放置在目标位置)和任务约束(例如,不撞到工作空间中的任何东西)。这种针对特定任务的编程很费力,并且仅适用于机器人和工作空间的特定配置。如果工作空间发生变化,通常必须对机器人进行重新编程。
发明内容
为了减少训练机器人所需的时间和技能,本发明的实施例允许用户触摸或点击在实际工作空间中投影的显示器,以便定义任务目标和约束。规划程序填补空白,并使该信息成为机器人能够执行的内容。这种“通过触摸教学”方法使用户不必离线或通过实际操作机器人本身来对机器人进行编程,这需要机器人提供允许进行此类操作的训练模式。
因此,在第一方面,本发明涉及训练位于工作空间中的机器人的方法。在各种实施例中,所述方法包括以下步骤:(a)在包含工作空间的至少一部分的3D坐标空间中表示机器人;(b)检测工作空间内的用户手势,所述手势指示位置,并基于检测到的移动,将界面投影到所指示的位置的工作空间上;(c)检测手势用户对投影界面的元素的选择,所述投影界面的元素对应于机器人控制功能;(d)使机器人执行控制功能。
在各种实施例中,用户手势为设备的移动,并且基于设备相对于投影界面的位置检测元素的选择。例如,所述设备可以是其上具有基准的棒。控制功能可以包括至少一个任务目标和至少一个任务约束。任务目标可以包括或对应于对象放置位置。任务约束可以包括或对应于初始对象位置和对象放置位置之间的障碍。
在一些实施例中,所述方法还包括以下步骤:分析工作空间的记录图像以计算地定义与任务目标相关联的约束。所述方法可以包括以下步骤:基于任务目标和任务约束为机器人计算运动计划,并且使机器人根据计算出的运动计划执行控制功能。
在各种实施例中,所述方法还包括以下步骤:在手势用户对界面元素选择之后,检测手势用户对工作空间内的项目的选择,基于此机器人控制功能运行,并且使机器人执行所选项目的控制功能。
在另一方面,本发明涉及一种机器人控制器,与包括投影仪和相机的工作空间中的机器人一起使用。在各种实施例中,机器人控制器包括处理器;存储器,用于存储(i)相机获取的图像和(ii)处理器可执行的指令,以提供感知和交互模块,所述模块配置用于(i)在包括工作空间的至少一部分的3D坐标空间中表示机器人,(ii)分析至少一个第一存储图像以检测工作空间内的用户手势,所述手势指示位置,(iii)基于检测到的移动,使投影仪将界面投影到所指示位置的工作空间上,以及(iv)在至少一个第一存储图像之后分析由相机获取的至少一个第二存储图像,以检测手势用户对投影界面的元素的选择,所述投影界面的元素对应于机器人控制功能;和计划模块,配置用于(i)计算与所述机器人控制功能相对应的机器人指令,以及(ii)使所述机器人执行所述机器人指令。
在一些实施例中,机器人控制器在机器人内,而在其他实施例中,控制器在机器人外部并经由网络与其通信。用户手势可以是设备的移动,其中基于设备相对于投影界面的位置来检测元素的选择。
控制功能可以包括至少一个任务目标和至少一个任务约束,并且感知模块可以进一步配置为分析工作空间的存储图像以计算地定义与任务目标相关联的约束。计划模块可以进一步用于基于任务目标和任务约束来计算机器人的运动计划。
在一些实施例中,其中感知模块还配置用于检测手势用户对工作空间内的项目的选择,基于此机器人控制功能运行。
如本文所使用的,术语“约”、“大约”和“基本上”是指±10%,在一些实施例中为±5%。说明书中提及的“一个示例”、“示例”、“一个实施例”或“一实施例”表示与描述该实例有关的特定特征、结构或特性包括在本技术的至少一个实例中。因此,本说明书中在各个地方出现的短语“在一个示例中”、“在示例中”、“一个实施例”或“实施例”不一定都指代相同的示例。此外,特定特征、结构、程序、步骤或特性可以以任何合适的方式组合在本技术的一个或多个示例中。本文提供的标题仅是为了方便,并不旨在限制或解释所要求保护的技术的范围或含义。
附图说明
在附图中,相同的附图标记在不同视图中通常指代相同的部分。而且,附图不一定按比例绘制,而是通常将重点放在说明本发明的原理上。在以下描述中,参考以下附图描述本发明的各种实施例,其中:
图1A为根据本发明的实施例的系统的高级系统框图。
图1B为使用视觉和语音接口两者的实施例的高级系统框图。
图2示意性地示出了根据本发明的实施例的机器人控制器。
图3A为示出了与各种实施例的关键模块相关联的功能的框图。
图3B概念性地示出了本发明的实施例的操作。
图4为示出本发明的实施例的代表性操作的流程图。
具体实施方式
首先参考图1A,其示出了根据本发明的实施例的代表系统100。在所示的实施例中,待编程的机器人110包括控制框113,为方便起见,将其与机器人分开示出。控制框113包括感知模块115、计划模块117和交互模块120。在典型的实施方式中,这些模块在机器人110内实施,例如作为其内部控制器的一部分。然而,这不是必须的,并且实际上,模块115、117、120可以在单独的设备中实现。例如,模块可以在与众多机器人110无线和/或有线接触的服务器上实施,并分别为每个机器人服务。
常规相机125位于工作空间内或附近(或在某些实施例中,为机器人110的一部分),优选地采用RGB-D相机,将红绿蓝颜色信息与每个像素的深度信息相结合(也就是说,相机125为每个记录的像素分配相对于相机的颜色和深度坐标)。机器人上的基准130和棒上或用在工作空间内的其他指向设备140上的另一个基准135对相机125可见,即在其视场127内,即,当如本文中所讨论的训练机器人110时,相机125及其视场127足以包含机器人基准130和棒基准135。基准130、135可以是例如2D条形码或其他相机可见的标记,例如APRILTAG基准。
应当强调的是,使用基准不是必须的;任何建立机器人110相对于相机125的相对姿态以及棒140相对于相机125的相对姿态的合适的方式都可以采用。此外,棒140的替代方案也是可能的,例如,可以采用3D手识别以允许用户例如通过指向来用他的手发信号。有利于手和手势识别的合适的机器视觉算法在本领域中是众所周知的,并且包括例如针对模板的模式匹配。参见,例如Pradipa&Kavitha,“Hand Gesture Recognition–Analysis ofVarious Techniques,Methods and Their Algorithms(手势识别–各种技术、方法及其算法的分析)”,ICIET’14,p.2003,其全部公开内容通过引用并入本文。
图1B中示出的另一种方法利用语音识别作为接收命令的替代方式。常规的语音识别模块150将麦克风155检测到的语音转换为自然语言文本;例如,语音识别模块150可以利用谷歌或亚马逊语音转文本应用程序或其他语音算法的现成API。语音识别模块150将所得文本流中的关键字与符号流态(fluents)中的文本和这些流态的参数进行匹配;参见,例如,Tellex等人,“Asking for Help Using Inverse Semantics(使用逆语义寻求帮助)”,可在http://cs.brown.edu/courses/csci2951-k/papers/tellex14.pdf获得,通过引用并入本文。流态及其参数可以驻留在世界表示250中,下面将对其进行更详细的描述。因此,如本文所使用的,术语“手势”包括意图的身体和/或言语表现,在前一种情况下包括手或棒的运动而在后一种情况下包括发出命令。(为了便于演示,随后的讨论将主要假设使用棒140。)
相机127与投影仪145配对,其功能和操作在下面描述。感知模块115从相机125接收视觉信息,并且连续或周期性地提取基准130、135的3D位置。该功能可以完全由感知模块115(或在感知模块115的指导下)执行,或者可以与相机125共享,相机125可以执行图像预处理或对象识别。计划模块117向机器人110发送命令,并从机器人110接收机械状态信息(通常是机器人手臂的关节角度和速度、抓取器位置等)。交互模块120操作投影仪145以促进与用户的交互,如下所述。应当理解,如本文所使用的,术语“投影”是指用于在工作空间上创建真实或虚拟的可见图像的任何模态,用户可以从中进行选择。例如,投影仪145可以是虚拟现实或增强现实的眼镜,并且投影是使用户可见并出现在用户所感知的工作空间上的图像。
图2示出了控制框113集成在机器人110的表示性的控制系统200内。控制系统200包括中央处理器(CPU)205(例如,四核英特尔处理器)、系统存储器210以及一个或多个非易失性大容量存储设备(诸如一个或多个硬盘和/或光学存储单元)212。系统200还包括双向系统总线215,CPU 205、存储器210和存储设备212相互之间以及与诸如LCD显示器220和外控制围设备222等内部或外部输入/输出(I/O)设备通过双向系统总线215通信,所述内部或外部输入/输出(I/O)设备可以包括机器人110上的按钮或其它控制设备。控制系统200还可包括通信收发器225和一个或多个I/O端口227。收发器225和I/O端口227可提供网络接口。术语“网络”在本文中广泛地用来表示计算机或电信设备(例如,有线或无线电话、平板电脑等)的有线或无线网络。例如,计算机网络可以是局域网(LAN)或广域网(WAN)。在LAN网络环境中使用时,计算机可以通过网络接口或适配器连接到LAN。在WAN网络环境中使用时,计算机通常包括调制解调器或其他通信机制。调制解调器可以是内部或外部的,并且可以通过用户输入接口或其他适当的机制连接到系统总线。联网计算机可以通过互联网、内联网、外联网、以太网或任何其他提供通信的系统进行连接。一些合适的通信协议包括例如TCP/IP、UDP或OSI。对于无线通信,通信协议可以包括IEEE 802.11x(“Wi-Fi”)、蓝牙、ZigBee、IrDa、近场通信(NFC)或其他合适的协议。此外,系统的组件可以通过有线或无线路径的组合进行通信,且通信可以涉及计算机和电信网络。I/O端口227还向机器人110的各种电机和关节提供控制和致动命令。
CPU 205通常是微处理器,但在各个实施例中,可以是微控制器、外围集成电路元件、CSIC(客户专用集成电路)、ASIC(专用集成电路)、逻辑电路、数字信号处理器、可编程逻辑设备,例如FPGA(现场可编程门阵列)、PLD(可编程逻辑设备)、PLA(可编程逻辑阵列)、RFID处理器、智能芯片或任何其他能够实现本发明的过程的步骤的设备或设备的设置。
系统存储器210包含一系列帧缓冲器235,即,以数字形式存储由相机125获得的图像的分区。系统存储器210包含在概念上图示为一组模块的指令,其控制CPU 205的运行及其与其他硬件组件的交互。这些包括控制框113、常规的机器人控制例程235(包括用于操作机器人110的合适的驱动程序)以及指导诸如存储器分配、大容量存储设备212的文件管理和操作等低级基本系统功能的执行的操作系统240(例如,WINDOWS或LINUX)。控制框113(特别是,感知模块115)可以分析帧缓冲器235中的图像以识别基准130、135并解释用户手势。如本文所述,可以使用任何合适的编程语言来实现控制框113的功能而无需过度实验。说明性地,例如,所使用的编程语言可以包括汇编语言、Ada、APL、Basic、C、C++、C*、COBOL、dBase、Forth、FORTRAN、Java、Modula-2、Pascal、Prolog、Python、REXX和/或JavaScri pt。此外,不必结合本发明的系统和方法的操作来使用单一类型的指令或编程语言。而是,可以根据需要或期望使用任何数量的不同编程语言。
在初始化阶段,使用任何适当的校准技术(例如,手动测量并输入到存储器210中),在3D工作空间的坐标系中建立投影仪145相对于相机125的位置。特别地,一种合适的校准方法接收海报板上的棋盘格图案的图像和由投影仪投影的棋盘格图案的图像。这输出了投影仪145和相机125之间的相对姿态和相机模型参数。接下来,在3D工作空间坐标系中建立机器人110相对于相机125的位置。这可以通过将基准130定位在机器人的相机图像上并测量其尺寸来实现;结合其在机器人上的已知位置,基准的大小足以建立机器人与相机的距离,从而在空间坐标系中校准相机的深度感知。
在不需要基准的替代实施例中,将抓取器的3D计算机辅助设计(CAD)模型计算地拟合到场景中的抓取器的3D体素。从一个或多个角度来看,抓取器和机器人的相对位置可以回归到相机125。特别地,设置有具有已知运动学的机器人手臂和抓取器以及抓取器的CAD模型以及具有3D能力的相机125,可以使用相机到机器人的坐标变换的初始猜测来完成配准,例如,使用机器人上的可见标记、手动输入的位置或最后使用的配准数据。特别地,可以采用以下算法:
1)手动或自动将抓取器放置于相机视场中
2)使用相机-机器人对配准的初步猜测加上机器人手臂的正向运动学来猜测抓取器应当如何看向相机
3)仅分割抓取器应当围绕的那些云点
4)使用分割的云和CAD模型执行迭代最近点(ICP)
5)使用新的抓取器位置和手臂编码器值来计算新的相机到机器人坐标变换
6)重复步骤1-5,直到充分覆盖工作空间为止
7)对每个点对所得变换进行回归,以找到最佳的相机-机器人配准。
ICP算法例如在Segal等人的“Generalized-ICP(通用化ICP)”中进行了描述,在http://www.roboticsproceedings.org/rss05/p21.pdf上获取。利用人类引导的ICP的相机-对象配准在Computer Vision and Pattern Recognition(计算机视觉和模式识别)上Ma rion等人的“LabelFusion:A Pipeline for Generating Ground Truth Labels forReal RGBD Data of Cluttered Scenes(标签融合:为杂乱场景的真实RGBD数据生成地面真相标签的管道)”中进行了描述,在https://arxiv.org/abs/1707.04796可获得。
由感知、计划和交互模块115、117、120执行的功能在图3A中更详细地示出。本质上,这些模块协作以使用户能够通过工作空间交互而不是直接编程来训练机器人110;用户与机器人110交互所用的界面投影到工作空间中,使用户能够在走过工作空间时训练机器人,并且在必要时保持与机器人110的安全距离。感知模块115从相机125接收机器人周围的工作空间的3D点云(而不是完整的深度图);点云可以由RGB和深度数据组成或包含RGB和深度数据。感知模块115例如使用具有点法线阈值的欧几里得聚类来计算云的3D分割。对象(例如,工件)表面和工作表面可以聚类为单独的实体,并且每个聚类可以表示为3D空间中的点的集合。另外参照图1B和2,这些表示共同形成存储在主存储器250和/或存储设备212中的工作空间的“世界表示”250。世界表示可以包括占用网格,所述占用网格将工作空间的像素或体素标记为空的或占用的,并且有助于手势与投影菜单的选择项目的相关性。检测指示选择或其他命令的用户手势可以涉及估计棒140的姿态。感知模块115将检测到的手势(例如,点击)发送到计划模块117,并且可以向计划模块通知对世界表示250的更新。(通常,世界表示250为整个控制框113可访问的数据结构。)
交互框120用作用户和机器人之间的接口,允许用户既定义任务又从机器人110获得关于机器人对工作空间的理解以及它将如何工作的反馈。如前所述,一项重要的创新是使用实际工作空间本身来帮助用户告诉机器人它应该做什么。特别地,如交互模块120所指示的,投影仪125可以在工作空间内向用户投影菜单和/或图形界面;例如,菜单可以出现在墙上或跨越工作空间中的多个表面。用户使用棒140从菜单中进行选择,且计划模块117“知道”棒基准135的位置和投影的菜单选项,当用户使用棒140指向菜单选项时,计划模块117识别对菜单选项的选择。以这种方式,用户可以像对另一个人一样向机器人110“解释”任务。如下所述,计划模块117解释命令并创建机器人可以运行的工作流程程序。
在操作中,另外参照图3B,用户最初在工作空间内移动棒140并指示需要菜单310的位置。感知模块115在几何上计算从棒基准135到任何点聚类的最小距离。使用最接近基准135的表面聚类,感知模块115将平面模型拟合到表面聚类点。为了创建菜单,交互模块120计算一组3D点,所述3D点定义具有适当数量的选择按钮的菜单;例如,矩形菜单的左下角可以定义为最靠近棒基准135的平面上的点。菜单点定义在工作空间中,并用于引导菜单的投影。使用投影映射,交互模块120将3D定义的颜色菜单投影到2D彩色图像上,并且该图像由用户指示的位置的投影仪145显示。使用常规渲染技术,交互模块115可以使图像失真,从而视角在投影图像中相对于工作空间的特征得以保持。
基于3D分割,投影的菜单按钮具有已知的3D工作空间坐标,并且这些坐标用于检测按钮“点击”,即用户使用棒140做出的手势。点击可以使用基于由一组3D点定义的按钮的3D标记位置和3D位置的度量来检测。例如,可以在矩形按钮周围定义3D框,如果基准点135进入该框,则按钮被视为“点击”。按钮点击可以通过例如更改按钮的投影颜色以指示其已被选择来在工作空间中配准。菜单按钮允许用户启动任务定义模式,该模式将用户点击转变为任务计划目标和约束。例如,单击“对象”按钮使用户可以选择(使用工作空间中的标记点击)工作空间中要由机器人操作的对象。点击如图3B所示的“障碍”按钮允许用户指示障碍物。
更一般地,用户点击和其他检测到的手势可以定义任务。定义明确的任务目标的点击可以包括操作目标,例如对象拾取目标和对象放置目标;末端执行器放置目标,例如钻、插入、拧和卡扣目标;对象相关的目标,例如将对象A相对于对象B放置,将盖子放置在瓶子上;以及体积/面积目标可以使用户定义用于对象或末端执行器目标的空间体积,或者从中拾取/放置。用户点击还可以定义明确的任务约束。这种约束可能涉及工件(例如,要操作的对象以及诸如夹具、导轨、像连接器等的容纳部件等次要对象)、障碍物(例如,避免与之碰撞的对象)和限定机器人及其附件不应进入的自由空间中的点或区域的“保留”区域。感知模块115可以处理相机图像以基于例如基于来自点云数据的姿态估计的感知的障碍物来定义隐式任务约束。感知模块115还可以定义隐式任务目标,例如,机器人训练可访问的感知对象上的一系列点。
计划模块117弥合了任务定义和任务执行之间的鸿沟,从显式和隐式任务定义计算世界表示。特别地,计划模块117利用任务计划和运动计划方法来根据用户和/或感知模块115提供的任务和约束来创建机器人工作流程序。障碍物和自由空间可以由离散的3D占用网格图表示,并且计划框可以编译工作空间内所有对象和工件的姿态。计划模块117可以使用分级任务网络(HTN)来计算任务计划,将任务目标和约束作为输入并计算一系列高级动作,直到达到可执行动作(基元)为止。例如,移动、拾取和放置动作与基元相对应,而用对象填充框则表示高级目标。任务计划方法可以是混合的,即除了时序和目标实现之外,还可以扩展到时间、空间和资源推理上。合适的算法例如在Proc.of 38th Annual GermanConfer ence on AI(第38届德国人工智能年度会议)(2015)上Stock等人的“HierarchicalHybri d Planning in a Mobile Service Robot(移动服务机器人中的分级混合规划)”和Berche r等人的“Hybrid Planning:Theoretical Foundations and PracticalApplications(混合规划:理论基础和实际应用)”(2015)(可在https:// pdfs.semanticscholar.org/38a d/5aed5df5adabf314442d95713f055bb1a92b.pdf获得)中有所描述,其全部内容通过引用并入本文。
常规的机器人运动计划器使用例如众所周知的快速探索随机树(RRT)算法和轨迹导航点,例如将占用网格和目标作为输入并计算机器人轨迹命令和抓取器命令以实现目标,将任务计划转换为每个基元的运动计划(例如,使用情境适当的关节速度实现目标关节角度)。
交互模块120可以采用工作空间投影来向用户提供关于任务定义和执行的反馈。通过将3D点/姿态转换为2D图像并将该图像投影到工作空间表面,可以将任务定义和任务执行的各个方面呈现给用户。例如,计划模块117可以经由投影图像报告用户目标不可行,或者找不到执行计划或将导致碰撞。替代地或附加地,如图1B所示,交互模块120可以使用文本语音转换功能以经由文本语音转换模块160和扬声器165提供语音反馈。文本语音转换模块160可以利用谷歌或亚马逊文本语音转换应用程序的现成API。
本发明的实施例的交互步骤的代表性顺序在图4中示出。在第一步骤405中,用户触摸表面(通常是但不一定是平的),并且交互模块120响应地使选择菜单投影在指向的表面上(步骤410)。通常,投影菜单的位置在空间上与任务相关的活动发生的位置不同,即与要操作的对象的初始或目标位置不同。投影菜单包含标记为“对象”的选择项目——例如,菜单可以具有用于定义“对象”、“目标”、“障碍”和“执行”的按钮——在步骤415中,用户用棒140触摸(或以其他方式指示)“对象”选择项目。然后,用户用棒140触摸实际的工作对象(步骤420),以将工作对象识别为机器人任务的对象。在步骤425中,用户用棒140触摸“障碍”按钮,并定义障碍物,随后触摸四个点以指示初始位置与目标位置之间的区域(步骤430)。计划模块117从指示的四个点垂直地将障碍物作为3D对象“挤出”。
在步骤435中,用户用棒140选择“目标”按钮,然后再次用棒140触摸将被指定为目标位置的位置(步骤440)。计划模块117可以将目标位置定义为不是一个点而是一个小区域,例如,触摸表面上的一个面积大于设计的工作对象的圆。当用户使用棒140从投影菜单中选择“执行”时(步骤445),计划模块117计算轨迹(使用例如RRT算法),将允许机器人将指定对象从初始位置带到目标位置同时避开所定义的障碍物,并且使机器人110执行抓取、向目标移动,同时避开障碍物,并在指定的目标位置处释放对象。
如上所述,感知、计划和交互模块115、117、120可以由常规计算机执行的、诸如程序模块等计算机可执行指令实现。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本领域技术人员将理解,可以利用各种计算机系统配置来实施本发明,包括多处理器系统、基于微处理器的或可编程的消费电子产品、小型计算机、大型计算机等。本发明还可以在分布式计算环境中实施,在分布式计算环境中,任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括内存存储设备的本地和远程计算机存储介质中。
本文使用的术语和表达用作描述的术语而非限制,并且在使用这些术语和表达时,无意排除所示和所述特征的任何等同物或其部分。另外,已经描述了本发明的某些实施例,对于本领域普通技术人员显而易见的是,在不脱离本发明的精神和范围的情况下,可以使用包含本文公开的概念的其他实施例。因此,所描述的实施例在所有方面都应视为仅是说明性的而非限制性的。
Claims (19)
1.一种训练位于工作空间中的机器人的方法,所述方法包括以下步骤:
(a)在包含工作空间的至少一部分的3D坐标空间中表示机器人;
(b)检测工作空间内的用户手势,所述手势指示位置,且基于检测到的移动,将界面投影到所指示位置处的工作空间上;
(c)检测手势用户对投影界面的元素的选择,所述投影界面的元素对应于机器人控制功能;以及
(d)使机器人执行控制功能。
2.根据权利要求1所述的方法,其中,用户手势为设备的移动,元素的选择基于设备相对于投影界面的位置进行检测。
3.根据权利要求2所述的方法,其中,所述设备为其上具有基准的棒。
4.根据权利要求1所述的方法,其中,控制功能包括至少一个任务目标和至少一个任务约束。
5.根据权利要求4所述的方法,还包括以下步骤:分析工作空间的记录图像以计算地定义与任务目标相关联的约束。
6.根据权利要求4所述的方法,还包括以下步骤:基于任务目标和任务约束为机器人计算运动计划,使机器人根据计算出的运动计划执行控制功能。
7.根据权利要求1所述的方法,还包括以下步骤:在手势用户对界面元素选择之后,检测手势用户对工作空间内的项目的选择,基于此机器人控制功能运行,使机器人执行所选项目的控制功能。
8.根据权利要求4所述的方法,其中,所述至少一个任务目标包括对象放置位置。
9.根据权利要求8所述的方法,其中,所述任务约束包括初始对象位置和所述对象放置位置之间的障碍。
10.为了与包括投影仪和相机的工作空间中的机器人一起使用,机器人控制器包括:
处理器;
存储器,用于存储(i)相机获取的图像和(ii)处理器可执行的指令,以提供:
感知和交互模块,配置用于(i)在包括工作空间的至少一部分的3D坐标空间中表示机器人,(ii)分析至少一个第一存储图像以检测工作空间内的用户手势,所述手势指示位置,(iii)基于检测到的移动,使投影仪将界面投影到所指示位置的工作空间上,以及(iv)在至少一个第一存储图像之后分析由相机获取的至少一个第二存储图像,以检测手势用户对投影界面的元素的选择,所述投影界面的元素对应于机器人控制功能;以及
计划模块,配置用于(i)计算与所述机器人控制功能相对应的机器人指令,以及(ii)使所述机器人执行所述机器人指令。
11.根据权利要求10所述的机器人控制器,其中,所述机器人控制器在所述机器人内。
12.根据权利要求10所述的机器人控制器,其中,所述控制器在所述机器人的外部并且经由网络与其通信。
13.根据权利要求10所述的机器人控制器,其中,用户手势为设备的移动,元素的选择基于设备相对于投影界面的位置进行检测。
14.根据权利要求10所述的机器人控制器,其中,控制功能包括至少一个任务目标和至少一个任务约束。
15.根据权利要求14所述的机器人控制器,其中,所述感知模块还配置为:分析工作空间的记录图像以计算地定义与任务目标相关联的约束。
16.根据权利要求14所述的机器人控制器,其中,计划模块进一步用于基于任务目标和任务约束来计算机器人的运动计划。
17.根据权利要求10所述的机器人控制器,其中,感知模块还配置用于检测手势用户对工作空间内的项目的选择,基于此机器人控制功能运行。
18.根据权利要求14所述的机器人控制器,其中,所述至少一个任务目标包括对象放置位置。
19.根据权利要求18所述的机器人控制器,其中,所述任务约束包括初始对象位置和所述对象放置位置之间的障碍。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201762491532P | 2017-04-28 | 2017-04-28 | |
| US62/491,532 | 2017-04-28 | ||
| PCT/US2018/029304 WO2018200637A1 (en) | 2017-04-28 | 2018-04-25 | Automated personalized feedback for interactive learning applications |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN110603122A true CN110603122A (zh) | 2019-12-20 |
| CN110603122B CN110603122B (zh) | 2023-04-18 |
Family
ID=63915880
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201880027919.6A Active CN110603122B (zh) | 2017-04-28 | 2018-04-25 | 用于交互式学习应用的自动个性化反馈 |
Country Status (4)
| Country | Link |
|---|---|
| US (3) | US10864633B2 (zh) |
| EP (1) | EP3615281B1 (zh) |
| CN (1) | CN110603122B (zh) |
| WO (1) | WO2018200637A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115570574A (zh) * | 2022-08-31 | 2023-01-06 | 华南理工大学 | 用于远程超声机器人的辅助遥控方法、系统、装置及介质 |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11195336B2 (en) * | 2018-06-08 | 2021-12-07 | Vulcan Inc. | Framework for augmented reality applications |
| CN110238831B (zh) * | 2019-07-23 | 2020-09-18 | 青岛理工大学 | 基于rgb-d图像及示教器的机器人示教系统及方法 |
| US11826908B2 (en) | 2020-04-27 | 2023-11-28 | Scalable Robotics Inc. | Process agnostic robot teaching using 3D scans |
| EP3960395A1 (en) * | 2020-08-24 | 2022-03-02 | ABB Schweiz AG | Method and system for training a robot |
| CN112405553B (zh) * | 2020-11-03 | 2021-11-30 | 马鞍山安慧智电子科技有限公司 | 一种游戏机器人 |
| US20220215660A1 (en) * | 2021-01-04 | 2022-07-07 | Facebook Technologies, Llc | Systems, methods, and media for action recognition and classification via artificial reality systems |
| CN114274184B (zh) * | 2021-12-17 | 2024-05-24 | 重庆特斯联智慧科技股份有限公司 | 一种基于投影引导的物流机器人人机交互方法及系统 |
| JP2024006557A (ja) * | 2022-07-04 | 2024-01-17 | セイコーエプソン株式会社 | 表示システムおよび教示システム |
| CN116619359B (zh) * | 2023-05-11 | 2025-08-12 | 中山市家的电器有限公司 | 基于姿态调整及投影校准的家居陪护机器人的交互方法 |
Citations (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5774632A (en) * | 1994-11-15 | 1998-06-30 | Kaske; Alexander | Method and device for the control of an autonomously exploring robot |
| US6445964B1 (en) * | 1997-08-04 | 2002-09-03 | Harris Corporation | Virtual reality simulation-based training of telekinegenesis system for training sequential kinematic behavior of automated kinematic machine |
| SE0303178D0 (sv) * | 2003-11-24 | 2003-11-24 | Abb Research Ltd | A method and a system for programming an industrial robot |
| US20040189675A1 (en) * | 2002-12-30 | 2004-09-30 | John Pretlove | Augmented reality system and method |
| CN1590039A (zh) * | 2003-08-25 | 2005-03-09 | 索尼株式会社 | 机器人及机器人的姿态控制方法 |
| EP1709519A1 (en) * | 2003-12-31 | 2006-10-11 | Abb Research Ltd. | A virtual control panel |
| US20100017804A1 (en) * | 2008-07-21 | 2010-01-21 | International Business Machines Corporation | Thread-to-Processor Assignment Based on Affinity Identifiers |
| CN102012740A (zh) * | 2010-11-15 | 2011-04-13 | 中国科学院深圳先进技术研究院 | 人机交互方法及系统 |
| CN102323817A (zh) * | 2011-06-07 | 2012-01-18 | 上海大学 | 一种服务机器人控制平台系统及其多模式智能交互与智能行为的实现方法 |
| CN104463191A (zh) * | 2014-10-30 | 2015-03-25 | 华南理工大学 | 一种基于注意机制的机器人视觉处理方法 |
| US20150290803A1 (en) * | 2012-06-21 | 2015-10-15 | Rethink Robotics, Inc. | Vision-guided robots and methods of training them |
| US20160167232A1 (en) * | 2013-07-25 | 2016-06-16 | Toyota Jidosha Kabushiki Kaisha | Placement determining method, placing method, placement determination system, and robot |
| KR20160087613A (ko) * | 2015-01-14 | 2016-07-22 | 한국과학기술연구원 | 상호작용 훈련 장치와 방법, 그리고 그 시스템 |
| US20160257000A1 (en) * | 2015-03-04 | 2016-09-08 | The Johns Hopkins University | Robot control, training and collaboration in an immersive virtual reality environment |
| US9552056B1 (en) * | 2011-08-27 | 2017-01-24 | Fellow Robots, Inc. | Gesture enabled telepresence robot and system |
| CN106462254A (zh) * | 2016-06-29 | 2017-02-22 | 深圳狗尾草智能科技有限公司 | 一种机器人交互内容的生成方法、系统及机器人 |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001166804A (ja) * | 1999-12-10 | 2001-06-22 | Sony Corp | 学習式動作制御装置およびその方法、並びに提供媒体 |
| JP5093498B2 (ja) * | 2008-07-09 | 2012-12-12 | 花王株式会社 | マニプレータシステム |
| KR20100086262A (ko) * | 2009-01-22 | 2010-07-30 | 삼성전자주식회사 | 로봇 및 그 제어방법 |
| US20150309316A1 (en) * | 2011-04-06 | 2015-10-29 | Microsoft Technology Licensing, Llc | Ar glasses with predictive control of external device based on event input |
| US8751049B2 (en) * | 2010-05-24 | 2014-06-10 | Massachusetts Institute Of Technology | Kinetic input/output |
| US8839134B2 (en) * | 2010-12-24 | 2014-09-16 | Intel Corporation | Projection interface techniques |
| US8971572B1 (en) * | 2011-08-12 | 2015-03-03 | The Research Foundation For The State University Of New York | Hand pointing estimation for human computer interaction |
| US8830302B2 (en) * | 2011-08-24 | 2014-09-09 | Lg Electronics Inc. | Gesture-based user interface method and apparatus |
| US8918208B1 (en) * | 2012-02-07 | 2014-12-23 | Ryan Hickman | Projection of interactive map data |
| EP3014407A4 (en) * | 2013-06-28 | 2017-08-02 | Chia Ming Chen | Controlling device operation according to hand gestures |
| KR101662740B1 (ko) * | 2014-11-20 | 2016-10-05 | 삼성전자주식회사 | 사용자 손가락들의 모션에 기반한 한글 입력 방법 및 장치 |
| US10383654B2 (en) * | 2014-11-20 | 2019-08-20 | Ohio State Innovation Foundation | Methods and systems for performing navigation-assisted medical procedures |
| US10656720B1 (en) * | 2015-01-16 | 2020-05-19 | Ultrahaptics IP Two Limited | Mode switching for integrated gestural interaction and multi-user collaboration in immersive virtual reality environments |
| US10514768B2 (en) * | 2016-03-15 | 2019-12-24 | Fisher-Rosemount Systems, Inc. | Gestures and touch in operator interface |
| US11609547B2 (en) * | 2016-12-19 | 2023-03-21 | Autodesk, Inc. | Gestural control of an industrial robot |
-
2018
- 2018-04-25 WO PCT/US2018/029304 patent/WO2018200637A1/en not_active Ceased
- 2018-04-25 US US15/962,267 patent/US10864633B2/en active Active
- 2018-04-25 EP EP18791948.5A patent/EP3615281B1/en active Active
- 2018-04-25 CN CN201880027919.6A patent/CN110603122B/zh active Active
-
2020
- 2020-11-05 US US17/090,315 patent/US11969893B2/en active Active
-
2024
- 2024-04-29 US US18/648,617 patent/US20240391096A1/en not_active Abandoned
Patent Citations (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5774632A (en) * | 1994-11-15 | 1998-06-30 | Kaske; Alexander | Method and device for the control of an autonomously exploring robot |
| US6445964B1 (en) * | 1997-08-04 | 2002-09-03 | Harris Corporation | Virtual reality simulation-based training of telekinegenesis system for training sequential kinematic behavior of automated kinematic machine |
| US20040189675A1 (en) * | 2002-12-30 | 2004-09-30 | John Pretlove | Augmented reality system and method |
| CN1590039A (zh) * | 2003-08-25 | 2005-03-09 | 索尼株式会社 | 机器人及机器人的姿态控制方法 |
| SE0303178D0 (sv) * | 2003-11-24 | 2003-11-24 | Abb Research Ltd | A method and a system for programming an industrial robot |
| EP1709519A1 (en) * | 2003-12-31 | 2006-10-11 | Abb Research Ltd. | A virtual control panel |
| US20100017804A1 (en) * | 2008-07-21 | 2010-01-21 | International Business Machines Corporation | Thread-to-Processor Assignment Based on Affinity Identifiers |
| CN102012740A (zh) * | 2010-11-15 | 2011-04-13 | 中国科学院深圳先进技术研究院 | 人机交互方法及系统 |
| CN102323817A (zh) * | 2011-06-07 | 2012-01-18 | 上海大学 | 一种服务机器人控制平台系统及其多模式智能交互与智能行为的实现方法 |
| US9552056B1 (en) * | 2011-08-27 | 2017-01-24 | Fellow Robots, Inc. | Gesture enabled telepresence robot and system |
| US20150290803A1 (en) * | 2012-06-21 | 2015-10-15 | Rethink Robotics, Inc. | Vision-guided robots and methods of training them |
| US20160167232A1 (en) * | 2013-07-25 | 2016-06-16 | Toyota Jidosha Kabushiki Kaisha | Placement determining method, placing method, placement determination system, and robot |
| CN104463191A (zh) * | 2014-10-30 | 2015-03-25 | 华南理工大学 | 一种基于注意机制的机器人视觉处理方法 |
| KR20160087613A (ko) * | 2015-01-14 | 2016-07-22 | 한국과학기술연구원 | 상호작용 훈련 장치와 방법, 그리고 그 시스템 |
| US20160257000A1 (en) * | 2015-03-04 | 2016-09-08 | The Johns Hopkins University | Robot control, training and collaboration in an immersive virtual reality environment |
| CN106462254A (zh) * | 2016-06-29 | 2017-02-22 | 深圳狗尾草智能科技有限公司 | 一种机器人交互内容的生成方法、系统及机器人 |
Non-Patent Citations (1)
| Title |
|---|
| 陶林等: "基于Leap Motion手势识别的机器人控制系统", 《制造业自动化》 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115570574A (zh) * | 2022-08-31 | 2023-01-06 | 华南理工大学 | 用于远程超声机器人的辅助遥控方法、系统、装置及介质 |
| CN115570574B (zh) * | 2022-08-31 | 2024-04-30 | 华南理工大学 | 用于远程超声机器人的辅助遥控方法、系统、装置及介质 |
Also Published As
| Publication number | Publication date |
|---|---|
| US11969893B2 (en) | 2024-04-30 |
| US20180311818A1 (en) | 2018-11-01 |
| CN110603122B (zh) | 2023-04-18 |
| US20240391096A1 (en) | 2024-11-28 |
| EP3615281A4 (en) | 2021-01-13 |
| US10864633B2 (en) | 2020-12-15 |
| EP3615281B1 (en) | 2025-02-12 |
| EP3615281A1 (en) | 2020-03-04 |
| US20210046644A1 (en) | 2021-02-18 |
| WO2018200637A1 (en) | 2018-11-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110603122B (zh) | 用于交互式学习应用的自动个性化反馈 | |
| US11803185B2 (en) | Systems and methods for initializing a robot to autonomously travel a trained route | |
| US12131529B2 (en) | Virtual teach and repeat mobile manipulation system | |
| CN112258567B (zh) | 物体抓取点的视觉定位方法、装置、存储介质及电子设备 | |
| Zimmermann et al. | 3d human pose estimation in rgbd images for robotic task learning | |
| Davison et al. | MonoSLAM: Real-time single camera SLAM | |
| US20200302241A1 (en) | Techniques for training machine learning | |
| US12496721B2 (en) | Virtual presence for telerobotics in a dynamic scene | |
| US9880553B1 (en) | System and method for robot supervisory control with an augmented reality user interface | |
| Tölgyessy et al. | Foundations of visual linear human–robot interaction via pointing gesture navigation | |
| Frank et al. | Toward mobile mixed-reality interaction with multi-robot systems | |
| Park et al. | Self-training based augmented reality for robust 3D object registration and task assistance | |
| Lloyd et al. | Programming contact tasks using a reality-based virtual environment integrated with vision | |
| Arbeiter et al. | Towards geometric mapping for semi-autonomous mobile robots | |
| Yaguchi et al. | Development of 3D viewer based teleoperation interface for Human Support Robot HSR | |
| Lovi et al. | Predictive display for mobile manipulators in unknown environments using online vision-based monocular modeling and localization | |
| Skoviera et al. | Teaching robots to imitate a human with no on-teacher sensors. what are the key challenges? | |
| Levine et al. | Natural user interface for robot task assignment | |
| Han et al. | Mobile Grabbing Robot with Target Detection Using Quadric Fitting | |
| US20250073909A1 (en) | Method for assisting an operator in operating a telerobot system | |
| Blodow et al. | Inferring generalized pick-and-place tasks from pointing gestures | |
| Rowlands | Robotic Control for the Manipulation of 3D Deformable Objects | |
| WO2025042795A9 (en) | System and method for grasp synthesis of non-occluded and occluded objects with a camera-equipped robot manipulator | |
| WO2025165948A1 (en) | Visual prompting for few shot control | |
| Usabiaga et al. | Global hand pose estimation by multiple camera ellipse tracking |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| TA01 | Transfer of patent application right |
Effective date of registration: 20200123 Address after: Delaware, USA Applicant after: Suxi independent work Co.,Ltd. Address before: Massachusetts, USA Applicant before: Suxi independent work Co.,Ltd. |
|
| TA01 | Transfer of patent application right | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |