CN110480624B - 多关节机器人的干扰判定装置、干扰判定方法、记录介质 - Google Patents

多关节机器人的干扰判定装置、干扰判定方法、记录介质 Download PDF

Info

Publication number
CN110480624B
CN110480624B CN201910279358.5A CN201910279358A CN110480624B CN 110480624 B CN110480624 B CN 110480624B CN 201910279358 A CN201910279358 A CN 201910279358A CN 110480624 B CN110480624 B CN 110480624B
Authority
CN
China
Prior art keywords
interference
region
self
joint
obstacle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910279358.5A
Other languages
English (en)
Other versions
CN110480624A (zh
Inventor
藤井春香
森谷俊洋
小岛岳史
殿谷德和
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Omron Corp
Original Assignee
Omron Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Omron Corp filed Critical Omron Corp
Publication of CN110480624A publication Critical patent/CN110480624A/zh
Application granted granted Critical
Publication of CN110480624B publication Critical patent/CN110480624B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/02Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type
    • B25J9/04Programme-controlled manipulators characterised by movement of the arms, e.g. cartesian coordinate type by rotating at least one arm, excluding the head movement itself, e.g. cylindrical coordinate type or polar coordinate type
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/06Programme-controlled manipulators characterised by multi-articulated arms
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39096Self-collision, internal collison, collision between links of one robot
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40476Collision, planning for collision free path

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

多关节机器人的干扰判定装置、干扰判定方法、记录介质,能够缩短多关节机器人的干扰判定所需的时间。干扰判定装置(10)包含:取得部(102),其取得表示作为在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域的、根据特定关节的旋转角度的大小而确定的干扰区域和非干扰区域的区域信息,干扰区域是多关节机器人对自身或障碍物产生干扰的区域,非干扰区域是多关节机器人不对自身或障碍物产生干扰的区域;以及判定部(103),其通过判定表示根据特定关节的旋转角度而确定的姿势的坐标属于由取得部取得的区域信息所表示的干扰区域和非干扰区域中的哪一个,判定多关节机器人是否对自身或障碍物产生干扰。

Description

多关节机器人的干扰判定装置、干扰判定方法、记录介质
技术领域
本发明涉及多关节机器人的干扰判定装置、多关节机器人的干扰判定方法、多关节机器人的干扰判定程序和路径计划生成装置。
背景技术
以往,提出了考虑机器人的自干扰来生成路径计划的技术(例如参照专利文献1、2)。
在判定机器人的自干扰的情况下,以往,全面地判定了构成机器人的多个连杆的各个组合。例如,在设连杆数量为n个的情况下,虽然也基于连杆的形状等,但应判定自干扰的连杆的组合为nC2-(n-1)个。
专利文献1:日本特开2011-131303号公报
专利文献2:日本特开2008-30136号公报
例如,在关节为6个的6自由度的多关节机器人的情况下,如图24所示,如果还包含末端执行器EE,则连杆的数量至少为8个,应判定自干扰的连杆的组合最少为21个。此外,在连杆数量增加的情况下,应判定自干扰的连杆的组合大幅增加。由此,自干扰的判定所需的时间增加,并且,机器人的路径计划的生成所需的时间也增加。此外,在终端用户中,存在到机器人开始动作为止的时间增加并且节拍时间增加的问题。
发明内容
本发明正是鉴于上述内容而完成的,其目的在于提供能够缩短多关节机器人的干扰判定所需的时间的多关节机器人的干扰判定装置、多关节机器人的干扰判定方法、多关节机器人的干扰判定程序和路径计划生成装置。
本发明的多关节机器人的干扰判定装置包含:取得部,其取得表示干扰区域和非干扰区域的区域信息,所述干扰区域和所述非干扰区域是在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为所述多关节机器人对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定,所述非干扰区域作为所述多关节机器人不对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定;以及判定部,其通过判定表示根据所述特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰。所述区域信息还包含如下信息:所述信息表示详细判定区域作为不属于所述干扰区域和所述非干扰区域中的任何一个的区域。
此外,也可以是,在所述干扰为所述多关节机器人对自身产生干扰的自干扰、并且所述坐标属于所述详细判定区域的情况下,所述判定部根据构成所述多关节机器人的多个连杆的形状判定是否产生所述自干扰。
此外,也可以是,具有计算部,该计算部根据构成所述多关节机器人的多个连杆的形状和连接所述多个连杆的多个关节的可动范围,计算所述区域信息。
此外,也可以是,所述计算部将所述干扰区域的形状简化成收敛为所述干扰区域的轮廓。
此外,也可以是,所述计算部将所述非干扰区域的形状简化成收敛为所述非干扰区域的轮廓。
此外,也可以是,所述计算部计算第1区域信息和第2区域信息,该第1区域信息表示在将所述多关节机器人的根部侧的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的所述干扰区域和所述非干扰区域,该第2区域信息表示在将所述多关节机器人的手末端侧的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的所述干扰区域和所述非干扰区域,所述取得部取得由所述计算部计算出的所述第1区域信息和所述第2区域信息,所述判定部通过判定表示根据所述根部侧的2个或3个特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述第1区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰,所述判定部通过判定表示根据所述手末端侧的2个或3个特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述第2区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰。
此外,也可以是,所述计算部在计算所述第1区域信息中的、表示所述非干扰区域的信息的情况下,根据所述手末端侧的连杆的形状和所述手末端侧的关节的可动范围计算最大可动范围,并根据计算出的最大可动范围和所述根部侧的多个连杆的形状计算表示所述非干扰区域的信息。
此外,也可以是,所述干扰为所述多关节机器人对障碍物产生干扰的障碍物干扰,所述计算部计算表示所述多关节机器人对所述障碍物产生干扰的对障碍物干扰区域和所述多关节机器人不对所述障碍物产生干扰的对障碍物非干扰区域的区域信息。
本发明的多关节机器人的干扰判定方法是由计算机执行包含以下工序的处理的方法:取得工序,取得表示干扰区域和非干扰区域的区域信息,所述干扰区域和所述非干扰区域是在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为所述多关节机器人对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定,所述非干扰区域作为所述多关节机器人不对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定;以及判定工序,通过判定表示根据所述特定关节的旋转角度而确定的姿势的坐标属于通过所述取得工序取得的所述区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰。所述区域信息还包含如下信息:所述信息表示详细判定区域作为不属于所述干扰区域和所述非干扰区域中的任何一个的区域。
本发明的多关节机器人的干扰判定程序是使计算机作为以下部分发挥功能的程序:取得部,其取得表示干扰区域和非干扰区域的区域信息,所述干扰区域和所述非干扰区域是在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为所述多关节机器人对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定,所述非干扰区域作为所述多关节机器人不对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定;以及判定部,其通过判定表示根据所述特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰。所述区域信息还包含如下信息:所述信息表示详细判定区域作为不属于所述干扰区域和所述非干扰区域中的任何一个的区域。
本发明的路径计划生成装置包含:路径搜索装置,在使多关节机器人从初始姿势动作至目标姿势的情况下,该路径搜索装置通过搜索所述多关节机器人不对自身或障碍物产生干扰的姿势,生成路径计划;以及上述干扰判定装置,其判定由所述路径搜索装置搜索出的姿势下的所述多关节机器人是否对自身或障碍物产生干扰。
根据本发明,能够缩短多关节机器人的干扰判定所需的时间。
附图说明
图1是示出第1实施方式的干扰判定装置的硬件结构的框图。
图2是示出垂直多关节机器人的一例的立体图。
图3是示出干扰判定装置的功能结构例的框图。
图4是示出区域信息计算处理的主例程的流程的流程图。
图5是示出区域信息计算处理的子例程的流程的流程图。
图6是示出区域信息计算处理的子例程的流程的流程图。
图7是示出区域信息计算处理的子例程的流程的流程图。
图8是示出区域信息计算处理的子例程的流程的流程图。
图9是示出配置空间中的自干扰区域和非自干扰区域的一例的图。
图10是用于说明边缘削减处理的图。
图11是示出凸包的一例的图。
图12是示出非凸包的一例的图。
图13是示出凸包化的一例的图。
图14是示出根部侧的自干扰的具体例的图。
图15是用于说明手末端侧的连杆的最大可动范围的图。
图16是示出将手末端侧的连杆的最大可动范围视作连杆的情况下的、垂直多关节机器人的一例的图。
图17是用于说明详细判定区域的图。
图18是示出手末端侧的自干扰区域和非自干扰区域的具体例的图。
图19是示出干扰判定处理的主例程的流程的流程图。
图20是示出根部侧的关节的三维配置空间的自干扰区域和非自干扰区域的一例的图。
图21是示出手末端侧的关节的三维配置空间的自干扰区域和非自干扰区域的一例的图。
图22是示出障碍物的三维模型的一例的图。
图23是示出障碍物和垂直多关节机器人的三维模型的一例的图。
图24是用于说明应判定自干扰的组合的图。
标号说明
10:干扰判定装置;14:存储器;15:输入部;16:监视器;17:光盘驱动装置;18:通信接口;19:总线;20:路径搜索装置;22A~22C、30A~30C、42、50、54:自干扰区域;26、28、44、52、56:非自干扰区域;32、34、36:最大可动范围;40:详细判定区域;60:障碍物;101:计算部;102:取得部;103:判定部;104:存储部。
具体实施方式
以下,参照附图说明本发明的实施方式的一例。另外,在各附图中,对相同或者等效的结构要素和部分赋予相同的参考标号。此外,为了便于说明,有时夸大了附图的尺寸比率,并且有时与实际比率不同。
(第1实施方式)
图1是示出第1实施方式的多关节机器人的干扰判定装置(以下,简称作干扰判定装置)10的硬件结构的框图。
本实施方式的干扰判定装置10判定作为对象的多关节机器人的自干扰。作为多关节机器人,例如有垂直多关节机器人、水平多关节机器人(SCARA机器人)和并联连杆机器人等。在本实施方式中,作为一例,说明判定垂直多关节机器人的自干扰的情况。
如图1所示,干扰判定装置10具有CPU(Central Processing Unit:中央处理器)11、ROM(Read Only Memory:只读存储器)12、RAM(Random Access Memory:随机存取存储器)13、存储器14、输入部15、监视器16、光盘驱动装置17和通信接口18。各结构经由总线19而以能够相互通信的方式连接。
在本实施方式中,在ROM 12或存储器14中存储有执行自干扰判定的自干扰判定程序。CPU 11为中央运算处理单元,执行各种程序,并且控制各结构。即,CPU 11从ROM 12或者存储器14读出程序,将RAM 13作为作业区域来执行程序。CPU 11依照ROM 12或者存储器14所记录的程序,进行上述各结构的控制和各种运算处理。
ROM 12存储各种程序和各种数据。RAM 13作为作业区域而临时存储程序或者数据。存储器14由HDD(Hard Disk Drive:硬盘驱动器)或者SSD(Solid State Drive:固态硬盘)构成,存储包含操作系统在内的各种程序和各种数据。
输入部15包含键盘151和鼠标152等指示设备,用于进行各种输入。监视器16例如是液晶显示器,显示各种信息。监视器16可以采用触摸面板方式而作为输入部15发挥功能。光盘驱动装置17进行各种记录介质(CD-ROM或蓝光光盘等)所存储的数据的读入、对记录介质的数据写入等。
通信接口18是用于与其他设备进行通信的接口,例如,可使用以太网(注册商标)、FDDI或Wi-Fi(注册商标)等标准。
接着,说明垂直多关节机器人。
图2是示出垂直多关节机器人LB的结构的图。如图2所示,垂直多关节机器人LB为具有基座连杆BL、连杆L1~L6、关节J1~J6的6自由度的6轴机器人。另外,关节(joint)为对连杆彼此进行连接的关节。
基座连杆BL与连杆L1经由在图2中以铅垂轴S1为中心沿箭头C1方向旋转的关节J1而连接。因此,连杆L1以基座连杆BL为支点沿箭头C1方向旋转。
连杆L1与连杆L2经由在图2中以水平轴S2为中心沿箭头C2方向旋转的关节J2而连接。因此,连杆L2以连杆L1为支点沿箭头C2方向旋转。
连杆L2与连杆L3经由在图2中以轴S3为中心沿箭头C3方向旋转的关节J3而连接。因此,连杆L3以连杆L2为支点沿箭头C3方向旋转。
连杆L3与连杆L4经由在图2中以轴S4为中心沿箭头C4方向旋转的关节J4而连接。因此,连杆L4以连杆L3为支点沿箭头C4方向旋转。
连杆L4与连杆L5经由在图2中以轴S5为中心沿箭头C5方向旋转的关节J5而连接。因此,连杆L5以连杆L4为支点沿箭头C5方向旋转。
连杆L5与连杆L6经由在图2中以轴S6为中心沿箭头C6方向旋转的关节J6而连接。因此,连杆L6以连杆L5为支点沿箭头C6方向旋转。
针对关节J1~J6分别设定了预先确定的旋转角度的范围作为可动范围。
多关节机器人LB的姿势根据关节J1~J6各自的旋转角度而确定。即,在设表示垂直多关节机器人LB的连杆的自由度的参数为关节J1~J6的旋转角度θ1~θ6、旋转角度θ1~θ6为坐标轴的值的情况下,垂直多关节机器人LB的姿势能够表示为配置空间上的坐标(即、点)。这里,配置空间是表示将旋转角度θ1~θ6中的至少2个作为坐标轴的坐标系的空间。
接着,说明干扰判定装置10的功能结构。
图3是示出干扰判定装置10的功能结构例的框图。
如图3所示,干扰判定装置10具有计算部101、取得部102、判定部103和存储部104,作为功能结构。通过使CPU 11读出ROM 12或存储器14所存储的自干扰判定程序并展开到RAM 13中执行,实现各功能结构。
计算部101根据构成垂直多关节机器人LB的连杆L1~L6的形状和连接连杆L1~L6的关节J1~J6的可动范围,计算区域信息。
区域信息为表示干扰区域和非干扰区域的信息,所述干扰区域和所述非干扰区域是在将垂直多关节机器人LB的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为垂直多关节机器人LB发生自干扰的区域,根据特定关节的旋转角度的大小而确定,所述非干扰区域作为垂直多关节机器人LB不发生自干扰的非干扰区域,根据特定关节的旋转角度的大小而确定。
这里,自干扰区域是被确定为垂直多关节机器人LB必然发生自干扰的区域的区域,且是被确定为与除了特定关节以外的关节的旋转角度无关地必然发生自干扰的区域的区域。此外,干扰是指,连杆彼此物理接触或连杆与末端执行器物理接触。
此外,非自干扰区域是被确定为垂直多关节机器人LB必然不发生自干扰的区域的区域,且是被确定为与特定关节以外的关节的旋转角度无关地必然成为非干扰区域的区域。此外,区域信息包含如下信息:该信息表示详细判定区域作为不属于自干扰区域和非自干扰区域中的任何一个的区域。这里,详细判定区域是需要根据三维的实际空间所配置的连杆的形状具体地判定是否发生自干扰的区域。
另外,在本实施方式中,对自干扰区域是垂直多关节机器人LB必然发生自干扰的区域的情况进行说明,但自干扰区域也可以不是必然发生自干扰的区域。例如,也可以将在自干扰区域的预先确定的阈值以上的区域、例如90%以上的区域中垂直多关节机器人LB发生自干扰的区域设为自干扰区域。与此相对,非自干扰区域必须是垂直多关节机器人LB必然不发生自干扰的区域。这是因为,在实际发生自干扰的姿势包含在非自干扰区域中的情况下,即使判定为非自干扰,实际上也有可能发生了自干扰。因此,非自干扰区域必须是垂直多关节机器人LB必然不发生自干扰的区域。
另一方面,在实际作为非自干扰的姿势包含在自干扰区域中的情况下,即使判定为自干扰,也仅仅是垂直多关节机器人LB无法采取该姿势。因此,虽然垂直多关节机器人LB的动作存在限制,但不会发生自干扰。因此,即使将实际作为非自干扰的姿势包含在自干扰区域中,也不会特别存在问题。
垂直多关节机器人LB的根部侧的彼此相邻的J1~J3对确定垂直多关节机器人LB的手末端的位置做出贡献,垂直多关节机器人LB的手末端侧的彼此相邻的关节J4~J6对确定手末端的姿势做出贡献,因此,分为根部侧的关节J1~J3和手末端侧的关节J4~J6来判定自干扰。
关于特定关节,可预先选择适于计算自干扰区域和非自干扰区域的关节。根据各连杆的形状和各关节的可动范围来确定哪个关节适于计算自干扰区域和非自干扰区域。
例如,在本实施方式中,与根部侧的关节J1~J3中的关节J1连接的连杆L1以S1轴为中心进行回转运动。如果考虑该回转运动,则是否发生自干扰较大程度地依赖于除关节J1以外的关节J2~J6的旋转角度。因此,在设关节J1为特定关节的情况下,与设关节J2、J3为特定关节的情况相比,不属于自干扰区域和非自干扰区域中的任何一个的详细判定区域变大。如后所述,由于详细判定区域为必须根据三维模型来判定自干扰的区域,因此,详细判定区域越大,自干扰的判定越花费时间。因此,设关节J1为特定关节与设关节J2、J3为特定关节的情况相比,不适于计算自干扰区域和非自干扰区域。由此,针对根部侧的关节J1~J3,将任意的一个或任意的组合假设为特定关节,对所假设的各个情况下的详细判定区域的大小进行比较,将详细判定区域最小的情况下的关节确定为特定关节。另外,三维模型为表示三维空间所配置的垂直多关节机器人LB的各连杆的形状的模型。
此外,与根部侧的关节J1~J3同样,还从手末端侧的关节J4~J6中确定出特定关节。例如,与关节J6连接的末端执行器以S6轴为中心进行回转运动。如果考虑该回转运动,则是否发生自干扰较大程度地依赖于除关节J6以外的关节J1~J5的旋转角度。因此,在设关节J6为特定关节的情况下,与设关节J4、J5为特定关节的情况相比,不属于自干扰区域和非自干扰区域中的任何一个的详细判定区域变大。因此,自干扰的判定花费时间。因此,设关节J6为特定关节与设关节J4、J5为特定关节的情况相比,不适于计算自干扰区域和非自干扰区域。
在本实施方式中,作为一例,说明设垂直多关节机器人LB的根部侧的关节J1~J3中的关节J2、J3为特定关节、并且设垂直多关节机器人LB的手末端侧的关节J4~J6中的关节J4、J5为特定关节的情况。
取得部102取得计算部101计算出的区域信息。另外,也可以取得由外部装置计算出的区域信息,而不取得计算部101计算出的区域信息。
判定部103通过判定表示根据特定关节的旋转角度而确定的姿势的坐标属于由取得部102取得的区域信息所表示的自干扰区域和非自干扰区域中的哪一个,判定垂直多关节机器人LB是否对自身产生干扰。
存储部104存储后述的区域信息计算程序、自干扰判定程序、由计算部101计算出的区域信息、垂直多关节机器人LB的基座连杆BL和连杆L1~L6的形状数据、与关节J1~J6的可动范围有关的信息、与关节J6连接的末端执行器的形状数据、作为末端执行器的处理对象的工件的形状数据等。
干扰判定装置10与路径搜索装置20连接。垂直多关节机器人LB的路径计划为使垂直多关节机器人LB从初始姿势动作至目标姿势的情况下的姿势的列表。在生成路径计划时,由干扰判定装置10判定由路径搜索装置20搜索出的姿势是否发生自干扰。
路径搜索装置20根据目前的姿势确定使垂直多关节机器人LB移动的量和方向,搜索下一姿势。干扰判定装置10判定由路径搜索装置20搜索出的姿势是否发生自干扰,并将判定结果通知给路径搜索装置20。在路径搜索装置20中,判定为搜索出的姿势不发生自干扰的情况下,将该姿势添加到姿势的列表。另一方面,在判定为发生自干扰的情况下,搜索另一姿势,委托干扰判定装置10进行自干扰判定。通过以这样的方式反复路径搜索装置20的路径搜索处理和干扰判定装置10的干扰判定处理,生成路径计划。
接着,说明干扰判定装置10的作用。
图4是示出由干扰判定装置10的CPU 11执行的区域信息计算处理的流程的流程图。通过CPU 11从ROM 12或存储器14中读出区域信息计算程序并展开到RAM13中执行,执行区域信息计算处理。区域信息计算处理是在生成垂直多关节机器人LB的路径计划时执行的干扰判定处理之前执行的处理。
CPU 11作为计算部101,计算关节J2、J3的配置空间中的自干扰区域(步骤S100)。具体而言,执行图5所示的自干扰区域计算处理来计算关节J2、J3的自干扰区域。之后叙述图5的自干扰区域计算处理。
CPU 11作为计算部101,计算关节J2、J3的配置空间中的非自干扰区域(步骤S102)。具体而言,执行图6所示的非自干扰区域计算处理来计算关节J2、J3的非自干扰区域。之后叙述图6的非自干扰区域计算处理。另外,在步骤S100中计算的自干扰区域的信息和在步骤S102中计算的非自干扰区域的信息为本发明中的第1区域信息的一例。
CPU 11作为计算部101,计算关节J4、J5的配置空间中的自干扰区域(步骤S104)。具体而言,执行图7所示的自干扰区域计算处理来计算关节J4、J5的自干扰区域。之后叙述图7的自干扰区域计算处理。
CPU 11作为计算部101,计算关节J4、J5的配置空间中的非自干扰区域(步骤S106)。具体而言,执行图8所示的非自干扰区域计算处理来计算关节J4、J5的非自干扰区域。之后叙述图8的非自干扰区域计算处理。另外,在步骤S104中计算的自干扰区域的信息和在步骤S106中计算的非自干扰区域的信息为本发明中的第2区域信息的一例。
CPU 11将如下信息作为区域信息存储到存储器14中:在步骤S100中计算出的表示关节J2、J3的配置空间中的自干扰区域的信息、在步骤S102中计算出的表示关节J2、J3的配置空间中的非自干扰区域的信息、在步骤S104中计算出的表示关节J4、J5的配置空间中的自干扰区域的信息、在步骤S106中计算出的表示关节J4、J5的配置空间中的非自干扰区域的信息(步骤S108)。
接着,参照图5,说明计算关节J2、J3的自干扰区域的处理。
CPU 11分别针对关节J1~J6,将可动范围等间隔地分割为预先确定的数量(例如100个),生成关节值(步骤S200)。另外,也可以按照预先确定的角度(例如1度)分割可动范围。另外,关节值是表示关节的旋转角度的值。
CPU 11选择在步骤S200中生成的关节J2、J3的关节值的组合中的、是否发生自干扰的判定为未处理的关节值的组合(步骤S202)。
CPU 11选择在步骤S200中生成的关节J1、J4~J6的关节值的组合中的、是否发生自干扰的判定为未处理的关节值的组合(步骤S204)。
CPU 11判定在步骤S202、S204中选择的关节J1~J6的关节值所表示的垂直多关节机器人LB的姿势是否发生自干扰(步骤S206)。具体而言,从存储部104取得基座连杆BL、连杆L1~L6的形状数据,生成垂直多关节机器人LB的姿势中的三维模型。然后,根据所生成的三维模型,判定是否存在发生自干扰、即连杆彼此的干扰的连杆的组合。
在判定为不发生自干扰的情况下(步骤S208:否),转移到步骤S214。另一方面,在判定为发生自干扰的情况下(步骤S208:是),CPU 11针对关节J1、J4~J6的全部关节值的组合,判定是否执行了步骤S206的判定(步骤S210)。在未针对关节J1、J4~J6的全部关节值的组合执行步骤S206的判定的情况下(步骤S210:否),转移到步骤S204。另一方面,在针对关节J1、J4~J6的全部关节值的组合执行了步骤S206的判定的情况下(步骤S210:是),CPU 11将在步骤S202中所选择的关节J2、J3的关节值的组合作为发生自干扰的关节值的组合存储到存储部104中(步骤S212)。
CPU 11判定是否针对关节J2、J3的全部关节值的组合判定了自干扰(步骤S214)。在未针对关节J2、J3的全部关节值的组合判定自干扰的情况下(步骤S214:否),转移到步骤S202。
在针对关节J2、J3的全部关节值的组合判定了自干扰的情况下(步骤S214:是),CPU 11对判定为发生自干扰的关节J2、J3的关节值的集合进行区域化(步骤S216)。作为一例,图9中示出了判定为发生自干扰的关节J2、J3的关节值的集合、即点组21A~21C。在步骤S216中,按照每个各点组21A~21C,设包含全部点组的区域、例如边框化后的区域为自干扰区域。具体而言,针对各个点组21A~21C,设用直线(以下,称作边缘)连接外侧的点而得的区域为自干扰区域。由此,例如,可得到如图9所示的自干扰区域22A~22C。
CPU 11将自干扰区域的形状简化成收敛为在步骤S216中区域化后的自干扰区域的轮廓(步骤S218)。作为简化的方法,例如,可举出边缘削减处理和凸包化处理。
以下,说明边缘削减处理。例如,如图10所示,分别针对自干扰区域22A~22C,通过将多个边缘汇总为一个边缘,对自干扰区域进行简化。具体而言,例如,如图10所示,通过将自干扰区域22A的多个边缘25A~25E置换为一个边缘27A或边缘27B来进行简化。另外,边缘27A配置于自干扰区域22A的内侧,边缘27B配置于自干扰区域22A的外侧。在如边缘27A那样配置于自干扰区域22A的内侧的情况下,简化后的自干扰区域变小。因此,实际作为非自干扰的姿势包含在简化后的自干扰区域中的可能性降低,因此,判定的精度提高。另一方面,在如边缘27B那样配置于自干扰区域22的外侧的情况下,简化后的自干扰区域变大。因此,原本存在于详细判定区域中的姿势也包含在自干扰区域中,但由于自干扰区域变大,所以可缩短判定所需的时间。
通过以这样的方式分别针对自干扰区域22A~22C执行边缘削减处理,可生成如图9所示的自干扰区域30A~30C。另外,以下,在未特别区分自干扰区域30A~30C的情况下,简称作自干扰区域30。
接着,说明凸包化处理。凸包(Convex)表示没有凹陷的形状。在二维的情况下,凸包为凸多边形,在三维的情况下,凸包为凸多面体。例如,图11所示的形状31A~31C为凸包。此外,非凸包(Concave)表示存在凹陷的形状。例如,图12所示的形状33A~33C为非凸包。而且,凸包化是指,用凸包的集合表示非凸包。例如,如图13所示,图12所示的作为非凸包的形状33A可用多个凸包35A、35B表示。针对形状33B、33C也同样,可用多个凸包表示。
因此,在对图9所示的自干扰区域22A进行凸包化的情况下,用多个凸包37A、37B表示,在对自干扰区域22B进行凸包化的情况下,用多个凸包39A~39C表示。另外,自干扰区域22C原本就为凸包,所以未被凸包化。通过以这样的方式对自干扰区域进行凸包化,与不进行凸包化的情况相比,能够缩短后述的干扰判定处理中的自干扰判定所需的时间。另外,也可以省略步骤S218的简化处理。即,在后述的干扰判定处理中,也可以使用自干扰区域22A~22C判定自干扰。
图14示出了自干扰区域中的垂直多关节机器人LB的姿势的一例。如图14所示,在将关节J2、J3的关节值作为坐标轴的配置空间的自干扰区域30中绘制的点P1所表示的垂直多关节机器人LB的姿势A1为连杆L3与连杆L1发生干扰的姿势。此外,在自干扰区域30中绘制的点P2所表示的垂直多关节机器人LB的姿势A2为连杆L6与基座连杆BL发生干扰的姿势。此外,在自干扰区域30中绘制的点P3所表示的垂直多关节机器人LB的姿势A3为连杆L3与基座连杆BL发生干扰的姿势。此外,在自干扰区域30中绘制的点P4所表示的垂直多关节机器人LB的姿势A4为连杆L4与基座连杆BL发生干扰的姿势。
接着,参照图6,说明计算关节J2、J3的非自干扰区域的处理。
CPU 11计算与关节J4~J6连接的连杆L4~L6和末端执行器的最大可动范围(步骤S300)。具体而言,首先,从存储部104读出分别与关节J4~J6连接的连杆L4~L6的形状数据和与关节J6连接的末端执行器的形状数据。然后,计算使关节J4~J6分别在整个可动范围内活动的情况下的连杆L4~L6和末端执行器的最大可动范围。例如,如图15所示,在使与末端执行器EE连接的关节J6在整个可动范围内活动的情况下,末端执行器EE可动的最大区域如最大可动范围32所示。此外,在使关节J5在整个可动范围内活动的情况下,末端执行器EE和连杆L6可动的最大区域如最大可动范围34所示。此外,在使关节J4在整个可动范围内活动的情况下,末端执行器EE、连杆L6和连杆L5可动的最大区域如最大可动范围36所示。在该情况下,如图16所示,关于垂直多关节机器人LB,考虑连杆L3与用图15所示的最大可动范围36表示的形状的连杆L7连接的结构。这样,在计算非自干扰区域时计算连杆L4~L6和末端执行器EE的最大可动范围是因为,如果在与用最大可动范围表示的连杆连接的状态下为非自干扰,则可以判定为连杆4~L6和末端执行器EE在任何姿势下必然为非自干扰。
CPU 11选择图5的步骤S200所生成的关节J2、J3的关节值的组合中的、非自干扰的判定为未处理的关节值的组合(步骤S302)。
CPU 11选择图5的步骤S200所生成的关节J1的关节值中的、非自干扰的判定为未处理的关节值(步骤S304)。
CPU 11判定在步骤S302、S304中选择的J1~J3的关节值所表示的垂直多关节机器人LB的姿势是否为非自干扰(步骤S306)。具体而言,从存储部104取得基座连杆BL和连杆L1~L3的形状数据。然后,根据所取得的基座连杆BL和连杆L1~L3的形状数据、和在步骤S300中计算出的连杆L7的形状数据,生成由基座连杆BL、连杆L1~L3和连杆L7构成的垂直多关节机器人LB的三维模型。然后,根据所生成的三维模型,判定是否是非自干扰。
在判定为不是非自干扰的情况下(步骤S308:否),转移到步骤S314。另一方面,在判定为是非自干扰的情况下(步骤S308:是),CPU 11判定是否针对关节J1的全部关节值执行了非自干扰的判定(步骤S310)。在未针对关节J1的全部关节值执行非自干扰的判定的情况下(步骤S310:否),转移到步骤S304。另一方面,在针对关节J1的全部关节值执行了非自干扰的判定的情况下(步骤S310:是),CPU 11将在步骤S302中所选择的关节J2、J3的关节值的组合作为非自干扰的关节值的组合存储到存储部104中(步骤S312)。
CPU 11判定是否针对关节J2、J3的全部关节值的组合执行了非自干扰的判定(步骤314)。在未针对关节J2、J3的全部关节值的组合判定非自干扰的情况下(步骤S314:否),转移到步骤S302。在针对关节J2、J3的全部关节值的组合判定了非自干扰的情况下(步骤S314:是),CPU 11对判定为非自干扰的关节J2、J3的关节值的集合进行区域化(步骤S316)。作为一例,在图9中示出了判定为非自干扰的关节J2、J3的关节值的集合、即点组24。在步骤S316中,设包含全部点组24的区域、例如边框化后的区域为非自干扰区域。具体而言,针对点组24,设通过用直线连接外侧的点而得的区域为非自干扰区域。由此,例如,可得到如图9所示的非自干扰区域26。
CPU 11将非自干扰区域的形状简化成收敛为在步骤S316中区域化后的非自干扰区域的轮廓(步骤S318)。作为简化的方法,与上述的简化自干扰区域的形状的情况同样,例如可举出边缘削减处理和凸包化处理。
如上所述,非自干扰区域必须是垂直多关节机器人LB必然不发生自干扰的区域。因此,在针对非自干扰区域26执行边缘削减处理的情况下,将非自干扰区域26的多个边缘置换为一个边缘时,将该一个边缘配置于非自干扰区域26的内侧。即,以使边缘削减后的非自干扰区域小于非自干扰区域26的方式执行边缘削减处理。在以这样的方式对非自干扰区域26执行了边缘削减处理的情况下,例如,可得到如图9所示的非自干扰区域28。此外,在对非自干扰区域26进行凸包化的情况下,可用多个凸包26A~26C表示。通过以这样的方式对非自干扰区域进行凸包化,与不进行凸包化的情况相比,能够缩短后述的干扰判定处理中的非自干扰的判定所需的时间。
如图17所示,将不属于自干扰区域30和非自干扰区域28中的任何一个的区域确定为详细判定区域40。
另外,形成既不是自干扰区域也不是非自干扰区域的详细判定区域的主要理由是,根据三维空间所配置的连杆L4、L5、L6和末端执行器EE的形状,有时发生自干扰,还有时不发生自干扰。
接着,参照图7,说明计算关节J4、J5的自干扰区域的处理。
CPU 11选择图5的步骤S200所生成的关节J4、J5的关节值的组合中的、是否发生自干扰的判定为未处理的关节值的组合(步骤S400)。
CPU 11选择图5的步骤S200所生成的关节J6中的、是否发生自干扰的判定为未处理的关节值(步骤S402)。
CPU 11判定在步骤S400、S402中选择的J4~J6的关节值所表示的垂直多关节机器人LB的手末端侧的姿势是否发生自干扰(步骤S404)。具体而言,从存储部104取得连杆L4~L6的形状数据,生成垂直多关节机器人LB的手末端的姿势中的三维模型。然后,根据所生成的三维模型,判定是否存在发生自干扰、即连杆彼此的干扰的连杆的组合。这样,在不考虑根部侧的连杆L1~L3的情况下,仅考虑手末端侧的连杆L4~L6和末端执行器EE来判定自干扰。
在判定为不发生自干扰的情况下(步骤S406:否),转移到步骤412。另一方面,在判定为发生自干扰的情况下(步骤S406:是),CPU 11判定是否针对关节J6的全部关节值执行了步骤S406的判定(步骤S408)。在针对关节J6的全部关节值执行了步骤S406的判定的情况下(步骤S408:是),CPU 11将在步骤S400中所选择的关节J4、J5的关节值的组合作为发生自干扰的组合存储到存储部104中(步骤S410)。另一方面,在未针对关节J6的全部关节值执行步骤S406的判定的情况下(步骤S408:否),转移到步骤S402。
CPU 11判定是否针对关节J4、J5的全部关节值的组合执行了步骤S402~S410的处理(步骤S412)。在未针对关节J4、J5的全部关节值的组合执行步骤S402~S410的处理的情况下(步骤S412:否),转移到步骤S400。另一方面,在针对关节J4、J5的全部关节值的组合执行了步骤S402~S410的处理的情况下(步骤S412:是),CPU 11将判定为发生自干扰的关节J4、J5的关节值的集合区域化为自干扰区域(步骤414)。该处理与图5的步骤S216的处理相同,因此省略说明。
CPU 11将自干扰区域的形状简化成收敛为在步骤S414中区域化后的自干扰区域的轮廓(步骤S416)。该处理与图5的步骤S218的处理相同,因此省略说明。由此,例如,可获得如图18所示的自干扰区域42。
接着,参照图8,说明计算关节J4、J5的非自干扰区域的处理。
步骤S500~S504为与图7的步骤S400~S404相同的处理,因此省略说明。
在判定为发生自干扰的情况下(步骤S506:否),转移到步骤512。另一方面,在判定为不发生自干扰的情况下(步骤S506:是),CPU 11判定是否针对关节J6的全部关节值执行了步骤S506的判定(步骤S508)。在针对关节J6的全部关节值执行了步骤S506的判定的情况下(步骤S508:是),CPU 11将在步骤S500中所选择的关节J4、J5的关节值的组合作为非自干扰的组合存储到存储部104中(步骤S510)。另一方面,在未针对关节J6的全部关节值执行步骤S506的判定的情况下(步骤S508:否),转移到步骤S502。
步骤S512、S514为与图7的步骤S412、S414相同的处理,步骤S516为与图6的步骤318相同的处理,因此,省略说明。由此,例如,可获得如图18所示的非自干扰区域44。
此外,在图18中示出了自干扰区域和非自干扰区域中的垂直多关节机器人LB的手末端侧的姿势的一例。如图18所示,在设关节J4、J5的关节值为坐标轴的配置空间的自干扰区域42中绘制的点P5所表示的垂直多关节机器人LB的姿势A5为连杆L4与末端执行器EE发生干扰的姿势。此外,在非自干扰区域44中绘制的点P6所表示的垂直多关节机器人LB的姿势A6为不发生自干扰的姿势。
另外,在图18所示的例子中,基本未产生详细判定区域,而详细判定区域的大小根据手末端侧的连杆L4~L6和末端执行器EE的形状而不同。
接着,说明在生成垂直多关节机器人LB的路径计划时执行的自干扰判定处理。图19是示出由干扰判定装置10的CPU 11执行的自干扰判定处理的流程的流程图。CPU 11从ROM 12或存储器14读出自干扰判定程序并展开到RAM 13中执行,由此,执行自干扰判定处理。
CPU 11作为取得部102,从存储部104取得表示关节J2、J3的配置空间中的自干扰区域和非自干扰区域的区域信息、和表示关节J4、J5的配置空间中的自干扰区域和非自干扰区域的区域信息(步骤S600)。
CPU 11从路径搜索装置20取得表示由路径搜索装置20搜索出的姿势的关节J1~J6的关节值(步骤S602)。
CPU 11判定通过步骤S502取得的关节J1~J6的关节值中的、关节J2、J3的关节值是否位于通过步骤S600取得的区域信息所表示的关节J2、J3的配置空间中的自干扰区域内(步骤S604)。
在关节J2、J3的关节值位于自干扰区域内的情况下(步骤S604:是),CPU 11将通过步骤S602取得的关节J1~J6的关节值所表示的姿势发生自干扰的情况通知给路径搜索装置20(步骤S612)。
在关节J2、J3的关节值不位于自干扰区域内的情况下(步骤S604:否),CPU 11判定关节J2、J3的关节值是否位于通过步骤S600取得的区域信息所表示的关节J2、J3的配置空间中的非自干扰区域内(步骤S606)。
在关节J2、J3的关节值位于非自干扰区域内的情况下(步骤S606:是),转移到步骤S614。
在关节J2、J3的关节值不位于非自干扰区域内的情况下(步骤S606:否),CPU11详细地判定垂直多关节机器人LB是否发生自干扰(步骤S608)。具体而言,从存储部104取得基座连杆BL、连杆L1~L3的形状数据。而且,针对图24所示的基座连杆BL、L1~L3的连杆彼此的组合中的、判定为“○”的18种连杆的组合,生成三维模型,并根据所生成的三维模型,依次执行判定是否发生自干扰的处理。
CPU 11在判定为存在发生自干扰的连杆的组合的情况下(步骤S610:是),将发生自干扰的情况通知给路径搜索装置20(步骤S612)。
另一方面,在判定为不存在发生自干扰的连杆的组合的情况下(步骤S610:否),判定通过步骤S600取得的关节J1~J6的关节值中的、关节J4、J5的关节值是否位于通过步骤S600取得的区域信息所表示的关节J4、J5的配置空间中的自干扰区域内(步骤S614)。
在关节J4、J5的关节值位于自干扰区域内的情况下(步骤S614:是),CPU 11将发生自干扰的情况通知给路径搜索装置20(步骤S612)。
另一方面,在关节J4、J5的关节值不位于自干扰区域内的情况下(步骤S614:否),CPU 11判定关节J4、J5的关节值是否位于通过步骤S500取得的区域信息所表示的关节J4、J5的配置空间中的非自干扰区域内(步骤S616)。
在关节J2、J3的关节值位于非自干扰区域内的情况下(步骤S516:是),CPU 11将非自干扰通知给路径搜索装置20(步骤S622)。
在关节J2、J3的关节值不位于非自干扰区域内的情况下(步骤S616:否),CPU11详细地判定通过步骤S602取得的关节J1~J6的关节值所表示的姿势是否发生自干扰(步骤S618)。具体而言,从存储部104取得连杆L4、L5的形状数据。而且,针对图24所示的L4、L5的连杆彼此的组合中的、判定为“○”的3种连杆的组合,生成三维模型,并根据所生成的三维模型,依次执行判定是否发生自干扰的处理。
CPU 11在判定为存在发生自干扰的连杆的组合的情况下(步骤S620:是),将发生自干扰的情况通知给路径搜索装置20(步骤S612)。另一方面,在判定为不存在发生自干扰的连杆的组合的情况下(步骤S620:否),CPU 11将非自干扰通知给路径搜索装置20(步骤S622)。
另外,作为取得区域信息的处理的步骤S600的处理仅在最初执行图19的处理时执行即可,因此,也可以在第2次以后省略步骤S600的处理。
如上所述,根据第1实施方式的干扰判定装置10,可获得如下的效果。干扰判定装置10在将特定关节的旋转角度作为坐标轴的配置空间内设定自干扰区域和非自干扰区域,将不属于自干扰区域和非自干扰区域中的任何一个的区域设为详细判定区域。然后,通过判定特定关节的关节值的组合是否位于自干扰区域内,判定是否发生自干扰。因此,与如以往那样生成基于连杆形状的三维模型来判定是否发生自干扰的情况相比,能够缩短自干扰的判定所需的时间。
此外,由于对自干扰区域和非自干扰区域进行简化,所以能够进一步缩短自干扰的判定和非自干扰的判定所需的时间。
干扰判定装置10不限定于上述的实施方式,能够进行各种变形。例如,在图5的流程图中,可以在不考虑与关节J5、J6连接的连杆的情况下判定自干扰。在该情况下,将图5的流程图的各步骤中的“关节J1、J4~J6”替换为“关节J1、J4”。在该情况下,由于不考虑与关节J5、J6连接的连杆,自干扰区域变小,详细判定区域增加,所以能够缩短区域信息的计算所需的时间。
此外,在本实施方式中,在将2个特定关节的旋转角度作为坐标轴的二维的配置空间中设定有自干扰区域和非自干扰区域,但也可以在将3个特定关节的旋转角度作为坐标轴的三维配置空间中设定自干扰区域和非自干扰区域。在该情况下,图4所示的流程图的各步骤中的“关节J2、J3”被替换为“关节J1~J3”,“关节J4、J5”被替换为“关节J4~J6”。此外,图5所示的流程图的各步骤中的“关节J2、J3”被替换为“关节J1~J3”,“关节J1、J4~J6”被替换为“关节J4~J6”。此外,图6所示的流程图的各步骤中的“关节J2、J3”被替换为“关节J1~J3”。在该情况下,可省略步骤S304、S310的处理。此外,图7、图8所示的流程图的各步骤中的“关节J4、J5”被替换为“关节J4~J6”。在该情况下,省略图7的步骤S402、S408、图8的步骤502、508的处理。此外,图19所示的流程图的各步骤中的“关节J2、J3”被替换为“关节J1~J3”,“关节J4、J5”被替换为“关节J4~J6”。
图20中示出了在将关节J1~J3的旋转角度作为坐标轴的三维配置空间中设定的自干扰区域50和非自干扰区域52。此外,图21中示出了在将关节J4~J6的旋转角度作为坐标轴的三维配置空间中设定的自干扰区域54和非自干扰区域56。
这样,在三维配置空间中设定了自干扰区域和非自干扰区域的情况下,与在二维的配置空间中设定自干扰区域和非自干扰区域的情况相比,干扰判定所需的时间变长,能够高精度地判定自干扰。
此外,在本实施方式中,说明了垂直多关节机器人LB为具有6个关节的6轴机器人的情况,但垂直多关节机器人LB也可以应用于具有5个以下或7个以上的关节的多关节机器人。
(第2实施方式)
在第1实施方式中,说明了判定垂直多关节机器人LB的自干扰的情况,但在第2实施方式中,说明判定是否发生垂直多关节机器人LB干扰障碍物的障碍物干扰的情况。另外,对与第1实施方式相同的部分标注相同标号并省略详细的说明。
第2实施方式的干扰判定装置的硬件结构和功能结构与在第1实施方式中所说明的图1、3所示的干扰判定装置10基本相同,但在干扰判定对象为障碍物的方面不同。
第2实施方式中的计算部101根据构成垂直多关节机器人LB的连杆L1~L6的形状、连接连杆L1~L6的关节J1~J6的可动范围、以及障碍物的形状,计算区域信息,该区域信息表示垂直多关节机器人LB对障碍物产生干扰的对障碍物干扰区域、和垂直多关节机器人LB不对障碍物产生干扰的对障碍物非干扰区域。在图22中,作为一例,示出了障碍物60。
第2实施方式中的取得部102取得计算部101计算出的区域信息。
第2实施方式中的判定部103通过判定表示根据特定关节的旋转角度而确定的姿势的坐标属于由取得部102取得的区域信息所表示的对障碍物干扰区域、和对障碍物非干扰区域中的哪一个,判定垂直多关节机器人LB是否对障碍物产生干扰。
第2实施方式中的存储部104存储有后述的区域信息计算程序、对障碍物干扰判定程序、由计算部101计算出的区域信息、垂直多关节机器人LB的基座连杆BL和连杆L1~L6的形状数据、与关节J1~J6的可动范围有关的信息、与关节J6连接的末端执行器的形状数据、作为末端执行器的处理对象的工件的形状数据、障碍物的形状数据等。
接着,说明第2实施方式中的干扰判定装置10的作用。
与第1实施方式中的、在将3个特定关节的旋转角度作为坐标轴的三维配置空间中设定自干扰区域和非自干扰区域的情况同样,能够通过执行图4~图8的处理来计算区域信息。在该情况下,图4~图8的流程图的各步骤中的“自干扰区域”被替换为“对障碍物干扰区域”,“非自干扰区域”被替换为“对障碍物非干扰区域”。此外,图5~图8的流程图的各步骤中的“自干扰”被替换为“对障碍物干扰”,“非自干扰”被替换为“对障碍物非干扰”。
此外,在第2实施方式的图5的步骤S206中,从存储部104取得基座连杆BL、连杆L1~L6的形状数据和障碍物的形状数据,生成垂直多关节机器人LB和障碍物的三维模型。然后,根据所生成的三维模型,判定垂直多关节机器人LB是否对障碍物产生干扰。其他处理与第1实施方式相同,因此,省略说明。
此外,在第2实施方式的图6的步骤S306中,从存储部104取得基座连杆BL和连杆L1~L3的形状数据、以及障碍物的形状数据。然后,根据所取得的基座连杆BL和连杆L1~L3的形状数据、以及在步骤S300中计算出的连杆L7的形状数据,生成由基座连杆BL、连杆L1~L3和连杆L7构成的垂直多关节机器人LB的三维模型,并且,根据障碍物的形状数据生成障碍物的三维模型。在图23中,作为一例,示出了在步骤S306的处理中所生成的三维模型的垂直多关节机器人LB和障碍物60。然后,根据所生成的三维模型,判定垂直多关节机器人LB是否不对障碍物产生干扰。其他处理与第1实施方式相同,因此,省略说明。
此外,在第2实施方式的图7的步骤S404、图8的步骤S504中,从存储部104取得连杆L4~L6的形状数据和障碍物的形状数据,生成垂直多关节机器人LB的手末端的姿势中的三维模型,并且生成障碍物的三维模型。然后,根据所生成的三维模型,判定垂直多关节机器人LB是否对障碍物产生干扰。其他处理与第1实施方式相同,因此,省略说明。
此外,在第2实施方式的图18的步骤S602中,从存储部104取得表示关节J2、J3的配置空间中的对障碍物干扰区域和对障碍物非干扰区域的区域信息、以及表示关节J4、J5的配置空间中的对障碍物干扰区域和对障碍物非干扰区域的区域信息。
此外,在第2实施方式的步骤S608中,从存储部104取得基座连杆BL、连杆L1~L3的形状数据。然后,依次执行如下处理:针对基座连杆BL、L1~L3的各连杆与障碍物的组合生成三维模型,并根据所生成的三维模型,判定垂直多关节机器人LB是否对障碍物产生干扰。
此外,在第2实施方式的步骤S618中,从存储部104取得连杆L4、L5的形状数据。然后,依次执行如下处理:针对L4、L5的各连杆与障碍物的组合生成三维模型,并根据所生成的三维模型判定垂直多关节机器人LB是否对障碍物产生干扰。其他处理与第1实施方式相同,因此,省略说明。
这样,在第2实施方式中,干扰判定装置10在将特定关节的旋转角度作为坐标轴的配置空间内设定对障碍物干扰区域和对障碍物非干扰区域,并将不属于对障碍物干扰区域和对障碍物非干扰区域中的任何一个的区域设为详细判定区域。然后,通过判定特定关节的关节值的组合是否位于对障碍物干扰区域内,判定是否对障碍物产生干扰。因此,与生成基于连杆形状的三维模型来判定是否对障碍物产生干扰的情况相比,能够缩短是否对障碍物产生干扰的判定所需的时间。
另外,在上述各实施方式中,也可以由CPU以外的各种处理器执行由CPU读入并执行软件(程序)的干扰判定处理。作为该情况下的处理器,可例示在制造FPGA(Field-Programmable Gate Array:现场可编程门阵列)等之后能够变更电路结构的PLD(Programmable Logic Device:可编程逻辑器件)、和ASIC(Application SpecificIntegrated Circuit:专用集成电路)等为了执行特定处理而具有专用设计的电路结构的作为处理器的专用电路等。此外,可以由这各种处理器中的1个处理器执行干扰判定处理,也可以由相同种类或不同种类的2个以上的处理器的组合(例如,多个FPGA、以及CPU与FPGA的组合等)执行干扰判定处理。此外,更具体而言,这各种处理器的硬件结构为对半导体元件等电路元件进行组合所得的电路。
此外,在上述各实施方式中,说明了干扰判定程序被预先存储(安装)在存储器14或ROM 12中的方式,但不限于此。程序可以通过被记录在CD-ROM(Compact Disk Read OnlyMemory:光盘只读存储器)、DVD-ROM(Digital Versatile Disk Read Only Memory:数字多功能磁盘只读存储器)和USB(Universal Serial Bus:通用串行总线)存储器等记录介质中的方式而被提供。此外,程序也可以为经由网络从外部装置下载的方式。

Claims (11)

1.一种多关节机器人的干扰判定装置,其包含:
取得部,其取得表示干扰区域和非干扰区域的区域信息,所述干扰区域和所述非干扰区域是在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为所述多关节机器人对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定,所述非干扰区域作为所述多关节机器人不对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定;以及
判定部,其通过判定表示根据所述特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰,
所述区域信息还包含如下信息:所述信息表示详细判定区域作为不属于所述干扰区域和所述非干扰区域中的任何一个的区域。
2.根据权利要求1所述的多关节机器人的干扰判定装置,其中,
在所述干扰为所述多关节机器人对自身产生干扰的自干扰、并且所述坐标属于所述详细判定区域的情况下,所述判定部根据构成所述多关节机器人的多个连杆的形状判定是否产生所述自干扰。
3.根据权利要求1或2所述的多关节机器人的干扰判定装置,其中,
该多关节机器人的干扰判定装置还具有计算部,该计算部根据构成所述多关节机器人的多个连杆的形状和连接所述多个连杆的多个关节的可动范围,计算所述区域信息。
4.根据权利要求3所述的多关节机器人的干扰判定装置,其中,
所述计算部将所述干扰区域的形状简化成收敛为所述干扰区域的轮廓。
5.根据权利要求3所述的多关节机器人的干扰判定装置,其中,
所述计算部将所述非干扰区域的形状简化成收敛为所述非干扰区域的轮廓。
6.根据权利要求3所述的多关节机器人的干扰判定装置,其中,
所述计算部计算第1区域信息和第2区域信息,该第1区域信息表示在将所述多关节机器人的根部侧的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的所述干扰区域和所述非干扰区域,该第2区域信息表示在将所述多关节机器人的手末端侧的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的所述干扰区域和所述非干扰区域,
所述取得部取得由所述计算部计算出的所述第1区域信息和所述第2区域信息,
所述判定部通过判定表示根据所述根部侧的2个或3个特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述第1区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰,所述判定部通过判定表示根据所述手末端侧的2个或3个特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述第2区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰。
7.根据权利要求6所述的多关节机器人的干扰判定装置,其中,
所述计算部在计算所述第1区域信息中的、表示所述非干扰区域的信息的情况下,根据所述手末端侧的连杆的形状和所述手末端侧的关节的可动范围计算最大可动范围,并根据计算出的最大可动范围和所述根部侧的多个连杆的形状计算表示所述非干扰区域的信息。
8.根据权利要求3所述的多关节机器人的干扰判定装置,其中,
所述干扰为所述多关节机器人对障碍物产生干扰的障碍物干扰,
所述计算部计算表示所述多关节机器人对所述障碍物产生干扰的对障碍物干扰区域和所述多关节机器人不对所述障碍物产生干扰的对障碍物非干扰区域的区域信息。
9.一种多关节机器人的干扰判定方法,其中,由计算机执行包含以下工序的处理:
取得工序,取得表示干扰区域和非干扰区域的区域信息,所述干扰区域和所述非干扰区域是在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为所述多关节机器人对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定,所述非干扰区域作为所述多关节机器人不对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定;以及
判定工序,通过判定表示根据所述特定关节的旋转角度而确定的姿势的坐标属于通过所述取得工序取得的所述区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰,
所述区域信息还包含如下信息:所述信息表示详细判定区域作为不属于所述干扰区域和所述非干扰区域中的任何一个的区域。
10.一种记录介质,其记录有计算机可读的多关节机器人的干扰判定程序,该多关节机器人的干扰判定程序用于使计算机作为以下部分发挥功能:
取得部,其取得表示干扰区域和非干扰区域的区域信息,所述干扰区域和所述非干扰区域是在将多关节机器人的2个或3个特定关节的旋转角度作为坐标轴的配置空间内设定的区域,所述干扰区域作为所述多关节机器人对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定,所述非干扰区域作为所述多关节机器人不对自身或障碍物产生干扰的区域,根据所述特定关节的旋转角度的大小而确定;以及
判定部,其通过判定表示根据所述特定关节的旋转角度而确定的姿势的坐标属于由所述取得部取得的所述区域信息所表示的所述干扰区域和所述非干扰区域中的哪一个,判定所述多关节机器人是否对自身或障碍物产生干扰,
所述区域信息还包含如下信息:所述信息表示详细判定区域作为不属于所述干扰区域和所述非干扰区域中的任何一个的区域。
11.一种路径计划生成装置,其包含:
路径搜索装置,在使多关节机器人从初始姿势动作至目标姿势的情况下,该路径搜索装置通过搜索所述多关节机器人不对自身或障碍物产生干扰的姿势,生成路径计划;以及
权利要求1~8中的任意一项所述的干扰判定装置,其判定由所述路径搜索装置搜索出的姿势下的所述多关节机器人是否对自身或障碍物产生干扰。
CN201910279358.5A 2018-05-15 2019-04-09 多关节机器人的干扰判定装置、干扰判定方法、记录介质 Active CN110480624B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018093928A JP7119556B2 (ja) 2018-05-15 2018-05-15 多関節ロボットの干渉判定装置、多関節ロボットの干渉判定方法、多関節ロボットの干渉判定プログラム、及び経路計画生成装置
JP2018-093928 2018-05-15

Publications (2)

Publication Number Publication Date
CN110480624A CN110480624A (zh) 2019-11-22
CN110480624B true CN110480624B (zh) 2022-05-31

Family

ID=66105265

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910279358.5A Active CN110480624B (zh) 2018-05-15 2019-04-09 多关节机器人的干扰判定装置、干扰判定方法、记录介质

Country Status (4)

Country Link
US (1) US11097420B2 (zh)
EP (1) EP3572192B1 (zh)
JP (1) JP7119556B2 (zh)
CN (1) CN110480624B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115605328A (zh) * 2020-02-19 2023-01-13 发那科株式会社(Jp) 一种用于工业机器人的碰撞避免运动规划方法
JP7484254B2 (ja) * 2020-03-13 2024-05-16 オムロン株式会社 干渉判定装置、方法、及びプログラム
JP2022100030A (ja) * 2020-12-23 2022-07-05 京セラ株式会社 干渉判定装置、ロボット制御システム、及び干渉判定方法
CN113119109A (zh) * 2021-03-16 2021-07-16 上海交通大学 基于伪距离函数的工业机器人路径规划方法和系统
DE102022102347A1 (de) 2022-02-01 2023-08-03 Neura Robotics GmbH Armabschnitt für einen Roboterarm sowie Roboterarm

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62120995A (ja) * 1985-11-18 1987-06-02 豊田工機株式会社 ロボツトにおける干渉防止方法
US4828453A (en) * 1987-04-21 1989-05-09 The United States Of America As Represented By The United States Department Of Energy Modular multimorphic kinematic arm structure and pitch and yaw joint for same
JP2763613B2 (ja) * 1989-09-11 1998-06-11 トキコ株式会社 産業用ロボットの干渉チェック方法
JPH03131494A (ja) * 1989-10-09 1991-06-05 Daikin Ind Ltd 産業用ロボット制御方法およびその装置
JPH04280304A (ja) * 1991-03-08 1992-10-06 Nippon Telegr & Teleph Corp <Ntt> マニュピレータ経路探索方式
JP3355902B2 (ja) * 1995-11-08 2002-12-09 株式会社デンソー 多関節ロボットの可動範囲制限装置
JP3512049B2 (ja) * 1996-03-15 2004-03-29 株式会社安川電機 産業用ロボットのツール干渉チェック方法
EP1862876B1 (en) * 2005-05-13 2010-03-17 Toyota Jidosha Kabushiki Kaisha Path planning device
JP2008030136A (ja) 2006-07-27 2008-02-14 Sony Corp ロボットの動作編集装置及び動作編集方法、並びにコンピュータ・プログラム
DE102007059480B4 (de) * 2007-12-11 2018-07-05 Kuka Roboter Gmbh Verfahren und Vorrichtung zur Posenüberwachung eines Manipulators
DE102008013400B4 (de) * 2008-03-06 2016-03-10 Voith Engineering Services Gmbh Verfahren zur Ermittlung von Verriegelungsbereichen wenigstens eines im Raum bewegbaren ersten Objekts
JP5275967B2 (ja) 2009-12-22 2013-08-28 本田技研工業株式会社 干渉チェック装置
WO2012140770A1 (ja) * 2011-04-14 2012-10-18 三菱電機株式会社 ロボット制御装置
JP5751945B2 (ja) * 2011-06-15 2015-07-22 富士機械製造株式会社 マルチロボットシステムおよび電子部品実装機
EP2666598B1 (en) * 2011-08-24 2019-07-17 Yamazaki Mazak Corporation Nc machine tool system
EP3498432A1 (en) * 2013-03-26 2019-06-19 NTN Corporation Linking apparatus control device
US10076840B2 (en) * 2015-04-03 2018-09-18 Canon Kabushiki Kaisha Information processing apparatus, information processing method, and program
CN205685338U (zh) * 2016-06-13 2016-11-16 广东顺德天太机器人技术有限公司 一种轨迹控制系统

Also Published As

Publication number Publication date
JP2019198914A (ja) 2019-11-21
CN110480624A (zh) 2019-11-22
US11097420B2 (en) 2021-08-24
EP3572192B1 (en) 2021-11-10
US20190351550A1 (en) 2019-11-21
JP7119556B2 (ja) 2022-08-17
EP3572192A1 (en) 2019-11-27

Similar Documents

Publication Publication Date Title
CN110480624B (zh) 多关节机器人的干扰判定装置、干扰判定方法、记录介质
JP6879464B2 (ja) 干渉判定方法、干渉判定システム及びコンピュータプログラム
US20200338730A1 (en) Trajectory planning device, trajectory planning method and program
US9827675B2 (en) Collision avoidance method, control device, and program
KR20150103257A (ko) 간섭 체크 장치
JPH03171303A (ja) データ構造発生方法及び装置
JP6895082B2 (ja) 干渉判定方法、干渉判定システム及びコンピュータプログラム
JP7147571B2 (ja) 経路生成装置、経路生成方法、及び経路生成プログラム
JP2016040066A (ja) 経路生成方法、経路生成装置、ロボット装置、プログラム及び記録媒体
EP4046758A1 (en) Interference evaluation device, method, and program
JP7331616B2 (ja) 回避軌道生成装置、方法、及びプログラム
EP4353425A1 (en) Grasp information generation device, method, and program
CN113386127B (zh) 干涉判断装置及方法、存储介质
CN112236272A (zh) 把持姿态评价装置和把持姿态评价程序
US20210129331A1 (en) Control method, control apparatus, robot apparatus, method of manufacturing an article, motion program creation method, motion program creation apparatus, display apparatus, and control program recording medium
CN112262026B (zh) 加速度调整装置及存储介质
EP4252975A1 (en) Information processing device, and picking device
EP3978209B1 (en) Generative design techniques for soft robot manipulators
CN116963878A (zh) 机器人姿势决定装置、方法以及程序
TW202221433A (zh) 自干擾判定裝置
Baizid et al. Virtual reality based tool for optimal robot placement in robotized site based on CAD’s application programming interface
CN117729988A (zh) 干扰检查装置
CN116457161A (zh) 信息处理装置及拣选装置
WO1990010272A1 (fr) Procede de modelage parametrique tridimensionnel
JP2014002467A (ja) 解析装置、及び、解析方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant