机器人标定方法、机器人标定系统及可读存储介质与流程

文档序号:20955244发布日期:2020-06-02 20:22阅读:166来源:国知局
机器人标定方法、机器人标定系统及可读存储介质与流程
本发明涉及机器人校准
技术领域
,特别涉及一种机器人标定方法、机器人标定系统及可读存储介质。
背景技术
:串联关节式机器人在实际应用过程中,如果各个或者某个关节零位和/或工具坐标精确度不够,那么会造成机器人末端的轨迹路径偏差较大,影响实际应用的效果。现有标定的方法,一般是在测量设备上设置激光跟踪仪等高精密设备进行标定。这种方法不仅价格昂贵,而且处理器处理的数据量过大容易产生滞后性,虽能提高机器人的轨迹精度,但操作复杂、成本较高。技术实现要素:本发明的主要目的是提供一种机器人标定方法,旨在操作简单的前提下,提高机器人的轨迹精度。为实现上述目的,本发明提出的机器人标定方法包括以下步骤:记录机器人每个关节的关节数据;通过建立机器人连杆结构d-h模型,得到所述机器人的末端模拟位置;根据所述关节数据和所述机器人的末端模拟位置,构造末端模拟位置误差模型;根据所述关节数据和所述机器人连杆结构d-h模型,构造零位误差模型;将所述末端模拟位置误差模型补偿到所述零位误差模型中,得到关节零位误差。优选地,所述通过建立机器人连杆结构d-h模型,得到所述机器人的末端模拟位置的步骤,包括:根据机器人正运动学算法建立机器人连杆结构d-h模型;根据所述机器人连杆结构d-h模型,计算所述机器人的模拟位置和所述机器人的关节数据的关系;根据所述关系,获取每个末端实际位置对应的关节数据下的末端模拟位置。优选地,所述根据所述关节数据和所述机器人的末端模拟位置,构造末端模拟位置误差模型的步骤,包括:取任意两次所述机器人的关节数据,得到相应关节数据下的所述机器人的末端模拟位置;当所述任意两次所述机器人的关节数据,相应的末端实际位置相同时,通过相同关节数据下的所述末端实际位置和所述末端模拟位置的关系建立方程组,并根据所述方程组,得到任意两次末端模拟位置之差;重复执行n次上述操作,根据n次所得到的任意两次末端模拟位置之差和雅可比矩阵,构建末端模拟位置误差模型。优选地,所述根据所述关节数据和所述机器人的末端模拟位置,构造末端模拟位置误差模型的步骤,包括:同一所述关节数据相应的末端实际位置和末端模拟位置的误差为(6)将公式(6)变换,得到所述末端实际位置为(7)其中,pc为所述末端实际位置,pn为所述末端模拟位置,为所述零位误差模型,j为雅可比矩阵;取任意两次所述关节数据,该任意两次所述关节数据相应的末端实际位置相同,则(8)由此可得,(9)其中,为末端模拟位置之差,和为不同的末端模拟位置,得到任意两次末端模拟位置之差;重新测量n次关节数据,根据测量的n次关节数据得到n个末端模拟位置之差,构造末端模拟位置误差模型:(10)(11)。优选地,所述机器人末端设置有第一测量点;在与所述第一测量点的相对位置还固定设置有第二测量点;优选地,所述记录机器人每个关节的关节数据的步骤,包括:在控制机器人运行且保持所述第一测量点与所述第二测量点相对的情况下,通过变换机器人姿态获取不同姿态下机器人每个关节的关节数据;优选地,所述得到关节零位误差的步骤后,还包括:检测所述关节零位误差是否满足误差要求;若不满足,则重新计算任意两次末端模拟位置之差,以更新关节零位误差,直至更新后的关节零位误差满足误差要求为止。优选地,所述零位误差模型为(13)其中,分别为所述机器人第2,3,4,5关节轴的零位误差,分别为所述第一测量点在x,y,z方向上的零位误差。优选地,所述机器人标定方法还包括:将所述关节零位误差补偿到机器人的控制器中。对应的,本发明还提出一种机器人,包括:第一测量点,设置在机器人末端;第二测量点,与所述第一测量点相对固定设置;存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如以上所述机器人标定方法的步骤;控制器,用于将所述处理器得出的末端零位误差补偿具体应用在机器人运行轨迹中。优选地,所述第一测量点和所述第二测量点均为针状结构,以及,所述第一测量点的针尖和所述第二测量点的针尖相对。对应的,本发明还提出一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有机器人标定的程序,所述机器人标定的程序被处理器执行时实现如以上所述的机器人标定方法的步骤。本机器人标定方法能够快速实现机器人关节零位和工具坐标(第一测量点)的标定,得到实际机器人关节零位和理论关节零位之间的误差,然后将该误差补偿到控制器中,会轻松提高机器人的轨迹精度,从而提高机器人的使用精度,该标定方法,依靠软件算法提高了机器人精度,解决现有标定过程中采用高精度设备成本高,操作复杂的缺点。本机器人标定方法并没有对在机器人运行先先对机器人的运行轨迹进行精度提高,避免现有技术中边执行运动轨迹边修正运动轨迹容易出现失误的情况。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。图1是本发明一示例性实施例提供的一种流程示意图;图2为本发明一示例性实施例提供的一种实体的结构示意图。本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。附图标号说明:标号名称标号名称1第一针尖2第二针尖3机器人具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。本申请实施例提供了一种机器人标定方法,能够快速实现机器人关节零位和工具坐标(第一测量点)的标定,得到实际机器人关节零位和理论关节零位之间的误差,然后将该误差补偿到控制器中,会轻松提高机器人的轨迹精度,从而提高机器人的使用精度。该标定方法,依靠软件算法提高了机器人精度,解决现有标定过程中采用高精度设备成本高,操作复杂的缺点,并有效避免现有技术中边执行运动轨迹边修正运动轨迹容易出现失误的情况。如图1所示,本申请实施例的一种机器人标定方法包括:步骤101,记录机器人每个关节的关节数据。步骤102,通过建立机器人连杆结构d-h模型,得到所述机器人的末端模拟位置。步骤103,根据所述关节数据和所述机器人的末端模拟位置,构造末端模拟位置误差模型。步骤104,根据所述关节数据和所述机器人连杆结构d-h模型,构造零位误差模型。步骤105,将所述末端模拟位置误差模型补偿到所述零位误差模型中,得到关节零位误差。其中,机器人的机械臂末端设置有第一测量点;在与第一测量点的抵接位置还固定设置有第二测量点。第二测量点可以设置在机器人上,例如:机器人的底座上,也可以设置在机器人外的其他位置,例如:放置机器人的地面上。在具体实施例中,步骤101的步骤,包括:步骤1011,在控制机器人运行且保持所述第一测量点与所述第二测量点相对的情况下,通过变换机器人姿态,获取不同姿态下机器人每个关节的关节数据。具体的,机器人的关节数据为(1)其中,分别为机器人第1、2、3、4、5、6关节轴的关节角度;所述第一测量点坐标为(2)其中,tool为第一测量点坐标,分别为所述第一测量点在x,y,z方向坐标。在上述技术方案中,为了确保采集机器人每个关节的关节数据时,机器人末端始终保持在同一位置,因此设置第二测量点作为参照物,在机器人3的机械臂末端设置第一测量点,通过限制第一测量点和第二测量点始终相对抵接,确保机器人末端(即第一测量点)始终在同一位置。在实际操作中,为了确保第一测量点与第二测量点能够精准相对设置,请参照图2,将第一测量点与第二测量点的实体设置为针状结构,且第一测量点的针尖(即第一针尖1)与第二测量点的针尖(即第二针尖2)相互抵接。在具体实施例中,在步骤105之后,方法还包括:步骤106,检测所述关节零位误差是否满足误差要求。步骤107,若不满足,则重新计算任意两次末端模拟位置之差,以更新关节零位误差,直至更新后的关节零位误差满足误差要求为止。在具体实施例中,建立机器人连杆结构d-h模型,则方法还包括:根据关节数据和机器人正运动学算法,建立机器人连杆结构d-h模型。在具体实施例中,步骤102的步骤,包括:步骤1021,根据记录的关节数据和机器人正运动学算法建立机器人连杆结构d-h模型;步骤1022,根据所述机器人连杆结构d-h模型,计算所述机器人的模拟位置和所述机器人的关节数据的关系;步骤1023,根据所述关系,获取每个末端实际位置对应的关节数据下的末端模拟位置。具体的,建立机器人连杆结构d-h模型的步骤,包括:建立相邻连杆齐次变换矩阵为(3)其中,均为机器人连杆i的dh参数,为相邻连杆齐次变换矩阵;所述第一测量点和所述机器人的基座之间的坐标关系为(4),其中,t为第一测量点相对于机器人基座中心点的坐标关系,为连杆1相对于基座的齐次变换矩阵,为连杆2相对于连杆1的齐次变换矩阵,为连杆3相对于连杆2的齐次变换矩阵,为连杆4相对于连杆3的齐次变换矩阵,为连杆5相对于连杆4的齐次变换矩阵,为连杆6相对于连杆5的齐次变换矩阵,为工具相对于连杆5的齐次变换矩阵。在本实施例中,以机器人的基座中心点为坐标原点,建立坐标系,但在其他具体实施方案中,可以将坐标原点设定在其他位置,建立坐标系,进行机器人连杆结构d-h模型的建立。另,在本实施例中,是以六轴自由度机器臂进行的算法设定,可根据具体应用的机械臂自由度,进行相应的算法调整,本申请在此不再赘述。具体的,根据机器人连杆结构d-h模型和机器人运动学算法可推导,所述第一测量点和所述机器人的关节数据的关系为(5)其中,p为第一测量点和所述机器人的关节数据的关系,q为机器人的关节活动数据,tool为第一测量点的坐标数据,函数f为输入具体关节数据得到相应末端模拟位置的函数关系。且,根据公式(3)和公式(4)可知,建立的机器人连杆结构d-h模型中能够根据每个关节轴活动参数得到的机器人末端(第一测量)与机器人基座中心点的坐标关系;即,第一测量点和所述机器人的关节数据的关系p(即函数f)为公式(3)中第一测量点相对于机器人基座中心点的坐标关系t的拆解变形。因对具体的机器人连杆结构d-h模型进行拆解,得到第一测量点和所述机器人的关节数据的关系,非本申请的重点,因此不再给出具体拆解公式。根据所述关系,获取每个末端实际位置对应的关节数据下的末端模拟位置。具体的,步骤103,所述根据所述关节数据和所述机器人的末端模拟位置,构造末端模拟位置误差模型的步骤,包括:取任意两次所述机器人的关节数据,得到相应关节数据下的所述机器人的末端模拟位置;当所述任意两次所述机器人的关节数据,相应的末端实际位置相同时,通过相同关节数据下的所述末端实际位置和所述末端模拟位置的关系建立方程组,并根据所述方程组,得到任意两次末端模拟位置之差;重复执行n次上述操作,根据n次所得到的任意两次末端模拟位置之差和雅可比矩阵,构建末端模拟位置误差模型。在上述技术方案中,因为本技术方案中采集的机器人的关节数据,均是在第一测量点和第二测量点相互抵接,即第一测量点的位置始终不变的情况下采集的,所以采集的任意两次机器人的关节数据所对应的末端实际位置相同,均为第二测量点。并且,末端实际位置与末端模拟位置的关系为,末端实际位置与末端模拟位置的差等于,零位误差模型和雅可比矩阵之积,详见公式(6)。因此,根据任意两次机器人的关节数据对应的末端实际位置相同,可知,将任意两次机器人的关节数据对应的末端模拟位置相减,能够得到末端模拟位置之差与雅可比矩阵和零位误差模型的等式关系,详见公式(8)和公式(9)。具体的,所述根据所述关节数据和所述机器人的末端模拟位置,构造末端模拟位置误差模型的步骤,包括:同一所述关节数据相应的末端实际位置和末端模拟位置的误差为(6)将公式(6)变换,得到末端实际位置为(7)其中,pc为末端实际位置,pn为末端模拟位置,为零位误差模型,j为雅可比矩阵;取任意两次测量关节数据结果,因为任意两次测量的关节数据所相应的末端实际位置(第一测量点位置)均相同,均为第二测量点位置,则(8)由此可得,(9)其中,为末端模拟位置之差,和为不同的末端模拟位置,得到任意两次末端模拟位置之差;重新测量n次关节数据,根据测量的n次关节数据得到n个末端模拟位置之差,构造末端模拟位置误差模型:(10)(11)。根据最小二乘法得到零位误差模型为(12)。将末端模拟位置和雅可比矩阵代入公式(12)中,得到零位误差模型。用最小二乘法进行迭代计算。具体的,零位误差模型为(13)其中,分别为所述机器人第2,3,4,5关节轴的关节零位误差,分别为所述第一测量点在x,y,z方向上的零位误差。由此可得,零位误差模型包括关节零位误差。一种机器人,包括:第一测量点,设置在机器人末端;第二测量点,与所述第一测量点相对固定设置;存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上述机器人标定方法的步骤;控制器,用于将所述处理器得出的关节零位误差补偿具体应用在机器人运行轨迹中。在一种实施例中,第一测量点和第二测量点均为针状结构,且第一测量点的针尖(即第一针尖1)与第二测量点的针尖(即第二针尖2)相互抵接。此外,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有机器人标定方法的程序,所述机器人标定方法的程序被处理器执行时实现如以上所述的机器人标定的步骤。本发明计算机可读存储介质具体实施例与上述机器人标定方法的各实施例基本相同,在此不再详细赘述。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1