CN108326877B - 机器人控制设备、系统和控制方法及制品装配制造方法 - Google Patents

机器人控制设备、系统和控制方法及制品装配制造方法 Download PDF

Info

Publication number
CN108326877B
CN108326877B CN201810053956.6A CN201810053956A CN108326877B CN 108326877 B CN108326877 B CN 108326877B CN 201810053956 A CN201810053956 A CN 201810053956A CN 108326877 B CN108326877 B CN 108326877B
Authority
CN
China
Prior art keywords
robot
control
control section
section
switching condition
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
CN201810053956.6A
Other languages
English (en)
Other versions
CN108326877A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Publication of CN108326877A publication Critical patent/CN108326877A/zh
Application granted granted Critical
Publication of CN108326877B publication Critical patent/CN108326877B/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
    • B25J13/00Controls for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/085Force or torque sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/39209Switch over from free space motion to constraint motion
    • 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/39346Workspace impedance 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/42Servomotor, servo controller kind till VSS
    • G05B2219/42123Position loop then force, current loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Manipulator (AREA)

Abstract

机器人控制设备、机器人系统、机器人控制方法及装配制造方法机器人控制设备包括指令部和控制部。指令部被配置成将切换条件传送到被配置成根据机器人程序执行反馈控制的控制部。在机器人的状态与切换条件匹配的状态下,控制部将指示机器人的状态已与切换条件匹配的信息传送到指令部,指令部将对应于所述信息的操作命令传送到控制部,控制部根据所述操作命令切换机器人的操作。

Description

机器人控制设备、系统和控制方法及制品装配制造方法
技术领域
本发明涉及机器人控制。
背景技术
机器人由位置控制或力控制来控制。位置控制是指基于位置指令值将机器人控制到目标位置。力控制包括基于位置的力控制(即准入控制)和基于转矩的力控制。基于位置的力控制是指,基于设置在机器人的末端部分处的力传感器的值来计算仿效工件的位置指令值,并基于所述位置指令值来控制机器人。在基于位置的力控制中,位置控制被用作副回路。因此,与位置控制的响应性相比,基于位置的力控制的响应性恶化。一般来说,位置控制的响应频率受机器人的固有频率的限制。尤其是,在接触期间,由于稳定性的问题,难以提高响应性。在基于转矩的力控制中,计算仿效工件的转矩命令值,并且基于所述转矩命令值来控制机器人。基于转矩的力控制使得能够在不受机器人的固有频率的限制的情况下提高响应性。基于转矩的力控制具有比基于位置的力控制更高的响应性,所以可以例如在装配操作等方面扩大应用范围。
日本专利号5845311的公开文本公开了执行机器人的柔性控制作为机器人的力控制。日本专利号5845311的公开文本公开了使用者使与柔性控制有关的多个参数集存储在存储单元中。此外,日本专利号5845311的公开文本公开了操作状态监测部,所述操作状态监测部被配置成根据来自编码器、力传感器或用于测量时间的时间测量部的输出来确定机器人的操作状态。此外,日本专利号5845311的公开文本公开了当在机器人正在使用某参数集执行柔性控制的同时满足用于切换参数集的切换条件时,机器人通过将参数集切换到不同的参数集来执行柔性控制。
由于需要解释机器人程序,所以指示根据机器人程序切换机器人的操作的处理具有高算术运算负荷。同时,为了以稳定的方式执行基于转矩的力控制,需要通过快速控制周期基于转矩传感器值和编码器值执行反馈控制过程。然而,根据常规的方法,在执行具有高算术运算负荷的机器人程序的处理的同时执行反馈控制,使得在根据基于转矩的力控制来增加反馈控制的控制周期的速度方面存在限制。
发明内容
根据本发明的第一方面,机器人控制设备包括指令部,所述指令部被配置成根据机器人程序指示机器人的操作;以及控制部,所述控制部被配置成基于机器人的转矩传感器值和机器人的编码器值、根据来自指令部的指令执行机器人的操作的反馈控制。所述指令部被配置成根据机器人程序将切换条件传送到被配置成执行反馈控制的控制部。在机器人的状态与切换条件匹配的状态下,控制部将指示机器人的状态已与切换条件匹配的信息传送到指令部,指令部将对应于所述信息的操作命令传送到控制部,并且控制部根据所述操作命令切换机器人的操作。
根据本发明的第二方面,机器人控制方法被配置成被配置成通过指令部和控制部控制机器人,所述指令部被配置成根据机器人程序指示机器人的操作,所述控制部被配置成基于机器人的转矩传感器值和机器人的编码器值、根据来自指令部的指令执行机器人的操作的反馈控制。所述机器人控制方法包括:根据机器人程序通过指令部将切换条件传送到被配置成执行反馈控制的控制部;在机器人的状态与切换条件匹配的状态下,通过控制部将指示机器人的状态已与切换条件匹配的信息传送到指令部;通过指令部将对应于所述信息的操作命令传送到控制部;以及通过控制部根据所述操作命令切换机器人的所述操作。
本发明的其他特征将从参考附图对示例性实施方案的以下描述中变得显而易见。
附图说明
图1是根据第一实施方案的机器人系统的透视图。
图2是示出根据第一实施方案的机器人控制设备的框图。
图3是示出根据第一实施方案的机器人系统的控制系统的控制框图。
图4是示出根据第一实施方案的机器人的基于转矩的力控制的流程图。
图5是示出根据第一实施方案的机器人的位置控制的流程图。
图6A是示出在执行基于转矩的力控制的状态下的指令部和控制部的控制流程的概念图,示出了指令部将切换条件传送到控制部的情况。
图6B是示出在执行基于转矩的力控制的状态下的指令部和控制部的控制流程的概念图,示出了控制部将切换信息传送到指令部的情况。
图6C是示出在执行基于转矩的力控制的状态下的指令部和控制部的控制流程的概念图,示出了指令部将操作命令传送到控制部的情况。
图6D是示出在执行基于转矩的力控制的状态下的指令部和控制部的控制流程的概念图,示出了控制部切换机器人的操作的情况。
图7是根据第一实施方案的指令部和控制部的控制框图。
图8是示出根据第一实施方案的紧接在由机器人执行装配操作之前的状态的示意图。
图9是示出根据第一实施方案的机器人程序的一个示例的说明图。
图10A是用于描述根据机器人程序操作的机器人的装配操作的机器人示意图,示出了将工件W1的底面装配到工件W2的状态。
图10B是用于描述根据机器人程序操作的机器人的装配操作的机器人示意图,示出工件的装配已失败的状态。
图11是示出根据第二实施方案的紧接在由机器人执行装配操作之前的状态的示意图。
图12是示出根据第二实施方案的机器人程序的一个示例的说明图。
图13A是用于描述根据机器人程序操作的机器人的装配操作的机器人示意图,示出了工件W1的底面已抵靠在工件W3上的状态。
图13B是用于描述根据机器人程序操作的机器人的装配操作的机器人示意图,示出了工件W1的底面已进入工件W3的凹部的状态。
图13C是用于描述根据机器人程序操作的机器人的装配操作的机器人示意图,示出了工件W1配合到工件W3的凹部的状态。
图14是根据第三实施方案的指令部和控制部的控制框图。
图15A是示出在还未执行力目标值的内插的情况下的手尖的力目标值Fref的图。
图15B是示出根据图15A的情况的手尖力F的时间变化的示意图。
图15C是示出已执行力目标值的内插的情况下的手尖的力目标值Fref的时间变化的示意图。
图15D是示出根据图15C的情况的手尖力F的时间变化的示意图。
图16是示出根据第四实施方案的机器人程序的一个示例的说明图。
图17是示出根据第四实施方案确定切换条件是否已匹配的概念图。
具体实施方式
现在,将参考附图详细地描述用于执行本发明的实施方案。
第一实施方案
图1是根据第一实施方案的机器人系统的透视图。如图1所示,机器人系统100包括关节型机器人200和被配置成控制机器人200的操作的机器人控制设备300。此外,机器人系统100包括充当示教设备的示教挂件400,所述示教设备被配置成将示教数据传送到机器人控制设备300。示教挂件400由操作者操作,并且其用来指定机器人200和机器人控制设备300的操作。
机器人200包括竖向铰接机械臂251和充当附接到机械臂251的前端的末端执行器的一个示例的机械手252。以下,我们将描述末端执行器是机械手252的情况,但本发明不限于机械手,并且其也可以是其他工具,诸如驱动器。机械臂251的基部端固定到基座150。机械手252被配置成保持诸如部件和工具的对象。
机器人200,即机械臂251包括多个关节,例如六个关节J1至J6。机械臂251包括多个(诸如六个)伺服马达201至206,所述伺服马达201至206分别驱动各个关节J1至J6围绕各个关节轴A1至A6旋转。机械臂251被配置成使得多个连杆2100至2106在各个关节J1至J6处可旋转地连接。只要在可移动范围内,机械臂251就可以将机器人200的手尖以任意三向姿势移动到任意三维位置。
机器人200的手尖的位置和姿势由坐标系To表示,以机械臂251的基部端(即基座150)作为基准。坐标系Te被设定为机器人200的手尖。在第一实施方案中,如果机械手252未正在保持对象,则机器人200的手尖是指机械手252。如果机械手252正保持对象,则机器人200的手尖是指机械手252和机械手252正保持的对象。换句话说,无论机械手252是处于保持对象的状态还是处于未保持对象的状态,如果机械臂251的端部朝向机器人200的远侧端部,则手尖是指前面的部分。
相应的伺服马达201至206包括充当用于分别驱动关节J1至J6的电动机的马达211至216以及分别连接到马达211至216的传感器单元221至226。相应的传感器单元221至226具有充当位置传感器的编码器,所述位置传感器被配置成生成对应于各个关节J1至J6的位置(即,角度)的信号。相应的传感器单元221至226具有生成对应于相应的关节J1至J6的转矩的信号的转矩传感器。相应的伺服马达201至206具有未示出的减速齿轮,并且直接地或通过传动机构(诸如未示出的皮带或轴承)连接到由相应的关节J1至J6驱动的连杆。
被配置成控制相应的伺服马达201至206的马达211至216的操作的伺服控制器230布置在机械臂251的内部。基于正在被接收的对应于相应的关节J1至J6的相应的转矩命令值,伺服控制器230将电流供应到相应的马达211至216以使得相应的关节J1至J6的转矩遵循转矩命令值,并且控制相应的马达211至216的驱动。在第一实施方案中,伺服控制器230布置在机械臂251的内部,但其也可以布置在机械臂251的外侧上,诸如在机器人控制设备300的外壳内。
此外,机器人200的机械臂251包括分别将制动力施加到相应的关节J1至J6的多个制动器231至236。制动器231至236例如是盘式制动器。通过启动相应的制动器231至236,可以固定相应的关节J1至J6使得关节J1至J6不移动。
接下来,我们将描述机器人控制设备300。图2是示出根据第一实施方案的机器人控制设备300的框图。机器人控制设备300由计算机构成,并且包括CPU(中央处理单元)301。此外,机器人控制设备300包括作为存储单元的充当内部存储设备的ROM(只读存储器)302、RAM(随机存取存储器)303和HDD(硬盘驱动器)304。更进一步,机器人控制设备300包括磁盘驱动器305和接口306至310。CPU 301、ROM 302、RAM 303、HDD 304、磁盘驱动器305和接口306至310通过总线311以可通信的方式相互连接。
根据第一实施方案,CPU 301包括多个核301A和301B,并且核301A和301B中的每个核均可以独立地执行算术运算。ROM 302存储基本程序。RAM 303是临时存储各种数据(诸如由CPU 301执行的算术运算处理的结果)的存储装置。HDD 304是存储由CPU 301执行的算术运算处理的结果或从外部获取的各种数据的存储装置,并且还存储用于使CPU 301执行稍后描述的算术运算处理的程序330。CPU 301基于存储在HDD 304中的程序330来执行机器人控制方法的相应步骤。磁盘驱动器305可以读取存储在磁盘331中的各种数据和程序。
示教挂件400连接到接口306。CPU 301通过接口306和总线311接收来自示教挂件400的示教数据的输入。
伺服控制器230连接到接口309。CPU 301通过伺服控制器230、接口309和总线311从相应的传感器单元221至226获取信号。此外,CPU 301通过总线311和接口309以预先确定的时间间隔将相应关节的命令值数据输出到伺服控制器230。
监视器321连接到接口307,并且在CPU 301的控制下将各种图像显示在监视器321上。接口308被配置成允许充当存储器(诸如可重写非易失性存储器或外部HDD)的外部存储装置322的连接。
外部设备323连接到接口310。CPU 301通过接口310和总线311执行与外部设备323的数据的输入/输出。外部设备323可以是例如用于打开和关闭LED的设备或PLC(可编程逻辑控制部)。
在第一实施方案中,描述了计算机可读存储介质是HDD 304并且程序330存储在HDD 304中的情况,但是本发明不限于此。程序330可以存储在任何存储介质中,只要其是计算机可读存储介质即可。例如,图2所示的ROM 302、磁盘331、外部存储装置322等可以用作用于存储程序330的存储介质。可以使用存储介质的各种示例,包括软盘、硬盘、诸如DVD-ROM或CD-ROM的光盘、磁光盘、磁带、非易失性存储器等。
图3是示出根据第一实施方案的机器人系统100的控制系统的控制框图。机器人控制设备300的CPU 301通过执行程序330而起到指令部501和控制部510的作用。在第一实施方案中,CPU 301的核301A起到指令部501的作用,并且CPU 301的核心301B起到控制部510的作用。伺服控制器230包括多个,即在具有六个关节的本示例中具有六个,马达控制器531至536。
相应的传感器单元221至226包括编码器551至556和转矩传感器541至546。编码器551至556是旋转编码器,并且相应的编码器输出作为对应于马达211至216的旋转角的测量值的角度值θ1至θ6作为信号。相应的转矩传感器541至546输出作为对应于相应的关节J1至J6的转矩的测量值的输出转矩值τ1至τ6作为信号。
基于操作者的操作,示教挂件400将作为作用在机器人200的手尖上的力的目标值的力目标值Fref设定到机器人控制设备300,即,将力目标值Fref存储在外部存储装置322中。此外,示教挂件400将作为机器人200的手尖的位置和姿势的目标值的位置目标值Pref设定到机器人控制设备300,即,将位置目标值Pref存储在外部存储装置322中。根据装配过程存在多个力目标值Fref和多个位置目标值Pref。此外,用机器人语言描述的机器人程序506和机器人模型519(诸如机器人200的三维CAD数据)存储在外部存储装置322中。机器人程序506指定机器人200和外部设备323的操作。操作者使用文本编辑器或专用IDE(集成开发环境)根据装配过程创建机器人程序。机器人程序506可以与力目标值Fref和位置目标值Pref相关联地使用。将力目标值Fref、位置目标值Pref、机器人程序506和机器人模型519描述为存储在外部存储装置322中,但是它们还可以存储在内部存储装置中。
指令部501被配置成根据机器人程序506将关于机器人200的操作的指令输出到控制部510,并且由于指令部501解释机器人程序506,所以其算术运算负荷将比控制部510高。
根据指令部501的指令,控制部510选择性地基于充当第一控制的力控制或充当第二控制的位置控制来控制机器人200的操作。在第一实施方案中,力控制是基于转矩的力控制。根据基于转矩的力控制,机器人200的操作基于机器人200的转矩传感器541至546的转矩值τ1至τ6和机器人200的编码器551至556的角度值θ1至θ6经受反馈控制。根据位置控制,机器人200的操作基于机器人200的编码器551至556的角度值θ1至θ6经受反馈控制。
在基于转矩的力控制中,控制部510获取相应关节的转矩命令值τMFref1至τMFref6作为反馈命令值,并将相应的转矩命令值τMFref1至τMFref6输出到相应的马达控制器531至536。控制部510以预先确定的控制周期执行基于转矩的力控制。此外,根据位置控制,控制部510获取相应关节的角度命令值qref1至qref6作为反馈命令值,并且将相应的角度命令值qref1至qref6输出到相应的马达控制器531至536。
现在,将描述由相应的马达控制器531至536所接收的命令值是转矩命令值τMFref1至τMFref6的情况。相应的马达控制器531至536控制供应到相应的马达211至216的相应的电流Cur1至Cur6,使得相应的转矩值τ1至τ6与相应的转矩命令值τMFref1至τMFref6之间的偏差变小。
现在,将描述由相应的马达控制器531至536所接收的命令值是角度命令值qref1至qref6的情况。相应的马达控制器531至536将相应的角度命令值qref1至qref6转换成相应的马达211至216的角度命令值θref1至θref6。随后,相应的马达控制器531至536控制供应到相应的马达211至216的相应的电流Cur1至Cur6,使得相应的角度值θ1至θ6与相应的角度命令值θref1至θref6之间的偏差变小。此外,相应的马达控制器531至536还可以将相应的角度值θ1至θ6转换成相应的角度值q1至q6。在这种情况下,相应的马达控制器531至536控制供应到相应的马达211至216的相应的电流Cur1至Cur6,使得相应的角度值q1至q6与角度命令值qref1至qref6之间的偏差变小。
现在,将详细地描述机器人200的基于转矩的力控制。图4是描述根据第一实施方案的机器人200的基于转矩的力控制的流程图。首先,操作者使用示教挂件400设定力目标值Fref和位置目标值Pref(S1)。力目标值Fref和位置目标值Pref存储在外部存储装置322中。力目标值Fref和位置目标值Pref还可以直接存储在机器人程序506中,而不使用示教挂件400。
控制部510计算对应于相应的马达211至216的转矩命令值τMFref1至τMFref6,使得作为作用在手尖上的力的测量值的手尖力F遵循力目标值Fref,即,手尖力F与力目标值Fref之间的力的偏差变小(S2)。
相应的马达控制器531至536基于相应的编码器551至556的角度值θ1至θ6执行通电控制以对相应的马达211至216通电流Cur1至Cur6,使得实现相应的转矩命令值τMFref1至τMFref6(S3)。相应的马达211至216通过被通电而产生转矩(S4)。
相应的编码器551至556将指示相应的角度值θ1至θ6的信号输出到控制部510。相应的转矩传感器541至546将指示相应的转矩值τ1至τ6的信号输出到控制部510。从而,相应的编码器551至556的角度值θ1至θ6和相应的转矩传感器541至546的转矩值τ1至τ6被反馈到控制部510,并且控制部510获取角度值θ1至θ6和转矩值τ1至τ6(S5)。
控制部510基于机器人模型519和角度值θ1至θ6来计算相应的关节J1至J6的角度值q1至q6。此外,控制部510基于机器人模型519和相应的关节J1至J6的角度值q1至q6来计算机器人200的手尖的位置P。控制部510基于机器人模型519、角度值q1至q6和转矩值τ1至τ6来计算施加在机器人200的手尖上的手尖力F(S6)。控制部510确定驱动是否已完成(S7),如果没有完成(S7:否),则重复步骤S2至S7。通过根据上述流程图驱动马达211至216,可以将机器人200的手尖力F控制到力目标值Fref。基于转矩的力控制不限于图4所示的流程图的顺序,其可以成其他顺序。
接下来,将描述机器人200的位置控制。图5是示出根据第一实施方案的机器人200的位置控制的流程图。首先,操作者使用示教挂件400设定位置目标值Pref(S11)。位置目标值Pref存储在外部存储装置322中。位置目标值Pref可以直接存储在机器人程序506中,而不使用示教挂件400。
控制部510基于机器人模型519通过将位置目标值Pref转换成相应的关节J1至J6的角度命令值qref1至qref6来计算角度命令值qref1至qref6(S12)。
相应的马达控制器531至536执行通电控制以将电流Cur1至Cur6通至相应的马达211至216,使得相应的角度值q1至q6遵循相应的角度命令值qref1至qref6(S13)。可以使用马达211至216的角度值θ1至θ6代替角度值q1至q6作为指示关节J1至J6的角度的信号。相应的马达211至216通过被通电而产生转矩(S14)。
相应的编码器551至556将指示相应的角度值θ1至θ6的信号输出到控制部510。据此,相应的编码器551至556的角度值θ1至θ6被反馈到控制部510,并且控制部510获取角度值θ1至θ6(S15)。控制部510基于机器人模型519和角度值θ1至θ6来获取相应的关节J1至J6的角度值q1至q6
控制部510确定驱动是否已完成,即确定手尖的位置P是否已到达位置目标值Pref附近(S16),并且如果驱动没有完成(S16:否),则重复步骤S12至S16。通过根据上述流程图驱动马达211至216,可以将机器人200的手尖的位置P控制到位置目标值Pref
步骤S1到S7的基于转矩的力控制和步骤S11到S16的位置控制由指令部501根据机器人程序506切换,并且根据操作选择任一种控制。
以下,将描述控制部510基于指令部501的指令执行基于转矩的力控制的反馈控制的情况。图6A、图6B、图6C和图6D是示出当执行基于转矩的力控制时指令部501和控制部510的控制流程的概念图。如图6A所示,指示部501根据机器人程序506将切换条件传送到控制部510。控制部510在基于转矩的力控制期间确定机器人200的状态是否已与切换条件匹配。如果机器人200的状态已与切换条件匹配,则如图6B所示,控制部510将指示切换条件已匹配的信息(即切换信息)传送到指令部501。如图6C所示,指令部501根据机器人程序506将对应于切换信息的操作命令传送到控制部510。如图6D所示,控制部510根据操作命令切换机器人200的操作。如所描述的,指令部501执行用于解释机器人程序506的处理,并且控制部510根据指令部501的指令按照基于转矩的力控制来执行反馈控制。如所描述的,通过使指令部501和控制部510的处理分开,可以以密集的方式执行具有高算术运算负荷的反馈处理。因此,可以在控制部510中通过快速控制周期来执行反馈控制。由于反馈控制通过快速控制周期执行,所以即使在作用在机器人200上的力显著变化的情况下,也可以迅速地进行响应,并且使机器人200的控制稳定。即,机器人200的可控性提高。数据(诸如切换条件、切换信息和操作命令)通过指令部501与控制部510之间的电信号传送和接收。
现在,将详细地描述指令部501和控制部510的操作。图7是根据第一实施方案的指令部501和控制部510的控制框图。指令部501起到切换部502、力命令生成部503、位置命令生成部504和外部命令生成部505的作用。控制部510起到监测部511、时间测量部512、测量部513、参数设定部516、力控制部517和位置控制部518的作用。测量部513起到力测量部514和位置测量部515的作用。
时间测量部512从基于转矩的力控制已开始的时间点测量经过时间t。测量部513从外部存储装置322读取机器人模型519。位置测量部515基于从编码器551至556获取的角度值θ1至θ6和机器人模型519来计算指示机器人200的手尖的位置和姿势的测量值的位置P。此外,在接收到相应的角度值θ1至θ6时,位置测量部515基于由机器人模型519指定的未图示的减速齿轮的减速比等来计算作为相应的关节J1至J6的角度的测量值的角度值q1至q6。力测量部514基于从编码器551至556获取的角度值θ1至θ6、从转矩传感器541至546获取的转矩值τ1至τ6以及机器人模型519来获取作为作用在机器人200的手尖上的力的测量值的手尖力F。
切换部502读取机器人程序506、力目标值Fref和位置目标值Pref,执行其解释处理,并且根据从监测部511所接收的切换信息,切换部502生成机器人200或外部设备323的操作指令。如果生成的操作指令是机器人200的基于转矩的力控制,则切换部502将操作指令传送到力命令生成部503。如果生成的操作指令是机器人200的位置控制,则切换部502将操作指令传送到位置命令生成部504。如果生成的操作指令是外部设备323的操作,则切换部502将操作指令传送到外部命令生成部505。
基于从切换部502所接收的操作指令,力命令生成部503将切换条件和作为操作命令的力命令传送到控制部510。根据第一实施方案,存在13种切换条件,如下所列。力命令生成部503根据机器人程序506的语句将以下切换条件传送到监测部511。
1.从基于转矩的力控制开始的时间点经过的时间
2.机器人200的手尖力
3.机器人200的手尖力的时间微分
4.机器人200的手尖力的二阶时间微分
5.机器人200的手尖的位置
6.机器人200的手尖的速度
7.机器人200的手尖的加速度
8.机器人200的每个轴的位置
9.机器人200的每个轴的速度
10.机器人200的每个轴的加速度
11.机器人200的每个轴的转矩
12.机器人200的每个轴的转矩的时间微分
13.机器人200的每个轴的转矩的二阶时间微分
切换条件已列出作为示例,但是本发明不限于此。
监测部511确定从时间测量部512和测量部513获取的测量值是否与上述所接收的切换条件匹配。即,监测部511在基于转矩的力控制期间监测稍后描述的测量值,并且如果测量值与从力命令生成部503所接受的切换条件匹配,则监测部511将指示测量值已与切换条件匹配的切换信息传送到切换部502。由监测部511执行稍后描述的对时间的一阶微分和二阶微分。
-从时间测量部512通知的经过时间t
-从力测量部514通知的手尖力F
-从力测量部514通知的相应轴的转矩值τ1至τ6
-从位置测量部515通知的手尖的位置P
-从位置测量部515通知的相应的角度值q1至q6
-手尖力F的时间微分
-转矩值τ1至τ6的时间微分
-手尖的位置P的时间微分(速度)
-相应的角度值q1至q6的时间微分(速度)
-手尖力F的二阶时间微分
-相应的转矩值τ1至τ6的二阶时间微分
-手尖的位置P的二阶时间微分(加速度)
-相应的角度值q1至q6的二阶时间微分(加速度)
在第一实施方案中,充当由力命令生成部503输出的操作命令的力命令是根据基于转矩的力控制的参数。根据第一实施方案,下面列出了七种参数。
1.机器人200的手尖的力目标值Fref
2.机器人200的手尖的位置目标值P ref
3.机器人200的手尖的速度目标值Pref(·)
4.机器人200的手尖的加速度目标值Pref(··)
5.机器人200的手尖处的目标的刚度系数Kref
6.机器人200的手尖处的目标的粘度系数Dref
7.机器人200的手尖处的目标的惯性矩阵Λref
这里,(·)表示时间的一阶微分,并且(··)表示时间的二阶微分。参数的示例已在上面列出,但是参数不限于上面列出的那些。此外,并不是所有的参数都是必需的。在上面列出的参数中,刚度系数Kref、粘度系数Dref和惯性矩阵Λref是用于基于转矩的力控制的反馈控制的以下表达式(1)和(2)中所表示的算术运算表达式的系数。
在接收从力命令生成部503传送的根据力控制的参数时,参数设定部516执行坐标变换,并将所述值设定到力控制部517。力控制部517接受机器人模型519、力目标值Fref、位置目标值Pref、速度目标值Pref(·)、加速度目标值Pref(··)、刚度系数Kref、粘度系数Dref和惯性矩阵Λref的输入。此外,力控制部517接收转矩值τ1至τ6、角度值q1至q6、位置P和力F的输入作为测量值。随后,力控制部517使用这些目标值和测量值来计算对应于相应的关节J1至J6的转矩命令值τMFref1至τMFref6。现在,手尖力F与力目标值Fref之间的偏差被称为力偏差。位置P与手尖的位置目标值Pref之间的偏差被称为位置偏差。手尖的速度P(·)与速度目标值Pref(·)之间的偏差被称为速度偏差。手尖的加速度值P(··)与加速度目标值Pref(··)之间的偏差被称为加速度偏差。力控制部517计算转矩命令值τMFref1至τMFref6,使得力偏差、位置偏差、速度偏差和加速度偏差变小。
具体地,力控制部517基于以下变量使用表达式(1)和(2)执行计算。
-力目标值Fref
-位置目标值Pref
-速度目标值Pref(·)
-加速度目标值Pref(··)
-刚度系数Kref
-粘度系数Dref
-惯性矩阵Λref
-手尖位置P
-手尖力F
-由机器人模型519和关节速度q(·)计算的雅可比行列式J(q)
-通过逆动力学计算而计算的惯性矩阵M(q)
-通过逆动力学计算而计算的科里奥利离心矩阵c(q,q(·))
-通过逆动力学计算而计算的重力矢量g(q)
-基于J(q)、M(q)和位置P计算的惯性矩阵Λ
[表达式1]
Figure BDA0001553164840000151
[表达式2]
Figure BDA0001553164840000152
表达式(1)和(2)仅仅是基于转矩的力控制的示例,并且本发明不限于这些表达式。
力控制部517将相应的计算出的转矩命令值τMFref1至τMFref6输出到相应的马达控制器531至536。这里,速度P(·)通过对位置P按时间进行微分而获得,并且加速度P(··)通过对速度P(·)进行微分而获得。因此,在第一实施方案中,力控制部517从由于位置测量部515的测量而获得的手尖的位置P获得手尖的速度P(·)和手尖的加速度P(··)。还可以使位置测量部515执行算术运算以输出手尖的速度P(·)和手尖的加速度P(··)。
基于从切换部502所接收的操作指令,位置命令生成部504将位置目标值Pref作为操作命令传送到位置控制部518。基于从切换部502所接收的操作指令,外部命令生成部505将数据形成为对应于外部设备323的格式,并将命令传送到外部设备323。
位置控制部518基于手尖的位置目标值Pref通过执行逆向运动学计算来计算相应关节J1至J6的角度命令值qref1至qref6,并且将相应的角度命令值qref1至q ref6输出到相应的马达控制器531至536。
现在,将参考具体示例来描述指令部501和控制部510的操作。图8是示出根据第一实施方案的紧接在由机器人200执行装配操作之前的状态的示意图。在第一实施方案中,机械手252通过基于转矩的力控制向下移动,并且执行将充当由机械手252保持的第一工件的圆柱形工件W1装配到充当第二工件的环形工件W2的操作。从而,制造了具有装配到工件W2的工件W1的制品。
图9是示出根据第一实施方案的机器人程序506的一个示例的说明图。此外,图10A和图10B是用于描述根据机器人程序506操作的机器人200的装配操作的机器人200的示意图。基于行01上的语句,指令部501的切换部502将操作指令传送到位置命令生成部504,以通过位置控制执行到由示教挂件400预先示教的目标位置Prefstart1的操作。位置命令生成部504将作为操作命令的目标位置Prefstart1传送到控制部510的位置控制部518。从而,位置控制部518将机器人200的手尖移动到目标位置Prefstart1
接下来,基于行03上的语句,指令部501的切换部502将操作指令传送到力命令生成部503,以通过基于转矩的力控制来使机器人200的手尖开始从位置Prefstart1向图8的向下方向移动。力命令生成部503将作为操作命令的参数集1传送到参数设定部516,并将切换条件A、B和C传送到监测部511。从而,指令部501指示控制部510通过基于转矩的力控制开始反馈控制。
参数集1是由操作者设定的用于执行基于转矩的力控制的参数组,并且这些值在行15上描述。参数集1包括力目标值Fref、位置目标值Pref1、速度目标值Pref1(·)、加速度目标值Pref1(··)、刚度系数Kref1、粘度系数Dref1以及惯性矩阵Λref1。切换条件A、B和C构成用于切换机器人200的操作的切换条件组,并且各个切换条件在行18至20上描述。具体地,在行18上,将说明手尖力F的平移z分量超过阈值Th_f_z1的条件描述为切换条件A。在行19上,将说明手尖的平移z分量的位置Pz小于阈值Th_pos_z1的条件描述为切换条件B。在行20中,将说明从基于转矩的力控制已开始时的时间点经过的时间超过阈值(10[s])的条件描述为切换条件C。还可以具有写为一个切换条件的多个条件,诸如{(Fz>Th_f_z1)且(经过时间>10)}、或者{(Fz>Th_f_z1)或(经过时间>10)}。
如所描述的,指令部501根据机器人程序506将参数集1传送到控制部510,并且控制部510使用参数集1通过基于转矩的力控制来执行机器人200的操作的反馈控制。
当引起控制部510开始基于转矩的力控制时,指令部501将多个切换条件A、B和C传送到控制部510。如果在基于转矩的力控制期间机器人200的状态与切换条件A匹配,则控制部510的监测部511将指示切换条件A已匹配的切换信息传送到指令部501。此外,如果在基于转矩的力控制期间机器人200的状态与切换条件B匹配,则监测部511将指示切换条件B已匹配的切换信息传送到指令部501。此外,如果在基于转矩的力控制期间机器人200的状态与切换条件C匹配,则监测部511将指示切换条件C已匹配的切换信息传送到指令部501。
即,监测部511监测来自时间测量部512的经过时间t、来自力测量部514的手尖力F以及转矩值τ1至τ6、来自位置测量部515的手尖的位置P以及角度值q1至q6作为机器人200的状态。监测部511监测这些测量值,并且如果满足这些切换条件A、B和C中的任一个,则其将对应于该切换条件的切换信息传送到指令部501。
如果接收到指示切换条件A已匹配的切换信息的输入,则指令部501的切换部502将对应于该切换信息的操作命令传送到控制部510。具体地,切换条件A是手尖力F的平移z分量超过阈值Th_f_z1的条件,并且如图10A所示,其指示工件W1的底面已装配到工件W2。由于已满足切换条件A,所以基于在行05和06中所描述的语句,切换部502将使机械手252打开的操作指令传送到力命令生成部503,并且力命令生成部503将操作命令传送到控制部510。控制部510根据所接收的操作命令将机器人200的操作切换到用于打开机械手252的操作,并且完成装配操作。
如果接收到指示切换条件B已匹配的切换信息的输入,则指令部501的切换部502将对应于该切换信息的操作命令传送到控制部510。具体地,切换条件B是机器人200的手尖在平移z方向上的位置Pz变得小于阈值Th_pos_z1的条件,并且如图10B所示,其指示装配已失败。由于满足切换条件B,所以切换部502基于在行07至09中所描述的语句将使机器人200停止的操作指令传送到力命令生成部503,并且将对于外部设备323打开和关闭LED的操作指令传送到外部命令生成部505。力命令生成部503将操作命令传送到控制部510,并且控制部510根据所接收的操作命令来停止机器人200的操作。此外,外部命令生成部505将操作命令传送到外部设备323,并且控制外部设备323的操作,即,引起外部设备323打开和关闭LED。
如果接收到指示切换条件C已匹配的切换信息,则指令部501的切换部502将对应于该切换信息的操作命令传送到控制部510。具体地,切换条件C是从基于转矩的力控制已开始时的时间点经过的时间超过阈值(10[s])的条件。由于满足切换条件C,所以基于在行10和11中所描述的语句,切换部502将通过位置控制使机器人200的手尖移动到位置Prefstart1的操作指令传送到位置命令生成部504。位置命令生成部504将操作命令传送到控制部510。控制部510根据所接收的操作命令通过位置控制使机器人200的手尖位置返回到基于位置控制的位置Prefstart1。即,根据指令部501的指令,控制部510将控制从基于转矩的力控制切换到位置控制作为机器人200的操作的切换。如所描述的,基于转矩的力控制与位置控制之间的切换可以通过指令部501与控制部510的协作更迅速地执行。
如所描述的,根据第一实施方案,根据由用户创建的机器人程序506,采用由执行状态转换的指令部501和在接收到来自指令部501的指令时以预先确定的控制周期执行反馈控制的控制部510构成的两部分构型。从而,用于执行具有高算术运算负荷的机器人程序506的解释的处理不再需要由控制部510执行,使得可以提高通过基于转矩的力控制的反馈控制的控制周期的速度。因此,在与机器人200的各种操作的切换对应的同时,机器人200的基于转矩的力控制可以稳定地执行。此外,根据第一实施方案,与机器人程序的处理和使用传感器值的反馈控制由一个过程执行的状态相比,可以提高反馈的控制周期的速度,并且因此,提高了机器人200的控制的稳定性。
通过使控制部510基于也在指令部501中的传感器信息执行反馈控制,可以减少对应的算术运算负荷,并且可以防止计算机资源的过度消耗。
进一步根据第一实施方案,控制部510的监测部511在基于转矩的力控制期间切换条件已匹配的状态下将切换信息通知给切换部502。切换部502可以通过基于通知的切换信息执行条件分支来灵活地切换机器人200的操作。从而,扩大了使用基于转矩的力控制的装配操作的应用范围,并且可以处理复杂的装配操作。
第二实施方案
接下来,将描述根据第二实施方案的机器人系统。图11是示出根据第二实施方案的紧接在由机器人执行装配操作之前的状态的示意图。在第二实施方案中,执行操作以向下移动机械手252,并且通过基于转矩的力控制将充当由机械手252保持的第一工件的圆柱形工件W1装配到充当第二工件的环形工件W3。从而,制造具有被装配到工件W3的工件W1的制品。此时,根据满足的切换条件分成多个阶段的复杂的控制处理可以由指令部501和控制部510实现。
根据第二实施方案,将与力控制相关联的参数切换为机器人200的操作的切换的情况。根据第二实施方案的机器人系统的构型和功能类似于第一实施方案的构型和功能,但是由用户创建的机器人程序的内容和充当装配的目标的第二工件不同。根据第二实施方案,工件W1待装配在其上的工件W3上的凹部的位置未精确地限定。因此,装配操作按以下顺序执行。为了简化描述,当满足除正常系统以外的条件时,机器人200的操作将停止。
图12是示出根据第二实施方案的机器人程序506的一个示例的说明图。图13A、图13B和图13C是机器人200的示意图,示出根据机器人程序506操作的机器人200的装配操作。指令部501的切换部502将操作指令传送到位置命令生成部504,以基于行01上的语句通过位置控制操作到由示教挂件400预先示教的目标位置Prefstart2。位置命令生成部504将目标位置Prefstart2传送到控制部510的位置控制部518作为操作命令。从而,位置控制部518将机器人200的手尖的位置P移动到目标位置Prefstart2
接下来,指令部501的切换部502将操作指令传送到力命令生成部503,以基于行03上的语句通过基于转矩的力控制来使机器人200的手尖开始从位置Prefstart2向图11中的向下方向移动。力命令生成部503将作为操作命令的参数集1传送到参数设定部516,并且还将切换条件A和B传送到监测部511。从而,指令部501引起控制部510通过基于转矩的力控制开始反馈控制。从而,指令部501根据机器人程序506将参数集1传送到控制部510,并且控制部510使用参数集1来通过基于转矩的力控制来执行机器人200的操作的反馈控制。
现在,第二实施方案包括多个参数集1、2和3以及多个切换条件A、B、C、D和E。参数集1至3在行17至19上描述。参数集1包括力目标值Fref2、位置目标值Pref2、速度目标值Pref2(·)、加速度目标值Pref2(··)、刚度系数Kref2、粘度系数Dref2以及惯性矩阵Λref2。参数集2包括力目标值Fref3、位置目标值Pref3、速度目标值Pref3(·)、加速度目标值Pref3(··)、刚度系数Kref3、粘度系数Dref3以及惯性矩阵Λref3。参数集3包括力目标值Fref4、位置目标值Pref4、速度目标值Pref4(·)、加速度目标值Pref4(··)、刚度系数Kref4、粘度系数Dref4以及惯性矩阵Λref4
切换条件A至E在行22至26上描述。切换条件A是手尖力F的平移z分量超过阈值Th_f_z3的条件。切换条件B是从基于转矩的力控制已开始时的时间点经过的时间超过阈值(5[s])的条件。切换条件C是手尖力F的平移z分量小于阈值Th_f_z4的条件。切换条件D是从基于转矩的力控制已开始时的时间点经过的时间超过阈值(4[s])的条件。切换条件E是从基于转矩的力控制已开始时的时间点经过的时间超过阈值(3[s])的条件。切换条件C和D与切换条件A相关联。此外,切换条件E与切换条件C相关联。即,切换条件A至E以多级树结构相关联。
在指令部501引起控制部510基于参数集1开始基于转矩的力控制的状态下,指令部501将多个切换条件A和B传送到控制部510。在基于转矩的力控制期间机器人200的状态与切换条件A匹配的状态下,控制部510的监测部511将指示切换条件A已匹配的切换信息传送到指令部501。另外,在基于转矩的力控制期间机器人200的状态已与切换条件B匹配的状态下,监测部511将指示切换条件B已匹配的切换信息传送到指令部501。
在接收到指示切换条件A已匹配的切换信息的状态下,指令部501的切换部502将对应于该切换信息的操作命令传送到控制部510。具体地,切换条件A是手尖力F的平移z分量超过阈值Th_f_z3的条件,并且如图13A所示,其指示工件W1的底面已抵靠在工件W3上。
由于满足切换条件A,所以切换部502基于行05和06上所描述的语句将操作指令传送到力命令生成部503,并且力命令生成部503将操作命令传送到控制部510。该操作命令是参数集2,并且力控制部517使用新的参数集2来根据基于转矩的力控制执行反馈控制。即,如图13B所示,通过基于转矩的力控制朝图中的向右方向执行探测操作。现在,在指令部501将充当操作命令的参数集2传送到控制部510的状态下,将与被确定为已与机器人200的状态匹配的切换条件A相关联的新的切换条件C和D传送到控制部510的监测部511。
在接收到指示切换条件C已匹配的切换信息的状态下,指令部501的切换部502将对应于该切换信息的操作命令传送到控制部510。具体地,切换条件C是手尖力F的平移z分量小于阈值Th_f_z4的条件,并且如图13B所示,其指示工件W1的底面已进入工件W3的凹部。
由于满足切换条件C,所以切换部502基于行07和08上所描述的语句将操作指令传送到力命令生成部503,并且力命令生成部503将操作命令传送到控制部510。该操作命令是参数集3,并且力控制部517使用新的参数集3通过基于转矩的力控制执行反馈控制。即,如图13C所示,力控制部517通过基于转矩的力控制在向下方向上执行配合操作。这里,在指令部501将充当操作命令的参数集3传送到控制部510的状态下,指令部501将与被确定为已与机器人200的状态匹配的切换条件C相关联的新的切换条件E传送到控制部510的监测部511。
如所描述的,根据第二实施方案,在基于转矩的力控制期间切换条件已匹配的状态下,控制部510将切换信息通知给切换部502,并且切换部502基于通知的切换信息执行条件分支。基于指令部501和控制部510的操作,可以一次或多次切换与力控制相关联的参数。即,便于以多个阶段进行复杂的切换动作,例如在切换条件A已匹配的状态下从初始参数集1切换到参数集2、以及在切换条件C已匹配的状态下进一步从参数集2切换到参数集3。
第三实施方案
接下来,将描述根据第三实施方案的机器人系统。图14是根据第三实施方案的指令部501和控制部510A的控制框图。根据第三实施方案的控制部510A,参数存储单元520添加到图7所示的控制部510A。此外,关于转换时间ts的信息添加到来自力命令生成部503的输出。
参数存储单元520在切换之前维持参数。通过在切换之前维持参数,如果发生与力控制相关联的参数的切换,则在参数设定部516处通过内插函数对切换之前的参数和切换之后的参数进行内插。因此,可以防止参数的突然变化。作为用于执行内插的方法,例如,可以使用内插函数,诸如线性内插、三次多项式、Sigmoid函数等,但是本发明不限于此。
为了简化,将描述只有作为参数中的一个参数的力目标值Fref经受内插的情况。图15A是示出未执行内插的状态下的手尖的力目标值Fref的时间变化的示意图。图15B是示出未执行内插的状态下的手尖力F的时间变化的示意图。图15C是示出执行内插的状态下的手尖的力目标值Fref的时间变化的示意图。图15D是示出执行内插的状态下的手尖力F的时间变化的示意图。
如图15A所示,如果未执行内插,则力目标值Fref被逐步地切换。因此,如图15B所示,手尖力F相对于力目标值Fref过冲。另一方面,根据第三实施方案,如图15C所示,在转换时间ts内使用内插函数执行力目标值Fref的内插。在图15C的示例中,在转换时间ts内执行线性内插。因此,可以防止由力控制部517计算的转矩命令值τMFref1至τMFref6显著变化。因此,如图15D所示,可以防止手尖力F过冲。如所描述的,根据第三实施方案,可以防止手尖力F的过冲,并且可以更稳定地执行机器人200的操作。
第四实施方案
现在,将描述根据第四实施方案的机器人系统。图16是示出根据第四实施方案的机器人程序506的一个示例的说明图。在第四实施方案中,延迟时间函数添加到监测部511,并且关于延迟时间的信息添加到从力命令生成部503到监测部511的输出。
延迟时间被描述为机器人程序506的行12上的切换条件A。具体地,其意味着在监测部511中开始基于转矩的力控制之后的0.4[s]的预先确定的时间期间,将不执行手尖力F的平移z分量的确定。
图17是示出根据第四实施方案的确定切换条件是否已匹配的概念图。图17示出切换条件是手尖力F的六个元素中的一个分量小于阈值Th_f_z2的条件的情况。
在位置控制之后执行基于转矩的力控制的状态下,如图17所示,由于紧接在开始基于转矩的力控制之后的控制的改变,手尖力F的波动可能变得显著。在从切换条件已从指令部501被接收时的时间点已经过预先确定的时间ta之后机器人200的状态已与切换条件匹配的状态下,控制部510的监测部511将切换信息传送到指令部501。在图16和图17所示的示例中,预先确定的时间ta是0.4[s]的延迟时间。由控制部510的监测部511执行的确定操作可以通过设定在预先确定的时间ta(例如,0.4[s])内不执行确定操作的掩蔽期间而稳定。
如所描述的,根据第四实施方案,控制部510的监测部511具有延迟功能,使得操作者可以通过在机器人程序506中输入语句来控制切换条件的确定的开始时间。因此,监测部511将忽视在机器人200的操作开始时可能发生的手尖力F或手尖位置P的显著波动,并且可以提高机器人200的控制的稳定性。
本发明不限于上述实施方案,并且在本发明的范围内可以有各种修改。此外,实施方案中所描述的效果仅仅是由本发明引起的最优选的效果的示例。本发明的效果不限于实施方案中所描述的那些。
本发明还可以通过将经由网络或存储介质实现上述实施方案的一个或多个功能的程序提供给系统或设备并且使系统或设备中的计算机中的一个或多个处理器执行读取并执行程序的过程来实现。本发明还可以通过实现一个或多个功能的电路(诸如ASIC)来实现。
根据上述实施方案,CPU 301具有多个核,并且所述多个核实现指令部和控制部的功能,但是还可以通过多个CPU或多个计算机实现指令部和控制部的功能。此外,即使指令部和控制部的功能由仅具有一个核的一个CPU实现,本发明也可以通过配置所述系统以使得多个处理(即多个应用软件)能够独立执行来实现。即,CPU可以通过执行第一处理而起到指令部的作用,并且还通过执行第二处理而起到控制部的作用。从算术运算负荷的观点来看,相比通过仅具有一个核的一个CPU来实现指令部和控制部的功能,更优选的是通过多个核、多个CPU或多个计算机来实现指令部和控制部的功能。
根据上述实施方案,已描述机械臂是竖向铰接机械臂的情况,但是本发明不限于该示例。机械臂可以是例如水平关节型机械臂、并联型机械臂、正交型机器人等。
其他实施方案
本发明的实施方案还可以由系统或设备的计算机实现,所述计算机读出并执行记录在存储介质(其还可以被更全地称为“非暂态计算机可读存储介质”)上的计算机可执行指令(例如,一个或多个程序)以执行上述实施方案中的一个或多个实施方案的功能和/或包括用于执行上述实施方案中的一个或多个实施方案的功能的一个或多个电路(例如,专用集成电路(ASIC)),以及通过由系统或设备的计算机执行的方法来实现,所述方法例如通过如下方式实施:从存储介质读出并执行计算机可执行指令以执行上述实施方案中的一个或多个实施方案的功能和/或控制一个或多个电路以执行上述实施方案中的一个或多个实施方案的功能。计算机可以包括一个或多个处理器(例如,中央处理单元(CPU)、微处理单元(MPU)),并且可以包括单独的计算机或单独的处理器的网络以读出并执行计算机可执行指令。计算机可执行指令可以例如从网络或存储介质提供给计算机。存储介质可以包括例如硬盘、随机存取存储器(RAM)、只读存储器(ROM)、分布式计算系统的存储器、光盘(诸如光碟(CD)、数字通用光盘(DVD)或蓝光光盘(BD)TM)、闪存存储器装置、存储卡等。
其它实施例
本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施方案的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。
虽然已参考示例性实施方案描述了本发明,但是应当理解,本发明不限于所公开的示例性实施方案。所附权利要求的范围将被赋予最广泛的解释,以便包含所有此类修改和等效的结构和功能。

Claims (14)

1.一种机器人控制设备,包括:
第一控制部,所述第一控制部被配置成根据机器人程序输出机器人的操作命令;以及
第二控制部,所述第二控制部被配置成基于机器人的传感器值根据来自第一控制部的操作命令执行机器人的操作的反馈控制,
其中第一控制部被配置成通过参照机器人程序将操作命令和切换条件输出到被配置成执行反馈控制的第二控制部,
其中如果基于传感器值确定机器人的状态与切换条件匹配,第二控制部被配置成将指示机器人的状态已与切换条件匹配的信息输出到第一控制部,并且
其中如果第一控制部接收到来自第二控制部的信息,第一控制部被配置成通过参照机器人程序将不同于所述操作命令的不同操作命令和不同于所述切换条件的不同切换条件输出到第二控制部,并且第二控制部被配置成根据所述不同操作命令切换机器人的操作。
2.根据权利要求1所述的机器人控制设备,其中所述第二控制部包括确定部,所述确定部被配置成基于所述传感器值确定所述状态是否与所述切换条件匹配,
其中所述第一控制部被配置成将所述切换条件和所述不同切换条件输出到所述确定部。
3.根据权利要求1所述的机器人控制设备,其中所述第一控制部被配置成,即使所述第一控制部在第二控制部执行反馈控制的同时接收到来自第二控制部的信息,所述第一控制部也通过参照机器人程序将所述不同操作命令和所述不同切换条件输出到所述第二控制部。
4.根据权利要求1所述的机器人控制设备,其中所述第一控制部与反馈控制的控制系统分开。
5.根据权利要求1所述的机器人控制设备,还包括分别对应于多个关节设置的多个马达控制器,
其中所述第二控制部被配置成基于所述操作命令或所述不同操作命令将控制值输出到所述马达控制器,所述马达控制器基于所述控制值和所述传感器值分别对马达进行反馈控制。
6.根据权利要求1所述的机器人控制设备,其中机器人程序能够通过操作者附加。
7.根据权利要求5所述的机器人控制设备,其中传感器值中对第二控制部的反馈和传感器值中对马达控制器的反馈并行地执行。
8.根据权利要求5所述的机器人控制设备,其中第一控制部被配置成通过参照机器人程序将机器人的预定部分处的力目标值、位置目标值、速度目标值、加速度目标值、目标刚度系数、目标粘度系数、目标惯性矩阵中的至少一者作为所述操作命令或所述不同操作命令输出到第二控制部,并且
其中所述第二控制部被配置成基于所述操作命令或所述不同操作命令生成分别对应于所述多个关节的转矩命令值或角度命令值并将它们分别输出到马达控制器。
9.根据权利要求1所述的机器人控制设备,其中所述第一控制部和所述第二控制部分别被分配CPU中的核并且能够通过核独立地执行算数运算。
10.根据权利要求1所述的机器人控制设备,其中不同的CPU分别用作所述第一控制部和所述第二控制部使得所述第一控制部和所述第二控制部能够独立地执行算数运算。
11.一种机器人系统,包括:
根据权利要求1-10中任一项所述的机器人控制设备;以及
所述机器人。
12.一种机器人控制方法,所述机器人控制方法被配置成通过第一控制部和第二控制部控制机器人,所述第一控制部被配置成根据机器人程序输出机器人的操作命令,所述第二控制部被配置成基于机器人的传感器值根据来自第一控制部的所述操作命令执行机器人的操作的反馈控制,所述机器人控制方法包括:
通过参照机器人程序通过第一控制部将所述操作命令和切换条件输出到被配置成执行反馈控制的第二控制部;
如果基于所述传感器值确定机器人的状态与切换条件匹配,通过第二控制部将指示机器人的状态已与切换条件匹配的信息输出到第一控制部;
其中如果第一控制部接收到来自第二控制部的信息,第一控制部被配置成通过参照机器人程序将不同于所述操作命令的不同操作命令和不同于所述切换条件的不同切换条件输出到第二控制部,并且第二控制部被配置成根据所述不同操作命令切换机器人的操作。
13.一种制品的装配制造方法,所述装配制造方法包括基于根据权利要求12所述的机器人控制方法使用机器人执行将第一工件装配到第二工件的操作。
14.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储用于使计算机执行根据权利要求12所述的机器人控制方法的程序。
CN201810053956.6A 2017-01-20 2018-01-19 机器人控制设备、系统和控制方法及制品装配制造方法 Active CN108326877B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017008955A JP6851837B2 (ja) 2017-01-20 2017-01-20 制御装置、ロボットシステム、制御方法、プログラム、記録媒体及び物品の製造方法
JP2017-008955 2017-01-20

Publications (2)

Publication Number Publication Date
CN108326877A CN108326877A (zh) 2018-07-27
CN108326877B true CN108326877B (zh) 2022-03-08

Family

ID=60923366

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810053956.6A Active CN108326877B (zh) 2017-01-20 2018-01-19 机器人控制设备、系统和控制方法及制品装配制造方法

Country Status (4)

Country Link
US (1) US20180207798A1 (zh)
EP (1) EP3351353A1 (zh)
JP (1) JP6851837B2 (zh)
CN (1) CN108326877B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180021949A1 (en) * 2016-07-20 2018-01-25 Canon Kabushiki Kaisha Robot apparatus, robot controlling method, program, and recording medium
JP6852450B2 (ja) * 2017-02-17 2021-03-31 セイコーエプソン株式会社 表示方法およびロボットシステム
US10537995B2 (en) * 2017-05-08 2020-01-21 Seiko Epson Corporation Controller and control method of robot, and robot system
EP3441201B1 (en) * 2017-08-08 2023-01-18 Siemens Healthcare GmbH Method for operating a robot and robotic system
JP6661676B2 (ja) * 2018-01-18 2020-03-11 ファナック株式会社 ロボット制御装置
EP4000820A4 (en) * 2019-07-18 2023-03-22 Kabushiki Kaisha Yaskawa Denki ROBOT SYSTEM, ROBOT CONTROL METHOD AND SERVO SYSTEM
US11723739B2 (en) * 2019-08-15 2023-08-15 Verb Surgical Inc. Admittance compensation for surgical tool
JP6821101B1 (ja) 2019-09-12 2021-01-27 三菱電機株式会社 数値制御装置
US11904473B2 (en) * 2019-12-30 2024-02-20 Intrinsic Innovation Llc Transformation mode switching for a real-time robotic control system
CN114237054A (zh) * 2021-12-18 2022-03-25 福州大学 空中机器人的6d交互控制方法
CN114227716B (zh) * 2021-12-30 2024-06-04 重庆特斯联智慧科技股份有限公司 支持控制逻辑云调用的机器人系统及其方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104057291A (zh) * 2013-03-19 2014-09-24 株式会社安川电机 机器人装置
CN104552291A (zh) * 2013-10-10 2015-04-29 精工爱普生株式会社 机器人控制装置、机器人系统、机器人以及机器人控制方法
CN105034010A (zh) * 2014-04-30 2015-11-11 发那科株式会社 进行机器人的灵活控制的控制装置
CN105388879A (zh) * 2014-08-20 2016-03-09 库卡罗伯特有限公司 用于对工业机器人编程的方法和对应的工业机器人
CN106239476A (zh) * 2015-06-08 2016-12-21 发那科株式会社 机器人与具备力的显示功能的机器人控制装置
CN106272416A (zh) * 2016-08-29 2017-01-04 上海交通大学 基于力觉和视觉的机器人细长轴精密装配系统及方法

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5845311B2 (ja) 1977-09-10 1983-10-08 株式会社クボタ 固液分離装置
US4458189A (en) * 1982-08-06 1984-07-03 Mts Systems Corporation Control mode switching circuit
US5116180A (en) * 1988-07-18 1992-05-26 Spar Aerospace Limited Human-in-the-loop machine control loop
JP2812582B2 (ja) * 1991-05-21 1998-10-22 株式会社日立製作所 産業用ロボットの制御装置
JPH05200686A (ja) * 1992-01-22 1993-08-10 Fujitsu Ltd ロボット装置
JPH0724665A (ja) * 1993-07-05 1995-01-27 Yamatake Honeywell Co Ltd 自動組立装置
JPH0969013A (ja) * 1995-08-31 1997-03-11 Fanuc Ltd サーボモータを用いたサーボ系の制御モード切り換え方法
JP3124519B2 (ja) * 1998-07-23 2001-01-15 セイコー精機株式会社 制御系のモード切替え機能を有するロボット制御装置
EP1652634B1 (en) * 2003-07-29 2011-12-28 Panasonic Corporation Robot arm control method and control device
JP4041508B2 (ja) * 2005-07-11 2008-01-30 ファナック株式会社 サーボダイクッションの制御装置
JP2008290228A (ja) * 2007-04-24 2008-12-04 Fanuc Ltd 嵌合装置
US20110015787A1 (en) * 2009-01-22 2011-01-20 Yuko Tsusaka Control apparatus and control method for robot arm, robot, control program for robot arm, and integrated electronic circuit
JP5218470B2 (ja) * 2010-04-28 2013-06-26 株式会社安川電機 ロボットの作業成否判定装置、および方法
JP5743495B2 (ja) * 2010-11-05 2015-07-01 キヤノン株式会社 ロボット制御装置
JP5962020B2 (ja) * 2012-01-17 2016-08-03 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット及びロボット制御方法
JP6322948B2 (ja) * 2013-10-10 2018-05-16 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、ロボット、ロボット制御方法、及びプログラム
JP6100727B2 (ja) * 2014-04-09 2017-03-22 ファナック株式会社 リードスルー機能を有する人協調型産業用ロボット
US9849595B2 (en) * 2015-02-06 2017-12-26 Abb Schweiz Ag Contact force limiting with haptic feedback for a tele-operated robot
JP6055002B2 (ja) * 2015-02-20 2016-12-27 ファナック株式会社 ロボットを退避動作させる人間協調ロボットシステム
JP6584102B2 (ja) * 2015-03-13 2019-10-02 キヤノン株式会社 ロボット装置、ロボット制御方法、プログラム、記録媒体、及び物品の製造方法
CN106239516B (zh) * 2015-06-03 2021-09-24 精工爱普生株式会社 机器人控制装置、机器人以及机器人系统
JP2017077608A (ja) * 2015-10-21 2017-04-27 ファナック株式会社 ロボットの安全監視装置
JP2018037021A (ja) * 2016-09-02 2018-03-08 オムロン株式会社 制御装置および制御システム
EP3321043A3 (en) * 2016-11-10 2018-10-10 Canon Kabushiki Kaisha Method of controlling holding apparatus, holding apparatus, and robot apparatus
JP7020812B2 (ja) * 2017-07-19 2022-02-16 キヤノン株式会社 ロボット装置、ロボット装置の制御方法、ロボット装置を用いた物品の組立方法、制御プログラムおよび記録媒体
JP7204354B2 (ja) * 2018-06-19 2023-01-16 キヤノン株式会社 ロボットシステム、ロボットシステムの制御方法、ロボットシステムを用いた物品の製造方法、プログラム及び記録媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104057291A (zh) * 2013-03-19 2014-09-24 株式会社安川电机 机器人装置
CN104552291A (zh) * 2013-10-10 2015-04-29 精工爱普生株式会社 机器人控制装置、机器人系统、机器人以及机器人控制方法
CN105034010A (zh) * 2014-04-30 2015-11-11 发那科株式会社 进行机器人的灵活控制的控制装置
CN105388879A (zh) * 2014-08-20 2016-03-09 库卡罗伯特有限公司 用于对工业机器人编程的方法和对应的工业机器人
CN106239476A (zh) * 2015-06-08 2016-12-21 发那科株式会社 机器人与具备力的显示功能的机器人控制装置
CN106272416A (zh) * 2016-08-29 2017-01-04 上海交通大学 基于力觉和视觉的机器人细长轴精密装配系统及方法

Also Published As

Publication number Publication date
EP3351353A1 (en) 2018-07-25
CN108326877A (zh) 2018-07-27
JP2018114607A (ja) 2018-07-26
US20180207798A1 (en) 2018-07-26
JP6851837B2 (ja) 2021-03-31

Similar Documents

Publication Publication Date Title
CN108326877B (zh) 机器人控制设备、系统和控制方法及制品装配制造方法
EP3147087B1 (en) Robot apparatus, robot controlling method, program, recording medium, and assembly manufacturing method
US10486309B2 (en) Robot controlling method, robot apparatus, program, recording medium, and method for manufacturing assembly component
EP2682237B1 (en) Robot control apparatus and robot control method
JP6659096B2 (ja) ロボット装置の制御方法、およびロボット装置
JP5893666B2 (ja) 力に応じて動かすロボットのロボット制御装置およびロボットシステム
JP5338297B2 (ja) ロボットの制御装置
JP6724831B2 (ja) コントロールシステム、コントローラ及び制御方法
JP7091422B2 (ja) ロボット装置、物品の製造方法、ロボット装置の制御方法、プログラム、記録媒体、駆動装置、駆動装置の制御方法
JP2014126939A (ja) 工作機械の負荷表示装置
US20180217574A1 (en) Numerical controller
JPH1133960A (ja) ロボット制御方法
US10786898B2 (en) Method for the automatic configuration of an external control system for the open-loop and/or closed-loop control of a robot system
TWI594858B (zh) 機械手臂教導控制系統
JP2017056525A (ja) ロボット装置、ロボット制御方法、プログラム、記録媒体及び組立部品の製造方法
KR101474778B1 (ko) 다관절 로봇의 동작인식을 통한 제어장치 및 그 방법
JP2016221661A (ja) ロボット制御方法、組立品の製造方法、ロボット装置、プログラム及び記録媒体
JP6464135B2 (ja) 数値制御装置
CN109352678B (zh) 机器人轴的重力补偿方法及装置、机器人
JP2019104091A (ja) ロボット装置、ロボット装置の制御方法
JP2017164833A (ja) マニピュレータ装置の制御装置、マニピュレータ装置の制御方法及びマニピュレータ装置の制御プログラム
JP2019214105A (ja) ロボット制御装置およびロボット制御方法
Vochten et al. Specification and control of human-robot handovers using constraint-based programming
JP7433509B2 (ja) 制御装置、ロボットシステム、学習装置、軌跡モデル、制御方法、およびプログラム
JPH08106320A (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