首页 / 专利库 / 医疗设备 / 视觉反馈 / 利用了视觉反馈的机器人系统

利用了视觉反馈机器人系统

阅读:247发布:2020-05-14

专利汇可以提供利用了视觉反馈机器人系统专利检索,专利查询,专利分析的服务。并且本 发明 涉及一种利用了 视觉反馈 的 机器人 系统。机器人系统具备:机器人,通过程序被进行控制,该程序用于对放置在平面上的第一对象物 位置 的对象物进行预定的作业;第一机器人位置存储部,其存储相对于第一对象物位置,处于预定的相对位置关系的 机械臂 前端部的位置;目标到达状态数据存储部,其存储对象物在 照相机 的图像上的特征量;机器人移动量计算部,其求出用于使放置在第二对象物位置上的对象物的特征量与目标到达状态数据的特征量一致的从任意的初始位置开始的移动量;以及修正数据计算部,其根据基于移动量使机械臂前端部移动时的第二机器人位置与第一机器人位置的差来计算程序的修正数据。,下面是利用了视觉反馈机器人系统专利的具体信息内容。

1.一种机器人系统,其特征在于,具备:
机器人,通过包含动作指令的程序被进行控制,该动作指令是使用安装在机器人的机械臂前端部的装置对放置在平面上的第一对象物位置的对象物进行预定的作业的动作指令;
照相机,其被安装在上述机械臂前端部,拍摄对象物;
第一机器人位置存储部,其存储相对于上述第一对象物位置,处于预定的相对位置关系的上述机械臂前端部的位置来作为第一机器人位置;
目标到达状态数据存储部,其在将对象物放置在上述第一对象物位置,并将上述机械臂前端部定位在上述第一机器人位置的状态即目标到达状态下,存储上述照相机的图像上的该对象物的位置、姿势以及大小中的至少一个特征量来作为目标到达状态数据;
机器人移动量计算部,其求出上述机械臂前端部从任意的初始位置开始的移动量,该移动量用于使在将上述机器人的机械臂前端部定位在上述任意的初始位置的状态下,通过照相机对放置在上述平面上的第二对象物位置的对象物进行了拍摄时的该对象物在上述照相机的图像上的位置、姿势以及大小中的至少一个特征量与上述目标到达状态数据中的对应的特征量一致;以及
修正数据计算部,其根据在基于上述移动量使上述机械臂前端部移动时的上述机械臂前端部的位置即第二机器人位置与上述第一机器人位置的差来计算用于修正上述程序的修正数据。
2.根据权利要求1所述的机器人系统,其特征在于,
在将上述机器人的上述机械臂前端部定位在上述第二机器人位置的状态下,当由上述照相机拍摄的放置在上述第二对象物位置的对象物在图像上的位置、姿势以及大小中的至少一个特征量和上述目标到达状态数据存储部中存储的目标到达状态数据中的对应的特征量之间的差比预定的值大时,上述机器人移动量计算部将上述第二机器人位置重新设为初始位置来求出上述移动量,将根据该移动量使上述机械臂前端部进行了移动时的上述机械臂前端部的位置重新设为第二机器人位置。
3.根据权利要求1所述的机器人系统,其特征在于,
在将上述机器人的上述机械臂前端部定位在上述第二机器人位置的状态下,上述机器人移动量计算部将上述第二机器人位置重新设为初始位置来求出上述移动量,当该移动量比预定的值大时,将根据该移动量使上述机械臂前端部进行了移动时的上述机械臂前端部的位置重新设为第二机器人位置。
4.根据权利要求1~3中的任意一项所述的机器人系统,其特征在于,
还具备:
第二机器人位置存储部,其至少设置3个相互不同的多个第二对象物位置,在该多个第二对象物位置放置上述对象物,取得并存储与各个对象物位置对应的多个第二机器人位置;以及
法线向量计算部,其根据存储在上述第二机器人位置存储部中的多个第二机器人位置,计算放置了上述对象物的平面的法线向量,
上述机器人移动量计算部仅计算与上述法线向量垂直的平面内的平移移动以及围绕与该法线向量平行的轴的旋转移动来作为移动量。
5.根据权利要求4所述的机器人系统,其特征在于,
上述相互不同的多个第二对象物位置中的1个第二对象物位置与第一对象物位置相同,上述多个第二机器人位置中的1个机器人位置是第一机器人位置。
6.根据权利要求4或5所述的机器人系统,其特征在于,
基于上述机器人移动量计算部的旋转移动是在将上述机器人定位在第一机器人位置的状态下,将通过放置在第一对象物位置的对象物的中心位置并与上述法线向量平行的直线定义为相对于机器人的机械臂前端部的相对直线,将该定义的相对于机械臂前端部的相对直线作为旋转轴进行旋转移动。

说明书全文

利用了视觉反馈机器人系统

技术领域

[0001] 本发明涉及一种使用照相机来修正机器人的动作的机器人系统,特别涉及一种为了不需要进行机器人的坐标系和照相机的坐标系的对位而使用了视觉反馈的机器人系统。

背景技术

[0002] 大多的产业机器人根据一种被称为示教再现的方式进行动作。即,作为程序预先示教希望机器人进行的动作和作业,通过再生程序来使机器人进行希望的作业。机器人能够正确地重复示教的动作和作业。但是,如果在与示教程序时不同的位置放置了对象物,则无法对该对象物正确地进行作业。
[0003] 对此,进行以下动作,即使用照相机等视觉传感器来识别对象物的位置,使用视觉传感器识别出的对象物的位置信息来修正机器人的动作。通过这样,即使在与程序示教时不同的位置放置对象物,也能够正确地对对象物进行作业。
[0004] 通过视觉传感器发现的对象物的位置通过成为视觉传感器的测量基准的坐标系(以下称为“视觉坐标系”)来表现。为了根据由视觉传感器发现的位置信息修正机器人的动作,需要将通过视觉坐标系表现的位置信息变换为成为机器人的动作控制基准的坐标系(以下称为“机器人坐标系”)中的位置信息。把用于将通过视觉坐标系表示的位置信息变换为通过机器人坐标系表示的位置信息的数据称为“照相机的校准数据”,将用于取得照相机的校准数据的作业称为“校准照相机”(例如,日本专利公开公报JP-A-10-49218)。
[0005] 另一方面,作为不进行照相机的校准而能够进行使用了视觉传感器的机器人位置修正的方法之一,知道被称为视觉反馈的方法(例如,日本专利公开公报JP-A-2003-211381。以下称为“专利文献2”)。例如,使机器人移动到对象物的抓持位置,通过安装在机器人上的照相机拍摄对象物,将该对象物的外观作为目标数据进行存储。并且,在实际作业时,每次移动机器人时通过照相机拍摄对象物,为了成为与目标数据相同的外观而重复控制机器人的位置姿势,在误差收敛为零的地方执行机械手的抓持。
[0006] 专利文献2所记载的方法在误差为零的位置通过机械手进行抓持。就是说,在将机器人定位于抓持对象物的位置的状态下,需要将照相机拍摄到的对象物的外观作为目标数据进程存储。因此,安装在机器人的机械臂前端部的机械手和照相机的位置关系存在制约,无法自由地设计。
[0007] 另外,这个方法只能够在误差为零的位置对对象物进行作业,所以在使机器人进行抓持对象物这种简单的作业时没有问题。但是,例如在使机器人进行按照预定的路径对于对象物涂布粘合剂这种的需要复杂的动作路径的作业时无法使用。
[0008] 另一方面,还提出一种方法(例如,日本专利公报JP-B-4265088),将对于基准对象物设定了目标数据时的机器人的位置和进行抓持基准对象物的动作时的机器人的位置之间的差预先存储为位置变换矩阵,在为了使误差成为零而使机器人进行了收敛动作后,进行由存储的位置变换矩阵所表示的动作然后进行抓持动作。在该发明中,与专利文献2记载的方法相比,安装在机器人的机械臂前端部的机械手和照相机的位置关系没有制约。但是,没有解决在想要使机器人进行需要复杂的动作路径的作业时无法使用的问题。
[0009] 当在工作台等平台上放置了对象物的情况下,在为了成为与目标数据相同的外观而控制机器人的位置姿势时,希望进行控制以使安装在机器人的机械臂前端部的照相机和放置了对象物的工作台的距离没有变化。另外,在对象物的朝向发生变化时,需要控制机器人使照相机和对象物的相对的朝向成为相同,但是希望进行控制使照相机围绕与工作台面垂直的轴进行旋转,从而使照相机和工作台的相对的倾斜不变。
[0010] 但是,在通常的视觉反馈中,无法保证照相机和工作台的距离不变、照相机和工作台的相对的倾斜不变。结果,有时会花费为了成为与目标数据相同的外观而控制机器人所需要的时间以上的时间。
[0011] 为了避免该问题,在机器人上设定与工作台面平行的坐标系,以此为根据可以进行照相机的移动。例如,将机器人的机械手上的任意一点设定为TCP(Tool Center Point工具中心点),使机器人的TCP接触工作台面上的不在一条直线上的3个地方,读取从各个地方的机器人坐标系观察到的TCP的坐标值,由此能够在工作台面上设定机器人的坐标系(例如,日本专利公开公报JP-A-2010-076054)。
[0012] 但是,通过这种方法设定坐标系的作业存在根据作业者的技术设定精度出现差别的问题和因为使机器人的机械手与工作台物理地接触,所以具有由于操作失误对机械手和工作台造成损伤的危险的问题。
[0013] 本发明的目的在于提供以下的方法,即在使用视觉反馈修正机器人的动作的系统中,能够使对象物进行复杂的路径的作业,并且即使作业者对于机器人的坐标系没有意识,通过使照相机在工作台面上平行移动,并围绕与工作台面垂直的轴进行旋转,从而高效地使照相机移动到预定的位置。

发明内容

[0014] 本发明的一实施方式的机器人系统的特征在于,具有:机器人,通过包含动作指令的程序被进行控制,该动作指令是使用安装在机器人的机械臂前端部的装置对放置在平面上的第一对象物位置的对象物进行预定的作业的动作指令;照相机,其被安装在机械臂前端部,拍摄对象物;第一机器人位置存储部,其存储相对于第一对象物位置,处于预定的相对位置关系的机械臂前端部的位置来作为第一机器人位置;目标到达状态数据存储部,其在将对象物放置在第一对象物位置,并将机械臂前端部定位在第一机器人位置的状态即目标到达状态下,存储照相机的图像上的该对象物的位置、姿势以及大小中的至少一个特征量来作为目标到达状态数据;机器人移动量计算部,其求出机械臂前端部从任意的初始位置开始的移动量,该移动量用于使在将机器人的机械臂前端部定位在任意的初始位置的状态下,通过照相机对放置在平面上的第二对象物位置的对象物进行了拍摄时的该对象物在照相机的图像上的位置、姿势以及大小中的至少一个特征量与目标到达状态数据中的对应的特征量一致;以及修正数据计算部,其根据在基于移动量使机械臂前端部移动时的机械臂前端部的位置即第二机器人位置与第一机器人位置的差来计算用于修正程序的修正数据。附图说明
[0015] 通过参照以下的附图,更明确地理解本发明。
[0016] 图1是表示本发明的第一实施方式的机器人系统的整体结构的图。
[0017] 图2是在本发明中使用的机器人控制装置的框图
[0018] 图3是表示本发明的机器人系统启动时的流程的流程图
[0019] 图4是表示本发明的机器人系统执行作业时的处理的流程图。
[0020] 图5是表示放置在第一以及第二对象物位置的对象物的位置的平面图。
[0021] 图6是表示位移后的虚拟的机器人坐标系的图。
[0022] 图7是用于说明工具坐标系的定义的图。
[0023] 图8是表示工具坐标系和照相机的位置关系的图。
[0024] 图9是表示工具坐标系和第二工具坐标系的位置关系的图。
[0025] 图10是从上观察将工具坐标系围绕Z轴进行旋转移动的样态的图。

具体实施方式

[0026] 以下参照附图对本发明的机器人系统进行说明。但是,本发明的技术范围不限定于这些实施方式,请注意涉及权利要求书中记载的发明及其等同物。
[0027] 图1是表示本发明的实施方式的机器人系统的整体结构的图。本发明的实施方式的机器人系统的特征在于,具备:机器人1,通过包含动作指令的程序被进行控制,该动作指令是使用设置在机器人1的机械臂前端部的机械接口部32上安装的装置即工具30,对放置在平面5上的第一对象物位置上的对象物4进行预定的操作的动作指令;照相机3,安装在机械接口部32上,拍摄对象物4;第一机器人位置存储部(以下也简单地称为“机器人位置存储部”)12a(图2),存储相对于第一对象物位置处于预定的相对位置关系的机械接口部32的位置,来作为第一机器人位置;目标到达状态数据存储部12b,在将对象物4放置在第一对象物位置,将机械接口部32定位在第一机器人位置的状态即目标到达状态下,存储照相机3的图像上的对象物4的位置、姿势以及大小中的至少一个特征量来作为目标到达状态数据;机器人移动量计算部11b,求出机械接口部32从任意的初始位置开始的移动量,该移动量用于在将机器人的机械臂前端部定位于任意的初始位置的状态下,使通过照相机对放置在平面上的第二对象物位置的对象物进行拍摄时的对象物在照相机的图像上的位置、姿势以及大小中的至少一个特征量与目标到达状态数据中的对应的特征量一致;以及修正数据计算部11c,其根据在基于移动量使机械接口部32移动时的机械接口部32的位置即第二机器人位置与第一机器人位置的差来计算用于修正程序的修正数据。
[0028] 机器人1是公知的典型的机器人,例如是6轴多关节机器人。机器人1具有机械臂部1a以及基部1b,另外,与控制机器人1的机器人控制装置2连接。
[0029] 在机械臂部1a的机械臂前端部设置的机械接口部32上安装有工具30。图1所示的工具30例如是用于对粘接剂涂布用的喷嘴31等对象物进行作业的机构。在机械接口部32还安装了用于摄像对象物4的图像的照相机3。
[0030] 在机器人1中定义了固定在基部1b上的机器人坐标系∑b和固定在机械接口部32上的机械接口坐标系∑f。机器人控制装置2将从机器人坐标系∑b观察到的机械接口坐标系∑f的位置以及姿势R作为机器人当前位置进行控制。这里,R是4×4的齐次变换矩阵。以下,只要没有特别限定,“机器人位置”是指从机器人坐标系∑b观察到的机械接口坐标系∑f的位置姿势R。
[0031] 照相机3例如是产业用的CCD照相机,是具有摄像图像的功能的众所周知的受光设备。在本实施例中,机器人控制装置2作为具有图像处理功能的装置,照相机3与机器人控制装置2连接。但是,不限于这样的例子,可以另外设置个人计算机等图像处理用装置,照相机3可以与图像处理装置连接,通过通信电缆将图像处理装置和机器人控制装置2进行连接。
[0032] 将对象物4放置在平坦的工作台5上,通过移动机器人1来进行移动,从而使对象物4进入照相机3的视野内,能够通过照相机3摄像对象物4的图像。
[0033] 图2是本发明中使用的机器人控制装置的框图。机器人控制装置2包含主CPU(以下简单称为“CPU”)11。
[0034] CPU11具备图像处理部11a,其用于计算通过照相机3摄像到的图像中出现的对象物4的位置、姿势、大小等特征量;机器人移动量计算部11b,其根据计算出的特征量和存储的目标到达状态数据来求出机器人的移动量;修正数据计算部11c,其根据第一机器人位置和第二机器人位置计算用于修正机器人的作业的修正数据;法线向量计算部11d,其根据多个第二机器人位置来求出放置了对象物4的工作台5的平面的法线向量。
[0035] 在从CPU11延伸的总线17上连接有由RAM、ROM、非易失性存储器等组成的存储器12、示教操作盘用接口13、照相机接口14、伺服控制部15以及外部装置用输入输出接口16。
[0036] 将示教操作盘18与示教操作盘用接口13连接。操作者操作示教操作盘18,除了机器人程序的生成、修正、登录、或者各种参数的设定之外,还执行所示教的机器人程序的再生运行、机器人位置的手动操作等。另外,在本实施例中,机器人控制装置2具有图像处理功能,操作者操作示教操作盘18,除了机器人程序的生成、修正、登录、或者各种参数的设定之外,还执行示教的图像处理程序的再生运行、检测测试等。
[0037] 将控制机器人1的系统软件、进行图像处理的系统软件存储在存储器12的ROM中。另外,把根据应用示教机器人的作业内容的机器人程序和与其关联的设定数据存储在存储器12的非易失性存储器中。将存储器12的RAM用作临时存储CPU11进行的各种运算处理的数据的存储区域。存储器12包含存储机器人位置的机器人位置存储部12a、存储由图像处理部11b计算出的目标到达状态数据的目标到达状态数据存储部12b。
[0038] 伺服控制部15具备伺服控制器﹟1~﹟n(n是机器人的总轴数,这里设n=6),接收来自CPU11的动作指令,将扭矩指令与从附属于各轴的脉冲编码器(未图示)取得的反馈信号一起输出给伺服放大器A1~An。各伺服放大器A1~An根据各扭矩指令对各轴的伺服电动机M1~Mn供给电流,来对它们进行驱动。
[0039] 在照相机接口14上连接作为摄像单元的照相机3。当从CPU11经由照相机接口14发送了拍摄指令时,照相机3通过电子功能执行拍摄,将映像信号以灰度信号的形式经由照相机接口14存储在存储器12中。
[0040] 本申请的机器人系统中,以在工作台5上的任意一个位置放置了对象物4的状态下,示教对于对象物4进行预定的作业的机器人程序。将该位置称为“基准位置”。当对象物4被放置在基准位置时,仅通过对该机器人程序进行再生,机器人1能够对对象物4进行恰当的作业。
[0041] 在此之上,在将对象物4放置在与基准位置不同的位置时,通过本发明公开的后述的方法来计算修正数据,一边根据修正数据修正机器人程序一边进行再生,由此机器人1能够恰当地对放置在与基准位置不同的位置的对象物4进行作业。
[0042] 图3是表示本发明的机器人系统启动时的流程的流程图。以下,参照图3来说明机器人系统的启动顺序。
[0043] 首先,将对象物4放置在工作台5上的基准位置(以下称为“第一对象物位置”)上(S101)。
[0044] 接着,将机器人1移动到放置在第一对象物位置的对象物4出现在照相机3的视野中的第一机器人位置(S102)。优选第一机器人位置是照相机3的光轴相对于工作台5的平面大致垂直的位置,但不限定于该条件。例如,照相机3的光轴相对于工作台5的平面多少有点倾斜也没问题。另外,关于第一机器人位置,为了将图像中出现的对象物4的像所受到的镜头失真等的影响抑制为最小限度,优选设为对象物4出现在照相机视野的大致中心的位置。
[0045] 接着,用照相机3拍摄对象物4的图像,将对象物4的图像作为模型数据进行示教(S103)。这里,将什么样的信息作为模型数据进行存储取决于为了从图像中检测对象物4所使用的图像处理的算法。在本发明中,可以使用任何的图像处理算法。例如,已知使用了归一化相关的模板匹配和使用了边缘信息的广义霍夫变换等方法,能够使用这样的方法。在为基于归一化相关的模板匹配时,模板相当于模型数据。
[0046] 接着,使用进行了示教的模型数据,从图像检测对象物4,将检测到的对象物4在图像上的位置、姿势、大小等特征量作为目标到达状态数据存储到目标到达状态数据存储部12b中,并且将第一机器人位置存储到机器人位置存储部12a中(S104)。例如,作为图像处理算法采用了模板匹配时,能够将模板最一致时的模板的中心位置、旋转度、扩大缩小的比例分别作为位置、姿势、大小的特征量。
[0047] 最后,对于放置在第一对象物位置上的对象物4示教由机器人1进行预定的作业的机器人程序(S105)。
[0048] 图4是表示本发明的机器人系统的作业执行时的处理的流程图。以下,参照图4来说明本发明的机器人系统的机器人系统的动作。
[0049] 首先,将机器人向初始位置移动(S201)。通常,机器人的初始位置可以和第一机器人位置相同,但是如果对象物4进入照相机3的视野,并且机器人的姿势与第一机器人位置相同,则也可以是不同的位置。例如,当工作台5宽大,仅在第一机器人位置工作台5的整个平面未收纳在照相机3的视野中时,通过变更初始位置能够将工作台5的整个平面分割为多个视野来进行测量。
[0050] 接着,用照相机3拍摄对象物4的图像,通过图像处理执行对象物4的检测(S202)。在图像处理算法中使用和之前的S104相同的方法,取得对象物4的特征量(在图像上的位置、姿势、大小)的信息。
[0051] 接着,计算机器人移动量,该机器人移动量用于将机器人移动到在S202取得的特征量与存储的目标到达状态数据一致的位置(S203)。提出了各种根据从图像取得的特征量来计算机器人移动量的方法,本发明不限定使用什么样的方法,将在后面叙述一个实施例。
[0052] 接着,判定当前的机器人位置是否是目标到达状态(S204)。这可以通过将S203中计算出的机器人移动量的大小与预先设定的阈值进行比较来判断。例如,在阈值为0.5mm时,如果计算出的机器人移动量不满0.5mm,则能够判断为是目标到达状态。另外,关于S204中的判断基准,还可以将S202中取得的特征量与存储的目标到达状态数据中的对应的特征量之间的差,作为与预先设定的阈值进行比较的值。例如,当阈值为1像素的情况下,如果计算出的位置的差不满1像素,则能够判断为是目标到达状态。
[0053] 在不是目标到达状态时,根据S203中计算出的机器人移动量来使机器人1移动(S205)。假设通过使机器人移动1次而处于目标到达状态,可以进入到下一步骤(S206),但是为了在图4的流程图中再次确认满足了S204的目标到达条件,返回S202。
[0054] 在判断为目标到达状态时,将当时的机器人位置存储为第二机器人位置,并且根据存储的第一机器人位置和第二机器人位置,计算用于对检测出的对象物4进行作业的修正数据(S206)。
[0055] 机器人程序的修正原理和修正数据的计算方法如下那样。
[0056] 如上所述,可以将机器人位置表示为从机器人坐标系∑b观察到的机械接口坐标系∑f的位置以及姿势R。这里,R是4×4的齐次变换矩阵。机器人程序使机器人1依次移动到多个机器人位置,因此能够考虑多个机器人位置的集合。在将第i个的机器人位置设为Ri时,可以认为想要求出的修正数据是以下公式成立那样的4×4的齐次变换矩阵X。
[0057] Ri′=X·Ri
[0058] 即,根据修正数据X,通过上述的公式将机器人程序示教的机器人位置Ri一边变换为Ri’一边进行再生,由此实现机器人的修正。该变换矩阵X具有如图6所示那样虚拟地将机器人坐标系∑b位移X来再生机器人程序的效果,所以即使是伴随着复杂路径的操作,也能够与对象物4的位置、朝向相匹配地恰当地修正机器人的程序。
[0059] 在本发明中,在将存储的第一机器人位置设为R1,第二机器人位置设为R2时,能够根据R1和R2通过下式计算出修正数据X。
[0060] X=R2·R1-1
[0061] 最后,根据计算出的修正数据一边修正示教的机器人程序一边再生(S207)。
[0062] 接着,作为在S203中用于根据从图像得到的特征量,使机器人位置与目标到达状态一致的机器人移动量的计算方法之一,说明使用了雅可比矩阵(jacobian matrix)的方法。
[0063] 首先,根据检测出的对象物的特征量和作为目标到达状态数据存储的特征量之间的差分来计算用于与目标到达状态一致的机器人的移动量。图5是表示放置在第一和第二对象物位置的对象物的位置的平面图。例如,在图5中,用虚线表示位于第一对象物位置的对象物4的像,用实线表示位于第二对象物位置的对象物4的像,但是当用(u,v)表示在视觉坐标系中的位置时,Δu成为图像的纵向的位置的差分,Δv成为图像的横向的位置的差分。
[0064] 另外,将在图像上的外观的大小的特征量设为s,例如在为模板匹配的情况下,将模板的大小设为100%=1.0,如果看着比模板大则能够通过比1.0大的值来表现,如果看着比模板小则能够通过比1.0小的值来表现。
[0065] 在将作为目标到达数据存储的特征量设为(u0,v0,s0),将在S202得到的特征量设为(u1,v1,s1)时,通过下边的公式表示特征量的差分。
[0066] Δu=u1-u0
[0067] Δv=v1-v0
[0068]
[0069] 图像上的外观大小的特征量s与从放置了对象物的工作台面5到照相机3的距离成反比,所以不采用比例,而采用倒数从而成为与距离成比例的值。
[0070] 将要求出的机器人移动量设为(Δx,Δy,Δz),通过以下公式来定义雅可比矩阵J。
[0071]
[0072] 无论哪个坐标系都可以表现机器人的移动量(Δx,Δy,Δz)。但是,如果考虑固定了照相机3和机械接口坐标系∑f的相对的位置关系,则优选通过机械接口坐标系∑f来表现。即,在本实施例中,设(Δx,Δy,Δz)表示应该将机器人1向机械接口坐标系∑f的X轴、Y轴、Z轴方向进行移动的量。
[0073] 接着,说明求出雅可比矩阵的方法。
[0074] 首先,将对象物4出现在图像中心附近的状态设为机器人的原位置,在将机器人1定位于原位置的状态下,从照相机3拍摄到的图像中检测对象物4,将得到的特征量设为(u0,v0,s0)。接着,将机器人1从原位置在机械接口坐标系∑f的X轴方向上移动距离m,在该位置从照相机3拍摄到的图像中检测对象物4,将得到的特征量设为(ux,vx,sx)。同样地,在将机器人从原位置在机械接口坐标系∑f的Y轴方向上移动了距离m的位置、在Z轴方向上移动了距离m的位置,分别检测对象物4,将各个特征量设为(uy,vy,sy)、(uz,vz,sz)。
[0075] 如下那样根据将机器人在X轴、Y轴、Z轴方向上移动时的对象物的检测结果和在原位置的对象物的检测结果来分别求出Δu,Δv,Δs。
[0076] Δux=ux-u0
[0077] Δvx=vx-v0
[0078]
[0079] Δuy=uy-u0
[0080] Δvy=vy-v0
[0081]
[0082] Δuz=uz-u0
[0083] Δvz=vz-v0
[0084]
[0085] 将这些代入公式(1),能够如下那样求出雅可比矩阵J。
[0086]
[0087]
[0088] 一旦求出雅可比矩阵,对于任意的对象物4的特征量(u,v,s),通过将它们代入公式(1),能够求出用于使机器人1与目标到达状态一致的机器人移动量(Δx,Δy,Δz)。
[0089] 根据以上所述,对于放置在工作台5上的任意位置的对象物4,能够一边修正机器人程序,一边使机器人进行作业。但是,求出的机器人的移动量(Δx,Δy,Δz)有可能进行照相机3和工作台5之间的距离发生变化的移动,虽然最终能够到达目标到达状态,但是效率差。
[0090] 因此,接着说明本发明公开的方法,即计算放置了对象物4的工作台5的平面的法线,并且计算机器人1以不改变与工作台5的距离的方式与工作台5的平面平行地移动,并且,围绕与工作台5的平面的法线平行的轴进行旋转的机器人移动量。
[0091] 首先,假设成为已经求出了上述的雅可比矩阵,使机器人1按照S201~S207的顺序,对于放置在工作台5上的任意位置的对象物4进行作业的状态。
[0092] 一般已知为了确定三维的任意平面,平面上不同的3个点为已知即可。
[0093] 关于在上述的S206中存储的第二机器人位置,当考虑该位置成分(x,y,z)时,(x,y,z)是将机器人1定位在第二机器人位置时的从机器人坐标系∑b观察到的机械接口坐标系∑f的原点的位置。
[0094] 第二机器人位置的位置成分(x,y,z)不是工作台5的平面上的点。但是,当多个第二机器人位置的位置成分(xi,yi,zi)为已知时,它们应该在大致一个平面上,并且多个(xi,yi,zi)形成的平面和工作台5的平面应该平行。因此,通过计算由(xi,yi,zi)形成的平面的法线,能够计算工作台5的平面的法线。
[0095] 一般通过以下的公式表示任意的三维平面。
[0096] ax+by+cz=d
[0097] 在此,向量n=(a,b,c)是平面的法线向量,标量值d表示从坐标系原点到平面的垂线的垂足的长度。根据以上可知,当具有多个第二机器人位置的位置成分(xi,yi,zi)时,求出以下关系成立的(a,b,c)即可。
[0098]
[0099] 从这里,通过最小二乘法求出法线向量n。
[0100]
[0101] 于是,导出以下的公式。
[0102]
[0103] 通过对该向量(a/d,b/d,c/d)进行标准化,能够计算出多个第二机器人位置形成的平面的法线向量、即工作台5的平面的法线向量n。
[0104] 可以用第一机器人位置代替多个第二机器人位置的一个。
[0105] 在本实施例中,采用了通过使机器人1进行预定的作业的过程来计算法线向量n的方式,因此也实施S207。但是,当想要不使机器人1进行作业在先仅计算出法线向量n的情况下,可以在计算出法线向量n之前不执行S207。
[0106] 最后,说明使根据计算出的法线向量n,在S203中计算出的机器人的移动量只包括与工作台5的平面平行的平移的方法。
[0107] 这里,导入刀具坐标系∑t作为新的坐标系。刀具坐标系∑t是相对于机械接口坐标系∑f相对固定地定义的坐标系,在使机器人1移动时,继续维持与机械接口坐标系∑f的相对位置关系地进行移动。
[0108] 如图7所示,作为一例,将刀具坐标系∑t定义为原点位于与机械接口坐标系∑f相同的位置,并且当机器人1被定位在第一机器人位置上时,Z轴与工作台5的平面的法线向量n平行的坐标系。刀具坐标系∑t的X轴的方向和Y轴的方向如果连与Z轴正交,并且相互正交的条件都满足的话,则朝哪个方向都可以。
[0109] 定义刀具坐标系∑t等同于求出从机械接口坐标系∑f观察的刀具坐标系∑t的位置姿势T。T是4×4的齐次变换矩阵。
[0110] 首先,作为将机器人1定位在第一机器人位置,按照以下的顺序求出从机器人坐标系∑b观察到的刀具坐标系∑t的位置以及姿势Tb。
[0111] 在将表示刀具坐标系∑t的从机器人坐标系∑b观察到的X轴、Y轴、Z轴的方向向量分别设为Vx、Vy、Vz时,Z轴的方向是法线向量n,所以Vz如下式那样来表示。
[0112]
[0113] 因为X轴和Y轴的方向朝向那边都可以,所以例如设X轴为从第一个第二机器人位置向第二个第二机器人位置的方向,设Y轴为与X轴和Z轴垂直的方向。即,Vx和Vy分别由以下公式来表示。
[0114]
[0115] VY=VZ×VX
[0116] 其中,用以下公式表示k。
[0117]
[0118] 在机器人1被定位在第一机器人位置R1上时,刀具坐标系∑t的原点与从机器人坐标系∑b观察到的∑f的原点的坐标值相同,所以当将其设为(x0,y0,z0)时,从机器人坐标系∑b观察到的刀具坐标系∑f的位置和姿势Tb成为以下公式的关系。
[0119]
[0120] 并且,由于机器人1被定位在第一机器人位置R1上,所以下式成立。
[0121] Tb=R1·T
[0122] 因此,通过下式能够计算从机械接口坐标系∑f观察到的刀具坐标系∑t的位置和姿势T。-1
[0123] T=R1 ·Tb
[0124] 通过求出了从机械接口坐标系∑f观察到的刀具坐标系∑t的位置姿势T,能够将通过机械接口坐标系∑f表现的机器人的移动量(Δx,Δy,Δz)通过下式变换为从刀具坐标系∑t观察到的机器人的移动量(Δx’,Δy’,Δz’)。
[0125]
[0126] 在上式中,由于T为4×4的齐次变换矩阵,因此机器人的移动量向量也扩展为四维,但是可以如下式那样将T的旋转成分表示为3×3的旋转矩阵M。
[0127]
[0128] 关于这样求出的通过刀具坐标系∑t表示的机器人的移动量(Δx’,Δy’,Δz’),因为刀具坐标系∑t的Z轴与工作台5的平面垂直,并且对象物4被放置在工作台5上,所以Δz’理想地应该成为0,但实际上由于检测误差或计算机误差等各种原因不会完全成为0。因此,当按照计算出的机器人的移动量来移动机器人时,会微妙地接近或远离工作台5,但是通过将Δz’置换为0,将机器人的移动量设为(Δx’,Δy’,0),能够完全保持与工作台5的距离来移动机器人。
[0129] 于是,上述的公式(1)如以下那样进行记载。
[0130]
[0131] 因此,得到下式。
[0132]
[0133] 因此,能够通过以下的公式计算J’。
[0134] J′=M-1·J
[0135] 根据上述公式计算出J’,在S203中用J’代替雅可比矩阵J,从而可以根据(Δu,Δv,Δs)计算出直接通过刀具坐标系∑t表现的机器人移动量(Δx’,Δy’,Δz’)。
[0136] 关于图像上的外观的旋转移动量Δθ,因为刀具坐标系∑t的Z轴与工作台5的面垂直,所以使机器人1围绕刀具坐标系的Z轴旋转Δθ即可。
[0137] 但是,这时如图8所示,根据刀具坐标系∑t和照相机3的位置关系,通过使机器人1围绕刀具坐标系∑t的Z轴进行旋转移动,对象物4可能会到照相机3的视野外。
[0138] 对此,如图9所示,将刀具坐标系∑t的原点进行平移,计算在将对象物4放置在第一对象物位置,并且机器人1被定位在第一机器人位置的状态下,原点来到穿过对象物4的中心位置且与法线向量n平行的轴上的第二刀具坐标系∑t’,通过围绕第二刀具坐标系∑t’的Z轴旋转Δθ,能够消除对象物4出到照相机3的视野外的问题。以下,说明第二刀具坐标系∑t’的计算方法。
[0139] 刀具坐标系∑t与第二刀具坐标系∑t’平行,且只有原点位置不同,所以以刀具坐标系∑t为基准通过P来表示从刀具坐标系∑t的原点向第二刀具坐标系∑t’的原点的向量。
[0140] 在将对象物4放置在工作台5上的适当位置,例如放置在第一对象物位置上,将机器人1定位在适当的例如第一机器人位置上的状态下,进行图像处理,从照相机3的图像检测对象物4。这时,将从机器人坐标系∑b观察到的刀具坐标系∑t的位置和姿势设设为Tb,将从机器人坐标系∑b观察到的刀具坐标系∑t原点的坐标值设为(x1,y1,z1),将检测出的对象物4在视觉坐标系中的坐标值设为(u1,v1)。
[0141] 接着,保持对象物4放置在相同的位置不变,使机器人1围绕刀具坐标系∑t的Z轴旋转移动微小角度φ,使用上述方法,施加视觉反馈以使在照相机3的图像中出现的对象物4的特征量成为与之前相同的(u1,v1)。在这时的收敛的机器人位置,将从机器人坐标系∑b观察到的刀具坐标系∑t的原点的坐标值设为(x2,y2,z2)。
[0142] 图10是从正上方看到该情况的图。在角度不同的2个机器人位置,在照相机3的图像上对象物4出现在相同的(u1,v1),所以下式成立。
[0143] P=R(φ)·P+Δt (2)
[0144] 其中
[0145]
[0146]
[0147] 当展开公式(2)时,得到下式。
[0148]
[0149] 当关于P对上述公式求解时,得到以下的解。
[0150]
[0151] 从刀具坐标系∑t向第二刀具坐标系∑t’的转换不伴随坐标系的旋转,因此通过将刀具坐标系∑t的原点移动向量P来求出第二刀具坐标系∑t’的原点。
[0152] 根据以上所述,能够仅限定为与求出的法线垂直的面内的平行移动以及周围与求出的法线平行的轴的旋转移动。由此,能够限定收敛所需要的移动的方向和旋转轴,能够缩短收敛时间。具体地说,当在图像上将对象物移动到目标位置时没有高度方向的收敛动作,对象物在图像上的大小不变,因此即使在收敛判断中也不进行大小的差异计算和收敛判定,从而处理时间甚至收敛时间被缩短。
[0153] 控制机器人,以使在照相机的图像上出现的对象物在图像上的特征量变得与目标到达状态数据相同,由此能够期待放置在第二对象物位置上的对象物和第二机器人位置的相对位置关系与放置在第一对象物位置的对象物和第一机器人位置的相对位置关系变得相同。因此,根据第一机器人位置和第二机器人位置的差异来修正和再生为了对放置在第一对象物位置上的对象物进行作业而示教的程序,由此能够对放置在第二对象物位置的对象物进行作业。这表示即使程序示教的机器人的动作是复杂的路径,也能够对放置在第二对象物位置的对象物进行希望的作业。
[0154] 本发明的其他实施方式的机器人系统的特征在于,在将机器人的机械臂前端部定位在第二机器人位置的状态下,当由照相机拍摄的放置在第二对象物位置的对象物在图像上的位置、姿势以及大小中的至少一个特征量和目标到达状态数据存储部中存储的目标到达状态数据中的对应的特征量之间的差比预定的值大时,机器人移动量计算部将第二机器人位置重新设为初始位置来求出移动量,将根据该移动量使机械臂前端部进行了移动时的机械臂前端部的位置重新设为第二机器人位置。
[0155] 作为求出与目标到达状态一致的机器人的移动量的方法,提出了几个方法,本发明对于用哪个方法来求出机器人的移动量不进行限定。但是,当采用了简便的方法时,有时根据最初求出的移动量使机器人只移动1次,不会成为目标到达状态。此时,重新将第二机器人位置设为初始位置,重复同样的处理,从而能够逐渐接近目标到达状态。
[0156] 本发明的另一实施方式的机器人系统的特征在于,在将机器人的机械臂前端部定位在第二机器人位置的状态下,机器人移动量计算部将第二机器人位置重新设为初始位置来求出移动量,当该移动量比预定的值大时,将根据该移动量使机械臂前端部进行了移动时的机械臂前端部的位置重新设为第二机器人位置。
[0157] 本发明的另一实施方式的机器人系统的特征在于,还具备:第二机器人位置存储部,其至少设置3个相互不同的多个第二对象物位置,在该多个第二对象物位置放置对象物,取得并存储与各个对象物位置对应的多个第二机器人位置;以及法线向量计算部,其根据存储在第二机器人位置存储部中的多个第二机器人位置,计算放置了对象物的平面的法线向量,机器人移动量计算部仅计算与法线向量垂直的平面内的平移移动以及围绕与该法线向量平行的轴的旋转移动来作为移动量。
[0158] 本发明的另一实施方式的机器人系统的特征在于,相互不同的多个第二对象物位置中的1个第二对象物位置与第一对象物位置相同,多个第二机器人位置中的1个机器人位置是第一机器人位置。
[0159] 如果存在第一机器人位置和2个第二机器人位置、或者3个第二机器人位置,则能够计算与放置了对象物的工作台面垂直的轴的方向向量(法线向量)。例如,通过计算从第一机器人位置朝向第一个第二机器人位置的向量和从第一机器人位置朝向第二个第二机器人位置的向量之间的向量积来求出法线向量。另外,当得到3个以上的第二机器人位置时,例如能够使用最小二乘法等来计算法线向量。
[0160] 这时,当计算中使用的所有的第二机器人位置位于直线上时,不求出平面,因此可以设置第二对象物位置,以使第一机器人位置和2个第二机器人位置、或者3个机器人位置例如成为正三角形的顶点的位置。另外,即使在3个第二机器人位置为大致相同的位置时,也有可能无法正确地求出平面的法线向量。所以,关于在第二机器人位置存储部中存储的第二机器人位置,优选在确认与已经存储的第二机器人位置离开一定距离以上后进行存储。
[0161] 机器人移动量计算部,在将机器人定位在第一机器人位置的状态下,将通过放置在第一对象物位置的对象物的中心位置并与法线向量平行的直线位置定义为相对于机器人的机械臂前端部的相对直线,将机器人移动量计算部的旋转移动是将该定义的相对于机械臂前端部的相对直线作为旋转轴进行旋转移动。
[0162] 为了使在照相机的图像中出现的对象物在图像上的特征量变得与目标到达状态相同,将移动机器人时的旋转轴定义为在将对象物放置在第一对象物位置上,且将机器人定位于第一机器人位置的状态时的相对于机器人的机械臂前端部的相对的直线,并且设为通过对象物的中心位置与法线向量平行的轴,由此即使在使机器人旋转移动时,对象物也不会到图像外。
[0163] 如上所述,根据本发明的实施例的机器人系统,在使用照相机识别作业对象物的位置姿势,使机器人进行预定的作业的机器人系统中,能够一边维持不需要进行照相机校准的视觉反馈的特征,一边消除使用时的制约、即无法在执行伴随有复杂路径的作业的系统中恰当应用这样的制约。
[0164] 并且,消除了机器人相对于放置了作业对象物的工作台的平面接近、远离或者倾斜,由此无法到达目标到达状态的问题,能够稳定、确切地以短时间实现目标到达状态。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈