专利名称:机器人程序校正装置的制作方法
技术领域:
本发明涉及机器人程序校正装置,特别涉及一种为了在现场与作业场所相符合而校正离线生成的机器人动作程序的机器人程序校正装置。
背景技术:
在机器人离线系统中生成机器人动作程序,并将其适用于现场时,由于离线的环境和现场的环境有偏差,即使原封不动变地执行离线生成的动作程序,也不能按照离线所计划的那样作业。因此,有必要校正这种偏差。
以前,为了使离线生成的程序在现场符合实际位置,执行机器人微动,并执行示教校正。所谓的执行机器人微动是指为了给机器人示教作业位置而操作机器人。
而且,在将离线生成的程序适用于现场的情况下,利用机器人整修与画面上定义的示教位置相对应的现场工件的目标位置后,将利用目标位置的点和实际接触的位置的点的差分得到的4行×4行的单一差分矩阵右乘目标位置,来移位目标位置,从而校正程序,执行发生了偏差的部分的示教修正。
在现有的通过仅将根据点的差得到的单一差分矩阵右乘目标位置来移位目标位置的方法中,校正精度不高。因此,存在这样的问题,即需要通过使用机器人的微动来反复进行这种修正,故在校正后的修正上消耗工时。
发明内容
本发明的目的在于解决上述现有技术中的问题,提供一种机器人程序校正装置,其能够使得根据在利用机器人动作程序中定义的机器人动作路径和由实际机器人整修实际工件的点校正动作程序的工序数减少。
为了实现上述目的,本发明的第一方面所提供的是,一种机器人程序校正装置,其在显示装置的画面上同时显示机器人和工件各自的三维模型,并校正所述机器人的动作程序,其包括差分计算单元,计算由整修的点计算出的线和面中的至少一个,和由在画面上指定的作业处所的点计算出线和面中的至少一个的差分;和校正单元,基于所述差分计算校正量,校正所述机器人动作程序。
依照本发明的第二方面,利用“计算由整修的点算出的线和面的至少一方与由检索出的作业处所的点算出的线和面的至少一方的差分的差分算出单元”代替第一方面中的“计算由整修的点算出的线和面的至少一方与在画面上指定的作业处所的线和面的至少一方的差分的差分算出单元”。
理想的是,机器人程序校正单元进一步包括动作程序存储单元,基于机器人和工件的所述画面上的配置位置,生成机器人的多个动作程序,并存储;和作业处所指定单元,其在所述画面上指定对于所述画面上配置的所述工件的机器人的作业处所。
此外,理想的是,所述线或面分别为样条曲线和样条曲面。
此外,理想的是,通过由差分校正机器人的机构模型,求出动作程序的校正量。
此外,理想的是,所述机器人的机构模型为D-H参数。
因为在将离线生成的程序适用于现场时,由校正单元上的作业处所生成样本曲线或样本曲面,此外,在现场整修对应的点,生成整修曲线或整修曲面。比较这两个曲线或曲面,求出差分,校正机器人程序和机器人D-H参数,这样,机器人程序的校正精度提高,并且会缩短用于在现场的校正程序的作业工时数。因此,可以简化将离线生成的程序适用于现场时的作业。
本发明的上述目的以及其它特征,参照附图阅读描述的以下的实施发明的最佳实施例会进一步了解。
图1为表示包含依照本发明的机器人程序校正装置的系统的构成的框图;图2为表示依照本发明实施例1的机器人程序校正装置的构成的功能框图;图3为表示依照本发明实施例2的机器人程序校正装置的构成的功能框图;图4为具体表示依照实施例1或实施例2的机器人程序校正装置和机器人控制器14的构成的框图;图5为说明依照如图3所示的机器人程序校正装置的实施例1的动作的流程图;图6为说明依照如图4所示的机器人程序校正装置的实施例2的动作的流程图;图7为表示显示装置12的画面上显示的作业面Ps和与其相对应的实际机器人16的作业面(整修面)Pt的示意图;图8为表示通过校正变更了的机器人位置和工件位置的关系的示意图。
具体实施例方式
下面,说明本发明的实施方式。在所有图中相同的附图标记表示同一部件。
图1为表示包括依照本发明的机器人程序校正装置的系统的构成的框图。在该图中,11为个人计算机等的计算机,12为连接至计算机11的显示装置,13为连接至计算机的输入单元,由键盘和鼠标等实现。14为根据存储在计算机11中的机器人动作程序控制机器人16的动作的控制器,15为用于通过控制器14示教机器人的作业位置,或将机器人动作程序安装至计算机11中的示教装置,16为由控制器15控制的机器人,17为由机器人16加工或移动的工件。
依照本发明的机器人程序校正装置由计算机11实现。
在显示装置12的画面上,作为三维数据同时显示机器人16,工件17以及必要的相应周边机器(图未示)的画面。
示教装置15为操作者一边观察在显示装置12的画面上显示的机器人的画面或实际机器人,用于指定机器人16的作业处所或指定机器人16的动作的便携终端。
实施例1图2为表示依照本发明实施例1的机器人程序校正装置的构成的功能框图。在该图中,20为连接至显示装置20的机器人程序校正装置。机器人程序校正装置20由个人电脑11等实现。机器人程序校正装置20为在显示装置12的画面上同时显示机器人和工件各自的三维模型,校正机器人的动作程序的装置。机器人程序校正装置20具有整修位置存储单元21,其通过利用实际机器人整修与画面上指定的作业处所相对应的实际工件上的位置,将实际工件上的位置存储为多个点;整修线或整修面算出单元22,其基于整修了的多个点,算出线和面中的至少一个;作业处所存储单元23,其将画面上显示的工件上的作业处所的位置信息存储为多个点;机器人动作程序检索单元24,其基于作业处所存储单元23内的多个点检索机器人动作程序;作业处所线或面计算单元25,其基于机器人动作程序表示的多个作业处所,计算出线和面中的至少一个;差分计算单元26,其计算由整修了的点算出的线和面中的至少一个,和由所述画面上指定了的作业处所的点算出的线和面中的至少一个的差分;和校正单元27,其基于该差分计算出校正量,校正机器人动作程序。
实施例2图3为表示依照本发明实施例2的机器人程序校正装置的构成的功能框图。在该图中,与图2不同的地方是,相对于图2中的作业处所位置存储单元23将画面上显示的工件的画面上的作业处所的位置信息作为多个点来取得,而在图3中,则具有由对于实际机器人的整修位置,检索与其相关连的机器人动作程序和作业处所的单元31;和基于检索的机器人动作程序和作业位置,算出作业处所的线和面中的至少一个的作业处所线或面计算单元32。
图4为具体表示依照实施例1和实施例2的机器人程序校正装置和机器人控制器14的构成的框图。在该图中,程序校正装置40包含在计算机11中。程序校正装置40具有布局生成部401,工件数据读取部402,动作程序生成部403,在实施例1中从作业处所检索动作程序的动作程序检索部404或在实施例2中从整修点检索机器人动作程序和作业处所的检索部405,和程序校正部406。
此外,计算机11还具有存储与工件17相关的数据的工件数据存储部407,机器人程序测量处所存储部408,作业处所存储部409,整修位置存储部410,修正后的机器人程序存储部411和校正软件基本功能部412。程序校正装置40被插入校正软件基本功能部412中。
机器人控制器14具有读取存储在机器人程序测量处所存储部408中的测量处所的机器人程序的机器人程序读取部413,根据读取的程序执行机器人微动(jog)的微动功能部414,将整修了的工件位置示教给整修位置存储部410的整修功能部415,读取校正后的机器人程序的机器人程序读取部416,和执行读取的校正后的程序的执行部417。
接下来,说明在图2和图3中表示的功能框图和在图4中表示的具体构成的关系。
图2和图3的整修位置存储单元21相当于图4的整修位置存储部410。图2的作业处所存储单元23相当于图4的作业处所存储部409。图2的机器人动作程序检索单元24相当于图4的动作程序检索部404。图3的机器人动作程序和作业处所检索单元31相当于图4的检索部405。图2的整修线或面计算单元22以及差分计算单元26,校正单元27,图3的作业处所线或面计算单元32,差分计算单元33和校正单元34相当于图4的程序校正部406。
图5为说明依照图4所示的机器人程序校正装置的实施例1的动作的流程图。在该图中,在步骤S51中,布局生成部401通过在显示装置12的画面上配置机器人16,工件17以及必要的相应周边机器(图中被省略)的三维数据来进行布局生成。与布局的工件的图像相关的工件数据从工件数据存储部407读取到工件数据读取部402中。
接着,在步骤S52中,以周知的方法生成相应于在显示装置12的画面上布局的机器人和工件的图像的多个动作程序。
接着,在步骤S53中,操作者使用示教装置15,在显示装置12的画面上显示的工件和机器人的图像上指定作业处所。该指定可以由使用鼠标使光标移动至作业处所并点击,或在画面上显示所有作业处所并从中选择等各种方法来实现。指定的作业处所被存储至作业处所存储单元23(作业处所存储部409)中。
接着,在步骤S54中,从步骤S52生成的机器人动作程序中,检索与步骤S53指定的作业处所最近的机器人动作程序。
接着,在步骤S55中,利用实际机器人16整修实际工件17的、与上述指定的作业处所相对应的处所,并将整修了的处所存储在实际工件位置存储单元21(整修位置存储部410)中。
最后,在步骤S56中,利用作业处所线或面计算单元25和整修线或面计算单元22,算出存储在作业处所存储单元23(作业处所存储部409)中的画面上的作业处所,和存储在整修位置存储单元21(整修位置存储部410)中的整修点间的线或面,利用差分计算单元26算出它们的差分,并基于该差分校正在步骤S54中检索的机器人动作程序。
图6为说明图4所示的机器人程序校正装置的依照实施例2的动作的流程图。在该图中,和图5不同的地方在于在图5中,是在步骤S54由画面上的作业处所检索机器人动作程序,与此相对,在图6中,是在步骤S65检索与对于实际机器人的整修点最接近的机器人动作程序和作业处所,其它步骤皆和图5相同因此省略其说明。
图7为表示显示装置12的画面上显示的作业面Ps和与其对应的实际机器人16的作业面(整修面)Pt的示意图。如图所示,一般的,画面上的作业面Ps和整修面Pt仅偏离向量D。圆形印记表示示教点,由于在画面上指定的示教点和实际机器人的示教点偏离,所以为了补偿该偏离,通过上述单元校正机器人动作程序。
下面,说明校正机器人动作程序的具体方法。
首先,由画面上的作业处所Qsj,算出作业面Ps(u,w),其为使用矩阵Nij由下述式子表示的样条曲面。其中,Qsj中的下标s表示作业面的三维表面位置surface(表面),j为作业面上的作业点的指数。此外,u和w为取从0到1的值的参变量。
Ps(u,w)=∑Nij(t)Qsj同样,由整修点Qtj算出整修面Pt(u,w),其为样条曲面。
接着,利用下述的式子,算出差分单位法线向量e(u,w)和偏移距离d。
两面的差分D(u,w)为D(u,w)=Ps(u,w)-Pt(u,w)e(u,w)=D(u,w)/D(u,w)|d=|D(u,w)|接着,依照上述差分向量,对在画面上生成了的机器人动作程序的示教点Pr(i)进行如下校正。
变换矩阵M=(n,o,a,(u,w))n=(1,0,0)o=(0,1,0)a=(0,0,1)其中,n,o,a为表示在机器人工程中的链接(link)坐标系中通常使用的手臂的手指尖姿势的参数,分别表示法线、方位和逼近。此外,D(u,w)为用上式得到的差分向量,表示位置。
变换后的示教点Pn(i),如果依照实施例1,则为Pn(i)=MPr(i),如果依照实施例2,则为Pn(i)=XPr(i)。其中矩阵XX=R(e,a)]]>=ex2Vα+CαexeyVα-ezSαexeyVα+eySαexeyVα+ezSαey2Vα+CαeyezVα-exSαexeyVα-eySαexezVα+exSαez2Vα+Cα]]>e=(ex,ey,ez)Vα=1-cosαCα=cosαSα=sinα设定α=0来决定N。
图8为表示根据上述校正变更了的机器人位置和工件位置的关系的示意图。假设校正前机器人位置为向量R,校正前工件位置为向量W,画面上的作业面Ps和整修面Pt仅偏离向量D,则校正后工件位置向量Wd如图所示变为向量W和向量D的内积W.D。
下面,说明基于机器人程序校正装置的机器人的D-H参数的变更。所谓D-H参数是通过Denavit-Hartenberg方法设定的周知的参数。
机器人的TCP(Tool Center Point)的位置姿势由各链接的矩阵的乘法表示。所谓TCP是机器人的前端部位置的意思用三维坐标表示。
在实施例1中,假设链接有6个轴,假设表示各个轴的矩阵为A1,A2,A3,A4,A5,A6,刀具的矩阵为T,则TCP变为如下所示,
TCP=A1A2A3A4A5A6T伴随着工件的布局的校正,同时也自动校正依存工件的作业处所。此外,同时也校正机器人程序校正装置上的机器人动作程序的示教点。
此外,还比较机器人程序校正装置上(画面上)的示教点和整修点,将该差分加至校正装置上的机器人的D-H参数的链接的位置、姿势(θ,α)。
A=(n,o,a,1)n=(cθ,sθ,0,0)o=(-cαsθ,sαcθ,sα,0)a=(sαcθ,-sαcθ,cα,0)1=(Acθ,Asθ,sα,1)其中,1表示位置。
关于整修点Ti(x,y,z,w,p,r)I=I,n,其中w,p,r表示作为表示坐标系的姿势的角度而周知的侧转·俯仰·原始角求解Ti=A1iA2iA3iA4iA5iA6iTI=1,n的联立方程式,算出θt,αt。
对画面上的作业处所也同样求出θs,αs。
将差分θd=θt-θs、θd=αt-αs加至对应于D-H参数的要素,校正D-H参数。从下次开始使用该参数。
下面,说明在实施例2中接近整修点的机器人动作程序、作业处所的检索。
首先,由整修点列,生成连接该点列的样本曲线。
同样,由机器人动作程序的示教点列,生成连接该示教点列的样本曲线。
整修点列Ti(xi,yi,zi,wi,pi,ri),示教点列Ki(xi,yi,zi,wi,pi,ri)的样本曲线分别为Pti(t)=N0(t)Ti-1+N1(t)Ti+N2(t)Ti+1+N3(t)Ti+2Pki(t)=N0(t)Ki-1+N1(t)Ki+N2(t)Ki+1+N3(t)Ki+2求出其差分,选择该差分变为最小的机器人动作程序。此外,选择与其相对应的作业处所。
产业上的可利用性如上所述所看到的,通过本发明可以得到下面的效果。
1)使离线生成的程序适用于现场时的操作简单。
2)缩短将离线生成的程序适用于现场时的工时数。
权利要求
1.一种机器人程序校正装置,其在显示装置的画面上同时显示机器人和工件各自的三维模型,并校正所述机器人的动作程序,包括整修位置存储单元,其通过由实际机器人整修与所述画面上指定的作业处所相对应的实际工件上的位置,将实际工件上的位置作为多个点存储;整修线或整修面计算单元,其基于所述整修过的多个点,计算线和面中的至少一个;作业处所存储单元,其将所述画面上显示的工件上的作业处所的位置信息作为多个点存储;机器人动作程序检索单元,其基于所述作业处所存储单元内的多个点,检索机器人动作程序;作业处所线或面计算单元,其基于所述机器人动作程序表示的多个作业处所,计算线和面中的至少一个;差分计算单元,其计算由所述整修过的点计算出的线和面中的至少一个和由在所述画面上指定的作业处所的点计算出的线和面中的至少一个的差分;和校正单元,其基于所述差分计算校正量,并校正所述机器人动作程序。
2.一种机器人程序校正装置,其在显示装置的画面上同时显示机器人和工件各自的三维模型,并校正所述机器人的动作程序,包括整修位置存储单元,其通过由实际机器人整修与所述画面上指定的作业处所相对应的实际工件上的位置,将实际工件上的位置作为多个点存储;由所述整修位置检索与其关连的机器人动作程序和作业处所的单元;整修线或整修面计算单元,其基于所述整修过的多个点,计算线和面中的至少一个;作业处所或面计算单元,其基于所述检索出的作业处所的多个点,计算线和面中的至少一个;差分计算单元,其计算由所述整修过的点计算出的线和面中的至少一个和由所述检索出的作业处所的点计算出的线和面中的至少一个的差分;和校正单元,其基于所述差分计算校正量,并校正所述机器人动作程序。
3.如权利要求1或2所述的机器人程序校正装置,其进一步包括动作程序存储单元,其基于所述机器人和所述工件的所述画面上的配置位置,生成并存储机器人的多个动作程序;和作业处所指定单元,其在所述画面上指定对于所述画面上配置的所述工件的所述机器人的作业处所。
4.如权利要求1或2所述的机器人程序校正装置,其中,所述线或面分别为样条曲线和样条曲面。
5.如权利要求1或2所述的机器人程序校正装置,其中,通过由差分校正机器人的机构模型,求出动作程序的校正量。
6.如权利要求5所述的机器人程序校正装置,其中,所述机器人的机构模型为D-H参数。
全文摘要
一种机器人程序校正装置,其在显示装置的画面上同时显示机器人(16)和工件(17)各自的三维模型,并校正所述机器人的动作程序,包括由所述整修过的点计算出的线和面中的至少一个和在所述画面上指定的作业处所的点或整修位置检索与其相关的机器人动作程序和作业处所的单元(25,32);计算与由多个点计算出检索出的作业处所的位置信息的线和面中的至少一个的差分的差分计算单元(26,33);和基于所述差分计算校正量,并校正机器人动作程序的校正单元(27,34)。
文档编号G05B19/401GK1848012SQ20061006554
公开日2006年10月18日 申请日期2006年3月20日 优先权日2005年4月13日
发明者渡边淳, 长塚嘉治 申请人:发那科株式会社