具备拍摄目标标记的照相机的机器人系统的制作方法

文档序号:15051309发布日期:2018-07-31 17:13阅读:180来源:国知局

本发明涉及一种具备拍摄目标标记的照相机的机器人系统。



背景技术:

为了进行工件的处理,有时与机床一起使用机器人。为了容易地手动操作机器人,另外,为了使用机床的控制装置来远程操作机器人,重要的是确定机床坐标系与机器人坐标系之间的位置关系。

为了确定机床坐标系与机器人坐标系之间的位置关系,需要机床中的位置以及机器人坐标系中的位置分别已知的至少三个点。已知使机器人的工具前端点(TCP)物理接触预定点,来测定该点的三维位置的接触法。另外,已知使用安装在机器人的手部的三维传感器来通过非接触测量预定点的三维位置的方。

在日本特开2011-048467号公报中,公开了利用机器人控制点与设定点之间的已知的位置关系来求出机器人坐标系与机床坐标系之间的位置关系。在特开2005-201824号公报以及特开2010-117223号公报中,公开了通过使用照相机从多个位置拍摄对象物来测量对象物的三维位置。



技术实现要素:

然而,在上述的已知技术中,需要利用专用的装置或高价的三维传感器。或者,会有在测量时需要跨越大范围来移动机器人的位置以及姿势中的至少一方,难以在受限制的空间中进行测量的情况。因此,谋求一种廉价且能够容易地测定对象点的位置的机器人系统。

本发明提供了一种机器人系统,其具备:机器人、安装在所述机器人的机械臂前端部的照相机、通过所述照相机拍摄的目标标记,所述机器人系统具备:基准数据存储部,当在成为所述机器人的控制基准的机器人坐标系中预先决定的第一目标标记位置上配置了所述目标标记,并且将所述机械臂前端部定位在第一机器人位置时,所述基准数据存储部将所述照相机的图像中包含的所述目标标记的影像的位置以及大小作为基准数据进行存储,并且将相对于所述机械臂前端部的所述第一目标标记位置作为工具前端点的位置进行存储;以及目标标记位置计算部,当在第二目标标记位置上配置了所述目标标记时,所述目标标记位置计算部使所述机械臂前端部移动,以使所述照相机的图像中包含的所述目标标记的影像的位置以及大小与作为所述基准数据存储的所述目标标记的影像的位置以及大小一致,并且基于与移动后的所述机械臂前端部的位置对应的第二机器人位置以及所述工具前端点的位置,来计算在所述机器人坐标系中的所述第二目标标记位置。

在优选的实施方式中,所述机器人系统具备机床,构成为当在成为所述机床的控制基准的机械坐标系中预先决定的,并且不在同一直线上的至少三个目标标记位置上配置了所述目标标记时,所述目标标记位置计算部分别计算所述机器人坐标系中的所述至少三个目标标记位置,所述机器人系统还具备机械坐标系计算部,其基于所述机械坐标系中的所述至少三个目标标记位置以及所述机器人坐标系中的所述至少三个目标标记位置,来计算相对于所述机器人坐标系的所述机械坐标系的位置。

在优选的实施方式中,所述机床具备可进行动作的可动部,将所述目标标记设置在所述可动部,所述机床构成为通过使所述可动部进行动作,使所述目标标记向所述至少三个目标标记位置移动。

在优选的实施方式中,构成为当在所述机器人坐标系中的位置为未知,并且不在同一直线上的至少三个目标标记位置上配置了所述目标标记时,所述目标标记位置计算部分别计算所述机器人坐标系中的所述至少三个目标标记位置,所述机器人系统还具备作业用坐标系计算部,其基于所述机器人坐标系中的所述至少三个目标标记位置,来计算所述机器人的作业用坐标系。

附图说明

通过参照附图所示的本发明列举的实施方式的详细说明,能够使上述以及其他的本发明的目的、特征以及优点变得更加清楚。

图1表示一个实施方式的机器人系统。

图2是表示按照一个实施方式执行的处理的流程的流程图。

图3表示针对图像设定的坐标系。

图4表示机器人坐标系与手腕坐标系之间的位置关系。

图5表示在第一目标标记位置上配置的目标标记。

图6表示按照一实施方式执行的处理的流程的流程图。

图7表示在第二目标标记位置上配置的目标标记。

图8表示图像的位置关系以及特征量的差。

图9表示在第二目标标记位置上配置的目标标记。

图10表示其他的实施方式的机器人系统。

图11表示按照一个实施方式执行的处理的流程的流程图。

图12表示按照一个实施方式执行的处理的流程的流程图。

图13表示其他实施方式的机器人系统。

具体实施方式

以下,参照附图来说明本发明的实施方式。为了帮助理解本发明,对图示实施方式的结构要素适当变更了比例尺。对相同或对应的结构要素使用了相同的参照符号。

图1表示一实施方式的机器人系统1。机器人系统1具备机器人2、控制机器人2的机器人控制装置3、安装在机器人2上的照相机4、图像处理装置5。机器人2并不限于图1所示的六轴垂直多关节机器人,也可以是具有其他任意的公知结构的机器人。

机器人2具备基体21、从基体21延伸的机械臂22。在机器人2的机械臂前端部23经由夹具24安装了照相机4。由此,与机器人2的机械臂前端部23联动来变更照相机4的位置以及姿势。

机器人控制装置3是具备CPU、存储器、与外部装置相连接的接口的数字计算机。机器人控制装置3根据存储在非易失性存储器中的动作程序,通过对驱动机器人2的各轴的驱动装置,例如伺服电动机赋予指令来控制机器人2。机器人控制装置3构成为能够取得成为机器人2的控制基准的机器人坐标系中的机器人2的手指尖的位置。

在机器人2的工作区域或其附近设置了目标标记6。目标标记6被固定在通过与机器人2一起移动的照相机4可拍摄的位置。

为了能够通过图像处理来确定目标标记6的影像的位置以及大小,对目标标记6赋予了特征性的图案。例如,对目标标记6赋予了三角形的图案。

照相机4是具有取得对象物的图像的功能的受光设备。照相机4与图像处理装置5相连接,并向图像处理装置5传送由照相机4拍摄到的图像数据。

图像处理装置5是具备CPU、存储器、与外部装置相连接的接口的数字计算机。图像处理装置5构成为从通过照相机4取得的图像中检测目标标记6,并且从目标标记6的图案计算图像上的目标标记6的位置以及大小。

图像处理装置5通过通信线缆或无线通信与机器人控制装置3相连接,并能够从机器人控制装置3接收指令,或者能够向机器人控制装置3发送图像处理的结果。在其他的实施方式中,图像处理装置5也可以内置在机器人控制装置3中。

图1的下部表示机器人控制装置3的功能框图。机器人控制装置3具备基准数据存储部31、目标标记位置计算部32。

当在成为机器人2的控制基准的机器人坐标系∑r中预先决定的第一目标标记位置上配置目标标记6,且将机械臂前端部23定位在第一机器人位置上时,基准数据存储部31将照相机4的图像中包含的目标标记6的影像的位置以及大小作为基准数据进行存储,并且将相对于机械臂前端部23的第一目标标记位置作为工具前端点的位置进行存储。

目标标记位置计算部32当在第二目标标记位置上配置了目标标记6时,移动机械臂前端部23,以使得在照相机4的图像中包含的目标标记6的影像的位置以及大小与作为基准数据进行存储的目标标记6的影像的位置以及大小相一致,并且基于与移动后的机械臂前端部23的位置相对应的第二机器人位置、以及工具前端点的位置来计算机器人坐标系∑r中的第二目标标记位置。

参照图2对一实施方式的机器人系统1中执行的初始设定进行说明。当在机器人2的机械臂前端部23上安装照相机4时执行一次初始设定。

在步骤S101中,在机器人2的机械臂前端部23上安装照相机4。虽然没有特别限定照相机4相对于机械臂前端部23的朝向,但是为了使照相机4与机械臂前端部23之间的位置关系不变,经由夹具24来固定照相机4。

在步骤S102中,在第一目标标记位置上配置目标标记6。如果安装在机械臂前端部23上的照相机4能够拍摄目标标记6,则第一目标标记位置可以为任意的位置。

在步骤S103中,将机器人2移动到能够拍摄配置在第一目标标记位置上的目标标记6的位置(第一机器人位置)。机器人2的移动可以通过操作者的手动操作来进行,或者也可以使机器人2自动移动到预先决定的第一机器人位置。优选第一机器人位置为照相机4的光轴与形成了图案的目标标记6的表面相互垂直的位置,但是并不限于此。

在步骤S104中,通过照相机4拍摄目标标记6,并将目标标记6的图案作为检测对象的模型进行登录。在步骤S104登录的模型(以下,具有简单称为“登录模型”的情况)的内部数据形式根据在图像处理装置5中使用的图像处理算法来决定。例如,能够采用利用了归一化相关的模板匹配、利用了边缘信息的广义霍夫变换等图像处理算法,但是并不限于此。

在步骤S105中,利用登录模型来从照相机4拍摄到的图像中检测目标标记6,并计算图像上的特征量。在本实施方式中,特征量是图像上的目标标记6的图案位置以及大小。

例如,在采用基于归一化相关的模板匹配时,计算登录的模型与模板之间的一致度最大时的模板的位置、以及模板的扩大缩小的比例来作为与位置以及大小相关的特征量。

图像上的位置以及大小的特征量是在图像坐标系中表现的数值。针对通过照相机4拍摄到的图像来设定图像坐标系。例如,如图3所述,图像坐标系是将图像左上方的端部作为原点,将图像下方向作为u轴、将图像右方向作为v轴的坐标系。此时,图像上的位置的特征量表现为图像坐标系中的登录模型的原点位置。位置的特征量的单位是像素。模型的原点位置任意地决定,但是为一个模型固定的位置。

例如将登录模型的大小设为1.0(100%),作为针对它的比例来计算大小的特征量s。即,在检测的模型的大小大于登录模型时,特征量s大于1.0,反之在小于登录模型时,特征量s小于1.0。

返回图2,在步骤S106中,计算第一目标标记位置相对于机器人2的机械臂前端部23的三维位置来作为工具前端点(TCP)。为了说明机械臂前端部23、目标标记6、以及工具前端点的位置,分别定义机器人坐标系∑r以及手腕坐标系∑f。

机器人坐标系∑r是固定在机器人2的基体21上,成为机器人2的控制基准的坐标系。手腕坐标系∑f是固定在机械臂前端部23上,与机械臂前端部23联动的坐标系(参照图4)。机械臂前端部23的位置表现为机器人坐标系∑r中的手腕坐标系∑f的位置。

在以下的说明中,只要没有特别提及,“工具前端点的位置”就意味着手腕坐标系∑f中的位置。通过下面的式(1)来求出工具前端点的位置T。此外,“R1”是机器人坐标系∑r中的手腕坐标系∑f的位置,“P1”是机器人坐标系∑r中的第一目标标记位置(参照图5)。

此外,“R1”为4×4的齐次变换矩阵,“T”以及“P1”是(x、y、z)T的3×1的矢量。

返回图2,在步骤S107中,将由步骤S105中计算出的位置的特征量(u、v)及大小的特征量s,以及步骤S106中计算出的工具前端点的位置T所构成的数据组作为基准数据进行存储。

在步骤S106中,将机器人坐标系∑r中的第一目标标记位置的三维位置P1作为已知的信息进行了说明,但是在其他的实施方式中,也可以通过任意的方法来测量三维位置P1。例如,可以按照在日本特开2005-201824号公报中记载的方法,使用照相机来测量三维位置P1。

参照图6对测量在任意位置上配置的目标标记6的三维位置的方法进行说明。

在步骤S201中,在测量对象的位置即第二目标标记位置上配置目标标记6(参照图7)。

在步骤S202中,使机械臂前端部23移动到目标标记6包含在照相机4的视野中的第二机器人位置。机器人2可以通过操作者的手动操作进行移动,或者也可以使机器人2自动移动到预先决定的第二机器人位置。关于第二机器人位置,只要能够通过照相机4拍摄在第二目标标记位置上配置的目标标记6,目标标记6与照相机4之间的相对位置关系可以不是严格。

在步骤S203中,从照相机4拍摄到的图像中检测目标标记6,并计算与图像上的位置以及大小相关的特征量。在步骤S203中,能够使用与上述的步骤S105相同的图像处理算法。

在步骤S204中,判定计算出的特征量与在上述步骤S107中存储的基准数据所对应的特征量是否一致。在步骤S204中,通过下面的式(2)求出两个特征量的差(Δu、Δv、Δs)。此外,“(u0、v0、s0)”是作为基准数据存储的特征量,“(u1、v1、s1)”是通过步骤S203计算出的特征量。

Δu=u1-u0

Δv=v1-v0

图8表示图像的位置关系以及特征量的差(Δu、Δv)。通过虚线来表示从第一机器人位置,通过照相机4拍摄到在第一目标标记位置上配置的目标标记6时的图像上的目标标记6。通过实线来表示从第二机器人位置,通过照相机4拍摄到在第二目标标记位置上配置的目标标记6时的图像上的目标标记6。

与目标标记6的大小相关的特征量s与目标标记6和照相机4之间的距离成反比。因此,在式(2)中使用了特征量s的倒数。

在位置判定中使用的阈值为0.1像素的情况下,当(Δu、Δv)的长度不满0.1像素时,判定为两个目标标记6分别配置在图像上的相同位置。在大小判定中使用的阈值为0.1像素的情况下,当Δs在-0.1~0.1的范围内时,判定为两个目标标记6分别在图像上具有相同的大小。

当步骤S204中的判定结果为否定时(位置以及大小中的至少任意一方不一致时),向步骤S205前进,移动机器人2以使得特征量的差(Δu、Δv、Δs)变小。虽然没有限定根据特征量的差(Δu、Δv、Δs)计算机器人2的移动量的方法,但是其中的一个例子如后所述。

当步骤S204中的判定结果为肯定时,向步骤S206前进,计算机器人坐标系∑r中的第二目标标记位置的三维位置。通过本实施例,在步骤S204中,确认从图像检测出的特征量与基准数据中的特征量相一致。因此,机器人2的机械臂前端部23的位置与第二目标标记位置之间的位置关系与在将机械臂前端部23定位在第一机器人位置上时的机械臂前端部23的位置与第一目标标记位置之间的位置关系相同。

因此,下面的式(3)表示机器人坐标系∑r中的第二目标标记位置的三维位置P2。“R2”是在将机械臂前端部23定位在第二机器人位置上时的机器人坐标系∑r中的手腕坐标系∑f的位置。“T”是作为基准数据存储的工具前端点(TCP)的值(参照图9)。

“R2”为4×4的齐次变换矩阵,“T”以及“P2”是(x、y、z)T的3×1的矢量。

在图6所示的例子中,为了提高精度,在步骤S205的处理后再次执行步骤S203以及步骤S204的处理。然而,在其他的实施方式中,可以在使机器人2移动根据特征量的差(Δu、Δv、Δs)计算出的机器人2的移动量后,不返回步骤S203,而直接向步骤S206前进。

在步骤S205中,作为计算机器人2的移动量的方法的例子,对使用了雅克比矩阵(Jacobian matrix)的方法进行说明。

首先,使用雅克比矩阵J,通过下面的式(4)来定义特征量的差(Δu、Δv、Δs)与机器人2的移动量(Δx、Δy、Δz)之间的关系。雅克比矩阵J为3×3的正矩阵。

因此,如果雅克比矩阵J已知,则能够根据特征量的差(Δu、Δv、Δs)计算机器人2的移动量(Δx、Δy、Δz)。

其次,对求出雅克比矩阵J的方法进行说明。求出雅克比矩阵的步骤可以在机器人2的机械臂前端部23上安装了照相机4后的初始设定时执行一次。

将目标标记6配置在任意的位置,将目标标记6位于图像中心附近这样的机器人2的位置作为原位置。例如,当在第一目标标记位置上配置目标标记6时,可以将第一机器人位置作为原位置。

在将机械臂前端部23定位在原位置的状态下,从通过照相机4拍摄到的图像中检测目标标记6,并计算特征量(ui、vi、si)。

接着,使机械臂前端部23在手腕坐标系∑f的X轴方向上移动距离m,从在移动后的位置通过照相机4拍摄到的图像中检测目标标记6,并计算特征量(ux、vx、sx)。

同样地,从使机械臂前端部23从原位置开始在手腕坐标系∑f的Y轴方向以及Z轴方向上分别移动距离m后拍摄到的图像中,计算特征量(uy、vy、sy)、(uz、vz、sz)。

基于使机器人2在X轴方向、Y轴方向以及Z轴方向上进行了移动时的目标标记6的检测结果、在原位置的目标标记6的检测结果,按照下面的式(5)~(7)来计算特征量的差。

Δux=ux-ui

Δvx=vx-vi

Δuy=uy-ui

Δvy=vy-vi

Δuz=uz-ui

Δvz=vz-vi

在将式(5)~(7)代入式(4)时,能够从下面的式(8)求出雅克比矩阵J。

接着,对利用上述实施方式的测定方法来设定机床的坐标系的方法进行说明。本实施方式的机器人系统1除了图1所示的结构以外,还具备机床7以及机床控制装置71(参照图10)。另外,如图10所示,在机床7的工作台72上放置了三个目标标记6。

与上述的实施方式相同,分别定义了机器人坐标系∑r以及手腕坐标系∑f。并且,在本实施方式中,如图10所示,定义了成为机床7的控制基准的机械坐标系∑m。

在本实施方式中,机器人控制装置3还具备机械坐标系计算部33。机械坐标系计算部33基于机械坐标系∑m中的至少三个目标标记位置、以及机器人坐标系∑r中的至少三个目标标记位置来计算机械坐标系∑m相对于机器人坐标系∑r的位置。

机床7的工作台72构成为能够在机械坐标系∑m中的三维位置已知的位置上配置三个目标标记6。例如,将目标标记6配置在通过定位销预先决定的位置上。如果能够再现目标标记6的配置,则具有在使用追加的机器人,或者更换机器人时,能够更简便地执行再设定的优点。此外,优选将三个目标标记6定位为不排列在一条直线上。

机床控制装置71与机器人控制装置3相连接,根据需要向机器人控制装置3发送机械坐标系∑m中的目标标记6的位置。

参照图11对在机器人2上设定与机械坐标系∑m一致的坐标系的工序进行说明。此外,设为上述的初始设定已完成。

在步骤S301中,将三个目标标记分别配置在第三、第四以及第五目标标记位置上。机械坐标系∑m中的第三、第四以及第五目标标记位置Q3、Q4、Q5分别为已知。

在步骤S302中,按照参照图6说明的步骤S202~S206的处理,测量机器人坐标系∑r中的第三目标标记位置P3。

在步骤S303中,按照参照图6说明的步骤S202~S206的处理,测量机器人坐标系∑r中的第四目标标记位置P4。

在步骤S304中,按照参照图6说明的步骤S202~S206的处理,测量机器人坐标系∑r中的第五目标标记位置P5。

在步骤S305中,基于机械坐标系∑m中的第三、第四以及第五目标标记位置Q3、Q4、Q5和机器人坐标系∑r中的第三、第四以及第五目标标记位置P3、P4、P5来计算机器人坐标系∑r中的机械坐标系∑m的位置。

说明在步骤S305中执行的计算方法的一个例子。在以下的说明中,将机器人坐标系∑r中的机械坐标系∑m的位置设为M。“M”为4×4的齐次变换矩阵。

针对包含第三、第四以及第五目标标记位置的平面,定义目标标记坐标系∑t。以将第三目标标记位置作为原点,将从第三目标标记位置向第四目标标记位置的方向作为X轴方向,且将包含第三、第四以及第五目标标记位置的平面作为XY平面的方式,决定目标标记坐标系∑t,

如果将机器人坐标系∑r中的目标标记坐标系∑t的位置设为“Tr”,则从下面的式(9)计算作为4×4的齐次变换矩阵的“Tr”。

Vx=(P4-P3)/∣P4-P3∣

Vt=(P5-P3)/∣P5-P3∣

Vz=Vx×Vt

Vy=Vz×Vx

如果将机械坐标系∑m中的目标标记坐标系∑t的位置设为“Tm”,则从下面的式(10)计算作为4×4的齐次变换矩阵的“Tm”。

Wx=(Q4-Q3)/∣Q4-Q3∣

Wt=(Q5-Q3)/∣Q5-Q3∣

Wz=Wx×Wt

Wy=Wz×Wx

在此,因为Tr=M·Tm,所以M=Tr·Tm-1

在机床7的工作台72可在两个轴向上平移,并且能够围绕一个轴进行旋转时,使工作台72进行动作,来将一个目标标记6移动到相互不同的三个位置,由此来取得上述第三、第四以及第五目标标记位置。此时,在目标标记6相对于工作台72的位置是根据机床7的规格而唯一决定的位置时,能够从工作台72的位置计算机械坐标系∑m中的目标标记6的位置。或者,也可以使用接触探针等来测量机械坐标系∑m中的目标标记6的位置。

其次,参照图12以及图13,对在机器人2中设定新的坐标系的方法进行说明。在通过机器人2执行的预定作业中,将新的坐标系作为作业用坐标系∑c来进行使用。此时使用的机器人系统1与图1所示的结构类似,但是使用三个目标标记6,并且机器人控制装置3还具备作业用坐标系计算部34(参照图13)。

作业用坐标系计算部34基于机器人坐标系∑r中的至少三个目标标记位置来计算机器人2的作业用坐标系∑c。

如图12所示,在步骤S401中,在与想要设定作业用坐标系∑c的位置相对应的第六、第七以及第八目标标记位置上配置目标标记6。

在步骤S402中,按照参照图6说明的步骤S202~S206的处理,测量机器人坐标系∑r中的第六目标标记位置P6。

在步骤S403中,按照参照图6说明的步骤S202~S206的处理,测量机器人坐标系∑r中的第七目标标记位置P7。

在步骤S404中,按照参照图6说明的步骤S202~S206的处理,测量机器人坐标系∑r中的第八目标标记位置P8。

在步骤S405中,基于机器人坐标系∑r中的第六、第七以及第八目标标记位置P6、P7、P8来计算新设定的作业用坐标系∑c的位置C。

在步骤S405中,对计算作业用坐标系∑c的位置C的方法的一个例子进行说明。

针对包含第六、第七以及第八目标标记位置的平面设定作业用坐标系∑c。以将第六目标标记位置作为原点,将从第六目标标记位置向第七目标标记位置的方向作为X轴方向,且将包含第六、第七以及第八目标标记位置的平面作为XY平面的方式,决定作业用坐标系∑c。此时,能够从下面的式(11)计算作业用坐标系∑c的位置C。此外,位置C为4×4的齐次变换矩阵。

Vx=(P7-P6)/∣P7-P6∣

Vt=(P8-P6)/∣P8-P6∣

Vz=Vx×Vt

Vy=Vz×Vx

此外,照相机4以及目标标记6可以在执行上述实施方式的处理时暂时使用,也可以在处理结束后根据需要拆卸。

通过本实施方式的机器人系统1能够得到如下的效果。

(1)不需要预先进行照相机4的校准。因此,能够提高作业效率。

(2)在本实施方式中使用的照相机4也可以是一台二维照相机。即,无需进行立体测量地来测量目标标记6的三维位置,因此能够提供廉价的机器人系统。

(3)如同与机床7一起使用时那样,即使在机器人2的动作区域受限的情况下,也能够测量目标标记6的三维位置。

(4)在机器人2中设定与针对机床7设定的机械坐标系∑m相对应的坐标系,因此能够在机床7与机器人2之间共享位置信息。

以上,虽然对本发明的各种实施方式进行了说明,但是本领域技术人员应该认识到通过其他的实施方式也能够实现本发明所起到的作用效果。特别是,在不脱离本发明的范围内,能够消除或置换上述实施方式的结构要素,或者能够进一步附加公知的方法。另外,对于本领域技术人员来说,显而易见通过任意组合在本说明书中明示或暗示公开的多个实施方式的特征也能够实施本发明。通过本发明的机器人系统,不需要预先进行照相机的校准,另外,能够使用廉价的二维照相机来测量目标标记的三维位置。因此,在为一种廉价且简单的方法的同时,能够确定机器人坐标系和机床坐标系之间的位置关系。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1