把持姿态评价装置和把持姿态评价程序的制作方法

文档序号:23667294发布日期:2021-01-15 14:06阅读:121来源:国知局
把持姿态评价装置和把持姿态评价程序的制作方法

本申请要求2018年7月13日提交的日本专利申请2018-133730号作为优先权,并通过参照将其全文援引于本说明书中。

本发明涉及把持姿态评价装置和把持姿态评价程序。



背景技术:

在机器人的示教作业中,作业者对包括把持姿态等的输送条件进行调整,以使机器人通过机械手把持的工件不会掉落。把持姿态一般是考虑到把持的稳定性而决定的,由作业者通过反复试验而决定工件不会掉落的把持姿态。

在通过反复试验决定把持姿态的情况下,为了得到最佳的把持姿态,作业者必须熟练。根据作业者的熟练度,有时得不到最佳的把持姿态,或者需要很大的时间才能得到。进而,在通过机器人拾取乱堆的工件这样的事例中,由于工件的朝向不定,因而需要设想可能产生的工件的朝向并示教多个最佳的把持姿态。

因此,希望自动地获得适当的把持姿态。与此相关联地提出了如下控制装置:根据工件(对象物)的三维形状和对象物的内容物的状态,自动决定通过机器人输送对象物的输送方法,并根据所决定的输送方法控制机器人(例如参照日本特开2016-034685号公报)。



技术实现要素:

发明所要解决的技术问题

然而,在日本特开2016-034685号公报中记载的发明中,作为输送方法,虽然自动决定对象物的把持姿态,但把持姿态是以不使对象物的内容物扩散为目的而决定的。这样,或许对象物被稳定地输送,但有时会对机器人施加过多的负荷,从机器人的负荷这一观点来看,尚不能说可实现适当的把持姿态。如果以对机器人施加过多负荷的把持姿态使机器人进行输送,则机器人会紧急停止,无法继续作业。

本发明是鉴于上述问题而提出的,提供一种能够在考虑到机器人的负荷的基础上评价对象物的适当的把持姿态的把持姿态评价装置和把持姿态评价程序。

用于解决问题的技术方案

本发明的第一方式是把持姿态评价装置,其具有:把持姿态导出部,导出机器人所具备的机械手把持工件时的机械手的把持姿态;负荷指标值计算部,计算负荷指标值,负荷指标值表示在机械手以把持姿态导出部导出的把持姿态把持工件进行输送时施加于机器人的负荷;以及把持姿态评价部,根据负荷指标值计算部算出的负荷指标值来评价把持姿态是否适当;每当把持姿态评价部评价为把持姿态不适当时,便反复进行:通过把持姿态导出部导出新的把持姿态、通过负荷指标值计算部计算负荷指标值以及通过把持姿态评价部进行评价。

第一方式的把持姿态评价装置还具有计算稳定指标值的稳定指标值计算部,该稳定指标值表示在机械手以把持姿态导出部导出的把持姿态把持工件进行输送时的工件的把持的稳定性;把持姿态评价部根据负荷指标值计算部算出的负荷指标值和稳定指标值计算部算出的稳定指标值来评价把持姿态是否适当。

第一方式的把持姿态评价装置还具有生成机器人输送工件时的动作轨道的动作轨道生成部;负荷指标值计算部计算机器人利用机械手按照动作轨道生成部生成的动作轨道把持工件进行输送时的负荷指标值;稳定指标值计算部计算机器人利用机械手按照动作轨道生成部生成的动作轨道把持工件进行输送时的稳定指标值;每当把持姿态评价部评价为把持姿态不适当时,便反复进行:通过把持姿态导出部导出新的把持姿态和通过动作轨道生成部生成新的动作轨道中的至少一方、通过负荷指标值计算部计算负荷指标值、通过稳定指标值计算部计算稳定指标值以及通过把持姿态评价部进行评价。

在第一方式的把持姿态评价装置中,负荷指标值计算部评价算出的负荷指标值是否适当;当通过负荷指标值计算部评价为负荷指标值不适当时,不通过把持姿态评价部对与被评价为不适当的负荷指标值相关的把持姿态进行评价,而是通过把持姿态导出部导出新的把持姿态。

在第一方式的把持姿态评价装置中,稳定指标值计算部评价算出的稳定指标值是否适当;当通过稳定指标值计算部评价为稳定指标值不适当时,不通过把持姿态评价部对与被评价为不适当的稳定指标值相关的把持姿态进行评价,而是通过把持姿态导出部导出新的把持姿态。

第一方式的把持姿态评价装置还具有把持可能性评价部,该把持可能性评价部对于在拿起或载置工件时,机器人能否实现把持姿态导出部导出的把持姿态进行评价;当通过把持可能性评价部评价为机器人不能实现姿态时,把持姿态导出部进一步导出不同于与已通过把持可能性评价部进行了评价的姿态相关的把持姿态的新的把持姿态。

在第一方式的把持姿态评价装置中,把持姿态导出部导出多个把持姿态;把持姿态评价部判断把持姿态导出部导出的多个把持姿态中的各个把持姿态是否适当,在多个把持姿态中判断为适当的把持姿态存在多个时,将判断为适当的多个把持姿态中的各个把持姿态与由负荷指标值计算部计算出的负荷指标值进行比较,决定最佳的把持姿态。

在第一方式的把持姿态评价装置中,把持姿态导出部导出多个把持姿态;把持姿态评价部判断把持姿态导出部导出的多个把持姿态中的各个把持姿态是否适当,在多个把持姿态中判断为适当的把持姿态存在多个时,将判断为适当的多个把持姿态中的各个把持姿态与由负荷指标值计算部计算出的负荷指标值和由稳定指标值计算部计算出的稳定指标值分别进行比较,决定最佳的把持姿态。

在第一方式的把持姿态评价装置中,把持姿态导出部通过随机决定机械手与工件的相对位置关系而导出把持姿态。

在第一方式的把持姿态评价装置中,把持姿态导出部优先从安装有机械手的机器人的指尖位置与工件的重心位置一致的部位开始导出把持姿态,并以把持姿态的导出次数越多,则安装有机械手的机器人的指尖与工件的重心之间的距离越远的方式导出把持姿态。

另外,本发明的第二方式的把持姿态评价程序使计算机执行如下步骤:把持姿态导出步骤,导出机器人所具备的机械手把持工件时的机械手的把持姿态;负荷指标值计算步骤,计算负荷指标值,负荷指标值表示在机械手以把持姿态导出部导出的把持姿态把持工件进行输送时施加于机器人的负荷;以及把持姿态评价步骤,根据负荷指标值计算部算出的负荷指标值来评价把持姿态是否适当;并且,每当通过把持姿态评价步骤评价为把持姿态不适当时,便反复进行:通过把持姿态导出步骤导出新的把持姿态、通过负荷指标值计算步骤计算负荷指标值以及通过把持姿态评价步骤进行评价。

第二方式的把持姿态评价程序还具有计算稳定指标值的稳定指标值计算步骤,该稳定指标值表示在机械手以把持姿态导出步骤中导出的把持姿态把持工件进行输送时的工件的把持的稳定性;在把持姿态评价步骤中,根据通过负荷指标值计算步骤算出的负荷指标值和通过稳定指标值计算步骤算出的稳定指标值来评价把持姿态是否适当。

第二方式的把持姿态评价程序还具有生成机器人输送工件时的动作轨道的动作轨道生成步骤;在负荷指标值计算步骤中,计算机器人利用机械手按照动作轨道生成步骤中生成的动作轨道把持工件进行输送时的负荷指标值;在稳定指标值计算步骤中,计算机器人利用机械手按照动作轨道生成步骤中生成的动作轨道把持工件进行输送时的稳定指标值;每当把持姿态评价步骤中评价为把持姿态不适当时,便反复进行:通过把持姿态导出步骤导出新的把持姿态和通过动作轨道生成步骤生成新的动作轨道中的至少一方、通过负荷指标值计算步骤计算负荷指标值、通过稳定指标值计算步骤计算稳定指标值以及通过把持姿态评价步骤进行评价。

(发明效果)

根据本发明,能够在考虑到机器人的负荷的基础上评价对象物的适当的把持姿态。

附图说明

图1是表示机器人及把持姿态评价装置的概略构成的图。

图2是表示作为垂直多关节机器人的机器人的构成的图。

图3是表示第一实施方式涉及的把持姿态评价装置的硬件构成的框图。

图4是表示把持姿态评价装置的功能构成的例子的框图。

图5是表示机械手和工件的一例的图。

图6是表示通过机械手把持工件的把持姿态的例子的图。

图7是表示例示的把持姿态下的把持姿态指标值和负荷指标值的例子的图。

图8是表示把持姿态评价处理的流程的流程图。

图9是表示第二实施方式涉及的把持姿态评价处理的流程的流程图。

图10是表示第三实施方式涉及的把持姿态评价装置的功能构成的例子的图。

图11是表示第三实施方式的把持姿态评价处理的流程的流程图。

具体实施方式

以下,参照附图对本发明的实施方式的一例进行说明。此外,在各附图中,对于相同或等价的构成要素及部分赋予相同的参考符号。另外,为了便于说明,附图的尺寸比率被放大,有时与实际的比率不同。

(第一实施方式)

图1是表示机器人及把持姿态评价装置的概略构成的图。

如图1所示,把持姿态评价装置10与机器人rb连接,控制机器人rb。把持姿态评价装置10也可以作为控制机器人rb的控制装置的一个功能嵌入控制装置中。

把持姿态评价装置10是评价机器人rb把持作为输送的对象物的工件等的姿态的装置。关于把持姿态评价装置10的详细构成,将在后面说明。

机器人rb具有例如前端安装有机械手h作为末端执行器的机械臂a。机器人rb通过利用机械手h把持工件而成为保持工件的状态。然后,在保持工件的状态下输送至规定的目的地,解除工件的保持而载置工件。这样,机器人rb是在规定的场所拿起工件并载置于目的地的、所谓的取放装置。

在对把持姿态评价装置10详细进行说明之前,对机器人rb的构成进行说明。在本实施方式中,作为一例,对机器人rb为垂直多关节机器人的情况进行说明。但是,本发明也能够应用于水平多关节机器人(scara机器人)等中。另外,本发明也能够应用于并联连杆机器人、仿人型机器人以及移动机械手等具备机械臂的装置中。另外,本发明也可以应用于具有机械手这样的把持部的移动机器人、无人机等中。

图2是表示作为垂直多关节机器人的机器人的构成的图。

如图2所示,机器人rb是具备基座连杆bl、连杆l1~l6、接头j1~j6的六自由度的六轴机器人。此外,接头是指将连杆彼此连接的关节。接头j1~j6将连杆彼此以能够在未图示的电机的作用下旋转的方式连接。另外,以下,包括连杆l1~l6以及与连杆l6连接的机械手h在内称为机械臂。

基座连杆bl和连杆l1经由在图2中以铅垂轴s1为中心向箭头c1方向旋转的接头j1连接。因此,连杆l1以接头j1为支点向箭头c1方向旋转。

连杆l1和连杆l2经由在图2中以水平轴s2为中心向箭头c2方向旋转的接头j2连接。因此,连杆l2以接头j2为支点向箭头c2方向旋转。

连杆l2和连杆l3经由在图2中以轴s3为中心向箭头c3方向旋转的接头j3连接。因此,连杆l3以接头j3为支点向箭头c3方向旋转。

连杆l3和连杆l4经由在图2中以轴s4为中心向箭头c4方向旋转的接头j4连接。因此,连杆l4以接头j4为支点向箭头c4方向旋转。

连杆l4和连杆l5经由在图2中以轴s5为中心向箭头c5方向旋转的接头j5连接。因此,连杆l5以接头j5为支点向箭头c5方向旋转。

连杆l5和连杆l6经由在图2中以轴s6为中心向箭头c6方向旋转的接头j6连接。因此,连杆l6以接头j6为支点向箭头c6方向旋转。此外,连杆l6上安装有机械手h,图2中省略了图示。

接头j1~j6作为可动区域分别设定有预定的旋转角度范围。

机器人rb的姿态根据接头j1~j6各自的旋转角度而定。因此,用于使机器人rb动作的动作指令值是与机器人rb应采取的姿态对应的接头j1~j6各自的旋转角度。例如,机器人rb把持工件的把持姿态也可以作为接头j1~j6的旋转角度数据而获得。

接着,对把持姿态评价装置10进行说明。

图3是表示第一实施方式涉及的把持姿态评价装置的硬件构成的框图。

本实施方式的把持姿态评价装置10使用机器人、安装于机器人上的机械手、作为通过机械手把持的对象物的工件的模型,评价通过机器臂把持工件时的把持姿态。作为模型,例如有利用数式表现机器人等中产生作用的物理现象的物理模型、或者通过系统辨识或者机械学习等从实机的测量数据得到的动态模型。模型中包括机器人、机械手以及工件的形状、质量以及重心位置等的信息。

如图3所示,把持姿态评价装置10具有cpu(centralprocessingunit:中央处理器)11、rom(readonlymemory:只读存储器)12、ram(randomaccessmemory:随机存取存储器)13、存储器14、输入部15、监视器16、光盘驱动装置17以及通信接口18。各构成经由总线19以能够相互通信的方式连接。

在本实施方式中,在rom12或存储器14中存储有执行把持姿态的评价的把持姿态评价程序。cpu11是中央运算处理单元,执行各种程序、或者控制各构成。即,cpu11从rom12或存储器14中读出程序,将ram13作为工作区域执行程序。cpu11按照rom12或存储器14中记录的程序进行上述各构成的控制以及各种运算处理。

rom12存储各种程序和各种数据。ram13作为工作区域而临时存储程序或数据。存储器14由hdd(harddiskdrive:硬盘驱动器)、ssd(solidstatedrive:固态驱动器)或者闪存构成,存储包括操作系统在内的各种程序和各种数据。

输入部15包括键盘151和鼠标152等的指示设备,用于进行各种输入。监视器16例如是液晶显示器,显示工件的吸附成功与否等的各种信息。监视器16也可以采用触摸面板方式,作为输入部15发挥功能。光盘驱动装置17进行各种记录介质(cd-rom或者蓝光盘等)中存储的数据的读入、针对记录介质的数据的写入等。

通信接口18是用于与其他设备进行通信的接口,例如使用以太网(注册商标)、fddi或wi-fi(注册商标)等标准。

接着,对把持姿态评价装置10的功能构成进行说明。

图4是表示把持姿态评价装置的功能构成的例子的框图。

如图4所示,把持姿态评价装置10的构成构成具有把持姿态导出部101、稳定指标值计算部102、负荷指标值计算部103、把持姿态评价部104以及把持姿态输出部105。各功能构成通过由cpu11读出rom12或存储器14中存储的把持姿态评价程序,并加载至ram13上执行而实现。

把持姿态导出部101导出机器人rb所具备的机械手h把持作为对象物的工件时的机械手的把持姿态。把持姿态根据工件的模型和机械手h的模型,并按照规定的规则决定或者随机决定。关于把持姿态的决定,将在后面详细说明。

稳定指标值计算部102计算稳定指标值,该稳定指标值表示由机械手h以通过把持姿态导出部101导出的把持姿态把持工件并输送时的、工件的把持的稳定性。在此,稳定指标值计算部102将通过把持姿态导出部101导出的把持姿态以及把持工件并进行输送时的机器人rb的动作轨道作为输入而计算稳定指标值。稳定指标值例如可以应用表示机器人工学的尤其是操作中的稳定性的力封闭(forceclosure)的想法。力封闭表示相对于工件的外力的平衡的评价指标。或者,稳定指标值也可以应用形封闭(formclosure)的想法。形封闭表示不存在工件能够通过对工件的约束而移动的方向的状态、即约束状态的评价指标。关于力封闭和形封闭,由于是公知的想法,故此处省略说明。在以下的本实施方式中,对于作为稳定指标值而应用力封闭的例子进行说明。在将力封闭作为稳定指标值的情况下,例如在未成为力封闭时,稳定指标值为0,在成为力封闭时,根据稳定性的高度而赋予大于0且小于等于1的数值。

具体而言,例如将机器人rb的把持力设定为根据机械手h的规格、工件w的重量而确定的制造商推荐的把持力,并将随机多次导出把持姿态时的稳定性的最佳值设为1。次数越多则最佳值的可靠性越高,但现实中设定能够实时处理的次数。也可以不是随机的,而是从安装有机械手h的机器人rb的指尖位置与工件w的重心位置一致的地方起优先导出把持姿态。或者,在工件w脆而若施加制造商推荐的把持力会损坏的情况下,也可以通过由用户暂时使机械手h以任意的姿态把持工件w来确定不损坏的极限的把持力,将机械手h的把持力设定为所确定的把持力,并将随机多次导出把持姿态时的稳定性的最佳值设为1。

负荷指标值计算部103计算负荷指标值,该负荷指标值表示由机械手h以通过把持姿态导出部101导出的把持姿态把持工件并进行输送时作用于机器人rb上的负荷。在此,作用于机器人rb上的负荷作为作用于使机器人rb的接点j1~j6旋转的电机上的转矩而得到。负荷指标值计算部103将把持并输送工件时的机器人rb的动作轨道、以及输送工件时作用于机器人rb上的运动的运动方程式作为输入,计算负荷指标值。负荷指标值例如以与作用于机器人rb上的负荷的大小成反比例且为0~1的数值而算出。即,以作用于机器人rb上的负荷越大则负荷指标值越小的方式算出负荷指标值。负荷指标值例如通过下式(1)算出。

【数式1】

其中,q,分别表示机器人rb的各接头的角度、角速度、角加速度,m表示惯性矩阵,c表示科里奥利力,g表示重力项,τfric表示非线性摩擦系数,τmn表示非模块化的模块化误差。

把持姿态评价部104至少根据负荷指标值计算部103算出的负荷指标值来评价把持姿态是否适当。在本实施方式中,把持姿态评价部104根据稳定指标值计算部102算出的稳定指标值和负荷指标值计算部103算出的负荷指标值来评价把持姿态是否适当。

把持姿态输出部105输出控制信号,以使机器人rb和机械手h以通过把持姿态评价部104评价为适当的把持姿态进行动作。

接着,对于把持姿态导出部101导出的机械手h对工件的把持姿态的例子进行说明。

图5是表示机械手和工件的一例的图。图6是表示通过机械手把持工件的把持姿态的例子的图。图7是表示例示的把持姿态下的把持姿态指标值和负荷指标值的例子的图。

在本实施方式中,如图5所示,以通过机械手h把持l字型的工件w的情况为例进行说明。作为用于导出通过机械手h把持工件w的把持姿态的基本的想法例如如图6所示。此外,在图6中,通过黑白圆表示工件w的重心g的位置。

图6中例示了把持姿态(a)~(d)四个。在把持姿态(a)下,使工件w的重心g与机器人rb的指尖(连杆l6的前端)之间的距离为最短。把持姿态(a)与其他的把持姿态相比,稳定指标值和负荷指标值中容易出现高的值。在采用把持姿态(a)的情况下,把持姿态导出部101首先导出把持姿态(a),进而在需要导出其他的把持姿态时,可以通过改变以重心g为中心的工件w与机械手h的相对角度、或者增大相对于重心g的工件w的距离,从而导出各种把持姿态。即,在采用把持姿态(a)的情况下,把持姿态导出部101以把持姿态的导出次数越多则机器人rb的指尖与工件w的重心g之间的距离越远的方式导出把持姿态。

在把持姿态(b)下,使机械手h的中心(重心)与工件w的重心g—致。把持姿态(b)具有稳定指标值和负荷指标值比把持姿态(a)低的倾向。在采用把持姿态(b)的情况下,把持姿态导出部101首先导出把持姿态(b),进而在需要导出其他的把持姿态时,可以通过改变以重心g为中心的工件w与机械手h的相对角度、或者增大相对于重心g的工件w的重心g为止的距离,从而导出各种把持姿态。即,在采用把持姿态(b)的情况下,把持姿态导出部101以把持姿态的导出次数越多则机械手h的中心与工件w的重心g之间的距离越远的方式导出把持姿态。

在把持姿态(c)下,使机械手h的把持位置与工件w的重心g—致。把持姿态(c)是稳定性高的把持姿态,但根据工件w的形状的不同,可能无法实现把持。另外,具有负荷指标值降低的倾向。在采用把持姿态(c)的情况下,把持姿态导出部101首先导出把持姿态(c),进而在需要导出其他的把持姿态时,可以通过改变以重心g为中心的工件w与机械手h的相对角度、或者增大把持位置与工件w的重心g之间的距离,从而导出各种把持姿态。

这样,在采用把持姿态(a)~(c)中的任意一个的情况下,通过以各个把持姿态为起点一点一点地挪动把持姿态,能够得到各种把持姿态。或者,也可以采用把持姿态(a)~(c)全部。该情况下,例如依次采用把持姿态(a)~(c),并算出把持姿态。

另外,除了把持姿态(a)~(c)以外,也可以像把持姿态(d)那样随机决定把持姿态。在随机的情况下,导出的把持姿态无规律性,因而稳定指标值和负荷指标值不稳定。但是,采用随机的把持姿态(d),由于不受规律性束缚,把持姿态不偏颇,因而有可能得到最佳的把持姿态。

如上所述,能够根据各种想法而导出把持姿态。但是,把持姿态的导出并不限于上述想法,也可以通过任何想法而导出。

此外,利用上述那样的把持姿态(a)~(d)决定把持姿态时的稳定指标值和负荷指标值例如如图7中的表所示。根据图7,在把持姿态(a)的情况下,把持姿态指标值和负荷指标值分别为0.6和0.9。在此,把持姿态评价部104算出把持姿态指标值和负荷指标值的合计值1.5作为评价值。在把持姿态(b)的情况下,把持姿态指标值和负荷指标值分别为0.2和0.5。把持姿态评价部104算出把持姿态指标值和负荷指标值的合计值0.7作为评价值。在把持姿态(c)的情况下,在上述工件w的形状的例子中,机械手h无法把持工件w。因此,无法算出把持姿态指标值和负荷指标值,也无法得到评价值。在把持姿态(d)的情况下,由于是随机的姿态而无法明确地求出把持姿态,因而把持姿态指标值和负荷指标值均可能为0.0~1.0,评价值成为0.0~2.0。

这样,把持姿态评价部104可以根据把持姿态指标值和负荷指标值算出评价值。此外,把持姿态评价部104也可以对把持姿态指标值和负荷指标值分别加权而算出评价值。

接着,对把持姿态评价装置10的作用进行说明。

图8是表示把持姿态评价处理的流程的流程图。通过由cpu11从rom12或存储器14读出把持姿态评价程序,并加载至ram13中进行执行,从而进行把持姿态评价处理。

首先,cpu11获取工件w的模型(步骤s101),进一步获取机械手h的模型(步骤s102)。具体而言,cpu11获取工件w和机械手h的形状、质量以及重心位置的信息作为工件w和机械手h的模型。

cpu11导出把持姿态作为把持姿态导出部101(步骤s103)。把持姿态的导出如上所述。例如,cpu11导出图6的把持姿态(a)的把持姿态。接着,cpu11获取机器人rb输送工件w时的动作轨道(步骤s104)。在此,动作轨道是机器人rb进行动作的轨道,表示为机器人rb的各接头j1~j6的角度、角速度以及角加速度等的数据的时间序列的集合。

cpu11作为稳定指标值计算部102,根据步骤s103中导出的把持姿态和步骤s104中获得的动作轨道计算稳定指标值(步骤s105)。cpu11判断计算出的稳定指标值是否适当(步骤s106)。稳定指标值是否适当通过与规定的阈值进行比较来判断。例如,当算出的稳定指标值的值在0.0~1.0的范围内时,将阈值设定为该范围内的数值。例如设定阈值为0.3。该情况下,当步骤s105中算出的稳定指标值为0.3以上时,在步骤s106中判断为稳定指标值适当。阈值根据作业者所需的稳定性而适当地决定。

当稳定指标值不适当时(步骤s106:否),cpu11返回步骤s103,导出另一种把持姿态。另一种把持姿态例如通过改变以工件w的重心g为中心的工件w与机械手h的相对角度、或者增大相对于重心g的工件w的距离而导出。

当稳定指标值适当时(步骤s106:是),cpu11获取通过输送工件w而作用于机器人rb上的运动方程式(步骤s107)。

cpu11作为负荷指标值计算部103,根据步骤s103中导出的把持姿态、步骤s104中获得的动作轨道、以及步骤s107中获得的运动方程式,计算负荷指标值(步骤s108)。cpu11判断计算出的负荷指标值是否适当(步骤s109)。负荷指标值是否适当通过与预定的阈值进行比较来判断。例如,当算出的负荷指标值的值在0.0~1.0的范围内时,将阈值设定为该范围内的数值。例如设定阈值为0.3。该情况下,当步骤s108中计算出的负荷指标值为0.3以上时,在步骤s109中判断为稳定指标值适当。阈值根据作业者可容许的负荷适当地决定。

当负荷指标值不适当时(步骤s109:否),cpu11返回步骤s103,导出另一种把持姿态。

当负荷指标值适当时(步骤s109:是),cpu11作为把持姿态评价部104计算评价值(步骤s110)。评价值例如是在步骤s105中计算出的稳定指标值和在步骤s108中计算出的负荷指标值的合计值。

cpu11判断评价值是否适当(步骤s111)。评价值是否适当通过与规定的阈值进行比较来判断。例如,当算出的评价值的值在0.0~2.0的范围内时,将阈值设定为该范围内的数值。例如设定阈值为1.2。该情况下,当在步骤s110中计算出的评价值为1.2以上时,在步骤s111中判断为评价值适当。阈值由作业者适当地决定。

当评价值不适当时(步骤s111:“否”),cpu11返回步骤s103,导出另一种把持姿态。

当评价值适当时(步骤s111:是),cpu11将步骤s111中判断为评价值适当的把持姿态确定为最佳的把持姿态,并存储至存储器14中(步骤s112)。然后,cpu11结束把持姿态评价处理。此外,作为之后的处理,cpu11作为把持姿态输出部105根据存储于存储器14中的最佳的把持姿态控制机器人rb,应用于工件w的输送中。

如上所述,第一实施方式的把持姿态评价装置10,根据负荷指标值计算部103算出的负荷指标值判断把持姿态是否适当。因此,能够考虑到作用于机器人rb上的负荷而评价工件的适当的把持姿态。

另外,把持姿态评价装置10还考虑通过稳定指标值计算部102算出的稳定指标值。因此,不仅考虑作用于机器人rb上的负荷,还可以考虑到工件w被稳定地输送的情况而评价工件的适当的把持姿态。

把持姿态评价装置10对于稳定指标值本身也分别判断是否适当,如果稳定指标值不满足规定的阈值,则导出另一种把持姿态。因此,在不稳定的把持姿态的情况下,无需算出评价值,可以研究另一种把持姿态。能够更快地探索出适当的把持姿态。

把持姿态评价装置10对于负荷指标值本身也分别判断是否适当,如果负荷指标值不满足规定的阈值,则导出另一种把持姿态。因此,在负荷大的把持姿态的情况下,无需算出评价值,可以研究另一种把持姿态。能够更快地探索出适当的把持姿态。

把持姿态评价装置10在导出把持姿态时,首先导出机器人rb的指尖的位置最接近工件w的重心g的位置这样的把持姿态。然后,若把持姿态不适当,则以逐渐改变机械手h与工件w的相对位置关系的方式导出把持姿态。由于机器人rb的指尖的位置越接近工件w的重心g的位置,则稳定指标值和负荷指标值越容易变大,因此,与完全随机地导出把持姿态时相比,容易早发现适当的把持姿态。

另一方面,把持姿态评价装置10也可以完全随机地导出把持姿态。该情况下,由于并不限制为机器人rb的指尖的位置接近工件w的重心g的位置的把持姿态,因此,把持姿态中无偏颇,有可能发现评价值更大的把持姿态。

以上,对第一实施方式的把持姿态评价装置10进行了说明。但是,本发明并不限定于第一实施方式。能够进行各种改良或改变。

例如,在上述第一实施方式中,根据稳定指标值和负荷指标值两者计算评价值。但是,也可以省略步骤s105、步骤s106、步骤s110以及步骤s111而将负荷指标值本身作为评价值。

以下,对进一步的改变例进行说明。

(第二实施方式)

在第一实施方式中,当在图8的步骤s111中发现一个评价值适当的把持姿态的时刻,视为最佳的把持姿态,并进入步骤s112。在第二实施方式中,求出多个评价值适当的把持姿态,并从中确定最佳的把持姿态。

图9是表示第二实施方式涉及的把持姿态评价处理的流程的流程图。此外,在图9所示的把持姿态评价处理中,多个步骤与第一实施方式的把持姿态评价处理重复。因此,在图9中对于与图8同样的步骤标注相同的参考符号并省略说明。即,图9的步骤s101~步骤s111与图8的步骤s101~步骤s111相同。

当评价值适当时(步骤s111:是),cpu11将判断为适当的评价值与该评价值的把持姿态相关联地存储至存储器14中(步骤s201)。

cpu11判断是否有规定数量以上的判断为适当且存储在存储器14中的评价值(步骤s202)。在此,规定数量任意地确定。规定数量例如为10。

当存储于存储器14中的评价值的数量少于规定数量时(步骤s202:否),cpu11返回步骤s103,并导出新的把持姿态。

另一方面,当存储于存储器14中的评价值的数量为规定数量以上时(步骤s202:是),cpu11将与存储于存储器14的评价值中的最高值相关联的把持姿态确定为最佳的把持姿态(步骤s203)。

如上所述,根据第二实施方式的把持姿态评价装置10,把持姿态导出部101导出多个把持姿态。然后,把持姿态评价部104判断把持姿态导出部101导出的多个把持姿态各自的评价值是否适当。把持姿态评价部104在多个把持姿态中判断为适当的把持姿态存在多个的情况下,将针对判断为适当的多个把持姿态分别计算出的评价值进行比较,从而决定最佳的把持姿态。因此,与图8所示的把持姿态评价处理相比,能够确定最佳的把持姿态。

此外,在图9的步骤s202中,也可以取代适当的评价值的把持姿态的数量,而判断在步骤s103中导出的把持姿态的数量是否为规定数量以上。该情况下,例如将规定数量设定为50~10000等。这样,通过对导出的把持姿态的数量进行计数,进而将规定数量设定得较多,从而能够针对穷尽导出的多个把持姿态计算出评价值,并确定最佳的把持姿态。另外,由于对导出的数量设置上限,因而能够防止运算时间变得过长。

另外,在上述第二实施方式中,根据稳定指标值和负荷指标值两者计算评价值。但是,也可以省略步骤s105、步骤s106、步骤s110以及步骤s111而将负荷指标值本身作为评价值。

(第三实施方式)

在第三实施方式中,在第一实施方式的基础上进一步包含追加的构成。

图10是表示第三实施方式涉及的把持姿态评价装置的功能构成的例子的图。

如图10所示,第三实施方式涉及的把持姿态评价装置10作为追加的构成而具有起点/终点姿态计算部110、把持可能性评价部111以及动作轨道生成部112。各功能构成通过由cpu11读出rom12或存储器14中存储的把持姿态评价程序,并加载至ram13上执行而实现。

起点/终点姿态计算部110和把持可能性评价部111实现支援把持姿态导出部101的功能。具体而言,起点/终点姿态计算部110计算机器人rb拿起工件w时的机器人rb的姿态、以及机器人rb载置工件w时的机器人rb的姿态中的至少一方。在此,例如,把持姿态导出部101从未图示的三维摄像机或者红外线摄像机的图像信息获取工件w的当前(初始)的位置和姿态。然后,将把持姿态导出部101根据机械手h的模型和工件w的模型导出的把持姿态,应用于所获得的工件w的当前位置和姿态。换言之,起点/终点姿态计算部110计算出以导出的把持姿态把持当前位置和姿态下的工件w时的机器人rb的姿态作为起点姿态。

进而,起点/终点姿态计算部110通过未图示的三维摄像机或红外线摄像机获取输送工件w的目标位置的图像信息。起点/终点姿态计算部110根据所获得的目标位置的图像信息,决定输送到目标位置并载置时的工件w的目标位置和姿态。然后,将把持姿态导出部101根据机械手h的模型和工件w的模型导出的把持姿态应用于目标位置处的工件w的位置和姿态。换言之,起点/终点姿态计算部110计算出以导出的把持姿态把持目标位置和姿态下的工件w时的机器人rb的姿态作为终点姿态。

此外,起点/终点姿态计算部110也可以作为作业者预先登记的规定值而获取工件w的当前位置和姿态以及工件w的目标位置和姿态。

把持可能性评价部111评价通过起点/终点姿态计算部110算出的机器人rb的起点姿态和终点姿态是否是机器人rb能够实现的姿态。

动作轨道生成部112生成机器人rb输送工件w时的机器人rb的动作轨道。动作轨道例如是连接作业者预先登记为规定值的工件w的当前位置及姿态和工件w的目标位置及姿态的轨道。或者,动作轨道是从连接上述起点/终点姿态计算部110算出的工件w的当前位置以及姿态和工件w的目标位置及姿态的轨道。动作轨道生成部112例如可以通过rrt(rapid1y-exploringrandomtree)或prm(probabilisticroadmap)等的随机抽样法、或者chomp(covarianthamiltonianoptimizationformotionplanning)或stomp(stochastictrajectoryoptimizationformotionplanning)等的优化方法生成轨道。通过使用这样的方法,能够高速搜索从起点到终点的路径,并生成动作轨道。而且,动作轨道在每次生成时都能够随机变更。

接着,对第三实施方式的把持姿态评价装置10的作用进行说明。

图11是表示第三实施方式的把持姿态评价处理的流程的流程图。此外,第三实施方式的把持姿态评价处理的部分步骤与图8所示的处理相同。在图11中,对于与图8同样的步骤标注与图8同样的参考符号,并省略说明。

cpu11在步骤s103中导出把持姿态之后,作为起点/终点姿态计算部110计算起点处的机器人rb的姿态和终点处的机器人rb的姿态(步骤s301)。在此,cpu11通过将步骤s103中导出的把持姿态应用于工件w的当前位置和姿态以及工件w的目标位置和姿态,从而算出起点处的机器人rb的姿态和终点处的机器人rb的姿态。

接着,cpu11作为把持可能性评价部111评价实现计算出的把持姿态的可能性(步骤s302)。具体而言,cpu11判断步骤s301中算出的起点和终点处的机器人rb的姿态分别可否实际通过机器人rb的活动而实现。当起点和终点的至少一方超出机器人rb的活动范围时,则步骤s103中导出的把持姿态没有实现可能性。另外,在工件w的周边存在障碍物等,从而执行导出的把持姿态时机器人rb会与障碍物接触的情况下,则步骤s103中导出的把持姿态没有实现可能性。

cpu11判断把持姿态能否实现(步骤s303)。当把持姿态不能实现时(步骤s303:否),cpu11返回步骤s103。当返回至步骤s103时,cpu11在步骤s304中生成新的动作轨道。因此,步骤s103中导出的把持姿态与步骤s304中生成的动作轨道被随机组合,也能够搜索出最佳的把持姿态与动作轨道的组合。

当把持姿态能够实现时(步骤s303:是),cpu11生成机器人rb从步骤s301中算出的起点至终点进行动作的动作轨道(步骤s304)。然后,cpu11算出机器人rb在生成的动作轨道中进行动作时的稳定指标值和负荷指标值(步骤s105、步骤s108)。

如上所述,在第三实施方式中,判断算出的把持姿态是否能够对应于实际的工件w的位置和姿态、以及工件w的目标位置和姿态。在无法对应的情况下,立即转移到新的把持姿态的导出,因而能够减少与无法实现的工件w的把持姿态相关的试行。由此,能够有效地实现把持姿态的优化。

另外,每当返回步骤s103时,反复进行步骤s103中的把持姿态的导出和步骤s304中的动作轨道的生成。因此,与仅进行一次把持姿态的导出和动作轨道的生成的试行时相比,能够高概率得到作用于机器人rb上的负荷小的把持姿态。此外,图11的流程图中也可以应用图9的步骤s201和步骤s202。该情况下,能够可靠地反复进行把持姿态的导出和动作轨道的生成。

此外,在上述第三实施方式中,对通过特定的方法生成机器人的动作轨道这一进行了说明。但是,也可以将机器人的负荷最佳的动作轨道蓄积在存储器14等的数据库中,并以过去的最佳的动作轨道为基准而生成本次的动作轨道。通过参照过去所采用的动作轨道,能够生成符合作业者的喜好等的动作轨道。

另外,在上述第三实施方式中,如图11所示,当在步骤s106中稳定性指标值不适当时,返回步骤s103。并且,只要把持姿态能够实现,则反复进行步骤s103的把持姿态的导出和步骤s304的动作轨道的生成两者。但是,并不一定必须反复进行把持姿态的导出和动作轨道的生成两者。例如,也可以根据工件w的种类、大小或者质量等,或者根据用户的指定而仅反复进行把持姿态的导出和动作轨道的生成中的至少一方。不仅是把持姿态的导出,负荷和稳定性也根据动作轨道的生成而发生变化,因而反复进行动作轨道的生成也是有意义的。

在上述第一实施方式至第三实施方式中,对通过安装于机器人rb上的机械手h把持工件w的情况进行了说明。但是,本发明并不限于把持工件w的情况,也可以适用于取代机械手h而通过吸附垫等吸附保持的情况中。

此外,在上述各实施方式中,也可以由cpu以外的各种处理器执行cpu读入软件(程序)并执行的把持姿态评价处理。作为此时的处理器,可以例示出fpga(field-programmablegatearray)等的制造后能够变更电路构成的pld(programmablelogicdevice)、以及asic(applicationspecificintegratedcircuit)等具有为了执行特定处理而专用设计的电路构成的处理器即专用电路等。另外,既可以由这些各种处理器中的一个执行把持姿态评价处理,也可以由相同种类或不同种类的两个以上的处理器的组合(例如多个fpga、以及cpu与fpga的组合等)执行把持姿态评价处理。另外,更为具体而言,这些各种处理器的硬件结构是组合半导体元件等的电路元件而成的电路。

另外,在上述各实施方式中,对把持姿态评价处理的程序预先存储(安装)在rom12或存储器14中的方式进行了说明,但并不限定于此。程序也可以记录在cd-rom(compactdiskreadonlymemory)、dvd-rom(digitalversatilediskreadonlymemory)以及usb(universalserialbus)存储器等的持续性(non-transitory:非暂时性)的记录介质中的方式提供。另外,程序也可以是经由网络从外部装置下载的方式。

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