CN117047789B - 机器人参数的标定方法、装置、电子设备及存储介质 - Google Patents
机器人参数的标定方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117047789B CN117047789B CN202311324999.0A CN202311324999A CN117047789B CN 117047789 B CN117047789 B CN 117047789B CN 202311324999 A CN202311324999 A CN 202311324999A CN 117047789 B CN117047789 B CN 117047789B
- Authority
- CN
- China
- Prior art keywords
- value
- parameter
- function
- robot
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 230000006870 function Effects 0.000 claims description 353
- 230000001172 regenerating effect Effects 0.000 claims description 14
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012937 correction Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 43
- 230000005389 magnetism Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 230000008602 contraction Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/0095—Means or methods for testing manipulators
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Abstract
本申请公开了一种机器人参数的标定方法、装置、电子设备及存储介质。其中,该方法包括:在机器人运动的情况下,采集机器人对应的K组轴位置值;根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数;根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数,其中,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。本申请解决了现有技术中需要人工对机器人的DH参数进行标定导致的DH参数标定效率低的技术问题。
Description
技术领域
本申请涉及机器人技术领域,尤其涉及医疗机器人技术领域,具体而言,涉及一种机器人参数的标定方法、装置、电子设备及存储介质。
背景技术
在一些机器人的应用领域中,例如医疗机器人领域中,对于机器人的绝对定位精度要求很高,因此在机器人每使用一段时间之后,都需要对机器人的DH参数进行标定和修正,从而提高机器人的精度。
但是,在现有技术中,通常是采用人工方式对机器人的DH参数进行标定,需要耗费较高的人力成本,并受到人工经验的较大影响,从而导致DH参数标定效率低的问题。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请提供了一种机器人参数的标定方法、装置、电子设备及存储介质,以至少解决现有技术中需要人工对机器人的DH参数进行标定导致的DH参数标定效率低的技术问题。
根据本申请的一个方面,提供了一种机器人参数的标定方法,包括:在机器人运动的情况下,采集机器人对应的K组轴位置值,其中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置;根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,其中,法兰位置参数表征机器人的每个轴在法兰坐标系下的位置,初始DH参数为针对机器人的每个轴所设计的DH参数;根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数,其中,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。
可选地,机器人安装在台车上,并且机器人上位于末端的标定工具和台车上的标定工具之间通过标定连杆连接,其中,标定连杆的两端为圆球状磁性装置,分别连接机器人上的标定工具的磁性球、台车上的标定工具的磁性球,使得机器人在运动过程中受到标定连杆的约束,两个磁性球之间的距离不变。
可选地,机器人参数的标定方法还包括:根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定K个目标距离值,其中,K个目标距离值的每个目标距离值与K组法兰位置参数中的一组法兰位置参数相对应,目标距离值用于表征机器人上的标定工具的球心至台车上的标定工具的球心的距离;根据K个目标距离值以及标定连杆的实际长度值确定目标函数,其中,目标函数用于确定K个目标距离值与标定连杆的实际长度值之间的误差总和;根据目标函数确定标定DH参数。
可选地,法兰位置参数中包括至少一个第一参数,第一矢量函数中包括至少一个第二参数,第二矢量函数中包括至少一个第三参数,其中,第一参数用于表征对机器人的每个轴对应的DH参数的补偿值 ,第二参数用于表征对机器人上的标定工具的位置的补偿值,第三参数用于表征对台车上的标定工具的位置的补偿值。
可选地,机器人参数的标定方法还包括:在第一参数,第二参数以及第三参数的总数量为J个情况下,生成J+1组参数值,其中,每组参数值包括第一参数对应的随机值,第二参数对应的随机值以及第三参数对应的随机值;根据J+1组参数值执行目标操作,其中,目标操作用于确定目标函数对应的目标参数值,并根据目标参数值以及初始DH参数确定标定DH参数,其中,目标参数值为使得目标函数得到最小函数解的参数值。
可选地,目标操作包括如下步骤:将J+1组参数值分别代入目标函数中进行求解,得到J+1个函数值;将J+1个函数值中的最大值作为第一函数值,并将J+1个函数值中的最小值作为第二函数值;从J+1组参数值中去除第一参数值,得到剩余的J组参数值,其中,第一参数值为第一函数值对应的参数值;计算剩余的J组参数值的平均值,得到中心点参数值,并将第二函数值对应的参数值作为第二参数值;根据第一参数值、中心点参数值以及反射系数确定第三参数值,其中,反射系数为正数,第三参数值为对中心点参数值的修正值;将第三参数值代入目标函数中,得到第三函数值;根据第三函数值确定目标参数值。
可选地,机器人参数的标定方法还包括:在第三函数值大于或等于第一函数值的情况下,计算第一参数值和中心点参数值的差值,并计算第一参数值和中心点参数值的差值与第一预设系数的乘积,得到第一数值,其中,第一预设系数为确定目标参数值的方向尺度系数;对第一数值与中心点参数值进行求和,得到第四参数值;将第四参数值输入目标函数中进行计算,得到第四函数值;在第四函数值大于或等于第三函数值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;在第四函数值小于第三函数值的情况下,检测第四函数值是否小于预设的迭代精度值;在第四函数值小于迭代精度值的情况下,确定第四参数值为目标参数值;在第四函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,机器人参数的标定方法还包括:在第三函数值小于第一函数值,并且大于第二函数值的情况下,计算第三参数值和中心点参数值的差值,并计算第三参数值和中心点参数值的差值与第一预设系数的乘积,得到第二数值,其中,第一预设系数为确定目标参数值的方向尺度系数;对第二数值和中心点参数值进行求和,得到第五参数值;将第五参数值输入目标函数中进行计算,得到第五函数值;在第五函数值小于第三函数值的情况下,检测第五函数值是否小于预设的迭代精度值,并在第五函数值小于迭代精度值的情况下,确定第五参数值为目标参数值,在第五函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;在第五函数值大于或等于第三函数值的情况下,检测第三函数值是否小于迭代精度值,并在第三函数值小于迭代精度值的情况下,确定第三参数值为目标参数值,在第三函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,机器人参数的标定方法还包括:在第三函数值小于或等于第二函数值的情况下,计算第三参数值和中心点参数值的差值,并计算第三参数值和中心点参数值的差值与第二预设系数的乘积,得到第三数值;对第三数值和中心点参数值进行求和,得到第六参数值;将第六参数值输入目标函数中进行计算,得到第六函数值;在第六函数值小于第三函数值的情况下,检测第六函数值是否小于预设的迭代精度值,并在第六函数值小于迭代精度值的情况下,确定第六参数值为目标参数值,在第六函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;在第六函数值大于或等于第三函数值的情况下,检测第三函数值是否小于迭代精度值,并在第三函数值小于迭代精度值的情况下,确定第三参数值为目标参数值,在第三函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
根据本申请的另一个方面,还提供了一种机器人参数的标定装置,其中,包括:采集单元,用于在机器人运动的情况下,采集机器人对应的K组轴位置值,其中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置;第一确定单元,用于根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,其中,法兰位置参数表征机器人的每个轴在法兰坐标系下的位置,初始DH参数为针对机器人的每个轴所设计的DH参数;第二确定单元,用于根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数,其中,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。
根据本申请的另一个方面,还提供了一种计算机可读存储介质,其中,计算机可读存储介质中存储有计算机程序,其中,在计算机程序运行时控制计算机可读存储介质所在设备执行上述任意一项的机器人参数的标定方法。
根据本申请的另一个方面,还提供了一种电子设备,其中,电子设备包括一个或多个处理器和存储器,存储器用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述任意一项的机器人参数的标定方法。
在本申请中,采用根据机器人对应的K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数的方式,在机器人运动的情况下,采集机器人对应的K组轴位置值,然后根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,最后根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数。其中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置,法兰位置参数表征机器人的每个轴在法兰坐标系下的位置,初始DH参数为针对机器人的每个轴所设计的DH参数,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。
由上述内容可知,在本申请中,通过采集K组轴位置值,以及根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,进而利用第一矢量函数以及第二矢量函数来计算得到机器人对应的标定DH参数,从而实现了无需人工标定即可获取标定DH参数的技术效果,不仅节约了大量的人力物力,而且可以避免由于人工经验的影响导致的机器人DH参数标定结果的准确性难以稳定保证的问题,提高了标定DH参数的可靠性。
由此可见,本申请的技术方案解决了现有技术中需要人工对机器人的DH参数进行标定导致的DH参数标定效率低的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种可选的机器人参数的标定方法的流程图;
图2是根据本申请实施例的一种可选的7轴机器人的示意图;
图3是根据本申请实施例的一种可选的目标操作的流程图;
图4是根据本申请实施例的一种可选的确定目标参数值的流程图;
图5是根据本申请实施例的一种可选的机器人参数的标定装置的示意图;
图6是根据本申请实施例的一种电子设备的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本申请实施例,提供了一种机器人的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本申请实施例的一种可选的机器人参数的标定方法的流程图,如图1所示,该方法包括如下步骤:
步骤S101,在机器人运动的情况下,采集机器人对应的K组轴位置值。
在步骤S101中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置。
可选地,一种机器人参数的标定系统(以下简称为标定系统)可以作为本申请实施例中的机器人参数的标定方法的执行主体,其中,标定系统可以是在机器人的芯片上运行的软件系统,也可以是机器人搭载的一种软硬件相结合的嵌入式系统。
可选的,本申请实施例中的机器人可以是各种类型、各种领域的机器人,其次,本申请实施例中的机器人还可以是多轴机器人,为了更好的说明本申请的技术方案,在本申请实施例中,以一种7轴机器人为例进行说明。
在一种可选的实施例中,图2是根据本申请实施例的一种可选的7轴机器人的示意图,如图2所示,机器人安装在台车上,并且机器人上位于末端的标定工具和台车上的标定工具之间通过标定连杆连接,其中,标定连杆的两端为圆球状磁性装置,分别连接机器人上的标定工具的磁性球、台车上的标定工具的磁性球,使得机器人在运动过程中受到标定连杆的约束,两个磁性球之间的距离不变。
在图2中,机器人上位于末端的标定工具可称为末端标定工具,台车上的标定工具可称为台车标定工具,机器人可以在台车上自由运动。
为了在机器人运动的情况下采集机器人对应的K组轴位置值,需要先设定机器人的负载值,然后设置机器人为拖动模式,从而控制机器人开始运动,在机器人运动过程中,标记系统采集机器人对应的K组轴位置值,其中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置。为了方便说明,在本申请实施例中,可设置K为20。但是在实际应用中,K的取值可以根据实际应用场景进行自定义设置。
步骤S102,根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数。
在步骤S102中,法兰位置参数表征机器人的每个轴在法兰坐标系下的位置,初始DH参数为针对机器人的每个轴所设计的DH参数。
可选地,表1是根据本申请实施例的一种可选的初始DH参数表。
表1
如表1所示,按照下列顺序建立连杆i-1坐标系与连杆i坐标系之间的相对关系。
1)绕第i-1个坐标系的轴方向旋转角度/>,使/>与/> 同一平面内;
2)沿轴平移一段距离/>,把/> 移到与/> 同一直线上;
3)沿i轴平移一段距离,把连杆i-1的坐标系移到使其原点与连杆n的坐标系原点重合的地方;
4)绕轴旋转/>角,使/> 转到与/> 同一直线上。
可选地,标定系统基于上述表1中的初始DH参数,结合得到的7轴机器人对应的20组轴位置值,可以计算得到7轴机器人对应的20组法兰位置参数,其中,20组法兰位置参数可以组成法兰位置集合,其中,/>为第20组法兰位置参数。
步骤S103,根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数。
在步骤S103中,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。
可选地,法兰位置参数中包括至少一个第一参数,第一矢量函数中包括至少一个第二参数,第二矢量函数中包括至少一个第三参数,其中,第一参数用于表征对机器人的每个轴对应的DH参数的补偿值 ,第二参数用于表征对机器人上的标定工具的位置的补偿值,第三参数用于表征对台车上的标定工具的位置的补偿值。
可选地,表2是根据本申请实施例的一种DH参数辨识信息列表。
表2
如表2所示,至/>,/>至/>,/>至/>为待辨识的机器人参数,也称为第一参数,用于表征对7轴机器人的每个轴对应的DH参数的补偿值。
可选地,上述的第一矢量函数可以表征为公式(1)。
(1)
其中,、/>、/>为设计的在法兰坐标系下末端标定工具对应的初始位置,/>、/>、/>为末端标点工具对应的待辨识补偿值,也称为第二参数,用于表征对机器人上的末端标定工具的位置的补偿值。
可选地,上述的第二矢量函数可以表征为公式(2)。
(2)
其中,为设计的在法兰坐标系下台车标定工具对应的初始位置,/>、为台车标定工具对应的待辨识补偿值,也称为第三参数,用于表征对台车标定工具的位置的补偿值。
需要说明的是,本申请根据K组法兰位置参数、第一矢量函数以及第二矢量函数可以构建一个与标定连杆长度相关的目标函数,从而通过求取目标函数的最小解的方式,确定目标参数值,其中,目标参数值包括第一参数对应的目标值、第二参数对应的目标值以及第三参数对应的目标值。由于目标参数值表征了对7轴机器人的每个轴对应的DH参数的补偿值、对机器人上的末端标定工具的位置的补偿值、对台车标定工具的位置的补偿值,因此,通过结合初始DH参数、末端标定工具对应的初始位置、台车标定工具对应的初始位置,可以得到机器人每个轴的标定DH参数、末端标定工具的标定参数以及台车标定工具的标定参数。
基于上述步骤S101至步骤S103的内容可知,在本申请中,采用根据机器人对应的K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数的方式,在机器人运动的情况下,采集机器人对应的K组轴位置值,然后根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,最后根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数。其中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置,法兰位置参数表征机器人的每个轴在法兰坐标系下的位置,初始DH参数为针对机器人的每个轴所设计的DH参数,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。
由上述内容可知,在本申请中,通过采集K组轴位置值,以及根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,进而利用第一矢量函数以及第二矢量函数来计算得到机器人对应的标定DH参数,从而实现了无需人工标定即可获取标定DH参数的技术效果,不仅节约了大量的人力物力,而且可以避免由于人工经验的影响导致的机器人DH参数标定结果的准确性难以稳定保证的问题,提高了标定DH参数的可靠性。
由此可见,本申请的技术方案解决了现有技术中需要人工对机器人的DH参数进行标定导致的DH参数标定效率低的技术问题。
在一种可选的实施例中,标定系统根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定K个目标距离值,其中,K个目标距离值的每个目标距离值与K组法兰位置参数中的一组法兰位置参数相对应,目标距离值用于表征机器人上的标定工具的球心至台车上的标定工具的球心的距离。随后,标定系统根据K个目标距离值以及标定连杆的实际长度值确定目标函数,其中,目标函数用于确定K个目标距离值与标定连杆的实际长度值之间的误差总和。最后,标定系统根据目标函数确定标定DH参数。
可选地,在本申请中,标定连杆的长度表示为,每个目标距离值可以通过公式(3)计算得到。
(3)
其中,由上述公式(1)和公式(2)可知,为第一矢量函数,/>为第二矢量函数,为K组法兰位置参数中的第n组法兰位置参数,/>为第n组法兰位置参数对应的目标距离值。
可选地,目标函数F(x)可以通过公式(4)计算得到。
(4)
在一种可选的实施例中,在第一参数,第二参数以及第三参数的总数量为J个情况下,标定系统生成J+1组参数值,其中,每组参数值包括第一参数对应的随机值,第二参数对应的随机值以及第三参数对应的随机值。然后,标定系统根据J+1组参数值执行目标操作,其中,目标操作用于确定目标函数对应的目标参数值,并根据目标参数值以及初始DH参数确定标定DH参数,其中,目标参数值为使得目标函数得到最小函数解的参数值。
可选地,由表2、公式(1)以及公式(2)可知,第一参数,第二参数以及第三参数的总数量为27个,在此基础上,标定系统可以设置28组参数值(也可以称为待辨识参数值),设置规则为第一组值,后续组值为/>,其中,/>为随机误差值,由此获得28组参数值。
可选地,标定系统可以根据生成的28组参数值开始执行目标操作,其中,目标操作用于确定目标函数对应的目标参数值,并根据目标参数值以及初始DH参数确定标定DH参数,其中,目标参数值为使得目标函数得到最小函数解的参数值。换言之,使得目标函数求得最小解的参数值即为目标参数值,也就是本申请所要最终得到DH参数的补偿值。
可选地,图3是根据本申请实施例的一种可选的目标操作的流程图。如图3所示,包括如下步骤:
步骤S301,将J+1组参数值分别代入目标函数中进行求解,得到J+1个函数值。
可选地,在步骤S301中,分别将J+1组参数值中的每组参数值代入目标函数F(x)中进行求解,从而得到J+1个函数值。
步骤S302,将J+1个函数值中的最大值作为第一函数值,并将J+1个函数值中的最小值作为第二函数值。
在步骤S302中,假设J+1个函数值中的最大值为,J+1个函数值中的最小值为/>。
步骤S303,从J+1组参数值中去除第一参数值,得到剩余的J组参数值,其中,第一参数值为第一函数值对应的参数值。
可选地,在第一函数值对应的第一参数值为/>的情况下,从J+1组参数值中去除/>。需要说明的是,由于/>为J+1个函数值中的最大值,因此,说明在参数值为第一参数值/>时,机器人对应的K个目标距离值与标定连杆的实际长度值之间的误差总和最大,因此,说明第一参数值为J+1组参数值中最差的选择,也可以理解为是基于F(x)函数,J+1组参数值中的最差点。
步骤S304,计算剩余的J组参数值的平均值,得到中心点参数值,并将第二函数值对应的参数值作为第二参数值。
可选地,在步骤S304中,中心点参数值可以用表示,第二函数值/>对应的第二参数值为/>。
步骤S305,根据第一参数值、中心点参数值以及反射系数确定第三参数值,其中,反射系数为正数,第三参数值为对中心点参数值的修正值。
可选地,第三参数值可以记为 ,其中,第三参数值/> 的计算公式为公式(5)。
(5)
其中,在公式(5)中,为反射系数,通常/>可以取值为1。
步骤S306,将第三参数值代入目标函数中,得到第三函数值。
可选地在将第三参数值代入目标函数F(x)中之后,可以计算得到第三函数值。
步骤S307,根据第三函数值确定目标参数值。
可选地,标定系统可以根据第三函数值与第一函数值/>之间的大小关系,第三函数值/>与第二函数值/>之间的大小关系,来确定目标参数值。
在一种可选的实施例中,以下结合图4对目标参数值的确定过程进行说明。
如图4所示,首先确定目标函数F(x),然后将生成的J+1组参数值代入目标函数,得到J+1个函数值。假设J+1个函数值按照大小排序分别为、/>、/>…… />,分别对应的参数值为/>、/>、/>…… /> 。
可选地,如图4所示,标定系统会去除J+1组参数值中的最差值,计算得到中心点参数值/>,并且根据上述公式(5)计算得到第三参数值/>。
在一种可选的实施例中,在第三函数值大于或等于第一函数值的情况下,标定系统计算第一参数值和中心点参数值的差值,并计算第一参数值和中心点参数值的差值与第一预设系数的乘积,得到第一数值,其中,第一预设系数为确定目标参数值的方向尺度系数。然后,标定系统对第一数值与中心点参数值进行求和,得到第四参数值,并将第四参数值输入目标函数中进行计算,得到第四函数值。在第四函数值大于或等于第三函数值的情况下,标定系统重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;在第四函数值小于第三函数值的情况下,标定系统检测第四函数值是否小于预设的迭代精度值,并在第四函数值小于迭代精度值的情况下,确定第四参数值为目标参数值;在第四函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,如图4所示,在第三函数值大于或等于第一函数值/>的情况下,标定系统通过公式(6)计算得到第四参数值/>。
(6)
其中,第四参数值为基于中心点参数值/>的内部收缩点,/>为第一预设系数,用于确定目标参数值的方向尺度。其中,/>可以取值为1。
如图4所示,在得到第四参数值之后,将第四参数值/>代入目标函数F(x)中计算得到第四函数值/>,如果第四函数值/>小于第三函数值/>,则确定第四参数值/>为待确定参数值/>;如果第四函数值/>大于或等于第三函数值/>,则说明沿着反射方向探索失败,所有的边长需要向第二参数值/>收缩,标定系统将重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
需要说明的是,如图4所示,标定系统还会检测待确定参数值对应的函数值是否小于预设的迭代精度值,如果/>小于预设的迭代精度值,则标定系统确定为目标参数值,如果/>大于或等于预设的迭代精度值,则标定系统将重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。其中,迭代精度值可以自定义设置,例如0.1mm。其中,/>小于预设的迭代精度值表征/>满足了目标函数/>对应的收敛条件,反之,/>大于或等于预设的迭代精度值表征/>不满足目标函数/>对应的收敛条件。
在一种可选的实施例中,在第三函数值小于第一函数值,并且大于第二函数值的情况下,标定系统计算第三参数值和中心点参数值的差值,并计算第三参数值和中心点参数值的差值与第一预设系数的乘积,得到第二数值,其中,第一预设系数为确定目标参数值的方向尺度系数。然后,标定系统对第二数值和中心点参数值进行求和,得到第五参数值,并将第五参数值输入目标函数中进行计算,得到第五函数值。
在第五函数值小于第三函数值的情况下,标定系统检测第五函数值是否小于预设的迭代精度值,并在第五函数值小于迭代精度值的情况下,确定第五参数值为目标参数值,在第五函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
在第五函数值大于或等于第三函数值的情况下,标定系统检测第三函数值是否小于迭代精度值,并在第三函数值小于迭代精度值的情况下,确定第三参数值为目标参数值,在第三函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,如图4所示,在第三函数值小于第一函数值/>,并且大于第二函数值/>的情况下,标定系统通过公式(7)计算得到第五参数值/>。
(7)
其中,第五参数值为基于中心点参数值/>的外部收缩点,/>为第一预设系数,用于确定目标参数值的方向尺度。其中,/>可以取值为1。
如图4所示,在得到第五参数值之后,将第五参数值/>代入目标函数F(x)中计算得到第五函数值/>,如果第五函数值/>小于第三函数值/>,则确定第五参数值/>为待确定参数值/>;如果第五函数值/>大于或等于第三函数值/>,则标定系统确定第三参数值/> 为待确定参数值/>。
在一种可选的实施例中,在第三函数值小于或等于第二函数值的情况下,标定系统计算第三参数值和中心点参数值的差值,并计算第三参数值和中心点参数值的差值与第二预设系数的乘积,得到第三数值。然后,标定系统对第三数值和中心点参数值进行求和,得到第六参数值,并将第六参数值输入目标函数中进行计算,得到第六函数值。
在第六函数值小于第三函数值的情况下,标定系统检测第六函数值是否小于预设的迭代精度值,并在第六函数值小于迭代精度值的情况下,确定第六参数值为目标参数值,在第六函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
在第六函数值大于或等于第三函数值的情况下,标定系统检测第三函数值是否小于迭代精度值,并在第三函数值小于迭代精度值的情况下,确定第三参数值为目标参数值,在第三函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,如图4所示,在第三函数值小于第二函数值/>的情况下,标定系统通过公式(8)计算得到第六参数值/>。
(8)
其中,第六参数值为基于中心点参数值/>的扩张点,/>为不等于/>的第二预设系数,也用于确定目标参数值的方向尺度。
如图4所示,在得到第六参数值之后,将第六参数值/>代入目标函数F(x)中计算得到第六函数值/>,如果第六函数值/>小于第三函数值/>,则确定第六参数值/>为待确定参数值/>;如果第六函数值/>大于或等于第三函数值/>,则标定系统确定第三参数值/>为待确定参数值/>。/>
由上述内容可知,本申请根据K组法兰位置参数、第一矢量函数以及第二矢量函数可以构建一个与标定连杆长度相关的目标函数,从而通过求取目标函数的最小解的方式,确定目标参数值,其中,目标参数值包括第一参数对应的目标值、第二参数对应的目标值以及第三参数对应的目标值。由于目标参数值表征了对7轴机器人的每个轴对应的DH参数的补偿值、对机器人上的末端标定工具的位置的补偿值、对台车标定工具的位置的补偿值,因此,通过结合初始DH参数、末端标定工具对应的初始位置、台车标定工具对应的初始位置,可以得到机器人每个轴的标定DH参数、末端标定工具的标定参数以及台车标定工具的标定参数。
本申请的技术方案实现了无需人工标定即可获取标定DH参数的技术效果,不仅节约了大量的人力物力,而且可以避免由于人工经验的影响导致的机器人DH参数标定结果的准确性难以稳定保证的问题,提高了标定DH参数的可靠性。
实施例2
本实施例提供了一种可选的机器人参数的标定装置,该机器人参数的标定装置中的各个实施单元对应于实施例1中各个实施步骤。
图5是根据本申请实施例的一种可选的机器人参数的标定装置的示意图,如图5所示,包括:采集单元501、第一确定单元502以及第二确定单元503。
其中,采集单元501,用于在机器人运动的情况下,采集机器人对应的K组轴位置值,其中,K组轴位置值中的每组轴位置值表征在一个时刻下机器人的每个轴在机器人坐标系下的位置;第一确定单元502,用于根据K组轴位置值以及初始DH参数确定机器人对应的K组法兰位置参数,其中,法兰位置参数表征机器人的每个轴在法兰坐标系下的位置,初始DH参数为针对机器人的每个轴所设计的DH参数;第二确定单元503,用于根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定机器人对应的标定DH参数,其中,第一矢量函数用于确定机器人上的标定工具的球心相对于法兰坐标系的中心的位置矢量,第二矢量函数用于确定机器人所在台车上的标定工具的球心相对于机器人坐标系的位置矢量,标定DH参数为机器人的每个轴在当前时刻的实际DH参数。
可选地,机器人安装在台车上,并且机器人上位于末端的标定工具和台车上的标定工具之间通过标定连杆连接,其中,标定连杆的两端为圆球状磁性装置,分别连接机器人上的标定工具的磁性球、台车上的标定工具的磁性球,使得机器人在运动过程中受到标定连杆的约束,两个磁性球之间的距离不变。
可选地,第二确定单元503,包括:第一确定子单元、第二确定子单元以及第三确定子单元。其中,第一确定子单元,用于根据K组法兰位置参数、第一矢量函数以及第二矢量函数确定K个目标距离值,其中,K个目标距离值的每个目标距离值与K组法兰位置参数中的一组法兰位置参数相对应,目标距离值用于表征机器人上的标定工具的球心至台车上的标定工具的球心的距离;第二确定子单元,用于根据K个目标距离值以及标定连杆的实际长度值确定目标函数,其中,目标函数用于确定K个目标距离值与标定连杆的实际长度值之间的误差总和;第三确定子单元,用于根据目标函数确定标定DH参数。
可选地,法兰位置参数中包括至少一个第一参数,第一矢量函数中包括至少一个第二参数,第二矢量函数中包括至少一个第三参数,其中,第一参数用于表征对机器人的每个轴对应的DH参数的补偿值 ,第二参数用于表征对机器人上的标定工具的位置的补偿值,第三参数用于表征对台车上的标定工具的位置的补偿值。
可选地,第三确定子单元,包括:第一生成模块,目标操作执行模块。其中,第一生成模块,用于在第一参数,第二参数以及第三参数的总数量为J个情况下,生成J+1组参数值,其中,每组参数值包括第一参数对应的随机值,第二参数对应的随机值以及第三参数对应的随机值;目标操作执行模块,用于根据J+1组参数值执行目标操作,其中,目标操作用于确定目标函数对应的目标参数值,并根据目标参数值以及初始DH参数确定标定DH参数,其中,目标参数值为使得目标函数得到最小函数解的参数值。
可选地,目标操作执行模块,包括:第一处理子模块、第二处理子模块、第三处理子模块、第一计算子模块、第一确定子模块、第四处理子模块以及第二确定子模块。其中,第一处理子模块,用于将J+1组参数值分别代入目标函数中进行求解,得到J+1个函数值;第二处理子模块,用于将J+1个函数值中的最大值作为第一函数值,并将J+1个函数值中的最小值作为第二函数值;第三处理子模块,用于从J+1组参数值中去除第一参数值,得到剩余的J组参数值,其中,第一参数值为第一函数值对应的参数值;第一计算子模块,用于计算剩余的J组参数值的平均值,得到中心点参数值,并将第二函数值对应的参数值作为第二参数值;第一确定子模块,用于根据第一参数值、中心点参数值以及反射系数确定第三参数值,其中,反射系数为正数,第三参数值为对中心点参数值的修正值;第四处理子模块,用于将第三参数值代入目标函数中,得到第三函数值;第二确定子模块,用于根据第三函数值确定目标参数值。
可选地,第二确定子模块,包括:第五处理子模块、第六处理子模块、第七处理子模块、第八处理子模块、第九处理子模块、第十处理子模块、第十一处理子模块。其中,第五处理子模块,用于在第三函数值大于或等于第一函数值的情况下,计算第一参数值和中心点参数值的差值,并计算第一参数值和中心点参数值的差值与第一预设系数的乘积,得到第一数值,其中,第一预设系数为确定目标参数值的方向尺度系数;第六处理子模块,用于对第一数值与中心点参数值进行求和,得到第四参数值;第七处理子模块,用于将第四参数值输入目标函数中进行计算,得到第四函数值;第八处理子模块,用于在第四函数值大于或等于第三函数值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;第九处理子模块,用于在第四函数值小于第三函数值的情况下,检测第四函数值是否小于预设的迭代精度值;第十处理子模块,用于在第四函数值小于迭代精度值的情况下,确定第四参数值为目标参数值;第十一处理子模块,用于在第四函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,第二确定子模块,包括:第十二处理子模块、第十三处理子模块、第十四处理子模块、第十五处理子模块、第十六处理子模块。其中,第十二处理子模块,用于在第三函数值小于第一函数值,并且大于第二函数值的情况下,计算第三参数值和中心点参数值的差值,并计算第三参数值和中心点参数值的差值与第一预设系数的乘积,得到第二数值,其中,第一预设系数为确定目标参数值的方向尺度系数;第十三处理子模块,用于对第二数值和中心点参数值进行求和,得到第五参数值;第十四处理子模块,用于将第五参数值输入目标函数中进行计算,得到第五函数值;第十五处理子模块,用于在第五函数值小于第三函数值的情况下,检测第五函数值是否小于预设的迭代精度值,并在第五函数值小于迭代精度值的情况下,确定第五参数值为目标参数值,在第五函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;第十六处理子模块,用于在第五函数值大于或等于第三函数值的情况下,检测第三函数值是否小于迭代精度值,并在第三函数值小于迭代精度值的情况下,确定第三参数值为目标参数值,在第三函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
可选地,第二确定子模块,包括:第十七处理子模块、第十八处理子模块、第十九处理子模块、第二十处理子模块、第二十一处理子模块。其中,第十七处理子模块,用于在第三函数值小于或等于第二函数值的情况下,计算第三参数值和中心点参数值的差值,并计算第三参数值和中心点参数值的差值与第二预设系数的乘积,得到第三数值;第十八处理子模块,用于对第三数值和中心点参数值进行求和,得到第六参数值;第十九处理子模块,用于将第六参数值输入目标函数中进行计算,得到第六函数值;第二十处理子模块,用于在第六函数值小于第三函数值的情况下,检测第六函数值是否小于预设的迭代精度值,并在第六函数值小于迭代精度值的情况下,确定第六参数值为目标参数值,在第六函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作;第二十一处理子模块,用于在第六函数值大于或等于第三函数值的情况下,检测第三函数值是否小于迭代精度值,并在第三函数值小于迭代精度值的情况下,确定第三参数值为目标参数值,在第三函数值大于或等于迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行目标操作。
实施例3
根据本申请实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序,其中,在计算机程序运行时控制计算机可读存储介质所在设备执行上述实施例1中的机器人参数的标定方法。
实施例4
根据本申请实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,处理器配置为经由执行可执行指令来执行上述实施例1中的机器人参数的标定方法。
图6是根据本申请实施例的一种电子设备的示意图,如图6所示,本申请实施例提供了一种电子设备,电子设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现上述实施例1中的机器人参数的标定方法。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种机器人参数的标定方法,其特征在于,包括:
在机器人运动的情况下,采集所述机器人对应的K组轴位置值,其中,所述K组轴位置值中的每组轴位置值表征在一个时刻下所述机器人的每个轴在机器人坐标系下的位置;
根据所述K组轴位置值以及初始DH参数确定所述机器人对应的K组法兰位置参数,其中,所述法兰位置参数表征所述机器人的每个轴在法兰坐标系下的位置,所述初始DH参数为针对所述机器人的每个轴所设计的DH参数;
根据所述K组法兰位置参数、第一矢量函数以及第二矢量函数确定所述机器人对应的标定DH参数,其中,所述第一矢量函数用于确定所述机器人上的标定工具的球心相对于所述法兰坐标系的中心的位置矢量,所述第二矢量函数用于确定所述机器人所在台车上的标定工具的球心相对于所述机器人坐标系的位置矢量,所述标定DH参数为所述机器人的每个轴在当前时刻的实际DH参数;
其中,所述法兰位置参数中包括至少一个第一参数,所述第一矢量函数中包括至少一个第二参数,所述第二矢量函数中包括至少一个第三参数,其中,所述第一参数用于表征对所述机器人的每个轴对应的DH参数的补偿值,所述第二参数用于表征对所述机器人上的标定工具的位置的补偿值,所述第三参数用于表征对所述台车上的标定工具的位置的补偿值,根据所述K组法兰位置参数、第一矢量函数以及第二矢量函数确定所述机器人对应的标定DH参数,包括:
在所述第一参数,所述第二参数以及所述第三参数的总数量为J个的情况下,生成J+1组参数值,其中,每组参数值包括所述第一参数对应的随机值,所述第二参数对应的随机值以及所述第三参数对应的随机值;
根据所述J+1组参数值执行目标操作,其中,所述目标操作用于确定目标函数对应的目标参数值,并根据所述目标参数值以及所述初始DH参数确定所述标定DH参数,其中,所述目标参数值为使得目标函数得到最小函数解的参数值,所述目标函数用于确定K个目标距离值与所述机器人上的标定连杆的实际长度值之间的误差总和,所述目标距离值用于表征所述机器人上的标定工具的球心至所述台车上的标定工具的球心的距离。
2.根据权利要求1所述的机器人参数的标定方法,其特征在于,所述机器人安装在所述台车上,并且所述机器人上位于末端的标定工具和所述台车上的标定工具之间通过标定连杆连接,其中,所述标定连杆的两端为圆球状磁性装置,分别连接所述机器人上的标定工具的磁性球、所述台车上的标定工具的磁性球,使得所述机器人在运动过程中受到所述标定连杆的约束,两个磁性球之间的距离不变。
3.根据权利要求2所述的机器人参数的标定方法,其特征在于,K个所述目标距离值和所述目标函数通过以下步骤得到:
根据所述K组法兰位置参数、所述第一矢量函数以及所述第二矢量函数确定K个目标距离值,其中,所述K个目标距离值的每个目标距离值与所述K组法兰位置参数中的一组法兰位置参数相对应;
根据K个所述目标距离值以及所述标定连杆的实际长度值确定目标函数。
4.根据权利要求1所述的机器人参数的标定方法,其特征在于,所述目标操作包括如下步骤:
将所述J+1组参数值分别代入所述目标函数中进行求解,得到J+1个函数值;
将所述J+1个函数值中的最大值作为第一函数值,并将所述J+1个函数值中的最小值作为第二函数值;
从所述J+1组参数值中去除第一参数值,得到剩余的J组参数值,其中,所述第一参数值为所述第一函数值对应的参数值;
计算所述剩余的J组参数值的平均值,得到中心点参数值,并将所述第二函数值对应的参数值作为第二参数值;
根据所述第一参数值、所述中心点参数值以及反射系数确定所述第三参数值,其中,所述反射系数为正数,所述第三参数值为对所述中心点参数值的修正值;
将所述第三参数值代入所述目标函数中,得到第三函数值;
根据所述第三函数值确定所述目标参数值。
5.根据权利要求4所述的机器人参数的标定方法,其特征在于,根据所述第三函数值确定所述目标参数值,包括:
在所述第三函数值大于或等于所述第一函数值的情况下,计算所述第一参数值和所述中心点参数值的差值,并计算所述第一参数值和中心点参数值的差值与第一预设系数的乘积,得到第一数值,其中,所述第一预设系数为确定所述目标参数值的方向尺度系数;
对所述第一数值与所述中心点参数值进行求和,得到第四参数值;
将所述第四参数值输入所述目标函数中进行计算,得到第四函数值;
在所述第四函数值大于或等于所述第三函数值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行所述目标操作;
在所述第四函数值小于所述第三函数值的情况下,检测所述第四函数值是否小于预设的迭代精度值;
在所述第四函数值小于所述迭代精度值的情况下,确定所述第四参数值为所述目标参数值;
在所述第四函数值大于或等于所述迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行所述目标操作。
6.根据权利要求4所述的机器人参数的标定方法,其特征在于,根据所述第三函数值确定所述目标参数值,包括:
在所述第三函数值小于所述第一函数值,并且大于所述第二函数值的情况下,计算所述第三参数值和所述中心点参数值的差值,并计算所述第三参数值和所述中心点参数值的差值与第一预设系数的乘积,得到第二数值,其中,所述第一预设系数为确定所述目标参数值的方向尺度系数;
对所述第二数值和所述中心点参数值进行求和,得到第五参数值;
将所述第五参数值输入所述目标函数中进行计算,得到第五函数值;
在所述第五函数值小于所述第三函数值的情况下,检测所述第五函数值是否小于预设的迭代精度值,并在所述第五函数值小于所述迭代精度值的情况下,确定所述第五参数值为所述目标参数值,在所述第五函数值大于或等于所述迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行所述目标操作;
在所述第五函数值大于或等于所述第三函数值的情况下,检测所述第三函数值是否小于所述迭代精度值,并在所述第三函数值小于所述迭代精度值的情况下,确定所述第三参数值为所述目标参数值,在所述第三函数值大于或等于所述迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行所述目标操作。
7.根据权利要求4所述的机器人参数的标定方法,其特征在于,根据所述第三函数值确定所述目标参数值,包括:
在所述第三函数值小于或等于所述第二函数值的情况下,计算所述第三参数值和所述中心点参数值的差值,并计算所述第三参数值和所述中心点参数值的差值与第二预设系数的乘积,得到第三数值;
对所述第三数值和所述中心点参数值进行求和,得到第六参数值;
将所述第六参数值输入所述目标函数中进行计算,得到第六函数值;
在所述第六函数值小于所述第三函数值的情况下,检测所述第六函数值是否小于预设的迭代精度值,并在所述第六函数值小于所述迭代精度值的情况下,确定所述第六参数值为所述目标参数值,在所述第六函数值大于或等于所述迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行所述目标操作;
在所述第六函数值大于或等于所述第三函数值的情况下,检测所述第三函数值是否小于所述迭代精度值,并在所述第三函数值小于所述迭代精度值的情况下,确定所述第三参数值为所述目标参数值,在所述第三函数值大于或等于所述迭代精度值的情况下,重新生成J+1组参数值,并依据重新生成的J+1组参数值执行所述目标操作。
8.一种机器人参数的标定装置,其特征在于,包括:
采集单元,用于在机器人运动的情况下,采集所述机器人对应的K组轴位置值,其中,所述K组轴位置值中的每组轴位置值表征在一个时刻下所述机器人的每个轴在机器人坐标系下的位置;
第一确定单元,用于根据所述K组轴位置值以及初始DH参数确定所述机器人对应的K组法兰位置参数,其中,所述法兰位置参数表征所述机器人的每个轴在法兰坐标系下的位置,所述初始DH参数为针对所述机器人的每个轴所设计的DH参数;
第二确定单元,用于根据所述K组法兰位置参数、第一矢量函数以及第二矢量函数确定所述机器人对应的标定DH参数,其中,所述第一矢量函数用于确定所述机器人上的标定工具的球心相对于所述法兰坐标系的中心的位置矢量,所述第二矢量函数用于确定所述机器人所在台车上的标定工具的球心相对于所述机器人坐标系的位置矢量,所述标定DH参数为所述机器人的每个轴在当前时刻的实际DH参数;
其中,所述法兰位置参数中包括至少一个第一参数,所述第一矢量函数中包括至少一个第二参数,所述第二矢量函数中包括至少一个第三参数,其中,所述第一参数用于表征对所述机器人的每个轴对应的DH参数的补偿值,所述第二参数用于表征对所述机器人上的标定工具的位置的补偿值,所述第三参数用于表征对所述台车上的标定工具的位置的补偿值,所述第二确定单元,包括:
第一生成模块,用于在所述第一参数,所述第二参数以及所述第三参数的总数量为J个的情况下,生成J+1组参数值,其中,每组参数值包括所述第一参数对应的随机值,所述第二参数对应的随机值以及所述第三参数对应的随机值;
目标操作执行模块,用于根据所述J+1组参数值执行目标操作,其中,所述目标操作用于确定目标函数对应的目标参数值,并根据所述目标参数值以及所述初始DH参数确定所述标定DH参数,其中,所述目标参数值为使得目标函数得到最小函数解的参数值,所述目标函数用于确定K个目标距离值与所述机器人上的标定连杆的实际长度值之间的误差总和,所述目标距离值用于表征所述机器人上的标定工具的球心至所述台车上的标定工具的球心的距离。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至7中任意一项所述的机器人参数的标定方法。
10.一种电子设备,其特征在于,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至7中任意一项所述的机器人参数的标定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311324999.0A CN117047789B (zh) | 2023-10-13 | 2023-10-13 | 机器人参数的标定方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311324999.0A CN117047789B (zh) | 2023-10-13 | 2023-10-13 | 机器人参数的标定方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117047789A CN117047789A (zh) | 2023-11-14 |
CN117047789B true CN117047789B (zh) | 2024-01-23 |
Family
ID=88669658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311324999.0A Active CN117047789B (zh) | 2023-10-13 | 2023-10-13 | 机器人参数的标定方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117047789B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5687293A (en) * | 1993-11-15 | 1997-11-11 | Asea Brown Boveri Ab | Method and device for calibration of movement axes of an industrial robot |
JP2006110705A (ja) * | 2004-09-15 | 2006-04-27 | Yaskawa Electric Corp | ロボットのキャリブレーション方法 |
WO2014206787A1 (en) * | 2013-06-28 | 2014-12-31 | Robotkonsult Ab | Method for robot calibration |
WO2020237407A1 (zh) * | 2019-05-24 | 2020-12-03 | 深圳配天智能技术研究院有限公司 | 机器人运动学参数自标定方法、系统及存储装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5661023B2 (ja) * | 2011-12-02 | 2015-01-28 | 本田技研工業株式会社 | 脚式移動ロボットの歩容生成装置及びロボットの動作目標生成装置 |
JP5893665B2 (ja) * | 2014-04-14 | 2016-03-23 | ファナック株式会社 | 作用された力に応じて移動されるロボットを制御するロボット制御装置 |
-
2023
- 2023-10-13 CN CN202311324999.0A patent/CN117047789B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5687293A (en) * | 1993-11-15 | 1997-11-11 | Asea Brown Boveri Ab | Method and device for calibration of movement axes of an industrial robot |
JP2006110705A (ja) * | 2004-09-15 | 2006-04-27 | Yaskawa Electric Corp | ロボットのキャリブレーション方法 |
WO2014206787A1 (en) * | 2013-06-28 | 2014-12-31 | Robotkonsult Ab | Method for robot calibration |
WO2020237407A1 (zh) * | 2019-05-24 | 2020-12-03 | 深圳配天智能技术研究院有限公司 | 机器人运动学参数自标定方法、系统及存储装置 |
Also Published As
Publication number | Publication date |
---|---|
CN117047789A (zh) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107738254B (zh) | 一种机械臂坐标系的转换标定方法与系统 | |
CN107995885B (zh) | 一种坐标系标定方法 、系统及装置 | |
CN110640747B (zh) | 机器人的手眼标定方法、系统、电子设备和存储介质 | |
CN110076772B (zh) | 一种机械臂的抓取方法及装置 | |
CN110640746B (zh) | 机器人的坐标系标定及定位方法、系统、设备、介质 | |
CN111168719B (zh) | 一种基于定位工装的机器人校准方法及系统 | |
CN113081266B (zh) | 机器人配准方法、装置、电子设备及存储介质 | |
US10899005B2 (en) | Link-sequence mapping device, link-sequence mapping method, and program | |
CN112959326B (zh) | 机器人正运动学求解方法、装置、可读存储介质及机器人 | |
CN113558771B (zh) | 机器人平面限位控制方法、装置和手术机器人 | |
CN111216138A (zh) | 机器人标定方法、机器人标定系统及可读存储介质 | |
CN112603542B (zh) | 手眼标定方法、装置、电子设备和存储介质 | |
CN111185909B (zh) | 机器人运行工况获取方法、装置、机器人及存储介质 | |
CN113524201B (zh) | 机械臂位姿主动调节方法、装置、机械臂和可读存储介质 | |
CN117047789B (zh) | 机器人参数的标定方法、装置、电子设备及存储介质 | |
CN115919250A (zh) | 一种人体动态关节角测量系统 | |
CN114029950B (zh) | 机器人的坐标系分析方法及装置、机器人设备、存储介质 | |
CN113246124B (zh) | 机器人控制方法、装置、计算机可读存储介质及机器人 | |
CN111009029B (zh) | 三维重建的数据处理方法、装置、电子设备与存储介质 | |
CN108592838B (zh) | 工具坐标系的标定方法、装置以及计算机存储介质 | |
CN109916352B (zh) | 一种获取机器人tcp坐标的方法和装置 | |
CN112256030A (zh) | 机器人的足迹生成方法、装置、机器人及介质 | |
CN110813647A (zh) | 五轴运动控制方法、装置及点胶设备 | |
CN112596382B (zh) | 一种串联型伺服机构几何参数优化标定方法和系统 | |
CN114290331B (zh) | 机器人运动控制方法、机器人及计算机可读存储装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |