CN110238845A - 最优标定点选取和误差自测量的自动手眼标定方法及装置 - Google Patents
最优标定点选取和误差自测量的自动手眼标定方法及装置 Download PDFInfo
- Publication number
- CN110238845A CN110238845A CN201910427156.0A CN201910427156A CN110238845A CN 110238845 A CN110238845 A CN 110238845A CN 201910427156 A CN201910427156 A CN 201910427156A CN 110238845 A CN110238845 A CN 110238845A
- Authority
- CN
- China
- Prior art keywords
- camera
- mechanical arm
- scaling board
- calibration
- coordinate system
- 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.)
- Granted
Links
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
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本发明属于相机与机器人之间的相对位置标定技术领域,公开了一种最优标定点选取和误差自测量的自动手眼标定方法及装置,由标定板引导六轴机械臂将标定板和相机进行对齐,获取机械臂的初始采样位置;机械臂完成夹持相机或标定板完成一系列旋转运动,并在运动过程中由相机对标定板进行拍照采样,用标定板识别算法估计标定板的位姿,同时过滤不合理的点;求解标定方程并使用标定过程中的采样点对求解的结果进行误差测量,实现全自动可量化的标定求解方案和装置。本发明能够对求得的标定误差进行旋转和平移等各个维度的量化,能够保证整个标定过程的自动,准确,高效,解决实际应用中的眼在手上和眼在手外的标定问题。
Description
技术领域
本发明属于相机与机器人之间的相对位置标定技术领域,尤其涉及一种最优标定点选取和误差自测量的自动手眼标定方法及装置。
背景技术
现有技术:目前带有自动引导,自动定位采样点并进行误差测量的手眼标定***在标定的技术领域仍然空缺。传统的自动标定做法是将标定板或相机固定在某个位置,用人工示教的方式让机械臂走提前试好的固定走点流程(如走正方形,圆形)控制机械臂移动,让相机对标定板进行采样,即***安装好的时候,机械臂该去哪里采样就是固定设计好的。此外由于每次测量之后的结果可能受到光照或者标定板尺寸等因素的影响,测量的结果偏离真实结果,需要每次对标定的结果进行误差测量,传统误差测量的方法是通过将求得的标定关系代入到整个机器人***内,让相机去指挥机械臂运动到某个点,由机械臂实际运动到的点和指令输入的点进行比较误差的大小。
缺陷及原因:走示教点的手眼标定方案在安装和使用上都有很大的缺陷:在安装上:固定有很大的空间局限性,标定板或相机要固定安装也给整个标定过程带来了不便。并且当相机或者标定板位置发生变化时,工作人员需要重新设计并改写整个固定走点流程,没有实现整个标定过程的自动化,智能化。在使用上:标定过程中,若当前位置不适合机器人的自动走点,工作人员需要手动操作机械臂重新设计一个机械臂可以固定走点的工作空间,而这个重新设计走点的过程是占用标定过程中的绝大部分时间的,此外,机械臂本身运动关节存在很多限制,操作机器人运动到某个位姿这个过程非常的不便,且费时费力;误差测量时:若使用传统的误差测量方法,一方面需要对机械臂进行末端标定,并将测量点转换到机器人坐标系下对比误差,计算复杂;另一方面机器人的物理运动本身具有误差,无法精确判断标定结果的误差是由标定关系计算不准确造成的还是由机器人的物理运动造成的;此外利用实际抓取效果测量误差的方法往往只能计算抓取时平移的误差,而不能计算标定结果在旋转维度的误差,具有很大的局限性。
本发明解决的缺陷:针对以上提出的传统技术的缺陷,本发明提供六轴机械臂自动定位最优标定点选取且能够误差自测量的手眼标定自动化算法,并在六轴机械臂应用该算法完成了实体装置的实现。该装置解决了上文提出的标定板或相机固定位置安装的问题,在实际场景搭建时,标定板或者相机可以搭建在任意位置,之后机械臂会自动定位标定参照物的位置并前往标定,如果标定参照物的位置发生变化,只需重新运行一遍一键标定程序即可重新计算标定参照物位置改变后的标定关系,不需重新设计标定过程;该装置解决了上文提出的标定结果误差测量不精确的问题,标定算法可以直接利用标定时的采样点做误差分析,能够对求得的标定误差进行旋转和平移等各个维度的量化,且不需要控制机器人做额外的采样进行误差的测量,在排除物理测量影响的情况下,直接计算本次标定结果是否满足理论误差要求,若不满足,工作人员可更改自动标定的参数重新进行标定。
该装置使用自动寻找标定参照物的方式进行自动标定,并且能够对自身标定的结果进行误差测量,真正实现了整个标定过程的自动,准确,高效,解决实际应用中的眼在手上和眼在手外的标定问题。
随着RGBD深度相机技术的不断发展,RGBD相机采集深度信息的性能不断被应用在各种需要真实视觉的场合上,很多时候RGBD相机被安装在机器人的可移动肢节上,作为机器人的眼睛指示机器人抓取物体或者移动。而相机与机器人之间的相对位置标定则成为了机器人手眼配合的关键问题。眼在手上和眼在手外是两种不同的深度相机安装方法,前者是将相机安装在机器人的手臂上,相机可以随着机械臂的移动而移动,此时需要求解的是相机和机械臂之间的相对关系;后者是将机器人和相机固定安装,相机安装在机器人的外部,需要求解机器人底座和相机之间的相对关系。
求解相机和机器人之间的相对位置关系可以通过求解标定方程实现,该方程需要的输入是多组标定板在相机坐标系下的位姿以及对应的机械臂末端在机器人坐标系下的位姿。机械臂末端在机器人坐标系下的位姿一般可以直接从机器人***中直接获取,而标定板在相机坐标系下的位姿则需要机械臂夹持着相机或标定板前往不同的空间点,让相机对标定板进行采样。现有的标定求解算法大多需要将标定板或相机固定到某个位置之后,在标定板或相机的位置已知的默认前提下,让机器人夹持着相机或者标定板按照固定位置走点,控制相机对标定板进行采样。实际的标定场景中,机器人对相机的自动标定需要满足以下条件:
(1)标定过程全自动:在人工进行标定的过程中,操作者必须操作机器人移动到特定位置进行采样。而人工操作机器人一方面采样点的位姿信息不够丰富,最后对机器人手眼的标定结果不一定能够满足精度的要求,另一方面某些型号的机器人,比如工业机器人,型号较为庞大,人工操作机器人的走点非常不便,若一次标定失败后,无法排除已有采样点的坏值,还需要重新开始整个标定过程,费时费力。而自动标定一方面走点的位置是预先规划的,能够保证采样点位姿信息的丰富可靠,另一方面程序控制机器人自动走点采样也保证了整个标定过程的便捷和高效。
(2)机械臂对采样位置自动定位:手眼标定首先要保证的是相机能够看到标定板,才能对整个相机和机器人所处的空间位置有大概的估量。传统的自动标定做法是将标定板或相机固定在某个位置,通过人工示教的办法,用提前试好的走点流程控制机械臂移动,让相机对标定板进行采样,即***安装好的时候,机械臂该去哪里采样就是固定设计好的。这样的手眼标定方案在安装时有很大的空间局限性,标定板或相机要固定安装也给整个标定过程带来了不便。
(3)标定结果可度量:在整个标定过程结束后,对于求得的标定结果,需要有可度量的方法评价标定结果是否大致正确,或者满足一定的精度要求。传统的误差测量方法是将求得的标定关系代入到整个机器人***内,让相机去指挥机械臂运动到某个点,由机械臂实际运动到的点和指令输入的点进行比较误差的大小。但是这样测量误差一方面需要对机械臂进行末端标定,并将测量点转换到机器人坐标系下对比误差,计算复杂;另一方面机器人的物理运动本身具有误差,无法精确判断标定结果的误差是由标定关系计算不准确造成的还是由机器人的物理运动造成的;此外,用机械臂指点的方式往往只能判断二维平面位移的误差,对机械臂的旋转误差甚至无法判断。因此,便捷准确且能够同时表示表示机械臂运动在平移和旋转维度的误差测量方法成了必要。
(4)采样走点有效准确:标定过程中的控制相机和标定板相对位置变化的机械臂走点过程同样要满足特定的条件。若机械臂的旋转位姿不够丰富,会导致最后标定结果的精度下降甚至错误。极端情况下,若机械臂每次旋转运动的旋转轴是平行的,甚至还会导致标定方程无法求解。传统的方式是让机械臂按照预设的点位进行走点,但是这样并不能保证每次采样得到的点是必须的。
综上所述,现有技术存在的问题是:传统标定方法无法实现标定过程中机械臂的自动定位,相机或标定板的安装操作过程复杂;误差测量的方法复杂且存在较大误差,适用性不高;此外预设固定位置走点的方式无法保证采集到的点能够满足标定方程求解的需求,求解方程的精度和效率得不到保证。
解决上述技术问题的难度:坐标系转换:本问题需要实现在机器人底座坐标系为标准坐标系的情况下,机器人底座坐标系,相机坐标系,机械臂末端坐标系,和标定坐标系之间的转换。实现相机,机械臂,标定板等物体的位置计算。
机器人的空间位置计算:工业机器人出于自身安全考虑,当传递给工业机器人超出其运动范围不可移动的点位时,工业机器人会自动停机,打断标定过程。本问题在工业机器人自身运动范围受限情况下,综合考虑标定参照物的位置和机器人的位置,滤除机器人运动幅度较大的点位,并对机器人和标定参照物之间的距离进行补偿,使机械臂对齐参照物附近的点位即可,这样设计机器人都能到达的点位,使工业机器人实现完整的标定过程。
不同场景运动方案设计:机器人进行采样的过程中会由于附近的场地限制,标定参照物和机器人的相对位置关系等问题,需要设计不同的运动方案。因此本发明需要考虑各种空间限制因素,对控制机器人自动采样的方式设计不同的运动方案。
自动寻找采样点:需要计算标定板和相机相对位置关系,并且以相机和标定板对齐时机械臂的位置为采样远点,在此基础上计算机械臂采样其他点的点位,使机械臂自动找到自己的最佳采样点。
实现误差测量的方法:需要根据采样过程中的数据计算设计出计算最后标定结果的误差测量方式误差测量结果需要在旋转维度和平移维度上都能体现。
标定方程求解方案:需要对多维的标定方程(AX=XB)进行矩阵求解,并且给出了两种不同的标定方程求解方式。
设计机器人自动走点的点位:需要在满足最大化相机两次移动过程位姿之间的旋转,最小化相机两次移动过程位之间的平移,最大化相机两次旋转时旋转轴之间的夹角,最小化化标定板到跟踪***摄像头的距离,采样点应该尽可能地多等条件下,实现机器人采样点位的设计,并将这些点位转换到机器人底座坐标系,使机器人能够控制机械臂到达这些点位。
标定板的位姿估计:需要仅仅以标定板拍照结果为输入的情况下,对输入的图像进行处理,以估算标定板和相机之间的相对位置关系。
本机终端和机器人的通信:需要将自己在电脑上运行的程序需要执行的指令和计算好的数据传递给机器人,完成本地电脑和机器人之间的通讯。
解决上述技术问题的意义:
传统的标定方法需要用人指挥机械臂在相机下做一系列的采样动作,但是每次都要人操作机械臂进行标定不仅麻烦,而且精度得不到保证。现有的自动标定方法也是用人工示教的办法,在试好一系列机器人可以到达的点位后将这些点位存储起来进行一系列的标定过程,没有普适性,本发明提出了一种可以自动寻找最佳采样点并且对采样的结果进行评判的标定方式,并且根据工业机器人自身的运动特性,设计了工业机器人易于到达的采样点位设计,从一开始标定过程的点位设计,数据采集,误差分析过程均不需要外来人员设计,真正实现了整个标定过程的智能化实现。
发明内容
针对现有技术存在的问题,本发明提供了一种最优标定点选取和误差自测量的自动手眼标定方法及装置。
本发明是这样实现的,一种最优标定点选取和误差自测量的自动手眼标定方法,所述最优标定点选取和误差自测量的自动手眼标定方法包括:
第一步,由标定板引导六轴机械臂将标定板和相机进行对齐,获取机械臂的初始采样位置;
第二步,机械臂完成夹持相机或标定板完成一系列旋转运动,并在运动过程中由相机对标定板进行拍照采样,用标定板识别算法估计标定板的位姿,同时过滤不合理的点;
第三步,求解标定方程并使用标定过程中的采样点对求解的结果进行误差测量,实现全自动可量化的标定求解方案和装置。
进一步,所述最优标定点选取和误差自测量的自动手眼标定方法的相机检测标定板位姿包括:
眼在手上的标定时,机器人夹持相机绕机器人四周进行拍照,检查机器人可触及范围内是否存在标定板;眼在手上的标定时,机器人夹持标定板绕机器人四周进行拍照,检查机器人可触及范围内是否能够把标定板送到相机可视范围内;
眼在手上时,机械臂夹持相机绕自身周围运动以初步检测标定板存在的运动过程示意图:相机在每次拍照时,将拍到的图像转为灰度图,再进行二值化处理,对二值化后的图像进行轮廓检测;之后对得到的轮廓进行筛选,得到凸边形且顶点数为4的轮廓认为是有效的轮廓,检测有效轮廓的边长,并由此计算出此轮廓在相机坐标系下的位姿;最后得到的结果是标定板在相机坐标系下的平移和旋转关系;
当机械臂夹持相机或标定板绕自身周围运动时,若相机拍照后检测到了标定板的存在,并且检测到此时相机与标定板的距离小于一定阈值后,机械臂认为此时运动的位置相机已经能够初步捕获到标定板,接下来机械臂会开始在机械臂的引导下对初始采样点自动定位。
进一步,所述最优标定点选取和误差自测量的自动手眼标定方法的机械臂自动定位采样点包括:
当相机捕获到标定板时,由标定板和相机之间的相对关系指挥机械臂运动;当标定板最终和相机对齐时,此时机械臂也和标定板或相机对齐;机械臂以当前的位置为采样中心,根据预设算法自动进行旋转采样。
进一步,所述眼在手上时,相机判断自身和标定板之间存在的夹角和距离方法包括:
(1)机器人在检测到标定板落到相机视野后,使用相机检测当前位置标定板在和相机的距离;
(2)机器人夹持相机或标定板在机器人底座坐标系不同方向平移,记录每次平移之后距离相机距离标定板的距离;根据平移前的距离和平移后的距离判断标定板与相机的连线与机械臂末端坐标系的夹角;
(3)将相机或标定板调整到和标定板或相机正对的姿态(XOY平面相互平行),并移动机械臂,使相机和标定板在XOY平面上靠近;
(4)继续检查相机和标定扳在相机坐标系XOY平面上的距离是否小于阈值,若不是,则返回(1),反复迭代,直到标定板到在相机坐标系XOY平面上靠近相机;
(5)当相机成功对齐标定板之后,此时机械臂的位置就是要进行采样的位置初始点,对此位置进行调整,机器人进行采样。
进一步,所述最优标定点选取和误差自测量的自动手眼标定方法的机器人走点采样包括:当机械臂定位好采样点后,让相机绕着空间一组彼此之间夹角为360/N,且构成的平面平行于标定扳的N个旋转轴旋转。
进一步,所述最优标定点选取和误差自测量的自动手眼标定方法的标定方程求解:
(1)眼在手上标定方程:Ogrid:标定扳坐标系;Oworld:世界坐标系或机械臂坐标系;Ocamera:相机坐标系;Oend:机械臂末端坐标系;相机坐标系和机械臂末端坐标系之间的转换关系;机械臂末端坐标系和机械臂底座坐标系之间的转换关系;相机坐标系和标定扳坐标系之间的转换关系;标定扳坐标系和机械臂底座坐标系之间的转换关系;
第i次运动的转换关系方程为:
第j次运动的转换关系方程为:
联立两个公式可得:
标定扳坐标系Ogrid和机械臂底座坐标系Oworld之间是相对静止的,因此他们的转换关系是一个常量,将消除可得:
上式两边同时左乘同时右乘得:
由
令以及上式化简为:
AX=XB;
最终X即相机坐标系和机械臂末端坐标系之间的转换关系即为方程所求;从机械臂内部的关节转换关系中读出,用相机对标定扳的位置估算求得;
(2)眼在手外标定方程推导:Ogrid:标定扳坐标系;Oworld:世界坐标系或机械臂坐标系;Ocamera:相机坐标系;Oend:机械臂末端坐标系;相机坐标系和机械臂底座坐标系之间的转换关系;机械臂末端坐标系和机械臂底座坐标系之间的转换关系;相机坐标系和标定扳坐标系之间的转换关系;标定扳坐标系和机械臂末端坐标系之间的转换关系;
第i次运动的转换关系方程为:
第j次运动的转换关系方程为:
联立两个公式可得:
标定扳坐标系Ogrid和机械臂末端坐标系Oend之间是相对静止的,因此他们的转换关系是一个常量,将消除可得:
上式两边同时左乘同时右乘得:
令以及上式化简为:
AX=XB;
最终x即相机坐标系和机械臂末端坐标系之间的转换关系即为方程所求;从机械臂内部的关节转换关系中读出,用相机对标定扳的位置估算求得。
进一步,所述Ax=XB方程求解包括:先从基本方程上式求解出再代入下式求解出计算步骤如下:
(1)将旋转矩阵转换为旋转向量:
(2)向量归一化:
(3)修正的罗德里格斯参数表示姿态变化:
(4)计算初始旋转向量P′cg:
skew(Pgij+Pcij)P′cg=Pcij-Pgij;
其中,skew表示取这个向量的反对称矩阵;
(5)计算旋转向量:
(6)计算旋转矩阵:
(7)计算平移向量:
(Rgij-I)Tcg=RcgTcij-Tgij。
进一步,所述AX=XB方程求解包括:对和进行统一求解的,使用对偶四元数表示两个线元之间的旋转和平移,其计算步骤如下:
(1)设某个运动位姿的旋转部分为q,平移部分为t,则对应的对偶四元数为q表示当前位姿的方向,q′中同时包含了位移信息;
(2)给定机械臂运动点对(bi,b′i)和相机运动点对(ai,a′i),提取其中的方向信息和位移信息,构造求解方程T:
(3)对T进行奇异值分解T=U∑V,检查是否只有两个奇异值约等于0,取奇异值为0的两个右奇异向量v7,v8;
(4)计算v7,v8的系数γ1,γ2;
γ1 2u1 Tv1+γ1γ2(u1 Tv2+u2 Tv1)+γ2 2u2 Tv2=0;
(5)最后待求解的位姿对应的对偶四元数为:
γ1v7+γ2v8;
(6)将其转换成旋转平移矩阵,既可得到待求解的位姿转换关系。
进一步,所述最优标定点选取和误差自测量的自动手眼标定方法的标定误差测量包括:
眼在手上误差测量方法:
(1)在标定过程中,相机相对于标定扳运动机械臂相对于底座运动由于标定扳和机械臂底座都是静止的;
(2)由相机相对于标定扳的第i次的运动和第i次的运动求出相机之间相对运动由机械臂末端相对于机械臂底座第i次的运动和第j次的运动求出机械臂之间的相对运动
(3)取每次采样的第一组数据和为相机和机械臂末端的初始位置,之后第i次运动过程相机和机械臂末端相对于初始位置的转换关系为和
(4)由求得的相机和机械臂之间的转换关系估算出此时相机的估算位置
(5)将与做差,对旋转部分和平移部分分别取均方根和旋转均方根误差是对两个四元数之间的夹角差求范数,求得的均方根即表示表示计算出的的实测误差;
眼在手外误差测量方法:
(1)在标定过程中,标定板相对于相机运动机械臂相对于底座运动由于标定板和机械臂底座都是静止的;
(2)由标定板相对于标定板第i次的运动和第j次的运动求出标定板间相对运动由机械臂末端相对于机械臂底座第i次的运动和第i次的运动求出机械臂之间的相对运动
(3)取每次采样的第一组数据和为相机和标定扳的初始位置,之后第i次运动过程标定扳和机械臂末端相对于初始位置的转换关系为和
(4)由求得的相机和机械臂底座之间的转换关系估算出相机的估算位置
(5)将与做差,对旋转部分和平移部分分别取均方根得到和旋转均方根误差是对两个四元数之间的夹角差求一次范数,求得的均方根即表示表示计算出的的实测误差。
本发明的另一目的在于提供一种实现所述最优标定点选取和误差自测量的自动手眼标定方法的最优标定点选取和误差自测量的自动手眼标定装置,所述最优标定点选取和误差自测量的自动手眼标定装置包括:
眼在手上的自动标定装置,由机械臂底座Oworld,机械臂末端Oend,相机Ocamera和标定扳Ogrid组成,机械臂末端和相机是刚性连接的,机械臂末端发生旋转运动Htrans时,相机随着机械臂末端发生同样的旋转运动Htrans,Ocamera和Ogrid的坐标系关系会发生变化,机械臂在不同的采样位置采集Ocamera和Ogrid的坐标系关系变化,以及Oend和Oworld之间的坐标系关系变化即可求得Ocamera和Oend之间的位置关系;
眼在手外的自动标定装置,由机械臂底座Oworld,机械臂末端Oend,相机Ocamera和标定扳Ogrid组成,机械臂末端和标定扳是刚性连接的,机械臂末端发生旋转运动Htrans时,标定扳随着机械臂末端发生同样的旋转运动Htrams,Ocamera和Ogrid的坐标系关系会发生变化,机械臂在不同的采样位置采集Ocamera和Ogrid的坐标系关系变化,以及Oend和Oworld之间的坐标系关系变化即可求得Ocamera和Oworld之间的位置关系。
综上所述,本发明的优点及积极效果为:本发明能够自动定位六轴机械臂的初始采样位置,并由此开始整个全自动化的标定过程;能够以更有效的走点方式指挥机械臂运动,进行相机对标定扳的采样;能够以量化的方式对标定后结果的旋转,平移上的误差进行评价,且本发明提出的标定算法可以直接利用标定时的采样点做误差分析,不需要控制机器人做额外的采样进行误差的测量。
本发明的机械臂自动定位采样点算法,机械臂对采样点初始位置的确定至关重要,无论是眼在手上的标定算法还是眼在手外的标定算法,都需要知道在没有预设的情况下的相机或标定扳的位置作为运动中心,才能保证整个标定算法能够围绕着一个目标真实地进行采样。同时标定板和相机自动对齐也避免了手动标定过程中人为设定标定板位置的不便。
本发明的标定误差评估算法,由于标定后求解的结果无法直观地看出其实际使用时的性能,若将求得的标定矩阵直接代入到机器人内部坐标转换***中,控制机器人走特定的点进行误差的物理测量,一方面物理测量的结果本身会携带误差,且最后的测量结果不能反映旋转维度的误差;另一方面输入错误的转换关系可能会引导机器人前往错的位置,甚至引发操作过程中的危险。因此本发明提出了一种直接利用相机采样时的数据来估算求得的标定结果误差的方法,能够直观地显示最终标定结果是否正确以及能否满足精度需求,不需要控制机器人做额外的采样进行验证。
本发明的标定板引导的全手眼标定自动标定及误差测量装置,在六轴机器人上应用本发明的算法,能够使标定板自动引导机械臂前往某个位置进行标定点采样,并自动评判标定当前计算出的结果是否满足精度要求,若由当前采样点计算出来的标定结果不能满足要求。则使用者只需要更改标定板放置的位置,或者增加算法的采样点数即可满足要求,真正意义上实现了整个标定过程的全自动化。
本发明利用相机能够对标定板进行位姿估计的原理,可以让标定板引导机械臂进行相机和标定板的自动对准,在采样前先估计出标定板或者相机的位置,完成机械臂的自动定位。这样每次标定板只需要随意安装在机械臂可触及的范围内,即可完成开始整个标定过程。
传统的自动标定方式是让机械臂按照预设的点位进行走点,但是这样并不能保证每次采样得到的点是必须的,由很大的冗余性,本算法中结合标定方程求解过程对相机和标定板相对运动关系的要求,提出了绕空间轴旋转的机械臂走点方案。
在深度相机协同指挥机器人运动过程中,深度相机和机器人之间的相对关系(角度关系和位置关系)是非常重要的,没有这种相对关系机器人就无法在深度相机的指引下探索自身周围物体的位置,更无法完成视觉抓取,视觉导航等一系列需要依靠视觉完成的功能,因此机器人与深度相机之间的相对关系需要借助标定板的帮助完成标定。并且机器人和相机之间的相对标定关系要求精度是非常高的,若测得的标定结果和真实的相对位置关系之间差异过大,很可能导致相机指挥机器人运动时机器人的运动出现错误,因此求得标定关系后需要对标定结果进行误差的测量以判断标定结果的好坏。
本发明在sawyer,fanuc,step等众多型号的机械臂上均进行了一系列的测试,均顺利完成了我们的自动标定流程,计算结果可以直接指挥机械臂进行抓取,抓取精度在1cm以内。国内外并没有以论文或专利实现本实现本发明中包括最优标定点选取,误差自测量,自动寻找采样点的整套自动标定流程方案的实现。
附图说明
图1是本发明实施例提供的最优标定点选取和误差自测量的自动手眼标定方法流程图。
图2是本发明实施例提供的眼在手上的自动标定装置结构示意图。
图3是本发明实施例提供的眼在手外的自动标定装置结构示意图。
图4是本发明实施例提供的眼在手上时,机械臂夹持相机绕自身周围运动以初步检测标定板存在的运动过程示意图。
图5是本发明实施例提供的眼在手上时,相机判断自身和标定板之间存在的夹角和距离的示意图。
图6是本发明实施例提供的眼在手上自动采样示意图。
图7是本发明实施例提供的眼在手上标定方程参数说明示意图。
图8是本发明实施例提供的眼在手外标定方程推导参数说明示意图。
图9是本发明实施例提供的眼在手上自动标定算法流程图。
图10是本发明实施例提供的眼在手外自动标定算法流程图。
图11是本发明实施例提供的sawyer机器人夹持相机绕自身周围运动,检测周围是否有标定板存在的实物图。
图12是本发明实施例提供的相机检测到标定板的存在,sawyer机器人夹持相机在不同方向运动以估算标定板在机器人坐标系下的方位的实物图。
图13是本发明实施例提供的sawyer机器人估算出标定板的位置,机械臂末端移动到标定板的正上方的实物图。
图14是本发明实施例提供的sawyer机器人以估算的标定板的位置为中心,对标定板进行旋转采样,同时记录机械臂末端在相机坐标系下的位置的实物图。
图15是本发明实施例提供的新时达机器人夹持标定扳绕自身周围运动,同时相机持续拍照检测标定扳是否落入自身视野内的实物图。
图16是本发明实施例提供的相机检测到标定扳的存在,新时达机器人夹持标定扳在不同方向运动以估算标定扳在机器人坐标系下的方位的实物图。
图17是本发明实施例提供的新时达机器人估算出相机的位置,机械臂末端移动到相机的正下方前的某个位置的实物图。
图18是本发明实施例提供的新时达机器人以估算的相机的位置为中心,夹持标定扳运动使相机对标定扳进行旋转采样,同时记录机械臂末端在相机坐标系下的位置的实物图。
图19是本发明实施例提供的机器人在视觉相机的引导下实现精确的抓取的实物图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供六轴机械臂自动定位最优标定点选取且能够误差自测量的手眼标定自动化算法,并在六轴机械臂应用该算法完成了实体装置的实现。该装置使用符合标定方程求解需求的走点方式控制机械臂运动,完成相机对标定扳的采样,并且能够对求得的标定误差进行旋转和平移等各个维度的量化,能够保证整个标定过程的自动,准确,高效,解决实际应用中的眼在手上和眼在手外的标定问题。
下面结合附图对本发明的应用原理作详细的描述。
如图1所示,本发明实施例提供的最优标定点选取和误差自测量的自动手眼标定方法包括:
S101:由标定扳引导六轴机械臂将标定板和相机进行对齐,获取机械臂的初始采样位置;
S102:机械臂完成夹持相机或标定扳完成一系列旋转运动,并在运动过程中由相机对标定扳进行拍照采样,用标定扳识别算法估计标定扳的位姿,同时过滤不合理的点;
S103:求解标定方程并使用标定过程中的采样点对求解的结果进行误差测量,实现整套全自动可量化的标定求解方案和装置。
下面结合附图对本发明的应用原理作进一步的描述。
1、眼在手上的自动标定装置:
如图2所示,眼在手上的自动标定装置由机械臂底座Oworld,机械臂末端Oend,相机Ocamera和标定扳Ogrid组成,每次标定时机械臂末端夹持着相机对标定扳进行拍照采样,由于机械臂末端和相机是刚性连接的,机械臂末端发生旋转运动Htrans时,相机也会随着机械臂末端发生同样的旋转运动Htrans,这时Ocamera和Ogrid的坐标系关系会发生变化,机械臂在这些不同的采样位置采集Ocamera和Ogrid的坐标系关系变化,以及Oend和Oworld之间的坐标系关系变化即可求得Ocamera和Oend之间的位置关系。
2、眼在手外的自动标定装置:
如图3所示,眼在手外的自动标定装置由机械臂底座Oworld,机械臂末端Oend,相机Ocamera和标定扳Ogrid组成,每次标定时机械臂末端夹持着标定扳运动,由相机对每个位置的标定扳进行拍照采样,由于机械臂末端和标定扳是刚性连接的,机械臂末端发生旋转运动Htrans时,标定扳也会随着机械臂末端发生同样的旋转运动Htrans,这时Ocamera和Ogrid的坐标系关系会发生变化,机械臂在这些不同的采样位置采集Ocamera和Ogrid的坐标系关系变化,以及Oend和Oworld之间的坐标系关系变化即可求得Ocamera和Oworld之间的位置关系。
3、实现思路:
(一)相机检测标定扳位姿
求解标定方程时必不可少的是要用相机坐标系下的标定板位姿作为输入,此外,相机对标定板的检测同样可以用来探测当前相机视野下有无标定板,如果有,还可以得到相机和标定板之间的相对位置关系,从而指引机械臂夹持使相机和标定板靠近运动。
眼在手上的标定时,机器人夹持相机绕机器人四周进行拍照,目的是检查机器人可触及范围内是否存在标定板。眼在手上的标定时,机器人夹持标定板绕机器人四周进行拍照,目的是检查机器人可触及范围内是否能够把标定板送到相机可视范围内。
图4表示的是眼在手上时,机械臂夹持相机绕自身周围运动以初步检测标定板存在的运动过程示意图:相机在每次拍照时,会将拍到的图像转为灰度图,再进行二值化处理,对二值化后的图像进行轮廓检测。之后对得到的轮廓进行筛选,得到凸边形且顶点数为4的轮廓认为是有效的轮廓,检测有效轮廓的边长,并由此计算出此轮廓在相机坐标系下的位姿。最后得到的结果是标定板在相机坐标系下的平移和旋转关系。
当机械臂夹持相机或标定板绕自身周围运动时,若相机拍照后检测到了标定板的存在,并且检测到此时相机与标定板的距离小于一定阈值后,机械臂认为此时运动的位置相机已经能够初步捕获到标定板,接下来机械臂会开始在机械臂的引导下对初始采样点自动定位。
(二)机械臂自动定位采样点
当相机捕获到标定板时,可以由标定板和相机之间的相对关系指挥机械臂运动,因为机械臂是刚性夹持相机(眼在手上)或标定板(眼在手外)的,因此相机与标定板靠近可以理解为机械臂在相机和标定板关系已知情况下,和标定板(眼在手上)或相机(眼在手外)的靠近。当标定板最终和相机对齐时,认为此时机械臂也和标定板(眼在手上)或相机(眼在手外)对齐。机械臂可以以当前的位置为采样中心,根据预设算法自动进行旋转采样。
图5表示的是眼在手上时,相机判断自身和标定板之间存在的夹角和距离的示意图:
(1)机器人在检测到标定板落到相机视野后,使用相机检测当前位置标定板在和相机的距离;
(2)机器人夹持相机或标定板在机器人底座坐标系不同方向平移,记录每次平移之后距离相机距离标定板的距离;根据平移前的距离和平移后的距离判断标定板与相机的连线与机械臂末端坐标系的夹角;
(3)将相机或标定板调整到和标定板或相机正对的姿态(XOY平面相互平行),并移动机械臂,使相机和标定板在XOY平面上靠近;
(4)继续检查相机和标定板在相机坐标系XOY平面上的距离是否小于阈值,若不是,则返回(1),反复迭代,直到标定板到在相机坐标系XOY平面上靠近相机;
(5)当相机成功对齐标定板之后,此时机械臂的位置就是要进行采样的位置初始点,对此位置进行调整,机器人进行采样。
(三)机器人走点采样
当相机对标定板进行采样时,相机与标定板之间的相对位置应包含有充分的旋转信息,以保证标定方程求解的精确性,以眼在手上为例(眼在手外同理)相机与标定板之间的位置要求如下:
最大化相机两次移动过程位姿之间的旋转;
最小化相机两次移动过程位之间的平移;
最大化相机两次旋转时旋转轴之间的夹角;
最小化化标定板到跟踪***摄像头的距离;
采样点应该尽可能地多;
本发明采用的走点方式为:当机械臂定位好采样点后,让相机绕着空间一组彼此之间夹角为360/N,且构成的平面平行于标定板的N个旋转轴旋转。考虑到相机是和机械臂刚性连接的,所以只需要让机械臂夹持相机做同样的旋转动作即可。
图6为眼在手上自动采样图示,表示的时单次采样数5时,相机的走点设计。左下角为标准坐标系,蓝色轴为相机Z轴(光轴),黑色线为5个彼此相交的旋转轴。
(四)标定方程求解
以下会对眼在手上和眼在手外两种情况标定方程中的关键性部分AX=XB进行介绍,并同时介绍该方程的求解方法:
眼在手上标定方程:
参数说明:如图7所示;
Ogrid:标定扳坐标系;
Oworld:世界坐标系(机械臂坐标系);
Ocamera:相机坐标系;
Oend:机械臂末端坐标系;
相机坐标系和机械臂末端坐标系之间的转换关系;
机械臂末端坐标系和机械臂底座坐标系之间的转换关系;
相机坐标系和标定扳坐标系之间的转换关系;
标定扳坐标系和机械臂底座坐标系之间的转换关系。
问题推导:
设第i次运动的转换关系方程为:
第j次运动的转换关系方程为:
联立两个公式可以得到:
标定扳坐标系Ogrid和机械臂底座坐标系Oworld之间是相对静止的,因此他们的转换关系是一个常量,将消除可得:
上式两边同时左乘同时右乘导:
由
令以及上式可以化简为:
AX=XB;
最终x即相机坐标系和机械臂末端坐标系之间的转换关系即为方程所求。可以从机械臂内部的关节转换关系中读出,可以用相机对标定板的位置估算求得。
眼在手外标定方程推导:参数说明,如图8所示:
Ogrid:标定板坐标系;
Oworld:世界坐标系(机械臂坐标系);
Ocamera:相机坐标系;
Oend:机械臂末端坐标系;
相机坐标系和机械臂底座坐标系之间的转换关系;
机械臂末端坐标系和机械臂底座坐标系之间的转换关系;
相机坐标系和标定板坐标系之间的转换关系;
标定板坐标系和机械臂末端坐标系之间的转换关系;
问题推导:
设第i次运动的转换关系方程为:
第j次运动的转换关系方程为:
联立两个公式可以得到:
标定扳坐标系Ogrid和机械臂末端坐标系Oend之间是相对静止的,因此他们的转换关系是一个常量,将消除可得:
上式两边同时左乘同时右乘得:
令以及上式可以化简为:
AX=XB;
最终X即相机坐标系和机械臂末端坐标系之间的转换关系即为方程所求。可以从机械臂内部的关节转换关系中读出,可以用相机对标定扳的位置估算求得。
AX=XB方程求解:
两步法:
使用Tsai论文中的方法求解标定方程,Tsai的标定方法分两步求解基本方程,即先从基本方程上式求解出再代入下式求解出在Tsai文献中引入旋转轴-旋转角***来描述旋转运动来进行求解该方程组,计算步骤如下:
(1)将旋转矩阵转换为旋转向量:
(2)向量归一化:
(3)修正的罗德里格斯参数表示姿态变化:
(4)计算初始旋转向量P′cg:
skew(Pgij+Pcij)P′cg=Pcij-Pgij;
其中,skew表示取这个向量的反对称矩阵。
(5)计算旋转向量:
(6)计算旋转矩阵:
(7)计算平移向量:
(Rgij-I)Tcg=RcgTcij-Tgij。
对偶四元数法:
对偶四元数的求解方法不同于Tsai的两步法,是对和进行统一求解的,该方法使用对偶四元数表示两个线元之间的旋转和平移,其计算步骤如下:
(1)设某个运动位姿的旋转部分为q,平移部分为t,则对应的对偶四元数为q表示当前位姿的方向,q′中同时包含了位移信息。
(2)给定机械臂运动点对(bi,b′i)和相机运动点对(ai,a′i),提取其中的方向信息和位移信息,构造求解方程T:
(3)对T进行奇异值分解T=U∑V,检查是否只有两个奇异值约等于0,取奇异值为0的两个右奇异向量v7,v8;
(4)计算v7,v8的系数γ1,γ2;
γ1 2u1 Tv1+γ1γ2(u1 Tv2+u2 Tv1)+γ2 2u2 Tv2=0:
(5)最后待求解的位姿对应的对偶四元数为:
γ1v7+γ2v8:
(6)将其转换成旋转平移矩阵,既可得到待求解的位姿转换关系。
(五)标定误差测量
当一次标定过程结束后,本发明必须对标定结果的误差进行测量,以判断当前计算的标定结果是否够基本正确以及能够满足本发明的精度需求;本发明提出了一种,对标定结果旋转部分和平移部分都能进行量化的误差测量方法,并且利用标定过程中的采样数据即可进行误差测量,无需进行额外的数据采集。下面将区分眼在手上和眼在手外的标定情况对误差测量方法进行介绍:
眼在手上误差测量方法:
(1)在标定过程中,相机相对于标定扳运动机械臂相对于底座运动由于标定扳和机械臂底座都是静止的。
(2)由相机相对于标定扳的第i次的运动和第i次的运动求出相机之间相对运动可以由机械臂末端相对于机械臂底座第i次的运动阳第j次的运动求出机械臂之间的相对运动
(3)取每次采样的第一组数据和为相机和机械臂末端的初始位置,之后第i次运动过程相机和机械臂末端相对于初始位置的转换关系为和
(4)由求得的相机和机械臂之间的转换关系可以由估算出此时相机的估算位置
(5)将与做差,对旋转部分和平移部分分别取均方根和(旋转均方根误差是对两个四元数之间的夹角求范数),求得的均方根即表示表示计算出的的实测误差。
眼在手外误差测量方法:
(1)在标定过程中,标定扳相对于相机运动机械臂相对于底座运动由于标定扳和机械臂底座都是静止的
(2)由标定扳相对于标定扳第i次的运动和第i次的运动求出标定板间相对运动可以由机械臂末端相对于机械臂底座第i次的运动和第j次的运动求出机械臂之间的相对运动
(3)取每次采样的第一组数据和为相机和标定扳的初始位置,之后第i次运动过程标定板和机械臂末端相对于初始位置的转换关系为和
(4)由求得的相机和机械臂底座之间的转换关系可以由估算出此时标定扳的估算位置
(5)将与做差,对旋转部分和平移部分分别取均方根得到和(旋转均方根误差是对两个四元数之间的夹角求一次范数),求得的均方根即表示表示计算出的的实测误差。
本发明提出的标定算法可以直接利用标定时的采样点做误差分析,不需要控制机器人做额外的采样进行误差的测量。
本发明的首先由标定扳引导机械臂将标定扳和相机进行对齐,确认机械臂采样的初始点,之后由机械臂夹持相机或标定扳完成一系列富含相机和标定扳旋转信息的采样点,并用标定扳识别算法估计标定扳的位姿,最后求解标定方程并对求解的结果进行自动误差测量,完整整套全自动的标定求解方案。
眼在手上自动标定算法详细的流程图,如图9所示。
1机械臂夹持相机与标定扳自动对齐,定位机械臂初始采样位置。
2机械臂夹持相机围绕标定扳位置自动走点采样。
3相机估计标定扳位姿。
4标定方程AX=XB求解。
5估算求解的标定矩阵的误差,若当前测量结果不能满足要求,则更换实验条件重新测量。
眼在手外自动标定算法详细的流程图,如图10所示。
1机械臂夹持标定扳与相机自动对齐,定位机械臂初始采样位置。
2机械臂夹持标定扳围绕标定扳位置自动走点采样。
3相机估计标定扳位姿。
4标定方程AX=XB求解。
5估算求解的标定矩阵的误差,若当前测量结果不能满足要求,则更换实验条件重新测量。
下面结合具体实施例对本发明的应用原理作进一步的描述。
实施例:
(1)眼在手上一键式标定在sawyer机器人上的测试:
a)机器人夹持相机绕自身周围运动,检测周围是否有标定板存在(如图11所示)。
b)相机检测到标定板的存在,机器人夹持相机在不同方向运动以估算标定扳在机器人坐标系下的方位(如图12所示)。
c)机器人估算出标定扳的位置,此时机械臂末端已经移动到标定板的正上方(如图13所示)。
d)机器人以估算的标定扳的位置为中心,对标定扳进行旋转采样,同时记录机械臂末端在相机坐标系下的位置(如图14所示)。
e)求解标定方程,标定过程中采集到的数据如下:
标定扳在相机坐标系下的位姿数据:
Tran_xyz指标定板在相机坐标系下在x,y,z轴的偏移。
Qua_xyzw指标定板在相机坐标系下的旋转四元数的xyzw分量。
机械臂末端在机器人底座坐标系下的位姿数据:
序号 | Tran_x | Tran_y | Tran_z | Qua_x | Qua_y | Qua_z | Qua_w |
0 | 0.054234 | 0.668448 | 0.600012 | 0.831653 | 0.555291 | 0.001911 | 0.0014 |
1 | -0.31461 | 0.609949 | 0.299414 | 0.763987 | 0.389307 | 0.489436 | 0.158795 |
2 | -0.28862 | 0.52005 | 0.298841 | 0.710204 | 0.481489 | 0.504478 | 0.096337 |
3 | -0.23881 | 0.440507 | 0.303937 | 0.648655 | 0.562887 | 0.511463 | 0.028468 |
4 | -0.18313 | 0.403648 | 0.314587 | 0.618987 | 0.59759 | 0.509244 | -0.0203 |
5 | -0.18299 | 0.397645 | 0.32035 | 0.609779 | 0.603322 | 0.51268 | -0.03648 |
6 | -0.18489 | 0.397724 | 0.31995 | 0.61299 | 0.602849 | 0.509867 | -0.02919 |
7 | -0.18013 | 0.39816 | 0.326456 | 0.619572 | 0.595086 | 0.510948 | -0.03058 |
8 | -0.17863 | 0.398317 | 0.326779 | 0.620569 | 0.593705 | 0.511435 | -0.02902 |
9 | -0.17783 | 0.39824 | 0.327349 | 0.621018 | 0.592566 | 0.512249 | -0.02835 |
10 | -0.17826 | 0.398361 | 0.327033 | 0.620708 | 0.593165 | 0.511918 | -0.02858 |
11 | -0.28629 | 0.700358 | 0.348751 | 0.838317 | 0.301782 | 0.410796 | 0.193391 |
12 | -0.28304 | 0.614894 | 0.34843 | 0.795396 | 0.403113 | 0.430089 | 0.140956 |
13 | -0.25967 | 0.532303 | 0.350276 | 0.738816 | 0.499655 | 0.444414 | 0.083616 |
14 | -0.22395 | 0.470741 | 0.388914 | 0.692904 | 0.550095 | 0.466072 | 0.00745 |
Tran_xyz指机械臂末端坐标系在机器人坐标系下在x,y,z轴的偏移。
Qua_xyzw指机械臂末端坐标系在机器人坐标系下的旋转四元数的xyzw分量。
标定结果:
Tran_x | Tran_y | Tran_z | Qua_x | Qua_y | Qua_z | Qua_w |
-0.03771 | 0.029894 | 0.076449 | -0.00183 | -0.00959 | -0.69051 | 0.723258 |
Tran_xyz指相机坐标系在机械臂末端坐标系下在x,y,z轴的偏移。
Qua_xyzw指相机坐标系在机械臂末端坐标系下的旋转四元数的xyzw分量。
误差测量:
位置误差:0.00800644071212m
角度误差:0.352098020227°
(2)在新时达机器人上的测试:
a)机器人夹持标定扳绕自身周围运动,同时相机持续拍照检测标定板是否落入自身视野内(如图15所示)。
b)相机检测到标定板的存在,机器人夹持标定板在不同方向运动以估算标定板在机器人坐标系下的方位(如图16所示)。
c)机器人估算出相机的位置,此时机械臂末端已经移动到相机的正下方前的一个位置,因为正下方不可达,所以将机械臂对齐的位置向靠近机器人的方向进行了补偿(如图17所示)。
d)机器人以估算的相机的位置为中心,夹持标定扳运动使相机对标定扳进行旋转采样,同时记录机械臂末端在相机坐标系下的位置(如图18所示)。
e)标定方程求解,并且将求解的标定结果输入到机器人***中,实现视觉引导的机器人抓取动作。
标定扳在相机坐标系下的位姿数据:
Tran_xyz指标定板在相机坐标系下在x,y,z轴的偏移。
Qua_xyzw指标定板在相机坐标系下的旋转四元数的xyzw分量。
机械臂末端在机器人坐标系下的位姿数据:
序号 | Tran_x | Tran_y | Tran_z | Qua_x | Qua_y | Qua_z | Qua_w |
0 | 0.858519 | -0.31209 | -1.30544 | 0.187345 | 0.122074 | -0.95369 | 0.201179 |
1 | 0.535381 | -0.33179 | -1.42285 | 0.161724 | 0.15442 | -0.97442 | 0.022513 |
2 | 0.214588 | -0.23203 | -1.49855 | -0.1306 | -0.18151 | 0.961965 | 0.156919 |
3 | -0.06054 | -0.02628 | -1.52231 | -0.09502 | -0.20241 | 0.916752 | 0.331008 |
4 | -0.25284 | 0.25767 | -1.49092 | -0.05621 | -0.21643 | 0.84032 | 0.493825 |
5 | -0.33634 | 0.58147 | -1.40862 | -0.01548 | -0.22307 | 0.735271 | 0.639825 |
6 | -0.29976 | 0.901389 | -1.28654 | 0.025769 | -0.22212 | 0.605185 | 0.764036 |
7 | 0.767885 | -0.40273 | -1.28966 | 0.15844 | 0.103239 | -0.96081 | 0.202681 |
8 | 0.439323 | -0.42785 | -1.3897 | 0.136772 | 0.130595 | -0.98169 | 0.022681 |
9 | 0.115034 | -0.33158 | -1.45419 | -0.11045 | -0.1535 | 0.969147 | 0.158091 |
10 | -0.16119 | -0.12693 | -1.47444 | -0.08036 | -0.17118 | 0.923596 | 0.333479 |
11 | -0.35204 | 0.158468 | -1.44769 | -0.04754 | -0.18304 | 0.846593 | 0.497512 |
12 | -0.43174 | 0.486069 | -1.37758 | -0.01309 | -0.18865 | 0.740761 | 0.644602 |
13 | -0.38952 | 0.811628 | -1.27356 | 0.021793 | -0.18785 | 0.609703 | 0.769741 |
14 | 0.654004 | -0.51661 | -1.26931 | 0.122238 | 0.07965 | -0.968 | 0.204196 |
Tran_xyz指机械臂末端坐标系在机器人坐标系下在x,y,z轴的偏移。
Qua_xyzw指机械臂末端坐标系在机器人坐标系下的旋转四元数的xyzw分量。
标定结果:
Tran_x | Tran_y | Tran_z | Qua_x | Qua_y | Qua_z | Qua_w |
1.437063 | 1.077985 | 1.793693 | 0.9988293 | 0.012354159 | 0.0092933 | 0.045086028 |
Tran_xyz指相机坐标系在机械臂末端坐标系下在x,y,z轴的偏移。
Qua_xyzw指相机坐标系在机器人底座坐标系下的旋转四元数的xyzw分量。
误差测量:
位置误差:0.00574005768658m
角度误差:0.838789960037°
将测量的结果代入到机器人***中,机器人在视觉相机的引导下实现了精确的抓取(如图19所示):
从图19可以看出,机器人在深度相机的指引下,实现了精确的物体抓取,说明本***计算出的标定结果真实有效。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定方法包括:
第一步,由标定板引导六轴机械臂将标定板和相机进行对齐,获取机械臂的初始采样位置;
第二步,机械臂完成夹持相机或标定板完成一系列旋转运动,并在运动过程中由相机对标定板进行拍照采样,用标定板识别算法估计标定板的位姿,同时过滤不合理的点;
第三步,求解标定方程并使用标定过程中的采样点对求解的结果进行误差测量,实现全自动可量化的标定求解方案和装置。
2.如权利要求1所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定方法的相机检测标定板位姿包括:
眼在手上的标定时,机器人夹持相机绕机器人四周进行拍照,检查机器人可触及范围内是否存在标定板;眼在手外的标定时,机器人夹持标定板绕机器人四周进行拍照,检查机器人可触及范围内是否能够把标定板送到相机可视范围内;
眼在手上时,机械臂夹持相机绕自身周围运动以初步检测标定板存在的运动过程示意图:相机在每次拍照时,将拍到的图像转为灰度图,再进行二值化处理,对二值化后的图像进行轮廓检测,并由此计算出此轮廓在相机坐标系下的位姿;最后得到的结果是标定板在相机坐标系下的平移和旋转关系;
当机械臂夹持相机或标定板绕自身周围运动时,若相机拍照后检测到了标定板的存在,并且检测到此时相机与标定板的距离小于一定阈值后,机械臂认为此时运动的位置相机已经能够初步捕获到标定板,接下来机械臂会开始在机械臂的引导下对初始采样点自动定位。
3.如权利要求1所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定方法的机械臂自动定位采样点包括:
当相机捕获到标定板时,由标定板和相机之间的相对关系指挥机械臂运动;当标定板最终和相机对齐时,此时机械臂也和标定板或相机对齐;机械臂以当前的位置为采样中心,根据预设算法自动进行旋转采样。
4.如权利要求3所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述眼在手上时,相机判断自身和标定板之间存在的夹角和距离方法包括:
(1)机器人在检测到标定板落到相机视野后,使用相机检测当前位置标定板在和相机的距离;
(2)机器人夹持相机或标定板在机器人底座坐标系不同方向平移,记录每次平移之后距离相机距离标定板的距离;根据平移前的距离和平移后的距离判断标定板与相机的连线与机械臂末端坐标系的夹角;
(3)将相机或标定板调整到和标定板或相机正对的姿态(XOY平面相互平行),并移动机械臂,使相机和标定板在XOY平面上靠近;
(4)继续检查相机和标定板在相机坐标系XOY平面上的距离是否小于阈值,若不是,则返回(1),反复迭代,直到标定板到在相机坐标系XOY平面上靠近相机;
(5)当相机成功对齐标定板之后,此时机械臂的位置就是要进行采样的位置初始点,对此位置进行调整,机器人进行采样。
5.如权利要求1所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定方法的机器人走点采样包括:当机械臂定位好采样点后,让相机绕着空间一组彼此之间夹角为360/N,且构成的平面平行于标定板或相机的N个旋转轴旋转。
6.如权利要求1所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定方法的标定方程求解:
(1)眼在手上标定方程:Ogrid:标定板坐标系;Oworld:世界坐标系或机械臂坐标系;Ocamera:相机坐标系;Oend:机械臂末端坐标系;相机坐标系和机械臂末端坐标系之间的转换关系;机械臂末端坐标系和机械臂底座坐标系之间的转换关系;相机坐标系和标定板坐标系之间的转换关系;标定板坐标系和机械臂底座坐标系之间的转换关系;
第i次运动的转换关系方程为:
第j次运动的转换关系方程为:
联立两个公式并消除其中的常量关系可以得到:
令以及上式化简为:
AX=XB;
最终X即相机坐标系和机械臂末端坐标系之间的转换关系即为方程所求;从机械臂内部的关节转换关系中读出,用相机对标定板的位置估算求得;
(2)眼在手外标定方程推导:Ogrid:标定板坐标系;Oworld:世界坐标系或机械臂坐标系;Ocamera:相机坐标系;Oend:机械臂末端坐标系;相机坐标系和机械臂底座坐标系之间的转换关系;机械臂末端坐标系和机械臂底座坐标系之间的转换关系;相机坐标系和标定板坐标系之间的转换关系;标定板坐标系和机械臂末端坐标系之间的转换关系;
第i次运动的转换关系方程为:
第j次运动的转换关系方程为:
联立两个公式并消除其中的常量关系可以得到:
令以及上式化简为:
AX=XB;
最终X即相机坐标系和机械臂末端坐标系之间的转换关系即为方程所求;从机械臂内部的关节转换关系中读出,用相机对标定板的位置估算求得。
7.如权利要求6所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述AX=XB方程求解包括:先从基本方程上式求解出再代入下式求解出。
8.如权利要求6所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述AX=XB方程求解包括:对和进行统一求解的,使用对偶四元数表示两个线元之间的旋转和平移。
9.如权利要求1所述的最优标定点选取和误差自测量的自动手眼标定方法,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定方法的标定误差测量包括:
眼在手上误差测量方法:
(1)在标定过程中,相机相对于标定板运动机械臂相对于底座运动标定板和机械臂底座都是静止的;
(2)由相机相对于标定板的第i次的运动和第j次的运动求出相机之间相对运动由机械臂末端相对于机械臂底座第i次的运动和第j次的运动求出机械臂之间的相对运动
(3)取每次采样的第一组数据和为相机和机械臂末端的初始位置,之后第i次运动过程相机和机械臂末端相对于初始位置的转换关系为和
(4)由求得的相机和机械臂之间的转换关系估算出此时相机的估算位置
(5)将与做差,对旋转部分和平移部分分别取均方根和旋转均方根误差是对两个四元数之间的夹角求范数,求得的均方根即表示表示计算出的的实测误差;
眼在手外误差测量方法:
(1)在标定过程中,标定板相对于相机运动机械臂相对于底座运动标定板和机械臂底座都是静止的;
(2)由标定板相对于标定板第i次的运动和第j次的运动求出标定板间相对运动由机械臂末端相对于机械臂底座第i次的运动和第j次的运动求出机械臂之间的相对运动
(3)取每次采样的第一组数据和为相机和标定板的初始位置,之后第i次运动过程标定板和机械臂末端相对于初始位置的转换关系为和
(4)由求得的相机和机械臂底座之间的转换关系估算出此时相机的估算位置
(5)将与做差,对旋转部分和平移部分分别取均方根得到和旋转均方根误差是对两个四元数之间的夹角求一次范数,求得的均方根即表示表示计算出的的实测误差。
10.一种实现权利要求1所述最优标定点选取和误差自测量的自动手眼标定方法的最优标定点选取和误差自测量的自动手眼标定装置,其特征在于,所述最优标定点选取和误差自测量的自动手眼标定装置包括:
眼在手上的自动标定装置,由机械臂底座Oworld,机械臂末端Oend,相机Ocamera和标定板Ogrid组成,机械臂末端和相机是刚性连接的,机械臂末端发生旋转运动Htrans时,相机随着机械臂末端发生同样的旋转运动Htrans,Ocamera和Ogrid的坐标系关系会发生变化,机械臂在不同的采样位置采集Ocamera和Ogrid的坐标系关系变化,以及Oend和Oworld之间的坐标系关系变化即可求得Ocamera和Oend之间的位置关系;
眼在手外的自动标定装置,由机械臂底座Oworld,机械臂末端Oend,相机Ocamera和标定板Ogrid组成,机械臂末端和标定板是刚性连接的,机械臂末端发生旋转运动Htrans时,标定板随着机械臂末端发生同样的旋转运动Htrans,Ocamera和Ogrid的坐标系关系会发生变化,机械臂在不同的采样位置采集Ocamera和Ogrid的坐标系关系变化,以及Oend和Oworld之间的坐标系关系变化即可求得Ocamera和Oworld之间的位置关系。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910427156.0A CN110238845B (zh) | 2019-05-22 | 2019-05-22 | 最优标定点选取和误差自测量的自动手眼标定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910427156.0A CN110238845B (zh) | 2019-05-22 | 2019-05-22 | 最优标定点选取和误差自测量的自动手眼标定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110238845A true CN110238845A (zh) | 2019-09-17 |
CN110238845B CN110238845B (zh) | 2021-12-10 |
Family
ID=67884668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910427156.0A Active CN110238845B (zh) | 2019-05-22 | 2019-05-22 | 最优标定点选取和误差自测量的自动手眼标定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110238845B (zh) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111203881A (zh) * | 2020-01-16 | 2020-05-29 | 河北工业大学 | 一种基于加权最小二乘法的在线反馈手眼标定方法 |
CN111761575A (zh) * | 2020-06-01 | 2020-10-13 | 湖南视比特机器人有限公司 | 工件及其抓取方法和生产线 |
CN112107363A (zh) * | 2020-08-31 | 2020-12-22 | 上海交通大学 | 一种基于深度相机的超声溶脂机器人***及辅助操作方法 |
CN112285625A (zh) * | 2020-09-21 | 2021-01-29 | 广东电网有限责任公司广州供电局 | 一种通用型电力仪表自动检定***及其检定方法 |
CN112285626A (zh) * | 2020-09-21 | 2021-01-29 | 广东电网有限责任公司广州供电局 | 一种仪表自动检定***量程调节方法 |
CN112767493A (zh) * | 2020-12-30 | 2021-05-07 | 浙江大学 | Stewart平台运动学参数的机器视觉标定方法 |
CN112802122A (zh) * | 2021-01-21 | 2021-05-14 | 珠海市运泰利自动化设备有限公司 | 机器人视觉引导组装方法 |
CN112809668A (zh) * | 2020-12-30 | 2021-05-18 | 上海媒智科技有限公司 | 一种机械臂自动手眼标定的方法及***、终端 |
CN113246128A (zh) * | 2021-05-20 | 2021-08-13 | 菲烁易维(重庆)科技有限公司 | 一种基于视觉测量技术的机器人示教方法 |
CN113459108A (zh) * | 2021-09-02 | 2021-10-01 | 杭州灵西机器人智能科技有限公司 | 基于插值补偿的手眼标定方法、***、装置和介质 |
CN113504063A (zh) * | 2021-06-30 | 2021-10-15 | 南京航空航天大学 | 一种基于多轴机械臂的立体空间触屏设备可视化测试方法 |
CN113510697A (zh) * | 2021-04-23 | 2021-10-19 | 知守科技(杭州)有限公司 | 机械手定位方法、装置、***、电子装置和存储介质 |
CN113771096A (zh) * | 2021-11-09 | 2021-12-10 | 北京壹点灵动科技有限公司 | 机械臂的位姿信息的处理方法和装置 |
CN113858266A (zh) * | 2020-06-30 | 2021-12-31 | 上海微创数微医疗科技有限公司 | 机械臂的位姿误差的检测方法及*** |
CN113997295A (zh) * | 2021-12-30 | 2022-02-01 | 湖南视比特机器人有限公司 | 机械臂的手眼标定方法、装置、电子设备及存储介质 |
CN114670194A (zh) * | 2022-03-22 | 2022-06-28 | 荣耀终端有限公司 | 机械手***定位方法及装置 |
CN115200475A (zh) * | 2022-07-14 | 2022-10-18 | 河南埃尔森智能科技有限公司 | 一种臂载式多视觉传感器快速校正方法 |
CN115256367A (zh) * | 2021-04-29 | 2022-11-01 | 中国科学院沈阳自动化研究所 | 一种基于双目立体成像的机械臂手眼标定方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104827480A (zh) * | 2014-02-11 | 2015-08-12 | 泰科电子(上海)有限公司 | 机器人***的自动标定方法 |
WO2017033100A1 (en) * | 2015-08-26 | 2017-03-02 | Tyco Electronics (Shanghai) Co. Ltd | Automatic calibration method for robot system |
CN106767393A (zh) * | 2015-11-20 | 2017-05-31 | 沈阳新松机器人自动化股份有限公司 | 机器人的手眼标定装置与方法 |
CN108717715A (zh) * | 2018-06-11 | 2018-10-30 | 华南理工大学 | 一种用于弧焊机器人的线结构光视觉***自动标定方法 |
CN108748146A (zh) * | 2018-05-30 | 2018-11-06 | 武汉库柏特科技有限公司 | 一种机器人手眼标定方法及*** |
CN108818536A (zh) * | 2018-07-12 | 2018-11-16 | 武汉库柏特科技有限公司 | 一种机器人手眼标定的在线偏移修正方法及装置 |
CN109278044A (zh) * | 2018-09-14 | 2019-01-29 | 合肥工业大学 | 一种手眼标定及坐标转换方法 |
CN109493389A (zh) * | 2018-10-15 | 2019-03-19 | 同济大学 | 一种基于深度学习的相机标定方法及*** |
-
2019
- 2019-05-22 CN CN201910427156.0A patent/CN110238845B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104827480A (zh) * | 2014-02-11 | 2015-08-12 | 泰科电子(上海)有限公司 | 机器人***的自动标定方法 |
WO2017033100A1 (en) * | 2015-08-26 | 2017-03-02 | Tyco Electronics (Shanghai) Co. Ltd | Automatic calibration method for robot system |
CN106767393A (zh) * | 2015-11-20 | 2017-05-31 | 沈阳新松机器人自动化股份有限公司 | 机器人的手眼标定装置与方法 |
CN108748146A (zh) * | 2018-05-30 | 2018-11-06 | 武汉库柏特科技有限公司 | 一种机器人手眼标定方法及*** |
CN108717715A (zh) * | 2018-06-11 | 2018-10-30 | 华南理工大学 | 一种用于弧焊机器人的线结构光视觉***自动标定方法 |
CN108818536A (zh) * | 2018-07-12 | 2018-11-16 | 武汉库柏特科技有限公司 | 一种机器人手眼标定的在线偏移修正方法及装置 |
CN109278044A (zh) * | 2018-09-14 | 2019-01-29 | 合肥工业大学 | 一种手眼标定及坐标转换方法 |
CN109493389A (zh) * | 2018-10-15 | 2019-03-19 | 同济大学 | 一种基于深度学习的相机标定方法及*** |
Cited By (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111203881A (zh) * | 2020-01-16 | 2020-05-29 | 河北工业大学 | 一种基于加权最小二乘法的在线反馈手眼标定方法 |
CN111761575A (zh) * | 2020-06-01 | 2020-10-13 | 湖南视比特机器人有限公司 | 工件及其抓取方法和生产线 |
CN111761575B (zh) * | 2020-06-01 | 2023-03-03 | 湖南视比特机器人有限公司 | 工件及其抓取方法和生产线 |
CN113858266A (zh) * | 2020-06-30 | 2021-12-31 | 上海微创数微医疗科技有限公司 | 机械臂的位姿误差的检测方法及*** |
CN112107363A (zh) * | 2020-08-31 | 2020-12-22 | 上海交通大学 | 一种基于深度相机的超声溶脂机器人***及辅助操作方法 |
CN112285626A (zh) * | 2020-09-21 | 2021-01-29 | 广东电网有限责任公司广州供电局 | 一种仪表自动检定***量程调节方法 |
CN112285625A (zh) * | 2020-09-21 | 2021-01-29 | 广东电网有限责任公司广州供电局 | 一种通用型电力仪表自动检定***及其检定方法 |
CN112809668A (zh) * | 2020-12-30 | 2021-05-18 | 上海媒智科技有限公司 | 一种机械臂自动手眼标定的方法及***、终端 |
CN112767493A (zh) * | 2020-12-30 | 2021-05-07 | 浙江大学 | Stewart平台运动学参数的机器视觉标定方法 |
CN112802122A (zh) * | 2021-01-21 | 2021-05-14 | 珠海市运泰利自动化设备有限公司 | 机器人视觉引导组装方法 |
CN112802122B (zh) * | 2021-01-21 | 2023-08-29 | 珠海市运泰利自动化设备有限公司 | 机器人视觉引导组装方法 |
CN113510697A (zh) * | 2021-04-23 | 2021-10-19 | 知守科技(杭州)有限公司 | 机械手定位方法、装置、***、电子装置和存储介质 |
CN113510697B (zh) * | 2021-04-23 | 2023-02-14 | 知守科技(杭州)有限公司 | 机械手定位方法、装置、***、电子装置和存储介质 |
CN115256367A (zh) * | 2021-04-29 | 2022-11-01 | 中国科学院沈阳自动化研究所 | 一种基于双目立体成像的机械臂手眼标定方法 |
CN113246128A (zh) * | 2021-05-20 | 2021-08-13 | 菲烁易维(重庆)科技有限公司 | 一种基于视觉测量技术的机器人示教方法 |
CN113246128B (zh) * | 2021-05-20 | 2022-06-21 | 菲烁易维(重庆)科技有限公司 | 一种基于视觉测量技术的机器人示教方法 |
CN113504063A (zh) * | 2021-06-30 | 2021-10-15 | 南京航空航天大学 | 一种基于多轴机械臂的立体空间触屏设备可视化测试方法 |
CN113459108B (zh) * | 2021-09-02 | 2021-11-12 | 杭州灵西机器人智能科技有限公司 | 基于插值补偿的手眼标定方法、***、装置和介质 |
CN113459108A (zh) * | 2021-09-02 | 2021-10-01 | 杭州灵西机器人智能科技有限公司 | 基于插值补偿的手眼标定方法、***、装置和介质 |
CN113771096A (zh) * | 2021-11-09 | 2021-12-10 | 北京壹点灵动科技有限公司 | 机械臂的位姿信息的处理方法和装置 |
CN113997295B (zh) * | 2021-12-30 | 2022-04-12 | 湖南视比特机器人有限公司 | 机械臂的手眼标定方法、装置、电子设备及存储介质 |
CN113997295A (zh) * | 2021-12-30 | 2022-02-01 | 湖南视比特机器人有限公司 | 机械臂的手眼标定方法、装置、电子设备及存储介质 |
CN114670194A (zh) * | 2022-03-22 | 2022-06-28 | 荣耀终端有限公司 | 机械手***定位方法及装置 |
CN115200475A (zh) * | 2022-07-14 | 2022-10-18 | 河南埃尔森智能科技有限公司 | 一种臂载式多视觉传感器快速校正方法 |
CN115200475B (zh) * | 2022-07-14 | 2024-06-07 | 河南埃尔森智能科技有限公司 | 一种臂载式多视觉传感器快速校正方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110238845B (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110238845A (zh) | 最优标定点选取和误差自测量的自动手眼标定方法及装置 | |
CN111775146B (zh) | 一种工业机械臂多工位作业下的视觉对准方法 | |
CN110421562B (zh) | 基于四目立体视觉的机械臂标定***和标定方法 | |
CN103991078B (zh) | 机器人***和用于控制该机器人***的方法 | |
JP5803124B2 (ja) | ロボット、位置検出装置、位置検出プログラム、および位置検出方法 | |
CN111801198B (zh) | 一种手眼标定方法、***及计算机存储介质 | |
CN109910016A (zh) | 基于多自由度机械臂的视觉采集标定方法、装置及*** | |
CN109658460A (zh) | 一种机械臂末端相机手眼标定方法和*** | |
CN106182004A (zh) | 基于视觉引导的工业机器人自动销孔装配的方法 | |
CN111862238B (zh) | 一种全空间单目光笔式视觉测量方法 | |
CN101261118A (zh) | 基于机器人的快速自动化三维形貌在线测量方法和*** | |
CN105043333B (zh) | 一种小型水下机械手位置角度测量方法 | |
CN109493389B (zh) | 一种基于深度学习的相机标定方法及*** | |
CN108015770A (zh) | 机械手位置标定方法及*** | |
CN103192386A (zh) | 基于图像视觉的洁净机器人自动化标定方法 | |
CN103808285B (zh) | 预对准机与机械手相对坐标系的标定方法 | |
WO2023134237A1 (zh) | 用于机器人的坐标系标定方法、装置、***以及介质 | |
CN114260903A (zh) | 圆盘式多工位抓手的工业机器人3d视觉精密插装引导控制方法 | |
CN108180834A (zh) | 一种工业机器人同三维成像仪位姿关系现场实时标定方法 | |
CN210441829U (zh) | 应用工业机器人进行无标志点非接触式扫描装置 | |
CN108942927A (zh) | 一种基于机器视觉的像素坐标与机械臂坐标统一的方法 | |
CN113554559B (zh) | 带有多重复杂曲面旋转对称模型的三维重建方法及装置 | |
CN105759390B (zh) | 一种光纤自动定位与放置装置与方法 | |
CN204314239U (zh) | X射线ct装置 | |
Yang et al. | A coaxial vision assembly algorithm for un-centripetal holes on large-scale stereo workpiece using multiple-dof robot |
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 |