机械臂工具坐标系原点标定方法、装置和电子设备与流程

文档序号:25646453发布日期:2021-06-25 17:26阅读:777来源:国知局
机械臂工具坐标系原点标定方法、装置和电子设备与流程

1.本发明涉及工业机械臂标定技术领域,尤其涉及一种机械臂工具坐标系原点标定方法、装置和电子设备。


背景技术:

2.目前,机械臂在投入作业前需人工示教标定末端工具坐标系原点(tcp点),一般使用四点法进行标定,即:工人在机械臂末端工具上标示出预设置的tcp点,然后通过机械臂示教器控制机械臂运动四次,保证每次机械臂以不同的姿态运动到同一个固定点处,机械臂控制器采集四次机械臂位姿数据,从而计算出机械臂末端工具tcp点的坐标。
3.上述的标定过程需要由熟练工人完成,为保证高精度,标定一次tcp点所需时间一般在五分钟以上,耗时费力,且无法保证精度的一致性。在大型工业应用中,机械臂末端工具种类繁多,更新迭代频繁,需要进行大量的tcp点标定工作,从而耗费的时间和人力较多。同时,tcp点标定过程需操作人员手动控制并近距离观察机械臂运动,以保证机械臂移动到同一个固定点,存在机械臂与操作人员碰撞隐患,具有较大危险性。


技术实现要素:

4.鉴于上述现有技术的不足之处,本申请实施例的目的在于提供一种机械臂工具坐标系原点标定方法、装置和电子设备,可实现标定过程的自动化,提高工作效率,降低人力消耗,避免了人工示教标定过程中的碰撞危险。
5.第一方面,本申请实施例提供一种机械臂工具坐标系原点标定方法,应用于机械臂的控制系统,所述控制系统包括设置在机械臂外的视觉传感器;包括步骤:a1.使机械臂末端依次移动到至少四个不共面的位置点处;a2.在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;所述tcp标记点为预设在末端工具上的标记点,所述tcp标记点与机械臂末端法兰相对固定;a3.根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;a4.根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标,完成标定。
6.优选地,所述预设固定点为视觉传感器坐标系的原点;步骤a3中,通过以下公式计算所述第二位姿:
其中,为第i个位置点对应的第二位姿中的位置,为第i个位置点对应的第一位姿中的位置,为第i个位置点对应的第二位姿中的姿态,为第i个位置点对应的第一位姿中的姿态,为预先标定得到的视觉传感器坐标系相对机械臂基坐标系的姿态,为第i个位置点对应的第一坐标。
7.优选地,步骤a4中,通过求解以下公式计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标:其中,为tcp标记点在机械臂末端法兰坐标系中的第二坐标,、、、分别为四个位置点的第二位姿中的姿态,、、、分别为四个位置点的第二位姿中的位置。
8.优选地,所述位置点多于四个;步骤a4包括:多次从所述位置点中选取四个不共面的位置点组成一组目标位置点,得到多组目标位置点,使各组目标位置点中的四个位置点不全相同;根据每组目标位置点中的四个位置点对应的第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标,得到多组初步坐标;根据所述多组初步坐标计算最终的第二坐标。
9.优选地,所述根据所述多组初步坐标计算最终的第二坐标的步骤包括:计算所述多组初步坐标的三个坐标值的均值,作为最终的第二坐标的三个坐标值。
10.优选地,所述根据所述多组初步坐标计算最终的第二坐标的步骤包括:计算所述多组初步坐标的分布中心点坐标;以与所述分布中心点坐标距离最小的初步坐标作为最终的第二坐标。
11.优选地,步骤a1包括:从预设的位置点记录表中随机选取至少四个不共面的位置点;使机械臂末端依次移动到各个选取的位置点处。
12.第二方面,本申请实施例提供一种机械臂工具坐标系原点标定装置,应用于机械臂的控制系统,所述控制系统包括设置在机械臂外的视觉传感器;包括:第一执行模块,用于使机械臂末端依次移动到至少四个不共面的位置点处;
第一获取模块,用于在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;所述tcp标记点为预设在末端工具上的标记点,所述tcp标记点与机械臂末端法兰相对固定;第一计算模块,用于根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;第二计算模块,用于根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标。
13.优选地,所述预设固定点为视觉传感器坐标系的原点;第一计算模块通过以下公式计算所述第二位姿:其中,为第i个位置点对应的第二位姿中的位置,为第i个位置点对应的第一位姿中的位置,为第i个位置点对应的第二位姿中的姿态,为第i个位置点对应的第一位姿中的姿态,为预先标定得到的视觉传感器坐标系相对机械臂基坐标系的姿态,为第i个位置点对应的第一坐标。
14.第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如所述的机械臂工具坐标系原点标定方法的步骤。
15.有益效果:本申请实施例提供的机械臂工具坐标系原点标定方法、装置和电子设备,通过使机械臂末端依次移动到至少四个不共面的位置点处;在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标;从而可实现标定过程的自动化,提高工作效率,降低人力消耗,避免了人工示教标定过程中的碰撞危险。
附图说明
16.图1为本申请实施例提供的机械臂工具坐标系原点标定方法的流程图。
17.图2为本申请实施例提供的机械臂工具坐标系原点标定装置的结构示意图。
18.图3为本申请实施例提供的电子设备的结构示意图。
具体实施方式
19.下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
20.在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
21.下文的公开提供的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术佩戴人员可以意识到其他工艺的应用和/或其他材料的使用。
22.请参阅图1,本申请实施例提供的一种机械臂工具坐标系原点标定方法,应用于机械臂的控制系统,所述控制系统包括设置在机械臂外的视觉传感器(即该控制系统为眼在手外的系统);包括步骤:a1.使机械臂末端依次移动到至少四个不共面的位置点处;a2.在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;所述tcp标记点为预设在末端工具上的标记点,所述tcp标记点与机械臂末端法兰相对固定;a3.根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;a4.根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标,完成标定。
23.在实际应用中,所述的视觉传感器可以但不限于是相机、三维扫描仪等;在标定前,先在待标定的末端工具上选定的tcp点处设置方便视觉传感器检测的标记点,该标记点一般具有较高的反射性或区别于作业空间的颜色特征,例如可以用三维扫描仪专用的贴纸作为标记点或具有颜色特征的圆形标志物等;其中选定的tcp点在相对机械臂末端法兰固定的部位选取,即tcp标记点与机械臂末端法兰相对固定;在进行标定时,只需要使机械臂末端依次移动到至少四个不共面的位置点处,即可由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并由机械臂的控制器直接读取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿,然后根据第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿,最后根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标,从而完成标定;可实现标定过程的自动
化,无需人工多次控制机械臂移动到同一个参照点处,提高工作效率,降低人力消耗,避免了人工示教标定过程中的碰撞危险。
24.其中,预设固定点可以是任意的,可根据实际需要设置。为了简化计算,在一些优选实施方式中,所述预设固定点为视觉传感器坐标系的原点;步骤a3中,通过以下公式计算所述第二位姿:(1)其中,为第i个位置点对应的第二位姿中的位置,为第i个位置点对应的第一位姿中的位置,为第i个位置点对应的第二位姿中的姿态,为第i个位置点对应的第一位姿中的姿态,为预先标定得到的视觉传感器坐标系相对机械臂基坐标系的姿态,为第i个位置点对应的第一坐标。
25.该公式(1)的推导过程如下:a.机械臂末端法兰坐标系原点在机械臂基坐标系中的位置(即第一位姿中的位置)可由机械臂控制器直接读取,将该位置由机械臂基坐标系转换至视觉传感器坐标系表示为:;其中,为机械臂末端法兰坐标系原点在视觉传感器坐标系中的位置,为预先标定得到的机械臂基坐标系相对视觉传感器坐标系的姿态;b.将此刻的末端工具保持姿态不变,并使tcp标记点平移到视觉传感器坐标系的原点(此处的平移只是在数据处理过程中的平移,并非实际上的使末端工具移动),机械臂末端法兰坐标系原点在视觉传感器坐标系中的位置为:;其中,为机械臂末端法兰坐标系原点在视觉传感器坐标系中的位置,为tcp标记点在视觉传感器坐标系中的坐标(可由视觉传感器直接读取);c.把从视觉传感器坐标系转换到机械臂基坐标系中,得到平移后的机械臂末端法兰坐标系原点在机械臂基坐标系中的位置:;整理后得到公式:,其中,为平移后的机械臂末端法兰坐标系原点在机械臂基坐标系中的位置,为平移前的机械臂末端法兰坐标系原点在机械臂基坐标系中的位置,为预先标定得到的视觉传感器坐标系相对机械臂基坐标系的姿态;
d.由于是平移,且末端工具保持姿态不变,因此有:,其中,为平移前的机械臂末端法兰坐标系在机械臂基坐标系中的姿态,为平移后的机械臂末端法兰坐标系在机械臂基坐标系中的姿态。
26.进一步的,步骤a4中,通过求解以下公式计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标:;(2)其中,为tcp标记点在机械臂末端法兰坐标系中的第二坐标,、、、分别为四个位置点的第二位姿中的姿态,、、、分别为四个位置点的第二位姿中的位置。
27.该公式(2)的推导过程如下:由坐标系旋转变换得:;其中,为末端工具坐标系相对机械臂基坐标系的位姿,为机械臂末端法兰坐标系相对机械臂基坐标系的位姿,为末端工具坐标系相对机械臂末端法兰坐标系的位姿;从而有:;即:;对应项相等可得:; (3)其中,为中的姿态,为中的位置,为中的姿态,为中的位置,为中的姿态,为中的位置;由于平移后的位置均为预设固定点的位置,因此对于四个位置点,平平移后的相同,从而把四个位置点平移后的和分别代入公式(3)有:
;分别用上述四式中的第一式减去第二式、第二式减去第三式、第三式减去第四式,有:;即:。
28.实际应用中,所述位置点的数量可根据实际需要设置,但需要保证这些位置点不共面(至少有一个位置点与其它位置点不共面)。所述位置点的数量可以是四个或多于四个。
29.当所述位置点为四个的时候;直接根据该四个位置点对应的第二位姿来计算第二坐标。
30.当所述位置点多于四个的时候,可只选取其中四个不共面的位置点对应的第二位姿来计算第二坐标;也可多次选取四个不共面的位置点对应的第二位姿来计算第二坐标,并根据多个第二坐标计算最终的第二坐标。
31.对于所述位置点多于四个的情况,在一些实施方式中,步骤a4包括:随机地从所有位置点中选取四个不共面的位置点;根据选取的四个位置点对应的第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标。其中,在选取四个不共面的位置点的时候,循环执行:随机选取四个位置点,并判断选取的四个位置点是否共面;直到选取的四个位置点不共面。
32.对于所述位置点多于四个的情况,在另一些实施方式中,步骤a4包括:a401.多次从所述位置点中选取四个不共面的位置点组成一组目标位置点,得到多组目标位置点,使各组目标位置点中的四个位置点不全相同;a402.根据每组目标位置点中的四个位置点对应的第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标,得到多组初步坐标;
a403.根据所述多组初步坐标计算最终的第二坐标。
33.其中,步骤a401中,在选取每一组目标位置点时,循环执行:随机选取四个位置点,并判断选取的四个位置点是否共面;直到选取的四个位置点不共面;然后判断当前得到的一组目标位置点是否与此前得到的各组目标位置点中的一组相同;若是,则判定该组目标位置点无效并重新获取该组目标位置点。实际上,若一组目标位置点中的位置点之间的距离太小,会影响最终的第二坐标计算结果的准确性,因此,在一些优选实施例中,还计算当前得到的一组目标位置点中的四个位置点两两之间的距离数据,若这些距离数据中至少有一个小于预设的距离阈值,则判定该组目标位置点无效并重新获取该组目标位置点。
34.步骤a403中,综合多组初步坐标,计算得到最终的第二坐标,其计算结果的准确性比只用四个位置点的第二位姿计算得到的结果更高。
35.例如,在一些示例中,a403.根据所述多组初步坐标计算最终的第二坐标的步骤包括:计算所述多组初步坐标的三个坐标值的均值,作为最终的第二坐标的三个坐标值。假设有三个初步坐标(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3),则最终的第二坐标(x,y,z)=[(x1+x2+x3)/3,(y1+y2+y3)/3,(y1+y2+y3)/3]。
[0036]
该方式的逻辑简单,实施方便,且计算结果准确。
[0037]
或例如,在另一些示例中,a403.根据所述多组初步坐标计算最终的第二坐标的步骤包括:计算所述多组初步坐标的分布中心点坐标;以与所述分布中心点坐标距离最小的初步坐标作为最终的第二坐标。
[0038]
具体的,在计算所述分布中心点坐标时,计算多个初步坐标的三个坐标值的均值,作为分布中心点坐标的三个坐标值。假设有三个初步坐标(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3),则分布中心点坐标(x,y,z)=[(x1+x2+x3)/3,(y1+y2+y3)/3,(y1+y2+y3)/3]。
[0039]“以与所述分布中心点坐标距离最小的初步坐标作为最终的第二坐标”的步骤包括:计算各初步坐标与所述分布中心点坐标的距离,并选取其中的最小值对应的初步坐标作为最终的第二坐标。
[0040]
又例如,在另一些示例中,403.根据所述多组初步坐标计算最终的第二坐标的步骤包括:计算所述多个初步坐标的分布中心点坐标;计算各初步坐标与所述分布中心点坐标的距离值;选取距离值从最小到第n小的n个初步坐标为有效初步坐标,其中n为预设的正整数;计算该n个有效初步坐标的三个坐标值的加权平均值,作为最终的第二坐标的三个坐标值。
[0041]
其中,预设有n个大小不同的权值,对于选取的n个有效初步坐标,按照其距离值的大小分配对应的权值,距离值越小则权值越大。假设有三个有效初步坐标(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3),则最终的第二坐标(x,y,z)=[(a1*x1+a2*x2+a3*x3)/(a1+a2+a3),(a1*y1+ a2*y2+ a3*y3)/(a1+a2+a3),(a1*y1+ a2*y2+ a3*y3)/(a1+a2+a3)],其中a1、a2、a3为三个预设的权值。
[0042]
该示例中,由于只取距离值从最小到第n小的n个初步坐标来计算最终的第二坐标,消除了距离值较大的初步坐标对计算结果的影响,可进一步提高计算结果的准确性。而距离值越小则权值越大,从而计算得到的最终的第二坐标的准确性可进一步提高。
[0043]
在一些实施方式中,步骤a1包括:a101.从预设的位置点记录表中随机选取至少四个不共面的位置点;a102.使机械臂末端依次移动到各个选取的位置点处。
[0044]
在该实施方式中,预先在视觉传感器的检测范围内选定多个位置点,并记录这些位置点在机械臂基坐标系下的坐标,形成位置点记录表。例如,可事先由人工控制机械臂进行多次移动,每次移动后检测机械臂末端是否在视觉传感器的检测范围内,若是,则把此时机械臂末端在机械臂基坐标系下的第三坐标记录在位置点记录表中;但不限于此。从而在步骤a101中,直接从位置点记录表中随机选取所需数量的位置点,然后判断选取的位置点是否共面,若共面则重新选取。位置点的确定速度较快,且能够保证在每个位置点处,视觉传感器均能够检测到tcp标记点的第一坐标。
[0045]
在另一些实施方式中,步骤a1包括:a103.以地面上的预设参考点为球心,以在预设半径范围内随机确定的长度为半径,确定目标半球面;a104.在所述目标半球面中随机选取至少四个点作为初步位置点;a105.判断这些初步位置点是否共面;a106.若是,则重新获取初步位置点;若否,则把这些初步位置点判定为有效的位置点。
[0046]
其中,可事先根据视觉传感器的检测范围设置所述的预设半径范围,以确保在每个位置点处,视觉传感器均能够检测到tcp标记点的第一坐标。
[0047]
其中,在步骤a104中,可根据以下方式随机选取初步位置点:随机生成方位角度和俯仰角度;以所述目标半球面的球心为起点,根据所述方位角度和俯仰角度计算一条目标射线的方程;计算所述目标射线与所述目标半球面的交点作为初步位置点。
[0048]
由上可知,该机械臂工具坐标系原点标定方法,通过使机械臂末端依次移动到至少四个不共面的位置点处;在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标;从而可实现标定过程的自动化,提高工作效率,降低人力消耗,避免了人工示教标定过程中的碰撞危险。
[0049]
请参阅图2,本申请实施例提供一种机械臂工具坐标系原点标定装置,应用于机械臂的控制系统,所述控制系统包括设置在机械臂外的视觉传感器;包括:第一执行模块1,用于使机械臂末端依次移动到至少四个不共面的位置点处;第一获取模块2,用于在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的
第一位姿;所述tcp标记点为预设在末端工具上的标记点,所述tcp标记点与机械臂末端法兰相对固定;第一计算模块3,用于根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;第二计算模块4,用于根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标。
[0050]
其中,预设固定点可以是任意的,可根据实际需要设置。为了简化计算,在一些优选实施方式中,所述预设固定点为视觉传感器坐标系的原点;从而,第一计算模块3通过以下公式计算所述第二位姿:其中,为第i个位置点对应的第二位姿中的位置,为第i个位置点对应的第一位姿中的位置,为第i个位置点对应的第二位姿中的姿态,为第i个位置点对应的第一位姿中的姿态,为预先标定得到的视觉传感器坐标系相对机械臂基坐标系的姿态,为第i个位置点对应的第一坐标。
[0051]
进一步的,第二计算模块4通过求解以下公式计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标:;其中,为tcp标记点在机械臂末端法兰坐标系中的第二坐标,、、、分别为四个位置点的第二位姿中的姿态,、、、分别为四个位置点的第二位姿中的位置。
[0052]
实际应用中,所述位置点的数量可根据实际需要设置,但需要保证这些位置点不共面(至少有一个位置点与其它位置点不共面)。所述位置点的数量可以是四个或多于四个。
[0053]
当所述位置点为四个的时候;第二计算模块4直接根据该四个位置点对应的第二位姿来计算第二坐标。
[0054]
当所述位置点多于四个的时候,第二计算模块4可只选取其中四个不共面的位置点对应的第二位姿来计算第二坐标;第二计算模块4也可多次选取四个不共面的位置点对应的第二位姿来计算第二坐标,并根据多个第二坐标计算最终的第二坐标。
[0055]
对于所述位置点多于四个的情况,在一些实施方式中,第二计算模块4在根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标的时候:随机地从所有位置点中选取四个不共面的位置点;根据选取的四个位置点对应的第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标。其中,在选取四个不共面的位置点的时候,循环执行:随机选取四个位置点,并判断选取的四个位置点是否共面;直到选取的四个位置点不共面。
[0056]
对于所述位置点多于四个的情况,在另一些实施方式中,第二计算模块4在根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标的时候:多次从所述位置点中选取四个不共面的位置点组成一组目标位置点,得到多组目标位置点,使各组目标位置点中的四个位置点不全相同;根据每组目标位置点中的四个位置点对应的第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标,得到多组初步坐标;根据所述多组初步坐标计算最终的第二坐标。
[0057]
其中,在选取每一组目标位置点时,循环执行:随机选取四个位置点,并判断选取的四个位置点是否共面;直到选取的四个位置点不共面;然后判断当前得到的一组目标位置点是否与此前得到的各组目标位置点中的一组相同;若是,则判定该组目标位置点无效并重新获取该组目标位置点。实际上,若一组目标位置点中的位置点之间的距离太小,会影响最终的第二坐标计算结果的准确性,因此,在一些优选实施例中,还计算当前得到的一组目标位置点中的四个位置点两两之间的距离数据,若这些距离数据中至少有一个小于预设的距离阈值,则判定该组目标位置点无效并重新获取该组目标位置点。
[0058]
例如,在一些示例中,第二计算模块4在根据所述多组初步坐标计算最终的第二坐标的时候:计算所述多组初步坐标的三个坐标值的均值,作为最终的第二坐标的三个坐标值。假设有三个初步坐标(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3),则最终的第二坐标(x,y,z)=[(x1+x2+x3)/3,(y1+y2+y3)/3,(y1+y2+y3)/3]。
[0059]
或例如,在另一些示例中,第二计算模块4在根据所述多组初步坐标计算最终的第二坐标的时候:计算所述多组初步坐标的分布中心点坐标;以与所述分布中心点坐标距离最小的初步坐标作为最终的第二坐标。
[0060]
具体的,在计算所述分布中心点坐标时,计算多个初步坐标的三个坐标值的均值,作为分布中心点坐标的三个坐标值。假设有三个初步坐标(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3),则分布中心点坐标(x,y,z)=[(x1+x2+x3)/3,(y1+y2+y3)/3,(y1+y2+y3)/3]。
[0061]“以与所述分布中心点坐标距离最小的初步坐标作为最终的第二坐标”的步骤包括:计算各初步坐标与所述分布中心点坐标的距离,并选取其中的最小值对应的初步坐标作为最终的第二坐标。
[0062]
又例如,在另一些示例中,第二计算模块4在根据所述多组初步坐标计算最终的第
二坐标的时候:计算所述多个初步坐标的分布中心点坐标;计算各初步坐标与所述分布中心点坐标的距离值;选取距离值从最小到第n小的n个初步坐标为有效初步坐标,其中n为预设的正整数;计算该n个有效初步坐标的三个坐标值的加权平均值,作为最终的第二坐标的三个坐标值。
[0063]
其中,预设有n个大小不同的权值,对于选取的n个有效初步坐标,按照其距离值的大小分配对应的权值,距离值越小则权值越大。假设有三个有效初步坐标(x1,y1,z1)、(x2,y2,z2)、(x3,y3,z3),则最终的第二坐标(x,y,z)=[(a1*x1+a2*x2+a3*x3)/(a1+a2+a3),(a1*y1+ a2*y2+ a3*y3)/(a1+a2+a3),(a1*y1+ a2*y2+ a3*y3)/(a1+a2+a3)],其中a1、a2、a3为三个预设的权值。
[0064]
该示例中,由于只取距离值从最小到第n小的n个初步坐标来计算最终的第二坐标,消除了距离值较大的初步坐标对计算结果的影响,可进一步提高计算结果的准确性。而距离值越小则权值越大,从而计算得到的最终的第二坐标的准确性可进一步提高。
[0065]
在一些实施方式中,第一执行模块1在使机械臂末端依次移动到至少四个不共面的位置点处的时候:从预设的位置点记录表中随机选取至少四个不共面的位置点;使机械臂末端依次移动到各个选取的位置点处。
[0066]
在该实施方式中,预先在视觉传感器的检测范围内选定多个位置点,并记录这些位置点在机械臂基坐标系下的坐标,形成位置点记录表。例如,可事先由人工控制机械臂进行多次移动,每次移动后检测机械臂末端是否在视觉传感器的检测范围内,若是,则把此时机械臂末端在机械臂基坐标系下的第三坐标记录在位置点记录表中;但不限于此。
[0067]
在另一些实施方式中,第一执行模块1在使机械臂末端依次移动到至少四个不共面的位置点处的时候:以地面上的预设参考点为球心,以在预设半径范围内随机确定的长度为半径,确定目标半球面;在所述目标半球面中随机选取至少四个点作为初步位置点;判断这些初步位置点是否共面;若是,则重新获取初步位置点;若否,则把这些初步位置点判定为有效的位置点。
[0068]
其中,可事先根据视觉传感器的检测范围设置所述的预设半径范围,以确保在每个位置点处,视觉传感器均能够检测到tcp标记点的第一坐标。
[0069]
其中,第一执行模块1在所述目标半球面中随机选取至少四个点作为初步位置点的时候,可根据以下方式随机选取初步位置点:随机生成方位角度和俯仰角度;以所述目标半球面的球心为起点,根据所述方位角度和俯仰角度计算一条目标射线的方程;计算所述目标射线与所述目标半球面的交点作为初步位置点。
[0070]
由上可知,该机械臂工具坐标系原点标定装置,通过使机械臂末端依次移动到至
少四个不共面的位置点处;在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标;从而可实现标定过程的自动化,提高工作效率,降低人力消耗,避免了人工示教标定过程中的碰撞危险。
[0071]
请参阅图3,本申请实施例还提供一种电子设备100,包括处理器101和存储器102,存储器102中存储有计算机程序,处理器101通过调用存储器102中存储的计算机程序,用于执行如上述的机械臂工具坐标系原点标定方法的步骤。
[0072]
其中,处理器101与存储器102电性连接。处理器101是电子设备100的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或调用存储在存储器102内的计算机程序,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
[0073]
存储器102可用于存储计算机程序和数据。存储器102存储的计算机程序中包含有可在处理器中执行的指令。计算机程序可以组成各种功能模块。处理器101通过调用存储在存储器102的计算机程序,从而执行各种功能应用以及数据处理。
[0074]
在本实施例中,电子设备100中的处理器101会按照如下的步骤,将一个或一个以上的计算机程序的进程对应的指令加载到存储器102中,并由处理器101来运行存储在存储器102中的计算机程序,从而实现各种功能:使机械臂末端依次移动到至少四个不共面的位置点处;在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标。
[0075]
由上可知,该电子设备,通过使机械臂末端依次移动到至少四个不共面的位置点处;在每个所述位置点处,获取由视觉传感器采集的tcp标记点在视觉传感器坐标系中的第一坐标,并获取机械臂末端法兰坐标系相对机械臂基坐标系的第一位姿;根据所述第一位姿,计算将所述第一坐标平移到预设固定点后机械臂末端法兰坐标系相对机械臂基坐标系的第二位姿;根据所述第二位姿计算所述tcp标记点在机械臂末端法兰坐标系中的第二坐标;从而可实现标定过程的自动化,提高工作效率,降低人力消耗,避免了人工示教标定过程中的碰撞危险。
[0076]
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术佩戴人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,其方案与本发明实质上相同。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1