CN114474058A - 视觉引导的工业机器人系统标定方法 - Google Patents
视觉引导的工业机器人系统标定方法 Download PDFInfo
- Publication number
- CN114474058A CN114474058A CN202210129914.2A CN202210129914A CN114474058A CN 114474058 A CN114474058 A CN 114474058A CN 202210129914 A CN202210129914 A CN 202210129914A CN 114474058 A CN114474058 A CN 114474058A
- Authority
- CN
- China
- Prior art keywords
- industrial robot
- coordinate system
- end effector
- camera
- calibration
- 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
- 238000000034 method Methods 0.000 title claims abstract description 57
- 230000000007 visual effect Effects 0.000 title claims abstract description 14
- 239000012636 effector Substances 0.000 claims abstract description 85
- 239000011159 matrix material Substances 0.000 claims abstract description 52
- 239000013256 coordination polymer Substances 0.000 claims description 22
- 238000006073 displacement reaction Methods 0.000 claims description 12
- 230000036544 posture Effects 0.000 claims description 12
- 230000003287 optical effect Effects 0.000 claims description 8
- 239000000126 substance Substances 0.000 claims description 3
- 230000009466 transformation Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 9
- 238000009434 installation Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000003754 machining Methods 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 238000003466 welding Methods 0.000 description 1
- 239000005019 zein Substances 0.000 description 1
Images
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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- 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
本发明属于工业机器人技术领域,具体涉及一种视觉引导的工业机器人系统标定方法,旨在解决视觉引导的工业机器人系统标定精度较低的问题。本方法包括求出工业机器人基座坐标系与相机坐标系的相对位姿初值;利用四点标定法获取末端执行器坐标系与工业机器人法兰盘坐标系的相对位姿初值;并通过预获取的D‑H参数计算工业机器人关节间固连关系的相对位姿矩阵;控制工业机器人实现Nm种不同姿态,记录各姿态下的各关节角数据,获取Nm种姿态下工业机器人末端执行器中心点在相机坐标系下的坐标;求解误差校正矩阵,实现对视觉引导的工业机器人系统的标定。本发明解决了视觉引导的工业机器人系统标定精度较低的问题,提升了标定精度。
Description
技术领域
本发明属于工业机器人技术领域,具体涉及一种视觉引导的工业机器人系统标定方法。
背景技术
工业机器人作为工业自动化的重要设备,在提高生产效率、解放劳动力等方面发挥重要作用,并且已广泛应用于焊接、磨削、抓取等工业制造中。为保证工业机器人在复杂场景下进行精密作业的质量,基于视觉引导进行作业是一种有效的解决方案,这就需要对工业机器人和视觉单元组成的整个系统(即视觉引导的工业机器人系统)进行精确标定。
视觉引导的工业机器人系统在作业时,其误差的来源往往是多元的。工业机器人在加工、装配中难免会产生装配误差,具体表现为实际和理想运动参数之间的差异,这部分误差一般使用D-H参数误差模型或旋量误差模型来标定。同时,工业机器人与相机之间存在相对位姿误差,对工业机器人与相机的相对位姿误差的标定称为手眼标定。此外,对于末端执行器来说,还存在末端执行器安装误差,对其标定一般使用四点标定法、七点标定法等方法进行处理。在实际应用中,研究人员经常借助OpenCV库来进行标定,例如,OpenCV库中的findChessboardCorners函数用来检测标定板的角点,solvePnP函数可以求解标定板与相机间的位姿关系,手眼标定可以由calibrateHandEye函数完成;OpenCV库中的StereoSGBM类通过立体匹配获得末端执行器的点云,ppf_match_3d::ICP类用来实现点云匹配。
需要说明的是,只考虑单一误差的标定方法因为忽略了其它误差,无法保证标定的质量。为提高标定质量,研究人员关注对不同误差进行联合标定。现有的联合标定方法主要考虑装配误差和工业机器人与相机的相对位姿误差之间的联合标定,但是这类方法假定末端执行器是理想的,忽略了末端执行器的安装误差,这带来了标定精度的损失。末端执行器安装误差、装配误差和工业机器人与相机的相对位姿误差是耦合的,这种耦合性使得要想获得高精度的标定结果就需要对这三种误差联合标定。为此,需要对末端执行器安装误差、装配误差和工业机器人与相机的相对位姿误差的联合标定方法进行更深入的研究,以解决视觉引导的工业机器人系统标定精度较低的问题。
因此,如何提出一种解决上述问题的方案是本领域技术人员目前需要解决的问题。
发明内容
为了解决现有技术中的上述问题,即为了解决视觉引导的工业机器人系统标定精度较低的问题,本发明提出了一种视觉引导的工业机器人系统标定方法,包括以下步骤:
步骤S100,控制工业机器人使固定于其法兰盘上的棋盘格标定板在双目相机的左相机的视野内运动,并采集棋盘格标定板的图像、工业机器人法兰盘坐标系在工业机器人基座坐标系下的位姿,求解出每张图像中棋盘格标定板到相机坐标系的相对位姿,进而求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0;
步骤S200,利用四点标定法获取末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值ETK0;并通过预获取的D-H参数计算工业机器人关节间固连关系的相对位姿矩阵i-1Ti,i=1,2,...,n,n为工业机器人的自由度;
步骤S300,控制工业机器人实现Nm种不同姿态,记录各姿态下的各关节角数据θij,j=1,2,...,Nm,并通过双目相机的左相机和右相机分别采集各姿态下工业机器人末端执行器的图像,获取Nm对图像;对Nm对图像中的每对图像进行处理,得到每对图像对应的末端执行器的点云;对第一对图像处理后的末端执行器的点云,指定末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1,进而通过点云匹配,获取其它Nm-1种姿态下工业机器人末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj,j=2,3,...,Nm;
步骤S400,结合CTB0、i-1Ti、ETK0、CPj和θij,求解误差校正矩阵EBC、EKE和Ei,实现对视觉引导的工业机器人系统的标定;
其中,所述工业机器人基座坐标系OBXBYBZB和工业机器人法兰盘坐标系OEXEYEZE均通过厂商提供的工业机器人使用手册加以获得;所述相机坐标系OCXCYCZC以双目相机的左相机的光心作为原点OC,以左相机图像的横轴方向和纵轴方向分别作为XC轴方向和YC轴方向,以左相机的光轴作为ZC轴;所述末端执行器坐标系OKXKYKZK,其坐标系原点为末端执行器中心点OK,以末端执行器的轴向方向作为ZK轴方向,任选经过OK且垂直于ZK轴的方向作为XK轴方向,YK轴方向由右手定则确定。
在一些优选的实施方式中,求解出每张图像中棋盘格标定板到相机坐标系的相对位姿,其方法为:
通过OpenCV库的findChessboardCorners函数对采集的棋盘格标定板的图像进行处理,得到每张图像中棋盘格标定板的各个角点的图像坐标pk(s,t),k=1,2,...,m,s=0,1,...,r-1,t=0,1,...,c-1,m为采集的棋盘格标定板的图像的数量;r、c分别为棋盘格标定板的行、列角点数;
基于坐标pk(s,t),结合棋盘格标定板的各个角点的世界坐标,利用OpenCV库中的solvePnP函数求解出每张图像中棋盘格标定板到相机坐标系OCXCYCZC的相对位姿CTOk。
在一些优选的实施方式中,求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0,其方法为:
基于采集的棋盘格标定板的图像对应的工业机器人法兰盘坐标系在工业机器人基座坐标系下的位姿,结合每张棋盘格标定板的图像中棋盘格标定板到相机坐标系OCXCYCZC的相对位姿CTOk,通过OpenCV库中的calibrateHandEye函数,得到工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0。
在一些优选的实施方式中,利用四点标定法获取末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值ETK0,其方法为:
在工业机器人的工作空间中设置一个固定位置,控制工业机器人以四种不同的姿态使其末端执行器中心点到达该固定位置,并分别记录工业机器人法兰盘坐标系OEXEYEZE与工业机器人基座坐标系OBXBYBZB的旋转矩阵BRE1、BRE2、BRE3、BRE4以及位移向量BtE1、BtE2、BtE3、BtE4;
基于旋转矩阵BRE1、BRE2、BRE3、BRE4以及位移向量BtE1、BtE2、BtE3、BtE4,计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的位移向量EtK;
控制工业机器人使得末端执行器坐标系OKXKYKZK与工业机器人基座坐标系OBXBYBZB对应各坐标轴的方向保持一致,记录此时工业机器人法兰盘坐标系OEXEYEZE与工业机器人基座坐标系OBXBYBZB的旋转矩阵BRE,进而计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的旋转矩阵ERK:ERK=(BRE)-1;
在一些优选的实施方式中,计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的位移向量EtK,其方法为:
在一些优选的实施方式中,计算工业机器人关节间固连关系的相对位姿矩阵i- 1Ti,其方法为:
其中,i=1,2,...,n,ai、αi、di为工业机器人的D-H参数值。
在一些优选的实施方式中,工业机器人末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj,其获取方法为:
对于Nm对图像,通过OpenCV库中的StereoSGBM类分别进行处理,获得每对图像对应的末端执行器的点云Dj,j=1,2,...,Nm;
在第一个点云D1中指定末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1;
在一些优选的实施方式中,所述误差校正矩阵EBC,其求解方法为:
其中,EBC0是上一次迭代时EBC的值,第一次迭代时EBC0=I4×4,I4×4为4×4的单位矩阵, RBC和tBC表示EBC0的旋转矩阵和平移分量,UBCj=CTB0,EKE0是上一次迭代时EKE的值,第一次迭代时EKE0=I4×4,Ei0是上一次迭代时Ei的值,第一次迭代时Ei0=I4×4,i=1,2,...,n,KPj=KP,KP=[0,0,0,1]T是末端执行器中心点在末端执行器坐标系下的坐标,Rot(θij)是以θij为自变量的旋转矩阵,符号∧表示反对称符号。
在一些优选的实施方式中,所述误差校正矩阵EKE,其求解方法为:
在一些优选的实施方式中,所述误差校正矩阵Ei,其求解方法为:
其中,δξi^的求解分为以下三种情况:
第一种情况:当i=1时,
第二种情况:当i=p,1<p<n时,
第三种情况:当i=n时,
本发明的有益效果:
本发明通过对末端执行器安装误差、装配误差和工业机器人与相机的相对位姿误差的联合标定,解决了视觉引导的工业机器人系统标定精度较低的问题,提升了标定精度,为视觉引导下的工业机器人作业提供技术支持。
附图说明
图1是本发明一种实施例的视觉引导的工业机器人系统标定方法的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明的一种视觉引导的工业机器人系统标定方法,包括以下步骤:
步骤S100,控制工业机器人使固定于其法兰盘上的棋盘格标定板在双目相机的左相机的视野内运动,并采集棋盘格标定板的图像、工业机器人法兰盘坐标系在工业机器人基座坐标系下的位姿,求解出每张图像中棋盘格标定板到相机坐标系的相对位姿,进而求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0;
步骤S200,利用四点标定法获取末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值ETK0;并通过预获取的D-H参数计算工业机器人关节间固连关系的相对位姿矩阵i-1Ti,i=1,2,...,n,n为工业机器人的自由度;
步骤S300,控制工业机器人实现Nm种不同姿态,记录各姿态下的各关节角数据θij,j=1,2,...,Nm,并通过双目相机的左相机和右相机分别采集各姿态下工业机器人末端执行器的图像,获取Nm对图像;对Nm对图像中的每对图像进行处理,得到每对图像对应的末端执行器的点云;对第一对图像处理后的末端执行器的点云,指定末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1,进而通过点云匹配,获取其它Nm-1种姿态下工业机器人末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj,j=2,3,...,Nm;
步骤S400,结合CTB0、i-1Ti、ETK0、CPj和θij,求解误差校正矩阵EBC、EKE和Ei,实现对视觉引导的工业机器人系统的标定;
其中,所述工业机器人基座坐标系OBXBYBZB和工业机器人法兰盘坐标系OEXEYEZE均通过厂商提供的工业机器人使用手册加以获得;所述相机坐标系OCXCYCZC以双目相机的左相机的光心作为原点OC,以左相机图像的横轴方向和纵轴方向分别作为XC轴方向和YC轴方向,以左相机的光轴作为ZC轴;所述末端执行器坐标系OKXKYKZK,其坐标系原点为末端执行器中心点OK,以末端执行器的轴向方向作为ZK轴方向,任选经过OK且垂直于ZK轴的方向作为XK轴方向,YK轴方向由右手定则确定。
为了更清晰地对本发明视觉引导的工业机器人系统标定方法进行说明,下面对本发明方法一种实施例中各步骤进行展开详述。
该实施例为一种较优的实现方式,通过在式(1)中同时考虑末端执行器安装误差、装配误差和工业机器人与相机的相对位姿误差,结合末端执行器中心点在相机坐标系下的观测位置与理想位置,进行视觉引导的工业机器人系统的标定,末端执行器中心点在相机坐标系下的理想位置CP计算如下:
其中CTB0是工业机器人基座坐标系ObXbYbZb与相机坐标系OcXcYcZc的相对位姿初值,i-1Ti是工业机器人关节间固连关系的相对位姿矩阵,ETK0是末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值,KP=[0,0,0,1]T是末端执行器中心点在末端执行器坐标系下的坐标,n为工业机器人的自由度,θi是工业机器人的关节角,i=1,2,...,n,Rot(θ)表示以θ为自变量的旋转矩阵, EBC、EKE和Ei(i=1,2,...,n)是误差校正矩阵;所述工业机器人基座坐标系OBXBYBZB和工业机器人法兰盘坐标系OEXEYEZE均通过厂商提供的工业机器人使用手册加以获得;所述相机坐标系OCXCYCZC以双目相机的左相机的光心作为原点OC,以左相机图像的横轴方向和纵轴方向分别作为XC轴方向和YC轴方向,以左相机的光轴作为ZC轴;所述末端执行器坐标系OKXKYKZK,其坐标系原点为末端执行器中心点OK,以末端执行器的轴向方向作为ZK轴方向,任选经过OK且垂直于ZK轴的方向作为XK轴方向,YK轴方向由右手定则确定。视觉引导的工业机器人系统的标定的目的就是求解误差校正矩阵EBC、EKE和Ei(i=1,2,...,n)。如图1所示,具体标定过程如下:
步骤S100,控制工业机器人使固定于其法兰盘上的棋盘格标定板在双目相机的左相机的视野内运动,并采集棋盘格标定板的图像、工业机器人法兰盘坐标系在工业机器人基座坐标系下的位姿,求解出每张图像中棋盘格标定板到相机坐标系的相对位姿,进而求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0。
在本实施例中,将具有r行c列个角点的棋盘格标定板固定于工业机器人的法兰盘上,其中水平相邻角点的间隔都为d,竖直相邻角点的间隔也都为d,r、c和d为预设常数,本发明中优选设置分别为9、9和7mm。控制工业机器人使棋盘格标定板在双目相机的左相机的视野内运动m次,采集棋盘格标定板的图像m张,并同时记录下对应的工业机器人法兰盘坐标系OEXEYEZE在工业机器人基座坐标系OBXBYBZB下的位姿m个:BTE1,BTE2,...,BTEm,m为预设值,本发明中优选设置为20。
通过OpenCV库的findChessboardCorners函数对这m张图像进行处理,得到m张图像中所有棋盘格标定板的各个角点的图像坐标p1(s,t),p2(s,t),...,pm(s,t),其中s=0,1,...,r-1,t=0,1,...,c-1;另外,m张图像中棋盘格标定板的各个角点的世界坐标计算如下:w(s,t)=[t·d s·d 0]T,s=0,1,…,r-1,t=0,1,…,c-1;基于pk(s,t)(k=1,2,...,m)和w(s,t)(s=0,1,...,r-1,t=0,1,...,c-1),利用OpenCV库中的solvePnP函数求解出每张图像中棋盘格标定板到相机坐标系OCXCYCZC的相对位姿CTOk(k=1,2,...,m)。
基于BTE1,BTE2,...,BTEm和CTO1,CTO2,...,CTOm,通过OpenCV库中的calibrateHandEye函数即可求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0。
步骤S200,利用四点标定法获取末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值ETK0;并通过预获取的D-H参数计算工业机器人关节间固连关系的相对位姿矩阵i-1Ti,i=1,2,...,n,n为工业机器人的自由度。
在本实施例中,在工业机器人的工作空间中设置一个固定位置,控制工业机器人以四种不同的姿态使其末端执行器中心点到达该固定位置,分别记录工业机器人法兰盘坐标系OEXEYEZE与工业机器人基座坐标系OBXBYBZB的旋转矩阵BRE1、BRE2、BRE3、BRE4以及位移向量BtE1、BtE2、BtE3、BtE4。计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的位移向量EtK,如公式(2)所示:
控制工业机器人使得末端执行器坐标系OKXKYKZK与工业机器人基座坐标系OBXBYBZB的XK轴方向与XB轴方向保持一致、YK轴方向与YB轴方向保持一致、ZK轴方向与ZB轴方向保持一致,记录此时工业机器人法兰盘坐标系OEXEYEZE与工业机器人基座坐标系OBXBYBZB的旋转矩阵BRE,计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的旋转矩阵ERK如下:ERK=(BRE)-1。将ERK和EtK组合起来得到末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值
步骤S300,控制工业机器人实现Nm种不同姿态,记录各姿态下的各关节角数据θij,i=1,2,...,n,j=1,2,...,Nm,并通过双目相机的左相机和右相机分别采集各姿态下工业机器人末端执行器的图像,获取Nm对图像;对Nm对图像中的每对图像进行处理,得到每对图像对应的末端执行器的点云;对第一对图像处理后的末端执行器的点云,指定末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1,进而通过点云匹配,获取其它Nm-1种姿态下工业机器人末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj,j=2,3,…,Nm。
在本实施例中,以工业机器人末端执行器在双目相机的左相机和右相机公共视野范围内为前提,控制工业机器人实现Nm种不同姿态,对于每种姿态,记录各关节角数据θij(i=1,2,…,n,j=1,2,...,Nm),并通过双目相机的左相机和右相机分别采集末端执行器的图像构成一对图像,从而Nm种不同姿态共获得Nm对图像;Nm为预设值,本发明中优选为100。
对于Nm对图像,通过OpenCV库中的StereoSGBM类分别进行处理,获得每对图像对应的末端执行器的点云Dj(j=1,2,...,Nm)。人为在第一个点云D1中选择末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1,通过OpenCV库中的ppf_match_3d::ICP类进行点云匹配得到Dj(j=2,3,...,Nm)与D1之间的位姿变换关系 然后根据公式求出点云Dj(j=2,3,…,Nm)中末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj(j=2,3,…,Nm)。
步骤S400,结合CTB0、i-1Ti、ETK0、CPj和θij,求解误差校正矩阵EBC、EKE和Ei,i=1,2,...,n,j=1,2,...,Nm,实现对视觉引导的工业机器人系统的标定。
在本实施例中,结合CTB0、i-1Ti(i=1,2,...,n)、ETK0、CPj(j=1,2,...,Nm)和θij(i=1,2,...,n,j=1,2,...,Nm),使用公式(3)对EBC、EKE和Ei(i=1,2,...,n)进行迭代更新:
其中, EBC0是上一次迭代时EBC的值,第一次迭代时EBC0=I4×4,RBC和tBC表示EBC0的旋转矩阵和平移分量,UBCj=CTB0,Ei0是上一次迭代时Ei的值(i=1,2,...,n),第一次迭代时Ei0=I4×4(i=1,2,...,n),EKE0是上一次迭代时EKE的值,第一次迭代时EKE0=I4×4,I4×4为4×4的单位矩阵,KPj=KP,符号∧表示反对称符号,具体可参考文献:高翔,张涛,刘毅,颜沁睿.视觉SLAM十四讲:从理论到实践.电子工业出版社,2017中的第3讲三维空间刚体运动和第4讲李群与李代数;
δξi^(i=1,2,...,n)的求解分为以下三种情况:
当利用公式(3)对EBC、EKE和Ei(i=1,2,...,n)进行迭代时,如果迭代次数超过Nmax或迭代过程中满足 停止迭代,其中Nmax是预设最大迭代次数,|·|为向量的模长算子,本实施例优选为100,ε是预设阈值,本实施例优选为0.001。迭代结束后的EBC、EKE和Ei(i=1,2,...,n)即为所求。
采用本发明一种视觉引导的工业机器人系统标定方法,工业机器人获得误差校正矩阵EBC、EKE和Ei(i=1,2,...,n),从而实现末端执行器安装误差、装配误差和工业机器人与相机的相对位姿误差的联合标定。本发明解决了视觉引导的工业机器人系统标定精度较低的问题,提升了标定精度。在此基础上,视觉引导的工业机器人系统可以获得场景中目标物体的准确空间位置或者对检测到的目标物体进行稠密的三维重建,进而工业机器人可以通过路径规划无碰的实现对目标物体的作业任务,其中,检测目标物体、稠密的三维重建、路径规划等为现有技术,此处不再一一阐述。
本领域技术人员应该能够意识到,结合本文中所公开的实施例描述的各示例的模块、方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,软件模块、方法步骤对应的程序可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。为了清楚地说明电子硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以电子硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不是用于描述或表示特定的顺序或先后次序。
至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。
Claims (10)
1.一种视觉引导的工业机器人系统标定方法,其特征在于,该方法包括以下步骤:
步骤S100,控制工业机器人使固定于其法兰盘上的棋盘格标定板在双目相机的左相机的视野内运动,并采集棋盘格标定板的图像、工业机器人法兰盘坐标系在工业机器人基座坐标系下的位姿,求解出每张图像中棋盘格标定板到相机坐标系的相对位姿,进而求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0;
步骤S200,利用四点标定法获取末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值ETK0;并通过预获取的D-H参数计算工业机器人关节间固连关系的相对位姿矩阵i-1Ti,i=1,2,...,n,n为工业机器人的自由度;
步骤S300,控制工业机器人实现Nm种不同姿态,记录各姿态下的各关节角数据θij,j=1,2,...,Nm,并通过双目相机的左相机和右相机分别采集各姿态下工业机器人末端执行器的图像,获取Nm对图像;对Nm对图像中的每对图像进行处理,得到每对图像对应的末端执行器的点云;对第一对图像处理后的末端执行器的点云,指定末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1,进而通过点云匹配,获取其它Nm-1种姿态下工业机器人末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj,j=2,3,...,Nm;
步骤S400,结合CTB0、i-1Ti、ETK0、CPj和θij,求解误差校正矩阵EBC、EKE和Ei,实现对视觉引导的工业机器人系统的标定;
其中,所述工业机器人基座坐标系OBXBYBZB和工业机器人法兰盘坐标系OEXEYEZE均通过厂商提供的工业机器人使用手册加以获得;所述相机坐标系OCXCYCZC以双目相机的左相机的光心作为原点OC,以左相机图像的横轴方向和纵轴方向分别作为XC轴方向和YC轴方向,以左相机的光轴作为ZC轴;所述末端执行器坐标系OKXKYKZK,其坐标系原点为末端执行器中心点OK,以末端执行器的轴向方向作为ZK轴方向,任选经过OK且垂直于ZK轴的方向作为XK轴方向,YK轴方向由右手定则确定。
2.根据权利要求1所述的视觉引导的工业机器人系统标定方法,其特征在于,求解出每张图像中棋盘格标定板到相机坐标系的相对位姿,其方法为:
通过OpenCV库的findChessboardCorners函数对采集的棋盘格标定板的图像进行处理,得到每张图像中棋盘格标定板的各个角点的图像坐标pk(s,t),k=1,2,...,m,s=0,1,...,r-1,t=0,1,...,c-1,m为采集的棋盘格标定板的图像的数量;r、c分别为棋盘格标定板的行、列角点数;
基于坐标pk(s,t),结合棋盘格标定板的各个角点的世界坐标,利用OpenCV库中的solvePnP函数求解出每张图像中棋盘格标定板到相机坐标系OCXCYCZC的相对位姿CTOk。
3.根据权利要求1所述的视觉引导的工业机器人系统标定方法,其特征在于,求出工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0,其方法为:
基于采集的棋盘格标定板的图像对应的工业机器人法兰盘坐标系在工业机器人基座坐标系下的位姿,结合每张棋盘格标定板的图像中棋盘格标定板到相机坐标系OCXCYCZC的相对位姿CTOk,通过OpenCV库中的calibrateHandEye函数,得到工业机器人基座坐标系OBXBYBZB与相机坐标系OCXCYCZC的相对位姿初值CTB0。
4.根据权利要求1所述的视觉引导的工业机器人系统标定方法,其特征在于,利用四点标定法获取末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的相对位姿初值ETK0,其方法为:
在工业机器人的工作空间中设置一个固定位置,控制工业机器人以四种不同的姿态使其末端执行器中心点到达该固定位置,并分别记录工业机器人法兰盘坐标系OEXEYEZE与工业机器人基座坐标系OBXBYBZB的旋转矩阵BRE1、BRE2、BRE3、BRE4以及位移向量BtE1、BtE2、BtE3、BtE4;
基于旋转矩阵BRE1、BRE2、BRE3、BRE4以及位移向量BtE1、BtE2、BtE3、BtE4,计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的位移向量EtK;
控制工业机器人使得末端执行器坐标系OKXKYKZK与工业机器人基座坐标系OBXBYBZB对应各坐标轴的方向保持一致,记录此时工业机器人法兰盘坐标系OEXEYEZE与工业机器人基座坐标系OBXBYBZB的旋转矩阵BRE,进而计算末端执行器坐标系OKXKYKZK与工业机器人法兰盘坐标系OEXEYEZE的旋转矩阵ERK:ERK=(BRE)-1;
7.根据权利要求1中所述的视觉引导的工业机器人系统标定方法,其特征在于,工业机器人末端执行器中心点在相机坐标系OCXCYCZC下的坐标CPj,其获取方法为:
对于Nm对图像,通过OpenCV库中的StereoSGBM类分别进行处理,获得每对图像对应的末端执行器的点云Dj,j=1,2,...,Nm;
在第一个点云D1中指定末端执行器中心点,将其在相机坐标系OCXCYCZC下的坐标作为CP1;
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210129914.2A CN114474058B (zh) | 2022-02-11 | 2022-02-11 | 视觉引导的工业机器人系统标定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210129914.2A CN114474058B (zh) | 2022-02-11 | 2022-02-11 | 视觉引导的工业机器人系统标定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114474058A true CN114474058A (zh) | 2022-05-13 |
CN114474058B CN114474058B (zh) | 2023-12-05 |
Family
ID=81480941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210129914.2A Active CN114474058B (zh) | 2022-02-11 | 2022-02-11 | 视觉引导的工业机器人系统标定方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114474058B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI793044B (zh) * | 2022-07-07 | 2023-02-11 | 和碩聯合科技股份有限公司 | 機器手臂的手眼校正方法和手眼校正裝置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105014667A (zh) * | 2015-08-06 | 2015-11-04 | 浙江大学 | 一种基于像素空间优化的相机与机器人相对位姿标定方法 |
CN106737683A (zh) * | 2017-01-11 | 2017-05-31 | 吉林省凯迪科技有限公司 | 校正工业机器人离线编程在现场中的误差的方法 |
CN108818535A (zh) * | 2018-07-05 | 2018-11-16 | 杭州汉振科技有限公司 | 机器人3d视觉手眼标定方法 |
CN109658460A (zh) * | 2018-12-11 | 2019-04-19 | 北京无线电测量研究所 | 一种机械臂末端相机手眼标定方法和系统 |
US20200078948A1 (en) * | 2018-09-10 | 2020-03-12 | Fanuc America Corporation | Robot calibration for ar and digital twin |
CN111591474A (zh) * | 2020-02-28 | 2020-08-28 | 上海航天控制技术研究所 | 一种航天器在轨操作系统对准式手眼标定方法 |
-
2022
- 2022-02-11 CN CN202210129914.2A patent/CN114474058B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105014667A (zh) * | 2015-08-06 | 2015-11-04 | 浙江大学 | 一种基于像素空间优化的相机与机器人相对位姿标定方法 |
CN106737683A (zh) * | 2017-01-11 | 2017-05-31 | 吉林省凯迪科技有限公司 | 校正工业机器人离线编程在现场中的误差的方法 |
CN108818535A (zh) * | 2018-07-05 | 2018-11-16 | 杭州汉振科技有限公司 | 机器人3d视觉手眼标定方法 |
US20200078948A1 (en) * | 2018-09-10 | 2020-03-12 | Fanuc America Corporation | Robot calibration for ar and digital twin |
CN109658460A (zh) * | 2018-12-11 | 2019-04-19 | 北京无线电测量研究所 | 一种机械臂末端相机手眼标定方法和系统 |
CN111591474A (zh) * | 2020-02-28 | 2020-08-28 | 上海航天控制技术研究所 | 一种航天器在轨操作系统对准式手眼标定方法 |
Non-Patent Citations (1)
Title |
---|
刘希龙,等: "基于符号特征的视觉识别方法", 《华中科技大学学报(自然科学版)》, vol. 39, pages 120 - 123 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI793044B (zh) * | 2022-07-07 | 2023-02-11 | 和碩聯合科技股份有限公司 | 機器手臂的手眼校正方法和手眼校正裝置 |
Also Published As
Publication number | Publication date |
---|---|
CN114474058B (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6966582B2 (ja) | ロボットモーション用のビジョンシステムの自動ハンドアイ校正のためのシステム及び方法 | |
CN109859275B (zh) | 一种基于s-r-s结构的康复机械臂的单目视觉手眼标定方法 | |
CN107901041B (zh) | 一种基于图像混合矩的机器人视觉伺服控制方法 | |
TWI672206B (zh) | 機械手臂非接觸式工具中心點校正裝置及其方法以及具有校正功能的機械手臂系統 | |
CN111300422A (zh) | 基于视觉图像的机器人工件抓取位姿误差补偿方法 | |
JP6770605B2 (ja) | 対象物の仮想組立により組立システムをトレーニングするためのビジョンシステム | |
Chang | Robotic assembly of smartphone back shells with eye-in-hand visual servoing | |
CN109227532B (zh) | 机器人的控制装置及其系统、机器人及摄像机的校正方法 | |
CN113001535B (zh) | 机器人工件坐标系自动校正系统与方法 | |
JP6427972B2 (ja) | ロボット、ロボットシステム及び制御装置 | |
CN109227601A (zh) | 控制装置、机器人、机器人系统及校正方法 | |
JP6860843B2 (ja) | ロボットシステム、ロボット制御装置、及びロボット制御方法 | |
JP2005300230A (ja) | 計測装置 | |
CN112833792B (zh) | 一种用于六自由度机械臂的精度标定和验证方法 | |
CN106003020A (zh) | 机器人、机器人控制装置以及机器人系统 | |
Hu et al. | Automatic calibration of hand–eye–workspace and camera using hand-mounted line laser | |
CN113751981B (zh) | 基于双目视觉伺服的空间高精度装配方法和系统 | |
CN113146620A (zh) | 基于双目视觉的双臂协作机器人系统和控制方法 | |
CN114310901B (zh) | 用于机器人的坐标系标定方法、装置、系统以及介质 | |
CN109648605A (zh) | 机器人系统 | |
CN110722558B (zh) | 机器人的原点校正方法、装置、控制器和存储介质 | |
JP2019155556A (ja) | ロボットの制御装置、ロボット、ロボットシステム、並びに、カメラの校正方法 | |
CN112109072B (zh) | 一种大型稀疏特征托盘精确6d位姿测量和抓取方法 | |
CN114474058A (zh) | 视觉引导的工业机器人系统标定方法 | |
Yang et al. | Visual servoing of humanoid dual-arm robot with neural learning enhanced skill transferring control |
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 |