人示范式具有力与位置目的任务的机器人学习的制作方法

文档序号:11389685阅读:152来源:国知局
人示范式具有力与位置目的任务的机器人学习的制造方法与工艺

本发明涉及人示范的机器人应用的学习,特别是具有力与位置目的的那些学习。



背景技术:

串联机器人是机电装置,其能够操纵使用一系列机器人连杆的对象。机器人连杆通过机器人关节相互连接,每个关节通过一个或多个关节致动器来驱动。每个机器人关节进而又代表独立的控制变量或自由度。设置在串连机器人远端的末端执行器被配置为执行特定的任务,诸如抓握作业工具或者堆叠多个部件。通常,通过闭环力、速度、阻抗、或者基于位置的控制律将串连机器人控制到期望的目标值。

在制造中,需要能够用最少量的停工期生产新的或更多种的产品的灵活的工厂和工艺。为了全面实现这个目标,需要机器人平台来迅速地适应新任务而无需耗时的重新编程以及代码编译。传统上,机器人由人工以编程语言通过将行为编码来编程或者通过带有下拉菜单的教导器来编程。随着机器人以及应用两者复杂性的增大,这种传统技术已经变得过度复杂和消耗时间。因此,已经发展了以更简单的、更加直观的方式来产生程序的尝试,通常被称为“通过示范学习”或者“模仿学习”。

使用此类方法,操作人员执行任务并且计算机系统通过使用机器学习技术靠观察来学习该任务。训练操作通常如此进行:或者由操作人员直接地执行任务同时计算机视觉系统记录行为,或者由操作人员握住机器人并且通过所需的运动序列在物理上将其移动。此类“通过示范学习”技术具有可将编程具有增加复杂性的机器人应用简化的潜力。机器人任务通常具有限定任务的位置或运动的目的。尤其是,这些类型的任务已经开始结合力或阻抗的目的,也就是说,规定要施加的力的等级的目的。当任务也要求力的目的时,仅仅使用位置捕捉数据不再足够。因此,当机器人通过任务示范移动或后驱时,尝试通过向机器人添加力传感器来学习此类任务的系统已经进展。然而,对于具有力和位置两个目的的某些类型的灵巧任务的示范,现存方法仍然不是最佳。



技术实现要素:

本文公开了一种用于促进操作人员示范的、具有力和位置目的应用的机器人学习的系统和相应的方法。本方法旨在极大地简化复杂机器人应用的发展,特别是那些在非结构化环境和/或直接的人工机器人交互和协作发生的环境中使用的那些机器人应用。非结构化环境,如在本领域已知的,是没有针对特定应用来高度配置和设计的工作环境。随着机器人复杂性的持续增加,可被执行的机器人任务类型的复杂性也在增加。例如,某些新兴的机器人使用腱致动的手指和可对置拇指来以类似于人的灵巧性和敏捷度水平执行任务。因而传统的任务编程和常规的后驱任务示范对此类机器人来说复杂到了不能实行的程度。

在示例性实施例中,用于向机器人示范具有力和位置两者目的的任务的系统包括可由操作人员佩戴的手套。系统还包括传感器以及一个或多个控制器,且控制器与传感器进行通信。在佩戴手套的操作人员单独通过其动作积极地示范任务时,传感器共同地测量任务特征。任务特征包括作用在手套上的分布的力,以及手套姿态和关节角度构型。

可对控制器编程将机器学习逻辑施加到任务特征,由此来学习并将示范的任务作为任务应用文件记录下来。还可对控制器编程以执行任务应用文件,并且由此控制机器人的操作,也就是说,机器人自动地执行初始由佩戴手套的操作人员示范的任务。

还公开了一种使用手套用于向机器人示范任务的方法,上述的传感器定位在手套上。该方法可包括在操作人员佩戴手套并且示范任务时,使用手套测量任务特征集合,并且随后将任务特征发送至控制器。该方法可包括使用机器学习逻辑通过控制器处理任务特征,由此来学习并将示范的任务作为任务应用文件记录下来,并且使用该任务应用文件产生一组控制信号。将该组控制信号发送至机器人,由此使得机器人自动地执行示范的任务。

本发明的上述特征以及其它特征和优点从以下结合附图对实施本发明的最佳方式进行的详细描述中能够很容易了解到。

附图说明

图1为可用作系统的一部分的示例性手套的示意图,用于向本文阐述的机器人示范力-位置型任务。

图2为图1中所示的手套的手掌侧的示意图。

图3为使用图1和图2中所示的手套,用于向机器人示范且执行力-位置型任务的系统的示意图。

图4为描述使用图4中所示的系统,用于向机器人示范力-位置型任务的示例性方法的流程图。

具体实施方式

参考附图,其中相同的参考数字对应于不同视图中相同的或类似的部件,根据示例性实施例,在图1和图2中示意性地示出了手套10。如图3所示,作为系统25的一部分,手套10被配置为在向机器人70示范具有力和位置两者目的的任务中,由操作人员50佩戴。图3的系统25按照方法100受到控制,方法100的实施例参照图4在下面进行描述。

对于图1和图2中所示的手套10,该手套可包括多个接合的或铰接的手指12以及可选择的接合的或铰接的可对置拇指12t。手套10还包括背面16与手掌17。手套10可以由任何合适的材料构成,诸如透气性的网、尼龙和/或皮革。可以使用可选的腕带18来帮助将手套10固定到图3所示的操作人员50的手腕上。尽管在图1和图2中的示例性实施例中示出了四个手指12和可对置的拇指12t,手套10的其他构型也可以很容易地想象到,诸如适合用于捏夹型抓握应用的二指或三指构型。

与常规的在给定任务示范期间使用视觉系统来确定位置和教导器以驱动机器人的方法不同,本方法允许操作人员50直接地执行灵巧的任务,也就是说,在示范中靠操作人员50单独作用而无需机器人70的任何干预。如图3中所示,示例性的灵巧的任务可包括将灯泡35抓握、插入以及旋转进入螺纹插座(未示出)。该任务涉及到严密监控以及控制一些动态地变化的变量,这些变量共同明确地描述如何开始抓握灯泡35、在仍然抓握灯泡35时如何牢固并快速地将灯泡35插入插座、灯泡35应该如何被快速地拧接入插座中以及应该检测到多少反馈力以表明灯泡35已经完全被拧接进入且坐入在插座内。使用单独应用视觉照相机和其它常规的位置传感器的常规的机器人驱动任务示范,不能最佳地学习这种任务。

为了解决这个挑战,操作人员50在此直接地执行任务,且示范的任务具有如上文指出的力和位置两个目的。为了完成期望的目的,可对手套10装配多个不同的传感器,至少包括手掌姿态传感器20、关节构型传感器30以及力传感器阵列40,所有的传感器都被布置在图1和图2中所示的手掌17、手指12以及拇指12t上。传感器20、30和40与一个或多个控制器通信,在示例性实施例中包括第一控制器(c1)60。在佩戴手套10的操作人员50直接地示范任务时,传感器20、30和40被配置为共同测量任务特征(tc)。

任务特征可包括使用力传感器阵列40所确定的在手套10上分布的力(箭头f10),以及通过手掌姿态传感器20确定的手掌姿态(箭头o17)和使用各种关节构型传感器30确定的关节角度构型(箭头j12)。第一控制器60(其可用描述手套10的运动学的运动学数据(k10)来编程)可处理任务特征并且在机器人70的控制之前,向第二控制器(c2)80输出任务应用文件(taf)(箭头85),随后在下面将更详细地描述。尽管本文描述了第一控制器60和第二控制器80,在其它实施例中也可以使用单个控制器或多于两个控制器。

对于图2中所示的力传感器阵列40,每个力传感器40可被实施为本领域已知类型的载荷传感器,例如压敏电阻传感器或压力变换器。可以将力传感器40分布到手套10的手掌17、手指12以及拇指12t的所有可能的接触表面,以便在示范的任务期间,在手套10处或者沿着手套10多个点或者手套10的表面,精确地测量作用在手套10上/由手套10施加的共同的力,并且最终确定在手套10上的力分布。各个力传感器40输出相应的力信号,在图2中描述为力信号fa、fb、…fn。力传感器40可以具有各种尺寸。例如,在一些实施例中可以设想采用大面积压力垫形式的压力传感器140。

图1的关节构型传感器30被配置为测量手指12和12t的各种关节的单独的关节角度(箭头j12)。各关节绕着相应的关节轴线(a12)旋转,为说明简单起见,在图1中只显示一个。如在本领域已知,人指有三个关节,总共十二个关节轴,外加拇指12t的关节轴。

在一个示例性实施例中,关节构型传感器30可以实施为定位在各关节处的单独的解析器,或者如图所示作为嵌入在或者连接至手套10的材料的柔性带。关节构型传感器30确定各个关节的弯曲角度,并且将单独的关节角度(箭头j12)输出至图3的第一控制器60。如在本领域已知,此类柔性传感器可以实施为柔性导电纤维或整合至手套10的柔性纤维中的其它柔性导电传感器,各具有相应于手套10的不同关节角度的可变电阻。在电阻中测量的变化横跨第一控制器60的存储器(m)中涉及的关节构型传感器30,以规定特定关节角度或关节角度的组合。其它关节构型传感器30可包括霍耳效应传感器、光学传感器或在发明意图范围内的微机电系统(mems)双轴加速计和单轴陀螺仪。

图1中的手掌姿态传感器20可同样地为惯性或磁性传感器、射频识别(rfid)装置,或者在三维空间(即:xyz坐标)中,可操作成用于确定手掌17的六个自由度位置及方向或手掌姿态(箭头o17)的其它合适的本地定位装置。在不同实施例中,手掌姿态传感器20可被嵌入或连接至手掌17的材料中或者背面16。在直接地示范任务期间,当图3的操作人员50佩戴手套10时,传感器20、30和40共同测量任务特征85。

参考图3,如上简要说明的系统25包括手套10以及传感器20、30和40,以及第一控制器60和第二控制器80。控制器60和80可以实现为相同的装置,也就是说,指定为整合控制系统的逻辑模块,或者它们可以是以无线方式或通过传输导体相互通信的单独的计算装置。第一控制器60接收来自传感器20、30和40的测量的任务特征,即:力f10、手掌姿态o17以及关节构型j12。

可选地,在示范任务以及输出相同的位置信号(箭头p50)期间,系统25可包括可操作地用于检测目标(诸如,操作人员50的位置或者操作人员的手,或者由操作人员50持有的或位于操作人员50附近的组装的或其它对象)的摄像机38,在此情况下位置信号(箭头p50)可作为测量的任务特征的一部分被接收。针对此目的,根据所接收到的位置信号(箭头p50),可通过第一控制器60使用机器视觉模块(mvm)来确定操作人员50的位置(例如,通过接收图像文件并且使用已知的图像处理算法通过机器视觉模块(mvm)来确定位置),以及来确定手套10对于操作人员50的相对位置。

然后,第一控制器60使用第一控制器60的机器学习(ml)逻辑模块将常规的机器学习技术应用到测量的任务特征,并由此来学习以及把示范的任务作为任务应用文件85记录下来。将第二控制器80编程以将来自第一控制器60的任务应用文件85接收作为计算机可读指令,并且最终执行任务应用文件85,并由此控制图3中的机器人70的操作。

第一控制器60和第二控制器80各自可包括诸如处理器(p)以及存储器(m)的共同元件,后者包括有形的、非瞬变性存储器装置或介质(诸如只读存储器、随机存取存储器、光学存储器、闪存存储器、电可编程只读存储器等)。第一控制器60和第二控制器80还可包括任何需要的逻辑电路,包括但不限于成比例-积分-微分控制逻辑、高速时钟、模拟-数字电路、数字-模拟电路、数字信号处理器和必要的输入/输出装置以及其它信号调节和/或缓冲电路。本文所用的术语“模块”,包括机器视觉模块(mvm)和机器学习(ml)逻辑模块,可以实施为用于执行指定任务的所有必需的硬件和软件。

末端执行器72的运动学信息k72和手套10的运动学信息(k10)可被存储在存储器m中,使得第一控制器60能够计算操作人员50和/或手套10的相对位置和方向以及任务示范正在发生的工作区内的点。本文所用的术语“运动学”是指校准的并且因此已知的给定装置或对象的大小、相对位置、构型、运动轨迹以及运动限制的范围。因此,通过准确获知手套10如何构型和移动,以及末端执行器72如何同样地移动,第一控制器60可以将手套10的运动转换成末端执行器72的运动,并且由此编译需要的机器可执行指令。

一般对于机器学习而言,该术语本文是指本领域所熟知的人工智能的类型。因此,用必需的数据分析逻辑将第一控制器60进行编程以用于迭代地从动态输入数据学习以及适应动态输入数据。例如,第一控制器60可以执行诸如图形检测和识别的示例性操作,例如,使用受监督学习或无监督学习、贝叶斯算法、聚类算法、决策树算法或神经网络。最终,机器学习模块(ml)输出任务应用文件85,即:使用第二控制器80可由机器人70执行的计算机可读程序或代码。最终,第二控制器80向机器人70输出控制信号(箭头cc70),由此使得机器人70执行在任务应用文件85中所阐明的示范的任务。

图4描绘了使用图1和图2中的手套10用于向机器人70示范具有力和位置目的的任务的示例性方法100。方法100从步骤s102开始,这需要使用图1和图2中所示的手套10仅仅通过人的示范来示范机器人任务。图3的操作人员50将图1和图2中的手套10佩戴在手上,并且使用戴手套的手直接地示范任务,而无需末端执行器72或机器人70的任何干预或动作。在操作人员50通过手套10继续示范任务时,方法100继续行进至步骤s104。

步骤s104包括在操作人员50佩戴手套10并且示范任务时,使用手套10测量任务特征(tc)。传感器20、30和40共同测量任务特征(tc)并且将描述任务特征的信号,即:力f10、手掌姿态o17以及关节构型j12,发送至第一控制器60。方法100继续到步骤s106。

在步骤s106处,第一控制器60可确定任务示范是否完成。可以采用各种方法来实施步骤s106,包括检测手套10的原始位置或校准手势或位置,或者检测通知第一控制器60任务示范完成的按钮(未示出)的下压。方法100接着前进到步骤s108,其可选地由在步骤s107处采集的数据来通知。

可选步骤s107包括使用图3的摄像机38来采集视觉数据,并因此采集位置信号(箭头p50)。如果使用步骤s107,摄像机38(例如,3d点云摄像机或光学扫描器)可采集3d位置信息并且通过机器视觉模块(mvm)来确定操作人员50的相对位置、手套10和/或其它信息并且将这些转发至第一控制器60。

步骤s108包括从步骤s102至步骤s106学习示范的任务。在通过图3中所示的机器学习(ml)模块完成示范的期间或者之后,需要处理所接收的任务特征。步骤s108可包括产生任务原语,也就是说,示范的任务的核心步骤,诸如“用力分布x在点x1y2z3处抓握灯泡35”,“将抓握的灯泡35移动至位置x2y1z2”,“以角度φ和速度v将灯泡35插入插座”,“用转距t旋转灯泡35”等。这些任务原语之间的转换可以通过检测来自步骤s104的采集的数据的值中的变化来检测。当已经学习了示范的任务时,方法100继续前进到步骤s110。

步骤s110包括将来自步骤s108的示范的任务转换成任务应用文件85。步骤s110可包括使用运动学信息k10和k72来将通过操作人员50执行的任务转换成适合用于图3中所示的末端执行器72的机器可读和可执行代码。例如,因为由图3中的操作人员50使用的人手的灵巧性的高水平至多仅可以通过机器手(末端执行器72)近似,使用机器人70不可能完全地复制操作员50使用的特定的力分布、姿态以及关节构型。因此,可将第一控制器60进行编程以将示范的任务转换成通过末端执行器72可以实现的最接近的近似值,例如,通过转换函数、查询表或者校准因素。然后产生以第二控制器80能够理解的形式的指令作为任务应用文件85。一旦任务应用文件85已经产生,则方法100继续进行到步骤s112。

在步骤s112处,第二控制器80接收来自第一控制器60的任务应用文件85,并且执行相对于如图3的机器人70的控制动作。在执行步骤s112中,第二控制器80将描述所要求的具体运动的控制信号(箭头cc70)发送至机器人70。然后,机器人70根据任务应用文件85移动末端执行器72,并且由此在这次单独地且自动地通过机器人70的操作来执行示范的任务。

尽管对实施本发明的最佳模式已经进行了详细地描述,但是熟悉本发明涉及领域的技术人员将认识到,落入所附权利要求的范围内的各种可替换设计和实施例可以存在。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1