CN105269578B - 指示装置以及机器人系统 - Google Patents

指示装置以及机器人系统 Download PDF

Info

Publication number
CN105269578B
CN105269578B CN201510367312.0A CN201510367312A CN105269578B CN 105269578 B CN105269578 B CN 105269578B CN 201510367312 A CN201510367312 A CN 201510367312A CN 105269578 B CN105269578 B CN 105269578B
Authority
CN
China
Prior art keywords
orientation
unit
robot
screen
imaging
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
CN201510367312.0A
Other languages
English (en)
Other versions
CN105269578A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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
Priority claimed from JP2014136315A external-priority patent/JP6488571B2/ja
Priority claimed from JP2014136316A external-priority patent/JP2016013590A/ja
Priority claimed from JP2014136317A external-priority patent/JP2016013591A/ja
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN105269578A publication Critical patent/CN105269578A/zh
Application granted granted Critical
Publication of CN105269578B publication Critical patent/CN105269578B/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/1628Programme controls characterised by the control loop
    • B25J9/1633Programme controls characterised by the control loop compliant, force, torque control, e.g. combined with position control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/42Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
    • G05B19/425Teaching successive positions by numerical control, i.e. commands being entered to control the positioning servo of the tool head or end effector
    • 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/39107Pick up article, object, measure, test it during motion path, place it
    • 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/40053Pick 3-D object from pile of objects
    • 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/40099Graphical user interface for robotics, visual robot user interface
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • Y10S901/03Teaching system

Abstract

本发明涉及指示装置以及机器人系统,能够简便地进行高精度的指示。指示装置是使工件向规定的位置及姿势移动的机器人的指示装置,包括:显示用于设定规定的位置及姿势的画面的显示部、操作画面的操作部、运算规定的位置及姿势的运算部,画面包括:用于使机器人动作从而使工件移动至拍摄装置的拍摄范围内的第1画面、用于使工件向目标位置及姿势移动的第2画面,运算部使用拍摄装置拍摄工件而得到的拍摄图像和目标位置及姿势,来运算规定的位置及姿势。

Description

指示装置以及机器人系统
技术领域
本发明涉及指示装置以及机器人系统。
背景技术
以往,研究并开发了将由机器人把持(拾取)的作业对象校正至规定的位置及姿势的机器人系统。
与此相关联,已知能够与被把持部件的外观无关地、以能够不损坏被把持部件且可靠地进行把持的适当的把持力来把持被把持部件的机器人的控制方法(参照专利文献1)。
另外,在这样的机器人系统中,为了使作业对象正确地校正至规定的位置及姿势,需要检测(算出)所拾取的作业对象的位置及姿势(以下也称为位置姿势)的相对于机器人基准姿势的移位(偏移)。
与此相关联,已知与控制机器人的控制装置分开地具备设置有用于检测机器人把持(拾取)的作业对象的位置及姿势的拍摄部、且根据由该拍摄部拍摄到的拍摄图像检测(算出)作业对象的位置姿势的图像处理装置的机器人系统、以及拍摄所拾取的作业对象并使用该拍摄的拍摄图像来检测所拾取的作业对象的位置及姿势的方法(参照专利文献2)。
专利文献1:日本特开2013-132726号公报
专利文献2:日本特开2012-230041号公报
然而,在上述专利文献1所示那样的以往的方法中,为了使上述的作业对象正确地校正至规定的位置及姿势,需要向机器人准确地指示该规定的位置及姿势。另外,在其他的方法中,向机器人准确地指示作业对象的规定的位置及姿势也很重要。然而,在以往的方法中,准确地指示该规定的位置及姿势比较困难。
另外,在上述专利文献2所示那样的以往的机器人系统中,控制装置接受来自图像处理装置的图像处理结果,并且控制装置进行上述的偏移、考虑了该偏移的机械手的位置姿势以及把持部的位置姿势的算出等与图像处理有关的运算。
因此,需要在规定机器人动作的程序中,嵌入用于进行这些运算的程序,导致与程序创建相关的用户的负荷变大。另外,创建的程序根据各个控制装置而不同,因而也导致与程序创建相关的用户的负荷变大。因这些负荷,用户在利用以往的机器人系统时,提高作业效率比较困难。并且,不是在图像处理装置而是在控制装置中进行与图像处理有关的运算。这样,在控制装置和图像处理装置之间分担与图像处理相关的运算,在控制装置进行与图像处理相关的运算的情况下,与控制装置仅进行机器人的控制的情况相比,存在不能进行高效的机器人的控制的情况。
另外,在这样的方法中,为了使机器人将作业对象正确地校正至规定的位置及姿势,需要取得像素坐标系中的作业对象的姿势和像素坐标系与机器人坐标系之间的关联性(坐标变换矩阵)。
像素坐标系与机器人坐标系之间的关联性能够通过进行拍摄部和机器人的校准来取得。另一方面,像素坐标系中的作业对象的姿势,以往通过用户编程来取得,所以这样的程序的创建对用户而言成为大的负担。
发明内容
鉴于此,本发明是鉴于上述以往技术的问题而完成的,提供能够简便地进行高精度的指示的指示装置以及机器人系统。另外,提供能够高效地控制机器人、能够减轻用户的与指示相关的负担的指示装置以及机器人系统。
为了解决上述课题中的至少一个,本发明的一方式是使工件向规定的位置及姿势移动的机器人的指示装置,上述指示装置包括显示用于设定上述规定的位置及姿势的画面的显示部、操作上述画面的操作部、运算上述规定的位置及姿势的运算部,上述画面包括用于使上述机器人动作从而使上述工件移动至拍摄装置的拍摄范围内的第1画面、用于使上述工件向目标位置及姿势移动的第2画面,上述运算部使用上述拍摄装置拍摄上述工件而得到的拍摄图像和上述目标位置及姿势,运算上述规定的位置及姿势。
根据该结构,指示装置通过操作部操作用于使机器人动作而使工件移动至拍摄装置的拍摄范围内的第1画面和用于使工件向目标位置及姿势移动的第2画面,由此使用拍摄装置拍摄工件而得到的拍摄图像和目标位置及姿势,运算规定的位置及姿势。由此,指示装置能够简便地进行高精度的指示。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:上述第1画面和上述第2画面中的任意一方或双方具有显示由上述拍摄装置拍摄到的拍摄图像的区域。
根据该结构,指示装置在第1画面和第2画面中的任意一方或双方中显示由拍摄装置拍摄到的拍摄图像。由此,指示装置能够向用户提供边确认拍摄图像边通过寸动(JOB)操作使机器人移动的环境。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:上述第1画面和上述第2画面中的任意一方或双方具有显示作业流程的区域。
根据该结构,指示装置在第1画面和第2画面中的任意一方或双方中显示作业流程。由此,指示装置通过抑制用户阅读手册的功夫,能够使用户进行高效的作业。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:上述运算部基于通过上述操作部经由上述第1画面而接受到的操作并使用上述拍摄图像来算出上述目标位置及姿势与上述规定的位置及姿势之间的相对的位置及姿势,基于通过上述操作部经由上述第2画面而接受到的操作取得上述目标位置及姿势,使用所算出的上述相对的位置及姿势和所取得的上述目标位置及姿势运算上述规定的位置及姿势。
根据该结构,指示装置基于通过操作部经由第1画面而接受到的操作并使用拍摄图像来算出目标位置及姿势与规定的位置及姿势之间的相对的位置及姿势,基于通过操作部经由第2画面而接受到的操作取得目标位置及姿势,使用所算出的相对的位置及姿势和所取得的目标位置及姿势运算规定的位置及姿势。由此,指示装置通过按每一作业算出目标位置及姿势与规定的位置及姿势之间的相对的位置及姿势,能够实现高精度的作业。
另外,本发明的其他方式是机器人系统,上述机器人系统包括使工件向规定的位置及姿势移动的机器人、向上述机器人指示上述规定的位置及姿势的指示装置,上述指示装置包括显示用于设定上述规定的位置及姿势的画面的显示部、操作上述画面的操作部、运算上述规定的位置及姿势的运算部,上述画面包括用于使上述机器人动作而使上述工件移动至拍摄装置的拍摄范围内的第1画面、用于使上述工件向目标位置及姿势移动的第2画面,上述运算部使用上述拍摄装置拍摄上述工件而得到的拍摄图像和上述目标位置及姿势,运算上述规定的位置及姿势。
根据该结构,机器人系统通过操作部操作用于使机器人动作而使工件移动至拍摄装置的拍摄范围内的第1画面和用于使工件向目标位置及姿势移动的第2画面,由此使用拍摄装置拍摄工件而得到的拍摄图像和目标位置及姿势,运算规定的位置及姿势。由此,机器人系统能够简便地进行高精度的指示。
综上所述,指示装置以及机器人系统通过操作部操作用于使机器人动作而使工件移动至拍摄装置的拍摄范围内的第1画面和用于使工件向目标位置及姿势移动的第2画面,由此使用拍摄装置拍摄工件而得到的拍摄图像和目标位置及姿势,运算规定的位置及姿势。由此,指示装置以及机器人系统能够简便地进行高精度的指示。
本发明的一方式是使工件移动的机器人的指示装置,上述指示装置包括显示用于设定上述工件的姿势的画面的显示部、操作上述画面的操作部、检测上述工件的姿势的检测部,上述画面包括用于显示载置在拍摄装置的拍摄范围内的上述工件的第1画面、用于使上述机器人把持载置在上述拍摄装置的拍摄范围内的上述工件的第2画面,上述检测部使用上述机器人把持上述工件后的结果,检测上述工件的姿势。
根据该结构,指示装置显示用于显示载置在拍摄装置的拍摄范围内的工件的第1画面、用于使机器人把持载置在拍摄装置的拍摄范围内的工件的第2画面,使用机器人把持工件后的结果,检测工件的姿势。由此,指示装置能够减轻用户的与指示相关的负担。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:上述检测部基于显示于上述第1画面的载置在上述拍摄装置的上述拍摄范围内的上述工件检测相对于上述拍摄范围的上述工件的姿势来作为上述工件的基准姿势。
根据该结构,指示装置基于显示于第1画面的载置在拍摄装置的拍摄范围内的工件检测相对于拍摄范围的工件的姿势来作为工件的基准姿势。由此,指示装置能够指示检测出的工件的基准姿势。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:具备运算部,上述运算部使用由上述检测部检测出的上述工件的上述基准姿势和上述机器人把持上述工件后的结果,运算载置在上述拍摄范围内的其他工件的姿势。
根据该结构,指示装置使用由检测部检测出的工件的基准姿势和机器人把持工件后的结果,运算新载置在拍摄范围内的工件的姿势。由此,指示装置能够基于使用工件的基准姿势和机器人把持工件后的结果而运算出的工件的姿势,对工件进行规定的作业。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:上述第2画面具有显示由上述拍摄装置拍摄到的拍摄图像的区域。
根据该结构,指示装置在第2画面中显示由拍摄装置拍摄到的拍摄图像。由此,指示装置能够向用户提供边确认拍摄图像边通过操作来使机器人移动的环境。
另外,本发明的其他方式是,也可以在指示装置中使用如下结构:上述第1画面和上述第2画面中的任意一方或双方具有显示作业流程的区域。
根据该结构,指示装置在第1画面和第2画面中的任意一方或双方显示作业流程。由此,指示装置通过抑制用户阅读手册的功夫,能够使用户进行高效的作业。
另外,本发明的其他方式是机器人系统,上述机器人系统包括使工件移动的机器人、向上述机器人指示上述工件的姿势的指示装置,上述指示装置包括显示用于设定上述工件的姿势的画面的显示部、操作上述画面的操作部、检测上述工件的姿势的检测部,上述画面包括用于显示载置在拍摄装置的拍摄范围内的上述工件的第1画面、用于使上述机器人把持载置在上述拍摄装置的拍摄范围内的上述工件的第2画面,上述检测部使用上述机器人把持上述工件后的结果,检测上述工件的姿势。
根据该结构,机器人系统显示用于显示载置在拍摄装置的拍摄范围内的工件的第1画面和用于使机器人把持载置在拍摄装置的拍摄范围内的工件的第2画面,使用机器人把持工件后的结果,检测工件的姿势。由此,机器人系统能够减轻用户的与指示相关的负担。
综上所述,指示装置以及机器人系统显示用于显示载置在拍摄装置的拍摄范围内的工件的第1画面和用于使机器人把持载置在拍摄装置的拍摄范围内的工件的第2画面,使用机器人把持工件后的结果,检测工件的姿势。由此,指示装置能够减轻用户的与指示相关的负担。
本发明的一方式是机器人系统,上述机器人系统包括使工件移动的机器人、拍摄上述机器人移动的上述工件的拍摄装置、使上述机器人动作的控制装置、使用上述拍摄装置拍摄到的拍摄图像来检测上述机器人移动的上述工件的图像处理装置,上述图像处理装置使用上述拍摄图像,算出上述机器人的第1位置与上述机器人移动的上述工件的第2位置之间的位置关系。
根据该结构,在机器人系统中,图像处理装置使用拍摄图像,算出机器人的第1位置与机器人移动的工件的第2位置之间的位置关系。由此,机器人系统能够高效地控制机器人。
另外,本发明的其他方式是,也可以在机器人系统中使用如下结构:上述机器人具备手部,并且使由该手部把持的上述工件移动,上述图像处理装置从上述拍摄图像检测上述手部的规定位置作为上述第1位置。
根据该结构,机器人系统从拍摄图像检测手部的规定位置作为第1位置。由此,机器人系统能够算出手部的规定位置与工件的第2位置之间的位置关系。
另外,本发明的其他方式是,在机器人系统中,上述图像处理装置通过图案匹配(Pattern Matching)从上述拍摄图像检测上述机器人的上述第1位置与上述工件的上述第2位置之间的上述位置关系。
根据该结构,机器人系统通过图案匹配从拍摄图像检测机器人的第1位置与工件的第2位置之间的位置关系。由此,机器人系统能够通过图案匹配从拍摄图像算出机器人的第1位置与工件的第2位置之间的位置关系。
综上所述,在机器人系统中,图像处理装置使用拍摄图像,算出机器人的第1位置与机器人移动的工件的第2位置之间的位置关系。由此,机器人系统能够提高与所具备的装置的置换相关的通用度,减轻伴随着该置换的功夫。
附图说明
图1是表示本实施方式所涉及的机器人系统1的结构例以及机器人20进行规定的作业的样子的一个例子的图。
图2是表示由机器人系统1所具备的各装置进行的与规定的作业相关的处理的流程的一个例子的流程图。
图3是表示指示装置5的硬件结构的一个例子的图。
图4是表示指示装置5的功能结构的一个例子的图。
图5是表示指示装置5向控制装置30指示基准偏移和目标点位置姿势的处理的流程的一个例子的流程图。
图6是表示设定画面的一个例子的图。
图7是表示第1指示画面的一个例子的图。
图8是表示第1指示画面UI1以及寸动画面UI1-1的一个例子的图。
图9是表示规定的拍摄位置处的作业对象O与拍摄部10的位置关系的一个例子的图。
图10是表示第2指示画面的一个例子的图。
图11是表示第2指示画面UI2以及寸动画面UI2-1的一个例子的图。
图12是表示设定完成画面的一个例子的图。
图13是表示本实施方式所涉及的机器人系统101的结构的一个例子且表示机器人20进行规定的作业的样子的一个例子的图。
图14是表示由机器人系统101所具备的各装置进行的与规定的作业相关的处理的流程的一个例子的流程图。
图15是表示指示装置105的功能结构的一个例子的图。
图16是表示指示装置105向控制装置130指示基准信息的处理的流程的一个例子的流程图。
图17是表示设定画面的一个例子的图。
图18是表示第1指示画面的一个例子的图。
图19是表示基于通过输入接受部53经由第1指示画面UI1接受到的操作而由检测部162捕捉(Capture)到的拍摄图像的一个例子的图。
图20是表示第2指示画面的一个例子的图。
图21是表示第2指示画面UI2以及寸动画面UI2-1的一个例子的图。
图22是表示显示于第2指示画面UI2的区域P2的拍摄图像且是通过寸动操作而由把持部HND把持作业对象O时的拍摄图像的一个例子的图。
图23是表示设定完成画面的一个例子的图。
图24是表示指示结束后的设定画面的一个例子的图。
图25是表示本实施方式所涉及的机器人系统201的结构的图。
图26是表示图像处理装置40的硬件结构的一个例子的图。
图27是表示图像处理装置40的功能结构的一个例子的图。
图28是表示图像处理装置40算出偏移的处理的流程的一个例子的流程图。
图29是分别表示拍摄部10对拍摄范围进行拍摄的样子的一个例子和由拍摄部10拍摄到的拍摄图像的一个例子的图。
具体实施方式
[第1实施方式]
<概要>
首先,对以下所示的实施方式所涉及的机器人系统1的概要进行说明,之后对较详细的实施方式进行说明。图1是表示本实施方式所涉及的机器人系统1的结构的一个例子且表示机器人20进行规定的作业的样子的一个例子的图。
机器人系统1具备指示装置5、拍摄部10、具备把持部HND(末端执行器)及机械手MNP的单臂的机器人20、控制装置30。在本实施方式中,单臂的机器人表示具有由把持部HND和机械手MNP构成的1条臂的机器人。
机器人系统1通过用户操作显示于指示装置5的GUI(Graphical User Interface:图形用户界面),来将为了使机器人20进行规定的作业而必需的参数信息在使机器人20进行规定的作业之前针对控制机器人20的控制装置30进行指示。在本实施方式中,规定的作业是指机器人20通过把持部HND把持作业对象O,并将所把持的作业对象O配置于目标区域TA。
图1所示的机器人系统1在该规定的作业中将所把持的作业对象O配置于目标区域TA时,使机器人20将作业对象O移动至规定的拍摄位置,通过拍摄部10拍摄移动了的作业对象O。然后,机器人系统1基于由拍摄部10拍摄到的拍摄图像,控制机器人20,以使其将由把持部HND把持的作业对象O配置于目标区域TA。
在基于该拍摄图像控制机器人20来使得将由把持部HND把持的作业对象O配置于目标区域TA时,机器人系统1使用在进行规定的作业之前由指示装置5指示的参数信息。更具体而言,将作业对象O配置于目标区域TA是指,使把持部HND移动,以使得预先设定于作业对象O的代表点OP的位置及姿势(以下,称为作业对象位置姿势)与目标区域TA的目标点TP的位置姿势(以下,称为目标点位置姿势)一致。目标点位置姿势是目标位置及姿势的一个例子。
这里,作业对象O是指能够由机器人20把持的物体,例如是螺钉、螺栓、齿轮、夹具等工业用部件等,但并不局限于此,只要能够由机器人20把持,也可以是其他物体。作业对象O的代表点OP是由控制装置30预先设定的点且是作业对象O的特征点,在该一个例子中,是图1所示的作业对象O的一个角。此外,为了使机器人系统1进行的计算变容易,优选该角是配置于目标区域TA时成为底面的面上的角。作业对象O是工件的一个例子。
目标区域TA是指由机器人20配置作业对象O的区域,在图1中,设置在工作台TB上。工作台TB例如是机器人20配置作业对象O的台子等。目标点TP是由机器人20配置作业对象O的目标区域TA中的点,并且是在作业对象O以正确的位置姿势配置于目标区域TA时与代表点OP一致的点。
这里,图1所示的机器人系统1在使机器人20移动把持部HND时,将把持部HND的控制点TCP的位置及姿势(以下,称为控制点位置姿势)作为把持部HND的位置及姿势移动。把持部HND的控制点TCP是表示控制装置30使机器人20的把持部HND以及机械手MNP移动时的把持部HND的位置姿势的点,在该一个例子中,是表示在设置有把持部HND的机械手MNP的端部所具备的凸轮的中心点(工具中心点)。
该控制点位置姿势一般(除了特殊情况)与作业对象位置姿势不一致。因此,图1所示的机器人系统1通过基于把持部HND的控制点位置姿势与作业对象位置姿势之间的相对位置以及相对姿势(以下,称为偏移)和目标点位置姿势,算出作业对象位置姿势与目标点位置姿势一致时的控制点位置姿势(以下,称为控制点目标位置姿势),由此能够将作业对象O以所希望的状态(即,作业对象位置姿势与目标点位置姿势一致的状态)配置于目标区域TA。机器人系统1通过使把持部HND(即,控制点TCP)移动以使得控制点位置姿势与所算出的控制点目标位置姿势一致,由此能够将作业对象O以所希望的状态配置于目标区域TA。控制点目标位置姿势是规定的位置及姿势的一个例子。
指示装置5向控制装置30指示为了算出该控制点目标位置姿势而必需的偏移和目标点位置姿势。另外,指示装置5通过用专用的应用程序实现的GUI,向用户提供用户能够简便地向控制装置30指示偏移和目标点位置姿势的界面。由此,机器人系统1能够通过指示装置5简便地进行高精度的指示。在以下中,将由指示装置5向控制装置30指示的偏移称为基准偏移进行说明。
在以下,对由指示装置5进行的该指示详细地进行说明。此外,机器人系统1在通过指示装置5对控制装置30进行偏移和目标点位置姿势的指示之后,针对多个作业对象O反复进行规定的作业。在反复进行该规定的作业时,机器人系统1每当进行1次规定的作业(即,每当由把持部HND把持新的作业对象O),通过拍摄部10拍摄作业对象O,基于拍摄到的拍摄图像算出偏移。在以下,将正进行该规定的作业时算出的偏移称为算出偏移进行说明。
算出偏移因在把持新的作业对象O时产生的误差的影响,而一般与基准偏移不一致。机器人系统1基于基准偏移、目标点位置姿势、算出偏移,算出实现该算出偏移的状态下的控制点目标位置姿势。由此,机器人系统1能够使机器人20以高精度进行规定的作业。这是在机器人系统1中,作为指示装置5能够向控制装置30指示基准偏移和目标点位置姿势后的结果而能够得到的效果。此外,规定的作业也可以代替机器人20将把持的作业对象O配置于目标区域TA,而为与作业对象O的移动相关的其他作业。
这里,参照图2,对由机器人系统1所具备的各装置进行的与规定的作业相关的处理进行说明。图2是表示由机器人系统1所具备的各装置进行的与规定的作业相关的处理的流程的一个例子的流程图。首先,控制装置30把持作业对象O(步骤S50)。接下来,控制装置30使作业对象O向规定的拍摄位置移动(步骤S51)。
接下来,控制装置30经由指示装置5使拍摄部10对拍摄图像进行拍摄(步骤S52)。接下来,指示装置5基于由拍摄部10拍摄到的拍摄图像检测作业对象O(步骤S53)。接下来,指示装置5基于由拍摄部10拍摄到的拍摄图像,算出与在步骤S53中检测出的作业对象O相关的算出偏移(步骤S54)。然后,指示装置5将所算出的算出偏移输出至控制装置30。
接下来,控制装置30基于从指示装置5取得的算出偏移和从指示装置5指示的基准偏移以及目标点位置姿势,算出控制点目标位置姿势(步骤S55)。此外,也可以是指示装置5算出控制点目标位置姿势,并且控制装置30取得由指示装置5算出的控制点目标位置姿势的结构。接下来,控制装置30使机器人20移动以使得控制点位置姿势与在步骤S55中算出的控制点目标位置姿势一致,从而将作业对象O配置于目标区域TA(步骤S56)。
<实施方式>
以下,参照附图,对本发明的实施方式进行说明。如上述所述,图1所示的本实施方式所涉及的机器人系统1具备指示装置5、拍摄部10、机器人20和控制装置30。
指示装置5例如是笔记本PC(Personal Computer:个人电脑),但也可以代替此,而是台式PC、平板PC、便携式电话终端、多功能便携式电话终端(智能手机)、PDA(PersonalDigital Assistant:个人数字助理)等。指示装置5与拍摄部10经由电缆连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB(Universal Serial Bus:通用串行总线)等规格进行。此外,指示装置5与拍摄部10也可以是经由根据Wi-Fi(注册商标)等通信规格进行的无线通信而连接的结构。
指示装置5从拍摄部10取得拍摄图像。另外,指示装置5安装有专用的应用程序,显示该应用程序实现的GUI。指示装置5经由GUI接受来自用户的操作,基于所接受到的操作和从拍摄部10取得的拍摄图像,算出作业对象O的作业对象位置姿势与目标点TP的控制点位置姿势之间的基准偏移。
另外,指示装置5在用户通过寸动操作使把持部HND移动从而使作业对象位置姿势与目标点位置姿势一致之后,经由GUI接受来自用户的操作,从控制装置30取得表示控制点目标位置姿势的信息。然后,指示装置5基于所取得的控制点目标位置姿势和所算出的基准偏移,算出目标区域TA的目标点位置姿势。由此,指示装置5不需要进行通过拍摄部拍摄包含目标区域TA的范围并基于所拍摄到的拍摄图像检测目标点位置姿势的处理,就能够将目标点位置姿势向控制装置30指示。此外,用于进行寸动操作的寸动件可以具备于指示装置5中,也可以具备于控制装置30中。在寸动件具备于指示装置5中的情况下,指示装置5经由控制装置30通过寸动操作使机器人20移动。
指示装置5将表示基准偏移的信息和目标点位置姿势向控制装置30输出(指示)。此外,指示装置5也可以是仅将表示基准偏移的信息向控制装置30输出的结构。在该情况下,在控制装置30中预先存储有目标点位置姿势。在以下,设指示装置5将表示基准偏移的信息和目标点位置姿势输出至控制装置30来进行说明。
另外,指示装置5在机器人系统1使机器人20进行规定的作业时,根据来自控制装置30的请求使拍摄部10拍摄包含作业对象O的范围。然后,指示装置5基于所拍摄到的拍摄图像算出算出偏移。指示装置5根据来自控制装置30的请求,按每一规定的作业算出算出偏移,基于基准偏移、目标点位置姿势和算出偏移,按每一规定的作业算出控制点目标位置姿势。在该情况下,指示装置5将表示所算出的控制点目标位置姿势的信息输出至控制装置30。另外,作为其他的结构例,指示装置5根据来自控制装置30的请求,按每一规定的作业将表示算出偏移的信息输出至控制装置30。在该情况下,指示装置5不算出控制点目标位置姿势,控制装置30算出控制点目标位置姿势。
拍摄部10例如是具备作为将所聚光的光转换为电信号的拍摄元件的CCD(ChargeCoupled Device:电荷耦合器件)、CMOS(Complementary Metal Oxide Semiconductor:互补金属氧化物半导体)等的相机。另外,拍摄部10是单眼相机,例如也可以如立体相机那样由2台以上的相机构成。
拍摄部10通过电缆与指示装置5连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB等规格进行。此外,拍摄部10和指示装置5也可以是通过根据Wi-Fi(注册商标)等通信规格进行的无线通信连接的结构。另外,拍摄部10和指示装置5也可以不是分体,而是一体的结构。
拍摄部10设置于在把持有作业对象O的把持部HND移动到规定的拍摄位置动时,能够拍摄包括上述的控制点TCP和由把持部HND把持的作业对象O的代表点OP的范围(以下,称为拍摄范围)的位置。另外,在图1中,拍摄部10设置在能够从铅垂下方朝向铅垂上方拍摄上述的拍摄范围的位置。
此外,代替设置在能够从铅垂下方朝向铅垂上方拍摄上述的拍摄范围的位置的结构,拍摄部10也可以是设置在能够沿水平方向对拍摄范围拍摄的位置的结构,也可以是设置在能够从铅垂上方朝向铅垂下方对拍摄范围进行拍摄的位置的结构,也可以是设置在能够从其他的方向对拍摄范围进行拍摄的结构。另外,拍摄部10是拍摄动态图像来作为拍摄图像的结构,但是也可以代替此,而是拍摄静止图像、半静止图像来作为拍摄图像的结构。拍摄部10是拍摄装置的一个例子。
机器人20例如是具备把持部HND、机械手MNP、未图示的多个致动器的单臂的机器人。此外,代替单臂的机器人,机器人20也可以是SCARA机器人(水平多关节机器人)、双臂的机器人等。SCARA机器人是指机械手仅沿水平方向动作、仅机械手的前端的滑动轴上下动作的机器人。另外,双臂的机器人是表示具有由把持部HND和机械手MNP分别构成的2条臂的机器人。
机器人20的臂为6轴垂直多关节型,能够通过支持台和机械手MNP和把持部HND基于致动器的联合动作来进行6轴自由度的动作。此外,机器人20的臂可以以5自由度(5轴)以下进行动作,也可以以7自由度(7轴)以上进行动作。在以下,对由具备把持部HND以及机械手MNP的臂进行的机器人20的动作进行说明。此外,在机器人20的把持部HND具备能够把持物体的爪部。
机器人20例如通过电缆与控制装置30连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB等规格进行。此外,机器人20和控制装置30也可以通过根据Wi-Fi(注册商标)等通信规格进行的无线通信来连接。另外,在机器人系统1中,机器人20是如图1所示那样与设置于机器人20的外部的控制装置30连接的结构,但也可以代替该结构,为控制装置30内置于机器人20的结构。
机器人20取得控制装置30生成的控制信号,基于取得到的控制信号使机器人20的把持部HND和机械手MNP移动。
控制装置30根据来自指示装置5的请求,将表示实现由指示装置5进行指示的状态且是通过由用户进行的寸动操作从而作业对象位置姿势与目标点位置姿势一致的状态时的控制点位置姿势(即,控制点目标位置姿势)的信息输出至指示装置5。之后,控制装置30从指示装置5取得表示基准偏移的信息和表示目标点位置姿势的信息。
另外,控制装置30基于机器人系统1使机器人20进行规定的作业时所拍摄到的拍摄图像且是指示装置5取得的拍摄图像,使指示装置5算出算出偏移。控制装置30从指示装置5取得所算出的算出偏移。控制装置30基于基准偏移、目标点位置姿势和算出偏移,算出进行规定的作业时的控制点目标位置姿势。
接下来,参照图3,对指示装置5的硬件结构进行说明。图3是表示指示装置5的硬件结构的一个例子的图。指示装置5例如具备CPU(Central Processing Unit:中央处理单元)51、存储部52、输入接受部53、通信部54、显示部55,经由通信部54与控制装置30进行通信。这些结构要素经由总线Bus连接成能够相互通信。CPU51执行存储于存储部52的各种程序。
存储部52例如包括HDD(Hard Disk Drive:硬盘驱动器)、SSD(Solid StateDrive:固态硬盘)、EEPROM(Electrically Erasable Programmable Read-Only Memory:电可擦除可编程只读存储器)、ROM(Read-Only Memory:只读存储器)、RAM(Random AccessMemory:随机存取存储器)等,存储指示装置5处理的各种信息、图像、程序。此外,也可以代替存储部52内置于指示装置5,而是存储部52为通过USB等数字输入输出端口等连接的外置型的存储装置。
输入接受部53例如是键盘、鼠标、触摸板、其他输入装置。此外,输入接受部53也可以通过作为显示部来发挥作用而构成为触摸面板。输入接受部53是操作部的一个例子。
通信部54例如包括USB等数字输入输出端口、以太网端口等而构成。
显示部55例如是液晶显示面板或者有机EL(Electro Luminescence:电致发光)显示面板。
接下来,参照图4,对指示装置5的功能结构进行说明。图4是表示指示装置5的功能结构的一个例子的图。指示装置5具备输入接受部53、通信部54、显示部55、图像取得部56和控制部60。控制部60所具备的功能部中的一部分或者全部例如通过CPU51执行存储于存储部52的各种程序来实现。另外,这些功能部中的一部分或者全部也可以是LSI(Large ScaleIntegration:大规模集成)、ASIC(Application Specific Integrated Circuit:专用集成电路)等硬件功能部。
图像取得部56从拍摄部10取得拍摄图像。图像取得部56将所取得的拍摄图像输出至控制部60。
控制部60具备显示控制部61、运算部62、通信控制部67、拍摄控制部68。控制部60对指示装置5的整体进行控制。
显示控制部61生成用于基于所取得的拍摄图像来将基准偏移和目标点位置姿势向控制装置30指示的GUI,并显示所生成的GUI。更具体而言,显示控制部61基于通过输入接受部53接受到的来自用户的操作,生成用于算出基准偏移的画面(GUI)作为第1指示画面。显示控制部61控制显示部55以使其显示所生成的第1指示画面。另外,显示控制部61生成用于算出目标点位置姿势的画面作为第2指示画面。显示控制部61基于通过输入接受部53接受到的来自用户的操作,控制显示部55以使其显示第2指示画面。
运算部62具备第1算出部63、第2算出部64和第3算出部65。
第1算出部63基于从图像取得部56取得到的拍摄图像,算出(运算)作业对象O的控制点位置姿势与作业对象位置姿势之间的基准偏移或者算出偏移。另外,第1算出部63若算出基准偏移,则使所算出的基准偏移存储至存储部52。
第2算出部64通过通信控制部67经由通信部54从控制装置30取得表示控制点目标位置姿势的信息。第2算出部64从存储部52读入基准偏移。第2算出部64基于从控制装置30取得的控制点目标位置姿势和从存储部52读入的(即,由第1算出部63算出的)基准偏移,算出(运算)目标点位置姿势。
第3算出部65从存储部52读入基准偏移。第3算出部65基于从存储部52读入的(即,由第1算出部63算出的)基准偏移、由第1算出部63算出的算出偏移、由第2算出部算出的目标点位置姿势,算出(运算)机器人系统1使机器人20进行规定的作业时的控制点目标位置姿势。
通信控制部67基于针对通过显示控制部61显示于显示部55的第1指示画面而从输入接受部53接受到的来自用户的操作,控制通信部54以使其将由第1算出部63算出的基准偏移输出至控制装置30。另外,通信控制部67基于针对通过显示控制部61显示于显示部55的第2指示画面而从输入接受部53接受到的来自用户的操作,控制通信部54以使其将由第2算出部64算出的目标点位置姿势输出至控制装置30。另外,通信控制部67根据来自控制装置30的请求,将由第1算出部63算出的算出偏移或者由第3算出部65算出的控制点目标位置姿势输出至控制装置30。
拍摄控制部68控制拍摄部10以使拍摄部10拍摄能够拍摄的范围。
以下,参照图5,对指示装置5向控制装置30指示基准偏移和目标点位置姿势的处理进行说明。图5是表示指示装置5向控制装置30指示基准偏移和目标点位置姿势的处理的流程的一个例子的流程图。首先,显示控制部61基于通过输入接受部53接受到的来自用户的操作,显示设定画面(步骤S80)。接下来,指示装置5的控制部60通过输入接受部53接受经由设定画面的来自用户的操作(步骤S90)。这里,参照图6,对设定画面进行说明。图6是表示设定画面的一个例子的图。
显示控制部61从图像取得部56取得由拍摄部10拍摄到的拍摄图像,将所取得的拍摄图像显示于区域V1。另外,显示控制部61显示图6所示的设定画面中的属性栏Q1。属性栏Q1是显示能够由指示装置5向控制装置30进行指示的项目的一览的栏,是将该各个项目的名称与该各个项目的设定值建立对应来显示的栏。
这里,若用户经由输入接受部53按压(点击)与属性:CalRobotPlacePos(上述的项目的一个例子)建立了对应关系的设定值的栏B0的Click to calibrateB0,则显示控制部61显示在步骤S100说明的第1指示画面。
另外,显示控制部61显示图6所示的设定画面中的结果栏Q2。结果栏Q2是显示基于由拍摄部10拍摄到的拍摄图像而已经检测出的信息且是向控制装置30指示的各种信息的栏,是将该各个项目的名称与该各个项目的检测结果建立对应来显示的栏。
在以下,设在步骤S90中用户经由输入接受部53按压了图6所示的按钮B0来进行说明。接下来,显示控制部61基于在步骤S90中通过输入接受部53接受到的来自用户的操作(即,按压按钮B0的操作),生成第1指示画面。然后,显示控制部61控制显示部55以使其显示所生成的第1指示画面(步骤S100)。
接下来,指示装置5的控制部60通过输入接受部53接受经由第1指示画面的来自用户的操作(步骤S110)。这里,参照图7,对第1指示画面进行说明。图7是表示第1指示画面的一个例子的图。在第1指示画面UI1中,显示用于表示经由第1指示画面UI1向控制装置30进行指示时的流程的说明图像E1。通过遵循该说明图像E1的说明,用户能够不阅读手册就容易地进行用于向控制装置30进行指示的操作。
另外,在第1指示画面UI1中,除了说明图像E1之外,还在区域P1显示由拍摄部10拍摄到的拍摄图像。显示控制部61从图像取得部56取得由拍摄部10拍摄到的拍摄图像,使所取得的拍摄图像显示于区域P1。若第1指示画面UI1显示于显示部55,则用户按压显示于第1指示画面UI1内的按钮B1。由此,用户能够沿着说明图像E1所示的内容的流程来进行用于向控制装置30进行指示的操作。
若用户按压按钮B1,则如图8所示,显示控制部61使寸动画面UI1-1作为第1指示画面UI1的子画面来显示。图8是表示第1指示画面UI1以及寸动画面UI1-1的一个例子的图。在寸动画面UI1-1中,在区域JG显示用于使机器人20的把持部HND的控制点向用户所希望的位置移动的多个按钮。例如,+X按钮是使把持部HND的控制点向X轴的正方向移动的按钮,-X按钮是使把持部HND的控制点向X轴的负方向移动的按钮。
另外,+Y按钮是使把持部HND的控制点向Y轴的正方向移动的按钮,-Y按钮是使把持部HND的控制点向Y轴的负方向移动的按钮。另外,+Z按钮是使把持部HND的控制点向Z轴的正方向移动的按钮,-Z按钮是使把持部HND的控制点向Z轴的负方向移动的按钮。
另外,+U按钮是使把持部HND的控制点绕X轴向正方向旋转的按钮,-U按钮是使把持部HND的控制点绕X轴向负方向旋转的按钮。另外,+V按钮是使把持部HND的控制点绕Y轴向正方向旋转的按钮、-V按钮是使把持部HND的控制点绕Y轴向负方向旋转的按钮。另外,+W按钮是使把持部HND的控制点绕Z轴向正方向旋转的按钮、-W按钮是使把持部HND的控制点绕Z轴向负方向旋转的按钮。
另外,显示控制部61例如使控制点的机器人坐标系中的目前的坐标等显示于寸动画面UI1-1。若图8所示的寸动画面UI1-1显示于显示部55,则用户遵循第1指示画面UI1内显示的说明图像E1所示的流程,使机器人20用把持部HND把持作业对象O。然后,用户使正把持作业对象O的机器人20的把持部HND移动至规定的拍摄位置。用户通过经由寸动画面UI1-1的寸动操作使机器人20进行该作业对象O的由把持部HND进行的把持和作业对象O的直至规定的拍摄位置的移动。
此外,用户能够边观察显示于区域P1的拍摄图像边确认作业对象O是否移动至规定的拍摄位置。这里,规定的拍摄位置是指能够由拍摄部10拍摄把持部HND的控制点TCP和由把持部HND把持的作业对象O的代表点OP的位置。
这里,参照图9,对规定的拍摄位置进行说明。图9是表示规定的拍摄位置处的作业对象O与拍摄部10的位置关系的一个例子的图。图9中的由把持部HND把持的作业对象O的状态是由用户进行的通过寸动操作而移动至拍摄位置后的状态。在作业对象O移动至拍摄位置之后,拍摄部10朝向图9所示的方向C拍摄能够拍摄的范围。方向C是与由把持部HND把持的作业对象O的面M正交的方向。面M表示在作业对象O被把持部HND把持时,不与设置把持部HND的凸轮F对面的一侧的面。因此,拍摄部10在面M相对于拍摄元件的平面平行的状态下对拍摄范围进行拍摄。
形成面M相对于拍摄元件的平面平行的状态的理由是,为了检测作业对象O以正确地姿势配置于目标区域TA的情况下的偏移且是控制点TCP和代表点OP投影在目标区域TA的目标区域面上时的目标区域面上(即,工作台TB的平面上)的控制点位置姿势与代表点位置姿势之间的偏移。通过像这样将偏移作为目标区域面上的偏移来处理,能够抑制指示装置5、控制装置30的计算成本。此外,这样的偏移的处理仅是一个例子,也可以使用其他的偏移的处理方法。
在图8所示的区域P1中显示有作业对象O已经移动至规定的拍摄位置后的拍摄图像。在用户使作业对象O移动至规定的拍摄位置之后,用户按压图8所示的寸动画面UI1-1内的指示按钮B2。在由用户按压了指示按钮B2时,第1算出部63捕捉在指示按钮B2被按压时显示于第1指示画面UI1的拍摄图像,基于该捕捉图像并基于图案匹配等图像处理方法检测控制点位置姿势和作业对象位置姿势。
例如,第1算出部63基于捕捉图像中所包含的把持部HND以及机械手MNP的形状进行图案匹配,分别检测控制点TCP的位置和控制点TCP的姿势。另外,第1算出部63基于捕捉图像中所包含的作业对象O的形状进行图案匹配,分别检测代表点OP的位置和代表点OP的姿势。此外,第1指示画面UI1以及寸动画面UI1-1(即,图8所示的画面)是第1画面的一个例子。
在步骤S110中用户按压指示按钮B2而检测控制点位置姿势和作业对象位置姿势之后,第1算出部63基于检测出的作业对象位置姿势和目标点位置姿势算出基准偏移(步骤S120)。这里,在算出基准偏移之后,显示控制部61控制显示部55来使得消除第1指示画面UI1以及寸动画面UI1-1,但是也可以代替此,形成在通过输入接受部53从用户接受到消除第1指示画面UI1以及寸动画面UI1-1的操作之前,不消除第1指示画面的结构。
接下来,通信控制部67控制通信部54,以使其将在步骤S120中算出的表示基准偏移的信息向控制装置30输出(指示)(步骤S130)。接下来,显示控制部61基于通过输入接受部53接受到的来自用户的操作生成第2指示画面。然后,显示控制部61控制显示部55以使其显示所生成的第2指示画面(步骤S140)。
此外,也可以代替显示控制部61为基于通过输入接受部53接受到的来自用户的操作生成第2指示画面的结构,而是显示控制部61为伴随着在步骤S130中表示基准偏移的信息被输出至控制装置30这一情况来生成第2指示画面的结构、以第1指示画面消失这一情况为触发点来生成第2指示画面的结构等。
接下来,指示装置5的控制部60通过输入接受部53接受经由第2指示画面的来自用户的操作(步骤S150)。接下来,第2算出部64基于所接受到的操作算出目标点位置姿势(步骤S160)。这里,参照图10,对第2指示画面和与第2指示画面相关的从步骤S140至步骤S160的处理进行说明。图10是表示第2指示画面的一个例子的图。
在第2指示画面UI2中,显示用于表示经由第2指示画面UI2向控制装置30进行指示时的流程的说明图像E2。通过遵循该说明图像E2的说明,用户能够不阅读手册就容易地进行用于向控制装置30进行指示的操作。
另外,在第2指示画面UI2中,除了说明图像E2之外,还在区域P2显示由拍摄部10拍摄到的拍摄图像。显示控制部61从图像取得部56取得由拍摄部10拍摄到的拍摄图像,使所取得的拍摄图像显示于区域P2。若第2指示画面UI2显示于显示部55,则用户按压显示在第2指示画面UI2内的按钮B3。由此,用户能够沿着说明图像E2所示的内容的流程来进行用于向控制装置30进行指示的操作。
若用户按压指示按钮B2,则如图11所示,显示控制部61使寸动画面UI2-1作为第2指示画面UI2的子画面来显示。图11是表示第2指示画面UI2以及寸动画面UI2-1的一个例子的图。寸动画面UI2-1与寸动画面UI1-1相同,因此省略说明。
若图11所示的寸动画面UI2-1显示于显示部55,则遵循第2指示画面UI2内所显示的由说明图像E2表示的流程,通过经由寸动画面UI2-1的寸动操作使由把持部HND把持的作业对象O移动至目标区域TA。然后,用户使作业对象位置姿势与目标点位置姿势一致。
在用户通过经由寸动画面UI2-1的寸动操作使作业对象位置姿势与目标点位置姿势一致之后,用户按压图11所示的寸动画面UI2-1内的指示按钮B4。在由用户按压指示按钮B4时,第2算出部64从控制装置30取得表示指示按钮B4被按压时的控制点位置姿势的信息作为表示控制点目标位置姿势的信息。然后,第2算出部64基于所取得的控制点目标位置姿势和由第1算出部63算出的基准偏移,算出目标点位置姿势。
像这样,指示装置5根据经由寸动画面UI2-1的寸动操作而通过用户使作业对象O移动至实际配置的目标位置和目标姿势,基于该位置及姿势中的控制点TCP和上述的基准偏移算出目标点位置姿势,所以例如与基于拍摄图像来检测目标点位置姿势的情况相比,能够以较高的精度向控制装置30指示目标点位置姿势。作为其结果,控制装置30在进行规定的作业时,能够以高精度算出控制点目标位置姿势,所以能够使机器人20进行高精度的作业。
另外,在第2指示画面UI2中,除了说明图像E2之外,在区域P2显示在第1指示画面UI1中捕捉到的图像。此外,显示控制部61也可以是从图像取得部56取得由拍摄部10拍摄到的拍摄图像,并使所取得的拍摄图像显示于区域P2的结构。第2指示画面UI2以及寸动画面UI2-1(即,图11所示的画面)是第2画面的一个例子。
接下来,通信控制部67控制通信部54以使其将在步骤S160中所算出的表示目标点位置姿势的信息向控制装置30输出(指示)(步骤S170)。此外,也可以代替在步骤S130中将表示基准偏移的信息向控制装置30输出的结构,而是通信控制部67在步骤S170中将表示基准偏移的信息与表示目标点位置姿势的信息一起向控制装置30输出的结构。
接下来,显示控制部61生成设定完成画面。然后,显示控制部61控制显示部55以使其显示所生成的设定完成画面(步骤S180)。这里,参照图12,对设定完成画面进行说明。图12是表示设定完成画面的一个例子的图。显示控制部61在设定完成画面内,将通知设定已完成这一情况的图像、说明显示于栏E3。此外,显示控制部61可以是如图12所示那样在设定完成画面内显示由拍摄部10拍摄到的拍摄图像P3的结构,但是也可以是不显示拍摄图像的结构。另外,显示控制部61在设定完成画面内显示完成按钮B5。若用户按压完成按钮B5,则显示控制部61消除设定完成画面。
此外,本实施方式所涉及的机器人系统1形成为由运算部62算出所有基准偏移、算出偏移、目标位置姿势、控制点目标位置姿势的结构,但也可以代替此,形成为由分体的装置算出基准偏移、算出偏移、目标位置姿势、控制点目标位置姿势中的一部分或者全部的结构。在该情况下,指示装置5经由控制装置30对装置请求算出基准偏移、算出偏移、目标位置姿势、控制点目标位置姿势中的一部分或者全部。
如以上说明的那样,本实施方式所涉及的机器人系统1通过输入接受部53操作用于使机器人动作而使作业对象O移动至拍摄部10的能够拍摄的范围内的第1指示画面UI1和用于使作业对象O移动至目标点位置姿势的第2指示画面UI2,由此使用拍摄部10拍摄作业对象O而得到的拍摄图像和目标点位置姿势,算出作业点目标位置姿势。由此,机器人系统1能够简便地进行高精度的指示。
另外,对于机器人系统1而言,第1指示画面UI1具有显示由拍摄部10拍摄到的拍摄图像的区域P1,第2指示画面UI2具有显示由拍摄部10拍摄到的拍摄图像且是显示于第1指示画面UI1的捕捉图像的区域P2。由此,机器人系统1能够向用户提供边确认拍摄图像边通过寸动操作使机器人20移动的环境。
另外,对于机器人系统1而言,第1指示画面UI1具有显示作业流程的区域,第2指示画面UI2具有显示作业流程的区域。由此,机器人系统1通过抑制用户阅读手册的功夫,能够使用户进行高效的作业。
另外,机器人系统1基于通过输入接受部53经由第1指示画面UI1而接受到的操作并使用拍摄图像来算出目标点位置姿势与控制点目标位置姿势之间的基准偏移,基于通过输入接受部53经由第2指示画面UI2而接受到的操作从控制装置30取得目标点位置姿势,使用所算出的基准偏移和所取得的目标点位置姿势算出控制点目标位置姿势。由此,机器人系统1通过按每一作业算出目标点位置姿势与控制点目标位置姿势之间的算出偏移,从而能够实现精度高的作业。
[第2实施方式]
<概要>
首先,对以下所示的实施方式所涉及的机器人系统101的概要进行说明,之后对更加详细的实施方式进行说明。在本实施方式中,对与第1实施方式相同的结构部件赋予相同的附图标记,省略或者简化他们的说明。
图13是表示本实施方式所涉及的机器人系统101的结构的一个例子并表示机器人20进行规定的作业的样子的一个例子的图。机器人系统101具备指示装置105、拍摄部10、具备把持部HND(末端执行器)以及机械手MNP的单臂的机器人20、控制装置130。在本实施方式中,单臂的机器人表示具有由把持部HND和机械手MNP构成的1条臂的机器人。
这里,在本实施方式中,规定的作业是指机器人20通过把持部HND把持设置在工作台TB上的作业对象O,并将所把持的作业对象O配置于预先登录的配置位置X。工作台TB是配置作业对象O的台子等。作业对象O是能够由机器人20把持的物体,例如是螺钉、螺栓、齿轮、夹具等工业用的部件等,但并不局限于此,只要能够由机器人20把持也可以是其他物体。在图13中,将该作业对象O表示成长方体形状的物体。
机器人系统101在使机器人20进行规定的作业之前,从指示装置105对控制装置130指示为了使机器人20进行规定的作业而必需的基准信息。机器人系统101在通过指示装置105向控制装置130指示基准信息时,通过经由显示于指示装置105的GUI(GraphicalUser Interface)接受来自用户的操作来对控制装置130指示基准信息。
在通过指示装置105向控制装置130指示基准信息之后,机器人系统101使机器人20进行规定的作业。更具体而言,机器人系统101使拍摄部10拍摄包括作业对象O的范围。然后,机器人系统101基于由拍摄部10拍摄到的拍摄图像检测(算出)作业对象O的位置及姿势。在以下,为了便于说明,将位置及姿势称为位置姿势来进行说明,并且将作业对象O的位置姿势称为作业对象位置姿势来进行说明。
机器人系统101根据由拍摄部10拍摄到的拍摄图像检测预先设定于作业对象O的代表点OP的位置姿势作为作业对象位置姿势。作业对象O的代表点OP是由控制装置130预先设定的点且是作业对象O的特征点,在该一个例子中,是图13所示的作业对象O的一个角。此外,为了使机器人系统101进行的计算变容易,优选该角是配置于配置位置X时成为底面的面上的角。作业对象O是工件的一个例子。
然后,机器人系统101基于从拍摄图像检测出的作业对象位置姿势和由指示装置105指示的基准信息,算出机器人20将要通过把持部HND把持作业对象O之前的把持部HND的位置姿势,使机器人20移动把持部HND以使得成为所算出的位置姿势。
这里,图13所示的机器人系统101在使机器人20移动把持部HND时,使把持部HND的控制点TCP的位置及姿势(以下,称为控制点位置姿势)作为把持部HND的位置及姿势移动。把持部HND的控制点TCP是控制装置130使机器人20的把持部HND以及机械手MNP移动时的表示把持部HND的位置姿势的点,在该一个例子中,是表示在设置有把持部HND的机械手MNP的端部所具备的凸轮的中心点(工具中心点)。在以下,为了便于说明,将将要把持上述的作业对象O之前的把持部HND的位置姿势称为控制点目标位置姿势进行说明。
在使机器人20移动把持部HND以使得把持部HND的控制点位置姿势与控制点目标位置姿势一致(即,成为将要把持作业对象O之前的状态)之后,机器人系统101使机器人20的把持部HND把持作业对象O。然后,机器人系统101使机器人20向配置位置X配置由把持部HND把持的作业对象O。
在以下,对由上述的指示装置105进行的该指示详细地进行说明。此外,机器人系统101在通过指示装置105对控制装置130进行基准信息的指示之后,针对多个作业对象O反复进行规定的作业。在反复进行该规定的作业时,机器人系统101每当进行1次规定的作业(即,每当新的作业对象O被设置于工作台TB上或者每当在工作台TB上新检测出作业对象O),通过拍摄部10拍摄作业对象O,基于拍摄到的拍摄图像算出作业对象位置姿势,基于所算出的作业对象位置姿势和由指示装置105指示的基准信息算出用于把持作业对象O的新的控制点目标位置姿势。
这里,参照图14,对由机器人系统101所具备的各装置进行的与规定的作业相关的处理进行说明。图14表示由机器人系统101所具备的各装置进行的与规定的作业相关的处理的流程的一个例子的流程图。首先,控制装置130经由指示装置105使拍摄部10对拍摄图像进行拍摄(步骤S250)。接下来,指示装置105基于由拍摄部10拍摄到的拍摄图像检测作业对象O(步骤S251)。接下来,控制装置130算出所检测出的作业对象O的位置及姿势(即,作业对象位置姿势)(步骤S252)。然后,指示装置105将算出的作业对象位置姿势输出至控制装置130。
接下来,控制装置130从指示装置105取得作业对象位置姿势(步骤S253)。接下来,控制装置130基于在步骤S253中所取得的作业对象位置姿势和由指示装置105指示的基准信息算出控制点目标位置姿势(步骤S254)。接下来,控制装置130基于所算出的控制点目标位置姿势,使机器人20把持作业对象O(步骤S255)。接下来,控制装置130控制机器人20,以使其将作业对象O配置于配置位置X(步骤S256)。
<实施方式>
以下,参照附图对本发明的实施方式进行说明。如上述所述,图13所示的本实施方式所涉及的机器人系统101具备指示装置105、拍摄部10、机器人20和控制装置130。
指示装置105例如是笔记本PC(Personal Computer:个人电脑),但也可以代替此,而是台式PC、平板PC、便携式电话终端、多功能便携式电话终端(智能手机)、PDA(PersonalDigital Assistant:个人数字助理)等。指示装置105与拍摄部10经由电缆连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB(Universal Serial Bus:通用串行总线)等规格进行。此外,指示装置105与拍摄部10也可以是经由根据Wi-Fi(注册商标)等通信规格进行的无线通信而连接的结构。
指示装置105从拍摄部10取得拍摄图像。另外,指示装置105安装有专用的应用程序,显示该应用程序实现的GUI。指示装置105经由GUI接受来自用户的操作,基于所接受到的操作和从拍摄部10取得的拍摄图像,检测作业对象O的作业对象位置姿势作为作业对象基准位置姿势。
另外,指示装置105在用户通过寸动操作使把持部HND移动从而实现用户所希望的状态且是把持部HND将要把持作业对象O之前的状态之后,经由GUI接受来自用户的操作,从控制装置130取得表示控制点位置姿势的信息来作为表示控制点目标位置姿势的信息。然后,指示装置105基于所取得的控制点目标位置姿势和检测出的作业对象基准位置姿势,算出作业对象基准位置姿势与控制点目标位置姿势之间的偏移来作为基准偏移。指示装置105将所算出的基准偏移和表示作业对象基准位置姿势的信息作为基准信息向控制装置130输出(指示)。
此外,用于进行寸动操作的寸动件可以具备于指示装置105中,也可以具备于控制装置130中。在寸动件具备于指示装置105中的情况下,指示装置105经由控制装置130通过寸动操作使机器人20移动。另外,指示装置105也可以是仅将表示作业对象基准位置姿势的信息作为基准信息输出至控制装置130的结构。
在该情况下,控制装置130基于所取得(指示)的作业对象基准位置姿势和自身装置具有的控制点目标位置姿势,算出基准偏移,重新将作业对象基准位置姿势与所算出的基准偏移一起作为基准信息进行存储。在以下,设指示装置105将表示作业对象基准位置姿势的信息和基准偏移作为基准信息输出至控制装置130来进行说明。
另外,指示装置105在机器人系统101使机器人20进行规定的作业时,根据来自控制装置130的请求使拍摄部10拍摄包含作业对象O的范围。然后,指示装置105基于所拍摄到的拍摄图像检测作业对象位置姿势。指示装置105根据来自控制装置130的请求,按每一规定的作业检测作业对象位置姿势。指示装置105将表示所检测出的作业对象位置姿势的信息作为检测信息输出至控制装置130。
此外,也可以代替指示装置105为将表示所检测出的作业对象位置姿势的信息作为检测信息输出至控制装置130的结构,而是指示装置105为从控制装置130取得基准信息,基于所取得的基准信息和所检测出的作业对象位置姿势来算出控制点目标位置姿势的结构。在该情况下,指示装置105将表示所算出的控制点目标位置姿势的信息输出至控制装置130。
拍摄部10例如是具备作为将所聚光的光转换为电信号的拍摄元件的CCD(ChargeCoupled Device:电荷耦合器件)、CMOS(Complementary Metal Oxide Semiconductor:互补金属氧化物半导体)等的相机。另外,拍摄部10是单眼相机,例如也可以如立体相机那样由2台以上的相机构成。
拍摄部10通过电缆与指示装置105连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB等规格进行。此外,拍摄部10和指示装置105也可以是通过根据Wi-Fi(注册商标)等通信规格进行的无线通信连接的结构。另外,拍摄部10和指示装置105也可以不是分体,而是一体的结构。拍摄部10设置在能够拍摄包含作业对象O的范围且是能够拍摄作业对象O的代表点OP的范围(以下,称为拍摄范围)的位置。另外,拍摄部10是拍摄动态图像来作为拍摄图像的结构,但是也可以代替此,而是拍摄静止图像、半静止图像来作为拍摄图像的结构。拍摄部10是拍摄装置的一个例子。
机器人20例如是具备把持部HND、机械手MNP、未图示的多个致动器的单臂的机器人。此外,代替单臂的机器人,机器人20也可以是SCARA机器人(水平多关节机器人)、双臂的机器人等。SCARA机器人是指机械手仅沿水平方向动作、仅机械手的前端的滑动轴上下动作的机器人。另外,双臂的机器人是表示具有由把持部HND和机械手MNP分别构成的2条臂的机器人。
机器人20的臂为6轴垂直多关节型,能够通过支持台和机械手MNP和把持部HND基于致动器的联合动作来进行6轴自由度的动作。此外,机器人20的臂可以以5自由度(5轴)以下进行动作,也可以以7自由度(7轴)以上进行动作。在以下,对由具备把持部HND以及机械手MNP的臂进行的机器人20的动作进行说明。此外,在机器人20的把持部HND具备能够把持物体的爪部。
机器人20例如通过电缆与控制装置130连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB等规格进行。此外,机器人20和控制装置130也可以通过根据Wi-Fi(注册商标)等通信规格进行的无线通信来连接。另外,在机器人系统101中,机器人20是如图13所示那样与设置于机器人20的外部的控制装置130连接的结构,但也可以代替该结构,为控制装置130内置于机器人20的结构。
机器人20取得控制装置130生成的控制信号,基于取得到的控制信号使机器人20的把持部HND和机械手MNP移动。
控制装置130根据来自指示装置105的请求,将表示由用户进行的寸动操作而实现用户所希望的状态且是把持部HND将要把持作业对象O之前的状态时的控制点位置姿势(即,控制点目标位置姿势)的信息输出至指示装置105。之后,控制装置130从指示装置105取得基准信息。
另外,控制装置130基于机器人系统1使机器人20进行规定的作业时所拍摄到的拍摄图像且是指示装置105取得的拍摄图像,使指示装置105检测作业对象位置姿势。控制装置130取得表示由指示装置105检测出的作业对象位置姿势的信息来作为检测信息。控制装置130基于基准信息和检测信息,算出进行规定的作业时的控制点目标位置姿势。
控制装置130使机器人20移动把持部HND,以使得控制点位置姿势与所算出的控制点目标位置姿势一致,并且使把持部HND把持作业对象O,以使得实现与由用户指示的基准偏移相同的偏移的状态(即,基准偏移所示的相对的位置姿势且是作业对象O与把持部HND之间的相对的位置姿势)。而且,控制装置130控制机器人20,以使其将由把持部HND把持的作业对象O配置于配置位置X。
关于指示装置105的硬件结构,与在上述第1实施方式中参照图3说明的指示装置5相同,所以省略此处的说明。
接下来,参照图15,对指示装置105的功能结构进行说明。图15是表示指示装置105的功能结构的一个例子的图。指示装置105具备存储部52、输入接受部53、通信部54、显示部55、图像取得部56和控制部160。控制部160所具备的功能部中的一部分或者全部例如通过CPU51执行存储于存储部52的各种程序来实现。另外,这些功能部中的一部分或者全部也可以是LSI(Large Scale Integration:大规模集成)、ASIC(Application SpecificIntegrated Circuit:专用集成电路)等硬件功能部。
图像取得部56从拍摄部10取得拍摄图像。图像取得部56将所取得的拍摄图像输出至控制部160。
控制部160具备显示控制部161、检测部162、运算部163、通信控制部166和拍摄控制部167。控制部160对指示装置105的整体进行控制。
显示控制部161生成用于基于所取得的拍摄图像来检测作业对象基准位置姿势的GUI,并显示所生成的GUI。更具体而言,显示控制部161基于通过输入接受部53接受到的来自用户的操作,生成用于检测作业对象基准位置姿势的画面(GUI)作为第1指示画面。显示控制部161控制显示部55以使其显示所生成的第1指示画面。另外,显示控制部161生成用于算出基准偏移的画面作为第2指示画面。显示控制部161基于通过输入接受部53接受到的来自用户的操作,控制显示部55以使其显示第2指示画面。
检测部162基于通过输入接受部53经由第1指示画面而接受到的来自用户的操作,从图像取得部56取得由拍摄部10拍摄到的拍摄图像。检测部162基于所取得的拍摄图像检测作业对象位置姿势。检测部162若检测作业对象位置姿势,则使所检测出的作业对象位置姿势作为作业对象基准位置姿势存储于存储部52。
运算部163具备第1算出部164和第2算出部165。
第1算出部164基于通过输入接受部53经由第2指示画面而接受到的来自用户的操作,通过通信控制部166经由通信部54从控制装置130取得控制点位置姿势来作为控制点目标位置姿势。然后,第1算出部164基于从控制装置130取得的控制点目标位置姿势和由检测部162检测出的作业对象位置姿势算出基准偏移。第1算出部164若算出基准偏移,则使算出的基准偏移存储于存储部52。
第2算出部165根据来自控制装置130的请求,基于由检测部162检测出的作业对象位置姿势和由存储部52存储的作业对象基准位置姿势以及基准偏移算出控制点目标位置姿势。此外,控制部160也可以是不具备第2算出部165的结构。
通信控制部166基于通过输入接受部53经由根据显示控制部161而显示于显示部55的第2指示画面而接受到的来自用户的操作,控制通信部54以使其从控制装置130取得控制点位置姿势。另外,基于通过输入接受部53经由根据显示控制部161而显示于显示部55的第2指示画面而接受到的来自用户的操作,控制通信部54,以使其将表示由检测部162检测出的作业对象基准位置姿势的信息和表示由第1算出部164算出的基准偏移的信息作为基准信息输出至控制装置130。另外,通信控制部166根据来自控制装置130的请求,将表示由第2算出部165算出的控制点目标位置姿势的信息输出至控制装置130。
拍摄控制部167控制拍摄部10以使拍摄部10拍摄能够拍摄的范围。
以下,参照图16,对指示装置105向控制装置130指示基准信息的处理进行说明。图16是表示指示装置105向控制装置130指示基准信息的处理的流程的一个例子的流程图。首先,显示控制部161基于通过输入接受部53接受到的来自用户的操作,显示设定画面(步骤S280)。接下来,指示装置105的控制部160通过输入接受部53接受经由设定画面的来自用户的操作(步骤S290)。这里,参照图17,对设定画面进行说明。图17是表示设定画面的一个例子的图。
显示控制部161从图像取得部56取得由拍摄部10拍摄到的拍摄图像,将所取得的拍摄图像显示于区域V1。另外,显示控制部161显示图17所示的设定画面中的属性栏Q1。属性栏Q1是显示能够由指示装置5向控制装置130进行指示的项目的一览的栏,是将该各个项目的名称与该各个项目的设定值建立对应来显示的栏。
例如,若用户经由输入接受部53选择属性:RobotUOffset(上述的项目的一个例子),则在建立了对应关系的设定值的栏显示按钮B10。若用户经由输入接受部53按压(点击)该按钮B10,则显示控制部161显示在步骤S300中说明的第1指示画面。
另外,显示控制部161显示图17所示的设定画面中的结果栏Q2。结果栏Q2是显示基于由拍摄部10拍摄到的拍摄图像而已经检测出的信息且是向控制装置130指示的各种信息的栏,是将该各个项目的名称与该各个项目的检测结果建立对应来显示的栏。
在以下,设在步骤S290中用户经由输入接受部53按压了图17所示的按钮B10来进行说明。接下来,显示控制部161基于在步骤S290中通过输入接受部53接受到的来自用户的操作(即,按压按钮B10的操作),生成第1指示画面。然后,显示控制部161控制显示部55以使其显示所生成的第1指示画面(步骤S300)。
接下来,指示装置105的控制部160通过输入接受部53接受经由第1指示画面的来自用户的操作(步骤S310)。接下来,第1算出部164基于接受到的操作,检测作业对象基准位置姿势(步骤S320)。这里,参照图18,对第1指示画面和与第1指示画面相关的从步骤S300至步骤S320的处理进行说明。图18是表示第1指示画面的一个例子的图。
若图18所示的第1指示画面UI1显示于显示部55,则用户遵循由在第1指示画面UI1内显示的说明图像E1表示的流程,将作业对象O设置在拍摄部10能够拍摄的范围。此外,设拍摄部10在刚显示第1指示画面UI1之后开始对拍摄图像进行拍摄,但也可以代替此,拍摄部10构成为基于通过输入接受部53经由第1指示画面UI1而接受到的来自用户的操作来开始拍摄的结构等。
在第1指示画面UI1中,除了说明图像E1之外,还在区域P1显示由拍摄部10拍摄到的拍摄图像。显示控制部161从图像取得部56取得由拍摄部10拍摄到的拍摄图像,使所取得的拍摄图像显示于区域P1。用户能够边确认显示于区域P1的拍摄图像边将作业对象O设置于拍摄部10能够拍摄的范围。此外,第1指示画面UI1是第1画面的一个例子。
在图18所示的区域P1,显示作业对象O已经被设置于拍摄部10能够拍摄的范围之后的拍摄图像。在用户将作业对象O设置于拍摄部10能够拍摄的范围之后,用户按压(点击)图18所示的指示按钮B11。当用户按压了指示按钮B11时,检测部162捕捉在指示按钮B11被按压时显示于第1指示画面UI1的拍摄图像,并且基于该捕捉图像基于图案匹配等图像处理的方法检测作业对象位置姿势来作为作业对象基准位置姿势。
例如,检测部162基于捕捉图像中所包含的作业对象O的形状进行图案匹配,分别检测拍摄图像上的作业对象O的位置和拍摄图像上的作业对象O的姿势。这里,参照图19,对由检测部162进行的作业对象基准位置姿势的检测处理进行说明。图19是表示基于通过输入接受部53经由第1指示画面UI1接受到的操作而由检测部162捕捉到的拍摄图像的一个例子的图。
拍摄图像Pc1是由检测部162捕捉到的拍摄图像的一个例子。在图19中,用图19所示的X轴以及Y轴表示拍摄图像Pc1上的方向。具体而言,设图19所示的拍摄图像Pc1的水平方向为X方向,设垂直方向为Y方向。检测部162基于作业对象O的形状通过图案匹配从拍摄图像Pc1检测出作业对象O的代表点OP的位置来作为作业对象基准位置。
另外,检测部162基于作业对象O的形状通过图案匹配从拍摄图像Pc1例如检测从作业对象O的代表点OP开始延伸的边OX以及边OY,并设边OX的延伸的方向为代表点OP的X方向,设边OY的延伸的方向为代表点OP的Y方向。然后,检测部162检测以代表点OP为原点的代表点OP的X方向以及Y方向来作为代表点OP的作业对象基准姿势。检测部162使所检测出的作业对象基准位置姿势存储于存储部52。
接下来,显示控制部161基于通过输入接受部53接受到的来自用户的操作,生成第2指示画面。然后,显示控制部161控制显示部55以使其显示所生成的第2指示画面(步骤S330)。此外,也可以代替显示控制部161基于通过输入接受部53接受到的来自用户的操作来生成第2指示画面的结构,而是显示控制部161为伴随着在步骤S320中由检测部162检测出作业对象基准位置姿势这一情况来生成第2指示画面的结构、以第1指示画面消失这一情况为触发点来生成第2指示画面的结构等。
接下来,指示装置105的控制部160通过输入接受部53接受经由第2指示画面的来自用户的操作(步骤S340)。接下来,第1算出部164基于所接受到的操作,从控制装置130取得控制点目标位置姿势(步骤S350)。接下来,第1算出部164从存储部52读入作业对象基准位置姿势,并基于所读入的作业对象基准位置姿势和在步骤S350中所取得的控制点目标位置姿势算出基准偏移(步骤S360)。
这里,参照图20,对第2指示画面和与第2指示画面相关的从步骤S340至步骤S360的处理进行说明。图20是表示第2指示画面的一个例子的图。若图20所示的第2指示画面UI2被显示于显示部55,则用户遵循在第2指示画面UI2内所显示的由说明图像E2表示的流程,使机器人20用把持部HND把持作业对象O。用户通过寸动操作使机器人20进行基于该作业对象O的把持部HND的把持。
在第2指示画面UI2中,显示用于表示经由第2指示画面UI2向控制装置130进行指示时的流程的说明图像E2。通过遵循该说明图像E2的说明,用户能够不阅读手册就容易地进行用于向控制装置130进行指示的操作。
另外,在第2指示画面UI2中,除了说明图像E2之外,还在区域P2显示由拍摄部10拍摄到的拍摄图像。显示控制部161从图像取得部56取得由拍摄部10拍摄到的拍摄图像,并使所取得的拍摄图像显示于区域P2。若第2指示画面UI2显示于显示部55,则用户按压显示在第2指示画面UI2内的指示按钮B12。由此,用户能够沿着说明图像E2所示的内容的流程来进行用于向控制装置130进行指示的操作。
若用户按压指示按钮B12,则如图21所示,显示控制部161使寸动画面UI2-1作为第2指示画面UI2的子画面来显示。图21是表示第2指示画面UI2以及寸动画面UI2-1的一个例子的图。在寸动画面UI2-1中,在区域JG显示用于使机器人20的把持部HND的控制点向用户所希望的位置移动的多个按钮。例如,+X按钮是使把持部HND的控制点向X轴的正方向移动的按钮,-X按钮是使把持部HND的控制点向X轴的负方向移动的按钮。
另外,+Y按钮是使把持部HND的控制点向Y轴的正方向移动的按钮,-Y按钮是使把持部HND的控制点向Y轴的负方向移动的按钮。另外,+Z按钮是使把持部HND的控制点向Z轴的正方向移动的按钮,-Z按钮是使把持部HND的控制点向Z轴的负方向移动的按钮。
另外,+U按钮是使把持部HND的控制点绕X轴向正方向旋转的按钮,-U按钮是使把持部HND的控制点绕X轴向负方向旋转的按钮。另外,+V按钮是使把持部HND的控制点绕Y轴向正方向旋转的按钮、-V按钮是使把持部HND的控制点绕Y轴向负方向旋转的按钮。另外,+W按钮是使把持部HND的控制点绕Z轴向正方向旋转的按钮、-W按钮是使把持部HND的控制点绕Z轴向负方向旋转的按钮。
另外,显示控制部161例如使控制点的机器人坐标系中的目前的坐标等显示于寸动画面UI2-1。另外,显示控制部161在第2指示画面UI2的区域P2显示由拍摄部10拍摄到的拍摄图像。用户能够边确认该拍摄图像变通过经由寸动画面UI2-1的寸动操作使把持部HND把持作业对象O。此外,在图21所示的第2指示画面UI2的区域P2,显示有通过经由寸动画面UI2-1的寸动操作而由把持部HND把持作业对象O后的状态的拍摄图像。另外,显示控制部161也可以是基于通过输入接受部53经由第1指示画面UI1而接受到的操作来使所捕捉到的图像显示于区域P2的结构。第2指示画面UI2以及寸动画面UI2-1(即,图21所示的画面)是第2画面的一个例子。
在用户通过经由寸动画面UI2-1的寸动操作来使机器人20的把持部HND把持作业对象O之后,用户按压(点击)图21所示的寸动画面UI2-1内的指示按钮B13。当用户按压了指示按钮B13时,第1算出部164从控制装置130取得表示指示按钮B13被按压时的控制点位置姿势的信息来作为控制点目标位置姿势。
像这样,指示装置105根据经由寸动画面UI2-1的寸动操作而通过用户实际把持作业对象O,并取得把持部HND把持作业对象O后的位置及姿势中的控制点位置姿势来作为控制点目标位置姿势,所以例如与基于拍摄图像检测控制点目标位置姿势的情况相比,能够以较高的精度取得控制点目标位置姿势。第1算出部164在从控制装置130取得控制点目标位置姿势之后,从存储部52读入作业对象基准位置姿势,基于所读入的作业对象基准位置姿势和所取得的控制点目标位置姿势算出基准偏移。
这里,参照图22,对由第1算出部164进行的控制点目标位置姿势的取得处理以及基准偏移的算出处理进行说明。图22是表示显示于第2指示画面UI2的区域P2的拍摄图像且是通过寸动操作而由把持部HND把持作业对象O时的拍摄图像的一个例子的图。
拍摄图像Pc2是由把持部HND把持作业对象O时的拍摄图像的一个例子。在图22中,用图22所示的X轴以及Y轴表示拍摄图像Pc2上的方向。具体而言,设图22所示的拍摄图像Pc2的水平方向为X方向,设垂直方向为Y方向。第1算出部164从控制装置130取得图22所示的状态下的控制点位置姿势来作为控制点目标位置姿势。
因此,对于指示装置105而言,与使用拍摄图像Pc2通过图案匹配等来检测控制点目标位置姿势的情况相比,能够取得精度高的控制点目标位置姿势。第1算出部164从存储部52读入作业对象基准位置姿势,基于所读入的作业对象基准位置姿势和所取得的控制点目标位置姿势,算出图22所示的基准偏移OS。
接下来,通信控制部166控制通信部54,以使其将表示在步骤S320中检测出的作业对象基准位置姿势的信息和表示在步骤S360中算出的基准偏移的信息向控制装置130输出(指示)(步骤S370)。接下来,显示控制部161生成设定完成画面。然后,显示控制部161控制显示部55,以使其显示所生成的设定完成画面(步骤S380)。
这里,参照图23,对设定完成画面进行说明。图23是表示设定完成画面的一个例子的图。显示控制部161在设定完成画面内,将通知设定已完成这一情况的图像、说明显示于栏E3。此外,显示控制部161可以是如图23所示那样在设定完成画面内显示由拍摄部10拍摄到的拍摄图像P3的结构,但是也可以是不显示拍摄图像的结构。另外,显示控制部161在设定完成画面内显示完成按钮B15。若用户按压完成按钮B15,则显示控制部161显示在步骤S390中说明的指示结束后的设定画面。
在以下,设在设定完成画面中用户按压了完成按钮B15来进行说明。接下来,显示控制部161再次显示设定画面(步骤S390)。这里,参照图24,对指示结束后的设定画面进行说明。图24是表示指示结束后的设定画面的一个例子的图。
图24所示的指示结束后的设定画面与图17所示的指示前的设定画面不同,在与属性:RobotUOffset建立了对应关系的设定值OSR不显示0.000,而显示在步骤S320中算出的基准偏移的值(例如,-174.220像素)。像这样,若基于第1指示画面UI1以及第2指示画面UI2的指示结束,则在设定画面中显示向控制装置130指示的信息。
像这样,根据从步骤S280至步骤S390的处理,指示装置105向控制装置130指示基准信息。
此外,在向控制装置130指示基准信息之后,机器人系统101使机器人20进行规定的作业。此时,机器人系统101每当在工作台TB上新设置了作业对象O,使拍摄部10拍摄作业对象O,基于所拍摄到的拍摄图像检测拍摄图像上的作业对象位置姿势。然后,机器人系统101基于所检测出的作业对象位置姿势和从指示装置105指示的基准信息中所包含的作业对象基准位置姿势,算出作业对象位置姿势与作业对象基准位置姿势之间的差。
机器人系统101基于所算出的作业对象位置姿势与作业对象基准位置姿势之间的差(即,相对于作业对象基准位置姿势的作业对象O的相对的位置姿势)和基准信息中所包含的基准偏移来算出控制点目标位置姿势,使机器人20移动把持部HND,以使得所算出的控制点目标位置姿势与控制点位置姿势一致。之后,机器人系统101控制机器人20,以使机器人20把持作业对象O,并将作业对象O配置于配置位置X。作业对象O的姿势与作业对象O的基准姿势之间的差是工件的姿势的一个例子。
此外,本实施方式所涉及的机器人系统101为通过运算部163算出基准偏移的结构,但也可以代替此,为由分体的装置算出基准偏移的结构。在该情况下,指示装置105经由控制装置130对该装置请求算出基准偏移。
如以上说明的那样,本实施方式所涉及的机器人系统101显示用于显示载置在拍摄部10的拍摄范围内的作业对象O的第1指示画面UI1和用于使机器人20把持载置在拍摄部10的拍摄范围内的作业对象O的第2指示画面UI2,使用机器人20把持作业对象O后的结果,检测作业对象O的位置姿势。由此,机器人系统101能够减轻用户的与指示相关的负担。
另外,机器人系统101基于显示于第1指示画面UI1的载置在拍摄部10的拍摄范围内的作业对象O检测相对于拍摄范围的作业对象O的位置姿势来作为作业对象基准位置姿势。由此,机器人系统101能够将检测出的作业对象基准位置姿势向控制装置130指示。
另外,机器人系统101使用由检测部162检测出的作业对象O的作业对象基准位置姿势和机器人20把持作业对象O后的结果,运算规定的作业中新载置在拍摄范围内的作业对象O的作业对象位置姿势与作业对象基准位置姿势之间的差。由此,机器人系统101能够基于作业对象O的基准姿势和使用机器人20把持作业对象O后的结果而运算出的作业对象位置姿势与作业对象基准位置姿势之间的差,来对作业对象O进行规定的作业。
另外,对于机器人系统101而言,第2指示画面UI2具有显示由拍摄部10拍摄到的拍摄图像的区域P2。由此,机器人系统101能够向用户提供边确认拍摄图像边通过寸动操作使机器人20移动的环境。
另外,对于机器人系统101而言,第1指示画面UI1具有显示作业流程的区域,第2指示画面UI2具有显示作业流程的区域。由此,机器人系统101通过抑制用户阅读手册的功夫,能够使用户进行高效的作业。
[第3实施方式]
以下,参照附图对本发明的实施方式进行说明。在本实施方式中,对与第1实施方式相同的结构部件赋予相同的附图标记来进行说明。
图25是表示本实施方式所涉及的机器人系统201的结构的图。机器人系统201具备拍摄部10、具备把持部HND(末端执行器)以及机械手MNP的单臂的机器人20、控制装置230、图像处理装置40和信息处理终端50。在本实施方式中,单臂的机器人表示具有由把持部HND和机械手MNP构成的1条臂的机器人。
机器人系统201通过拍摄部10拍摄包含机器人20把持的作业对象O的范围。作业对象O是能够由机器人20把持的物体,例如是螺钉、螺栓、齿轮、夹具等工业用的部件等,但并不局限于此,只要能够由机器人20把持,也可以是其他物体。作业对象O是工件的一个例子。机器人系统201基于拍摄包含作业对象O的范围而得到的拍摄图像来算出控制点TCP与预先设定于由机器人20把持的作业对象O的代表点OP之间的相对位置以及相对姿势(以下称为偏移)。
控制点TCP是控制装置230使机器人20的把持部HND(以及机械手MNP)移动时的表示把持部HND的位置姿势的点,在该一个例子中,是表示在设置有把持部HND的机械手MNP的端部所具备的凸轮的中心点(工具中心点)。控制点TCP是第1位置的一个例子。另外,控制点TCP是手部的规定位置的一个例子。代表点OP是由控制装置230预先设定的表示作业对象O的位置姿势的点且是作业对象O的特征点(在该一个例子中,是图25所示的角OP)。代表点OP是第2位置的一个例子。机器人系统201基于所算出的偏移,通过机器人20的机械手MNP以及把持部HND使控制点TCP移动,以使得代表点OP的位置姿势(以下,称为作业对象位置姿势)与目标点TP的位置姿势(以下,称为目标点位置姿势)一致。由此,机器人系统201通过机器人20将作业对象O以正确的位置姿势配置于目标区域TA。在以下,为了便于说明,将控制点TCP的位置姿势称为控制点位置姿势来进行说明。
这里,目标点TP是由机器人20配置作业对象O的目标区域TA中的点,并且是在作业对象O以正确的位置姿势配置于目标区域TA时与代表点OP一致的点。目标区域TA是指由机器人20配置作业对象O的区域,在图25中,设置在工作台TB上。工作台TB例如是机器人20配置作业对象O的台子等。
拍摄部10例如是具备作为将所聚光的光转换为电信号的拍摄元件的CCD(ChargeCoupled Device:电荷耦合器件)、CMOS(Complementary Metal Oxide Semiconductor:互补金属氧化物半导体)等的相机。另外,拍摄部10是单眼相机,例如也可以如立体相机那样由2台以上的相机构成。
拍摄部10通过电缆与图像处理装置40连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB等规格进行。此外,拍摄部10与图像处理装置40也可以是通过根据Wi-Fi(注册商标)等通信规格进行的无线通信连接的结构。
拍摄部10设置于在机器人20通过机械手MNP和把持部HND使作业对象O移动至规定的拍摄位置时,能够拍摄包含上述的控制点TCP和由把持部HND把持的作业对象O的代表点OP的范围(以下,称为拍摄范围)的位置。另外,在图25中,拍摄部10设置在能够从铅垂下方朝向铅垂上方拍摄上述的拍摄范围的位置。
此外,代替设置在能够从铅垂下方朝向铅垂上方拍摄上述的拍摄范围的位置的结构,拍摄部10也可以是设置在能够沿水平方向对拍摄范围进行拍摄的位置的结构,也可以是设置在能够从铅垂上方朝向铅垂下方对拍摄范围进行拍摄的位置的结构,也可以是设置在能够从其他的方向对拍摄范围进行拍摄的结构。另外,拍摄部10是拍摄静止图像来作为拍摄图像的结构,但是也可以代替此,而是拍摄动态图像来作为拍摄图像的结构。拍摄部10是拍摄装置的一个例子。
机器人20例如是具备把持部HND、机械手MNP、未图示的多个致动器的单臂的机器人。此外,代替单臂的机器人,机器人20也可以是SCARA机器人(水平多关节机器人)、双臂的机器人等。SCARA机器人是指机械手仅沿水平方向动作、仅机械手的前端的滑动轴上下动作的机器人。另外,双臂的机器人是表示具有由把持部HND和机械手MNP分别构成的2条臂的机器人。
机器人20的臂为6轴垂直多关节型,能够通过支持台和机械手MNP和把持部HND基于致动器的联合动作来进行6轴自由度的动作。此外,机器人20的臂可以以5自由度(5轴)以下进行动作,也可以以7自由度(7轴)以上进行动作。在以下,对由具备把持部HND以及机械手MNP的臂进行的机器人20的动作进行说明。此外,在机器人20的把持部HND具备能够把持物体的爪部。把持部HND是手部的一个例子。
机器人20例如通过电缆与控制装置230连接成能够通信。经由电缆的有线通信例如根据以太网(注册商标)、USB等规格进行。此外,机器人20和控制装置230也可以通过根据Wi-Fi(注册商标)等通信规格进行的无线通信来连接。另外,在机器人系统201中,机器人20是如图25所示那样与设置于机器人20的外部的控制装置230连接的结构,但也可以代替该结构,为控制装置230内置于机器人20的结构。
机器人20从控制装置230取得控制信号,基于取得到的控制信号,通过机械手MNP使由机器人20的把持部HND把持的作业对象O从目前位置移动至规定的拍摄位置。另外,机器人20从控制装置230取得控制信号,基于取得到的控制信号,通过机械手MNP使作业对象O从拍摄位置开始移动,从而配置于目标区域TA。
控制装置230通过将控制信号输出至机器人20,来控制机器人20。控制装置230控制机器人20,以使在使机器人20把持作业对象O之后,机器人20将作业对象O移动至拍摄位置。然后,控制装置230使图像处理装置40算出上述的偏移。控制装置230若从图像处理装置40取得表示偏移的信息,则基于所取得的表示偏移的信息和预先经由信息处理终端50登录于控制装置230的目标点位置姿势,算出与作业对象O相关的代表点位置姿势与目标点位置姿势一致时的控制点位置姿势(以下,称为控制点目标位置姿势)。控制装置230在算出控制点目标位置姿势之后,使机器人20移动控制点TCP,以使得控制点位置姿势与控制点目标位置姿势一致。
此外,对于机器人系统201而言,也可以代替控制装置230算出控制点目标位置姿势的结构,而为图像处理装置40算出控制点目标位置姿势的结构。在该情况下,控制装置230将预先登录于控制装置230的表示目标点位置姿势的信息输出至图像处理装置40。然后,图像处理装置40基于从控制装置230取得的目标点位置姿势和由自身装置算出的偏移,算出控制点目标位置姿势,并将表示所算出的控制点目标位置姿势的信息输出至控制装置230。
图像处理装置40根据来自控制装置230的请求,使拍摄部10拍摄上述的拍摄范围。另外,图像处理装置40若从拍摄部10取得拍摄图像,则基于所取得的拍摄图像,算出上述的偏移。图像处理装置40将表示所算出的偏移的信息输出至控制装置230。
信息处理终端50将各种信息登录(输入)至控制装置230。信息处理终端50是笔记本PC(Personal Computer:个人电脑),但也可以代替此,而是台式PC、平板PC、便携式电话终端、多功能便携式电话终端(智能手机)、PDA(Personal Digital Assistant:个人数字助理)等。信息处理终端50输出表示上述的目标点位置姿势的信息并登录(存储)于图像处理装置40。此外,信息处理终端50也可以是与图像处理装置40为一体的装置的结构。
接下来,参照图26,对图像处理装置40的硬件结构进行说明。图26是表示图像处理装置40的硬件结构的一个例子的图。图像处理装置40例如具备CPU(Central ProcessingUnit)41、存储部42、输入接受部43和通信部44,经由通信部44与控制装置230进行通信。这些结构要素经由总线Bus连结成能够相互通信。CPU41执行存储于存储部42的各种程序。
存储部42例如包括HDD(Hard Disk Drive:硬盘驱动器)、SSD(Solid StateDrive:固态硬盘)、EEPROM(Electrically Erasable Programmable Read-Only Memory:电可擦除可编程只读存储器)、ROM(Read-Only Memory:只读存储器)、RAM(Random AccessMemory:随机存取存储器)等,存储图像处理装置40进行处理的各种信息、图像、程序。此外,也可以代替存储部42内置于图像处理装置40,而是存储部40为通过USB等数字输入输出端口等连接的外置型的存储装置。
输入接受部43例如是键盘、鼠标、触摸板、其他输入装置。此外,输入接受部43也可以通过作为显示部来发挥作用而构成为触摸面板。另外,输入接受部43也可以是图像处理装置40不具备的结构。在该情况下,从控制装置230和信息处理终端50中的任意一方或双方接受向图像处理装置40的输入。
通信部44例如包括USB等数字输入输出端口、以太网端口等而构成。
接下来,通过参照图27,对图像处理装置40的功能结构进行说明。图27是表示图像处理装置40的功能结构的一个例子的图。图像处理装置40具备存储部42、通信部44、图像取得部45和控制部46。控制部46所具备的功能部中的一部分或者全部例如通过CPU41执行存储于存储部42的各种程序来实现。另外,这些功能部中的一部分或者全部也可以是LSI(Large Scale Integration:大规模集成)、ASIC(Application Specific IntegratedCircuit:专用集成电路)等硬件功能部。
图像取得部45从拍摄部10取得拍摄图像。图像取得部45将所取得的拍摄图像输出至控制部46。
控制部46具备拍摄控制部47、偏移算出部48和通信控制部49。
拍摄控制部47控制拍摄部10来对拍摄图像进行拍摄。
偏移算出部48基于由图像取得部45取得到的拍摄图像算出控制点位置姿势与作业对象位置姿势之间的偏移。
通信控制部49控制通信部44,以使其将表示由偏移算出部48算出的偏移的信息输出至控制装置230。
以下,参照图28,对图像处理装置40算出偏移的处理进行说明。图28是表示图像处理装置40算出偏移的处理的流程的一个例子的流程图。在以下,对由机器人20使作业对象O移动至拍摄位置后的处理进行说明。首先,拍摄控制部47控制拍摄部10以使其对上述的拍摄范围进行拍摄(步骤S400)。接下来,图像取得部45从拍摄部10取得在步骤S400中所拍摄到的拍摄图像,并将所取得的拍摄图像输出至控制部46(步骤S410)。
接下来,偏移算出部48基于从图像取得部45取得到的拍摄图像,算出控制点位置姿势与作业对象位置姿势之间的偏移(步骤S420)。这里,参照图29,对基于拍摄图像的控制点位置姿势与作业对象位置姿势之间的偏移的算出进行说明。图29是分别表示拍摄部10对拍摄范围进行拍摄的样子的一个例子和由拍摄部10拍摄到的拍摄图像的一个例子的图。
在图29的(A)中示出拍摄部10对拍摄范围进行拍摄的样子的一个例子。在图29的(A)中,设由把持部HND把持的作业对象O处于通过机器人20而移动到拍摄位置后的状态来进行说明。在作业对象O移动至拍摄位置之后,拍摄部10朝向图29的(A)所示的方向C对拍摄范围进行拍摄。方向C是与由把持部HND把持的作业对象O的面M正交的方向。面M表示在作业对象O被把持部HND把持时,不与设置把持部HND的凸轮F对面的一侧的面。因此,拍摄部10在面M相对于拍摄元件的平面平行的状态下对拍摄范围进行拍摄。
形成面M相对于拍摄元件的平面平行的状态的理由是,为了检测作业对象O以正确的姿势配置于目标区域TA的情况下的偏移且是控制点TCP和代表点OP投影在目标区域TA的目标区域面上时的目标区域面上(即,工作台TB的平面上)的控制点位置姿势与代表点位置姿势之间的偏移。通过像这样将偏移作为目标区域面上的偏移来处理,能够抑制控制装置230、图像处理装置40的计算成本。此外,这样的偏移的处理仅是一个例子,也可以使用其他的偏移的处理方法。
在图29的(B)中,示出由拍摄部10拍摄到的拍摄图像的一个例子。如图29的(B)所示,在拍摄图像中,面M被从正下方拍摄。另外,在拍摄图像中,包含有与作业对象O相关的代表点OP。图像处理装置40使拍摄部10拍摄图29的(B)所示那样的拍摄图像,并基于所拍摄到的拍摄图像,算出控制点位置姿势与作业对象位置姿势之间的偏移OS。
在图29的(B)中,偏移OS表示由拍摄图像上的X轴以及Y轴延展出的XY平面上的相对位置以及相对姿势。此外,图像处理装置40例如通过从拍摄图像根据图案匹配等来检测把持部HND的形状,由此检测拍摄图像上的控制点TCP的位置(即,凸轮F的中心位置)。另外,图像处理装置40例如基于未图示的机械手MNP且是拍摄图像中所包含的机械手MNP延伸的方向来检测拍摄图像上的控制点TCP的姿势。此外,图像处理装置40也可以是在检测控制点TCP的姿势时,用其他的方法来检测控制点TCP的姿势的结构。
另外,图像处理装置40例如通过图案匹配检测与作业对象O相关的代表点OP的拍摄图像上的位置。另外,图像处理装置40例如通过图案匹配检测面M的边的拍摄图像上的方向,并基于所检测出的方向检测代表点OP的拍摄图像上的姿势。此外,图像处理装置40也可以是在检测代表点OP的姿势时,用其他的方法来检测代表点OP的姿势的结构。图像处理装置40基于所检测出的拍摄图像上的控制点位置姿势和拍摄图像上的作业对象位置姿势,算出机器人坐标系中的偏移OS。此外,设拍摄图像上的坐标(像素坐标)系与机器人坐标系预先通过校准等建立对应关系。
接下来,通信控制部49控制通信部44,以使其将表示在步骤S420中由偏移算出部48算出的控制点位置姿势与作业对象位置姿势之间的偏移的信息输出至控制装置230(步骤S430)。
像这样,机器人系统201使与控制装置230分体的图像处理装置40进行用于算出控制点位置姿势与作业对象位置姿势之间的偏移的图像处理。由此,机器人系统201能够抑制由控制装置230进行的与处理相关的计算等负荷。另外,机器人系统201能够抑制控制装置230进行的通信的次数。
另外,对于机器人系统201而言,即使在伴随着控制机器人20的控制装置230版本升级等,而具备与控制装置230不同的新的控制装置X的情况下,也不需要重新创建能够由控制装置X执行的形式的程序且是与用于算出偏移的图像处理相关的程序。在该情况下,机器人系统201仅将与向图像处理装置40的信息的输入输出相关的代码写入控制装置X的控制机器人20的程序,就能够容易地算出偏移,并基于所算出的偏移控制机器人20。
如以上说明的那样,对于本实施方式所涉及的机器人系统201而言,图像处理装置40使用由拍摄部10拍摄到的拍摄图像,算出控制点位置姿势与作业对象位置姿势之间的偏移OS。由此,机器人系统201能够高效地控制机器人20。
另外,机器人系统201从拍摄图像检测控制点位置姿势。由此,机器人系统能够算出控制点位置姿势与作业对象位置姿势之间的偏移OS。
另外,机器人系统201通过图案匹配从拍摄图像检测控制点位置姿势与作业对象位置姿势之间的偏移OS。由此,机器人系统201能够通过图案匹配从拍摄图像检测控制点位置姿势与作业对象位置姿势之间的偏移OS。
以上,参照附图,对本发明的实施方式进行了详述,但是具体的结构并不局限于该实施方式,只要不脱离本发明的要旨,也可以进行变更、置换、删除等。
另外,也可以将用于实现以上说明的装置(例如,机器人系统1的指示装置5)中的任意的结构部的功能的程序记录于计算机能够读取的记录介质,使计算机系统读入该程序并执行。此外,这里所说的“计算机系统”包括OS(Operating System:操作系统)、周边设备等的硬件。另外,“计算机能够读取的记录介质”是指软盘、光磁盘、ROM(Read Only Memory:只读存储器)、CD(Compact Disk:光盘)-ROM等可移动介质、内置于计算机系统的硬盘等存储装置。并且“计算机能够读取的记录介质”也包含如在经由因特网等网络、电话线路等通信线路发送程序的情况下的成为服务器、客户端的计算机系统内部的易失性存储器(RAM:Random Access Memory:随机存取存储器)那样在一定时间内保持程序的介质。
另外,上述的程序也可以从将该程序存储于存储装置等了的计算机系统经由传送介质或者通过传送介质中的传送波而被传送至其他的计算机系统。这里,传送程序的“传送介质”是指如因特网等网络(通信网)、电话线路等通信线路(通信线)那样具有传送信息的功能的介质。
另外,上述的程序也可以用于实现上述的功能的一部分。并且,上述的程序也可以是能够通过与已经记录于计算机系统中的程序的组合来实现上述的功能的、所谓的差分文件(差分程序)。
附图标记说明:1…机器人系统、5…指示装置、10…拍摄部、20…机器人、30…控制装置、51…CPU、52…存储部、53…输入接受部、54…通信部、55…显示部、56…图像取得部、60…控制部、61…显示控制部、62…运算部、63…第1算出部、64…第2算出部、65…第3算出部、67…通信控制部、68…拍摄控制部。

Claims (4)

1.一种指示装置,其特征在于,
所述指示装置是具备进行使工件的位置及姿势与目标位置及姿势一致的动作的把持部的机器人的指示装置,
所述指示装置包括:
显示部,其显示用于设定所述把持部的控制点的位置及姿势的画面;
操作部,其操作所述画面;
运算部,其运算所述控制点的位置及姿势;以及
存储部,其存储表示由所述把持部把持的所述工件的位置及姿势与所述控制点的位置及姿势的相对的位置及姿势亦即偏移的信息,
所述画面包括:
第1画面,其用于使所述机器人动作,并使所述工件移动至拍摄装置的拍摄范围内;以及
第2画面,其用于使所述工件的位置及姿势与所述目标位置及姿势一致,
所述运算部基于通过所述操作部经由所述第1画面而接受到的操作,在所述控制点位于拍摄位置及姿势时,利用所述拍摄装置拍摄第1工件得到的第1拍摄图像计算所述偏移,
基于通过所述操作部经由所述第2画面而接受到的操作,取得使所述第1工件的位置及姿势与所述目标位置及姿势一致的所述控制点的第1位置及姿势,
基于所述第1位置及姿势与所述偏移运算基准偏移并在所述存储部中存储表示所述基准偏移的信息,
在所述控制点位于所述拍摄位置及姿势时,基于所述拍摄装置拍摄第2工件得到的第2拍摄图像、所述偏移以及所述基准偏移计算算出偏移,
基于所述算出偏移,运算所述第2工件的位置及姿势与所述目标位置及姿势一致时的所述控制点的第2位置及姿势。
2.根据权利要求1所述的指示装置,其特征在于,
所述第1画面和所述第2画面中的任意一方或双方具有显示由所述拍摄装置拍摄到的拍摄图像的区域。
3.根据权利要求1或2所述的指示装置,其特征在于,
所述第1画面和所述第2画面中的任意一方或双方具有显示作业流程的区域。
4.一种机器人系统,其特征在于,
所述机器人系统包括:
机器人,其具备进行使工件的位置及姿势与目标位置及姿势一致的动作的把持部;以及
所述机器人的指示装置,
所述指示装置包括:
显示部,其显示用于设定所述把持部的控制点的位置及姿势的画面;
操作部,其操作所述画面;
运算部,其运算所述控制点的位置及姿势;以及
存储部,其存储表示由所述把持部把持的所述工件的位置及姿势与所述控制点的位置及姿势的相对的位置及姿势亦即偏移的信息,
所述画面包括:
第1画面,其用于使所述机器人动作,并使所述工件移动至拍摄装置的拍摄范围内;以及
第2画面,其用于使所述工件的位置及姿势与所述目标位置及姿势一致,
所述运算部基于通过所述操作部经由所述第1画面而接受到的操作,在所述控制点位于拍摄位置及姿势时,利用所述拍摄装置拍摄第1工件得到的第1拍摄图像计算所述偏移,
基于通过所述操作部经由所述第2画面而接受到的操作,取得使所述第1工件的位置及姿势与所述目标位置及姿势一致的所述控制点的第1位置及姿势,
基于所述第1位置及姿势与所述偏移运算基准偏移并在所述存储部中存储表示所述基准偏移的信息,
在所述控制点位于所述拍摄位置及姿势时,基于所述拍摄装置拍摄第2工件得到的第2拍摄图像、所述偏移以及所述基准偏移计算算出偏移,
基于所述算出偏移,运算所述第2工件的位置及姿势与所述目标位置及姿势一致时的所述控制点的第2位置及姿势。
CN201510367312.0A 2014-07-01 2015-06-29 指示装置以及机器人系统 Active CN105269578B (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2014136315A JP6488571B2 (ja) 2014-07-01 2014-07-01 教示装置、及びロボットシステム
JP2014-136315 2014-07-01
JP2014-136316 2014-07-01
JP2014136316A JP2016013590A (ja) 2014-07-01 2014-07-01 教示装置、及びロボットシステム
JP2014136317A JP2016013591A (ja) 2014-07-01 2014-07-01 ロボットシステム
JP2014-136317 2014-07-01

Publications (2)

Publication Number Publication Date
CN105269578A CN105269578A (zh) 2016-01-27
CN105269578B true CN105269578B (zh) 2020-03-06

Family

ID=53510673

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510367312.0A Active CN105269578B (zh) 2014-07-01 2015-06-29 指示装置以及机器人系统

Country Status (3)

Country Link
US (2) US9981380B2 (zh)
EP (1) EP2963513B1 (zh)
CN (1) CN105269578B (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104470687A (zh) * 2012-07-20 2015-03-25 株式会社安川电机 机器人模拟器、机器人示教装置以及机器人示教方法
EP2963513B1 (en) * 2014-07-01 2022-08-24 Seiko Epson Corporation Teaching apparatus and robot system
JP6791859B2 (ja) * 2015-09-11 2020-11-25 ライフロボティクス株式会社 ロボット装置
JP6812095B2 (ja) * 2015-10-22 2021-01-13 キヤノン株式会社 制御方法、プログラム、記録媒体、ロボット装置、及び物品の製造方法
JP6333871B2 (ja) * 2016-02-25 2018-05-30 ファナック株式会社 入力画像から検出した対象物を表示する画像処理装置
CN107309871A (zh) * 2016-04-27 2017-11-03 广明光电股份有限公司 机器手臂的编程方法
KR102645817B1 (ko) * 2016-12-06 2024-03-08 한화로보틱스 주식회사 로봇의 비헤이비어 관리 방법 및 장치
US10360531B1 (en) * 2016-12-19 2019-07-23 Amazon Technologies, Inc. Robot implemented item manipulation
EP3338969A3 (en) * 2016-12-22 2018-07-25 Seiko Epson Corporation Control apparatus, robot and robot system
JP6589847B2 (ja) * 2016-12-26 2019-10-16 株式会社ダイフク 物品積載設備
JP6880982B2 (ja) * 2017-04-21 2021-06-02 セイコーエプソン株式会社 制御装置およびロボットシステム
JP6476358B1 (ja) 2017-05-17 2019-02-27 Telexistence株式会社 制御装置、ロボット制御方法及びロボット制御システム
JP7095262B2 (ja) * 2017-11-10 2022-07-05 株式会社安川電機 プログラミング支援装置、ロボットシステム及びプログラム生成方法
CN111344119B (zh) * 2017-11-27 2023-06-20 Abb瑞士股份有限公司 用于机器人的装置和方法
US11548154B2 (en) 2018-10-12 2023-01-10 Toyota Research Institute, Inc. Systems and methods for dimensionally-restricted robotic teleoperation
JP6978456B2 (ja) 2019-02-28 2021-12-08 ファナック株式会社 情報処理装置および情報処理方法
JP6997123B2 (ja) * 2019-02-28 2022-02-03 ファナック株式会社 情報処理装置および情報処理方法
JP6978457B2 (ja) 2019-02-28 2021-12-08 ファナック株式会社 情報処理装置および情報処理方法
US11648674B2 (en) * 2019-07-23 2023-05-16 Teradyne, Inc. System and method for robotic bin picking using advanced scanning techniques
US11679508B2 (en) * 2019-08-01 2023-06-20 Fanuc Corporation Robot device controller for controlling position of robot
JP7306937B2 (ja) * 2019-09-25 2023-07-11 ファナック株式会社 ロボットに支持された部材の位置を調整するロボット装置の制御装置
CN111089569B (zh) * 2019-12-26 2021-11-30 中国科学院沈阳自动化研究所 一种基于单目视觉的大型箱体测量方法
CN112405501B (zh) * 2020-11-13 2022-12-27 重庆邮电大学 含有差动轮系的混联六自由度力反馈装置

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6163946A (en) * 1981-05-11 2000-12-26 Great Lakes Intellectual Property Vision target based assembly
US4456961A (en) * 1982-03-05 1984-06-26 Texas Instruments Incorporated Apparatus for teaching and transforming noncoincident coordinate systems
JP3394278B2 (ja) * 1992-12-03 2003-04-07 ファナック株式会社 視覚センサ座標系設定治具及び設定方法
US5499306A (en) * 1993-03-08 1996-03-12 Nippondenso Co., Ltd. Position-and-attitude recognition method and apparatus by use of image pickup means
JP3070329B2 (ja) * 1993-03-31 2000-07-31 松下電器産業株式会社 産業用ロボットシステム
JPH11249725A (ja) * 1998-02-26 1999-09-17 Fanuc Ltd ロボット制御装置
JP4004222B2 (ja) 2000-11-15 2007-11-07 トヨタ自動車株式会社 作業用ロボットシステムの保全支援方法及び保全支援装置
JP2002172575A (ja) * 2000-12-07 2002-06-18 Fanuc Ltd 教示装置
US7233841B2 (en) * 2002-04-19 2007-06-19 Applied Materials, Inc. Vision system
JP4004899B2 (ja) * 2002-09-02 2007-11-07 ファナック株式会社 物品の位置姿勢検出装置及び物品取出し装置
JP3859571B2 (ja) * 2002-10-17 2006-12-20 ファナック株式会社 3次元視覚センサ
JP3805317B2 (ja) * 2003-03-17 2006-08-02 ファナック株式会社 教示位置修正方法及び教示位置修正装置
JP3842233B2 (ja) * 2003-03-25 2006-11-08 ファナック株式会社 画像処理装置及びロボットシステム
US7039498B2 (en) * 2003-07-23 2006-05-02 Newport Corporation Robot end effector position error correction using auto-teach methodology
JP2005052941A (ja) * 2003-08-05 2005-03-03 Fanuc Ltd ワーク載置装置
US8989897B2 (en) * 2004-11-19 2015-03-24 Dynalog, Inc. Robot-cell calibration
JP2006289531A (ja) 2005-04-07 2006-10-26 Seiko Epson Corp ロボット位置教示のための移動制御装置、ロボットの位置教示装置、ロボット位置教示のための移動制御方法、ロボットの位置教示方法及びロボット位置教示のための移動制御プログラム
SE529377C2 (sv) * 2005-10-18 2007-07-24 Morphic Technologies Ab Publ Metod och arrangemang för att lokalisera och plocka upp föremål från en bärare
JP4221014B2 (ja) 2006-06-20 2009-02-12 ファナック株式会社 ロボット制御装置
JP4298757B2 (ja) * 2007-02-05 2009-07-22 ファナック株式会社 ロボット機構のキャリブレーション装置及び方法
JP4844453B2 (ja) 2007-04-09 2011-12-28 株式会社デンソーウェーブ ロボットの教示装置及び教示方法
JP2009091129A (ja) * 2007-10-10 2009-04-30 Denso Corp ワーク把持具及びワーク把持具を用いたワーク搬送装置
JP2009130471A (ja) * 2007-11-20 2009-06-11 Olympus Imaging Corp 撮像装置および撮像装置の制御方法
US8180487B1 (en) * 2008-09-30 2012-05-15 Western Digital Technologies, Inc. Calibrated vision based robotic system
US8918211B2 (en) * 2010-02-12 2014-12-23 Intuitive Surgical Operations, Inc. Medical robotic system providing sensory feedback indicating a difference between a commanded state and a preferred pose of an articulated instrument
JP5382621B2 (ja) * 2010-06-03 2014-01-08 株式会社安川電機 移載装置
JP5685027B2 (ja) 2010-09-07 2015-03-18 キヤノン株式会社 情報処理装置、物体把持システム、ロボットシステム、情報処理方法、物体把持方法およびプログラム
JP5743499B2 (ja) 2010-11-10 2015-07-01 キヤノン株式会社 画像生成装置、画像生成方法、およびプログラム
JP5136624B2 (ja) * 2010-11-25 2013-02-06 カシオ計算機株式会社 撮像装置、撮像方法及びプログラム
JP5767464B2 (ja) * 2010-12-15 2015-08-19 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム
US8918210B2 (en) * 2011-03-18 2014-12-23 Denso Wave Incorporated Method of detecting an inter-axis offset of 6-axis robot
JP2012230041A (ja) 2011-04-27 2012-11-22 Seiko Epson Corp 位置検出方法、位置検出装置、ロボットシステム
JP2012254518A (ja) 2011-05-16 2012-12-27 Seiko Epson Corp ロボット制御システム、ロボットシステム及びプログラム
JP2013132726A (ja) 2011-12-27 2013-07-08 Seiko Epson Corp ロボットの制御方法、及びロボット
US9044857B2 (en) * 2012-02-14 2015-06-02 Jerry Neal Sommerville Control system that guides a robot or articulated device with a laser distance meter for 3D motion, or guides a robot or articulated device with a computer pointing device (such as a mouse) for 2D motion
JP5975685B2 (ja) * 2012-03-09 2016-08-23 キヤノン株式会社 情報処理装置、情報処理方法
JP6153316B2 (ja) 2012-11-27 2017-06-28 キヤノン株式会社 ロボットシステム及びロボットシステムの制御方法
EP2963513B1 (en) * 2014-07-01 2022-08-24 Seiko Epson Corporation Teaching apparatus and robot system
US9824908B2 (en) * 2015-05-05 2017-11-21 Kawasaki Jukogyo Kabushiki Kaisha Conveying system, conveying robot and teaching method of the same

Also Published As

Publication number Publication date
US9981380B2 (en) 2018-05-29
EP2963513A3 (en) 2016-06-29
US20160001445A1 (en) 2016-01-07
EP2963513A2 (en) 2016-01-06
CN105269578A (zh) 2016-01-27
EP2963513B1 (en) 2022-08-24
US20180236661A1 (en) 2018-08-23

Similar Documents

Publication Publication Date Title
CN105269578B (zh) 指示装置以及机器人系统
US10306149B2 (en) Image processing apparatus, robot system, robot, and image processing method
JP2016185572A (ja) ロボット、ロボット制御装置およびロボットシステム
US20170203434A1 (en) Robot and robot system
JP6488571B2 (ja) 教示装置、及びロボットシステム
US11590657B2 (en) Image processing device, control method thereof, and program storage medium
JP2018122376A (ja) 画像処理装置、ロボット制御装置、及びロボット
EP3290164A2 (en) Robot, robot control device, and robot system
KR20230065881A (ko) 로봇 교시 시스템
JP2016013590A (ja) 教示装置、及びロボットシステム
JP2023047279A (ja) 溶接線検出システム
JP2018017610A (ja) 三次元計測装置、ロボット、ロボット制御装置、及びロボットシステム
JP6578671B2 (ja) ロボット、ロボットの制御方法、及びロボットの制御装置
TWI806761B (zh) 標誌檢測裝置以及機器人示教系統
TWI822314B (zh) 焊接線檢測系統
JP7177239B1 (ja) マーカ検出装置及びロボット教示システム
JP7228070B1 (ja) 点群データ合成装置、点群データ合成プログラム、点群データ合成方法及び点群データ合成システム
JP2016013591A (ja) ロボットシステム
JP2021102252A (ja) 画像処理装置、ロボットシステム、及び画像処理方法
JP2017091295A (ja) 画像処理装置、ロボットシステム、ロボット、及び画像処理方法
JP2018034245A (ja) ロボット、ロボット制御装置、及びロボットシステム

Legal Events

Date Code Title Description
C06 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