CN108235696B - 机器人控制方法和设备 - Google Patents

机器人控制方法和设备 Download PDF

Info

Publication number
CN108235696B
CN108235696B CN201680055650.3A CN201680055650A CN108235696B CN 108235696 B CN108235696 B CN 108235696B CN 201680055650 A CN201680055650 A CN 201680055650A CN 108235696 B CN108235696 B CN 108235696B
Authority
CN
China
Prior art keywords
robot
work
information
robot motion
controlling
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
CN201680055650.3A
Other languages
English (en)
Other versions
CN108235696A (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.)
Doosan Robot Technology Co ltd
Original Assignee
Doosan Robot Technology Co ltd
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 Doosan Robot Technology Co ltd filed Critical Doosan Robot Technology Co ltd
Publication of CN108235696A publication Critical patent/CN108235696A/zh
Application granted granted Critical
Publication of CN108235696B publication Critical patent/CN108235696B/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/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert 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/1656Programme controls characterised by programming, planning systems for manipulators
    • 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
    • B25J11/00Manipulators not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/022Optical sensing devices using lasers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J19/00Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
    • B25J19/02Sensing devices
    • B25J19/021Optical sensing devices
    • B25J19/023Optical sensing devices including video camera means
    • 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/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • 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/427Teaching successive positions by tracking the position of a joystick or handle to control the positioning servo of the tool head, master-slave control
    • 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/37Measurements
    • G05B2219/37445Load teaching program from file server, enter teaching data at pendant
    • 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/09Closed loop, sensor feedback controls arm movement

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Optics & Photonics (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

提供了一种用于控制机器人的方法和设备。根据本发明的一个方面的方法可以包括以下步骤:接收关于由机器人执行的机器人运动的工作类型的信息;基于所接收的关于机器人运动的工作类型的信息来生成机器人运动的工作流;测量关于在其中通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动的工作环境的信息;接收关于通过控制机器人根据机器人运动的工作类型和工作流进行的机器人运动的工作信息;以及基于所测量的关于工作环境的信息和所接收的关于机器人运动的工作信息来通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动。

Description

机器人控制方法和设备
技术领域
本公开的示例性实施例涉及用于控制机器人的方法和装置,并且更具体地涉及用于基于关于执行机器人运动的工作环境或机器人工作的信息来控制机器人的方法和装置。
背景技术
传统的工业机器人被制造成仅在预定的工作环境中执行一种类型的工作,并且如果机器人需要执行新的工作或者机器人的工作环境发生变化,则在通过逐一输入关于这种新工作或工作环境的信息来开发新的机器人控制程序方面存在困难。特别是,由于传统的机器人控制程序基于关于机器人的详细操作的低级命令来开发,因此只有机器人驱动方面的专家可以执行它。因此,为了使机器人用户允许机器人执行新型工作,存在的问题在于,在开发新控制程序或修改传统程序是需要专家的帮助,且因此这是费时且昂贵的。
公开内容
技术问题
本公开的目的是提供一种能够在机器人的工作类型或工作环境改变时容易地控制机器人的方法或装置。
技术方案
根据用于实现目的的本公开的用于控制机器人的方法可以包括:接收关于由机器人执行的机器人运动的工作类型的信息;基于所接收的关于机器人运动的工作类型的信息来生成机器人运动的工作流;测量关于在其中通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动的工作环境的信息;接收关于通过控制机器人根据机器人运动的工作类型和工作流进行机器人运动的工作信息;以及基于所测量的关于工作环境的信息和所接收的关于机器人运动的工作信息,通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动。在此,对关于工作环境的信息的测量可以在初始安装机器人时或者在工作环境已经改变时执行。
并且,机器人可以包括机器人臂、控制机器人臂的操作的控制器、与控制器可通信地连接的示教器以及附接到机器人臂的末端的末端执行器;并且还包括关于机器人运动的执行与机器人运动的目标机器或机器人运动的外围设备进行通信。
机器人运动的工作类型与机床辅助工作、注塑机辅助工作、压机辅助工作、拾取和放置工作、螺丝组装工作、总装工作、焊接工作、压焊工作、视觉检查工作或分类工作中的至少一项有关;以及对关于工作环境的信息的测量可以包括通过机器人的接触测量设备测量关于工作环境的信息,或者当机器人通过用户的直接示教进行操作时通过机器人的接触测量设备测量关于工作环境的信息,或通过机器人的非接触测量设备测量关于工作环境的信息,该机器人的非接触测量设备可以包括相机或激光束测量设备。
接收关于机器人运动的工作信息可以包括:当机器人通过用户的直接示教进行操作时,接收基于机器人运动的信息而生成的工作信息;基于所测量的关于工作环境的信息和所接收的关于机器人运动的工作信息,通过控制机器人根据机器人运动的工作类型和工作流来执行机器人运动可以包括:生成用于执行机器人运动的工作程序,并通过运行工作程序来控制机器人运动的执行;生成用于执行机器人运动的工作程序可以包括:基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息以及机器人运动的工作类型和工作流来生成用于机器人运动的第一级命令中的至少一个;以及基于第一级命令中的至少一个生成用于机器人运动的多个第二级命令,并且第一级命令中的至少一个的每一个可以包括多个第二级命令中的至少两个的组合;第一级命令中的至少一个可以是包括接近命令、收回命令、拾取命令或放置命令中的至少一个的高级命令;多个第二级命令可以是包括末端执行器的控制命令、目标机器的控制命令、外围设备的控制命令、快速移动命令、精确移动命令、恒速移动命令、重复命令,条件确定命令和等待命令中的至少两个的低级命令;以及机器人运动的工作类型可以与机床辅助工作相关,末端执行器可以包括夹具,末端执行器的控制命令可以包括夹具打开命令或夹具关闭命令,目标机器的控制命令可以包括卡盘打开命令或卡盘关闭命令。
机器人运动的工作类型可与机床辅助工作有关;在这种情况下,关于工作环境的信息可以包括关于机床的卡盘的坐标系的信息、关于机床的门的位置的信息、关于用于执行机器人运动的机器人的初始位置的信息、或者关于其上放置有由机床处理的材料的工作托盘的位置的信息中的至少一个;关于机器人运动的工作信息可以包括与拾取在工作托盘上的材料有关的信息、与将材料装载到机床的卡盘有关的信息、与从机床的卡盘卸载由机床处理的材料的工件有关的信息、与将工件放置在工作托盘上有关的信息,或与在材料的工件上执行吹风有关的信息中的至少一个;对关于执行机器人运动的工作环境的信息的测量或对关于机器人运动的工作信息的接收可以包括使机器人的方向相对于工作托盘、机床的卡盘或机床的门中的至少一个对准;以及对关于工作环境的信息的测量可以包括通过测量参考点和关于与工作托盘的垂直方向的信息的一个至三个示教点来测量关于将由机床处理的材料的位置的信息、在机器人中建立的关于工作托盘的对尺寸、放置材料的位置之间的间隔以及从参考点到可以放置材料的最接近的位置的距离进行确定的信息,或者通过测量参考点和关于与工作托盘的垂直方向的信息的一个至三个示教点来测量关于由机床处理的材料的工件将被卸载的位置的信息、在机器人中建立的关于工作托盘的对尺寸、放置材料的位置之间的间隔以及从参考点到可以放置材料的最接近的位置的距离进行确定的信息、或者基于在机器人中建立的夹具的规则信息(诸如可捕获材料的最大直径、指长和装配角度的夹具的规格信息)来测量关于工作环境的信息。
根据用于实现目的的本公开的用于控制机器人的装置可以包括工作流生成单元,其被配置为接收关于由机器人执行的机器人运动的工作类型的信息,并且基于所接收的关于机器人运动的工作类型的信息生成机器人运动的工作流;工作环境测量单元,其测量关于在其中通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动的工作环境的信息;工作信息接收单元,其接收关于通过控制机器人根据机器人运动的工作类型和工作流进行的机器人运动的工作信息;以及机器人运动控制单元,其基于所测量的关于工作环境的信息和所接收的关于机器人运动的工作信息来通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动。
在此,工作环境测量单元可以通过机器人的接触测量设备来控制机器人以对关于工作环境的信息进行测量,或者在机器人通过用户的直接示教进行操作时通过机器人的接触测量设备来控制机器人以对关于工作环境的信息进行测量,或者包括关于工作托盘的对尺寸、放置材料的位置之间的间隔以及从参考点到材料可以放置的最接近的位置的距离进行确定的信息以及夹具的诸如可捕获材料的最大直径、指长和装配角度的规格信息中的至少一种信息,并且机器人被基于所述至少一种信息来控制,使得关于工作环境的信息由机器人的接触测量设备进行测量,或者包括关于工作托盘的对尺寸、放置材料的位置之间的间隔以及从参考点到材料可以放置的最接近的位置的距离进行确定的信息以及夹具的诸如可捕获材料的最大直径、指长和装配角度的规格信息中的至少一种信息,并且在机器人通过用户的直接示教进行操作时,基于所述至少一种信息来控制机器人,使得由机器人的接触测量设备测量关于工作环境的信息,或者包括关于工作托盘的对尺寸、放置材料的位置之间的间隔以及从参考点到材料可以放置的最接近的位置的距离进行确定的信息以及夹具的诸如可捕获材料的最大直径、指长和装配角度的规格信息中的至少一种信息,并且在机器人通过用户的直接示教进行操作时,基于所述至少一种信息来控制机器人,使得由机器人的相机或激光束测量设备测量关于工作环境的信息。
工作信息接收单元可以接收基于在机器人通过用户的直接示教进行操作时的机器人运动的信息而生成的工作信息,并且还包括基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息以及机器人运动的工作类型和工作流生成用于执行机器人运动的工作程序的工作程序生成单元;机器人运动控制单元可以基于所生成的工作程序来控制机器人的机器人运动的执行;工作程序生成单元可以基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息以及机器人运动的工作类型和工作流来生成用于机器人运动的第一级命令中的至少一个,并且基于第一级命令中的至少一个生成用于机器人运动的多个第二级命令;并且第一级命令中的至少一个的每一个可以包括多个第二级命令中的至少两个的组合。
并且,本公开还可以包括通信接口单元,该通信接口单元关于机器人运动的执行与目标机器或外围设备进行通信,并且包括计算机可读记录介质,该计算机可读记录介质存储用于使控制机器人的方法通过用于控制机器人的装置执行的程序。
有利效果
本公开提供了如下效果:当机器人的工作类型或工作环境改变时,机器人用户可以通过有效地生成或修改机器人控制程序来控制机器人。
附图简述
图1是根据本公开的一个实施例的机器人系统的示意框图。
图2是示出根据本公开的一个实施例的机器人臂的示意性外部构造的透视图。
图3是根据本公开的一个实施例的机器人控制器的示意框图。
图4是示出根据本公开的一个实施例的基于关于机器人运动的工作类型的信息生成的机器人运动的工作流的视图。
图5是示出根据本公开的一个实施例的测量和示教与机床510的卡盘520有关的机器人的工作环境的方法的透视图。
图6是示出根据本公开的另一实施例的测量和示教与机床510的门有关的机器人的工作环境的方法的透视图。
图7是示出根据本公开的一个实施例的测量和示教机器人的与工作托盘700有关的工作环境的方法的透视图。
图8是示出根据本公开的一个实施例的接收关于与工作托盘有关的机器人运动的工作信息的方法的透视图。
图9是示出根据本公开的一个实施例的接收关于与机床有关的机器人运动的工作信息的方法的透视图。
图10是示出根据本公开的另一实施例的接收关于与工作托盘有关的机器人运动的工作信息的方法的透视图。
图11是示出根据本公开的一个实施例的内置工作托盘的透视图。
图12是示出根据本公开的一个实施例的在测量机器人的工作环境时的示教器130的显示屏幕1100的视图。
图13是示出根据本公开的一个实施例的在接收关于机器人运动的工作信息时的示教器130的显示屏幕1200的视图。
图14是示出根据本公开的一个实施例的控制机器人1300的方法的流程图。
图15是示出根据本公开的一个实施例的基于用于控制机器人的工作程序1350来控制机器人运动的执行的方法的流程图。
最佳模式
本公开提供了用于基于关于其中执行机器人运动的工作环境或机器人工作的信息来控制机器人的方法和装置。在下文中,将参照附图描述适合于实现本公开的详细实施例。然而,如下所述,这仅仅是示例性的,并非对其进行限制。
详细描述
图1是根据本公开的一个实施例的机器人系统100的示意框图。机器人系统100可以包括机器人臂110、机器人控制器120、示教器130、目标机器140和外围设备150。机器人臂110可以是包括能够执行各种工作的一个或更多个接合部的多关节机器人臂,该各种工作诸如机床辅助工作、注塑机辅助工作、压机辅助工作、拾取和放置工作、螺钉组装工作、总装作业、焊接工作、压焊工作、视觉检查工作或分类工作等,但机器人臂110的构造不限于此。机器人控制器120可以被配置为控制机器人臂110的操作,并且经由任何有线或无线接口与机器人臂110通信。
在一个实施例中,机器人控制器120可以经由任何有线或无线接口与机器人运动的目标机器140或外围设备150通信。目标机器140可以包括机床、注塑机、压机等中的一个或更多个,并且外围设备150可以包括工作托盘(例如面板)、传送器等中的一个或更多个。作为包括用于控制机器人臂110的操作的用户界面的输入/输出设备的示教器130可以经由任何有线或无线接口与机器人控制器120通信。示教器130作为输入设备可以包括键盘、触摸屏等,并且作为输出设备可以包括显示器等。在图1中,机器人臂110和机器人控制器120被示出为单独的配置或设备,但是机器人臂110和机器人控制器120也可以被结合为一个设备。在本说明书中,机器人控制器120、示教器130或者机器人控制器120和示教器130的组合可以被广泛地称为用于控制机器人的装置。
图2是示出根据本公开的一个实施例的机器人臂110的示意性构造的透视图。如图所示,机器人臂110可以包括多个接合部210、220、230,以及机器人臂110的末端可以与末端执行器200附接。在图2中,末端执行器200被示出为夹具,但是末端执行器200可以包括焊炬、喷枪、螺母扳手等以及根据其中机器人臂110被执行的工作类型的家具。机器人臂110可以与可以被配置为控制机器人臂110的操作的机器人控制器120通信。在图2中,机器人臂110被示出为经由用于有线通信的线缆240与机器人控制器120连接,但是机器人臂110和机器人控制器120可以经由任何有线和/或无线接口进行通信连接。而且,在图2中,机器人臂110和机器人控制器120被示出为单独的设备,但是机器人臂110和机器人控制器120可以被结合为一个设备。机器人控制器120可以经由任何有线或无线接口与包括用户界面的示教器130进行通信。例如,如果用户在示教器130上输入用于控制机器人手臂110的命令,则机器人控制器120可以根据控制命令来控制机器人臂110。
图3是根据本公开的一个实施例的机器人控制器120的示意框图。机器人控制器120可以包括工作环境测量单元300、工作信息接收单元310和工作管理单元320。此外,机器人控制器120可以包括通信接口单元330。例如,如果机器人控制器120与作为机器人运动的目标机器140的机床通信,则通信接口单元330可以a)向机床发送确认机床的正常操作的请求,并且从机场接收对其的响应;b)将处理开始命令发送给机床,并从机床接收对其的响应;c)将卡盘打开命令发送给机床,并从机床接收对其的响应,以及d)将卡盘关闭命令发送给机床,并从机床接收对其的响应。
工作环境测量单元300可以被配置为测量关于通过控制机器人臂110根据机器人运动的工作类型和工作流执行机器人运动的工作环境的信息。例如,关于执行机器人运动的工作环境的信息可以包括关于目标机器140的位置的信息(例如,关于机床的卡盘的坐标系的信息或关于机床的门的位置的信息)、关于放置由目标机器140处理的材料的工作托盘的位置的信息、关于用于执行机器人运动的机器人(例如,图2中的机器人臂110)的初始位置或通道位置的信息等。在一个实施例中,当测量关于对于机器人臂110的初始位置的工作环境的信息时,工作环境测量单元300可以通过将机器人臂110放置在初始位置处进行移动并然后存储在该时间处的机器人臂110的空间坐标来测量关于对于机器人臂110的初始位置的工作环境的信息。类似地,当测量关于机器人臂110将在其上移动的路径的通道位置的工作环境的信息时,工作环境测量单元300可以通过将机器人臂110放置在目标通道位置处并然后存储该时间处的机器人臂110的空间坐标来测量关于对于机器人臂110的通道位置的工作环境的信息。
工作信息接收单元310可以被配置为接收关于通过控制机器人臂110根据机器人运动的工作类型和工作流进行的机器人运动的工作信息。例如,关于机器人运动的工作信息可以包括关于在工作托盘上拾取材料的信息、关于将材料装载到机床的卡盘的信息、关于将由机床处理的材料的工件从机床的卡盘卸载的信息、关于将工件放置在工作托盘上的信息、或关于为了去除材料的工件中存在的杂质而执行吹风工作的信息等。
在一个实施例中,关于机器人运动的工作信息可以是用于指定和显示机器人运动的特性的信息,例如接近、收回、拾取和放置。关于机器人运动的工作信息可以被引用或使用来控制机器人运动的模式或机制。作为一个实施例,如果关于机器人运动的工作信息是接近,则为了快速和精确地移动到目的地,机器人(例如,图2中的机器人臂110)可以被控制为以机器人可以最快地移动的快速移动模式(或高速移动模式)从初始第一点移动到中间第二点,并以可以精确地移动的精确移动模式从第二点移动到最终第三点。
作为另一实施例,如果关于机器人运动的工作信息是收回,则为了安全且快速地逃离对应位置,机器人可以被控制为以精确移动模式从初始第一点移动到中间第二点以在不错过路径的情况下完全逃离,并且以快速移动模式从中间第二点移动到最终第三点以快速逃离该位置。作为又一个实施例,如果关于机器人运动的工作信息是拾取,则为了适合于拾取在特定位置处的目标对象,机器人可以被控制为在接近模式下从初始第一点接近其中目标对象被放置的第二点,以拾取在相应位置处的目标对象,并且然后在收回模式中从第二点逃离到最终第三点。作为又一个实施例,如果关于机器人运动的工作信息是放置,则为了将目标对象放置在特定位置处,机器人可以被控制为在接近模式下从初始第一点接近其中目标对象被放置的第二点,以将拾取的目标对象放置在相应位置处,并且然后在收回模式下从第二点逃离到最终第三点。
工作管理单元320可以包括工作流生成单元340、机器人运动控制单元350和数据存储单元360。工作流生成单元340可以被配置为接收关于由机器人臂110执行的机器人运动的工作类型的信息,并且基于所接收的关于机器人运动的工作类型的信息来生成机器人运动的工作流。例如,如果工作类型是机床辅助工作,则机器人运动的工作流可以包括:a)放置在初始位置处,b)打开机床室的门,c)从工作托盘(例如,面板)拾取材料,d)通过机床室的门进入机床室,e)将拾取的材料放置在机床室内的机床的特定位置处,并且f)等待材料由机床处理以收回材料。同时,示例性地并且附加地,工作流生成单元340可以根据接收的工作类型生成不同的工作流,这些工作流包括适用于相应工作的操作,诸如注塑机辅助工作、压机辅助工作、螺钉组装工作、总装工作、焊接工作、压焊工作、视觉检查工作和分类工作。
机器人运动控制单元350可以被配置为基于对于机器人臂110的所测量的关于工作环境的信息和所接收的关于机器人运动的工作信息来控制机器人臂110以根据机器人运动的工作类型和工作流来执行机器人运动。在一个实施例中,机器人运动控制单元350可以通过基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息等根据机器人运动的工作类型和工作流在存储在数据存储单元360中的工作程序中选择适当的工作程序并运行所选择的工作程序来控制机器人臂110。
在另一个实施例中,机器人运动控制单元350可以包括工作程序生成单元(未示出),其基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息、机器人运动的工作类型和工作流等生成用于执行机器人运动的工作程序。在这种情况下,机器人运动控制单元350可以通过运行在工作程序生成单元中生成的工作程序来控制机器人臂110的操作。
工作程序生成单元可以被配置为基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息、机器人运动的工作类型和工作流等来生成用于机器人运动的第一级命令中的至少一个。在一个实施例中,第一级命令中的至少一个可以是包括接近命令、收回命令、拾取命令或放置命令中的至少一个的高级命令。例如,接近命令可以是用于机器人(例如,图2中的机器人臂110)有效地接近特定位置的高级命令,收回命令可以是用于机器人有效地逃离特定位置的高级命令,拾取命令可以是用于机器人将目标对象保持在特定位置处的高级命令,并且放置命令可以是用于机器人将目标对象放置在特定位置处的高级命令。
在一个实施例中,接近命令、收回命令、拾取命令和放置命令中的每一个可以对应于关于机器人的接近、收回、拾取和放置的工作信息。例如,如果所接收的关于机器人运动的工作信息与接近有关,则工作程序生成单元可以生成与工作信息相对应的接近命令。类似地,如果所接收的关于机器人运动的工作信息与收回、拾取或放置有关,则工作程序生成单元可以生成与工作信息相对应的收回命令、拾取命令或放置命令。
工作程序生成单元可以被配置成基于第一级命令中的至少一个生成用于机器人运动的多个第二级命令。多个第二级命令可以是低级命令,包括末端执行器的控制命令、目标机器(例如,机床)的控制命令、外围设备(例如,工作托盘或传送器)的控制命令、快速移动命令(或高速移动命令)、精确移动命令、恒速移动命令、重复命令、条件确定命令和等待命令中的至少两个。例如,如果机器人运动的工作类型是机床辅助工作,则末端执行器的控制命令可以包括作为夹具控制命令的夹具打开命令或夹具闭合命令,以及目标机器(例如,机床)的控制命令可以包括卡盘打开命令或卡盘关闭命令。
在一个实施例中,第一级命令可以包括第二级命令中的至少两个的组合。例如,作为第一级命令的接近命令可以包括作为第二级命令的快速移动命令和精确移动命令的组合。类似地,作为第一级命令的收回命令也可以包括作为第二级命令的快速移动命令和精确移动命令的组合。此外,作为第一级命令的拾取命令可以包括作为第二级命令的快速移动命令、精确移动命令或夹具控制命令的组合。类似地,作为第一级命令的放置命令也可以包括作为第二级命令的快速移动命令、精确移动命令或夹具控制命令的组合。
工作程序生成单元可以被配置为基于多个第二级命令来生成用于机器人运动的工作程序。在一个实施例中,工作程序生成单元可以被配置为基于多个第二级命令生成作为较低级命令的多个第三级命令。在这种情况下,工作程序生成单元可以被配置为基于多个第三级命令生成用于机器人运动的工作程序。
数据存储单元360可以存储机器人动作的工作类型、对于每种工作类型的机器人运动的工作流、关于执行机器人运动的工作环境的信息、关于机器人运动的工作信息等。此外,数据存储单元360可以存储可以根据每种工作类型在机器人运动控制单元350中运行的工作程序等。
图4是示出根据本公开的一个实施例的基于关于机器人运动的工作类型的信息生成的机器人运动的工作流的视图。用于控制机器人的装置(例如,图3中的工作流生成单元340)可以基于所接收的关于机器人运动的工作类型的信息来生成机器人运动的工作流。例如,如果工作类型是使用单个夹具的机床辅助工作,则如图4中所示的工作流可以被生成。参考图4,使用单个夹具的机床辅助工作的工作流可包括:将机器人臂110放置在初始位置处(步骤410),打开机床的门(步骤420),将工作托盘上的材料装载到机床(步骤430),关闭机床的门(步骤440),将机器人臂110放置在初始位置处(步骤450),等待机床的处理周期(步骤460),打开机床的门(步骤470),卸载材料的工件(步骤480)等。在卸载材料的工件后,可以将下一个材料装载到机床上。也就是说,工作托盘上的材料到机床的装载(步骤430)到材料的工件的卸载(步骤480)可以重复执行与材料被提供于工作托盘上的次数一样多的次数。同样,即使工作类型是使用双夹具的机床辅助工作,也可以生成对应的工作流,并且还可以生成对于其他工作类型的工作流。
在生成上述工作流时,必需的是示教与机床510有关的机器人的工作环境以执行每个操作。作为一个示例,必需的是将机器人臂110放置在初始位置处(步骤410)示教初始位置的坐标,并且打开机床510的门(步骤420)示教门把手的位置。此外,为了将工作托盘上的材料装载到机床上(步骤430)以及卸载材料的工件(步骤480),必需的是示教待拾取的材料的位置、装载材料的卡盘的位置、卸载材料的工件的托盘的位置等。关于机器人的工作环境的示教可以通过以直接移动机器人给出机器人的位置的直接示教和输入其坐标的间接示教来完成。
图5是示出根据本公开的一个实施例的测量和示教与机床510的卡盘520有关的机器人的工作环境的方法的透视图。参考图5,机器人臂110的末端执行器200可以保持接触测量设备500,以便示教和测量关于作为机器人的工作环境之一的机床510的卡盘520的坐标的信息。
作为一个实施例,用于控制机器人的装置(例如,图3中的工作环境测量单元300)可以通过控制机器人臂110以通过接触测量设备500来接触与机床510的卡盘520有关的一个或更多个点来测量关于机床510的卡盘520的坐标系的信息。在这种情况下,用于控制机器人的装置可以通过在特定时刻放置接触测量设备500的点的空间坐标来测量关于机床510的卡盘520的坐标的信息。
作为另一个实施例,在机器人臂110被操纵用于使触摸测量设备500通过基于操作者的直接机器人移动进行示教的直接示教来接触与机床510的卡盘520有关的一个或更多个点时,用于控制机器人的装置可以测量关于机床510的卡盘520的坐标的信息。
作为又一个实施例,用于控制机器人的装置可以使用诸如相机或激光束测量设备的非接触测量设备而不是接触测量设备500来测量关于机床510的卡盘520的坐标的信息。
图5示出了测量与机床510有关的机器人的工作环境的方法,但是用于控制机器人的装置以类似的方法也可以测量与机器人运动的其他目标机器(诸如注塑机和压机)有关的机器人的工作环境。
图6是示出根据本公开的另一实施例的测量和示教与机床510的门有关的机器人的工作环境的方法的透视图。参考图6,机器人臂110的末端执行器200可以放置成邻近门600的把手610,以便测量作为机器人的工作环境之一的机床510的门600的位置的信息。在这种情况下,为了使机器人臂110的末端执行器200推动门600的把手610以打开和关闭门600,机器人臂110的末端执行器200的方向可以自动地与门600的把手610的方向对准。
作为一个实施例,用于控制机器人的装置(例如,图3中的工作环境测量单元300)可以通过控制机器人臂110以使机器人臂110的末端执行器200推动门600的把手610打开和关闭门600来测量关于机床510的门600的位置的信息。在这种情况下,用于控制机器人的装置可以通过存储在特定时刻(诸如,机器人臂110打开门600的打开的开始、机器人臂110打开门600的打开的结束、机器人臂110关闭门600的关闭的开始、以及机器人臂110关闭门600的关闭的结束)机器人臂110被放置其上的空间坐标来测量关于机床510的门600的位置的信息。
作为另一实施例,在通过操作者的直接示教来操纵机器人臂110的末端执行器200以推动门600的把手610来打开和关闭门600的同时,用于控制机器人的装置可以测量关于机床510的门600的位置的信息。图6示出了测量与机床510的门600有关的机器人的工作环境的方法,但是用于控制机器人的装置也可以以类似的方法测量与门或机器人运动的其他目标机器(例如注塑机和压机)的其他打开/关闭设备有关的机器人的工作环境。
图7是示出根据本公开的一个实施例的测量和示教与工作托盘700有关的机器人的工作环境的方法的透视图。参考图7,机器人臂110的末端执行器200能够保持接触测量设备500,以便测量关于作为机器人的工作环境之一的材料710被放置其上的工作托盘700的位置的信息。
作为一个实施例,用于控制机器人的装置(例如,图3中的工作环境测量单元300)可以通过由接触测量设备500控制机器人臂110接触工作托盘700的一个或更多个点(例如,工作托盘700的边缘)来测量关于工作托盘700的位置的信息。在这种情况下,用于控制机器人的装置可以通过存储在特定时刻接触测量设备500被放置其上的点的空间坐标来测量关于工作托盘700的位置的信息。
作为另一实施例,当机器人臂110被操纵用于接触测量设备500通过操作者的直接示教来接触工作托盘700的一个或更多个点时,用于控制机器人的装置可以测量关于工作托盘700的位置的信息。在又一个实施例中,用于控制机器人的装置可以使用诸如相机或激光束测量设备的非接触测量设备而不是接触测量设备500来测量关于工作托盘700的位置的信息。图7示出了测量与工作托盘700有关的机器人的工作环境的方法,但是用于控制机器人的装置也可以以类似的方法测量与机器人运动的其他外围设备(诸如传送器等)有关的机器人的工作环境。
图8是示出根据本公开的一个实施例的接收关于与工作托盘700有关的机器人运动的工作信息的方法的透视图。参考图8,机器人臂110的末端执行器200可以放置成邻近工作托盘700上的材料710,以便接收关于机器人运动的工作信息(例如,与在工作托盘700上拾取材料710有关的信息)。在这种情况下,为了机器人臂110的末端执行器200拾取工作托盘700上的材料710,机器人臂110的末端执行器200的方向可以自动地与工作托盘700的方向对准。
用于控制机器人的装置(例如,图3中的工作信息接收单元310)可以接收与通过控制机器人臂110的末端执行器200来拾取在工作托盘700上的材料710来拾取在工作托盘700上的材料710有关的工作信息。通过在拾取中存储在特定时刻机器人臂110被放置的点的空间坐标,用于控制机器人的装置能够接收与拾取工作托盘700上的材料710有关的工作信息。在一个实施例中,在机器人臂110的末端执行器200被操纵以通过操作者的直接示教来拾取材料710的同时,用于控制机器人的装置可以接收与拾取工作托盘700上的材料710有关的工作信息。图8示出了接收与工作托盘700有关的机器人运动的工作信息的方法,但是用于控制机器人的装置也可以以类似的方法接收与机器人运动的其他外围设备(诸如传送器)有关的机器人的工作信息。
在一个实施例中,与拾取工作托盘700上的材料710有关的工作信息可以对应于作为用于拾取在特定位置处的目标对象的工作信息的拾取。在这种情况下,基于与拾取工作托盘700上的材料710有关的工作信息,机器人臂110可以被控制为在接近模式下从初始第一点(例如,机器人臂110的初始位置)接近其中在工作托盘700上的材料710被放置的第二点,以在对应位置处拾取材料710,并且然后在收回模式下从第二点逃离到最终第三点。
图9是示出根据本公开的一个实施例的接收关于与机床510有关的机器人运动的工作信息的方法的透视图。参考图9,保持材料710的机器人臂110的末端执行器200可以被放置成邻近机床510的卡盘520,以便接收关于机器人运动的工作信息(例如,与将材料710装载到机床510的卡盘520有关的信息)。在这种情况下,为了机器人臂110的末端执行器200将材料710装载到机床510的卡盘520上,机器人臂110的末端执行器200的方向可以自动地与机床510的卡盘520的方向对准。
用于控制机器人的装置(例如,图3中的工作信息接收单元310)可以接收与通过控制机器人臂110的末端执行器200将材料710加载到机床510的卡盘520将材料710加载到机床510的卡盘520有关的工作信息。用于控制机器人的装置可以通过存储在装载的特定时刻机器人臂110被放置的点的空间坐标来接收与将材料710加载到机床510的卡盘520有关的工作信息。
在一个实施例中,当机器人臂110的末端执行器200被操纵以通过操作者的直接示教将材料710装载到机床510的卡盘520时,用于控制机器人的装置可以接收与将材料710加载到机床510的卡盘520有关的工作信息。图9示出了接收关于与机床510的卡盘520有关的机器人运动的工作信息的方法,但是用于控制机器人的装置也可以以类似的方法接收与机器人运动的其他目标机器(例如注塑机和压机)有关的机器人的工作信息。
在一个实施例中,与将材料710装载到机床510的卡盘520有关的工作信息可对应于作为用于将目标对象放置在特定位置处的工作信息的放置。在这种情况下,基于与将材料710装载到机床510的卡盘520有关的工作信息,机器人臂110被控制为在接近模式下从初始第一点(例如,机器人臂110的初始位置)接近其中机床510的卡盘520被放置的第二点,以将拾取材料710放置在对应的位置处,并且然后在收回模式下从第二点逃离到最终第三点。
类似于接收与将材料710装载到机床510的卡盘520有关的工作信息,用于控制机器人的装置还可以接收与在材料710已经被机床510处理之后从机床510的卡盘520卸载工件有关的工作信息。在一个实施例中,与从机床510的卡盘520卸载工件有关的工作信息可以对应于作为用于在特定位置处拾取目标对象的工作信息的拾取。在这种情况下,基于与从机床510的卡盘520卸载工件有关的工件信息,机器人臂110可以被控制为在接近模式下从初始第一点接近其中机床510的卡盘520被放置的第二点,以在相应位置处拾取工件,并且然后在收回模式中从第二点逃离到最终第三点。
图10是示出根据本公开的另一实施例的接收关于与工作托盘700有关的机器人运动的工作信息的方法的透视图。参考图10,保持工件1000的机器人臂110的末端执行器200可以放置成邻近工作托盘700,以便接收关于机器人运动的工作信息(例如,与在工作托盘700上被机床510处理的工件1000的放置有关的工作信息)。在这种情况下,为了机器人臂110的末端执行器200将工件1000放置在工作托盘700上,机器人臂110的末端执行器200的方向可以自动与工作托盘700的方向对准。
用于控制机器人的装置(例如,图3中的工作信息接收单元310)可以接收与通过控制机器人臂110的末端执行器200将工件放置在托盘700上来将工件1000放置在工作托盘700上有关的工作信息。通过在工件1000在工作托盘700上的放置的操作的特定时刻存储机器人臂110被放置的点处的空间坐标,用于控制机器人的装置可以接收与工件1000在工作托盘700上的放置有关的工作信息。在一个实施例中,当机器人臂110的末端执行器200被操纵以通过操作者的直接示教将工件1000放置在工作托盘700上时,用于控制机器人的装置可以接收与工件1000在工作托盘700上的放置有关的工作信息。图10示出了接收与工作托盘700有关的机器人运动的工作信息的方法,但是用于控制机器人的装置也可以以类似的方法接收与机器人运动的其他外围设备(例如传送器)有关的机器人的工作信息。
在一个实施例中,与将工件1000放置在工作托盘700上有关的工作信息可以对应于作为用于将目标对象放置在特定位置处的工作信息的放置。在这种情况下,基于与工件1000在工作托盘700上的放置有关的工作信息,机器人臂110可以被控制为在接近模式下从工作托盘700的初始第一点接近其中工件1000被放置的第二点,以将拾取的工件1000放置在对应的位置处,并且然后在收回模式下从第二点逃离到最终第三点。
在一个实施例中,在将工件1000放置在工作托盘700上之前,可以执行吹风工作以移除工件1000的表面上的杂质等。在这种情况下,用于控制机器人的装置也可以接收与通过将机器人臂110放置在执行吹风工作的位置处并且然后存储其中机器人臂110被放置的点处的空间坐标的方式执行吹风的位置有关的工作信息。
基于以上参照图5至图10所述,为了执行图4所示的机器人运动的工作流,用于控制机器人的装置应当被测量或示教的位置(即示教点的数量)可以概括为下面的表1。
表1
Figure GDA0003990954360000171
Figure GDA0003990954360000181
参考表1,为了使机器人执行从工作托盘中拾取材料用于向机床510装载材料,需要三个示教点(坐标)来指定装载工作托盘的位置和垂直方向,并且也为了示教其中材料在装载工作托盘内放置的点,需要n个示教点。并且,需要对于门把手的开始点和结束点的示教来打开和关闭机床510的门。然而,由于打开和关闭门时,开始点成为结束点,而结束点成为开始点,因此只有两个示教点是可能的。为了将拾取的材料装载到机床510的卡盘520,可能需要:用于去除灰尘的空气吹风位置、用于指示卡盘的垂直方向的四个示教点以及指示卡盘的位置的一个示教点。
并且,为了使机床510处理材料,从卡盘520收回材料的工件,并且然后将其卸载到卸载工作托盘上,需要8+n个示教点,包括用于卸载工作托盘的位置、卸载工作托盘的垂直方向、其中材料的工件将在卸载工作托盘内被放置的位置的示教点。因此,需要总共19+2n个示教点来处理在一个装载托盘上提供的所有材料并将它们放置在卸载托盘上。
向机器人控制器120告知如此大量的示教点花费相当大的努力和时间。如果可以减少示教点,则可以有利地以简便且短的时间示教机器人运动。
本公开提供了一种最小化用于控制机器人的工作信息的方法以及基于与工作有关的信息来控制机器人的方法。可以使用内置工作托盘和内置夹具来通过根据本公开的方法减少示教点的数量。
内置工作托盘和内置夹具意味着机器人控制器120具有与工作托盘和夹具有关的内置信息。也就是说,当机器人被销售和生产时,这意味着机器人控制器120已经内置了将被交付给购买者关于内置工作托盘和内置夹具的信息。
图11是示出根据本公开的一个实施例的内置工作托盘的透视图。
参考图11,在内置工作托盘中,工作托盘的大小(x,y)、放置材料或材料的工件的位置之间的间隔(x1,y1)、从参考点到原材料或材料的工件被放置的位置的相对位置(x2,y2)等被确定。机器人在生产时已经内置了关于上述工作托盘的信息,并且如果仅示教了参考点,机器人可以自动设置将拾取材料的初始位置,并且还可以自动设置将拾取下一个材料的位置。也就是说,可以仅用一个示教点来提供用于拾取材料的所有示教信息。但是,为了在工作托盘的垂直方向上的示教的稳定性,还可以使用包括参考点的三个示教点来示教参考点与工作托盘的垂直方向。
夹具可以执行将材料或材料的工件与附接到机器人的末端执行器中的一个保持在一起的功能。如果从机器人的端点到保持材料的设备(如夹具的手指)的距离可以改变,则每次改变时都应刷新示教。因此,即使形状可以不同,但如果距离保持恒定,则每次夹具改变时并不需要执行新的示教。另外,为了使材料进入卡盘520并以卡盘520的垂直方向进行装载,夹具还需要附接到机器人的角度信息。在没有角度信息的情况下,可能需要很多示教点来识别卡盘的垂直方向。因此,如果机器人控制器120结合并使用夹具规格(诸如形状、夹具能够保持的材料的最大直径、指长和装配角度),则可以减少示教点的数量。
接下来,表2是示出使用内置工作托盘和内置夹具时的示教点数量的表格。
表2
Figure GDA0003990954360000201
比较表1和表2,能够使用内置工作托盘来减少与工作托盘有关的材料的拾取和材料的工件的卸载必需的很多工作环境信息,并且使用内置夹具减少将材料装载到机床所必需的示教点的数量。因此,使用上述示例中的内置工作托盘和内置夹具,可以将总示教点数量从19+2n大幅减少到11或15。
图12是示出根据本公开的一个实施例的在测量机器人的工作环境时的示教器130的显示屏幕1100的图。参考图12,为了测量机器人的工作环境,诸如“请输入机床卡盘的坐标系”、“请输入机床门的位置”、“请输入材料面板的坐标系”和“请输入机器人的初始位置”的消息可以在示教器130的显示屏幕1100上被输出。在一个实施例中,如果消息“请输入机床卡盘的坐标系”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120测量关于机床510的卡盘520的坐标系的信息。
在一个实施例中,如果消息“请输入机床门的位置”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120测量关于打开机床510的门600的开始位置、打开的结束位置、关闭的开始位置、关闭的结束位置等的信息。例如,如果消息“请输入机床门的位置”被选择,并且图标“打开开始位置:设定当前位置”被选择,示教器130可以与机器人控制器120进行通信,以便机器人控制器120测量关于机床510的门的打开的开始位置的信息。类似地,如果消息“请输入机床门位置”被选择,并且图标“打开结束位置:设置当前位置”、“关闭开始位置:设置当前位置”或“关闭结束位置:设定当前位置”被选择时,示教器130可以与机器人控制器120进行通信,以使机器人控制器120测量关于机床510的门的打开的结束位置、关闭的开始位置或关闭的结束位置的信息。
在一个实施例中,如果消息“请输入材料面板的坐标系”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120测量关于工作托盘700的坐标系的信息。在一个实施例中,如果消息“请输入机器人的初始位置”被选择,则示教器130可以与机器人控制器120通信以供机器人控制器120测量关于机器人臂110的初始位置的信息。
图13是示出根据本公开的一个实施例的在接收关于机器人运动的工作信息时示教器130的显示屏幕1200的视图。参考图13,为了接收关于机器人运动的工作信息,消息“请输入材料的装载位置”、“请输入工件的卸载位置”等可以在示教器130的显示屏幕1200上被输出。
在一个实施例中,如果消息“请输入材料的装载位置”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120接收拾取工作托盘700上的材料的位置信息或将材料装载到机床510的卡盘520的位置信息。例如,如果消息“请输入材料的装载位置”被选择并且图标“保持位置:设置当前位置”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120测量拾取工作托盘700上的材料的位置信息。类似地,如果消息“请输入材料的装载位置”被选择,并且图标“通道位置:设置当前位置”或“放置位置:设置当前位置”被选择,则示教器130可以与机器人控制器120通信以供机器人控制器120测量拾取材料的机器人臂110的通道位置或者将材料装载到机床510的卡盘520的位置信息。
在一个实施例中,如果消息“请输入工件的卸载位置”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120接收从机床510的卡盘520拾取工件的位置信息或将工件放置在工作托盘700上的位置信息。例如,如果消息“请输入工件的卸载位置”被选择,并且图标“保持位置:设置当前位置”被选择,则示教器130可以与机器人控制器120通信以便机器人控制器120测量从机床510的卡盘520拾取工件的位置信息。类似地,如果消息“请输入工件的卸载位置”被选择,并且图标“放置位置:设置当前位置”被选择时,则示教器130可以与机器人控制器120通信,以便机器人控制器120测量将工件放置在工作托盘700上的位置信息。
如上所述,描述了使用示教器130输入机器人的工作环境信息的方法,但也可以使用具有触摸屏的示教器130来控制机器人运动。在这种情况下,机器人可以以二维或三维的形式显示在示教器130上,并且可以使用屏幕触摸来示教或控制机器人运动。
作为一个示例,可以定义点动功能用户界面。点动功能包括联结点动功能和任务点动功能,并且任务点动功能可以再次分为对于全局坐标的命令和对于局部坐标的命令。此外,可以将对于机器人或人的位置的示教器130转换成方位角并用于主动改变对于实际模拟器的视角。通过调整视角可以调整观察到机器人的哪一部分。也就是说,通过调整视角,可以在示教器130的屏幕上进行显示,就好像看着机器人的侧面或从正面看过去一样。
作为使用联结点动功能进行机器人控制的一个实现示例,例如,通过触摸/拖动示教器130的屏幕上的空白空间,可以首先在示教器130的屏幕上显示机器人移动的联结或链接来调整视角。并且,可以直接选择要在示教器130的屏幕上移动的联结或链接。示教器130可以将所选择的联结或链接显示为活动状态,其可以与机器人的其他部分以不同的颜色显示。接下来,响应于在选择联结或链接时弹出的动作方向箭头而选择的联结或者链接可以在要移动的方向上拖动。也就是说,联结移动的方向由连接拖动的起点和终点的矢量的方向(在下文中称为拖动矢量)确定。命令可以与通过滑块设置的从点动速度0到点动最高速度的拖动矢量的大小成比例地生成。点动最高速度可以使用滑动条进行设置。当联结或链接被选择时,可以在相应的联结位置弹出指示旋转的箭头,从而也可以通过箭头生成点动命令。也可以启动默认视图按钮,以在示教器130中或在用户的取向中观看机器人的方式在示教器130的屏幕上显示机器人。
作为使用任务点动功能的机器人控制的一个实现示例,例如,可以存在使用投影屏幕的用于线性移动的任务点动功能和用于旋转移动的任务点动功能,以及使用等距屏幕的用于线性移动的任务点动功能和用于旋转移动的任务点动功能。
在使用投影屏幕的用于线性移动的任务点动功能中,示教器130的基本屏幕配置可以被分成xy平面、yz平面、zx平面以及相对于机器人的等距视图。如有必要,可以使用等距视图中的默认视图按钮在用户的取向中查看机器人的形式显示屏幕。可以使用全局/局部切换按钮选择机器人的xy平面、yz平面和zx平面的视图,并且全局/局部按钮可以相互独立激活。每个平面上的拖动动作可以在激活的坐标系(全局/局部)中生成点动命令。点动命令的大小与拖动矢量的大小(从起点到终点的线段长度)成比例地生成,并且不能超过设置的最大点动速度。可以通过拖动矢量的水平/垂直轴分量转换为对应的点动命令来执行该操作,并且如在联结点动中可以使用滑动条重置所设置的最大点动速度。特定平面上的命令仅在对应的平面上生成点动命令。例如,xy平面上的拖动矢量不能生成z方向命令,同样地,yz平面和zx平面上的点动运动也不能分别在x和y方向上生成非零命令。通过在xy平面、yz平面和zx平面的水平/垂直轴的边缘上放置死区,水平轴的死区上的拖动不能生成垂直轴命令,并且垂直轴的死区上的拖动不能生成水平轴命令。
使用投影屏幕的用于旋转移动的任务点动功能可以通过切换所需的坐标系(全局/局部)来选择,并且点动命令的生成与如上所述的使用投影屏幕的用于线性移动的任务点动相同,但是点动命令的转换可以通过使与点动矢量垂直的线段成为旋转轴并且使旋转方向与拖动矢量的方向匹配来进行。旋转的角速度与拖动矢量的大小成比例,并且不能超过预定的点动最高速度。点动最高速度可以通过滑动条重置。
在使用等距屏幕的用于线性移动的任务点动功能中,如有必要,屏幕也可以使用默认视图按钮在示教器130中或在人的取向上查看机器人的方式进行显示。如果选择了等距视图屏幕,则根据对全局/局部坐标系的选择,对应的坐标系可显示在示教器的终端上。通过从坐标系的中心拖动到每个坐标系的单位矢量方向来执行点动命令以生成拖动矢量。点动的大小与拖动矢量的大小成比例,并且不能像以前那样超过由滑动条预定的点动最高速度。
如果使用等距屏幕的用于旋转移动的任务点动功能在旋转已被切换的状态下选择了等距屏幕,则可以弹出所切换的坐标系的轴和动作箭头。然后,可以首先选择期望的旋转移动轴。除了所选择的轴和对应的动作箭头外,颜色可以不同以指示尚未被选择。通过沿着所选择的旋转轴的动作箭头拖动可以生成点动命令。点动速度与沿着拖动矢量或动作箭头移动的距离成比例地生成,并且不能超过通过滑动条预定的点动最高速度。
如上所述,当使用具有触摸屏的示教器130时,可以容易地执行对机器人的示教和控制。
图14是根据本公开的一个实施例的控制机器人1300的方法的流程图。在下文中,应该注意的是,在图14和图15中的流程图中示出的步骤是示例性的,每个步骤可以被组合、分离和省略,并且每个步骤的顺序可以改变。首先,用于控制机器人的装置可以接收关于由机器人执行的机器人运动的工作类型的信息(步骤1310)。在一个实施例中,用于控制机器人的装置可以包括图1中所示的机器人控制器120和/或示教器130。
用于控制机器人的装置可以基于所接收的关于机器人运动的工作类型的信息来生成机器人运动的工作流(步骤1320)。在这种情况下,用于控制机器人的装置(例如,图3中的工作流生成单元340)可以根据所接收的机器人运动的工作类型生成包括不同操作的工作流。例如,如果所接收的工作类型是机床辅助工作,则用于控制机器人的装置可以生成包括以下项的工作流:a)放置在初始位置处,b)打开机床室的门,c)从工作托盘(例如面板)拾取材料,d)通过机床室的门进入机床室,e)将拾取的材料放置在机床室内的机床的特定位置处,以及f)等待材料由机床处理以收回材料。同时,其是示例性地且另外地,用于控制机器人的装置能够根据所接收的工作类型(例如注塑机辅助工作、压机辅助工作、螺钉组装工作、焊接工作、压焊工作和视觉检查工作)生成包括适合于对应的工作的操作的不同的工作流。
并且,用于控制机器人的装置可以测量关于通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动的工作环境的信息(步骤1330)。在这种情况下,用于控制机器人的装置(例如,图3中的工作环境测量单元300)可以以接收在其中工作机器人(例如,图2中的机器人臂110)在构成工作流的特定操作中被放置的特定点的形式来测量关于工作环境的信息。例如,当测量关于其中放置待拾取材料的工作托盘(例如,面板)的位置的工作环境信息时,用于控制机器人的装置可以测量指示通过将机器人臂110放置在工作托盘上的特定点处并将空间坐标存储在对应位置处来拾取材料的工作托盘的位置的工作环境信息。
或者,当测量关于在其中机器人臂110将被移动的目的地的工作环境信息时,用于控制机器人的装置可以通过将机器人臂110放置在目的地处以进行移动并存储其在该时刻的空间坐标来测量关于机器人臂110的目的地的工作环境信息。或者,在测量关于在其上机器人臂110将被移动的路径上的通道点的工作环境信息时,用于控制机器人的装置能够测量关于在通过将机器人臂110放置在目标通道点处并存储其在该时刻的空间坐标来移动机器人臂110时的通道点的工作环境信息。在这种情况下,机器人臂110可以被控制以穿过所存储的通道点。
例如,如果工作类型是机床辅助工作,则可以根据上述工作流来测量关于工作环境的信息。为了更详细地描述上述工作流的每个步骤,a)为了放置在初始位置处,可以指定机器人应该在工作开始时的位置。可以通过使用上述方法测量其空间坐标来示教初始位置的指定,但是如果使用机器人中内置的每个应用的推荐位置,则即使没有示教也可以获得关于初始位置的工作环境信息。b)为了打开机床室的门,应测量关于门把手的开始位置和结束位置的工作环境信息。如上所述,这可以通过将机器人臂110放置在开始位置和结束位置处并且存储其在该时刻的空间坐标来测量工作环境信息。c)为了从工作托盘(例如面板)拾取材料,应测量放置材料的坐标。为了这个目的,通过仅示教使用内置工作托盘的参考点,或者通过仅示教包括参考点的三个点以便测量关于工作托盘的垂直方向的稳定工作环境信息,关于材料的位置的工作环境信息可以很容易地被测量。d)为了通过机床室的门进入机床室,以及e)将拾取的材料放置在机床室内的机床的特定位置上,需要对机床室内的卡盘520的位置和垂直方向的测量。如上所述,这可以通过使机器人臂110的夹具沿卡盘520的垂直方向移动然后存储其空间坐标来进行测量。另外,可以进行用于移除材料中的杂质的吹风工作的位置可以被添加作为通道。f)在等待材料由机床处理以收回材料时,必须测量材料工件将被放置的托盘内的位置。为此,通过仅示教使用内置工作托盘的参考点,或者通过仅示教包括参考点的三个点以便测量关于工作托盘的垂直方向的稳定工作环境信息,关于材料工件的位置的工作环境信息可以容易地被测量。
如上所述,根据工作流对工作环境信息的测量可能是费力且耗时的工作。然而,通过使用内置工作托盘和/或与机器人内置规格相匹配的内置夹具,可以显著减少测量工作环境信息的时间。
并且,用于控制机器人的装置(例如,图3中的工作信息接收单元310)可以接收关于通过控制机器人根据机器人运动的工作类型和工作流进行的机器人运动的工作信息(步骤1340)。在这种情况下,关于机器人运动的工作信息可以是用于指定或指示机器人运动(诸如接近、收回、拾取和放置)的特性的信息。关于机器人运动的工作信息可以被参考或被用于控制机器人运动的模式或机制。作为一个实施例,如果关于机器人运动的工作信息是接近,为了快速且精确地移动到目的地,机器人可以被控制为以快速移动模式(机器人可以以最快的速度移动)从初始第一点移动到中间第二点,并且以可以精确移动的精确移动模式从第二点移动到最终第三点。
作为另一实施例,如果关于机器人运动的工作信息是收回,为了安全且快速地逃离对应位置,机器人可以被控制为以精确移动模式从初始第一点移动到中间第二点从而在不错过路径的情况下完全终离,并且以快速移动模式从中间第二点移动到最终第三点从而快速逃离该位置。作为又一个实施例,如果关于机器人运动的工作信息是拾取,为了适合于拾取特定位置处的目标对象,机器人可以被控制为在接近模式下从初始第一点接近其中目标对象被放置的第二点,以拾取对应位置处的目标对象,并且然后在收回模式下从第二点逃离到最终第三点。作为又一个实施例,如果关于机器人运动的工作信息是放置,为了适于将目标对象放置在特定位置处,机器人可以被控制为在接近模式下从初始第一点接近其中目标对象被放置的第二点,以将拾取的目标对象放置在对应的位置处,并且然后在收回模式下从第二点逃离到最终第三点。
用于控制机器人的装置可以基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息等通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动(步骤1350)。在一个实施例中,用于控制机器人的装置可以通过基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息等根据机器人运动的工作类型和工作流选择适当的工作程序并执行所选择的工作程序来控制机器人运动的执行。在另一实施例中,用于控制机器人的装置可以通过基于所测量的关于工作环境的信息、所接收的关于机器人运动的工作信息等根据机器人运动的工作类型和工作流生成用于执行机器人运动的工作程序并运行所生成的工作程序来控制机器人运动的执行。
接下来,用于控制机器人的装置可以确定机器人运动的工作类型是否已经改变(步骤1360)。如果确定机器人运动的工作类型已经改变,则用于控制机器人的装置可以再次接收关于由机器人执行的机器人运动的工作类型的信息(步骤1310),并且如果确定机器人运动的工作类型没有改变,则用于控制机器人的装置可以确定其中执行机器人运动的工作环境是否已经改变(步骤1370)。如果确定其中执行机器人运动的工作环境已经改变,则用于控制机器人的装置可以再次测量关于通过控制机器人根据机器人运动的工作类型和工作流执行机器人运动的工作环境的信息(步骤1330),并且如果确定执行机器人运动的工作环境没有改变,则用于控制机器人的装置可以确定关于机器人运动的工作信息已经改变(步骤1380)。如果确定关于机器人运动的工作信息已经改变,则用于控制机器人的装置可以再次接收关于通过控制机器人根据机器人运动的工作类型和工作流进行的机器人运动的工作信息(步骤1340),并且如果确定关于机器人运动的工作信息没有改变,则用于控制机器人的装置可以基于所测量的关于工作环境的信息和所接收的关于机器人运动的工作信息通过控制机器人根据机器人运动的工作类型和工作流连续执行机器人运动(步骤1350)。
在此,如果工作环境被改变以再次测量关于工作环境的信息,则可以再次使用传统的测量结果。如果在重复相同的工作的同时仅改变要处理的材料的尺寸或仅改变托盘的位置,则仅被改变的部分被纠正而相同的部分按现有情况工作而可以在不需要测量的情况下使用。由于获取关于工作环境的信息而进行的测量工作需要很多精力和时间,因此可以通过不对未改变的部分进行测量来减少所需的时间和精力。此外,可以存储过去的测量结果,并在执行类似工作时使用过去的测量结果。
图15是示出根据本公开的一个实施例的基于用于控制机器人的工作程序1350来控制机器人运动的执行的方法的流程图。首先,用于控制机器人的装置(例如,图3中的机器人运动控制单元350)可以基于所测量的关于工作环境的信息、所接收的关于工作运动的工作信息以及机器人运动的工作类型和工作流来生成用于机器人运动的第一级命令中的至少一个(步骤1400)。在一个实施例中,第一级命令中的至少一个可以是包括接近命令、收回命令、拾取命令或放置命令中的至少一个的高级命令。例如,接近命令可以是用于机器人(例如,图2中的机器人臂110)有效地接近特定位置的高级命令,收回命令可以是用于机器人有效地逃离特定位置的高级命令,拾取命令可以是机器人将目标对象保持在特定位置处的高级命令,并且放置命令可以是用于机器人将目标对象放置在特定位置处的高级命令。
在一个实施例中,接近命令、收回命令、拾取命令和放置命令中的每一个可以对应于机器人的接近、收回、拾取和放置的工作信息。例如,如果所接收的机器人运动的工作信息与接近有关,则用于控制机器人的装置可以响应于工作信息生成接近命令。类似地,如果所接收的机器人运动的工作信息与收回、拾取或放置有关,则用于控制机器人的装置可响应于工作信息生成收回命令、拾取命令或放置命令。
用于控制机器人的装置可以基于第一级命令中的至少一个生成用于机器人运动的多个第二级命令(步骤1410)。多个第二级命令可以是低级命令,包括末端执行器的控制命令、目标机器(例如,机床)的控制命令、外围设备(例如,工作托盘或传送器)的控制命令、快速移动命令(或高速移动命令)、精确移动命令、恒速移动命令、重复命令、条件确定命令和等待命令中的至少两项。例如,如果机器人运动的工作类型是机床辅助工作,则末端执行器的控制命令可以包括作为夹具控制命令的夹具打开命令或夹具关闭命令,以及机床的控制命令可以包括卡盘打开命令或卡盘关闭命令。
在一个实施例中,第一级命令可以包括第二级命令中的至少两个的组合。例如,作为第一级命令的接近命令可以包括作为第二级命令的快速移动命令和精确移动命令的组合。类似地,作为第一级命令的收回命令也可以包括作为第二级命令的快速移动命令和精确移动命令的组合。此外,作为第一级命令的拾取命令可以包括作为第二级命令的快速移动命令、精确移动命令或夹具控制命令的组合。类似地,作为第一级命令的放置命令也可以包括作为第二级命令的快速移动命令、精确移动命令或夹具控制命令的组合。
用于控制机器人的装置可以基于多个第二级命令生成用于机器人运动的工作程序(步骤1420)。在一个实施例中,用于控制机器人的装置可以基于多个第二级命令生成作为较低级命令的多个第三级命令。在这种情况下,用于控制机器人的装置可以被配置成基于多个第三级命令来生成用于机器人运动的工作程序。用于控制机器人的装置可以基于所生成的工作程序来控制机器人运动的执行(步骤1430)。
本领域的技术人员将认识到,结合本文所公开的配置所描述的各种说明性块、设备或操作可以被实现为电子硬件、计算机软件或其组合。这些块、设备或操作可以被实现或被执行为处理器、数字信号处理器(DSP)、专用集成电路(ASIC)或专用标准产品(ASSP)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立门或晶体管逻辑、分立硬件部件或其被设计成产生如本文所公开的配置的任何组合。处理器可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或更多个微处理器与DSP内核的结合、或者任何其他配置。计算机软件或程序可以存储在诸如随机存取存储器(RAM)、只读存储器(ROM)、诸如闪存RAM的非易失性RAM、可擦除和可编程ROM(EPROM)、电可擦除和可编程ROM(EEPROM)、寄存器、硬盘、可移动磁盘、CD-ROM的计算机可读介质中或本领域中已知的任何其他形式的存储介质中,并且可以由诸如处理器或DSP的逻辑元件阵列执行。示例性存储介质可耦合到处理器,且处理器可从存储介质读取信息及将信息写入到存储介质。作为替代方案,存储介质可以与处理器集成在一起。处理器和存储介质可以位于ASIC内。ASIC可以位于用户终端内。作为替代方案,处理器和存储介质可以作为分立部件驻留在用户终端中。
本文公开的方法和技术可以体现在例如本文列举的一个或更多个计算机可读记录介质中,作为可由包括逻辑元件阵列(例如,处理器、微处理器、微控制器或其他有限状态机等)的一个或更多个命令的集合。“计算机可读记录介质”可以包括任何介质,包括能够存储或传输信息的易失性、非易失性、可移动或不可移动介质。计算机可读记录介质的示例可以包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘或其他磁存储设备、CD-ROM/DVD或其他光存储设备、硬盘、光纤介质、射频(RF)链路或可用于存储和访问所需信息的任何其他介质。由机器可执行的命令的一个或更多个集合中的全部或一部分可以通过诸如因特网或内联网之类的计算机网络下载。
尽管已经参照附图中示出的用于理解本公开的各种实施例描述了上述实施例,但是将理解的是,其不限于此,并且各种修改和等同实施例也可以被本领域技术人员做出。因此,对本领域中的技术人员要理解的是,可以做出各种修改和其他等效的实施例而不偏离如在所附权利要求中限定的本公开的精神和范围。

Claims (21)

1.一种控制机器人的方法,包括:
接收关于由所述机器人执行的机器人运动的工作类型的信息;
基于所接收的关于所述机器人运动的所述工作类型的信息来生成所述机器人运动的工作流;
获取关于在其中通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流执行所述机器人运动的工作环境的信息;
获取关于通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流进行的所述机器人运动的工作信息;和
基于所测量的关于所述工作环境的信息和所接收的关于所述机器人运动的工作信息来通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流来执行所述机器人运动,
其中,所述方法还包括:
确定所述机器人运动的所述工作类型是否已经改变,
如果确定所述机器人运动的所述工作类型已经改变,则再次接收关于由所述机器人执行的所述机器人运动的所述工作类型的信息,
如果确定所述机器人运动的所述工作类型没有改变,则确定其中执行所述机器人运动的所述工作环境是否已经改变,
如果确定其中执行所述机器人运动的所述工作环境已经改变,则再次测量关于其中通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流执行所述机器人运动的所述工作环境的信息,
如果确定其中执行所述机器人运动的所述工作环境没有改变,则确定关于所述机器人运动的工作信息是否已经改变,
如果确定关于所述机器人运动的工作信息已经改变,则再次接收关于通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流进行的所述机器人运动的工作信息,
如果确定关于所述机器人运动的工作信息没有改变,则基于所测量的关于所述工作环境的信息和所接收的关于所述机器人运动的工作信息通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流连续执行所述机器人运动。
2.根据权利要求1所述的控制机器人的方法,
其中,当所述机器人初始安装时,执行对关于所述工作环境的信息的获取。
3.根据权利要求1所述的控制机器人的方法,还包括关于所述机器人运动的执行与所述机器人运动的目标机器或外围设备进行通信。
4.根据权利要求1所述的控制机器人的方法,
其中,获取关于所述工作环境的信息包括:通过所述机器人的接触测量设备来获取关于所述工作环境的信息。
5.根据权利要求1所述的控制机器人的方法,
其中,获取关于所述工作环境的信息包括:通过所述机器人的非接触测量设备获取关于所述工作环境的信息。
6.根据权利要求1所述的控制机器人的方法,
其中,获取关于所述工作环境的信息包括:当所述机器人通过用户的直接示教进行操作时,通过所述机器人的接触测量设备或非接触测量设备来获取关于所述工作环境的信息。
7.根据权利要求3所述的控制机器人的方法,
其中,基于所获取的关于所述工作环境的信息和所获取的关于所述机器人运动的工作信息来通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流来执行所述机器人运动包括:
生成用于执行所述机器人运动的工作程序;和
通过运行所述工作程序来控制所述机器人运动的执行。
8.根据权利要求7所述的控制机器人的方法,
其中,生成用于执行所述机器人运动的所述工作程序包括:
基于所测量的关于所述工作环境的信息、所接收的关于所述机器人运动的工作信息以及所述机器人运动的所述工作类型和所述工作流来生成对于所述机器人运动的第一级命令中的至少一个;和
基于所述第一级命令中的至少一个生成用于所述机器人运动的多个第二级命令,以及
其中,所述第一级命令中的至少一个的每一个包括所述多个第二级命令中的至少两个的组合。
9.根据权利要求1所述的控制机器人的方法,
其中,所述机器人运动的所述工作类型与机床辅助工作有关,以及
其中,关于所述工作环境的信息包括以下中的至少一项:关于所述机床的卡盘的坐标系的信息、关于所述机床的门的位置的信息、关于用于执行所述机器人运动的所述机器人的初始位置的信息或者关于在其上放置有由所述机床处理的材料的工作托盘的位置的信息。
10.根据权利要求9所述的控制机器人的方法,
其中,关于所述机器人运动的所述工作信息包括以下中的至少一项:与将所述材料拾取到所述工作托盘有关的信息、与将所述材料装载到所述机床的卡盘有关的信息、与将由所述机床处理的材料的工件从所述机床的卡盘卸载有关的信息、与将所述工件放置在所述工作托盘上有关的信息、或与在所述材料的工件上执行吹风有关的信息。
11.根据权利要求9所述的控制机器人的方法,
其中,获取关于其中执行所述机器人运动的所述工作环境的信息或者接收关于所述机器人运动的所述工作信息包括:
将所述机器人的方向相对于所述工作托盘、所述机床的卡盘或所述机床的门中的至少一个对准。
12.根据权利要求9所述的控制机器人的方法,
其中,获取关于所述工作环境的信息包括:
通过测量参考点和关于所述工作托盘的垂直方向的信息的一个、两个或三个示教点、在所述机器人中建立的关于所述工作托盘的对所述材料的尺寸、放置所述材料的位置之间的间隔以及从所述参考点到能够放置所述材料的最接近的位置的距离进行确定的信息,来获取关于待由所述机床处理的所述材料的位置的信息。
13.根据权利要求9所述的控制机器人的方法,
其中,获取关于所述工作环境的信息包括:
通过测量参考点和关于所述工作托盘的垂直方向的信息的一个、两个或三个示教点、在所述机器人中建立的关于所述工作托盘的对所述材料的尺寸、放置所述材料的位置之间的间隔以及从所述参考点到能够放置所述材料的最接近的位置的距离进行确定的信息,来获取关于由所述机床处理的所述材料的工件将被卸载的位置的信息。
14.一种用于控制机器人的装置,包括:
工作流生成单元,所述工作流生成单元被配置为接收关于由所述机器人执行的机器人运动的工作类型的信息,并且基于所接收的关于所述机器人运动的所述工作类型的信息来生成所述机器人运动的工作流;
工作环境测量单元,所述工作环境测量单元获取关于在其中通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流执行所述机器人运动的工作环境的信息;
工作信息接收单元,所述工作信息接收单元获取关于通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流进行的所述机器人运动的工作信息;和
机器人运动控制单元,所述机器人运动控制单元基于所测量的关于所述工作环境的信息和所接收的关于所述机器人运动的工作信息通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流来执行所述机器人运动,
其中,所述工作环境测量单元获取包括用于通过以用户直接移动所述机器人给出所述机器人的位置的所述用户的直接示教来执行所述机器人运动的初始位置、路径上的通道位置和结束位置的关于所述工作环境的信息,并且
其中,所述工作信息接收单元获取基于通过所述用户的直接示教移动的所述机器人的运动信息而生成的工作信息,所述工作信息包括所述机器人运动的特性,
其中,所述装置:
确定所述机器人运动的所述工作类型是否已经改变,
如果确定所述机器人运动的所述工作类型已经改变,则再次接收关于由所述机器人执行的所述机器人运动的所述工作类型的信息,
如果确定所述机器人运动的所述工作类型没有改变,则确定其中执行所述机器人运动的所述工作环境是否已经改变,
如果确定其中执行所述机器人运动的所述工作环境已经改变,则再次测量关于其中通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流执行所述机器人运动的所述工作环境的信息,
如果确定其中执行所述机器人运动的所述工作环境没有改变,则确定关于所述机器人运动的工作信息是否已经改变,
如果确定关于所述机器人运动的工作信息已经改变,则再次接收关于通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流进行的所述机器人运动的工作信息,
如果确定关于所述机器人运动的工作信息没有改变,则基于所测量的关于所述工作环境的信息和所接收的关于所述机器人运动的工作信息通过控制所述机器人根据所述机器人运动的所述工作类型和所述工作流连续执行所述机器人运动。
15.根据权利要求14所述的用于控制机器人的装置,
其中,所述工作环境测量单元控制所述机器人使得关于所述工作环境的信息由所述机器人的接触测量设备进行测量。
16.根据权利要求14所述的用于控制机器人的装置,
其中,所述工作环境测量单元控制所述机器人使得关于所述工作环境的信息由所述机器人的相机或激光束测量设备进行测量。
17.根据权利要求15所述的用于控制机器人的装置,
其中,所述工作环境测量单元包括关于工作托盘的对材料的尺寸、所述材料被放置的位置之间的间隔和从参考点到所述材料能够被放置的最接近的位置的距离进行确定的信息、和夹具的规格信息中的至少一种信息,并且所述机器人被基于所述至少一种信息来控制,使得关于所述工作环境的信息由所述机器人的所述接触测量设备测量。
18.根据权利要求14所述的用于控制机器人的装置,
其中,所述工作环境测量单元在所述机器人通过所述用户的直接示教根据所述机器人运动的工作类型和工作流进行操作时获取关于所述工作环境的信息。
19.根据权利要求14所述的用于控制机器人的装置,还包括:工作程序生成单元,所述工作程序生成单元基于所测量的关于所述工作环境的信息、所接收的关于所述机器人运动的工作信息以及所述机器人运动的所述工作类型和所述工作流生成用于执行所述机器人运动的工作程序;以及
其中,所述机器人运动控制单元基于所生成的工作程序来控制所述机器人的所述机器人运动的执行。
20.根据权利要求14所述的用于控制机器人的装置,还包括通信接口单元,所述通信接口单元关于所述机器人运动的执行与目标机器或外围设备进行通信。
21.根据权利要求17所述的用于控制机器人的装置,其中,所述夹具的所述规格信息是可捕获材料的最大直径、所述夹具的指长和装配角度。
CN201680055650.3A 2015-09-25 2016-10-14 机器人控制方法和设备 Active CN108235696B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150136814A KR20180015774A (ko) 2015-09-25 2015-09-25 로봇 제어 방법 및 장치
PCT/KR2016/011591 WO2017052350A2 (ko) 2015-09-25 2016-10-14 로봇 제어 방법 및 장치

Publications (2)

Publication Number Publication Date
CN108235696A CN108235696A (zh) 2018-06-29
CN108235696B true CN108235696B (zh) 2023-04-25

Family

ID=58386528

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680055650.3A Active CN108235696B (zh) 2015-09-25 2016-10-14 机器人控制方法和设备

Country Status (5)

Country Link
US (1) US11185984B2 (zh)
EP (1) EP3354418B1 (zh)
KR (2) KR20180015774A (zh)
CN (1) CN108235696B (zh)
WO (1) WO2017052350A2 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017118985B4 (de) * 2017-04-23 2019-10-02 Franka Emika Gmbh Schraubvorrichtung
WO2018213931A1 (en) 2017-05-25 2018-11-29 Clearpath Robotics Inc. Systems and methods for process tending with a robot arm
WO2019084686A1 (en) 2017-10-31 2019-05-09 Clearpath Robotics Inc. Systems and methods for operating robotic equipment in controlled zones
WO2019218057A1 (en) 2018-05-13 2019-11-21 Robotiq Inc. Robotic gripper
CN108857093A (zh) * 2018-07-24 2018-11-23 湖北三江航天红阳机电有限公司 利用机器人激光切割的方法及装置
IL261097B (en) * 2018-08-10 2021-06-30 Tinyinspektor Ltd System and method for positioning a device for visual inspection of a production line
DE102018122376B3 (de) * 2018-09-13 2019-11-07 Pilz Gmbh & Co. Kg Verfahren und Vorrichtung zur kollisionsfreien Bewegungsplanung eines Manipulators
CN109035740A (zh) * 2018-09-27 2018-12-18 上海节卡机器人科技有限公司 机器人的控制方法、装置和远程控制系统
CN113348416A (zh) * 2019-01-18 2021-09-03 卡罗利·西普卡 测量系统和与测量系统相关的方法
US20220152840A1 (en) * 2019-03-22 2022-05-19 Máquinas Sanmartin Ltda Device for handling products in individual or grouped containers based on movement by elastic pressure in the top of the containers
CN111823238B (zh) * 2020-06-10 2021-12-28 杭州凯尔达机器人科技股份有限公司 机器人时序控制方法、电源时序管理单元以及控制系统
WO2022241550A1 (en) 2021-05-17 2022-11-24 Cobionix Corporation Proximity sensing autonomous robotic systems and apparatus
JP7012181B1 (ja) 2021-06-15 2022-02-14 Dmg森精機株式会社 ロボットシステム
JP2024005094A (ja) * 2022-06-29 2024-01-17 川崎重工業株式会社 ロボット教示装置、外観検査システムおよびロボット教示方法

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05285800A (ja) 1992-04-13 1993-11-02 Yamazaki Mazak Corp 自動加工装置
JPH06134607A (ja) 1992-10-26 1994-05-17 Sandvik Kk 工作機械のワーク、チャック等の交換装置
US5511147A (en) * 1994-01-12 1996-04-23 Uti Corporation Graphical interface for robot
KR100449429B1 (ko) * 1995-09-14 2004-12-13 가부시키가이샤 야스가와덴끼 로봇의교시장치
GB0125079D0 (en) * 2001-10-18 2001-12-12 Cimac Automation Ltd Auto motion:robot guidance for manufacturing
JP3671219B2 (ja) 2002-04-26 2005-07-13 独立行政法人 宇宙航空研究開発機構 多関節ロボットの制御方法
JP4167940B2 (ja) * 2003-05-29 2008-10-22 ファナック株式会社 ロボットシステム
JP3733364B2 (ja) * 2003-11-18 2006-01-11 ファナック株式会社 教示位置修正方法
JP4556617B2 (ja) * 2004-10-29 2010-10-06 株式会社デンソーウェーブ 自動作業システム
SE0402891D0 (sv) * 2004-11-26 2004-11-26 Abb Ab A system and a method for controlling movements of an industrial robot
KR100584474B1 (ko) * 2005-02-14 2006-05-29 주식회사 새화신 자동차 아암 용접용 지그
GR20050100456A (el) * 2005-09-09 2007-04-25 Πανος Τραχανιας Αυτονομο ρομποτικο συστημα παροχης πληροφοριων και τηλεξεναγησης
EP3530420B1 (en) * 2006-03-03 2023-09-06 Universal Robots A/S Joint for a robot
JP4267005B2 (ja) * 2006-07-03 2009-05-27 ファナック株式会社 計測装置及びキャリブレーション方法
JP4271249B2 (ja) * 2007-06-14 2009-06-03 ファナック株式会社 嵌合装置
KR101255948B1 (ko) 2009-02-12 2013-04-23 고쿠리츠 다이가쿠 호진 교토 다이가쿠 산업용 로봇 시스템
KR20110077556A (ko) 2009-12-30 2011-07-07 한국생산기술연구원 로봇 교시 시스템 및 방법
JP5311294B2 (ja) * 2010-04-28 2013-10-09 株式会社安川電機 ロボットの接触位置検出装置
JP5685027B2 (ja) * 2010-09-07 2015-03-18 キヤノン株式会社 情報処理装置、物体把持システム、ロボットシステム、情報処理方法、物体把持方法およびプログラム
JP5602076B2 (ja) 2011-03-22 2014-10-08 三菱電機株式会社 ロボットプログラミング装置および方法
JP5810582B2 (ja) * 2011-03-29 2015-11-11 セイコーエプソン株式会社 ロボットの制御方法、及びロボット
JP2013071239A (ja) 2011-09-29 2013-04-22 Panasonic Corp ロボットアームの制御装置及び制御方法、ロボット、ロボットアームの制御プログラム、並びに、集積電子回路
EP2684653A1 (en) * 2012-06-20 2014-01-15 Kabushiki Kaisha Yaskawa Denki Robot system and method for manufacturing fitting
DE102012013022A1 (de) * 2012-06-29 2014-04-24 Liebherr-Verzahntechnik Gmbh Vorrichtung zur automatisierten Handhabung von Werkstücken
EP2749974A2 (en) 2012-12-28 2014-07-02 Kabushiki Kaisha Yaskawa Denki Robot teaching system, robot teaching assistant device, and robot teaching method
JP5702811B2 (ja) 2013-01-30 2015-04-15 ファナック株式会社 動作プログラム作成装置
JP6150386B2 (ja) * 2013-04-24 2017-06-21 国立大学法人横浜国立大学 ロボット教示方法
JP2015000455A (ja) 2013-06-17 2015-01-05 キヤノン株式会社 ロボット装置及びロボット装置の制御方法
JP5939213B2 (ja) 2013-08-09 2016-06-22 株式会社安川電機 ロボット制御装置及びロボット制御方法
JP6511715B2 (ja) * 2013-10-31 2019-05-15 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、及びロボット
JP6005299B2 (ja) * 2013-11-28 2016-10-12 三菱電機株式会社 ロボットシステムおよびロボットシステムの制御方法
US9505133B2 (en) * 2013-12-13 2016-11-29 Canon Kabushiki Kaisha Robot apparatus, robot controlling method, program and recording medium
US9701018B2 (en) * 2014-04-01 2017-07-11 Bot & Dolly, Llc Software interface for authoring robotic manufacturing process
US9604357B2 (en) * 2014-07-30 2017-03-28 Kabushiki Kaisha Yaskawa Denki Robot and device having multi-axis motion sensor, and method of use thereof
EP3272473B1 (en) * 2015-03-20 2022-09-14 FUJI Corporation Teaching device and method for generating control information
KR101962889B1 (ko) * 2015-07-27 2019-03-28 한국전자통신연구원 작업환경 변화에 적응적인 로봇 동작 데이터 제공장치 및 그 방법

Also Published As

Publication number Publication date
WO2017052350A2 (ko) 2017-03-30
EP3354418A4 (en) 2019-05-01
US20180264648A1 (en) 2018-09-20
EP3354418B1 (en) 2024-02-28
CN108235696A (zh) 2018-06-29
EP3354418C0 (en) 2024-02-28
EP3354418A2 (en) 2018-08-01
KR20180015774A (ko) 2018-02-14
KR20190055777A (ko) 2019-05-23
KR102609030B1 (ko) 2023-12-01
WO2017052350A3 (ko) 2017-05-11
US11185984B2 (en) 2021-11-30

Similar Documents

Publication Publication Date Title
CN108235696B (zh) 机器人控制方法和设备
US20150127141A1 (en) Robot, control device, robot system and robot control method
US10967501B1 (en) Guide placement by a robotic device
US9207668B2 (en) Method of and apparatus for automated path learning
JP6450960B2 (ja) ロボット、ロボットシステム及び教示方法
US10583555B2 (en) System and method for determining tool offsets
US20080013825A1 (en) Simulation device of robot system
CN104589354A (zh) 机器人控制装置、机器人系统以及机器人
US20180121578A1 (en) Simulation device and simulation method that carry out simulation of operation of robot system, and recording medium that records computer program
JP2019018272A (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
JP7500615B2 (ja) バッチ生産のための自動検査プロセス
US11389954B2 (en) Robot control device
TW202122225A (zh) 使用先進掃描技術之用於機器人箱揀取的系統及方法
KR20210118380A (ko) 로봇 제어 방법 및 장치
JP7259860B2 (ja) ロボットの経路決定装置、ロボットの経路決定方法、プログラム
WO2023096884A1 (en) Parametric and modal work-holding method for automated inspection
CN111417496A (zh) 控制装置、工件作业装置、工件作业系统以及控制方法
US20230158684A1 (en) Automated Work-holding for Precise Fastening of Light Parts during Automated Transfer
CN112873216B (zh) 示教装置、机器人系统以及存储装置
KR102691262B1 (ko) 위치 검출 방법, 제어 장치 및 로봇 시스템
US20230160678A1 (en) Parametric and Modal Work-holding Apparatus
JP2007061940A (ja) ロボットおよびロボットの情報表示方法
WO2024063857A1 (en) Automated work-holding for precise fastening of light parts during automated transfer
WO2024107312A1 (en) Parametric and modal work-holding apparatus
JP2024139608A (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