工件表面轮廓线获取方法、干涉检测方法和相关装置与流程

文档序号:18272788发布日期:2019-07-27 09:52阅读:427来源:国知局
工件表面轮廓线获取方法、干涉检测方法和相关装置与流程

本发明涉及计算机图形学领域,尤其是一种工件表面轮廓线获取方法、干涉检测方法和相关装置。



背景技术:

随着机器人在工业生产中的普及应用,越来越多的企业引入机器人代替人工,进行生产作业。通过示教方式预先规划机器人的运动轨迹,让机器人在生产过程中复现相应的轨迹从而完成某一特定的工序是常用的做法。但是实际生产过程中,机器人和工件是相对独立存在的,如果机器人仅仅按照预先规划好的轨迹机械地运行,难以感知工件的位置与形态,则有可能与工件发生机械碰撞导致损坏。现有的,可以通过增加传感器辅助时,传感器可以在很大程度上检测到碰撞可能发生,进而采取紧急制动措施,但这种做法一方面导致硬件成本增加,另一方面容易由于传感器误操作引起机器人的误动作。

因此机器人复现示教轨迹前,在三维仿真环境下,对机器人与工件进行干涉检测是确保机器人安全运行的可行途径之一。目前绝大多数三维仿真环境中,对空间中两个物体进行干涉或碰撞检测时,通常需要提供被检测的两个物体的三维模型,机器人由于位置固定,其三维模型通常确定且不会轻易发生改变,但是工件的品种规格尺寸等却是经常变换的,得到其三维模型并不容易。而且实际生产过程中,大多数企业面临问题是:工件生产批量小、品种多,完成示教轨迹的编程已属不易,获取品种繁多的工件的详细三维模型会进一步耗费大量时间与人力,导致难以实现基于三维仿真的干涉检测。

因此需要提出一种无需工件三维模型的干涉检测方法,操作者完成示教轨迹编程之后可直接在仿真环境中运行示教轨迹。



技术实现要素:

本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的是解决现有技术中机器人干涉检测需要工件三维模型导致的耗费人力物力,降低生产效率的问题,提供一种工件表面轮廓线获取方法、一种无需工件三维模型的机器人干涉检测方法、系统和相关装置。

本发明所采用的技术方案是:

第一方面,本发明提供一种工件表面轮廓线获取方法,包括步骤:

获取示教轨迹步骤:获取工件的机器人示教轨迹,所述机器人包括机器人本体和机器人末端执行器;

获取工件表面轨迹步骤:驱动所述机器人本体沿着示教轨迹运行时,所述机器人末端执行器在工件表面形成的运行轨迹,作为工件的表面轨迹;

轮廓线处理步骤:根据所述表面轨迹得到工件表面轮廓线。

进一步地,所述获取示教轨迹步骤还包括:

进一步地,所述轮廓线处理步骤还包括:数据处理,所述数据处理包括:抽稀处理和/或拟合处理。。

第二方面,本发明还提供一种机器人干涉检测方法,包括步骤:

获取工件轮廓线步骤:根据第一方面任一项所述的一种工件表面轮廓线获取方法获取工件的轮廓线;

干涉检测步骤:指在仿真环境中,驱动机器人本体沿着所述示教轨迹逐点运行,检测机器人与所述工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存。

进一步地,还包括步骤:干涉点有效性判断步骤:指在获取的所述干涉点中去除孤立点。

第三方面,本发明还提供一种机器人干涉检测装置,包括:

获取示教轨迹模块:用于获取工件的机器人示教轨迹,所述机器人包括机器人本体和机器人末端执行器;

获取工件表面轨迹模块:用于驱动所述机器人本体沿着示教轨迹运行时,所述机器人末端执行器在工件表面形成的运行轨迹,作为工件的表面轨迹;

获取工件轮廓线模块:用来对所述表面轨迹进行数据处理,得到工件表面轮廓线;

干涉检测模块:用来在仿真环境中,驱动机器人本体沿着所述示教轨迹逐点运行,检测机器人与所述工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存。

第四方面,本发明还提供一种机器人干涉检测系统,包括:计算机、示教系统、机器人系统和工件;

所述示教系统:用于提供示教轨迹;

所述机器人系统:包括机器人本体、机器人控制器和机器人末端执行器,所述机器人末端执行器与所述机器人本体相连,所述机器人控制器与所述计算机相连;

所述计算机:用于执行如第二方面任一项所述的一种机器人干涉检测方法,并将对应的控制指令发送至所述机器人控制器;

所述工件:指机器人末端执行器的作业对象。

进一步地,所述计算机还用来编辑所述示教轨迹,所述编辑包括:删除多余轨迹点和/或对轨迹进行平滑滤波。

第五方面,本发明提供一种机器人干涉检测设备,包括:

至少一个处理器,以及与所述至少一个处理器通信连接的存储器;

其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行如第二方面任一项所述的方法。

第六方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第二方面任一项所述的方法。

本发明的有益效果是:

本发明通过获取工件的机器人示教轨迹,然后驱动机器人本体沿着示教轨迹运行时,机器人末端执行器在工件表面形成的运行轨迹,作为工件的表面轨迹,对表面轨迹进行数据处理,将其近似为工件表面轮廓线,无需对工件进行详细的三维建模,只需通过机器人本体对其进行一次示教轨迹运行,即可得到近似的表面轮廓线,将其近似为工件的三维模型,充分利用现成的示教轨迹包含的有效信息,操作简单且成本低。

另外,本发明还根据获得的工件表面轮廓线进行机器人干涉检测,通过在仿真环境中,驱动机器人本体沿着示教轨迹逐点运行,检测机器人与工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存。在无需工件三维模型的前提下,即可自动检测出机器人是否与工件发生干涉或碰撞,以及在何处发生干涉,能够降低机器人干涉检测系统的硬件成本,以及进行干涉检测的时间与人力成本。并且整个干涉检测过程完全在仿真环境中实现,避免作业时,机器人与工件发生真实碰撞从而造成损坏的情况。另外,该干涉检测方法简单易学,一线作业工人即可学习操作,并将其用于焊接、涂胶、喷漆、施釉、打磨、抛光等作业工序中,完成机器人与工件的干涉检测过程。

附图说明

图1是本发明中工件表面轮廓线获取方法实施例一的实现流程图;

图2是本发明中工件表面轮廓线获取方法实施例一的坐标系示意图;

图3是本发明中工件表面轮廓线获取方法实施例一的机器人末端执行器坐标示意图;

图4是本发明中机器人干涉检测方法实施例二的流程图;

图5是本发明中机器人干涉检测方法实施例二的某一被加工工件示意图;

图6是本发明中机器人干涉检测方法实施例二的一种表面轮廓线侧视图示意图;

图7是本发明中机器人干涉检测方法实施例二的一种表面轮廓线立体视图示意图;

图8是本发明中机器人干涉检测方法实施例二的具体实例示意图;

图9是本发明中机器人干涉检测方法实施例二的具体实例局部示意图;

图10是本发明中机器人干涉检测系统实施例三的结构框图;

图11是本发明中机器人干涉检测装置实施例四的结构框图。

具体实施方式

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。

本发明实施例中采用常见的六关节工业机器人作为具体的机器人实施对象,机器人至少包括机器人本体和机器人末端执行器,以喷涂作为具体工艺,相应的机器人末端执行器则为喷枪,使用机器人控制器控制机器人运动,但是仅作示例,不对机器人类型作具体限定。

实施例一:

本发明实施例一提供一种工件表面轮廓线获取方法,图1为本发明实施例提供的一种工件表面轮廓线获取方法的实现流程图,如图1所示,该方法可以包括以下步骤:

s11:获取示教轨迹步骤:指获取工件的机器人示教轨迹,示教轨迹指在机器人喷涂、机器人抛光等机器人作业场景中,根据工件的形状、尺寸及工艺要求进行任务轨迹示教。

s12:获取工件表面轨迹步骤:指驱动机器人本体沿着编辑好的示教轨迹运行时,机器人末端执行器在工件表面形成的运行轨迹,作为工件的表面轨迹。

s13:轮廓线处理步骤:指对表面轨迹进行数据处理以减少后续运算量,得到工件表面轮廓线,数据处理包括:抽稀处理或拟合处理,其中抽稀处理和拟合处理均为现有的数据处理算法,这不做赘述。

其中,步骤s11中,还包括建立坐标系步骤:指建立基坐标系和工具坐标系,如图2所示,为本实施例的坐标系示意图,从图中可以看出,以机器人本体基座41为原点,以水平面为xy轴所在的平面,以垂直正交方向为z轴方向,建立以o0为圆心的基坐标系,且本实施例中,基坐标系与机器人控制器中运动学求逆过程用到的坐标系一致。

而o6为圆心的工具坐标系的坐标轴方向的选择原则是:当机器人本体40处于初始位置时,本实施例中,设置工具坐标系的x轴方向与基坐标系的x轴方向一致,这样做的目的是避免不必要的坐标旋转变换带来的额外运算量。

已知机器人本体40各关节角度值及机器人本体40的d-h参数的情况下,由d-h参数推导,得到机器人本体40各个相邻关节坐标系的变换矩阵,依次将各关节变换矩阵相乘,即可得到机器人本体末端42相对于基坐标系之间的位姿表达矩阵t06,这一过程即是机器人运动学方程的正解,由于机器人运动学方程的正解是唯一的,当确定机器人的一组关节角度值时,机器人本体末端42的位置和姿态就随之唯一确定。

如图2中的六关节机械臂,其末端也就是最末尾一个关节的坐标系在基坐标系下的位姿表达矩阵t06为:

式中:nx、ny、nz分别为末端坐标系的x轴对基坐标系的三个方向余弦,ox、oy、oz分别为末端坐标系的y轴对基坐标系的三个方向余弦,ax、ay、az分别为末端坐标系的z轴对基坐标系的三个方向余弦,px、py、pz分别为末端坐标系原点的位置在基坐标系中的表达式,因此可见t06所有元素,只与机器人各关节角度值及机器人本体40的d-h参数有关,且其详细表达式均可在资料中查到,本实施例不做赘述。

如图3所示,为本实施例中机器人末端执行器坐标示意图,从图中可以看出,点ot是机器人末端执行器43(例如,喷枪)在工件表面形成的轨迹点,以点ot为原点建立工具坐标系,点ot在末端坐标系中的坐标为(δx,δy,δz),其中δy图中未示出,写成矩阵的形式为:

其中,δx,δy,δz代表点ot在末端坐标系中的坐标值,也表示机器人末端执行器43的安装尺寸。

公式(1)与公式(2)相乘,即可得到点ot即机器人末端执行器43在工件表面形成的轨迹点,在基坐标系中的位姿表达式,表示为:

与公式(2)相同,公式(3)中矩阵的前面九个元素代表姿态信息,最后一列前三个元素代表位置信息,从中可以看到,代表姿态的九个元素并没有发生变化,只有位置发生平移以及与姿态有关的旋转变化。

步骤s12中,具体的操作内容为:根据基本的坐标变换原理,结合机器人末端执行器的几何尺寸,计算机器人本体沿着示教轨迹运行时,机器人末端执行器在工件表面形成的轨迹,本实施例中认为,机器人末端执行器在工件表面形成的轨迹,虽然不能完全代替工件的详细三维模型,但包含了工件的表面轮廓信息,在工件三维模型缺失或难以获得的情况下,可以近似地将该表面轮廓线代替工件的详细三维模型,因此可以根据步骤s13,将工件表面轮廓线近似为工件的三维模型。

本实施例中,对工件表面轨迹进行数据处理,将其近似为工件表面轮廓线,无需对工件进行详细的三维建模,只需通过机器人对其进行一次示教轨迹运行,即可得到近似的表面轮廓线,将其近似为工件的三维模型,充分利用现成的示教轨迹包含的有效信息,操作简单且成本低。

实施例二:

本发明实施例二提供了一种机器人干涉检测方法,如图4所示,为本实施例的一种机器人干涉检测方法流程图,包括步骤:

s21:获取工件轮廓线步骤:根据实施例一的一种工件表面轮廓线获取方法获取工件的轮廓线;

s22:干涉检测步骤:指在仿真环境中,驱动机器人本体沿着示教轨迹逐点运行,检测机器人与工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存。

s23:干涉点有效性判断步骤:指在获取干涉点中去除孤立点,以避免误判断的情况。

本实施例,根据获得的工件表面轮廓线进行机器人干涉检测,通过在仿真环境中,驱动机器人沿着示教轨迹逐点运行,检测当前运行轨迹与工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存。在无需工件三维模型的前提下,即可自动检测出机器人是否与工件发生干涉或碰撞,以及在何处发生干涉,能够降低机器人干涉检测系统的硬件成本,以及进行干涉检测的时间与人力成本。

下面以一个具体示例详细描述本发明的机器人干涉检测方法。

如图5所示,为某一被加工工件示意图,从图中可见,该工件外形近似盆状,底部稍有弯曲,以拖动示教的方式,对其内表面进行示教编程形成示教轨迹,即驱动机器人本体沿着示教轨迹运行时,安装于机器人本体末端的机器人末端执行器沿着该工件内表面作业,从而在工件表面形成一系列表面轮廓线。

然后,对表面轨迹进行数据处理以减少后续运算量,得到工件表面轮廓线,另外需要注意的是,当计算表面轮廓线时,如果当前机器人末端执行器处于关闭状态时,机器人可能处于相邻轨迹之间的过渡过程,此时机器人末端执行器形成的映射点不一定处于工件表面,因此,为了防止干涉检测时检测结果与真实情况不相符,需要将机器人末端执行器处于关闭状态时对应的表面轮廓线予以剔除。

如图6~图7所示,为本实施例的一种表面轮廓线侧视图示意图和立体视图示意图,从图7中可以看出,通过本实施例的方法得到的工件表面轮廓线,与工件的实际形状比较接近,可见该表面轮廓线包含了工件表面的部分信息,因此可以将工件表面轮廓线近似为工件的三维模型,用于在仿真环境中与机器人进行干涉检测。

本实施例中,得到的示教轨迹越密集,能够获取的工件表面信息就越充分,采用本实施例提供的干涉检测方法得到的干涉检测结果越准确。

本实施例中,在仿真环境下驱动机器人本体及机器人末端执行器的三维模型沿着示教轨迹逐点运行,并不断检测机器人本体及机器人末端执行器的三维模型在运行至当前轨迹点时,是否与表面轮廓线相交,并将相交的轨迹点标记为干涉点记录保存,为了提高干涉点的有效性需要去除孤立的干涉点,以避免误判断的情况,提高本实施例的机器人干涉检测方法的准确性。

图8为本实施例的机器人干涉检测方法的具体实例示意图,图9为本实施例的机器人干涉检测方法的具体实例局部示意图。其中,为增大对比效果,检测出发生干涉的区域已显示对应区域的喷枪指向信息。从图中可以看出,沿着示教轨迹运行过程中,会有一些区域发生机器人本体及机器人末端执行器与工件表面轮廓线之间的干涉。从图9中,可以明显地看出,当发生干涉时,机器人末端执行器穿过了干涉区域,即可判定发生了干涉,从而避免了实际操作中机器人与工件发生碰撞导致损坏的情况,并表明了本实施例的无需工件三维模型的机器人干涉检测方法的有效性。

实施例三:

本发明实施例三提供一种机器人干涉检测系统,如图10所示,为本实施例的一种机器人干涉检测系统结构框图,从图中可以看出,包括示教系统2、工件3、机器人系统4和计算机1,工件3为机器人末端执行器43的作业对象。

其中,示教系统2指的是机器人示教编程用到的系统,用于提供示教轨迹,示教系统2是机器人示教编程所必须的部件,根据机器人采用的具体的示教方式的不同,示教系统有所区别,如果采用的是示教器编程方式则主要指的是示教器及其辅助设备,如采用的是拖动示教方式,则主要指示教手柄与数据采集器等。它为本发明的干涉检测系统提供完整的机器人示教轨迹,轨迹中包含工艺信息等参数,生成示教轨迹完成后,可以通过计算机1对示教轨迹进行编辑,编辑方法包括:删除多余轨迹点或对轨迹进行平滑滤波等,以便形成完整的有效轨迹。

本实施例中,示教编程生成示教轨迹时,需要考虑机器人末端执行器43与工件3的相对位姿状态。以喷涂工艺为例,将喷枪作为机器人末端执行器43,将其安装于机器人本体40的末端,为了保证喷涂效果,工艺上要求喷枪应尽量与被喷涂工件表面保持垂直,而且喷枪前端到被喷涂工件表面的距离(即喷涂距离)应尽量保持不变,其它如焊接、涂胶、施釉、打磨、抛光等工艺,对机器人末端执行器43与工件3的相对位姿状态的要求与喷涂类似,并且焊接、涂胶等工艺要求更加严格。并且整个干涉检测过程完全在仿真环境中实现,避免作业时,机器人与工件发生真实碰撞从而造成损坏的情况。

另外本实施例中,根据采用的具体示教方式不同选择不同的示教系统进行适应。

计算机1用于运行三维仿真环境,并执行实施例二的一种机器人干涉检测方法,将对应的控制指令发送至机器人控制器44,具体的,计算机1根据编辑后的示教轨迹和工艺参数,按照机器人控制器44所需的指令格式生成代码指令,并将其发送至机器人控制器44,以控制机器人复现示教轨迹,并实现对工件的批量生产作业任务。

机器人系统4包括机器人本体40、机器人控制器44和机器人末端执行器43,其中机器人末端执行器43与机器人本体40相连,位于机器人本体40的末端,机器人控制器44与计算机1相连,用于接收计算机1发送的控制指令。

本实施例的机器人干涉检测系统能够实现实施例二的机器人干涉检测方法,该干涉检测系统简单便于操作,一线作业工人即可学习干涉检测方法,并将其用于焊接、涂胶、喷漆、施釉、打磨、抛光等作业工序的中,完成机器人与工件的干涉检测过程。

实施例四:

本发明实施例四提供一种机器人干涉检测装置,如图11所示,为本实施例的一种机器人干涉检测装置结构框图,包括:

获取示教轨迹模块:用于获取工件的机器人示教轨迹;

获取工件表面轨迹模块:用于驱动机器人本体沿着示教轨迹运行时,所述机器人末端执行器在工件表面形成的运行轨迹,作为工件的表面轨迹;

获取工件轮廓线模块:用来根据所述表面轨迹得到工件表面轮廓线;;

干涉检测模块:用来在仿真环境中,驱动机器人本体沿着示教轨迹逐点运行,检测机器人与工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存。

另外,本发明还提供一种机器人干涉检测设备,包括:

至少一个处理器,以及与所述至少一个处理器通信连接的存储器;

其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行如实施例二所述的方法。

另外,本发明还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行指令,其中计算机可执行指令用于使计算机执行如实施例二所述的方法。

本发明根据获得的工件表面轮廓线作为工件的大致三维模型,进行机器人干涉检测,通过在仿真环境中,驱动机器人本体沿着示教轨迹逐点运行,通过检测机器人与工件表面轮廓线之间是否相交,将相交的轨迹点作为干涉点进行记录并保存,能够降低机器人干涉检测系统的硬件成本,以及进行干涉检测的时间与人力成本。

以上各实施例仅用以说明本发明的技术方案,而非对其限制,尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

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