机器人仿真器、机器人系统以及仿真方法与流程

文档序号:15279264发布日期:2018-08-28 23:20阅读:352来源:国知局

本公开涉及机器人仿真器、机器人系统以及仿真方法。



背景技术:

在日本专利特开2015-202523号公报中公开了具有图像生成部、起点指定部、经由点指定部以及生成部的教学系统。图像生成部生成包含闭合的加工线的虚拟图像,所述加工线被设定于作为机器人的加工对象的工件上。起点指定部在虚拟图像上在加工线以外的位置指定起点。经由点指定部在加工线上指定经由点。生成部针对从起点起经过经由点而沿加工线行进并再次返回到该经由点的路径生成针对机器人的示教数据。



技术实现要素:

本公开的目的在于提供对容易进行机器人的动作示教有效的机器人仿真器、机器人系统以及仿真方法。

本公开的一个方面涉及的机器人仿真器包括:模型存储部,其存储与机器人以及该机器人的周边的障碍物相关的模型信息;信息获取部,其构成为获取第一输入信息,所述第一输入信息确定机器人的动作的起点(或者开始位置)以及终点(结束位置);以及信息处理部,其被构成为执行基于第一输入信息和模型信息生成路径的处理以及生成图像数据的处理,所述路径避免机器人与障碍物之间的冲突并使机器人的前端部在两个示教点之间从开始位置移动到结束位置,所述图像数据包含示出障碍物的图以及示出路径的经由点的指标。

本公开的另一方面涉及的机器人系统包括:上述机器人仿真器;机器人;以及机器人控制器,控制机器人,以使前端部沿路径移动。

本公开的其他方面涉及的仿真方法由机器人仿真器执行,所述仿真方法包括:存储与机器人以及该机器人的周边的障碍物有关的模型信息;获取第一输入信息,所述第一输入信息确定与机器人的动作的开始位置和结束位置相对的至少两个示教点;基于第一输入信息和模型信息生成路径,所述路径避免机器人与障碍物之间的冲突并使机器人的前端部在两个示教点之间从开始位置移动到结束位置;以及生成图像数据,所述图像数据包含示出障碍物的图以及示出路径的经由点的指标。

根据本公开,能够提供对容易进行机器人的动作示教有效的机器人仿真器、机器人系统以及仿真方法。

附图说明

图1是示出机器人系统的整体构成的示意图;

图2是示出机器人仿真器的功能的构成的框图;

图3是例示作业的内容的表;

图4是例示主窗口的示意图;

图5是示出机器人仿真器的硬件构成的框图;

图6是示出从路径生成辅助功能的调出到路径生成的步骤的流程图;

图7是例示显示作业指定窗口的画面的示意图;

图8是例示显示选项设定窗口的画面的示意图;

图9是示出路径生成的详细步骤的流程图;

图10是例示显示了所生成的路径的画面的示意图;

图11是例示显示了通过直线连接开始位置和结束位置的画面的示意图;

图12是示出从指标选择到路径修正的步骤的流程图;

图13是例示显示了经由点的编辑标记的画面的示意图;

图14是示出路径修正的详细步骤的流程图;

图15是例示显示了修正后的路径的画面的示意图;

图16是示出动画再现处理的步骤的流程图;

图17是例示动画再现中的画面的示意图。

具体实施方式

以下,参照附图对实施方式进行详细说明。在说明中,对相同要素或者具有相同功能的要素标注相同的符号,并省略重复说明。本实施方式所涉及的机器人系统是通过使机器人执行由操作人员示教的动作来自动化地进行加工、组装等各种作业的系统。

〔机器人系统〕

如图1所示,机器人系统1包括机器人10、机器人仿真器100以及机器人控制器200。机器人10例如是6轴的垂直多关节机器人,被构成为通过设置于其前端部的工具执行对工件30的作业。通过与作业内容相应的工具的选择,能够执行各种作业。作为作业内容的具体例子,例举出拣选零件而配置的拾取与放置、零件之间的点焊或者零件之间的电弧焊接等。在图1中,例示有进行零件之间的电弧焊接的机器人10。

机器人10具有基部11、旋转部12、第一臂部13、第二臂部14、第三臂部15、前端部16以及执行器21~26。

基部11固定于设置面。旋转部12被设置于基部11上,并能够绕铅垂的轴线ax1旋转。以下,将基部11与旋转部12的连接部称为“关节j1”,将旋转部12相对于基部11的旋转角度称为“关节j1的角度”。

第一臂部13与旋转部12连接,并能够绕与轴线ax1正交的轴线ax2摆动。正交包含如所谓的立体交叉那样的彼此分离开交叉的情况。以下,将旋转部12和第一臂部13的连接部称为“关节j2”,将第一臂部13相对于旋转部12的摆动角度称为“关节j2的角度”。

第二臂部14与第一臂部13的前端部连接,并能够绕与轴线ax2平行的轴线ax3摆动。以下,将第一臂部13与第二臂部14的连接部称为“关节j3”,将第二臂部14相对于第一臂部13的摆动角度称为“关节j3的角度”。第二臂部14的前端部能够绕沿第二臂部14的中心线的轴线ax4旋转。以下,将第二臂部14的基端部与前端部的连接部称为“关节j4”,将第二臂部14的前端部相对于基端部的旋转角度称为“关节j4的角度”。

第三臂部15与第二臂部14的前端部连接,并能够绕与轴线ax4正交的轴线ax5摆动。以下,将第二臂部14与第三臂部15的连接部称为“关节j5”,将第三臂部15相对于第二臂部14的摆动角度称为“关节j5的角度”。

前端部16与第三臂部15的前端部连接,前端部16能够绕沿第三臂部15的中心线的轴线ax6旋转。以下,将第三臂部15与前端部16的连接部称为“关节j6”,将前端部16相对于第三臂部15的旋转角度称为“关节j6的角度”。在前端部16设置有工具17。工具17例如是电弧焊接用的焊炬,并自如拆装。

执行器21~26例如将电动马达等作为动力源而分别驱动关节j1~j6。具体而言,执行器21绕轴线ax1使旋转部12旋转,执行器22绕轴线ax2使第一臂部13摆动,执行器23绕轴线ax3使第二臂部14摆动,执行器24绕轴线ax4使第二臂部14的前端部旋转,执行器25绕轴线ax5使第三臂部15摆动,执行器26绕轴线ax6使前端部16旋转。

通过调节关节j1~j6的角度,能够与工件30匹配自如地调节前端部16的工具17的位置以及姿势。

工件30包含能成为机器人10移动的障碍物的要素。例如工件30具有成为基座的零件31以及配置于零件31上的多个零件32、33、34。作为一例,机器人10进行零件32、33、34相对于零件31的电弧焊接。在使工具17从一个焊接部向另一个焊接部移动时,零件32、33、34的每个可成为障碍物。此外,所谓“障碍物”并不意味着总是成为妨碍前端部16移动的物品,而是也意味着根据机器人10的动作条件能够妨碍前端部16移动的物品。除了工件的零件之外,例如机器人的周边装置或者夹具等也能够成为障碍物。

此外,以上示出的机器人10的构成只不过是一个例子。机器人10的构成可以是能够将其前端部的位置以及姿势调节为希望的状态的任何构成。例如机器人10还可以是在上述的构成上追加了1轴的7轴机器人。

机器人仿真器100基于机器人10以及工件30的模型信息对机器人10以及工件30的位置关系进行仿真,并基于其结果生成机器人10的路径。路径是确定机器人10的前端部16的移动路径以及沿该路径使前端部16移动时的机器人10的姿势(即关节j1~j6的角度)的信息。

机器人控制器200控制机器人10,以使前端部16沿上述路径移动(按照上述路径而分别使关节j1~关节j6动作)。

机器人仿真器100以及机器人控制器200可以被一体化。例如机器人仿真器100的功能可以组装到机器人控制器200中,机器人控制器200的功能也可以组装到机器人仿真器100中。

〔机器人仿真器〕

接着,对机器人仿真器100的构成进行详细说明。如图2所示,机器人仿真器100具有通过一个或者多个计算机构成的主体110、输入装置191以及监视器192。

输入装置191是用于对主体110输入信息的装置。输入装置191可以是能够输入希望的信息的任何的装置,作为具体例子,列举有键盘以及鼠标等。监视器192是用于显示从主体110输出的信息的装置。监视器192可以是能够显示图形的任何的装置,作为具体例子,列举有液晶面板等。此外,输入装置191和监视器192可以作为合并具有输入功能和显示功能的触摸面板而被一体化。另外,输入装置191以及监视器192可以被组装到主体110中。

主体110作为功能的构成(以下,称为“功能模块”。)而具有模型存储部111、作业存储部112、条件存储部113、路径存储部114、主画面输出部115、信息获取部120、信息处理部130以及图像数据输出部118。

模型存储部111存储与机器人10以及该机器人10的周边的障碍物相关的模型信息。例如,模型存储部111存储工件30的模型信息作为与障碍物有关的模型信息。模型信息例如是通过多边形构成的三维的表面数据。机器人10以及工件30的模型信息可以是基于三维的设计数据而生成的信息,也可以是基于由三维测量装置等获取的测量数据而生成的信息。

作业存储部112存储规定机器人10的动作的至少一个作业。如图3所示,各个作业包含按时序依次排列的多行。各行包含确定前端部16的目标位置和姿势的信息以及是否需要生成与前一行之间的路径。在依次排列的行间(以下,称为“区间”。)预先设定有基于线性插值、圆弧插值或者关节角度插值等已有方法的路径。以下,将其称为“初始路径”。

返回到图2,条件存储部113存储路径的生成条件。例如条件存储部113存储规定路径(路径的候选)的生成次数的条件(以下,称为“重复条件”。)。重复条件可以是路径的生成次数的上限值,也可以是重复路径的生成时间。

条件存储部113还可以存储所生成的路径的评价基准。路径的评价基准用作选择以满足上述重复条件的生成次数生成的多个路径中的某一个的基准。作为路径的评价基准的具体例子,列举有前端部16沿路径移动的时间最少、前端部16沿路径移动时的关节j1~j6的总动作角度最小、路径的经由点(后述)的数目最少、前端部16沿路径移动时的执行器21~26的功率消耗最小等。

条件存储部113可以存储障碍物相对于机器人10的可接近距离、即机器人10相对于障碍物的可接近距离。可接近距离被用于后述的外壳模型的生成。

条件存储部113可以存储前端部16沿路径移动时的姿势条件。姿势条件可以是将前端部16的姿势角度确定为一个的数值,也可以是确定前端部16的姿势角度的上限值以及下限值的数值范围。

条件存储部113可以存储前端部16沿路径移动时的关节j1~j6的可动范围。关节j1~j6的可动范围可以以任何形式确定。例如关节j1~j6的可动范围可以是关节j1~j6的角度的数值范围,也可以是相对于通过硬件上的规定而确定的可动范围(以下,称为“构造上的可动范围”。)的比例。

路径存储部114存储所生成的路径。

主画面输出部115生成用于操作机器人仿真器100的主窗口的数据,并输出到监视器192。图4是例示主窗口的示意图。如图4所示,主窗口300包含菜单栏310、作业框320以及描绘框330。菜单栏310包含用于调出机器人仿真器100的各种功能的按钮。例如菜单栏310包含路径生成辅助按钮311以及再现按钮312。路径生成辅助按钮311是用于调出路径的生成辅助功能的按钮,能够由输入装置191进行操作输入(例如点击或者单击等)。再现按钮312是用于再现机器人10按照所生成的路径的动态图像的按钮,并且能够由输入装置191进行操作输入。作业框320显示成为路径生成辅助对象的作业的构成。描绘框330显示包含示出机器人10的图以及示出工件30的图的图像。

返回到图2,信息获取部120至少构成为获取确定机器人10的动作的开始位置以及结束位置的输入信息(以下,称为“第一输入信息”。)。“开始位置”包含动作的开始时的前端部16的位置以及在该位置配置前端部16时的机器人10的姿势(即,关节j1~j6的角度)。“结束位置”包含动作的结束时的前端部16的位置以及在该位置配置前端部16时的机器人10的姿势。

信息获取部120还构成为获取改变所生成的路径的经由点(后述)的位置的输入信息(以下,称为“第二输入信息”。)。

信息获取部120还可以构成为获取以下输入信息中的至少一个:确定上述重复条件的输入信息(以下,称为“第三输入信息”)、确定上述路径的评价基准的输入信息(以下,称为“第四输入信息”。)、确定上述可接近距离的输入信息(以下,称为“第五输入信息”。)、确定上述姿势条件的输入信息(以下,称为“第六输入信息”。)以及确定上述可动范围的输入信息(以下,称为“第七输入信息”。)。

例如,信息获取部120具有作业指定获取部121、选项输入获取部122、以及修正输入获取部123作为更细分的功能模块。

作为上述第一输入信息的一例,作业指定获取部121从输入装置191获取指定被存储在作业存储部112的作业的某一个的信息(以下,称为“作业指定信息”。)。如上述那样,作业包含按时序依次排列的多行,各行包含确定前端部16的目标位置以及姿势的信息。因此,通过指定作业,来按照每个作业的区间确定机器人10的动作的开始位置以及结束位置。此外,第一输入信息并不限于作业指定信息。作业指定获取部121可以从输入装置191获取直接指定开始位置以及结束位置的信息。

选项输入获取部122从输入装置191获取上述第三输入信息~第七输入信息,并在条件存储部113中写入根据这些输入信息而分别确定的条件。

作为上述第二输入信息的一例,修正输入获取部123从输入装置191获取在监视器192的图像上使经由点的指标(后述)移动的输入信息。

信息处理部130构成为执行以下处理:基于第一输入信息以及模型信息生成路径,所述路径避免机器人10与障碍物的冲突并使前端部16从开始位置移动到结束位置;以及生成包含示出障碍物的图以及示出路径的经由点的指标的图像数据。

信息处理部130可以构成为:为了经过基于上述第二输入信息改变位置后的经由点,还执行修正路径的处理以及生成基于第二输入信息改变了指标的位置的图像数据的处理。

信息处理部130可以构成为执行以下处理:在生成路径时重复路径的生成直到满足根据第三输入信息而确定的上述重复条件为止;以及从被生成的多个路径中选择一个路径,信息处理部130还可以构成为:在从多个路径中选择一个路径时,按照根据第四输入信息确定的上述评价基准来选择一个路径。

信息处理部130可以构成为:还执行生成在保持基于第五输入信息而确定的上述可接近距离的同时覆盖机器人10的外壳模型的处理,当生成路径时,生成避免外壳模型与障碍物之间的冲突并使前端部16从开始位置移动到结束位置的路径。

信息处理部130可以构成为:除了覆盖机器人10的外壳模型以外,还生成保持上述可接近距离来覆盖障碍物的外壳模型,并生成避免机器人10的外壳模型与障碍物的外壳模型之间的冲突并使前端部16从开始位置移动到结束位置的路径。

信息处理部130可以构成为:当生成路径时,以使前端部16的姿势满足根据第六输入信息确定的上述姿势条件的方式生成路径,信息处理部130还可以构成为:以使关节j1~j6的动作角度落在根据第七输入信息而确定的可动范围内的方式生成路径。

例如,信息处理部130具有外壳模型生成部131、开始和结束位置设定部132、路径生成部133、图像数据生成部134、经由点修正部135、能否生成路径判断部136、修正路径生成部137以及动态图像数据生成部138来作为更细分的功能模块。

外壳模型生成部131生成在保持存储于条件存储部113的上述可接近距离的同时覆盖机器人10的外壳模型,并写入到模型存储部111。外壳模型生成部131还可以生成保持上述可接近距离而覆盖障碍物(例如零件32、33、34)的外壳模型,并写入到模型存储部111。

开始和结束位置设定部132从作业存储部112获取与根据作业指定获取部121获取的指定对应的作业(以下,称为“指定作业”。)的信息,并基于该信息确定成为路径的生成对象的区间的开始位置以及结束位置。

路径生成部133从开始和结束位置设定部132获取要生成路径的区间的开始位置以及结束位置的信息,并从模型存储部111获取模型信息,生成避免机器人10与障碍物之间的冲突并使前端部16从开始位置移动到结束位置的路径。

更具体而言,路径生成部133为了满足下面的条件i)~iii)而生成经由至少一个经由点并从开始位置至结束位置的路径。开始位置与经由点之间、经由点彼此之间、以及经由点与结束位置之间通过线性插值、圆弧插值或者关节角度插值等已有的方法进行插值。

i)存储在模型存储部111的机器人10的外壳模型与障碍物的模型之间不冲突(干渉)。

ii)沿路径移动时的前端部16的姿势满足被存储于条件存储部113的上述姿势条件。

iii)当前端部16沿路径移动时,关节j1~j6的动作角度落在存储于条件存储部113的可动范围内。

路径生成部133直到满足存储于条件存储部113的上述重复条件为止重复生成路径并得到多个路径,之后,按照存储于条件存储部113的上述评价基准从多个路径中选择一个路径,并将该路径应用于被存储到作业存储部112的指定作业。由此,在指定作业中的、成为路径的生成对象的区间中的上述初始路径被改变为满足上述条件i)~iii)的路径。

在生成路径之后,路径生成部133为了经过基于第二输入信息改变位置后的经由点而修正路径。

图像数据生成部134基于存储于模型存储部111的模型信息以及存储于作业存储部112的改变后的作业(路径生成部133生成的路径改变后的作业)生成图像数据,所述图像数据包含示出机器人10的图、示出工件30的图、示出路径的经由点的指标、以及示出路径的线。图像数据例如可以是通过多边形以及向量构成的三维图像数据,也可以是二维的线图数据。在生成了上述图像数据之后,图像数据生成部134生成基于第二输入信息改变了上述指标的位置的图像数据。

经由点修正部135根据上述指标的位置改变来改变三维空间中的经由点的位置。

能否生成路径判断部136判断是否能够生成经过改变后的经由点的路径。例如能否生成路径判断部136判断改变后的经由点是否满足上述条件i)~iii)。

修正路径生成部137修正路径以经过上述改变后的经由点,并应用于将该路径存储于作业存储部112的上述改变后的作业。

动态图像数据生成部138基于存储于模型存储部111的模型信息以及存储于作业存储部112的改变后的作业,以使前端部16沿路径移动的方式生成使机器人10动作时的动态图像数据。

图像数据输出部118通过监视器192输出通过图像数据生成部134生成的图像数据或者通过动态图像数据生成部138生成的动态图像数据。

图5是例示主体110的硬件构成的框图。如图5所示,主体110具有电路150,电路150具有一个或者多个处理器151、存储部152、以及输入输出端口155、156。

存储部152包含存储器(memory)153以及存储器(storage)154。存储器154记录有用于构成主体110的上述各功能模块的程序。存储器154可以是计算机能够读取的任何部件。作为具体例子,例举出硬盘、非易失性的半导体存储器、磁盘以及光盘等。存储器153暂时存储从存储器154下载的程序以及处理器151的运算结果等。处理器151通过与存储器153一起工作执行程序,来构成各功能模块。

输入输出端口155根据来自处理器151的指令在与输入装置191之间进行电信号的输入输出。输入输出端口156根据来自处理器151的指令在与监视器192之间进行电信号的输入输出。

〔仿真方法〕

接着,作为仿真方法的一例,对由机器人仿真器100进行的路径的生成辅助步骤进行说明。

(从路径生成辅助功能的调出到路径生成的步骤)

如图6所示,机器人仿真器100首先执行步骤s01。在步骤s01中,主画面输出部115等待针对路径生成辅助按钮311的操作输入。

接着,机器人仿真器100执行步骤s02。在步骤s02中,作业指定获取部121将用于显示作业指定窗口的数据输出到监视器192。

图7是例示显示了作业指定窗口的画面的示意图。如图7所示,作业指定窗口400包含作业列表401、选项按钮402以及路径生成按钮403。作业列表401对存储在作业存储部112中的作业进行一览显示。通过向输入装置191的输入,能够选择被显示在作业列表401的作业的任一个。选项按钮402是用于调出路径生成的选项条件的输入画面的按钮,能够由输入装置191进行操作输入。路径生成按钮403是用于对在作业列表401中选择的一个作业请求执行路径生成的按钮,能够由输入装置191进行操作输入。

返回到图6,机器人仿真器100接着执行步骤s03。在步骤s03中,作业指定获取部121确认有无针对路径生成按钮403的操作输入。

在步骤s03中,当判断为没有针对路径生成按钮403的操作输入时,机器人仿真器100执行步骤s04。在步骤s04中,选项输入获取部122确认有无针对选项按钮402的操作输入。

在步骤s04中,当判断为没有针对选项按钮402的操作输入时,机器人仿真器100将处理返回到步骤s03。以后,机器人仿真器100等待对选项按钮402或者路径生成按钮403的任一个的操作输入。

在步骤s04中,当判断存在对选项按钮402的操作输入时,机器人仿真器100执行步骤s05。在步骤s05中,选项输入获取部122显示选项设定窗口。

图8是例示显示了选项设定窗口的画面的示意图。如图8所示,选项设定窗口500包含设定菜单510、520、530、540、550、560以及确认按钮590。

设定菜单510是用于设定路径的搜索结束条件(上述重复条件)的菜单,包含输入框512、513以及单选按钮511。输入框512是用于输入搜索路径数(上述重复次数)的部分,能够由输入装置191进行数值的输入。输入框513是用于输入搜索时间(上述重复时间)的部分,能够由输入装置191进行数值的输入。单选按钮511是用于选择确定搜索路径数以及搜索时间的某一者的部分,能够由输入装置191进行选择输入。向设定菜单510输入的信息相当于上述第三输入信息的一例。

设定菜单520是用于设定路径的选择基准(上述评价基准)的菜单,包含输入框521。输入框521是用于输入选择基准的部分,能够由输入装置191进行选择输入。例如输入框521构成为能够通过下拉菜单方式输入“循环周期最小”、“关节动作角度最小”、“经由点数量最少”或者“功率消耗最小”中的某一者。当在输入框521中输入了“循环周期最小”的情况下,以选择前端部16沿路径移动的时间为最小的路径的方式设定上述评价基准。当在输入框521中输入了“关节动作角度最小”时,以选择前端部16沿路径移动时的关节j1~j6的总动作角度为最小的路径的方式设定上述评价基准。当在输入框521中输入了“经由点数量最少”时,以选择路径的经由点(后述)的数量为最少的路径的方式设定上述评价基准。当在输入框521中输入了“功率消耗最小”时,以选择前端部16沿路径移动时的执行器21~26的功率消耗为最小的路径的方式设定上述评价基准。向设定菜单520输入的信息相当于上述第四输入信息的一例。

设定菜单530是用于设定在所生成的路径中前端部16的移动速度的菜单,包含输入框531。输入框531是用于输入移动速度的设定值的部分,能够由输入装置191进行数值输入。

设定菜单540是用于设定简易化条件(上述外壳模型的生成条件)的菜单,包含输入框541、542。输入框541是用于输入余量(上述可接近距离)的部分,能够由输入装置191进行的数值输入。输入框542是用于输入粒度的部分,能够由输入装置191进行数值输入。粒度表示外壳模型的简易化程度。作为粒度的具体例子,列举出表示外壳模型的表面的细分程度的数值。表示细分的程度的数值可以由与机器人10的模型的表面比较的比例表示。向输入框541输入的信息相当于上述第五输入信息。

设定菜单550是用于设定上述姿势条件的菜单,包含输入框551、552、553。输入框551、552、553是用于分别输入绕x轴的倾斜角、绕y轴的倾斜角以及绕z轴的倾斜角的部分,能够由输入装置191进行数值输入。此外,x轴、y轴、z轴是预定的坐标轴。向设定菜单550输入的信息相当于上述第六输入信息。

设定菜单560是用于设定规定路径的搜索范围(空间的搜索范围)的条件的菜单,包含输入框561、562、563、564、565、566以及输入框571、572、573、574、575、576。

输入框561、562、563、564、565、566是用于输入确定关节j1~j6的可动范围的值的部分,能够由输入装置191进行数值输入。例如,在输入框561~566中能够输入针对关节j1~j6的构造上的可动范围的使用率。该情况下,在关节j1~j6的构造上的可动范围上乘以上述使用率后的范围被设定为上述可动范围。

输入框571、572、573、574、575、576是用于输入确定前端部16的可动区域的值的部分,能够由输入装置191进行数值输入。例如,在输入框571、572中能够分别输入x轴坐标的下限以及上限,在输入框573、574中能够分别输入y轴坐标的下限以及上限,在输入框575、576中能够输入z轴坐标的下限以及上限,根据这些输入值确定的区域被设定为前端部16的可动区域。

向输入框561~566输入的信息相当于上述第七输入信息。向输入框571~576输入的信息也相当于上述第七输入信息。通过规定前端部16的可动区域,用于间接地规定关节j1~j6的可动范围。

确认按钮590是请求登记向设定菜单510、520、530、540、550、560输入的内容的按钮,能够由输入装置191进行操作输入。

返回到图6,机器人仿真器100接着执行步骤s06。在步骤s06中,选项输入获取部122等待针对确认按钮590的操作输入。

接着,机器人仿真器100执行步骤s07。在步骤s07中,选项输入获取部122获取向设定菜单510、520、530、540、550、560输入的信息,并将这些作为路径的生成条件写入到条件存储部113。

接着,机器人仿真器100执行步骤s08。在步骤s08中,选项输入获取部122向监视器192输出将选项设定窗口500设为非显示的指令。

在步骤s03中,当判断为完成对路径生成按钮403的操作输入时,机器人仿真器100执行步骤s09。在步骤s09中,作业指定获取部121获取作业列表401中的作业的选择状况作为上述作业指定信息。

接着,机器人仿真器100执行步骤s10。在步骤s10中,信息处理部130对于指定作业(通过作业指定信息指定的作业)的区间中的、成为路径的生成对象的区间,按照存储在条件存储部113的条件生成路径。关于步骤s10中的处理内容在后面详细叙述。以上完成从路径的生成辅助功能的调出到路径生成的步骤。

(路径生成的详细步骤)

接着,对步骤s10中的处理的详细步骤进行说明。如图9所示,机器人仿真器100首先执行步骤s21。在步骤s21中,外壳模型生成部131生成在保持存储于条件存储部113的上述可接近距离的同时覆盖机器人10的外壳模型,并写入到模型存储部111。例如,外壳模型生成部131以机器人10的模型与外壳模型的间隔的最小值为上述可接近距离以上的方式按照上述粒度生成外壳模型。

接着,机器人仿真器100执行步骤s22。在步骤s22中,开始和结束位置设定部132从作业存储部112获取上述指定作业的信息,并基于该信息确定成为路径的生成对象的区间的开始位置以及结束位置。

接着,机器人仿真器100执行步骤s23。在步骤s23中,路径生成部133从开始和结束位置设定部132获取开始位置以及结束位置的信息,并从模型存储部111获取模型信息,生成避免机器人10与障碍物之间的冲突并使前端部16从开始位置移动到结束位置的路径,并将其作为路径的候选写入到作业存储部112。更具体而言,路径生成部133以满足上述条件i)~iii)的方式生成路径。例如路径生成部133生成满足上述条件i)~iii)的经由点,并且遍及路径整体直到满足条件i)~iii)为止,以经过该经由点的方式修正路径。更详细的方法例如在日本专利第4103057号等中公开。

接着,机器人仿真器100执行步骤s24。在步骤s24中,路径生成部133确认存储在条件存储部113中的上述重复条件是否满足。

在步骤s24中,当判断为不满足上述重复条件时,机器人仿真器100将处理返回到步骤s23。以后,重复进行路径的候选的生成和写入直到满足上述重复条件为止,在路径存储部114中储存多个路径的候选。

接着,机器人仿真器100执行步骤s25。在步骤s25中,路径生成部133按照存储于条件存储部113的上述评价基准从上述多个路径的候选中选择一个路径,并将该路径应用于存储在作业存储部112中的指定作业。即,在指定作业中的、成为该路径的生成对象的区间中插入该路径的经由点。由此,该区间中的上述初始路径被改变为满足上述条件i)~iii)的路径。

接着,机器人仿真器100执行步骤s26。在步骤s26中,开始和结束位置设定部132针对成为路径的生成对象的全体区间确认路径的生成是否已完成。

在步骤s26中,当判断为残留有应生成路径的区间时,机器人仿真器100执行步骤s27。在步骤s27中,开始和结束位置设定部132选择应生成路径的区间的某一个,并与其对应地改变开始位置以及结束位置。之后,机器人仿真器100将处理返回到步骤s23。以后,重复进行路径的生成和与生成后的路径相应的指定作业的改变,直到对于成为路径的生成对象的全体区间完成路径的生成为止。由此,以下,对于成为路径的生成对象的全体区间,将完成初始路径的改变的指定作业称为“改变后的作业”。

在步骤s26中,在判断为未残留有应生成路径的区间时,机器人仿真器100执行步骤s28。在步骤s28中,图像数据生成部134基于存储于模型存储部111的模型信息以及存储于作业存储部112的改变后的作业生成图像数据,所述图像数据包含示出机器人10的图、示出外壳模型的图、示出工件30的图、示出路径的经由点的指标、示出路径的线。

接着,机器人仿真器100执行步骤s29。在步骤s29中,图像数据输出部118从图像数据生成部134获取在步骤s29中生成的图像数据,并将该图像数据输出到监视器192。以上,上述步骤s10完成。

图10是例示在步骤s29中被显示在监视器192上的图像的示意图。在描绘框330中,除了机器人10的模型m1、工件30的模型m2之外,还显示外壳模型m3。并且,在描绘框330中,显示有示出开始位置的指标p1、示出经由点的指标p11~p15、示出结束位置的指标p2、以及经过经由点的指标p11~p15并从开始位置的指标p1到结束位置的指标p2的线rt1。在显示有指标p11~p15的状态下,能够通过输入装置191进行选择指标p11~p15的某一个的输入。此外,在图10中,为了易于理解,二维地示出描绘框330内的显示内容,但实际上能够在描绘框330内显示三维图像。

图11是比较用的图,例示有不进行上述步骤s23~s27而显示了上述初始路径的图像。在图11中,显示有穿过零件32、33而从指标p1到指标p2的线rt2。当在由线rt2示出的初始路径中使机器人10动作的情况下,机器人10与零件32、33之间产生冲突是明显的。与此相对,图10中的线rt1绕过零件32、33而从指标p1到达指标p2,当在由线rt1示出的路径使机器人10动作的情况下,机器人10和零件32、33不产生冲突。

如以上那样,通过将工件30的模型m2以及示出经由点的指标p11~p15相匹配地描绘,能够在视觉上确认所生成的路径的妥当性。另外,通过将示出路径的线rt1匹配地显示,能够更加清楚地确认所生成的路径的妥当性。

此外,在上述的步骤中,示出了通过生成后的路径改变存储于作业存储部112的指定作业的例子,但路径生成部133可以在生成指定作业的复制的基础上改变该复制。

(从指标选择到路径修正的步骤)

如图12所示,机器人仿真器100首先执行步骤s31。在步骤s31中,修正输入获取部123确认有无选择某一个经由点的指标的输入。

在步骤s31中,当判断为没有选择指标的输入时,机器人仿真器100执行步骤s32。在步骤s32中,修正输入获取部123确认在输入装置191中是否完成使路径修正完成的输入(以下,称为“完成输入”。)。作为完成输入的具体例子,列举了针对再现按钮312的操作输入或者关闭主窗口300的输入等。

在步骤s32中,当判断为没有完成输入时,机器人仿真器100将处理返回到步骤s31。以后,机器人仿真器100等待选择指标的输入或者完成输入。

在步骤s31中,当判断为存在选择指标的输入时,机器人仿真器100执行步骤s33。在步骤s33中,修正输入获取部123将以下指令输出到图像数据输出部118,所述指令将编辑标记em(参照图13)附加到所选择的指标上,并且图像数据输出部118将与该指令相应的图像数据输出到监视器192。以下,将标记有编辑标记em的指标称为“活动指标”。活动指标能够通过输入装置191进行操作输入(例如拖拽输入)来使其移动。

接着,机器人仿真器100执行步骤s34。在步骤s34中,修正输入获取部123确认是否开始使活动指标移动的操作输入。

在步骤s34中,当判断为使活动指标移动的操作输入开始时,机器人仿真器100执行步骤s35。在步骤s35中,信息处理部130根据活动指标的移动执行修正路径的处理。关于步骤s35中的处理内容在后面详细叙述。

接着,机器人仿真器100执行步骤s36。在步骤s36中,修正输入获取部123确认是否完成了使活动指标移动的操作输入。

在步骤s36中,当判断为没有完成使活动指标移动的操作输入时,机器人仿真器100将处理返回到步骤s35。以后,重复修正与活动指标的移动相应的路径直到完成使活动指标移动的操作输入为止。

在步骤s36中,当判断为完成了使活动指标移动的操作输入时,机器人仿真器100执行步骤s37。在步骤s34中,在判断出没有开始使活动指标移动的操作输入时,机器人仿真器100不执行步骤s35、s36而执行步骤s37。在步骤s37中,修正输入获取部123确认有无选择其他的经由点的指标的操作输入。

在步骤s37中,当判断为存在选择其他的经由点的指标的操作输入时,机器人仿真器100执行步骤s38。在步骤s38中,修正输入获取部123向图像数据输出部118输出以下指令,所述指令将编辑标记em的位置改变为新选择的指标的位置,并且图像数据输出部118将与该指令相应的图像数据输出到监视器192。

接着,机器人仿真器100执行步骤s39。在步骤s37中,当判断为没有选择其他的经由点的指标的操作输入时,机器人仿真器100不执行步骤s38而执行步骤s39。在步骤s39中,修正输入获取部123确认有无上述完成输入。

在步骤s39中,当判断为没有完成输入时,机器人仿真器100将处理返回到步骤s33。以后,根据向输入装置191的操作输入,重复与活动指标的移动相应的路径修正以及活动指标的改变,直到进行完成输入为止。当在步骤s32以及步骤s39的任一步骤中判断为有完成输入时,机器人仿真器100完成处理。

(路径修正的详细步骤)

接着,对步骤s35中的处理的详细步骤进行说明。如图14所示,机器人仿真器100首先执行步骤s41。在步骤s41中,修正输入获取部123获取使活动指标移动的输入信息。

接着,机器人仿真器100执行步骤s42。在步骤s42中,修正输入获取部123根据在步骤s41中获取的信息设定活动指标的移动量。

接着,机器人仿真器100执行步骤s43。在步骤s43中,经由点修正部135根据活动指标的移动量改变经由点的位置。

接着,机器人仿真器100执行步骤s44。在步骤s44中,能否生成路径判断部136判断能否生成经过改变后的经由点(在步骤s43中位置被改变的经由点)的路径。例如能否生成路径判断部136判断改变后的经由点是否满足上述条件i)~iii)。

在步骤s44中,当判断为能够生成经过改变后的经由点的路径时,机器人仿真器100执行步骤s45。在步骤s45中,修正路径生成部137以经过改变后的经由点的方式重新生成路径,将该路径应用于存储于作业存储部112的上述改变后的作业。即,在改变后的作业中的、成为该路径的生成对象的区间插入该路径的经由点。

接着,机器人仿真器100执行步骤s46。在步骤s46中,以在步骤s43中设定的移动量改变活动指标的位置,与此相应,编辑标记em的位置发生改变,并且图像数据生成部134重新生成图像数据,所述图像数据以经过改变后的活动指标的方式改变了路径的线。

在步骤s44中,当判断为不能生成经过改变后的经由点的路径时,机器人仿真器100执行步骤s47。在步骤s47中,图像数据生成部134生成用于通知不能生成路径的图像数据(以下,称为“失败(ng)图像数据”。)。失败图像数据只要是能够视觉地识别不能生成路径,则可以是任何的图像。例如图像数据生成部134相对于能够生成路径的情况,可以生成改变了机器人10的图的颜色或者描绘框330的背景色等的图像数据作为失败图像数据。

在执行了步骤s46或者步骤s47之后,机器人仿真器100执行步骤s48。在步骤s48中,图像数据输出部118从图像数据生成部134获取在步骤s46或者步骤s47中生成的图像数据,并将该图像数据输出到监视器192。以上,上述步骤s35完成。

图15是例示在步骤s48中显示在监视器192上的图像的示意图,例示了图13中的指标p13的位置被改变、并且与其相应地路径的线rt1被改变的情况。

(动画再现处理的步骤)

如图16所示,机器人仿真器100首先执行步骤s51。在步骤s51中,动态图像数据生成部138等待针对再现按钮312的操作输入。

接着,机器人仿真器100执行步骤s52。在步骤s52中,动态图像数据生成部138从作业存储部112获取与作业的开始位置对应的关节j1~j6的角度。以下,将通过动态图像数据生成部138获取的关节j1~j6的角度称为“仿真角度”。

接着,机器人仿真器100执行步骤s53。在步骤s53中,动态图像数据生成部138基于存储于模型存储部111的模型信息以及存储于作业存储部112的作业生成图像数据,所述图像数据包含应用了仿真角度的机器人10的图、工件30的图、示出路径的经由点的指标以及示出路径的线。

接着,机器人仿真器100执行步骤s54。在步骤s54中,图像数据输出部118从动态图像数据生成部138获取在步骤s53中生成的图像数据,并将该图像数据输出到监视器192。

接着,机器人仿真器100执行步骤s55。在步骤s55中,动态图像数据生成部138确认应用了仿真角度的机器人10的前端部16是否到达了作业的结束位置。

在步骤s55中,当判断为前端部16没有到达作业的结束位置时,机器人仿真器100执行步骤s56。在步骤s56中,动态图像数据生成部138从作业存储部112获取路径上的与下一位置(例如经过预定时间后的位置)对应的关节j1~j6的角度。

之后,机器人仿真器100将处理返回到步骤s53。之后,重复沿路径的前端部16的位置的改变、与其对应的关节j1~j6的仿真角度的改变、与改变后的仿真角度对应的图像数据的生成以及输出,直到前端部16到达作业的结束位置为止。由此,沿路径使前端部16移动时的机器人10的动作作为动态图像被显示(参照图17)。

在步骤s55中,当判断为机器人10的前端部16到达作业的结束位置时,机器人仿真器100完成动画再现处理。通过将按照包含所生成的路径的作业的机器人10的动作显示为动态图像,能够更清楚地确认所生成的路径的妥当性。

〔本实施方式的效果〕

如以上说明的那样,机器人仿真器100包括:模型存储部111,其存储与机器人10以及该机器人10的周边的障碍物相关的模型信息;信息获取部120,其构成为获取第一输入信息,所述第一输入信息确定机器人10的动作的开始位置以及结束位置;以及信息处理部130,其构成为执行以下处理,基于第一输入信息以及模型信息生成路径以及生成图像数据,所述路径避免机器人10与障碍物之间的冲突并使机器人10的前端部16从开始位置移动到结束位置,所述图像数据包含示出障碍物的图以及示出路径的经由点的指标。

根据该机器人仿真器100,自动生成避免机器人10与障碍物之间的冲突并使机器人10的前端部16从开始位置移动到结束位置的路径。另外,由于生成包含示出障碍物的图以及示出路径的经由点的指标的图像数据,因此能够使用该图像数据视觉地示出障碍物与被自动生成的路径之间的关系。由此,能够容易判断能否采用路径以及进行路径的微调节等。因此,对容易进行机器人10的动作示教有效。

信息获取部120构成为还获取改变经由点的位置的第二输入信息,信息处理部130构成为还执行以下处理:以经过基于第二输入信息改变位置后的经由点的方式重新生成路径以及生成基于第二输入信息改变了指标的位置的图像数据。该情况下,通过在图像上使经由点移动的直观的操作能够调节路径。另外,由于在经由点的位置改变后图像被更新,因此能够确认调节后的路径的状态,并能够调节路径。因此,对容易进行机器人10的动作示教更有效。

信息获取部120构成为还获取确定对路径的生成次数进行规定的条件的第三输入信息,信息处理部130可以构成为执行以下处理:在生成路径时,重复路径的生成直到满足根据第三输入信息确定的条件以及从所生成的多个路径中选择一个路径。通过在得到多个路径的基础上选择一个路径,能够生成更高质量(例如机器人的动作效率高等)的路径。另外,通过能够设定对路径的生成次数进行规定的条件,能够根据用户的喜好调节路径的质量以及生成时间的均衡。因此,对容易进行机器人10的动作示教更有效。

信息获取部120构成为还获取确定路径的评价基准的第四输入信息,信息处理部130可以构成为:当从多个路径中选择一个路径时,按照根据第四输入信息确定的评价基准选择一个路径。该情况下,通过能够指定路径的评价基准,能够生成更与用户的要求相符的路径。因此,对容易进行机器人10的动作示教更有效。

信息获取部120构成为还获取确定相对于机器人10的可接近距离的第五输入信息,信息处理部130可以构成为:还执行生成在保持基于第五输入信息确定的可接近距离的同时覆盖机器人10的外壳模型的处理,并在生成路径时,生成避免外壳模型与障碍物之间的冲突并使前端部16从开始位置移动到结束位置的路径。该情况下,在机器人10的前端部16沿路径移动的情况下,在机器人10与障碍物之间至少保持与可接近距离相当的间隔。因此,在机器人10的前端部16实际移动的轨道与路径之间能够容许某种程度的错位。另外,能够使外壳模型的形状简单化,并且也能使路径的生成速度提高。因此,对容易进行机器人10的动作示教更有效。

信息获取部120构成为还获取确定机器人10的前端部16的姿势条件的第六输入信息,信息处理部130可以被构成为:当生成路径时,以使前端部16的姿势满足根据第六输入信息确定的姿势条件的方式生成路径。该情况下,能够满足用户要求的姿势条件来生成路径。因此,对容易进行机器人10的动作示教更有效。

信息获取部120构成为还获取确定机器人10的关节j1~j6的可动范围的第七输入信息,信息处理部130可以构成为:当生成路径时,生成关节j1~j6的动作角度落在根据第七输入信息确定的可动范围内的路径。该情况下,通过与构造上的可动范围比较较小地设定关节j1~j6的可动范围,能够在存在关节角度的进一步的改变余地的状态下生成路径。因此,在路径的生成后,对该路径微调节的作业变得更容易。因此,对容易进行机器人10的动作示教更有效。

以上,对实施方式进行了说明,但是本发明并不限于上述的实施方式,在不脱离其主旨的范围内能够进行各种改变。

与以上的实施方式相关地附记以下事项。

(附记1)

一种机器人仿真器,包括:

模型存储部,其存储与机器人以及该机器人的周边的障碍物相关的模型信息;

信息获取部,其构成为:获取第一输入信息,所述第一输入信息确定所述机器人的动作的开始位置以及结束位置;以及

信息处理部,其构成为执行基于所述第一输入信息和所述模型信息生成路径的处理以及生成图像数据的处理,所述路径避免所述机器人与所述障碍物之间的冲突并使所述机器人的前端部从所述开始位置移动到所述结束位置,所述图像数据包含示出所述障碍物的图以及示出所述路径的经由点的指标。

(附记2)

如附记1所述的机器人仿真器,其中,

所述信息获取部构成为:还获取第二输入信息,所述第二输入信息改变所述经由点的位置,

所述信息处理部构成为还执行以下处理:以经过基于所述第二输入信息改变位置后的所述经由点的方式重新生成所述路径;以及生成基于所述第二输入信息改变了所述指标的位置的所述图像数据。

(附记3)

如附记1或2所述的机器人仿真器,其中,

所述信息获取部构成为:还获取第三输入信息,所述第三输入信息确定对所述路径的生成次数进行规定的条件,

所述信息处理部构成为执行以下处理:在生成所述路径时重复所述路径的生成直到满足根据所述第三输入信息确定的条件为止;以及从所生成的多个路径中选择一个路径。

(附记4)

如附记3所述的机器人仿真器,其中,

所述信息获取部构成为:还获取第四输入信息,所述第四输入信息确定所述路径的评价基准,

所述信息处理部构成为:当从所述生成的所述多个路径中选择所述一个路径时,按照根据所述第四输入信息确定的所述评价基准来选择所述一个路径。

(附记5)

如附记1~4中任一项所述的机器人仿真器,其中,

所述信息获取部构成为:还获取第五输入信息,所述第五输入信息确定相对于所述机器人的可接近距离,

所述信息处理部构成为:还执行生成外壳模型的处理,所述外壳模型在保持基于所述第五输入信息确定的所述可接近距离的同时覆盖所述机器人,并且当生成所述路径时,生成避免所述外壳模型与所述障碍物之间的冲突并使所述前端部从所述开始位置移动到所述结束位置的路径。

(附记6)

如附记1~5中任一项所述的机器人仿真器,其中,

所述信息获取部构成为:还获取第六输入信息,所述第六输入信息确定所述机器人的前端部的姿势条件,

所述信息处理部构成为:当生成所述路径时,以使所述前端部的姿势满足根据所述第六输入信息确定的所述姿势条件的方式生成所述路径。

(附记7)

如附记1~6中任一项所述的机器人仿真器,其中,

所述信息获取部构成为:还获取第七输入信息,所述第七输入信息确定所述机器人的关节的可动范围,

所述信息处理部构成为:当生成所述路径时,以使所述关节的动作角度落在根据所述第七输入信息确定的所述可动范围内的方式生成所述路径。

(附记8)

一种机器人系统,包括:

附记1~7中任一项所述的机器人仿真器;

所述机器人;以及

机器人控制器,其控制所述机器人,以使所述前端部沿所述路径移动。

(附记9)

一种仿真方法,由机器人仿真器执行,所述仿真方法包括:

存储与机器人以及该机器人的周边的障碍物有关的模型信息;

获取第一输入信息,所述第一输入信息确定所述机器人的动作的开始位置以及结束位置;

基于所述第一输入信息和所述模型信息生成路径,所述路径避免所述机器人与所述障碍物之间的冲突并使所述机器人的前端部从所述开始位置移动到所述结束位置;以及

生成图像数据,所述图像数据包含示出所述障碍物的图以及示出所述路径的经由点的指标。

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