CN104511900B - 机器人校准装置及校准方法、机器人装置及其控制方法 - Google Patents

机器人校准装置及校准方法、机器人装置及其控制方法 Download PDF

Info

Publication number
CN104511900B
CN104511900B CN201410504893.3A CN201410504893A CN104511900B CN 104511900 B CN104511900 B CN 104511900B CN 201410504893 A CN201410504893 A CN 201410504893A CN 104511900 B CN104511900 B CN 104511900B
Authority
CN
China
Prior art keywords
calibration
robot
value
posture
robot body
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
CN201410504893.3A
Other languages
English (en)
Other versions
CN104511900A (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 CN104511900A publication Critical patent/CN104511900A/zh
Application granted granted Critical
Publication of CN104511900B publication Critical patent/CN104511900B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/39008Fixed camera detects reference pattern held by 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/39044Estimate error model from error at different attitudes and points
    • 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/39045Camera on end effector detects reference pattern

Landscapes

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

Abstract

本发明提供一种机器人校准装置及校准方法、机器人装置及其控制方法。所述机器人校准装置校准机器人本体2的命令值,所述机器人本体2的位置姿势是基于所述命令值而控制的。所述机器人校准装置包括:运算单元,其被构造为基于所述机器人本体2的理想位置姿势与所述机器人本体2的实际位置姿势之间的差,来计算校准所述命令值的校准函数。基于校准期间使用的校准用的命令值RHT com或者基于作为根据该命令值的控制的结果的控制结果值来运算所述理想位置姿势,而基于在根据所述校准用的命令值控制所述机器人本体2期间,由相对于所述机器人本体2以规定的相对位置姿势布置的照相机3获取的校准用的测量值RHT' meas来运算所述实际位置姿势。

Description

机器人校准装置及校准方法、机器人装置及其控制方法
技术领域
本发明涉及包括通过控制多个关节来驱动的多关节臂并利用视觉传感器的机器人装置中的机器人校准装置及机器人校准方法、机器人装置以及机器人装置的控制方法。
背景技术
传统上,如下机器人装置已经得到普及,该机器人装置包括垂直多关节臂和末端执行器(以下,称为机器人本体)以及用于控制这些部件的控制装置,并且还包括安装在臂梢端部(tip end part)的视觉传感器(以下,也称为照相机)。在该机器人装置中,通过照相机测量诸如工件的对象,并且控制装置根据测量结果对对象的位置姿势(position andorientation)进行运算,并且基于通过该运算获得的对象的位置姿势,来控制机器人本体的位置姿势。
通常,照相机作为基准采用的测量坐标系与机器人本体作为基准采用的操作坐标系不同。因此,为了从照相机的测量值获取机器人本体的操作目标值(命令值),需要将照相机在测量坐标系的测量值变换为操作坐标系的值。为了进行该坐标变换,需要预先进行测量坐标系与操作坐标系之间的校准操作,并获取校准值(坐标变换式)。
作为校准操作的示例,例如,已知称为手眼校准方法的方法。该方法使机器人本体采用多个位置姿势,并在各位置姿势下使照相机测量校准用的基准物(参见日本特开平10-063317号公报、以及Radu Horaud and Fadi Dornaika,"Hand-Eye Calibration",International Journal of Robotics Research Vol.14,No.3,195-210,1995)。该方法基于机器人本体的梢端部在该机器人本体的各个位置姿势下的命令值与来自照相机的校准用的基准物的测量值之间的关系,以使得残差最小的方式来获取操作坐标系与测量坐标系之间的关系,由此获取校准值。
在日本特开平10-063317号公报中记载的坐标校准方法未考虑机器人本体的操作误差。实际上,由于臂的机械误差或者挠度,而产生操作误差。还存在操作误差以外的、机器人本体固有的误差;这些误差包括组装误差和透镜畸变。这些误差无法通过传统的坐标校准方法充分抑制,并且妨碍了对机器人本体的位置姿势的控制的精度的提高。
发明内容
本发明的目的是提供能够通过对包含操作误差的机器人本体的位置姿势进行运算,提高对机器人本体的位置姿势的控制的精度的机器人校准装置、机器人校准方法、机器人装置及机器人装置的控制方法。
根据本发明的一方面,提供一种校准机器人本体的命令值的机器人校准装置,所述机器人本体包括多关节臂,并且所述机器人本体的位置姿势是基于所述命令值而控制的,所述机器人校准装置包括:运算单元,其被构造为基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差,来计算校准所述命令值的校准函数,其中,基于校准期间使用的校准用的命令值或者基于作为基于该命令值的控制的结果的控制结果值来运算所述理想位置姿势,而基于在基于所述校准用的命令值控制所述机器人本体期间,由相对于所述机器人本体以规定的相对位置姿势布置的视觉传感器获取的校准用的测量值来运算所述实际位置姿势。
根据本发明的另一方面,提供一种校准机器人本体的命令值的机器人校准方法,所述机器人本体包括多关节臂,并且所述机器人本体的位置姿势是基于所述命令值或者基于作为根据所述命令值的控制的结果的控制结果值而控制的,所述机器人校准方法包括:计算校准函数,所述计算使运算单元基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差,来计算校准所述命令值的校准函数,其中,基于校准期间使用的校准用的命令值来运算所述理想位置姿势,而基于在基于所述校准用的命令值控制所述机器人本体期间,由相对于所述机器人本体以规定的相对位置姿势布置的视觉传感器获取的校准用的测量值来运算所述实际位置姿势。
根据本发明的再一方面,提供一种机器人装置,所述机器人装置包括:机器人本体,其包括多关节臂;视觉传感器,其相对于所述机器人本体以规定的相对位置姿势布置;以及控制单元,其被构造为运算命令值并控制所述机器人本体的位置姿势,其中,所述控制单元:获取通过所述视觉传感器测量对象而得到的测量值,基于所述测量值生成临时命令值,使用校准函数校准所述临时命令值,并生成校准后的命令值,所述校准函数被基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差来计算,所述理想位置姿势被基于校准期间使用的校准用的命令值或者基于作为基于该命令值的控制的结果的控制结果值来运算,而所述实际位置姿势被根据在基于所述校准用的命令值控制所述机器人本体期间,由所述视觉传感器获取的校准用的测量值来运算,并且根据所述校准后的命令值,控制所述机器人本体的位置姿势。
根据本发明的再一方面,提供一种机器人装置的控制方法,所述机器人装置包括:机器人本体,其包括多关节臂;视觉传感器,其相对于所述机器人本体以规定的相对位置姿势布置;以及控制单元,其被构造为运算命令值并控制所述机器人本体的位置姿势,所述控制方法包括:获取测量值,其中,所述控制单元获取通过所述视觉传感器测量对象而得到的测量值;生成临时命令值,其中,所述控制单元基于所述测量值生成临时命令值;进行校准,其中,所述控制单元使用校准函数校准所述临时命令值,并生成校准后的命令值,所述校准函数被基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差来计算,所述理想位置姿势被基于校准期间使用的校准用的命令值或者基于作为基于该命令值的控制的结果的控制结果值来运算,而所述实际位置姿势被基于在基于所述校准用的命令值控制所述机器人本体期间,由所述视觉传感器获取的校准用的测量值来运算;以及控制位置姿势,其中,所述控制单元根据所述校准后的命令值,控制所述机器人本体的位置姿势。
通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。
附图说明
图1是例示根据本发明的第一实施例的机器人系统的示意性配置的图。
图2是例示根据本发明的第一实施例的机器人系统校准坐标并控制机器人本体的操作过程的流程图。
图3是例示根据本发明的第一实施例的机器人系统获取校准用的数据的操作过程的流程图。
图4是例示根据本发明的第一实施例的机器人系统计算校准函数的操作过程的流程图。
图5是例示在根据本发明的第一实施例的机器人系统进行的校准值计算期间机器人主体的位置姿势的图。
图6是例示在根据本发明的第一实施例的机器人系统进行的操作误差计算期间机器人主体的位置姿势的图。
图7是例示在根据本发明的第二实施例的机器人系统的示意性配置的图。
图8是例示在根据本发明的第二实施例的机器人系统进行的校准值计算期间机器人主体的位置姿势的图。
图9是例示根据本发明的第一实施例的机器人系统的控制装置与机器人校准装置被构造为彼此独立的变型例的示意性配置的图。
具体实施方式
现在,将参照附图详细描述本发明的优选实施例。
第一实施例
在本实施例的机器人系统1的描述之前,对本说明书中的式表示的定义进行描述。在本说明书中,在三维坐标系中表示构成机器人系统1的多关节臂20、手21、照相机3以及工件6的6自由度的位置姿势。通过坐标变换矩阵(齐次变换矩阵)来表示任意两个坐标系中的相对位置姿势。
首先,表示从任意坐标系A到任意坐标系B的相对位置姿势的坐标变换矩阵被表示为AHB。由坐标变换矩阵AHB指示的相对位置姿势也被表示为相对位置姿势AHB。例如,在本实施例中,如图1所示,以后述的机器人坐标系R为基准的后述手尖坐标系T的相对位置姿势被表示为RHT。以后述的照相机坐标系V为基准的后述工件坐标系W的相对位置姿势被表示为VHW
使用旋转矩阵Rot和平移矢量t,将相对位置姿势定义为式1。
式1
在式1中,旋转矩阵Rot为表示三维旋转的3×3矩阵,平移矢量t为3×1三维矢量。平移运动量的X、Y和Z分量被分别表示为tx、ty和tz。X、Y和Z轴的旋转分量被分别表示为θx、θy和θz。旋转矩阵Rot被定义为式2。平移矢量t被定义为式3。
式2
式3
在式2中,表示关于X、Y和Z轴的旋转分量的旋转矩阵被分别定义为Rotx、Roty和Rotz。
接下来,关于坐标变换矩阵的性质,式4对于任意坐标系A、B和C都成立。
AHCAHB·BHC 式4
即,通过将坐标系B对坐标系A的相对位置姿势AHB与坐标系C对坐标系B的相对位置姿势BHC相乘,能够获取坐标系C对坐标系A的相对位置姿势AHC
为了获取坐标系A对坐标系B的相对位置姿势BHA,如式5所示,计算逆矩阵。
BHA=(AHB)-1 式5
为了根据包括平移运动量和关于各轴的旋转分量的矢量(tx,ty,tzxyz)获取坐标变换矩阵AHB,本来需要使用式1至3来进行表示。然而,在本说明书中,使用如式6所指示的H(tx,ty,tzxyz)来简单地进行表示。
H(tx,ty,tz,θx,θy,θz)=AHB 式6
同样,用于根据坐标变换矩阵AHB获取包括平移运动量和关于各轴的旋转分量的矢量(tx,ty,tzxyz)的逆变换式不使用式1至3,而被表示为pose(AHB)。
pose(AHB)=(tx,ty,tz,θx,θy,θz) 式7
(请注意:-180[deg]<θxyz<180[deg])
在θy=±90[deg]的情况下的pose(AHB)的变换不具有唯一解。在此情况下,计算多个解中的任意一个。在本实施例中,坐标变换矩阵的目标范围是与机器人本体2的操作误差相当的小角度范围。因此,θy=±90[deg]的情况极少。而无唯一解的情况的不利影响极小。
接下来,对根据本实施例的机器人系统1进行描述。
如图1所示,机器人系统1包括机器人装置1a和机器人校准单元(运算单元)47。机器人装置1a包括机器人本体2、设置在机器人本体2上的单眼照相机(视觉传感器)3和控制装置(校准装置)4,机器人本体2包括多关节臂20和手21;控制装置4控制机器人本体2的位置姿势。
多关节臂20(以下,称为臂)被固定在架台5上,架台5被固定在机器人本体2的基座端部上。在架台5中定义了用于表示以架台5为基准的臂20的位置姿势的机器人坐标系R。架台5被构造为其上允许放置工件(对象)6。在工件6中定义了以工件6为基准的工件坐标系W。
臂20为6轴垂直多关节臂20,其包括7个链节(link)和将这些节以可摆动或者可旋转的方式连接的6个关节。因此,本实施例采用6轴垂直多关节臂20。然而,配置不限于此。作为另选方案,可以根据用途和目的适当改变轴数。
各关节设置有输出设备。该设备可以为驱动相应关节的马达,或者根据需要为线性致动器。各关节还设置有输入设备。这些设备可以是检测马达的旋转角度的编码器、检测供给相应马达的电流的电流传感器以及检测相应关节的扭矩的扭矩传感器。
臂20响应从控制装置4的机器人控制单元(控制单元)44输出的命令值,驱动各关节,并调整手21的位置姿势。机器人控制单元44针对以机器人坐标系R为基准的后述手尖坐标系T的相对位置姿势(命令值RHT)的目标值,计算臂20的各关节要有的角度,并向各关节输出命令值RHT。此外,机器人控制单元44能够从各编码器获取关节的当前角度信息,并根据后述的手尖坐标系T的当前相对位置姿势的命令值RHT,计算作为控制的结果的控制结果值。后述的机器人校准单元47在获取到后述的校准用的数据时,能够使用机器人控制单元44获取到的控制结果值,替代命令值RHT
手21由臂20的梢端部支持。手21的位置姿势通过臂20的操作来调整。手21例如包括能够握住工件6的三个手指。在手21中以该手21为基准定义了手尖坐标系T。在本实施例中,能够握住工件6的手21由此安装到臂20上。然而,配置不限于此。例如,可以安装能够操作工件6的任意末端执行器。末端执行器可以为不是握住而是保持工件6的机构,以及加工工件6的工具。
照相机3由臂20的梢端部或者手21来支持。照相机3响应来自控制装置4的照相机控制单元45的命令摄像(进行测量),并将图像数据发送到照相机控制单元45。在照相机3中,以光轴的方向和在摄像视野的纵横方向为基准,定义了照相机坐标系V。在本实施例中,照相机3被设置在相对机器人本体2的规定的相对位置姿势。在该相对位置姿势中,光轴具有距手21的长轴方向大约45度的角度,并且朝向手21的梢端。
与机器人本体2连接的控制装置4可以是计算机,并控制机器人本体2。构成控制装置4的计算机包括例如CPU 40、存储用于控制各个部件的程序的ROM 41、临时存储数据的RAM 42以及使得能够与机器人本体2通信的输入输出接口电路(I/F)43。
CPU 40包括上述机器人控制单元44、照相机控制单元45以及工件位置姿势计算单元46。在本实施例中,控制装置4与机器人校准装置共用。控制装置4的CPU 40具有如下配置:该配置包括作为机器人校准装置的操作单元的机器人校准单元47。
照相机控制单元45将照相机3获取的图像数据发送到控制装置4的工件位置姿势计算单元46。工件位置姿势计算单元46基于接收到的图像数据进行图像处理,并计算工件6的位置姿势。在此计算的输出值是相当于以照相机坐标系V为基准的工件坐标系W的位置姿势VHW的数据。工件位置姿势计算单元46将处理结果发送到机器人校准单元47。
作为本发明的特征部分的机器人校准单元47与本发明的机器人校准装置及其运算单元相对应。机器人校准单元47基于从机器人控制单元40获取的手尖坐标系T中的手21的位置姿势的命令值RHT以及从工件位置姿势计算单元46获取的工件坐标系W中的工件6的位置姿势VHW,来计算校准值。此外,机器人校准单元47根据基于校准用的命令值RHT com的机器人本体2的理想位置姿势与基于相应校准的测量值RHT' meas的机器人本体2的实际位置姿势之间的差,来计算用于校准命令值的校准函数F。
将根据图2的流程图的步骤S1至S3描述使机器人系统1的上述机器人校准单元47计算校准值并获取校准函数F的过程。在图2的流程图中,步骤S1至S3例示了在机器人系统1的启动或者维护时进行的校准操作过程。步骤S4至S7例示了针对在产品线中顺序供给的各个工件6重复进行的位置姿势的控制过程。
首先,根据机器人校准单元47,在机器人控制单元44将机器人本体2顺序定位在多个位置姿势的同时,如图5和图6所示,照相机控制单元45使照相机3顺序测量校准板(校准用的基准物)。由此,机器人校准单元47获取校准所需的多个数据,并存储该数据(步骤S1)。
在校准板10的表面上布置和显示具有平面形和规定的尺寸的多个(至少三个)圆图案10a和10b。照相机3能够测量6自由度的位置姿势。校准板10被放置在照相机3能够测量平面的视野中,并且被相对固定到架台5,以即使当机器人本体2移动时,也不会移动。
校准板10上的多个圆图案10a和10b中仅角部的一个为中空圆图案10a。其他图案为实心圆图案10b。由于中空圆图案10a的存在,因此其他圆图案10a和10b整体被配置为非点对称。由此,能够唯一识别校准板10的6自由度位置姿势。在校准板10上,以该校准板10为基准定义校准板坐标系P。
校准板10上的图案不限于该圆图案。作为另选方案,图案可以是例如线性格栅图案。例如,在被采用作为照相机3的立体照相机能够进行三维测量的情况下,作为校准用的基准物的对象不限于平板校准板10。对象可以具有立体形状。此外,作为操作对象的实际工件6可以用作校准用的基准物。
在获取校准用的数据之前的初始过程中,将校准用的N个位置姿势预先存储在控制装置4的ROM 41或者RAM 42中。定义校准用的位置姿势的适当方法使机器人本体2在机器人本体2的操作所需的操作范围内,具有尽可能多的各种位置姿势。虽然根据上述校准函数F的类型存在变化,但是位置姿势的数量越多,通常精度越高。因此,可以适当地使用十到几十个位置姿势。实际上,假定工件6具有位置姿势的变化。因此,可以将机器人本体2的可动范围适当地设定为更宽的范围,以适应变化,从而提高精度。
在此,根据图3所示的流程图,对步骤S1中的获取校准用的数据的过程进行详细地描述。
机器人校准单元47将用于重复处理的计数器i初始化为1(步骤S11)。机器人控制单元44将机器人本体2定位在第一校准位置姿势(i=1)(步骤S12)。根据机器人校准单元47,照相机控制单元45使照相机3测量校准板10(步骤S13)。此外,根据机器人校准单元47,工件位置姿势计算单元46基于从照相机3获取的数据,计算校准板10的位置姿势。即,工件位置姿势计算单元46以照相机坐标系V为基准计算校准板坐标系P的位置姿势VHP[i]。
机器人校准单元47在对机器人本体2定位时,获取与手21的梢端部的理想位置姿势相对应的命令值RHT[i],并将该位置姿势存储在RAM42中(步骤S14),接着将测量值VHP[i]存储在RAM 42中(步骤S15)。可以将预先存储作为校准用的位置姿势的数据用作手21的梢端部的位置姿势的命令值RHT[i]。作为另选方案,在机器人控制单元44基于命令值RHT[i]确定机器人本体2的位置姿势之后,可以从各关节的编码器获取当前角度信息的值,接着,可以计算根据命令值RHT[i]的控制结果的控制结果值。在本实施例中,机器人校准单元47能够使用获取的控制结果值替代命令值RHT[i]。通常,在机器人本体2的操作中,残留距控制的目标值的小偏移。因此,作为校准用的数据的控制结果值的使用能够实现比命令值RHT[i]更高的精度。
机器人校准单元47将计数器i加1(步骤S16),并确定计数器i是否超过校准位置姿势的数量N(步骤S17)。如果机器人校准单元47确定计数器i不超过N(步骤S17,否),则该单元将机器人本体2定位在下一校准位置姿势,并进行与上述处理同样的处理(步骤S12至S16)。
如果机器人校准单元47确定计数器i超过N(步骤S17,是),则获取校准用的数据的处理结束,并且处理返回到初始处理。因此,在获取校准用的数据的处理(图2的步骤S1)完成之后,在机器人本体2的N个位置姿势的命令值RHT com[i](i=1,2,...,N)被存储在RAM 42中。同样,校准板10的N个测量值VHP meas[i](i=1,2,...,N)被存储在RAM 42中。
接着,如图5所示,机器人校准单元47通过运算获取照相机坐标系V与手尖坐标系T之间的相对位置姿势(第一校准值)VHT以及机器人坐标系R与校准板坐标系P之间的相对位置姿势(第二校对值)RHP(图2的步骤S2)。在此,机器人校准单元47通过使用例如公知的手眼校准(参见Radu Horaud and Fadi Dornaika,"Hand-Eye Calibration",InternationalJournal of Robotics Research Vol.14,No.3,195-210,1995)的运算,基于先前获取的命令值RHT[i]和测量值VHP[i],获取VHTRHP
以下,描述具体过程。照相机3和手21相互固定,机器人本体2与校准板10相互固定。因此,不管机器人本体2的位置姿势,VHTRHP不变。在无照相机3的测量误差以及机器人本体2的操作误差的情况下,式8针对各校准位置姿势都成立。
VHP[i]=VHT·(RHT[i])-1·RHP 式8
(i=1,2,...,N)
校准用的位置姿势的数量为N。因此,针对各情况获取值,由此获取N个连立式8。实际获取的数据具有误差。因此,通过误差最小化计算,来计算使N组数据的误差(残差)最小的值VHTRHP,并且VHTRHP被用作校准值。该计算方法与公知的手眼校准类似。因此,省略其详细描述。以下,将在步骤S2中计算的校准值表示为VHT calRHP cal(参见图6)。
如果作为设计值预先已知坐标系之间的关系,则可以使用设计值,而不使用在步骤S1中获取的数据。也可以通过照相机3直接测量手21,获取照相机坐标系V与手尖坐标系T之间的关系VHT
接下来,描述作为本实施例的特征的、计算校准函数F的参数的处理(步骤S3,计算校准函数)。该校准函数F是表示针对机器人本体2的命令值与根据命令值的机器人本体2的实际位置姿势之间的关系的函数。更具体地说,根据校准期间在步骤S1获取的校准数据的数据实际测量值,获取命令值与实际位置姿势之间的关系,并且,在实际操作中,使用该关系来预测提供了命令值的情况下的手21的实际位置姿势。该误差校正能够高精度地操作机器人本体2。
假定手尖位置命令值为RHT com,并且通过向机器人本体2提供命令值RHT com实现的手尖位置姿势的预测值为RHT pred。由此,校准函数F被定义为式9。
式9
在步骤S3中,计算用于近似地识别由式9表示的校准函数F的参数。可以使用各种函数作为校准函数F。在本实施例中,描述使用多项式的情况。
以下,参照图4所示的流程图,描述作为多项式的校准函数F的参数的计算过程。
首先,机器人校准单元47将重复处理的计数器i初始化为1(步骤S31)。该计数器i与在步骤S1中获取的N个校准位置姿势相对应。机器人校准单元47针对第i个测量值VHP meas[i],使用式10,来计算手尖实现位置姿势的测量值RHT' meas[i](步骤S32)。
式10
(i=1,2,...,N)
测量值RHT' meas[i]是针对第i个校准位置姿势反映照相机3的测量值VHP meas[i]的机器人坐标系R与实现的手尖坐标系T'之间的关系的指标。如果照相机3的测量精度高于机器人本体2的操作精度,则测量值RHT' meas[i]是在机器人本体2的理想位置姿势的命令值RHT com[i]中反映机器人本体2在现实世界中实际定位的位置姿势的值。即,可以将手尖实现位置姿势的测量值RHT' meas[i]视为在理想位置姿势的命令值RHT com[i]中包含的差(操作误差)THT' err[i]的值。
接着,机器人校准单元47进行校准函数F的参数计算的预处理;即,该单元使用基准位置姿势的命令值RHT0对第i个校准位置姿势的命令值RHT com[i]和测量值RHT' meas[i]进行相对化(步骤S3,相对化)。即,机器人校准单元47使用基准位置姿势,对第i个校对位置姿势的理想位置姿势和实际位置姿势进行相对化。如式11所示,使用机器人本体2的基准位置姿势的预定命令值(基准命令值)RHT0,对第i个校准位置姿势的手尖位置姿势的命令值RHT com[i]进行相对化。
式11
(i=1,2,...,N)
在此,相对化表示将命令值RHT com[i]和测量值RHT' meas[i]转换为与基准位置姿势的命令值RHT0相对的位置姿势的相对值。可以将获取到校准位置姿势时的代表位置姿势的命令值可以用作基准位置姿势的命令值RHT0
如式12所示,使用基准位置姿势的命令值RHT0,对第i个校准位置姿势的手尖实现位置姿势的测量值RHT' meas[i]进行相对化。
式12
(i=1,2,...,N)
如果当定义了在后述处理中输入6自由度分量(x,y,z,α,β,γ)的多项式函数f时旋转分量大,则函数可能在±180°附近不连续,并且在后述处理中近似的精度可能被降低。步骤S33的处理能够抑制该降低。步骤S33是用于抑制近似精度的降低的处理。因此,在校准位置姿势的一定条件下,可以省略该处理。
机器人校准单元47接着将计数器i加1(步骤S34),并确定计数器i是否超过校准位置姿势的数量N(步骤S35)。如果机器人校准单元47确定计数器i未超过N(步骤S35,否),则针对下一校准位置姿势执行与上述处理同样的处理。
如果机器人校准单元47确定计数器i超过N(步骤S35,是),则开始多项式的参数的运算处理(步骤S36)。此刻,针对各校准位置姿势,计算总共N组相对化的手尖位置姿势的命令值T0HT com[i]和相对化的手尖实现位置姿势的测量值T0HT' meas[i]。
在步骤S36中,为获取式9的校准函数F,作为预处理,进行以下两个转换。首先,如上所述,为避免旋转分量的不连续性,使用基准位置姿势的命令值RHT0进行相对化。其次,式9中的手尖位置命令值RHT com和手尖位置姿势的预测值RHT pred为4×4齐次变换矩阵。自由度为6。在多项式中难以使用该形式来处理矩阵。因此,将矩阵转换为6分量的形式。即,用式13中表示的多项式函数f替代校准函数F。
式13
在此,通过式14来计算相对化的手尖位置姿势的预测值T0HT pred和相对化的手尖位置姿势的命令值T0HT com
式14
通过在式13中代入式14,对式进行变形,由此实现式15。
式15
因此,校准函数F与多项式函数f之间的关系由式16来表示。
式16
在式16中,已知基准位置姿势的命令值RHT0。因此,多项式函数f的参数的获取能够定义校准函数F。由此,作为多项式函数f的输入值的相对化的手尖位置姿势的命令值T0HT com被转换为6自由度。转换之后的分量被表示为式17中的(x,y,z,α,β,γ)。
式17
作为多项式函数f的输出值的相对化的位置姿势的预测值T0HT pred被转换为6自由度。转换之后的分量被表示为式18中的(x',y',z',α',β',γ')。
式18
此外,假定多项式函数f的分量是fx、fy、fz、fα、fβ和fγ,则函数由式19表示。
式19
在本实施例中,多项式函数f是6变量的多项式。因此,多项式函数f的x'、y'、z'分量通常被表示为式20。
式20
同样,多项式函数f的分量α'、β'和γ'通常被表示为式21。
式21
在式20和21中,D表示多项式函数f的次数,ax_lmnpqr、ay_lmnpqr、az_lmnpqr、aα_lmnpqr、aβ_lmnpqr和aγ_lmnpqr为多项式函数f的系数,其中,下标l、m、n、o、p和q是至少0的整数。基于N个校准位置姿势的多项式函数f的计算能够定义校准函数F。在本实施例中,为了简便起见,描述次数D=1的情况。
关于次数D=1情况下式20的x'的式,能够实现式22。
x′
=fx(x,y,z,α,β,γ)
=ax+000000+ax_100000x+ax_010000y+ax_001000z
+ax_000100α+ax_000010β+ax_000001γ 式22
在此,为了便于描述,如式23所述,替换符号。
ax_000000=ax0
ax_100000=ax1
ax_010000=ax2
ax_001000=ax3
ax_000100=ax4
ax_000010=ax5
ax_000001=ax6 式23
同样,针对分量y'、z'、α'、β'和γ',也假定D=1并替换符号。因此,式20和21变为式24。
x′=fx(x,y,z,α,β,γ)=ax0+ax1x+ax2y+ax3z+ax4α+ax5β+ax6γ
y′=fy(x,y,z,α,β,γ)=ay0+ay1x+ay2y+ay3z+ay4α+ay5β+ay6γ
z′=fz(x,y,z,α,β,γ)=az0+az1x+az2y+az3z+az4α+az5β+az6γ
α′=fα(x,y,z,α,β,γ)=aα0+aα1x+aα2y+aα3z+aα4α+aα5β+aα6γ
β′=fβ(x,y,z,α,β,γ)=aβ0+aβ1x+aβ2y+aβ3z+aβ4α+aβ5β+aβ6γ
γ′=fγ(x,y,z,α,β,γ)=aγ0+aγ1x+aγ2y+aγ3z+aγ4α+aγ5γ+aγ6γ 式24
接着,将预先计算的相对化的手尖位置姿势的命令值T0HT com[i]和相对化的手尖实现位置姿势的测量值T0HT' meas[i]转换为具有6自由度的形式,以代入式24。即,相对化的手尖位置姿势的命令值T0HT com[i]的转换结果的6个分量为(x[i],y[i],z[i],α[i],β[i],γ[i])。相对化的手尖实现位置姿势的测量值T0HT' meas[i]的转换结果的6个分量为(x'[i],y'[i],z'[i],α'[i],β'[i],γ'[i])。结果,能够获取式25。
式25
(i=1,2,...,N)
将式25代入式24,由此获取式26。
x′[i]=ax0+ax1x[i]+ax2y[i]+ax3z[i]+ax4α[i]+ax5β[i]+ax6γ[i]
y′[i]=ay0+ay1x[i]+ay2y[i]+ay3z[i]+ay4α[i]+ay5β[i]+ay6γ[i]
z′[i]=az0+az1x[i]+az2y[i]+az3z[i]+az4α[i]+az5β[i]+az6γ[i]
α′[i]=aα0+aα1x[i]+aα2y[i]+aα3z[i]+aα4α[i]+aα5β[i]+aα6γ[i]
β′[i]=aβ0+aβ1x[i]+aβ2y[i]+aβ3z[i]+aβ4α[i]+aβ5β[i]+aβ6γ[i]
γ′[i]=aγ0+aγ1x[i]+aγ2y[i]+aγ3z[i]+aγ4α[i]+aγ5β[i]+aγ6γ[i] 式26
(i=1,2,...,N)
在此,例如,将N组数据(i=1,2,...,N)代入x'的式,由此能够获取如式27所示的N个连立方程式。
x′[1]=ax0+ax1x[1]+ax2y[1]+ax3z[1]+ax4α[1]+ax5β[1]+ax6γ[1]
x′[2]=ax0+ax1x[2]+ax2y[2]+ax3z[2]+ax4α[2]+ax5β[2]+ax6γ[2]
x′[N]=ax0+ax1x[N]+ax2y[N]+ax3z[N]+ax4α[N]+ax5β[N]+ax6γ[N] 式27
式27的连立方程式被整理为矩阵形式,由此获取式28。
式28
在式28中,已知x'[i]和x[i]、y[i]、z[i]、α[i]、β[i]以及γ[i],而未知ax0至ax6。如果N组数据中的至少7组为线性独立,则通过公知的最小平方法能够获取系数的组ax0至ax6
同样,也能够获取分量y'、z'、α'、β'和γ'的最小平方解,其能够基于式20、21和24的定义获取多项式函数f。即,能够通过式16的关系获取校准函数F。因此,图2所示的步骤S1至S3的结束使得校准函数F的计算处理结束。即,机器人校准单元47计算机器人本体2的理想位置姿势,其基于校准期间使用的校准用命令值RHT com[i]来运算。机器人校准单元47计算机器人本体2的实际位置姿势,其在根据校准用的命令值RHT com[i]控制过程中,基于照相机3获取的校准用的测量值VHP meas[i]来运算。机器人校准单元47基于机器人本体2的理想位置姿势与实际位置姿势之间的差,来计算校准函数F。
接着,参照图2所示的流程图的步骤S4至S7,来描述在上述机器人系统1中使用获取的校准函数F向机器人本体2输出命令值,并将手21向工件6移动,并使该手握住工件的过程。
首先,机器人控制单元44将机器人本体2定位在用于测量的位置姿势,并且照相机控制单元45使照相机3测量工件6(步骤S4,获取测量值)。在此,RHT1表示机器人本体2的用于测量的位置姿势的命令值,而VHW meas表示照相机3根据命令值RHT1测量的工件6的位置姿势的测量值。
接着,机器人控制单元44基于测量的工件6的测量值VHW meas,运算并生成临时手尖命令值(临时命令值)RHT temp(步骤S5,生成临时命令值)。机器人控制单元44使用已知的刚性坐标变换模型,通过使用校准值VHT的式29,来运算临时手尖命令值RHT temp
式29
机器人控制单元通过式29将工件6的位置姿势的测量值VHW meas坐标变换为机器人坐标系R中的值,以用作机器人本体2的位置姿势命令值。在式29中,机器人本体2的操作误差的不利影响大,因此,定位精度低。
接着,机器人控制单元44将临时手尖命令值RHT temp输入到校准函数F,并使用式30运算,生成手尖位置姿势的预测值RHT' pred
式30
在此,基于相对化的临时手尖命令值T0HT temp,来计算矢量,并且该矢量由式31表示。
式31
此外,从式20、21和24推导出式32。
式32
机器人控制单元44使用先前计算的多项式函数f,来计算手尖位置姿势的预测值RHT' pred。即,在使用临时手尖命令值RHT temp来定位机器人本体2的情况下,将添加了机器人本体2的操作误差的实际手尖位置姿势预测为手尖位置姿势的预测值RHT' pred。从而,机器人控制单元44计算临时手尖命令值RHT temp与手尖位置姿势的预测值RHT' pred之间的差;该差由式33来表示。
式33
机器人控制单元44使用差THT' err的逆矩阵来校正临时手尖命令值RHT temp,以消除差THT' err。在此,假定校正后的最终完成的手尖命令值(校准后命令值)为RHT comp,该值由式34来表示。
式34
根据上述处理,机器人控制单元44能够使用校准函数F来校准临时手尖命令值RHT temp,并获取最终完成的手尖命令值RHT comp(步骤S6,校准)。
机器人控制单元44接着将最终完成的手尖命令值RHT comp发送到机器人本体2,并对机器人本体2进行定位,使该本体操作(步骤S7,控制位置姿势)。在机器人本体2的命令值中,通过校准处理对操作误差分量进行校正。因此,手21能够高精度地接近工件6,手尖坐标系T与工件坐标系W高精度地匹配,从而能够实现手21高精度地握住工件6。
如上所述,本实施例的机器人系统1能够使用基于机器人本体2的理想位置姿势与实际位置姿势之间的差计算的校准函数F,来校准临时手尖命令值RHT temp以获取最终完成的手尖命令值RHT comp。因此,与传统的手眼校准方法不同,本实施例能够消除机器人本体2的操作误差和固有误差。该消除能够提高机器人本体2的位置姿势的控制精度。
本实施例的机器人系统1具有如下配置:不将来自照相机3的测量值直接输入到校准函数F,而将计算的临时手尖命令值RHT temp输入到校准函数F。甚至通过校准期间的测量值与工件6的实际测量值之间的可能的差,该配置能够适当地降低误差。因此,该配置无需将校准板10的测量值与实际工件6的严格地关联,由此能够提高操作性。
在本实施例的机器人系统1中,照相机3设置在手21上。因此,照相机坐标系V与手尖坐标系T之间的误差小,并且能够高精度地控制机器人本体2。
如上所述,本实施例的机器人系统1使用基准位置姿势的命令值RHT0,对校准用位置姿势的命令值RHT com和测量值RHT' meas进行相对化。如果定义输入6自由度分量的多项式函数f时旋转分量大,则函数可能在±180°附近的奇异点处不连续,并且近似的精度可能被降低。相对化能够抑制该降低,并且实现对机器人本体2的更高精度的控制。
第二实施例
接下来,描述根据本发明的第二实施例的机器人系统101。如图7和图8所示,机器人系统101包括机器人装置101a和机器人校准单元47。与第一实施例不同,在机器人装置101a中,照相机3不是布置在机器人本体102上,而是固定到与架台5相对定位的上部支持台50,并由上部支持台50支持。架台5固定在机器人本体102的基端部。此外,与第一实施例不同,在机器人装置101a中,校准板10不是由架台5支持,而是由定位在与手21相对的支持部件22来支持。其他硬件构成部件与第一实施例的部件相同。因此,与第一实施例的符号同样的相同符号被分配给各个部件。因此省略其描述。
将参照图2的流程图对上述机器人系统101计算校准值、获取校准函数F并使用校准函数F控制机器人本体102的过程进行描述。图2的流程图例示了第一实施例中的操作过程。然而,本实施例按照同样的顺序进行处理。因此,将该流程图应用到本实施例。请注意,过程包括与第一实施例不同的点。以下,主要对不同的点进行描述。
首先,当照相机控制单元45将机器人本体102顺序定位在多个位置姿势的同时,照相机103如图8所示顺序测量校准板10,由此使得该单元获取校准所需的多个数据并存储数据(步骤S1)。处理的细节与图3所示的S11至S17的类似。照相机控制单元45将机器人本体102顺序定位在机器人本体102能够移动并且校准板10被保持在照相机103的视野中的范围,并测量校准板10。照相机控制单元45将N个校准位置姿势的命令值RHT com[i]和N个测量值VHP meas[i]存储在RAM 42中。
接着,机器人校准单元47运算并获取与第一实施例不同的校准值。更具体地说,机器人校准单元47运算并获取机器人坐标系R与照相机坐标系V之间的相对位置姿势(第三校准值)RHV,以及手尖坐标系T与校准板坐标系P之间的相对位置姿势(第四校准值)THP(步骤S2)。如果无照相机103的测量误差以及机器人本体102的操作误差,则式35针对各校准位置姿势都成立。
式35
(i=1,2,...,N)
如同第一实施例,校准用的位置姿势的数量为N。因此,针对各个情况获取值,由此获取N个连立式35。实际上,获取的数据有误差。因此,通过误差最小化计算,来计算使N组数据的误差(残差)最小的值THPRHV,并将其用作校准值。以下,将在步骤S2中计算的校准值表示为THP calRHV cal
接着,机器人校准单元47计算校准函数F的参数(步骤S3,计算校准函数)。在此,机器人校准单元47针对第i个测量值VHP meas[i],使用式36(与第一实施例中的式10相对应)来计算手尖实现位置姿势的测量值RHT' meas[i]。根据式36,能够按照与第一实施例中的处理同样的方式,进行测量值RHT' meas[i]的计算之后的处理,由此使得能够计算用于定义校准函数F的参数。
式36
(i=1,2,...,N)
接着,机器人控制单元44将机器人本体102定位在用于测量的位置姿势,照相机控制单元45使照相机103测量工件6并获取测量值VHW meas(步骤S4,获取测量值)。
接着,机器人控制单元44基于测量的工件6的位置姿势的测量值VHW meas,运算并生成临时手尖命令值RHT temp(步骤S5,生成临时命令值)。在本实施例中,机器人控制单元44使用式37,来计算临时手尖命令值RHT temp(与第一实施例中的式29相对应)。
式37
在获取临时手尖命令值RHT temp之后,与第一实施例相同,机器人控制单元44使用校准函数F校准临时手尖命令值RHT temp,并获取的最终完成手尖命令值RHT comp(步骤S6,校准)。
正如第一实施例,机器人控制单元44将最终完成的手尖命令值RHT comp发送到机器人本体102,对机器人本体102进行定位,并使机器人本体102操作(步骤S7,控制位置姿势)。
如上所述,本实施例的机器人系统101按照与第一实施例同样的方式,使用基于机器人本体102的理想位置姿势与实际位置姿势之间的差计算的校准函数F。因此,能够校准临时手尖命令值RHT temp,以获取最终完成的手尖命令值RHT comp。由此,能够消除机器人本体102的操作误差和固有误差。该消除能够提高机器人本体102的位置姿势的控制精度。
根据本实施例的机器人系统101,照相机103设置在上支持台50上。该配置使得照相机坐标系V和机器人坐标系R之间的误差小,其能够实现对机器人本体102的高精度控制。
在上述第一和第二实施例中的机器人系统1和101中,仅描述了次数D=1的多项式的情况。配置不限于该情况。例如,如同上述实施例,甚至可以将二次或者更高次的多项式用作校准函数F。在此,如果将至少2的D代入式20和21,并且将这些式展开,则项的数量变大。然而,多项式系数的次数(ax_lmnpqr等)为1。因此,将获取作为校准操作数据的值(x[i],y[i],z[i],α[i],β[i],γ[i])代入,来获取多项式系数的项的一次式。因此,能够通过线性最小平方法识别系数。
在上述第一和第二实施例中的机器人系统1和101中,作为校准函数F,仅描述了多项式。式不限于此。例如,可以使用多项式以外的简单函数,例如样条函数来作为校准函数F。
在上述第一和第二实施例中的机器人系统1和101中,对校准函数F接收手尖位置命令值RHT com作为输入,并输出手尖位置姿势的预测值RHT pred进行了描述。然而,函数不限于此。例如,作为其逆函数的校准函数G的定义也能够获得同样好的效果。即,可以将校准函数G定义为如下函数:接收目标手尖位置姿势的预测值RHT pred作为输入并输出用于实现位置姿势的手尖位置命令值RHT com
在此情况下,定义式38替代式9,并进行识别校准函数G的参数的处理。
式38
在此情况下,在通过校准函数G校准临时命令值(步骤S6)的处理中,无需获取并应用如同式33和34的差的处理。可以将通过输入目标位置姿势的命令值RHT temp到校准函数G获取的结果用作最终完成的手尖命令值RHT comp
在上述第一和第二实施例中的机器人系统1和101中,描述了无需校正全部6自由度的情况。然而,配置不限于此。即,在不需要校正全部6自由度的情况下,可以适当地限制和使用针对校准函数计算的系数。例如,如果无需z方向上的校正,则可以将az_lmnpqr固定为0,可以仅将与z项相关的系数az_001000固定为1,并可以校正其他系数。
在上述第一和第二实施例中的机器人系统1和101中,描述了使用控制装置4的CPU40作为机器人校准单元47来实现机器人校准装置的情况。然而,配置不限于此。例如,如图9所示,可以将机器人校准装置104设置成与控制装置4分离。在此情况下,机器人校准装置104包括内置CPU中的机器人校准单元(运算单元)147,并且经由控制装置4的输入输出电路43与CPU 40连接。机器人校准装置104生成的校准值和校准函数被输入到机器人控制单元44,并用于控制机器人本体2。该配置使得机器人校准装置104能够外部连接到控制装置4。因此,甚至无机器人校准单元47的现有控制装置4也能够如同第一和第二实施例那样使用校准函数F。
在上述第一和第二实施例中的机器人系统1和101中,描述了采用单眼照相机3和103作为视觉传感器的情况。然而,配置不限于此。作为另选方案,例如,可以使用立体照相机或者激光扫描器。在采用激光扫描器的情况下,激光扫描器测量工件6,并且照相机控制单元45获取测量结果作为三维测量点组。接着,工件位置姿势计算单元46将三维测量点组的数据与三维CAD模型进行匹配,并计算工件6的位置姿势。
更具体地说,通过控制装置4和机器人校准装置104来执行第一实施例和第二实施例中的上述处理操作。因此,可以通过如下方案实现配置:向控制装置4提供存储有用于实现上述功能的软件程序的记录介质,使控制装置4的CPU 40读取存储在记录介质中的程序并执行程序。在此情况下,从记录介质读取的程序实现上述各个实施例的功能。因此,程序本身以及存储该程序的记录介质构成本发明。更具体地说,有在机器人校准单元47和147的各个中的机器人校准程序、机器人控制单元44中的机器人装置的控制程序以及机器人系统1和101的各个中的机器人系统的控制程序。
在各个实施例中,描述了计算机可读记录介质为ROM 41并且程序存储在ROM 41中的情况。然而,配置不限于此。程序可以记录在任意记录介质中,只要介质为计算机可读介质即可。例如,用于提供程序的记录介质可以是HDD、外部存储设备或者记录盘中的任意一种。
本发明基于机器人本体的理想位置姿势与实际位置姿势之间的差,来计算校准函数。请注意,理想位置姿势是基于校准用的命令值或者作为根据命令值控制的结果的控制结果值;实际位置姿势与命令值相对应。本发明基于校准函数校准临时命令值,并根据获取的校准后命令值控制机器人本体的位置姿势。与传统的手眼校准方法不同,本发明能够由此消除机器人本体的操作误差和固有误差。该消除能够提高机器人本体的位置姿势的控制精度。
虽然参照示例性实施例对本发明进行了描述,但是应当理解,本发明并不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以使其涵盖所有这些变型例以及等同的结构和功能。

Claims (14)

1.一种校准机器人本体的命令值的机器人校准装置,所述机器人本体包括多关节臂,并且所述机器人本体的位置姿势是基于所述命令值而控制的,所述机器人校准装置包括:
运算单元,其被构造为基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差,来计算校准所述命令值的校准函数F,其中,基于校准期间使用的校准用的命令值或者基于作为基于该命令值的控制的结果的控制结果值来运算所述理想位置姿势,而基于在基于所述校准用的命令值控制所述机器人本体期间,由相对于所述机器人本体以规定的相对位置姿势布置的视觉传感器获取的校准用的测量值来运算所述实际位置姿势,
其中,获取通过所述视觉传感器测量对象的位置姿势而得到测量值,
基于所述测量值来生成所述机器人本体的临时命令值,并且
使用所述校准函数F来校准所述临时命令值,以生成校准后命令值。
2.根据权利要求1所述的机器人校准装置,
其中,所述视觉传感器是固定在所述机器人本体的梢端部的照相机,并且
所述运算单元基于通过使所述照相机测量相对于所述机器人本体的基端部定位的校准用基准物而获取的所述校准用的测量值、所述机器人本体的梢端部与所述照相机之间的相对位置姿势、以及所述机器人本体的基端部与所述校准用基准物之间的相对位置姿势,来计算所述实际位置姿势。
3.根据权利要求1所述的机器人校准装置,
其中,所述视觉传感器是相对于所述机器人本体的基端部定位的照相机,并且
所述运算单元基于通过使所述照相机测量相对于所述机器人本体的梢端部定位的校准用基准物而获取的所述校准用的测量值、所述机器人本体的基端部与所述照相机之间的相对位置姿势、以及所述机器人本体的梢端部与所述校准用基准物之间的相对位置姿势,来计算所述实际位置姿势。
4.一种机器人装置,所述机器人装置包括:
机器人本体,其包括多关节臂;
视觉传感器,其相对于所述机器人本体以规定的相对位置姿势布置;以及
控制单元,其被构造为运算命令值并控制所述机器人本体的位置姿势,
其中,所述控制单元:
获取通过所述视觉传感器测量对象而得到的测量值,
基于所述测量值生成临时命令值,
使用校准函数校准所述临时命令值,并生成校准后的命令值,所述校准函数由根据权利要求1至3中一项的机器人校准装置基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差来计算,所述理想位置姿势被基于校准期间使用的校准用的命令值或者基于作为基于该命令值的控制的结果的控制结果值来运算,而所述实际位置姿势被根据在基于所述校准用的命令值控制所述机器人本体期间,由所述视觉传感器获取的校准用的测量值来运算,并且
根据所述校准后的命令值,控制所述机器人本体的位置姿势。
5.根据权利要求4所述的机器人装置,
其中,所述视觉传感器是固定在所述机器人本体的梢端部的照相机,并且
所述控制单元使所述照相机测量相对于所述机器人本体的基端部定位的所述对象,并在所述临时命令值的生成期间,基于所述机器人本体的梢端部与所述照相机之间的相对位置姿势,对所述临时命令值进行运算。
6.根据权利要求4所述的机器人装置,
其中,所述视觉传感器是相对于所述机器人本体的基端部定位的照相机,并且
所述控制单元使所述照相机测量相对于所述机器人本体的梢端部定位的所述对象,并在所述临时命令值的生成期间,基于所述机器人本体的基端部与所述照相机之间的相对位置姿势,对所述临时命令值进行运算。
7.根据权利要求4所述的机器人装置,其中,所述控制单元设定在所述机器人本体处于规定的基准位置姿势期间的命令值作为基准命令值,将所述临时命令值转换为相对于所述基准命令值的值,使用所述校准函数校准所述转换的临时命令值,并生成所述校准后的命令值。
8.一种校准机器人本体的命令值的机器人校准方法,所述机器人本体包括多关节臂,并且所述机器人本体的位置姿势是基于所述命令值或者基于作为根据所述命令值的控制的结果的控制结果值而控制的,
所述机器人校准方法包括:计算校准函数F,所述计算使运算单元基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差,来计算校准所述命令值的校准函数,其中,基于校准期间使用的校准用的命令值来运算所述理想位置姿势,而基于在基于所述校准用的命令值控制所述机器人本体期间,由相对于所述机器人本体以规定的相对位置姿势布置的视觉传感器获取的校准用的测量值来运算所述实际位置姿势,
获取通过所述视觉传感器测量对象的位置姿势而得到测量值,
基于所述测量值来生成所述机器人本体的临时命令值,并且
使用所述校准函数F来校准所述临时命令值,并生成校准后命令值。
9.根据权利要求8所述的机器人校准方法,
其中,所述视觉传感器是固定在所述机器人本体的梢端部的照相机,并且
在计算所述校准函数中,所述运算单元基于通过使所述照相机测量相对于所述机器人本体的基端部定位的校准用基准物而获取的所述校准用的测量值、所述机器人本体的梢端部与所述照相机之间的相对位置姿势、以及所述机器人本体的基端部与所述校准用基准物之间的相对位置姿势,来计算所述实际位置姿势。
10.根据权利要求8所述的机器人校准方法,
其中,所述视觉传感器是相对于所述机器人本体的基端部定位的照相机,并且
在计算所述校准函数中,所述运算单元基于通过使照相机测量相对于所述机器人本体的梢端部定位的校准用基准物而获取的所述校准用的测量值、所述机器人本体的基端部与所述照相机之间的相对位置姿势、以及所述机器人本体的梢端部与所述校准用基准物之间的相对位置姿势,来计算所述实际位置姿势。
11.一种机器人装置的控制方法,所述机器人装置包括:
机器人本体,其包括多关节臂;
视觉传感器,其相对于所述机器人本体以规定的相对位置姿势布置;以及
控制单元,其被构造为运算命令值并控制所述机器人本体的位置姿势,
所述控制方法包括:
获取测量值,其中,所述控制单元获取通过所述视觉传感器测量对象而得到的测量值;
生成临时命令值,其中,所述控制单元基于所述测量值生成临时命令值;
进行校准,其中,所述控制单元使用校准函数校准所述临时命令值,并生成校准后的命令值,所述校准函数利用根据权利要求8-10中任一项的机器人校准方法基于所述机器人本体的理想位置姿势与所述机器人本体的实际位置姿势之间的差来计算,所述理想位置姿势被基于校准期间使用的校准用的命令值或者基于作为基于该命令值的控制的结果的控制结果值来运算,而所述实际位置姿势被基于在基于所述校准用的命令值控制所述机器人本体期间,由所述视觉传感器获取的校准用的测量值来运算;以及
控制位置姿势,其中,所述控制单元根据所述校准后的命令值,控制所述机器人本体的位置姿势。
12.根据权利要求11所述的机器人装置的控制方法,
其中,所述视觉传感器是固定在所述机器人本体的梢端部的照相机,并且
在获取测量值中,所述控制单元使所述照相机测量相对于所述机器人本体的基端部定位的所述对象,并且
在生成临时命令值中,在所述临时命令值的生成期间,所述控制单元基于所述机器人本体的梢端部与所述照相机之间的相对位置姿势,来对所述临时命令值进行运算。
13.根据权利要求11所述的机器人装置的控制方法,
其中,所述视觉传感器是相对于所述机器人本体的基端部定位的照相机,
在所述获取测量值中,所述控制单元使所述照相机测量相对于所述机器人本体的梢端部定位的所述对象,并且
在所述生成临时命令值中,在所述临时命令值的生成期间,所述控制单元基于所述机器人本体的基端部与所述照相机之间的相对位置姿势,来对所述临时命令值进行运算。
14.根据权利要求11所述的机器人装置的控制方法,所述控制方法还包括:
相对化,其中,所述控制单元设定在所述机器人本体处于规定的基准位置姿势期间的命令值作为基准命令值,并且所述控制单元将所述临时命令值转换为相对于所述基准命令值的值,
其中,在所述校准中,所述控制单元使用所述校准函数校准所述转换的临时命令值,并生成所述校准后的命令值。
CN201410504893.3A 2013-09-26 2014-09-26 机器人校准装置及校准方法、机器人装置及其控制方法 Active CN104511900B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013-200202 2013-09-26
JP2013200202A JP6335460B2 (ja) 2013-09-26 2013-09-26 ロボットシステムの制御装置及び指令値生成方法、並びにロボットシステムの制御方法

Publications (2)

Publication Number Publication Date
CN104511900A CN104511900A (zh) 2015-04-15
CN104511900B true CN104511900B (zh) 2017-12-15

Family

ID=51655545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410504893.3A Active CN104511900B (zh) 2013-09-26 2014-09-26 机器人校准装置及校准方法、机器人装置及其控制方法

Country Status (4)

Country Link
US (2) US9669545B2 (zh)
EP (1) EP2853356A1 (zh)
JP (1) JP6335460B2 (zh)
CN (1) CN104511900B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108068115A (zh) * 2017-12-30 2018-05-25 福建铂格智能科技股份公司 一种基于视觉反馈的并联机器人位置闭环校准算法

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6468741B2 (ja) * 2013-07-22 2019-02-13 キヤノン株式会社 ロボットシステム及びロボットシステムの校正方法
JP6335460B2 (ja) * 2013-09-26 2018-05-30 キヤノン株式会社 ロボットシステムの制御装置及び指令値生成方法、並びにロボットシステムの制御方法
CN107073719B (zh) * 2014-11-21 2020-07-28 精工爱普生株式会社 机器人和机器人系统
US10197539B2 (en) * 2015-01-05 2019-02-05 Bae Systems Plc System and method for assessing a calibration of a multi-axis ultrasonic scanner
JP2016187844A (ja) * 2015-03-30 2016-11-04 セイコーエプソン株式会社 ロボット、ロボット制御装置およびロボットシステム
JP6812095B2 (ja) 2015-10-22 2021-01-13 キヤノン株式会社 制御方法、プログラム、記録媒体、ロボット装置、及び物品の製造方法
FR3043004B1 (fr) * 2015-10-29 2017-12-22 Airbus Group Sas Procede d'orientation d'un effecteur portant un outil d'assemblage par rapport a une surface
CN106112505B (zh) * 2016-07-04 2018-07-24 清华大学 双轴孔装配系统及其控制方法
JP6487385B2 (ja) * 2016-07-20 2019-03-20 ファナック株式会社 ロボットの原点位置較正装置および方法
JP6490032B2 (ja) * 2016-08-10 2019-03-27 ファナック株式会社 組立ロボットのロボット制御装置
JP2018051692A (ja) * 2016-09-29 2018-04-05 ファナック株式会社 オフラインプログラミング用ジョグ支援装置、ジョグ支援方法及びジョグ支援プログラム
CN106546170B (zh) * 2016-10-13 2019-05-14 同济大学 一种机器人运动轨迹关键点误差测量方法
EP3321043A3 (en) 2016-11-10 2018-10-10 Canon Kabushiki Kaisha Method of controlling holding apparatus, holding apparatus, and robot apparatus
CN106553195B (zh) * 2016-11-25 2018-11-27 中国科学技术大学 工业机器人抓取过程中的物体6自由度定位方法及系统
JP2018094654A (ja) * 2016-12-09 2018-06-21 セイコーエプソン株式会社 制御装置、ロボットおよびロボットシステム
JP6705017B2 (ja) * 2016-12-13 2020-06-03 株式会社Fuji 作業ロボットの目的位置補正方法
JP6396516B2 (ja) * 2017-01-12 2018-09-26 ファナック株式会社 視覚センサのキャリブレーション装置、方法及びプログラム
JP6527178B2 (ja) * 2017-01-12 2019-06-05 ファナック株式会社 視覚センサのキャリブレーション装置、方法及びプログラム
CN107256567B (zh) * 2017-01-22 2020-08-07 梅卡曼德(北京)机器人科技有限公司 一种用于工业机器人手眼相机的自动标定装置及标定方法
JP6964989B2 (ja) * 2017-02-09 2021-11-10 キヤノン株式会社 制御方法、ロボットシステム、物品の製造方法、プログラム、及び記録媒体
EP3366433B1 (en) 2017-02-09 2022-03-09 Canon Kabushiki Kaisha Method of controlling robot, method of teaching robot, and robot system
CN110114191B (zh) * 2017-03-09 2020-05-19 三菱电机株式会社 机器人控制装置以及校准方法
WO2018199947A1 (en) * 2017-04-26 2018-11-01 Hewlett-Packard Development Company, L.P. Robotic structure calibrations
JP7003462B2 (ja) * 2017-07-11 2022-01-20 セイコーエプソン株式会社 ロボットの制御装置、ロボットシステム、並びに、カメラの校正方法
US11338441B2 (en) * 2017-12-01 2022-05-24 Delta Electronics, Inc. Calibration system for robot tool and calibration method for the same
US20210146643A1 (en) * 2018-04-18 2021-05-20 Pirelli Tyre S.P.A. Method for building green tyres
JP6871220B2 (ja) * 2018-11-08 2021-05-12 ファナック株式会社 制御システム
TWI696529B (zh) 2018-11-30 2020-06-21 財團法人金屬工業研究發展中心 自動定位方法以及自動控制裝置
CN109571477B (zh) * 2018-12-17 2020-09-22 西安工程大学 一种改进的机器人视觉与传送带综合标定方法
CN109636859B (zh) * 2018-12-24 2022-05-10 武汉大音科技有限责任公司 一种基于单相机的三维视觉检测的标定方法
US10576636B1 (en) * 2019-04-12 2020-03-03 Mujin, Inc. Method and control system for and updating camera calibration for robot control
US20220258352A1 (en) * 2019-07-19 2022-08-18 Siemens Ltd., China Robot hand-eye calibration method and apparatus, computing device, medium and product
CN110497386B (zh) * 2019-08-26 2021-03-30 中科新松有限公司 一种协作机器人手眼关系自动标定方法
US11584013B2 (en) 2020-03-31 2023-02-21 Wipro Limited System, device and method for determining error in robotic manipulator-to-camera calibration
CN111203892B (zh) * 2020-04-20 2020-07-21 上海交通大学烟台信息技术研究院 一种用于工业机器人精度标定的辅助工具
CN112719583A (zh) * 2020-12-10 2021-04-30 广东科学技术职业学院 激光传感智能焊接机器人及其焊枪归零计算方法
CN114161411B (zh) * 2021-11-18 2023-09-01 浙江大学 一种基于视觉的多足机器人运动学参数标定方法
CN114905511B (zh) * 2022-05-12 2023-08-11 南京航空航天大学 一种工业机器人装配误差检测与精度补偿系统标定方法
TWI799310B (zh) * 2022-06-30 2023-04-11 國立清華大學 機器人及機器人手眼校正方法
CN114862955B (zh) * 2022-07-07 2022-09-02 诺伯特智能装备(山东)有限公司 一种工业机器人快速视觉定位方法
WO2024101265A1 (ja) * 2022-11-07 2024-05-16 Dmg森精機株式会社 ロボット搭載移動装置

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4362977A (en) 1980-06-30 1982-12-07 International Business Machines Corporation Method and apparatus for calibrating a robot to compensate for inaccuracy of the robot
SE8400287D0 (sv) 1984-01-20 1984-01-20 Grundstenen 17356 Ab Anordning/metod for kalibrering av monteringsmaskiner mm
US4831549A (en) * 1987-07-28 1989-05-16 Brigham Young University Device and method for correction of robot inaccuracy
US4956578A (en) 1987-07-28 1990-09-11 Canon Kabushiki Kaisha Surface conduction electron-emitting device
JP2622842B2 (ja) 1987-10-12 1997-06-25 キヤノン株式会社 電子線画像表示装置および電子線画像表示装置の偏向方法
JP2630988B2 (ja) 1988-05-26 1997-07-16 キヤノン株式会社 電子線発生装置
JP2518699B2 (ja) * 1989-09-27 1996-07-24 三菱電機株式会社 ロボット制御装置
JPH04211807A (ja) * 1990-04-20 1992-08-03 Hitachi Ltd ロボットの設置誤差の推定方法及びその装置並びにロボット駆動制御方法及び基準付き作業台及び基準
US5083073A (en) * 1990-09-20 1992-01-21 Mazada Motor Manufacturing U.S.A. Corp. Method and apparatus for calibrating a vision guided robot
JP2612980B2 (ja) * 1991-08-22 1997-05-21 山武ハネウエル株式会社 表面実装機におけるキャリブレーション方法
JP3072795B2 (ja) 1991-10-08 2000-08-07 キヤノン株式会社 電子放出素子と該素子を用いた電子線発生装置及び画像形成装置
KR940006570B1 (ko) * 1992-01-14 1994-07-22 한국과학기술원연구원 온도변화에 의한 로보트 팔길이 보정용 캘리브레이션 시스템(calibration system)
CA2112180C (en) 1992-12-28 1999-06-01 Yoshikazu Banno Electron source and manufacture method of same, and image forming device and manufacture method of same
US6157137A (en) 1993-01-28 2000-12-05 Canon Kabushiki Kaisha Multi-electron beam source with driving circuit for preventing voltage spikes
JPH06278064A (ja) * 1993-03-31 1994-10-04 Citizen Watch Co Ltd 視覚センサの座標変換方法
CA2135458C (en) 1993-11-09 2000-05-09 Yuji Kasanuki Image display apparatus
JP3394322B2 (ja) * 1994-05-19 2003-04-07 ファナック株式会社 視覚センサを用いた座標系設定方法
JPH1063317A (ja) * 1996-08-13 1998-03-06 Fanuc Ltd ロボット−視覚センサシステムにおける座標系結合方法
JP3025249B2 (ja) 1997-12-03 2000-03-27 キヤノン株式会社 素子の駆動装置及び素子の駆動方法及び画像形成装置
JPH11184526A (ja) * 1997-12-19 1999-07-09 Toshiba Corp 3次元位置補正方法ならびに同方法を用いたリモートマニピュレータシステム
DE10155430B4 (de) 2001-11-12 2006-12-14 Siemens Ag Adaption von Kompensationsdaten zur Verringerung von Stellungsfehlern bei Werkzeugmaschinen und Robotern
JP4021413B2 (ja) * 2004-01-16 2007-12-12 ファナック株式会社 計測装置
JP4960589B2 (ja) 2004-12-08 2012-06-27 川崎重工業株式会社 ロボット制御装置およびロボット制御方法
JP2006289531A (ja) 2005-04-07 2006-10-26 Seiko Epson Corp ロボット位置教示のための移動制御装置、ロボットの位置教示装置、ロボット位置教示のための移動制御方法、ロボットの位置教示方法及びロボット位置教示のための移動制御プログラム
US8108072B2 (en) * 2007-09-30 2012-01-31 Intuitive Surgical Operations, Inc. Methods and systems for robotic instrument tool tracking with adaptive fusion of kinematics information and image information
US8073528B2 (en) * 2007-09-30 2011-12-06 Intuitive Surgical Operations, Inc. Tool tracking systems, methods and computer products for image guided surgery
JP4443497B2 (ja) * 2005-11-02 2010-03-31 パルステック工業株式会社 多自由度ロボットの位置決め誤差補正装置および同位置決め誤差補正方法
JP4298757B2 (ja) * 2007-02-05 2009-07-22 ファナック株式会社 ロボット機構のキャリブレーション装置及び方法
US8805110B2 (en) * 2008-08-19 2014-08-12 Digimarc Corporation Methods and systems for content processing
US8929877B2 (en) * 2008-09-12 2015-01-06 Digimarc Corporation Methods and systems for content processing
JP4763074B2 (ja) * 2009-08-03 2011-08-31 ファナック株式会社 ロボットのツール先端点の位置の計測装置および計測方法
US8768313B2 (en) * 2009-08-17 2014-07-01 Digimarc Corporation Methods and systems for image or audio recognition processing
US20110043537A1 (en) * 2009-08-20 2011-02-24 University Of Washington Visual distortion in a virtual environment to alter or guide path movement
US9393694B2 (en) 2010-05-14 2016-07-19 Cognex Corporation System and method for robust calibration between a machine vision system and a robot
JP5618770B2 (ja) * 2010-11-09 2014-11-05 三菱電機株式会社 ロボットの校正装置および校正方法
JP5936374B2 (ja) 2011-02-15 2016-06-22 キヤノン株式会社 圧電振動型力センサ及びロボットハンド並びにロボットアーム
JP6039382B2 (ja) * 2012-11-27 2016-12-07 キヤノン株式会社 ロボットシステム及びロボットシステムの制御方法
JP6108860B2 (ja) * 2013-02-14 2017-04-05 キヤノン株式会社 ロボットシステム及びロボットシステムの制御方法
JP6468741B2 (ja) * 2013-07-22 2019-02-13 キヤノン株式会社 ロボットシステム及びロボットシステムの校正方法
JP6335460B2 (ja) * 2013-09-26 2018-05-30 キヤノン株式会社 ロボットシステムの制御装置及び指令値生成方法、並びにロボットシステムの制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108068115A (zh) * 2017-12-30 2018-05-25 福建铂格智能科技股份公司 一种基于视觉反馈的并联机器人位置闭环校准算法
CN108068115B (zh) * 2017-12-30 2021-01-12 福建铂格智能科技股份公司 一种基于视觉反馈的并联机器人位置闭环校准算法

Also Published As

Publication number Publication date
US20170217020A1 (en) 2017-08-03
US9669545B2 (en) 2017-06-06
JP2015066603A (ja) 2015-04-13
EP2853356A1 (en) 2015-04-01
JP6335460B2 (ja) 2018-05-30
US20150088311A1 (en) 2015-03-26
CN104511900A (zh) 2015-04-15
US10279479B2 (en) 2019-05-07

Similar Documents

Publication Publication Date Title
CN104511900B (zh) 机器人校准装置及校准方法、机器人装置及其控制方法
JP5928114B2 (ja) ロボットシステム、ロボットシステムのキャリブレーション方法、ロボット
US9221176B2 (en) Robot system and method for controlling the same
CN105682865B (zh) 确定机械臂的至少一个特性的方法和系统
JP5083194B2 (ja) ロボットのキャリブレーション方法及びロボットの制御装置
EP2647477B1 (en) Device for error correction for CNC machines
JP5670416B2 (ja) ロボットシステム表示装置
JP5618066B2 (ja) 力制御ロボットのキャリブレーション装置と方法
JP6235664B2 (ja) ロボットの機構パラメータを校正するために使用される計測装置
CN113386136B (zh) 一种基于标准球阵目标估计的机器人位姿矫正方法及系统
JP2015182144A (ja) ロボットシステムおよびロボットシステムの校正方法
JP2015532219A (ja) 産業用ロボットのインライン較正方法、その方法を実行する較正システム及びその較正システムを備える産業用ロボット
JP2008522836A (ja) 運動学的ロボット・モデル・パラメータ決定によって多関節ロボットにおいて改善された精度を提供する方法及びシステム
JP5730614B2 (ja) トルクセンサ校正装置、校正方法、及びプログラム
JP2018001393A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
Majarena et al. Modelling and calibration of parallel mechanisms using linear optical sensors and a coordinate measuring machine
CN115519536A (zh) 用于3d眼手协调的误差校正和补偿的系统和方法
TWI747079B (zh) 機械手臂的定位精度量測系統與方法
Dhar et al. Artificial neural network-based error compensation procedure for low-cost encoders
JP2003191186A (ja) ロボット教示データの補正方法
WO2022025059A1 (ja) ロボットシステム
JP7436675B2 (ja) ロボット制御装置
JP7423387B2 (ja) 較正システム、情報処理システム、ロボット制御システム、較正方法、情報処理方法、ロボット制御方法、較正プログラム、情報処理プログラム、較正装置、情報処理装置、及びロボット制御装置
JP4244705B2 (ja) 回転機構付きレーザ加工ヘッドのキャリブレーション装置およびその方法
Jeon et al. Cost-effective calibration of collaborative robot arm with single wire encoder

Legal Events

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