干扰判定方法、干扰判定系统以及存储介质与流程

文档序号:17700026发布日期:2019-05-17 22:13阅读:171来源:国知局
干扰判定方法、干扰判定系统以及存储介质与流程

本发明涉及干扰判定方法、干扰判定系统以及计算机程序。



背景技术:

在使工业用机器人进行规定的作业时,通过编程、使实机实际动作的示教来确定执行作业的机械臂的动作路径的情况下,需要较多的时间与劳力。

与此相对,如果能够使用在输入了动作开始点(起点)及动作结束点(终点)时自动生成起点与终点间的路径的算法,则能够期待大幅度缩短对工业用机器人进行示教的时间。

作为在控制工业用机器人的机械臂的动作时检查有无与周边物的干扰的方法,具有专利文献1。该文献中公开了如下干扰预测方法:关于将起点与终点之间连结的机器人的路径,按照机器人通过该路径的各离散时间进行区分,计算机器人的占有区域,将相邻的离散时间彼此的占有区域组合而计算多个凸包,计算这些凸包和用多面体对周边的障碍物进行近似而得的凸多面体是否具有共享区域,在有共享区域的情况下认为产生了干扰。

在使用这样的算法生成路径时,如果能够生成考虑到工业用机器人所配置的周边环境、例如传送带等障碍物的路径,则将生成更适合实际环境的路径,是优选的。

专利文献1:日本特开2012-223845号公报

而且,作为这种路径的自动生成所要求的性能之一,有路径运算处理的高速化。例如,在必须利用机械臂分别把持在传送带上不规则地流过来的多个把持对象物的情况下,必须按照每个把持对象物运算路径,因此需要实现运算处理的高速化。这是因为,运算时间的长短直接关系到传送带的可动速度、进而是生产效率。

在专利文献1所记载的干扰判定方法中,针对组合了相邻的离散时间下的机器人的占有区域的所有凸包与对机器人周边的障碍物进行近似而得的凸多面体,判定了有无共享区域,因此存在判定有无干扰的判定时间长的问题。



技术实现要素:

因此,本发明的目的在于,提供能够高速地运算有无按照动作路径动作的机器人与周边物的干扰的干扰判定方法、干扰判定系统以及计算机程序。

本公开的一方面涉及的干扰判定方法是使用具备获取部、存储部以及运算部的运算装置,判定具有多个可动轴的机器人在从初始姿势向目标姿势移动的动作路径上与存在于机器人的周边的周边物发生干扰的可能性的方法。并且,运算部执行以下步骤:使存储部存储针对规定的关注部位以多面体近似机器人的形状而得的机器人数据;使存储部存储近似周边物的形状而得的周边物近似体的数据;使用获取部获取初始姿势以及目标姿势;设定从初始姿势向目标姿势移动的动作路径上的机器人的第一姿势、相比于第一姿势相对地靠目标姿势一侧的动作路径上的机器人的第二姿势、以及第一姿势与第二姿势之间的中间姿势;基于机器人数据,生成针对至少一个关注部位以多面体近似第一姿势、第二姿势以及中间姿势下的机器人的形状而得的多个机器人近似体;生成组合在该步骤中生成的机器人近似体而构成的第一组合近似体;判定第一组合近似体和周边物近似体是否发生干扰;在该步骤中判定为发生干扰的情况下,算出表示构成第一组合近似体的多个机器人近似体中相邻的两个机器人近似体的间隔的量并与规定值进行比较;以及基于表示间隔的量与规定值的比较结果,判断是否生成比第一组合近似体小的组合近似体。

根据该方面,算出表示构成第一组合近似体的相邻的两个机器人近似体的间隔的量,并与规定值比较,因此能够判断是间隔十分窄的情况下的干扰判定,还是并非如此的情况,能够根据比较结果变更之后的处理。即,在相邻的两个机器人近似体之间的间隔相对宽的情况下,机器人近似体之间有可能存在障碍物,因此根据间隔是否为规定值以上,还是小于规定值来变更之后的处理,从而能够一面省略不必要的干扰判定的处理而保持高速性,一面进行精度高的干扰判定。

另外,运算部能够在判断为表示间隔的量是规定值以上的情况下,进一步执行以下步骤:针对关注部位,生成组合相当于第一姿势、第二姿势以及中间姿势的多个所述机器人近似体中至少两个机器人近似体而构成的、比第一组合近似体小的第二组合近似体;以及判定第二组合近似体和周边物近似体是否发生干扰。

根据该方面,生成比第一组合近似体小的第二组合近似体,判定第二组合近似体和周边物近似体是否发生干扰,并在判定为不干扰的情况下能够省略该区域内的干扰判定处理,因此能够高速地实现干扰判定处理。

另外,运算部也可以是,在判定第二组合近似体和周边物近似体是否发生干扰的步骤中判定为干扰、且表示构成第二组合近似体的多个所述机器人近似体中相邻的两个机器人近似体的间隔的量为规定值以上的情况下,进一步执行以下步骤:生成组合相当于第一姿势、第二姿势以及中间姿势的多个机器人近似体中至少两个机器人近似体而构成的、比第(n-1)组合近似体小的第n组合近似体(其中,n是3以上的整数);以及判定第n组合近似体和周边物近似体是否发生干扰。

根据该方面,在表示相邻的两个机器人近似体的间隔的量为规定值以上的情况下,生成比第n组合近似体小的第(n+1)组合近似体,因此在间隔不足够窄的情况下,能够使用更小的第(n+1)组合近似体来进行更详细的干扰判定,另一方面,在间隔足够窄的情况下,也能够省略之后的干扰判定处理,因此能够实现高速的干扰判定处理。

另外,运算部也可以是,一边使n每次增加1,直到表示构成第n组合近似体的多个机器人近似体中相邻的两个机器人近似体的间隔的量小于规定值为止,一边反复进行生成第n组合近似体的步骤以及判定第n组合近似体与周边物近似体是否发生干扰的步骤。

根据该方面,一边使n每次增加1,直到表示间隔的量小于规定值,一边重复进行生成第n组合近似体的步骤、以及判定第n组合近似体与周边物近似体是否发生干扰的步骤,因此能够根据需要进行详细的干扰判定,并且能够省略不必要的干扰判定处理。

另外,运算部能够在表示构成第n组合近似体的相邻的两个机器人近似体的间隔的量小于规定值的情况下,输出在构成第n组合近似体的相邻的两个机器人近似体间的动作路径上具有干扰可能性。

根据该方面,在间隔足够窄、且具有干扰可能性的情况下,能够结束同样的干扰判定处理。因此,能够一面省略不必要的干扰判定的处理而保持高速性,一面提高干扰判定的精度。

另外,生成第n组合近似体的步骤能够包括:将构成第(n-1)组合近似体的多个所述机器人近似体中相邻的两个机器人近似体间的动作路径上的中间姿势和相邻的两个机器人近似体组合而生成第n组合近似体的步骤。

根据该方面,将相邻的两个机器人近似体间的动作路径上的中间姿势和相邻的两个机器人近似体组合而生成第n组合近似体,因此能够进行使用了相邻的两个机器人近似体的动作路径上的中间姿势的详细的干扰判定。

另外,判定第k组合近似体(k是1以上的整数)和周边物近似体是否发生干扰的步骤能够包括:算出周边物近似体与第k组合近似体的距离的步骤;以及比较距离与第二规定值的步骤。

根据该方面,由于能够基于周边物近似体和第k组合近似体的距离判断干扰可能性,因此即使在采用由于驱动轴的旋转运动而从第k组合近似体超出的中间姿势的情况下,也能够进行加进这种中间姿势的干扰判定。

另外,本公开的另一方面涉及的干扰判定方法使用具备运算部的运算装置,判定具有多个可动轴的机器人在从初始姿势向目标姿势移动的动作路径上与存在于机器人的周边的周边物发生干扰的可能性。并且,运算部执行以下步骤:设定用于确定从初始姿势向目标姿势移动的动作路径上的机器人的第一姿势的多个可动轴的旋转角度;设定用于确定比第一姿势更靠目标姿势一侧的动作路径上的机器人的第二姿势的多个可动轴的旋转角度,关于各所述可动轴,从第一姿势向第二姿势变化期间的旋转角度单调增加或者单调减少;为确定第一姿势与第二姿势之间的至少一个中间姿势而设定示出多个可动轴的旋转角度的信息;生成以多面体近似机器人的至少一个关注部位而得的、与第一姿势、第二姿势以及中间姿势各自对应的多个机器人近似体;判断将在该步骤中生成的多个机器人近似体组合而构成的第一组合近似体是否与周边物发生干扰;在该步骤中判断为发生干扰的情况下,生成组合多个机器人近似体而构成的、比第一组合近似体小的第二组合近似体;以及判定第二组合近似体与周边物近似体是否发生干扰。

根据该方面,由于从第一姿势到第二姿势,可动轴的旋转角度单调增加或者单调减少地变化,因此规定的可动轴的旋转角度不再伴有增加及减少这两者,能够进行更准确的干扰判定。另外,在第一组合近似体被判断为与周边物发生干扰的情况下,生成比第一组合近似体小的第二组合近似体来进行干扰判定,因此在没有必要的情况下能够不生成第二组合近似体地实现高速的干扰判定。

另外,本公开的另一方面涉及的干扰判定方法使用具备运算部的运算装置,判定具有多个可动轴的机器人在从第一姿势向第二姿势移动的动作路径上与存在于机器人的周边的周边物发生干扰的可能性。

而且,执行以下步骤:获取动作路径上的机器人的第一姿势;获取动作路径上的机器人的第二姿势;关于从第一姿势至第二姿势的动作路径,以第一分辨率判断机器人的规定部位是否与周边物发生干扰;仅对基于该步骤的结果而选择的作为动作路径的一部分的第二动作路径以比第一分辨率高的第二分辨率判断机器人的规定部位是否与周边物发生干扰;以及仅对基于该步骤的结果而选择的作为第二动作路径的一部分的第三动作路径以比第二分辨率高的第三分辨率判断机器人的规定部位是否与周边物发生干扰。

根据该方面,关于从第一姿势至第二姿势的动作路径,以第一分辨率判断机器人的规定部位是否与周边物发生干扰,仅对基于其结果而选择的第二动作路径以第二分辨率判断机器人的规定部位是否与周边物发生干扰,进而,仅对基于其结果而选择的第三动作路径以第三分辨率判断机器人的规定部位是否与周边物发生干扰,因此在以至少三个分辨率进行干扰判定时,能够对基于以低分辨率进行干扰判定的结果而动态选择的动作路径的一部分以高分辨率进行干扰判定,能够实现高速的干扰判定处理。

另外,本公开的另一方面涉及的干扰判定系统使用具备获取部、存储部以及运算部的运算装置,判定具有多个可动轴的机器人在从初始姿势向目标姿势移动的动作路径上与存在于机器人的周边的周边物发生干扰的可能性。而且,运算部执行以下步骤:使存储部存储针对规定的关注部位以多面体近似机器人的形状而得的机器人数据;使存储部存储近似周边物的形状而得的周边物近似体的数据;使用获取部获取初始姿势以及目标姿势;设定从初始姿势向目标姿势移动的动作路径上的机器人的第一姿势、相比于第一姿势相对地靠目标姿势一侧的动作路径上的机器人的第二姿势、以及第一姿势与第二姿势之间的中间姿势;基于机器人数据,生成针对至少一个关注部位以多面体近似第一姿势、第二姿势以及中间姿势下的机器人的形状而得的多个机器人近似体;生成组合在该步骤中生成的多个机器人近似体而构成的第一组合近似体;判定第一组合近似体和周边物近似体是否发生干扰;在该步骤中判定为发生干扰的情况下,算出表示构成第一组合近似体的多个机器人近似体中相邻的两个机器人近似体的间隔的量并与规定值进行比较;以及基于表示间隔的量与规定值的比较结果,判断是否生成比第一组合近似体小的组合近似体。

根据该方面,算出表示构成第一组合近似体的相邻的两个机器人近似体的间隔的量,并与规定值比较,因此能够判断是间隔十分窄的情况下的干扰判定,还是并非如此的情况,能够根据比较结果变更之后的处理。即,在相邻的两个机器人近似体之间的间隔相对宽的情况下,机器人近似体之间有可能存在障碍物,因此根据间隔是否为规定值以上,还是小于规定值来变更之后的处理,从而能够一面省略不必要的干扰判定的处理而保持高速性,一面进行精度高的干扰判定。

另外,本公开的另一方面涉及的程序用于使具备获取部、存储部以及运算部的运算装置执行使用运算装置判定具有多个可动轴的机器人在从初始姿势向目标姿势移动的动作路径上与存在于机器人的周边的周边物发生干扰的可能性的干扰判定。而且,使运算部执行以下步骤:使存储部存储针对规定的关注部位以多面体近似机器人的形状而得的机器人数据;使存储部存储近似周边物的形状而得的周边物近似体的数据;使用获取部获取初始姿势以及目标姿势;设定从初始姿势向目标姿势移动的动作路径上的机器人的第一姿势、相比于第一姿势相对地靠目标姿势一侧的动作路径上的机器人的第二姿势、以及第一姿势与第二姿势之间的中间姿势;基于机器人数据,生成针对至少一个关注部位以多面体近似第一姿势、第二姿势以及中间姿势下的机器人的形状而得的多个机器人近似体;生成组合在该步骤中生成的多个机器人近似体而构成的第一组合近似体;判定第一组合近似体和周边物近似体是否发生干扰;在该步骤中判定为发生干扰的情况下,算出表示构成第一组合近似体的多个机器人近似体中相邻的两个机器人近似体的间隔的量并与规定值进行比较;以及基于表示间隔的量与规定值的比较结果,判断是否生成比第一组合近似体小的组合近似体。

根据该方面,算出表示构成第一组合近似体的相邻的两个机器人近似体的间隔的量,并与规定值比较,因此能够判断是间隔十分窄的情况下的干扰判定,还是并非如此的情况,能够根据比较结果变更之后的处理。即,在相邻的两个机器人近似体之间的间隔相对宽的情况下,机器人近似体之间有可能存在障碍物,因此根据间隔是否为规定值以上,还是小于规定值来变更之后的处理,从而能够一面省略不必要的干扰判定的处理而保持高速性,一面进行精度高的干扰判定。

本公开的另一方面涉及的存储介质存储有上述本公开的另一方面涉及的程序。

需要说明的是,“初始姿势”包括机器人的动作开始时的姿势,例如,包括在运算机器人的动作路径时的起点处机器人采取的姿势。

另外,“目标姿势”包括机器人的动作结束时的姿势,例如,包括在运算机器人的动作路径时的终点处机器人采取的姿势。

另外,“关注部位”指的是利用网格等表现的机器人的形状的模型数据的一部分或者全部,包括通过obb(orientedboundingbox,有向包围盒)等近似方法近似的形状。例如,有时将工业用机器人的各连杆、或者连杆的一部分作为关注部位来对待。

另外,“机器人数据”包括表示利用规定的近似方法对通过网格等表现的机器人的形状的模型数据进行近似而得的机器人的形状的数据。

另外,“周边物近似体”包括通过网格、aabb(axis-alignedboundingbox,轴向包围盒)等近似方法对障碍物等周边物进行近似而得的形状模型。

另外,“第一姿势”指的是将初始姿势与目标姿势连结的动作路径上的姿势,包括作为生成机器人近似体的对象的姿势。也可以是与初始姿势相同的姿势。

另外,“第二姿势”指的是将初始姿势与目标姿势连结的动作路径上的姿势,包括作为生成机器人近似体的对象的姿势。也可以是与目标姿势相同的姿势。

另外,“中间姿势”指的是第一姿势与第二姿势之间的动作路径上的姿势,包括作为生成机器人近似体的对象的姿势。中间姿势并不限于第一姿势与第二姿势之间的动作路径上的中间地点处的姿势。

另外,“机器人近似体”包括基于机器人数据而算出的、利用obb等近似方法对分别与第一姿势、第二姿势、中间姿势对应的机器人的姿势(各轴的关节定为规定值的机器人的体态)进行近似而得的近似体。

另外,“组合近似体”包括组合至少两个机器人近似体而得的近似体。包括以包含至少两个机器人近似体的大半或者全部的方式通过aabb等的近似方法近似而得的近似体。

根据本发明,可提供能够高速地运算有无按照动作路径动作的机器人与周边物的干扰的干扰判定方法、干扰判定系统以及计算机程序。

附图说明

图1是第一实施方式以及第二实施方式涉及的干扰判定系统10的硬件框图。

图2的(a)和(b)是机械臂16与其机器人数据。

图3是第二实施方式涉及的干扰判定方法的事先处理的流程图。

图4的(a)~(c)是构形空间的概念图。

图5是第二实施方式涉及的干扰判定方法的流程图。

图6的(a)~(f)是表示检查数据列表dl的变化的概念图。

图7的(a)和(b)是机械臂16使姿势变化的情形的示意图。

图8是linka、linkb以及linkc的机器人近似体数据。

图9是第一组合近似体与周边物近似体。

图10的(a)和(b)是表示用于判断高分辨率的干扰判定的必要性的条件的示意图。

图11是第二组合近似体与周边物近似体。

图12是不同的第二组合近似体与周边物近似体。

图13是第三组合近似体与周边物近似体。

图14是第四组合近似体与周边物近似体。

图15是第五组合近似体与周边物近似体。

图16是不同的第五组合近似体与周边物近似体。

图17是第六组合近似体与周边物近似体。

图18是不同的第六组合近似体与周边物近似体。

图19是最终生成的组合近似体。

图20是第三实施方式涉及的干扰判定方法的流程图。

附图标记说明

10…干扰判定系统,12…输入部,14…运算装置,16…机械臂,18…监视器,20…输出部,22…计算机,24…运算部,26…存储装置,28…接口,bl-l5,l…连杆,dl…检查数据列表,l…连杆

具体实施方式

[第一实施方式]

首先,使用图1,对应用本发明的实施方式的一个例子进行说明。

图1是本发明的第一实施方式涉及的干扰判定系统10(“干扰判定系统”的一个例子)的硬件框图。如该图所示,该干扰判定系统10具有:用于输入信息的输入部12;用于处理信息的运算装置14(“运算装置”的一个例子);以及输出部20,输出部20具备用于显示基于运算结果而被控制的机械臂16(“机器人”的一个例子)和结果的监视器18。

输入部12作为用于向运算装置14输入信息的接口发挥功能,具备用于输入作为输入数据的机械臂16的初始姿势、目标姿势、障碍物信息以及与机械臂16相关的机器人信息等的单元。

运算装置14典型地能够使用计算机22来实现,具备用于获取从输入部12等输入的信息的接口28(“获取部”的一个例子)、用于实施各实施方式所示的各种运算处理的cpu24(“运算部”的一个例子)、以及非易失性地存储规定各实施方式所示的干扰判定等各处理的程序等的存储装置26(“存储部”的一个例子)。

用于使用本实施方式涉及的干扰判定系统10判定机械臂16与障碍物等周边物发生干扰的可能性的干扰判定方法通过如下的步骤实现。

首先,接口28获取从输入部12输入的初始姿势以及目标姿势。具体而言,获取确定机械臂16的姿势的各驱动轴的旋转角度。需要说明的是,初始姿势以及目标姿势也可以作为包括机械臂16的前端的位置的信息的初始位置以及目标位置而提供。此时,各驱动轴的旋转角度通过包括运算装置14的cpu24(运算部)的规定的运算装置基于前端的位置执行反向运动学(逆运动学)计算而算出。需要说明的是,初始姿势例如也可以是机械臂16的各驱动轴的当前的旋转角度。另外,目标姿势或者目标位置例如也可以基于示出机械臂16的作业对象物的位置的图像而算出。

接着,cpu24设定从初始姿势至目标姿势的动作路径上的第一姿势和第二姿势。具体而言,设定确定机械臂16的姿势的各驱动轴的旋转角度。

这里,关于各可动轴,以从第一姿势变化为第二姿势的期间的旋转角度单调增加或者单调减少的方式来设定第一姿势以及第二姿势。例如,某一可动轴从第一姿势下的旋转角度单调增加至达到第二姿势下的旋转角度。另一可动轴从第一姿势下的旋转角度单调减少至达到第二姿势下的旋转角度。通过这样设定第一姿势以及第二姿势,并判定包含第一姿势与第二姿势那样的第一长方体(后述)和周边物的干扰可能性,从而在从第一姿势向第二姿势移动时,能够高速地判断有无与周边物的干扰可能性。即,在规定的可动轴的旋转角度反复增减的情况下,机械臂16的活动描绘出折返轨道。另一方面,在规定的可动轴的旋转角度单调增加或者单调减少的情况下,机械臂16的活动以大致圆弧轨道动作,因此只要对该规定的轨道执行有无干扰的判定即可,能够高速地判断有无干扰可能性。另一方面,关于规定的可动轴,在旋转角度从第一姿势下的旋转角度增减至达到第二姿势下的旋转角度的情况下,中间姿势有可能从包含这两个姿势那样的第一长方体大幅超出,因此无法确保没有与周边物的干扰可能性,并不优选。

接着,设定中间姿势。中间姿势是第一姿势与第二姿势之间的动作路径上的姿势,例如,能够通过计算相当于第一姿势的各驱动轴的各旋转角度与相当于第二姿势的各驱动轴的各旋转角度各自的平均值,并对其应用正向运动学(顺向运动学)来设定。

之后,针对第一姿势、第二姿势以及中间姿势的各连杆(“关注部位”的一个例子),生成用第二长方体(后述)近似而得的机器人近似体(“机器人近似体”的一个例子)。

然后,生成将这些第一姿势、中间姿势以及第二姿势的机器人近似体组合而用第一长方体近似而得的第一组合近似体(“第一组合近似体”的一个例子)。此时,第一组合近似体优选为包含第一姿势、中间姿势以及第二姿势各自的机器人近似体的长方体。

接着,判定第一组合近似体与以第一长方体近似周边物而得的周边物近似体(“周边物近似体”的一个例子)的干扰可能性。

在作为该判定的结果,两者没有干扰可能性的情况下,能够判断为在从第一姿势向第二姿势移动时,机械臂16不与周边物发生干扰,因此能够判断为不需要对该期间的动作路径进行详细的干扰判定。因此,cpu24将第二姿势设定为新的第一姿势,并新设定第二姿势,通过重复同样的处理,能够对从初始姿势至目标姿势的整个动作路径判定机械臂16与周边物的干扰。

另一方面,在两者有可能干扰的情况下,接着判定详细的干扰判定的必要性。

即,在第一姿势和第二姿势十分接近、具有充分的分辨率的情况下,判定为两者有干扰可能性时,认为现实中机械臂16与周边物发生干扰的可能性高,因此能够判断为不需要新生成在此之上的机器人近似体来进一步继续详细的干扰判定。cpu24确定为在从第一姿势向第二姿势移动时,机械臂16与周边物发生干扰的可能性高,并结束本实施方式涉及的干扰判定方法。此外,既可以根据需要使用需要计算量的其它方法精密地判断有无干扰,也可以搜索不同的路径。

另一方面,在分辨率不充分、第一姿势与第二姿势的疏密程度稀疏的情况下,即在第一姿势与第二姿势的间隔为规定值以上的情况下,生成用第一长方体对第一姿势与中间姿势近似而得的第二组合近似体(“第二组合近似体”的一个例子)、以及用第一长方体对中间姿势与第二姿势近似而得的第二组合近似体(“第二组合近似体”的一个例子),同样地分别判定与周边物近似体的干扰可能性。即,生成比第一组合近似体小的第二组合近似体,判定各个第二组合近似体与周边物近似体的干扰可能性。以下,着眼于包含中间姿势与第二姿势的第二组合近似体进行说明。

在作为该判定的结果,不存在包含中间姿势与第二姿势的第二组合近似体与周边物近似体的干扰可能性的情况下,能够判断为在从中间姿势向第二姿势移动时,机械臂16不与周边物发生干扰,因此能够判断为无需对该期间的动作路径进行详细的干扰判定。

另一方面,在两者有可能干扰的情况下,判定详细的干扰判定的必要性。

在中间姿势与第二姿势十分接近、具有充分的分辨率的情况下,认为现实中机械臂16与周边物发生干扰的可能性高,因此能够判断为没有在此之上的详细的干扰判定的必要性。因此,输出包含中间姿势与第二姿势的第二组合近似体有可能与周边物发生干扰的大意。

另一方面,在分辨率不充分、中间姿势与第二姿势的疏密程度稀疏的情况下,在中间姿势与第二姿势之间进一步设定新的中间姿势,生成将原来的中间姿势与新的中间姿势组合并以第一长方体近似而得的第三组合近似体、以及将该新的中间姿势与第二姿势组合并以第一长方体近似而得的第三组合近似体,分别进行与周边物近似体的干扰判定。同样,在判定为存在干扰可能性时的分辨率不充分的情况下,重复执行第四及其之后的组合近似体的生成和使用其的干扰可能性的判定,直到达到规定的分辨率为止。

根据以上那样的干扰判定方法,对于被判定为不存在与周边物的干扰可能性的动作路径,省略之后的详细的干扰判定,另一方面,对于被判定为有干扰可能性的动作路径,边生成中间姿势边重复详细的干扰判定,直到成为规定的分辨率,因此能够兼顾高速的干扰判定处理与有干扰可能性的动作路径的详细的指定。

需要说明的是,第一长方体是指由与规定的基准坐标系(例如,将水平方向定义为x轴与y轴、将铅垂方向定义为z轴的具有相互正交的xyz轴的绝对坐标系)的各轴平行的线段构成并包含作为近似的目标的对象的长方体。规定的基准坐标系例如能够将其原点设于后述的基座连杆bl的接地面。

另外,第二长方体是指由与从规定的基准坐标系倾斜规定角度的第二直角坐标系平行的线段构成并包含作为近似的目标的对象的长方体。

需要说明的是,在本实施方式中,将各连杆作为关注部位,对于各连杆生成机器人近似体,实施干扰判定,但不限于此,也可以仅对一部分连杆(例如,干扰可能性高的指尖的连杆或者末端执行器)生成机器人近似体,实施干扰判定。

另外,也可以对连杆以外的关注部位(例如,由末端执行器把持的对象物本身、包括末端执行器与由其把持的对象物的部位)、连杆的一部分生成机器人近似体,实施干扰判定。

另外,作为本领域技术人员的通常的创造能力的发挥,在不变更发明的主旨的范围内,也能够变更本公开的各实施方式中的各步骤的顺序。例如,也可以与第一姿势以及第二姿势同时地设定多个中间姿势。不过,通过仅在必要的情况下(即,存在干扰可能性的情况下)在其动作路径间设定中间姿势,从而能够实现进一步的高速化。

另外,近似的方法多种多样,既可以用第一长方体、第二长方体等的方法,通过包含作为目标的对象那样的包围盒(boundingvolume)来近似对象,也可以像所谓的凸包那样通过不含对象的多面体来近似对象。不过,通过使用包围盒以包含对象的方式进行近似,能够消除原本会干扰却被判断为不干扰的误判定。

[第二实施方式]

以下,参照附图,对本发明的第二实施方式进行说明。需要说明的是,对同一部分标注同一附图标记,省略或者简化重复的说明。

图1是第二实施方式涉及的干扰判定系统10(“干扰判定系统”的一个例子)的硬件框图。

这里,运算装置14(“运算装置”的一个例子)的cpu24读出存储在存储装置26(“存储部”的一个例子)中的程序(包括规定本公开的各流程图等所示的运算处理的程序),或者使用接口28(“获取部”的一个例子)从外部获取程序并执行。运算装置14所具备的临时存储装置(未图示)由sram(staticrandomaccessmemory:静态随机存取存储器)等构成,暂时地存储程序的一部分、运算数据等。

存储装置26是在能够使用计算机读取的状态下通过电、磁、光学、机械、化学或它们的组合来存储程序等信息的介质,例如包括cd、dvd、磁盘、mo、半导体存储器(nor闪存、nand闪存、mram等)。

接口28例如是用于与外部交换信息的有线或者无线的通信接口。

另外,输入部12例如是鼠标、键盘、触摸板、键盘、麦克风等用于输入信息的装置。

图2的(a)示出了作为控制对象的机械臂16(“机器人”的一个例子)。另外,图2的(b)示出了基于后述的步骤s12,将构成机械臂16的多个连杆l、即连杆bl~l5(“关注部位”的一个例子)用第二长方体近似后的机器人数据。

该机械臂16是6轴的垂直多关节型的机械臂16,各连杆l由伺服电机(未图示)旋转驱动。另外,在前端的连杆l5上连接末端执行器。

以下说明使用这样的干扰判定系统10的干扰判定方法。

图3是用于生成判定处理所需的数据的事先处理的流程图。每当改变障碍物等周边物、机械臂16时实施该事先处理。

首先,运算装置14的接口28从输入部12获取将由网格等表现的周边物等表现在虚拟空间上的障碍物模型作为障碍物信息。然后,cpu24对于由网格表现的障碍物模型,使用第一长方体、第二长方体或者其它公知的方法,生成近似周边物的形状而得的周边物近似体(“周边物近似体”的一个例子),并存储在存储装置26中(步骤s11)。在本实施方式中,将多个周边物分别用第一长方体近似而得的周边物近似体数据obsi(其中,i是1以上且周边物的数量以下的整数)被存储于存储装置26。

另外,接口28从输入部12获取用网格等表现机械臂16的机器人模型作为机器人信息。然后,cpu24将通过网格表现的机器人模型划分为机械臂16的各连杆l,生成用第二长方体近似各连杆l而得的机器人数据,并存储于存储装置26(步骤s12)。需要说明的是,步骤s11和步骤s12也可以以不同的顺序、或者同时进行。

接着,从输入部12输入机械臂16的初始姿势s以及目标姿势g。初始姿势s例如是机械臂16把持放置于容器的把持对象物、即工件w时的姿势,目标姿势g是机械臂16从容器取出工件w并载置于目的地时的姿势。初始姿势s以及目标姿势g分别是指定机械臂16的各驱动轴的旋转角度的六维的信息,也能够使用示教盒等从输入部12输入。运算装置14的cpu24使接口28获取确定初始姿势s以及目标姿势g的各六维的角度信息,并存储于存储装置26。需要说明的是,初始姿势s以及目标姿势g也可以分别作为机械臂16的前端初始位置s’、前端目标位置g’而被提供,通过基于前端初始位置s’、前端目标位置g’执行反向运动学(逆运动学)计算而算出。前端初始位置s’以及前端目标位置g’例如能够使用未图示的示教盒由作业人员设定。

之后,执行路径搜索,搜索从初始姿势s至目标姿势g的动作路径。

具体而言,通过从初始姿势s至目标姿势g地反复执行将确定动作路径上的某地点处的机械臂16的姿势qi(“第一姿势”的一个例子)和与该姿势相比相对地靠目标姿势g侧的动作路径上的地点处的姿势qi+1(“第二姿势”的一个例子)的各驱动轴的角度信息作为输入、并将从姿势qi移动到姿势qi+1是否与周边物发生干扰作为输出的干扰判定方法,从而生成确定不与周边物发生干扰那样的动作路径的各姿势qi的列表。

这里,按每个驱动轴以从姿势qi变化为姿势qi+1期间的各驱动轴的旋转角度单调增加或者单调减少的方式设定姿势qi+1。

图4的(a)例如是以将各驱动轴的旋转角度作为坐标轴(joint1以及joint2)的构形空间示出搜索具有两个驱动轴的机械臂16从初始姿势s到达目标姿势g的动作路径的情形的示意图。该机械臂16的姿势能够用与各驱动轴的旋转角度对应的坐标表示。另外,周边的障碍物d1以及d2能够表示为具有规定区域的空间,作为机械臂16发生碰撞的各驱动轴的范围。

因而,通过以不进入障碍物d1以及d2的区域的方式生成从相当于初始姿势s的坐标到相当于目标姿势g的坐标的动作路径,能够导出不干扰的动作路径。

图4的(b)示出从姿势qi变化为姿势qi+1期间的各驱动轴的旋转角度,横轴表示从姿势qi到姿势qi+1的进展,纵轴表示各驱动轴(joint1以及joint2)的旋转角度(degree)。两驱动轴都显示出以等速单调增加。

这样,通过将各驱动轴单调增加或者单调减少的范围内的姿势设定为姿势qi+1,并进行其间的干扰判定,从而能够提高干扰判定的精度,并且能够高速地执行干扰判定的运算。需要说明的是,在从姿势qi变化为姿势qi+1的期间,旋转角度增减的情况下,即在图4的(a)所示的构形空间中,在沿joint1轴方向增加(向右侧前进)之后减少(向左侧前进)的姿势间进行干扰判定时,则干扰判定的精度降低,实际中无论是否干扰都判定为不干扰的可能性提高,因此在本实施方式中不采用。

图4的(c)作为参考示出了机械臂16在真实空间中从姿势qi变化为姿势qi+1的情形。

需要说明的是,路径的搜索能够通过各种方法进行。例如,能够使用作为随机取样法之一的rrt(rapidly-exploringrandomtree:快速扩展随机树)、作为路径图法之一的概率路标法(probabilisticroadmap:prm)、人工势能法(artificialpotentialmethod)、轨道最优化法(trajectoryoptimization)等。

作为随机取样法之一的rrt是如下方法:在构形空间内配置一个与姿势qi+1对应的点,通过反复进行连结该点和已经配置在构形空间内的与姿势qi对应的点的处理来生成路径。

概率路标法(probabilisticroadmap:prm)是如下方法:在构形空间内随机配置与姿势qi以及姿势qi+1对应的多个点,从这些点中提取不与周边物产生干扰的点,通过连结这些点来生成路径。

人工势能法(artificialpotentialmethod)是计算机械臂16以及周边物可能位于的区域内的势能并基于势能生成路径的方法。例如,通过使用评价函数,算出机械臂16以及周边物可能位于的区域内的势能。

轨道最优化法(trajectoryoptimization)通过求解与构形空间内的姿势qn对应的点的配置相关的成本函数的最优化问题,从而生成路径。成本函数例如是基于机械臂16、对象物及周边物(障碍物)的距离、构形空间内的路径的平滑度、机械臂16所具有的多个驱动轴应产生的转矩的最大值等而设定的函数。

图5是表示从姿势qi向姿势qi+1移动的动作路径中的机械臂16的规定的连杆l与周边物的干扰判定方法的流程图。图6示出了在该干扰判定方法中使用的检查数据列表dl的变化。这里,检查数据列表dl指的是存储多个检查数据d的栈型的数据结构,构成为能够进行检查数据d的后入先出(lifo)。另外,检查数据d是确定作为干扰判定的对象的起点与终点的两个姿势的数据。在本实施方式中,基于该检查数据d,运算连结两个姿势的路径上的中间姿势,生成包含与包括于检查数据d的这两个姿势以及中间姿势至少3个姿势相当的机器人近似体数据的第一(或者第二及之后的)组合近似体。

首先,运算装置14在设于存储装置26的规定区域的检查数据列表dl的末尾记录[linki,linki+1]作为检查数据d(步骤s51,图6的(a))。[linki,linki+1]这一检查数据d确定与机械臂16的姿势qi以及姿势qi+1对应的规定的连杆l(“关注部位”的一个例子)的姿势。

图7的(a)示意性示出了机械臂16向姿势qi和姿势qi+1移动的情形以及周围的障碍物,图7的(b)示出了分别用第二长方体近似姿势qi以及姿势qi+1时的机械臂16的前端的连杆l而得的机器人近似体、以及相当于两个周边物的周边物近似体数据obs1与obs2。

接着,运算装置14取出检查数据列表dl的末尾的检查数据d作为[linka,linkb](步骤s52)。这里,在步骤s51中作为检查数据列表dl的末尾的检查数据d而记录的[linki,linki+1]被作为[linka,linkb]而取出,并从检查数据列表dl将作为已取出的检查数据d的[linki,linki+1]删除。linka是疏密搜索状态下的“关注部位”的“第一姿势”的一个例子,linkb是疏密搜索状态下的“关注部位”的“第二姿势”的一个例子。

接着,通过运算装置14,生成确定linka与linkb的中间连杆的linkc(步骤s53)。

图8示出了设定作为linka与linkb的中间连杆的linkc的情形。

通过根据表示linka时的各驱动轴的旋转角度的关节值(“旋转角度”的一个例子)和表示linkb时的各驱动轴的旋转角度的关节值的平均值来求运动学正解(顺向运动学),能够设定作为中间连杆的linkc。在该情况下,构形空间上的linka所对应的坐标与linkb所对应的坐标的中点成为与linkc对应的坐标。即,构形空间上的linka所对应的坐标p是plinka=(ja1,ja2,……ja6)(ja1,ja2,……ja6表示各旋转轴的旋转角度),linkb所对应的坐标p是plinkb=(jb1,jb2,……jb6)。这些plinka的各坐标与plinkb的各坐标的中点成为与linkc对应的坐标。

中间连杆也能够通过其它的方法设定。例如,机械臂16的各连杆l的旋转速度并非等速、而是增减,因此考虑各连杆l的旋转速度的变化,求出从linka向linkb移动的中间时间点时的各驱动轴的旋转角度,基于求出的各旋转角度求运动学正解,从而也能够更准确地设定作为中间连杆的linkc。即,在从linka向linkb移动的期间,各驱动轴并非全部一样地进行动作,而是也存在仅在动作的前半的一部分或者动作的后半的一部分动作的驱动轴。因此,通过求出从linka向linkb移动的中间时间点下的各驱动轴的旋转角度,并基于求出的各旋转角度求运动学正解,从而能够更准确地设定作为中间连杆的linkc。

接着,通过运算装置14,判定近似linka、linkb和linkc的近似体与周边物的干扰可能性(步骤s54)。具体而言,生成以第二长方体近似与linka、linkb以及linkc对应的连杆l的形状而得的机器人近似体(“机器人近似体”的一个例子),并生成以包含它们的第一长方体近似而得的第一组合近似体(“第一组合近似体”的一个例子),判定与周边物近似体数据obs1以及obs2的干扰可能性。

相当于linka的机器人近似体能够基于姿势qi的各驱动轴的关节值、各连杆l的长度、以及在步骤s12中存储的连杆l的机器人数据而计算,能够作为确定第二长方体的各顶点的值而算出。需要说明的是,第二长方体也可以通过有向包围盒(obb:orientedboundingbox)生成。

同样,对于linkb以及linkc也算出机器人近似体。

接着,通过按照各坐标轴提取这三个机器人近似体的各顶点的坐标的最大值以及最小值,从而算出组合这三个机器人近似体而构成的第一组合近似体。这里,既可以以内接于机器人近似体的各顶点的方式生成第一组合近似体,也可以以与机器人近似体分开规定距离的方式生成包含这些机器人近似体的第一组合近似体。

然后,判定第一组合近似体与周边物近似体数据obs1以及obs2的干扰可能性。首先,分别算出第一组合近似体与周边物近似体数据obsi的最短距离m。这能够通过比较第一组合近似体与各周边物近似体的各坐标来算出。

接着,将最短距离m与用于判定是否具有干扰可能性的阈值相比较。阈值既可以使用预先设定的值,另外,也可以使用其它的值,但在本实施方式中,如以下那样,将(l2+l3-l1)用作阈值。即,基于各姿势下的连杆l的特定位置的坐标算出linka与linkc的连杆间距离l2、linkb与linkc的连杆间距离l3以及linka与linkb的连杆间距离l1,从而算出(l2+l3-l1)。l1表示当前状态的连杆间距离,(l2+l3)表示接下来状态的连杆间距离,因此若假设连杆l进行圆弧运动,则“(l2+l3)>l1”。此时,即使连结初始姿势与目标姿势的实际轨道上的某点处的机械臂16的连杆l从第一组合近似体超出,也顶多是(l2+l3-l1)的话,能够合理地估计。因而,将(l2+l3-l1)与m比较,如果“(l2+l3-l1)>m”,则判定为该周边物近似体数据obsi与连杆l在从linka至linkc存在干扰可能性。

图9示出了判定为第一组合近似体与周边物近似体数据obs1及obs2分别具有干扰可能性的情形。

在步骤s54中存在有干扰可能性的周边物近似体数据obsi的情况下(“是”),在接下来的步骤s55中,判定是需要利用运算装置14更细微(提高分辨率)地对linka、linkb以及linkc进行干扰判定(“是”),或者还是由于各姿势十分接近而具有足够的分辨率,所以不需要以在此之上的详细的分辨率进行本实施方式涉及的干扰判定(“否”)。

具体而言,在以下的两个条件双方都不满足的情况下,进一步提高分辨率来进行干扰判定。

第一条件表示从linka经由linkc至linkb的连杆l的移动轨迹是否能够充分地再现实际的移动轨迹。在充分地再现的情况下,判断为没有更详细地进行本实施方式涉及的高速干扰判定的必要性(“否”)。

图10的(a)是示出第一条件的示意图。如该图所示,基于linka、linkb以及linkc的机器人近似体数据,将各姿势下的连杆l的规定顶点a的当前状态的连杆间距离l1相对于接下来状态的连杆间距离(l2+l3)的比率、即“l1/(l2+l3)”作为移动轨迹的再现率进行计算。这里,由于l1/(l2+l3)≤1,因此能够认为连杆间距离l1和连杆间距离(l2+l3)的值越接近,再现率越接近1,从linka经由linkc至linkb的连杆l的移动轨迹越能够充分地再现实际的移动轨迹。

接着,针对相当于位于顶点a的对角的顶点的顶点b,也同样地计算再现率。即,针对相对于分别设定于使用第二长方体近似出的各机器人近似体的顶点a,存在于顶点a的对角的位置的第二长方体的各顶点,也同样地计算再现率。

然后,将两者中较大一方的再现率与规定值比较,确定是否满足第一个条件。需要说明的是,作为规定值,例如能够使用0.8以上且小于1.0的值。

通过像这样地对相当于对角顶点的2点分别计算再现率,从而在连杆l以一端为基点进行动作的情况下,即使对应基点附近的几乎不移动的顶点的再现率显现出异常值,也能够使用对应对角顶点的再现率来进行准确的判定。

第二条件表示linka与linkb的间隔(“表示间隔的量”的一个例子)是否足够窄。在linka与linkb的间隔可以说足够窄的情况下,判断为没有更详细地进行本实施方式涉及的高速干扰判定的必要性(“否”)。

图10的(b)示出了判断连杆间的间隔是否足够窄的情形。具体而言,将linka以及linkb的机器人近似体数据投影到分离轴ax(例如x轴、y轴和z轴各轴中任一轴),获取linka和linkb的各中心点以及各顶点的坐标。然后,在分离轴ax上,将相互最接近的顶点彼此的距离设为lb,将该顶点与中心点的距离分别设为la以及lc,将“lb/(la+lc)”与规定值进行比较。例如,如果在任一轴中“lb/(la+lc)>3”,则关于该轴不能说间隔足够窄,因此不满足第二条件。如果在全部的轴中,“lb/(la+lc)≤3”,则满足第二条件。

在两个条件都不满足的情况下,只不过是在分辨率低的状态下显示出干扰可能性,因此为了进一步提高分辨率进行干扰判定(“是”),进入步骤s56及其之后的步骤。

进入了步骤s56时的检查数据列表dl如图6的(b)的右侧所示。先前记录于检查数据列表dl的末尾的[linki,linki+1]已作为[linka,linkb]取出,因此已删除完毕,代替地在步骤s55中依次记录具有详细检查的可能性的姿势、即[linka,linkc](步骤s56)以及[linkc,linkb](步骤s57)(图6的(b))。

然后,返回步骤s52,取出记录于检查数据列表dl的末尾的[linkc,linkb]作为[linka,linkb]。接着,在步骤s53中,设定作为中间连杆的linkc,在步骤s54中,生成组合相当于新设定的linka、linkb以及linkc的3个机器人近似体而构成的第二组合近似体(“第二组合近似体”的一个例子)。

图11示出了第二组合近似体。如该图所示,第二组合近似体比第一组合近似体小。这里,小指的是组合近似体的面积或者体积的值相对较小。然后,如上述那样,将基于连杆间距离l2、l3以及l1计算的(l2+l3-l1)的值同表示第二组合近似体与周边物近似体数据obsi的距离的m的值进行比较,进行两者的干扰判定。在图11中,示出了因“m≥(l2+l3-l1)”而判定为没有干扰可能性(“否”)的情形。

在步骤s54中为“否”的情况下,通过运算装置14,在步骤s59中查检查数据列表dl中是否残留有检查数据d。(步骤s59)。在未残留有检查数据d而检查数据列表dl为空的情况下(“是”),流程结束。在不为空的情况下(“否”),返回步骤s52。这里,如图6的(c)所示,虽然在步骤s57中,将记录于检查数据列表dl的[linkc,linkb]取出并删除,但残留有在步骤s56中记录于检查数据列表dl的[linka,linkc],因此返回步骤s52。

之后,在步骤s52中,将[linka,linkc]作为[linka,linkb]而取出,生成相当于中间连杆的linkc(步骤s53)。

图12示出了新设定的linka、linkb和linkc、以及组合与它们相当的3个机器人近似体而构成的第二组合近似体(“第二组合近似体”的一个例子)。在如该图所示地“m<(l2+l3-l1)”的情况下,进入步骤s55。

在步骤s55中,干扰判定的分辨率低的情况下,经由步骤s56以及s57返回步骤s52。此时的检查数据列表dl如图6的(d)所示。

图13示出了返回步骤s52,将图12中的linkc作为linka,将linkb作为linkb,生成相当于中间连杆的linkc,并组合与它们相当的3个机器人近似体而构成的第三组合近似体。如该图所示,第三组合近似体比第二组合近似体小。在如该图所示地“m<(l2+l3-l1)”的情况下,再次进入步骤s55。

在步骤s55中,干扰判定的分辨率低的情况下,经由步骤s56以及s57返回步骤s52。此时的检查数据列表dl如图6的(e)所示。

图14示出了返回步骤s52,将图13中的linkc作为linka,将linkb作为linkb,生成相当于中间连杆的linkc,并组合与它们相当的3个机器人近似体而构成的第四组合近似体。如该图所示,第四组合近似体比第三组合近似体小。在如该图所示地“m<(l2+l3-l1)”的情况下,再次进入步骤s55。

在步骤s55中,干扰判定的分辨率低的情况下,经由步骤s56以及s57返回步骤s52。此时的检查数据列表dl如图6的(f)所示。

图15示出了返回步骤s52,将图14中的linkc作为linka,将linkb作为linkb,生成相当于中间连杆的linkc,并组合与它们相当的3个机器人近似体而构成的第五组合近似体。如该图所示,第五组合近似体比第四组合近似体小。在如该图所示地“m>(l2+l3-l1)”的情况下,进入步骤s59。

在步骤s59中,检查数据列表dl不为空(“否”),因此返回步骤s52,取出末尾的检查数据d。

图16示出了将图14中的linka作为linka,将linkc作为linkb,生成相当于中间连杆的linkc,并组合与它们相当的3个机器人近似体而构成的第五组合近似体。在如该图所示地“m<(l2+l3-l1)”的情况下,再次进入步骤s55。

在步骤s55中,干扰判定的分辨率低的情况下,经由步骤s56以及s57返回步骤s52。

图17示出了将图16中的linkc作为linka,将linkb作为linkb,生成相当于中间连杆的linkc,并组合与它们相当的3个机器人近似体而构成的第六组合近似体。在如该图所示地“m<(l2+l3-l1)”的情况下,再次进入步骤s55。

然后,在步骤s55中,满足第一条件或者第二条件的情况下,进入步骤s58。

在步骤s58中,将此时的linka、linkb、linkc和相当于周边物近似体数据obsi的周边物记录于判定结果r,进入步骤s59,对残留于检查数据列表dl的检查数据d重复同样的处理。

图18示出了将图16中的linka作为linka,将linkc作为linkb,生成相当于中间连杆的linkc,并组合与它们相当的3个机器人近似体而构成的第六组合近似体。在如该图所示地“m<(l2+l3-l1)”的情况下,再次进入步骤s55,同样,在满足第一条件或者第二条件的情况下进入步骤s58,将此时的linka、linkb、linkc和相当于周边物近似体数据obsi的周边物记录于判定结果r,进入步骤s59。

图19示出了按照图5所示的流程图执行了同样的处理的执行结果。如该图所示,在从linki至linki+1的路径中,具有基于第二组合近似体的已结束于干扰判定处理的部分、基于第四组合近似体的已结束于干扰判定处理的部分、基于第五组合近似体的已结束于干扰判定处理的部分、基于第六组合近似体的已结束于干扰判定处理的部分。

之后,对于机械臂16的不同的连杆l,依次执行图5所示的流程图。需要说明的是,图5中示出的流程图所示的干扰判定处理只要对机械臂16的至少一个关注部位进行即可。

需要说明的是,也可以是,在执行了图5中示出的流程图所示的干扰判定处理之后,在判定为有干扰可能性的判定结果r所示的姿势间,使用能够更精密地进行干扰判定的不同的干扰判定方法,执行确定是否实际有干扰的运算处理、或用于确定干扰的位置的运算处理等。

根据如上的干扰判定方法,对于被判定为没有周边物的干扰可能性的部分,省略之后的详细的干扰判定,另一方面,对于被判定为有干扰可能性的部分,反复进行干扰判定直到达到规定的分辨率为止,因此能够兼顾高速的干扰判定处理与有干扰可能性的动作路径的详细的确定。

需要说明的是,也可以是,在步骤s54中生成的第一组合近似体或者其它组合近似体与周边物近似体数据obsi重复或接触的情况下,由于确实干扰,因此在该时间点结束图5所示的流程图,并输出其大意。

另外,近似的方法并不限定于本实施方式,例如也可以用凸包那样的多面体近似。另外,对于周边物,也可以使用在事先处理中获取到的障碍物模型本身来进行干扰判定。

另外,也可以以使组合近似体与机器人近似体分开规定距离的方式,生成包含这些机器人近似体的第一(或者第二及其之后的)组合近似体来与周边物近似体进行干扰判定。例如,也可以以与机器人近似体分开与组合近似体的大小相应的距离的方式生成包含这些机器人近似体的第一(或者第二及其之后)的组合近似体。

步骤s55中的判断方法也可以使用不同的指标而应用各种方法,还能够省略。例如,也可以基于相邻的姿势间的距离,判断之后的高分辨率下的干扰判定处理的需要与否。

本实施方式所示的干扰判定方法能够应用于各种机器人,例如也能够使用于水平多关节型的机械臂。

另外,在步骤s54中,也可以在规定的情况下以不同的方法进行干扰判定。例如,根据各连杆l的关节值的组合,有时为波形运动而非圆弧运动,因此例如也可以在前端的连杆l的关节值大幅变动的情况下,判断为有干扰可能性。

需要说明的是,本说明书中,“部”、“单元”、“次序”并非单纯的物理性构成的意思,也包括用软件实现该“部”等所进行的处理的情况。另外,既可以通过2个以上的物理性构成或装置执行一个“部”等或装置所进行的处理,也可以通过一个物理性单元或装置执行2个以上的“部”等或装置所进行的处理。另外,以上的实施方式是用于说明本发明的例示,并非旨在将本发明仅限定于该实施方式。

另外,本发明在不脱离其主旨的范围内,能够进行各种变形。例如,也能够在本领域技术人员的通常的创造能力的范围内将某实施方式中的一部分构成成分组合于其它实施方式。另外,也能够在不脱离主旨的范围内变更各流程图所示的各步骤的顺序。

[第三实施方式]

以下,参照附图,对本发明的第三实施方式进行说明。需要说明的是,对同一成分标注同一附图标记,并省略或简化重复的说明。

图20是第三实施方式涉及的干扰判定方法的流程图。与第二实施方式涉及的干扰判定方法的不同点在于,在步骤s55中判断为“否”之后,作为新的步骤s60,在对象的姿势间执行详细的干扰判定,在干扰的情况下结束流程。

更具体而言,在步骤s54中判定为由linka、linkc及linkb构成的组合近似体与周边物近似体数据obsi有干扰可能性、并且在步骤s55中判断为已达到足够的分辨率(“否”)的情况下,使用能够进行高精度的干扰判定的别的干扰判定方法,在由linka、linkc以及linkb限定的规定连杆l的姿势间的动作路径中执行与周边物近似体数据obsi的干扰判定(步骤s60)。例如,在linka至linkb之间,以相邻的机器人近似体彼此接触、即相邻的机器人近似体之间不产生间隙的程度的离散宽度,生成多个中间姿势的机器人近似体,并判定所生成的各机器人近似体与周边物近似体有无干扰,从而执行详细的干扰判定。

其结果,在判定为干扰(“是”)的情况下,结束流程。作为输出结果,既可以是指示干扰的输出,也可以是指定被判定为干扰的连杆l以及姿势的输出形态。

在判定为不干扰(“否”)的情况下,进入步骤s58及以后的步骤,进行与第二实施方式同样的处理。

这样,区别于第二实施方式涉及的高速的干扰判定处理而另外准备低速且高精度的干扰判定处理算法,仅对在高速的干扰判定处理中缩小范围到的规定动作路径的一部分应用高精度的干扰判定处理算法,因此能够实现高速且高精度的干扰判定。

需要说明的是,虽然从第一姿势与第二姿势之间的姿势中的接近目标姿势的一方起依次进行干扰判定,但也可以从接近初始姿势的姿势起执行干扰判定,即使达到规定的分辨率,也在步骤s60的结果是判定为干扰的时间点输出其姿势并中止之后的干扰判定处理。此时,也可以构成为,不中止处理而搜索继被判定为不干扰的在此之前的路径之后的新的路径。

上述实施方式的一部分或者全部也可以如以下的附录那样记载,但并不限定于以下。

(附录1)

一种干扰判定方法,使用具备接口28、存储装置26以及运算部24的运算装置14,判定具有多个可动轴的机械臂16在从初始姿势向目标姿势移动的动作路径上与存在于上述机械臂16的周边的周边物发生干扰的可能性,其中,

上述运算部24执行以下步骤:

使上述存储装置26存储针对规定的关注部位以多面体近似上述机械臂16的形状而得的机器人数据;

使上述存储装置26存储近似上述周边物的形状而得的周边物近似体的数据;

使用上述接口28获取上述初始姿势以及上述目标姿势;

设定从上述初始姿势向上述目标姿势移动的上述动作路径上的上述机械臂16的第一姿势、相比于上述第一姿势相对地靠上述目标姿势侧的上述动作路径上的上述机械臂16的第二姿势、以及上述第一姿势与上述第二姿势之间的中间姿势;

基于上述机器人数据,生成针对至少一个上述关注部位以上述多面体近似上述第一姿势、上述第二姿势以及上述中间姿势下的上述机械臂16的形状而得的多个机器人近似体;

生成组合在该步骤中生成的多个上述机器人近似体而构成的第一组合近似体;

判定上述第一组合近似体和上述周边物近似体是否干扰;

在该步骤中判定为干扰的情况下,

算出表示构成上述第一组合近似体的多个上述机器人近似体中相邻的两个上述机器人近似体的间隔的量,并与规定值进行比较;以及

基于表示上述间隔的量与上述规定值的比较结果,判断是否生成比上述第一组合近似体小的组合近似体。

(附录2)

一种干扰判定方法,使用具备运算部24的运算装置14,判定具有多个可动轴的机械臂16在从初始姿势向目标姿势移动的动作路径上与存在于上述机械臂16的周边的周边物发生干扰的可能性,其中,

上述运算部24执行以下步骤:

设定用于确定从上述初始姿势向上述目标姿势移动的上述动作路径上的上述机械臂16的第一姿势的多个上述可动轴的旋转角度;

设定用于确定比上述第一姿势更靠上述目标姿势侧的上述动作路径上的上述机械臂16的第二姿势的多个上述可动轴的旋转角度,关于各上述可动轴,从上述第一姿势向上述第二姿势变化的期间的旋转角度单调增加或者单调减少;

为确定上述第一姿势与上述第二姿势之间的至少一个中间姿势而设定示出多个上述可动轴的旋转角度的信息;

针对上述机械臂16的至少一个关注部位,生成以多面体近似上述第一姿势、上述第二姿势以及上述中间姿势而得的多个机器人近似体;

判断组合在该步骤中生成的多个上述机器人近似体而构成的第一组合近似体是否与上述周边物发生干扰;

在该步骤中判断为干扰的情况下,生成组合多个上述机器人近似体而构成的、比上述第一组合近似体小的第二组合近似体;以及

判定上述第二组合近似体和周边物近似体是否发生干扰。

(附录3)

一种干扰判定系统10,使用具备接口28、存储装置26以及运算部24的运算装置14,判定具有多个可动轴的机械臂16在从初始姿势向目标姿势移动的动作路径上与存在于上述机械臂16的周边的周边物发生干扰的可能性,其中,

上述运算部24执行以下步骤:

使上述存储装置26存储针对规定的关注部位以多面体近似上述机械臂16的形状而得的机器人数据;

使上述存储装置26存储近似上述周边物的形状而得的周边物近似体的数据;

使用上述接口28获取上述初始姿势以及上述目标姿势;

设定从上述初始姿势向上述目标姿势移动的上述动作路径上的上述机械臂16的第一姿势、相比于上述第一姿势相对地靠上述目标姿势侧的上述动作路径上的上述机械臂16的第二姿势、以及上述第一姿势与上述第二姿势之间的中间姿势;

基于上述机器人数据,生成针对至少一个上述关注部位以上述多面体近似上述第一姿势、上述第二姿势以及上述中间姿势下的上述机械臂16的形状而得的多个机器人近似体;

生成组合在该步骤中生成的多个上述机器人近似体而构成的第一组合近似体;

判定上述第一组合近似体和上述周边物近似体是否干扰;

在该步骤中判定为干扰的情况下,

算出表示构成上述第一组合近似体的多个上述机器人近似体中相邻的两个上述机器人近似体的间隔的量,并与规定值进行比较;以及

基于表示上述间隔的量与上述规定值的比较结果,判断是否生成比上述第一组合近似体小的组合近似体。

(附录4)

一种程序,用于使具备接口28、存储装置26以及运算部24的运算装置14执行使用上述运算装置14判定具有多个可动轴的机械臂16在从初始姿势向目标姿势移动的动作路径上与存在于上述机械臂16的周边的周边物发生干扰的可能性的干扰判定,其中,

上述程序使上述运算部24执行以下步骤:

使上述存储装置26存储针对规定的关注部位以多面体近似上述机械臂16的形状而得的机器人数据;

使上述存储装置26存储近似上述周边物的形状而得的周边物近似体的数据;

使用上述接口28获取上述初始姿势以及上述目标姿势;

设定从上述初始姿势向上述目标姿势移动的上述动作路径上的上述机械臂16的第一姿势、相比于上述第一姿势相对地靠上述目标姿势侧的上述动作路径上的上述机械臂16的第二姿势、以及上述第一姿势与上述第二姿势之间的中间姿势;

基于上述机器人数据,生成针对至少一个上述关注部位以上述多面体近似上述第一姿势、上述第二姿势以及上述中间姿势下的上述机械臂16的形状而得的多个机器人近似体;

生成组合在该步骤中生成的多个上述机器人近似体而构成的第一组合近似体;

判定上述第一组合近似体和上述周边物近似体是否干扰;

在该步骤中判定为干扰的情况下,

算出表示构成上述第一组合近似体的多个上述机器人近似体中相邻的两个上述机器人近似体的间隔的量,并与规定值进行比较;以及

基于表示上述间隔的量与上述规定值的比较结果,判断是否生成比上述第一组合近似体小的组合近似体。

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