机器人系统和操作方法

文档序号:1102134 发布日期:2020-09-25 浏览:1次 >En<

阅读说明:本技术 机器人系统和操作方法 (Robot system and method of operation ) 是由 N·布里凯-克雷斯特吉安 H·丁 R·基尔斯滕 B·马蒂亚斯 P·罗德里格斯 A·瓦尔布格 于 2019-02-08 设计创作,主要内容包括:一种机器人系统包括:机器人臂(1),其包括:多个连杆(5);和多个关节(6),所述连杆(5)中的一个通过关节(6)来连接到另一个所述连杆(5);装置(9,10),其用于针对所述关节(6)中的任一个而确定关节(6)的角速度和关节(6)所受到的转矩;神经网络(11),其连接到所述装置(9,10),以用于从所述装置(9,10)接收角速度数据和转矩数据,并且,神经网络(11)被训练成基于所述角速度数据和所述转矩数据而在机器人臂(1)的正常操作状况、机器人臂(1)与外部物体碰撞的状况以及人有意地与机器人臂(1)交互的状况之间区分。(A robot system includes: robot arm (1) comprising: a plurality of links (5); and a plurality of joints (6), one of said links (5) being connected to another of said links (5) by a joint (6); means (9,10) for determining, for any of said joints (6), the angular velocity of the joint (6) and the torque to which the joint (6) is subjected; a neural network (11) connected to the device (9,10) for receiving angular velocity data and torque data from the device (9,10), and the neural network (11) is trained to distinguish between normal operating conditions of the robot arm (1), conditions of collision of the robot arm (1) with external objects, and conditions of human intentional interaction with the robot arm (1) based on the angular velocity data and the torque data.)

机器人系统和操作方法

技术领域

本发明涉及一种机器人系统,并且涉及一种用于机器人系统的操作方法。

背景技术

设计成以PFL(功率和力受限)方式直接地与人合作的机器人实现安全的物理的人-机器人交互。在这样的情况下,很可能发生人与机器人之间的接触。这些接触可属于不同种类,即,这些接触可为意外的,或这些接触可为人所预期的。在任一种情况下,在若干连杆通过关节来互连的机器人臂中,接触都将引起至少一个关节的角速度和/或关节所受到的转矩偏离预期值,该预期值可已在机器人臂的编程的移动的先前的迭代中测量,或该预期值可基于机器人连杆的已知的重量及杠杆率(leverage)和机器人臂的当前姿势而计算。

常规地,与预期值的任何显著偏离都将引起机器人臂停止。以此方式,如果偏离是由于与人碰撞,则可避免对人的伤害。在协作工作环境中,人可有意地触碰机器人,例如旨在导引机器人绕过在机器人当前执行的运动程序中未考虑到的新的障碍物。在此情况下,停止并非对接触的适当反应。

因此,如果机器人系统能够在意外接触与有意接触之间区分,则这将是合乎期望的。

基于碰撞包含更多的高频含量并且预期的交互包含更多的低频含量的假设,针对该问题的方法可依赖于关节负载转矩的低通滤波和高通滤波。然而,分类质量通常不足,因为为了成功地分类,必须考虑到其它量(例如,关节速度)和特征(例如,上升边缘的形状)。由于这些量中的许多量取决于给定的机器人的物理参数,因而必须针对不同的机器人模型而单独地开发关于如何考虑这些参数的规则,从而在高级技术工人方面需要相当大的投资。

发明内容

因此,本发明的目标是提供一种机器人系统和一种用于机器人系统的操作方法,其提供了在意外接触与有意接触之间区分的简单并且经济的方式。

根据本发明的一个方面,该目标由一种机器人系统实现,该机器人系统包括:

机器人臂,其包括:多个连杆;和多个关节,所述连杆中的一个通过关节来连接到另一个连杆;用于针对所述关节中的任一个而确定关节的角速度和关节所受到的转矩的装置,

神经网络,其连接到所述装置以用于从所述装置接收角速度数据和转矩数据,并且被训练成基于所述角速度数据和所述转矩数据而在机器人臂的正常操作状况、机器人臂与外部物体碰撞的状况以及人有意地与机器人臂交互的状况之间区分。

在优选实施例中,神经网络被训练成确定接触点,在该接触点处,机器人臂与外部物体碰撞和/或人有意地与机器人臂交互。

在优选实施例中,神经网络被训练成:基于所述角速度数据和所述转矩数据而在机器人臂的正常操作状况、机器人臂与外部物体碰撞的状况以及人有意地与机器人臂交互的状况之间区分;并且确定接触点,在该接触点处,机器人臂与外部物体碰撞和/或人有意地与机器人臂交互。这样的接触点可例如定位于肘部下方或上方。

根据本发明的机器人系统配置成应用接触分类和/或接触定位和/或组合的接触分类及定位。

根据本发明的机器人系统容易按比例增加分类输出的数量。因此,例如,代替“正常操作”/“交互”/“碰撞”,机器人系统可配置成应用诸如“正常操作”/“上臂交互”/“上臂碰撞”/“下臂交互”/“下臂碰撞”的分类。

如果在表示待区分的多种状况的足够数量的示例性数据上训练神经网络,则多种状况的具体特点转化成网络的神经元之间的互连的权重,而不需要人实际地识别这些特点并且制定规则。因此,无论机器人系统的物理特征如何,都可在不同的机器人系统中以低成本实施碰撞与有意接触之间的可靠区别。

为了促进在数据集之间的比较和对数据集的共同或不同的特点的识别,神经网络在每个时间步中接收来作为输入的数据必须具有恒定数量的元素。然而,在机器人臂的移动继续进行时,数据量持续地增加。因此,神经网络优选地设计成在给定的关节的角速度和转矩数据对的时间序列上操作,其中,为了将数据集维持于恒定大小,当新数据对被确定并且添加到时间序列时,最早的对被删除。

因而获得的数据可被视为类似于视频图像帧,在视频图像帧中,例如,在给定的时间点在多种关节处获得的数据形成像素数据的行,并且,列由给定的关节的连续地获得的数据形成。在这样的数据集中,对指示碰撞或有意接触的特点的识别可与模式识别比较。

理论上,如果神经网络的所有神经元或至少大量的神经元从每个关节接收数据,则应当可实现最佳区别质量。因此,在本发明的基本实施例中,神经网络的至少一个神经元被连接,以便接收所述关节中的每一个的角速度数据和转矩数据。

然而,神经元具有越多的连接,就耗费越长时间来训练网络,或更确切地说,训练数据的量就必须越大。因此,可为优选的是,不允许所有神经元都从机器人臂的各处接收数据,而是使神经元与机器人的具体关节相关联。更精确地说,神经网络的至少一个神经元可被连接,以便仅接收所述关节中的相关联的一个的角速度数据和转矩数据。

在实践中,机器人臂的每个关节可具有与其相关联的一个或多个神经元,该神经元仅从该一个关节接收数据。

具体地,神经网络可包括第一隐藏层,第一隐藏层被分成多个群组,给定的群组的神经元被连接,以便仅接收所述关节中的相关联的一个的角速度数据和转矩数据,并且未连接到其它群组的神经元。

在此情况下,可提供第二隐藏层,第二隐藏层的神经元连接到第一隐藏层中的多种群组,使得在第一隐藏层的神经元群组可识别可指示意外接触或有意接触的来自给定的关节的数据中的特点时,第二隐藏层的神经元可提供对整个机器人臂的概览。

在每个群组与所述关节中的一个相关联的神经网络中,每个群组可单独地被训练成在相关联的关节的正常操作、关节与外部物体碰撞的状况以及人有意地与关节交互的状况之间区分。由于神经元的每个群组可集中于来自其相关联的关节的数据,因而对指示给定的类型的接触的特点的识别倾向于对于这样的群组比对于如上文中所限定的网络(其中,神经元可从任何关节接收数据)更容易,使得可仅使用适量的训练数据来实现良好的训练结果。

机器人系统可进一步包括用于控制机器人臂的运动的控制器,控制器的操作模式可取决于由神经网络输出的操作状况信号而变化。

控制器的操作模式中的一个可例如为引导(leadthrough)模式,在引导模式下,控制器基于来自关节的转矩数据和角速度数据而检测由人施加到机器人的接触力的方向,并且控制机器人沿该力的方向移动。这样的切换将使人能够例如导引机器人臂绕过控制器未察觉或尚未察觉的位于机器人臂的环境中的障碍物,并且因而防止与障碍物碰撞。

控制器的操作模式中的另一个可为正常模式,在正常模式下,机器人臂的移动由预确定的程序限定。如果神经网络发现有意交互已结束,则控制器可进入所述正常模式,因而人一停止导引机器人臂,就使机器人臂能够立即恢复正常操作。

根据本发明的机器人系统还可配置成对其它类型的接触情形进行分类。针对这样的接触情形的示例将为执行组装任务的机器人持续地测量机器人的工具的位置和所发生的接触力及力矩。于是,根据位置的路线(course)以及力和力矩,可在利用神经网络的根据本发明的机器人系统中对是否成功地完成组装任务进行分类。针对这样的使用情况而在机器人系统中对神经网络进行的训练等同于针对人-机器人接触的区别和/或定位而对神经网络进行的训练,只是网络的输入数据和输出改变;在到目前为止描述的情况下:输入关节力矩和速度,输出对接触的分类;在第二种所描述的情况下:输入笛卡尔位置和力/力矩,输出对组装任务的成功情况的分类。

根据本发明的第二方面,上文的目标通过一种操作机器人系统的方法来实现,该方法包括以下步骤:

a) 提供神经网络,神经网络具有多个输入,多个输入中的每个与所述系统的机器人臂的关节相关联,以用于接收所述关节的转矩数据和角速度数据,

b) 基于表示正常操作、至少一次碰撞以及人有意地与机器人臂交互的转矩数据和角速度数据的时间序列,将所述神经网络训练成基于所述角速度数据和所述转矩数据而在机器人臂的正常操作状况、机器人臂与外部物体碰撞的状况以及人有意地与机器人臂交互的状况之间区分;

c) 将机器人臂的实时转矩数据和实时角速度数据输入到神经网络中,以便根据实时转矩数据和实时角速度数据来确定机器人臂的操作状况,并且基于操作状况而选择机器人臂的操作模式。

在优选实施例中,方法进一步包括以下步骤:将神经网络训练成确定接触点,在接触点处,机器人臂与外部物体碰撞和/或人有意地与机器人臂交互。

在优选实施例中,方法进一步包括以下步骤:将神经网络训练成:基于所述角速度数据和所述转矩数据而在机器人臂的正常操作状况、机器人臂与外部物体碰撞的状况以及人有意地与机器人臂交互的状况之间区分;并且确定接触点,在接触点处,机器人臂与外部物体碰撞和/或人有意地与机器人臂交互。这样的接触点可例如定位于肘部下方或上方。

根据本发明的方法配置成提供接触分类和/或接触定位和/或组合的接触分类及定位。

根据本发明的方法容易按比例增加分类输出的数量。因此,例如,代替“正常操作”/“交互”/“碰撞”,机器人系统可配置成应用诸如“正常操作”/“上臂交互”/“上臂碰撞”/“下臂交互”/“下臂碰撞”的分类。

根据本发明的方法还可配置成对其它类型的接触情形进行分类。针对这样的接触情形的示例将为执行组装任务的机器人持续地测量机器人的工具的位置和所发生的接触力及力矩。于是,根据位置的路线以及力和力矩,可使用利用神经网络的根据本发明的方法来对是否成功地完成组装任务进行分类。该方法等同于人-机器人接触的区别和/或定位,只是网络的输入数据和输出改变;在到目前为止描述的情况下:输入关节力矩和速度,输出对接触的分类;在第二种所描述的情况下:输入笛卡尔位置和力/力矩,输出对组装任务的成功情况的分类。

附图说明

根据参考附图的随后对本发明的实施例的描述,本发明的另外的特征和优点将变得明显。

图1是根据本发明的机器人系统的框图;

图2图示了机器人系统的神经网络将其用作输入的数据;

图3是神经网络的第一实施例;

图4是神经网络的第二实施例;以及

图5是神经网络的第三实施例。

具体实施方式

图1图示了机器人系统,该机器人系统包括机器人臂1及其相关联的控制器2。机器人臂1包括支承件3、末端执行器4、任意数量的连杆5和关节6,关节6使连杆5彼此连接、连接到支承件3或连接到末端执行器4,并且具有一个或两个旋转自由度。如在本领域中常见的,用于驱动连杆5和末端执行器4围绕轴线7、8的旋转的马达隐藏在连杆5、关节6或支承件3内部。关节6进一步包括:与每条轴线7、8相关联的旋转编码器或其它适当的传感器9,其向控制器2提供关于每个连杆5的取向和角速度的数据;和转矩传感器10,其分别对沿轴线7和轴线8的方向的转矩敏感。当机器人臂1自由地移动而不会接触到外部物体时,由这些传感器10检测到的转矩由连杆5的重量和几何结构、连杆5的内部摩擦管控,并且,当角速度不恒定时,该转矩由连杆5的惯性力矩管控,使得控制器2可基于连杆5的已知的角和旋转速度而计算在每个关节处的预期转矩。

如果由传感器10检测到的转矩与这样的预期值显著偏离,则可假设机器人臂1与某个外部物体或人接触。来自传感器9、10的输出数据由神经网络11接收,神经网络11继而确定控制器2的操作模式。

FIFO存储设备12连接在神经网络11和传感器9、10的输出之间,从而不仅使得当前的转矩数据和角速度数据可被神经网络11利用,而且使得来自传感器9、10的M个最近的数据集可被神经网络11利用,其中,M是任意整数。

控制器2具有至少三个操作模式,即,正常操作模式,在正常操作模式下,控制器2控制机器人臂根据预限定的程序移动,例如以便抓住螺钉13并且将螺钉13引入到工件14中。另一个操作模式是紧急停止模式,在紧急停止模式下,机器人臂1立即停住,并且,第三个操作模式是引导模式,在引导模式下,机器人臂1将移动到其由外力(例如,由使用者的手15)推进到的方向上。

图2是由机器人臂1的传感器所提供的角速度数据和转矩数据形成的“图像帧”。图像帧包括“像素”16,像素16中的每个对应于来自一个传感器9或10的一个数据。这些像素16被组织成2N行和M列,N是机器人臂1的自由度的数量和与这些自由度中的每个相关联的角速度传感器9和转矩传感器10的数量,每个列对应于在给定的时间点从所述2N个传感器9、10获得并且存储于FIFO存储设备13中的数据集。

神经网络11的任务是在由来自传感器9、10的数据形成的图像帧中识别为意外接触和有意接触的特征的特点,使得当神经网络11识别到意外接触时,神经网络11将使控制器2切换成紧急停止模式,并且,当神经网络11识别到有意接触时,控制器2切换到引导模式。

通过以下方式来离线地训练神经网络11以识别这些特点:输入在正常操作中、在意外接触的情况下以及在有意接触的情况下从机器人臂获得的训练数据,并且,通过反向传播来以本身已知的方式优化网络的神经元之间的耦合系数,直到这些不同状况被网络11识别的可靠性令人满意。

神经网络11可具有图3中所示出的如下的结构:在隐藏层17中,存在P个神经元18,神经元18中的每个从存储于存储设备13中的M个最近的数据集接收转矩数据和角速度数据,即,神经元18中的每个能够“看到”图2的帧中的每一个像素。输出层19包括至少三个神经元20,对于网络11必须从中选择的控制器2的操作模式中的每个来说均有一个神经元20。神经元20中的每个从隐藏层17的所有神经元18接收输入。隐藏层17中的神经元18利用标准Sigmoid激活函数来工作,而输出层19中的神经元20使用Softmax激活函数。在给定的时间,神经元20中的仅一个可为活动的。当这样的神经元20变成活动的时,神经元20使控制器2切换成其相关联的操作模式。

由于每个神经元18接收个输入数据,因而每个神经元18的加权系数向量必须具有个分量,使得训练过程涉及优化个加权系数。为了防止神经网络11仅仅记忆其训练数据和与训练数据相关联的期望的识别结果,需要大量的训练数据,并且,令人满意的训练所需的计算量比与机器人臂1的自由度数量N成线性比例增加得快得多。

根据图4中所示出的优选实施例,神经网络11具有反映机器人臂1的结构的如下的结构:隐藏层17的神经元18被分成N个群组21,其中的每个与机器人臂1的一个自由度相关联或与机器人臂1的对应的关节5相关联。一个群组21的神经元仅从所述一个关节5的角速度传感器9和转矩传感器10接收数据。这以因子N减少每个神经元18中的加权系数的数量。由于每个群组21监督仅一个关节5,因而一个群组21中所需要的神经元的数量将远少于图3的P个神经元;更确切地说,由于神经网络11将解决的任务的复杂性在两种情况下相同,因而隐藏层神经元18的总数量在两个实施例中可为相同的。因此,训练所需的计算量减小,这不仅由于加权向量分量的数量更少,而且因为防止网络11记忆所需要的训练数据的量比在图3的情况下更少。

图5中所示出的网络11的结构根据如下的事实而建模:接触(有意的或意外的)对给定的关节5的影响取决于在机器人臂1中的何处发生接触。任何接触一般都将对与发生接触的连杆紧邻的关节造成最显著的影响。因此,在另外的优选实施例中,训练数据不仅被标记为对应于正常操作、意外接触或有意接触,而且在后两种情况下,训练数据还指定发生接触的连杆。显然,对于隐藏层17中的与给定的关节相关联的神经元18,识别与该关节紧邻的连杆发生接触的状况比识别远处的连杆发生接触的状况容易得多。因此,在图5的实施例中,网络11被分成N个子网络22,其中的每个与机器人臂1的一个关节或自由度相关联。每个子网络22包括隐藏层23,隐藏层23的神经元18仅从所述关节的角速度传感器9和转矩传感器10接收数据,正如图4的群组21的神经元那样。然而,与这些群组21对比,子网络22不具有共同输出层,而是每个子网络具有其自身的输出层24。

基于指示发生接触的连杆的训练数据,这些输出层24可被训练成在正常操作和在与输出层24的相关联的关节相邻的连杆中发生接触(有意的或意外的)的状况之间区分。由于接触一般将在附近的关节中产生明显地最显著的影响,因而与必须考虑到远处的接触的情况相比,对于与该关节相关联的子网络22,学习该关节的特征特点也更容易。因此,可在此基于少量的训练数据来实现良好的区别质量。

子网络22的输出层中的神经元的数量Q可等于控制器2的操作模式的数量。于是,这些输出层24的输出可直接地用于对控制器2的操作模式进行控制。另外,可提供全局输出层25,对于作为整体的机器人臂,全局输出层25的神经元指示机器人臂是正常地操作、意外接触还是有意接触。如果Q是操作模式的数量,则全局输出层25的神经元可实施为简单的逻辑门,例如:用于正常操作的或非门,当子网络22均不指示接触状况时,该或非门将输出真;或分别用于意外接触和有意接触的或门,每当子网络22中的一个在其相关联的连杆处检测到意外接触和有意接触时,该或门都将输出真。

在实践中,子网络22的输出层24中的神经元的数量Q应当略高于操作模式的数量,以便使每个子网络22能够向全局输出层25提供更多的信息,例如不仅提供在紧邻的连杆处是已发生接触还是未发生接触的信息,而且提供是否存在可能已在远距离的连杆处发生接触的怀疑的信息,由此使全局输出层25能够得出更合理的结论。

参考数字

1 机器人臂

2 控制器

3 支承件

4 末端执行器

5 连杆

6 关节

7 轴线

8 轴线

9 角速度传感器

10 转矩传感器

11 神经网络

12 FIFO存储设备

13 螺钉

14 工件

15 手

16 像素

17 隐藏层

18 神经元

19 输出层

20 神经元

21 群组

22 子网络

23 隐藏层

24 输出层

25 全局输出层。

13页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于确定机器人装置的优化移动序列的方法和设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!