一种基于机器人的线激光标定方法和线激光标定装置
技术领域
本申请涉及机器人领域,特别涉及一种基于机器人的线激光标定方法和线激光标定装置。
背景技术
近年来在工业发达国家机器人在铸造领域的应用正在增加,机器人正在逐步取代铸件生产过程中的工人劳作。而工业机器人独具的柔性优势可以更好的适应铸件形状复杂且规格品种多的特性,同时工业机器人能够更好的适应恶劣的铸造工况。而为了让机器人适应车间复杂的工况环境,更好的替代人工劳作,机器视觉不可或缺,所以各类相机的使用成为工业视觉应用的不二之选。
线结构光传感器是一种非接触式测量装置,主要由相机和线激光器组成。具有结构简单、非接触、测量速度快等优点,在工业领域中高精度测量中有大量的应用需求。而在使用线激光传感器前需要先对其进行标定,标定的精度将直接影响铸件打磨的准确性和安全可靠性,目前大多利用线激光进行高精度测量。
对于线激光传感器的机器人手眼变换矩阵标定目前常用的方法有接触式标定和非接触式标定,两种方式最后得到的结果都是线激光传感器相对机器人末端的旋转与偏移量。以下对现有的标定方法进行介绍:
1、采用非接触式标定的方法需要机器人携带传感器变换多个不同的位姿扫描放置在同一个位置的标定板,因为要变换机器人位姿10次以上,而每次变换位姿幅度不能太大,容易影响标定精度,机器人位姿控制难以控制,标定过程复杂。
2、采用接触式针尖标定的方式,因为金属材质的标定针局部地方反光比较严重会对激光器扫描图像质量有一定影响,在传感器扫描图像中针尖位置有误差。
3、采用固定结构的标定板在图像处理过程中较复杂。
因此需要一种新型的标定方法。
申请内容
本申请的目的是提供一种基于机器人的线激光标定方法和线激光标定方装置,解决了传统线激光外部参数标定方法精度低的问题。
为解决上述技术问题,本申请提供一种基于机器人的线激光标定方法,具体技术方案如下:
利用线激光传感器扫描标定板,并提取二维图像信息;其中,所述标定板表面包含不同半径的实心圆;所述线激光传感器设于所述机器人法兰盘末端;
确定各个所述实心圆圆心在机器人坐标系中的第一坐标;
根据所述二维图像信息确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标;
利用所述第一坐标和所述第二坐标解得手眼标定矩阵。
其中,线激光传感器扫描标定板之前,还包括:
确定线激光传感器坐标系,标定所述机器人的TCP。
其中,标定所述机器人的TCP包括:
采用XYZ-4点法和ABC-2点法标定机器人TCP,并将其转换成矩阵TtoBMat3D。
其中,标定线激光传感器位姿和所述机器人的TCP之后,还包括:
确定初始扫描点的坐标,以使所述线激光传感器从所述初始扫描点开始扫描。
其中,线激光传感器扫描标定板包括:
在所述机器人运动后,通过外触发信号触发所述线激光传感器扫描标定板。
其中,根据所述二维图像确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标,包括:
对所述二维图像信息进行阈值分割以及边缘提取;
对提取的边缘进行椭圆拟合,得到各个实心圆对应的拟合椭圆;
确定每个所述拟合椭圆的中心在线激光传感器坐标系中的第二坐标。
其中,还包括:
调整所述标定板的位置高度并重新确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标;
根据所述第一坐标、所述第二坐标解得手眼标定矩阵。
其中,利用所述第一坐标和所述第二坐标解得手眼标定矩阵包括:
根据最小二乘法利用所述第一坐标和所述第二坐标解得手眼标定矩阵。
本申请还提供一种可读存储介质,其上存储有程序,所述程序被执行时实现如下方法的步骤:
利用线激光传感器扫描标定板,并提取二维图像信息;其中,所述标定板表面包含不同半径的实心圆;所述线激光传感器设于所述机器人法兰盘末端;
确定各个所述实心圆圆心在机器人坐标系中的第一坐标;
根据所述二维图像信息确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标;
利用所述第一坐标和所述第二坐标解得手眼标定矩阵。
本申请还提供一种基于机器人的线激光标定装置,包括:
与所述机器人末端法兰盘相连接的线激光传感器;
表面包含不同半径实心圆的标定板。
本申请所提供的一种基于机器人的线激光标定方法,包括:利用线激光传感器扫描标定板,并提取二维图像信息;其中,所述标定板表面包含不同半径的实心圆;所述线激光传感器设于所述机器人法兰盘末端;确定各个所述实心圆圆心在机器人坐标系中的第一坐标;根据所述二维图像信息确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标;利用所述第一坐标和所述第二坐标解得手眼标定矩阵。通过提高标定圆圆心的精度,降低基于激光视觉传感器应用***外部设备间的误差,以及传统线激光外部参数标定方法精度低的问题。本申请还提供一种基于机器人的线激光标定装置,具有上述有益效果,此处不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种基于机器人的线激光标定方法的流程图;
图2为本申请实施例所提供的一种标定板样式示意图;
图3为本申请实施例所提供的一种基于机器人的线激光标定装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种基于机器人的线激光标定方法的流程图,具体技术方案如下:
S101:利用线激光传感器扫描标定板,并提取二维图像信息;其中,所述标定板表面包含不同半径的实心圆;所述线激光传感器位于所述机器人法兰盘末端;
本步骤旨在通过扫描标定板,得到图像信息。可以理解的是,在本步骤之前,还需要相应的准备操作。例如:确定线激光传感器坐标系,以及标定机器人TCP(Tool CenterPoint,工具中心点)。确定线激光传感器坐标系的目的是确定线激光平面的方向,以及明确接下来需要移动方向。标定机器人TCP为本领域的常用现有技术,其技术已经较为成熟,此处不再赘述。优选的,本申请可以采用XYZ-4点法和ABC-2点法标定机器人TCP,并将其转换成矩阵TtoBMat3D。
线激光传感器通常安装于机器人的末端法兰盘上,这里的线激光传感器与本申请背景技术中提及的线激光传感器以及线结构光传感器均为同一物体。所谓机器人的末端,指的是机器人的一个机械手。
标定板置于一个标定台上,且将其置于线激光传感器的视场范围内。通常线激光器光平面垂直于标定板板面所在的平面。在标定台是水平的情况下,线激光器光平面即为竖直平面。可以理解的是,为方便标定及制造等原因,标定板通常是规则图形,常用的为矩形。则此时线激光器光平面在水平面的投影与矩形的一边保持平行。参见图2,图2为本申请实施例所提供的一种标定板样式示意图。如图所示该标定板图像由半径不同的大小黑色实心圆组成,实心圆圆心位置在标定板上被标记,标定板背景为白色。需要注意的是,本申请在此对标定板的具体形状,大小,厚度等等未作限定,只需标定板上含有不同半径大小的圆形即可,因此还可以有其他样式的标定板。这种自定义的标定板非常便于获取圆心相对于激光器以及机器人基坐标系的坐标,灵活性强。
其次,扫描前还需要确定一个初始扫描点,即先确定初始扫描点的坐标。为了消除机器人运动与激光传感器采集图像时间的不一致,可以在机器人运动一段距离后通过外触发信号触发激光器开始扫描。可以通过调整机器手的姿态,以使线激光传感器扫描方向与线激光平面垂直。线激光传感器因为置于机器人法兰盘的末端,与机器人(机器手)联动,因此线激光传感器扫描方向与机器人(机器手)移动方向相同。
线激光传感器扫描后,可以得到采集图像,提取二维图像信息作为标定需要的图像信息。
S102:确定各个所述实心圆圆心在机器人坐标系中的第一坐标;
需要注意的是,本步骤确定的是相对于机器人坐标系的坐标,称之为第一坐标。在本申请中,涉及到机器人坐标系、法兰盘坐标系和线激光传感器坐标系。所谓机器人坐标系指的是是用于表示机器人中各个组件位置的坐标系,通常以机器人的基座为圆心,水平面为坐标系的XOY平面。然而法兰盘坐标系通常指的是以法兰盘与机器手相连接的平面作为法兰盘坐标系的XOY平面。线激光传感器则通常以线激光面作为XOY平面。这里是确定标定板上各个实心圆圆心在机器人坐标系中的第一坐标,当然,这里的第一坐标是统称,每个实心圆圆心都对应一个第一坐标。
还需要注意的是,S101和S102并无既定的顺序联系。也即是说,并不是必须先进行S101才能进行S102,可以理解的是,两个步骤在准备工作结束后可以同时进行,甚至先进行S102再进行S101。
S103:根据所述二维图像信息确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标;
本步骤旨在根据S101中获得的二维图像信息得到实心圆圆心在线激光传感器坐标系中的第二坐标。但与S102不同的是,本步骤可以作相应的处理,具体操作如下:
对所述二维图像信息进行阈值分割以及边缘提取;对提取的边缘进行椭圆拟合,得到各个实心圆对应的拟合椭圆;确定每个所述拟合椭圆的中心在线激光传感器坐标系中的第二坐标。
由于阈值分割和边缘提取是数字图像处理中较为成熟的现有技术,此处不再赘述。由上述操作可知,在本步骤中,各个实心圆圆心在处理后得到对应的拟合椭圆,再计算拟合椭圆的中心(可以认为是椭圆长轴与短轴的交点)在线激光传感器坐标系中的坐标。
S104:利用所述第一坐标和所述第二坐标解得手眼标定矩阵。
本步骤旨在通过第一坐标和第二坐标作变换、求解得到手眼标定矩阵,也即线激光传感器与法兰盘对应关系的矩阵表现形式,也即得到了其位姿信息。
本申请在此对求解方式及求解过程不作限定,可以使用SVM(Support VectorMachine,支持向量机)、神经网络或矩阵求解的方式求解手眼标定矩阵。优选的,求解过程可以采用如下方法:
设机器人法兰盘坐标系为Q,激光器坐标系为P,P到Q的旋转和偏移矩阵分别为R和T,设空间某一点A在Q和P坐标系下的齐次坐标分别为Qa(X,Y,Z,1),Pa(x,y,z,1),根据投影变换原理,Pa和Qa之间存在如下关系:
其中,
T=(tx,ty,tz)T
最小二乘的原理是通过最小化误差的平方和寻找数据的最佳函数匹配,设定一个误差最低容限值minimum,将标定圆圆心在机器人坐标系中的所有坐标Qi(x,y,z)和以及在线激光传感器中对应位置的坐标Pi(x,y,z)代入公式1到中,通过不断迭代得到StoTMat3D的最佳匹配值,通过逆求解公式2便得到StoTMat3D的值,从而得到线激光传感器坐标系到法兰盘坐标系的旋转与偏移矩阵。
公式2:Sto BMat 3D=TtoBMat 3D·StoTMat 3D
优选的,为了提高标定的准确性,还可以将标定板向上平移后重复S101至S103(保证依旧在线激光传感器的视场范围内),即:
调整所述标定板的位置高度并重新确定各个所述实心圆圆心在线激光传感器坐标系中的第二坐标;再根据第一坐标、第二坐标解得手眼标定矩阵。
标定板的位置在此时可以根据实际的应用情况进行相应的调高或降低。
本申请实施例提供了一种基于机器人的线激光标定方法,可以通过上述方法解决线激光传感器的外部参数标定问题,降低基于激光视觉传感器应用***外部设备间的误差。还可以解决传统线激光外部参数标定方法精度低的问题,拓宽线激光在工业机器人领域的应用范围。
下面对本申请实施例提供的一种基于机器人的线激光标定装置进行介绍,下文描述的线激光标定装置与上文描述的线激光标定方法可相互对应参照。
参见图3,图3为本申请实施例所提供的一种基于机器人的线激光标定装置的结构示意图,该线激光标定装置可以包括:
与所述机器人1末端法兰盘2相连接的线激光传感器3;
表面包含不同半径实心圆的标定板4。
图3中,5为线激光平面,6为机器人运动方向。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的***而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。