一种基于单目相机和三维力传感器的工业机器人抓取方法与流程

文档序号:12295963阅读:310来源:国知局
一种基于单目相机和三维力传感器的工业机器人抓取方法与流程
本发明属于机器人伺服控制
技术领域
,更具体地,涉及一种基于单目相机和三维力传感器的工业机器人抓取方法。
背景技术
:随着工业技术的发展,工业机器人在制造业中的应用越来越广泛,如汽车及汽车零部件制造、机械加工、电子电气生产、橡胶及塑料制造、食品加工、木材与家具制造等领域的自动化生产过程中,机器人作业发挥着重要作用,机器人对工件的抓取是制造业的自动化生产中一项常见的任务。目前,视觉引导与定位技术已经成为工业机器人获得作业周围环境信息的主要手段,如CN201210405693.3公开的基于双目视觉的机器人目标识别与抓取系统及方法,其通过视觉、射频、超声等传感器与外部环境进行智能交互,识别并定位目标物体,并通过导航系统自主到达目标物体所在的位置,以控制机械臂完成对目标物体的抓取任务;CN201310223530.8公开的一种基于双目视觉的人机交互式机械手控制系统和控制方法,其采用提取实时图像采集装置双目图像中的色彩特征作为控制机械手的信号源,通过双目立体视觉系统和三维坐标系转换计算得出视野实时图像中红色特征激光点的三维信息,以控制机械手进行人机交互式的跟踪目标的操作。然而,上述现有技术均是以双目视觉进行目标物体定位为主,且机器人多为夹爪式,这种抓取系统对相机精度要求较高,对物品摆放位置的适应能力差,且双目相机的参数标定困难,图像处理算法复杂,此外,在操作中,机器人抓取的过程存在抓取缓慢或不稳定的情况,存在抓取一类工件的困难,且实时性和可靠性不能保证。技术实现要素:针对现有技术的以上缺陷或改进需求,本发明提供了一种基于单目相机和三维力传感器的工业机器人抓取方法,其模拟人的视觉和触觉感知系统实现机器人对目标物的抓取工作,采用六自由度关节式工业机器人作为执行单元,使用单目相机进行环境感知、三维力传感器控制机器人调节姿态的方法,有效解决了物体识别设备成本高,对物体摆放要求严格等特殊限定的问题。为实现上述目的,本发明提出了一种基于单目相机和三维力传感器的工业机器人抓取方法,包括以下步骤:(1)首先,对用于获取待抓取物品图像信息的单目相机进行内部参数标定,并对用于执行抓取作业的工业机器人进行手眼标定,以获得工业机器人的基坐标系与相机坐标系之间的变换矩阵,然后对装于工业机器人末端的三维力传感器进行初始化处理;(2)接着,所述单目相机垂直向下照射在待抓取物品的表面以采集物品的图像,将采集到的物品图像传输至上位机中以进行图像处理,并计算出物品的位置信息;所述上位机根据物品的位置信息控制工业机器人移动到物品的上方位置,并使工业机器人垂直向下运动直至碰触到待抓取物品;(3)最后,当工业机器人碰触到待抓取物品后,所述三维力传感器感知工业机器人末端与待抓取物品表面的接触力信息,并将该接触力信息传输至上位机中,所述上位机通过接触力信息控制工业机器人停止运动,并通过接触力信息计算出工业机器人末端的位姿增量,根据所述位姿增量实现工业机器人姿态的调节,直至工业机器人末端的气动吸盘与待抓取物品的平面贴合,然后所述气动吸盘动作完成工业机器人抓取工作。作为进一步优选的,所述工业机器人的基坐标系与相机坐标系之间的变换矩阵采用如下方式获得:(1)定义坐标系:用B表示机器人基坐标系,C表示相机坐标系,O表示物体坐标系,bTc表示基坐标系与相机坐标系之间的变换矩阵,cTo表示相机坐标系与物体坐标系的变换矩阵;(2)坐标系变换:B=inv(cTb)·C;C=cTo·O;则B=inv(cTb)·cTo·O;(3)获得变换矩阵bTc:控制机器人从位置1移动到位置2,由于基坐标系B和物体坐标系O位置不变,则有inv(cTb)·cTo1=inv(cTb)·cTo2,根据所述inv(cTb)·cTo1=inv(cTb)·cTo2,通过inv(cTb)·(cTo1-cTo2)=O计算得到inv(cTb),从而获得基坐标系与相机坐标系之间的变换矩阵bTc。作为进一步优选的,对装于工业机器人末端的三维力传感器进行初始化处理,具体为:获取三维力传感器坐标系x、y、z三个方向上的当前力Fx、Fy、Fz,然后分别对应减去工业机器人末端各部件重力在力传感器坐标系x、y、z三个方向上的分量,由此实现三维力传感器的初始化处理,具体采用如下表达式表示:FxFyFz-cosαcosβcosαsinβsinγ-sinαcosγcosαsinβcosγ+sinαsinγsinαcosβsinαsinβsinγ+cosαcosγsinαsinβcosγ-cosαsinγ-sinβcosβsinγcosβcosγGxGyGz=0]]>其中,Fx、Fy、Fz分别表示三维力传感器测量的力在自身坐标系x、y、z方向的值;γ是基坐标系绕三维力传感器坐标系x轴的旋转角度,β是基坐标系绕三维力传感器坐标系y轴的旋转角度,α是基坐标系绕三维力传感器坐标系z轴的旋转角度;Gx、Gy、Gz分别表示机器人末端三维力传感器、连接板和气动吸盘在基坐标系x、y、z方向的重力。作为进一步优选的,将采集到的物品图像传输至上位机中以进行图像处理并计算出物品的位置信息具体为:上位机读取单目相机的图像信息以提取物品的边缘轮廓,根据边缘轮廓选取处于最上层的物品,分别取最上层物品各边缘轮廓的中值,从而计算获得相机坐标系下目标物体的中心位置。作为进一步优选的,所述上位机根据物品的位置信息控制工业机器人移动到物品的上方位置,并使工业机器人垂直向下运动直至碰触到待抓取物品具体为:上位机获取工业机器人当前位姿,并根据相机坐标系到机器人基坐标系的变换矩阵cTb,将目标物体在相机坐标系中的中心位置变换至基坐标系中,根据工业机器人当前位姿以及中心位置在基坐标系下的位置获得工业机器人移动到目标位置正上方的轨迹。作为进一步优选的,上位机通过接触力信息计算出工业机器人末端的位姿增量,根据位姿增量实现工业机器人姿态的调节,直至工业机器人末端的气动吸盘与待抓取物品的平面贴合,具体为:三维力传感器在自身坐标系下感知机器人与物体接触时x、y、z方向的接触力,通过坐标系变换得到这三个力在基坐标系下的值,然后上位机计算出机器人末端在基坐标系下的旋转角度增量,具体采用下式表示:FxbFybFzb=cosαcosβcosαsinβsinγ-sinαcosγcosαsinβcosγ+sinαsinγsinαcosβsinαsinβsinγ+cosαcosγsinαsinβcosγ-cosαsinγ-sinβcosβsinγcosβcosγ·FxsFysFzs;]]>式中:Fxb、Fyb、Fzb分别是三维力传感器坐标系转换到基坐标系下x,y,z方向的力;γ是基坐标系绕三维力传感器坐标系x轴的旋转角度,β是基坐标系绕三维力传感器坐标系y轴的旋转角度,α是基坐标系绕三维力传感器坐标系z轴的旋转角度;Fxs、Fys、Fzs分别是三维力传感器坐标系下测得的x,y,z方向的力;计算机器人末端在基坐标系下绕x、y方向的旋转角度增量Δθ和Δφ:Δθ=arctan(Fxb/Fzb),Δφ=arctan(Fyb/Fzb);根据计算获得的机器人末端在基坐标系下的旋转角度增量,计算机器人各个关节在基坐标系下的运动增量,然后根据所述运动增量调整机器人末端的位姿,使其末端的吸盘与待抓取物品的表面贴合。总体而言,通过本发明所构思的以上技术方案与现有技术相比,主要具备以下的技术优点:1.传统机器人抓取装置采用双目照相机获取目标物品的位置及深度信息,对相机的精度要求较高,图像处理算法比较繁琐,本发明忽略物体的深度信息,采用单目相机采集目标物体的位置和轮廓信息,减轻了相机硬件成本和标定复杂性。2.本发明采用单目相机能够获得目标物到相机之间的距离、物体的上表面形状及各个物体间的相对位置,通过计算机等控制系统可以使机器人准确定位到目标物体,相比于双目相机,单目相机在硬件结构和图像处理方面十分简单。3.本发明抓取方法采用三维力传感器感应物体摆放位置,进行实时反馈来调整机械臂的姿态,通过气动吸盘抓取目标物体,允许物体堆放、斜放,操作过程简便高效且对物品摆放位置的适应能力强。4.本发明可以实现散乱、倾斜放置的物品的抓取,使用单目相机识别目标物品的位置、三维力传感器调节机器人姿态的方法,相比于双目相机抓取方法,降低了相机标定和物体空间位姿估计的复杂性及系统通讯复杂性,结构简单实用性强。附图说明图1是基于单目相机和三维力传感器的工业机器人抓取系统的结构示意图;图2是本发明单目相机装配示意图;图3是本发明三维力传感器及气动吸盘抓取目标物体示意图;图4是本发明相机坐标系示意图;图5是本发明机器人末端与待抓取物体接触示意图;图6是基于单目相机和三维力传感器的工业机器人抓取系统的构成图;图7是基于单目相机和三维力传感器的工业机器人抓取方法的流程图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。本发明针对现有技术中机器人抓取时存在双目相机标定及图像处理算法复杂、对物品放置位置适应性差等问题,提出了一种基于单目相机和三维力传感器的工业机器人抓取方法,该方法能够完成对随意堆放物品的抓取。该方法包括两部分:一是单目相机拍照定位目标物品,根据相机拍摄的物品图像,在上位机中提取图像特征并计算目标的中心位置,控制机械手移动到目标正上方;二是在线实时位姿调整,三维力传感器感知机械手与物体平面的接触力信息,将该信息传输至上位机进行分析计算,得出工业机器人各关节相对基坐标系的旋转增量,实时调节机械手臂的姿态,直到三维力传感器反馈的x和y向力为0,即吸盘与物体平面平行贴合,气动吸盘动作完成抓取工作。本发明的机器人抓取方法具有很好的适应性,能够实时调整位姿适应物体的摆放位置,结构相对简单,使用方便。如图1-3所示,本发明包括上位机1、固定支架2、CCD相机3、气动吸盘4、三维力传感器5、工业机器人6、传送带7、载物筐8、待抓取物品9、相机支撑板10、支架底座11、机械手12、连接板13。各部件具体连接如下:待抓取的物品9堆放在载物筐8中,载物筐8随着传送带7移动;三维力传感器5固定在机械手12前端,并与连接板13相连,气动吸盘4装在连接板13上;支架2的一端通过底座11固定到地面上,支架2另一端通过支撑板10与单目相机3(CCD相机)相连;通讯方面:CCD相机3和三维力传感器4分别与上位机1相连;上位机1与工业机器人6相连。抓取之前,需对用于获取待抓取物品图像信息的单目相机进行内部参数标定,并对用于执行抓取作业的工业机器人进行手眼标定,然后对装于工业机器人末端的三维力传感器进行初始化处理。其中,单目相机需标定的内部参数包括(共9个参数):像素坐标系中x、y方向的像素数2个、投影平面中心在像素坐标系中的坐标(x,y坐标)2个、透镜畸变参数5个,如图4所示:Opix-XpixYpix为像素坐标系,Op-XpYp为投影平面坐标系,Oc-XcYc为相机坐标系,其利用现有的Matlab或Opencv等软件中的相机标定工具包即可完成相机标定,以得到9个内部参数。对工业机器人进行手眼标定,以获得工业机器人的基坐标系与相机坐标系之间的变换矩阵,具体为:首先,机器人基坐标系(指机器人底盘处所在的坐标系)用B表示,相机坐标系用C表示,物体坐标系(即待抓取物品所在的坐标系)用O表示,机器人手坐标系(指机器人末端所在的坐标系)用H表示,基坐标系到物体坐标系的变换矩阵用bTo表示,基坐标系与相机坐标系之间的变换矩阵bTc,相机坐标系到机器人手坐标系的变换矩阵用cTh表示,相机坐标系到物体坐标系的变换矩阵用cTo表示(由相机标定求出,根据相机标定参数即可计算得出,由软件计算完成),基坐标系到手坐标系的变换矩阵用bTh表示(其为已知参数,可直接在机器人系统中读出)。基坐标系、物体坐标系和相机坐标之间有如下变换:B=inv(cTb)·C;C=cTo·O;则B=inv(cTb)·cTo·O;控制机器人从位置1移动到位置2,因为基坐标系B和物体坐标系O的位置不变,则有:inv(cTb)·cTo1=inv(cTb)·cTo2;从而得到inv(cTb),即基坐标系与相机坐标系之间的变换矩阵bTc,其中inv为矩阵求逆处理。对三维力传感器的初始化操作(即清零操作),其目的在于消除力传感器及前端连接板和吸盘的重力(上述这些部件的重力为已知参数)影响,该操作在力传感器坐标系(即力传感器自身的坐标系,其为已知参数,给定力传感器即可确定该坐标系)下完成,其具体为:获取力传感器坐标系三个方向上的当前力Fx、Fy、Fz,然后分别对应减去各部件重力在力传感器坐标系下x、y、z方向的分量,即可实现清零操作,即:FxFyFz-cosαcosβcosαsinβsinγ-sinαcosγcosαsinβcosγ+sinαsinγsinαcosβsinαsinβsinγ+cosαcosγsinαsinβcosγ-cosαsinγ-sinβcosβsinγcosβcosγGxGyGz=0]]>其中,γ是基坐标系绕力传感器坐标系x轴的旋转角度,β是基坐标系绕力传感器坐标系y轴的旋转角度,α是基坐标系绕力传感器坐标系z轴的旋转角度;Gx、Gy、Gz分别是机器人末端力传感器、前端连接板和吸盘在基坐标系x、y、z方向的重力;Fx、Fy、Fz分别是力传感器测量的力在自身坐标系x、y、z方向的值。如图1-2所示,载物筐中散乱堆放待抓取物品,位于其正上方的CCD相机拍摄图片,将采集到的图片传输至上位机中以进行图像处理,并计算出物品的位置信息,具体的,上位机提取出目标物品的轮廓特征确定最上层的目标物体,计算获取目标的位置信息,然后上位机控制机械臂移动到该目标位置,直到载物筐中的全部物品抓取完成,即CCD相机拍到的图片进行特征提取后显示只有载物筐轮廓,宣布抓取工作结束。具体的,上位机读取单目相机的图像信息,在上位机中调用opencv软件库中的Canny或Soble等算子提取物体的边缘轮廓,即提取出如图1中载物筐中的长方体物体的轮廓(位于最上层未被遮挡的轮廓为长方形);由轮廓的完整性选取处于最上层的物体,根据物体的长方形边缘轮廓分别取临边的中值,从而计算出相机坐标系下目标物体轮廓的中心位置。上位机在每次抓取之前读取相机拍摄的图像信息与机器人位姿信息,并进行数据处理,规划机器人运动轨迹:上位机首先读取图像信息获取处于最上层物品的中心位置,然后读取机器人信息从而确定机器人位姿(该位姿可直接从机器人控制系统中读出),接着上位机根据相机坐标系到机器人基坐标系的变换矩阵cTb,将相机坐标系中的中心位置变换至基坐标系中,根据机器人目前的位姿以及中心位置在基坐标系下的位置获得机器人移动到目标位置正上方的轨迹,如通过机器人逆运动学(其为现有技术,在此不赘述)计算出机器人各关节的移动量,然后根据相应的移动量实现机器人的运动。其中,变换矩阵cTb用下式表示:Tcb=Rp01;]]>式中,R是相机坐标系到基坐标系的旋转变换矩阵,p是相机坐标系原点在基坐标系中的位置。具体的,通过将目标物体在相机坐标系下的中心位置向量乘上变换矩阵cTb,即可得到目标物体中心位置在基坐标系下的位置。如图3所示,机器人末端安装三维力传感器,前端通过连接板安装气动吸盘,当机器人碰到目标物品时,三维力传感器感知机器人末端与待抓取物体表面的接触力信息,机械手末端三维力传感器受到压力作用其输出值出现突变,上位机接收到该信号后控制机器人暂时停止运动,上位机分析感知到的接触力信息并调节机器人的姿态,当x和y向力的绝对值为0时,认为机器人前端吸盘与物体平面贴合,此时气动吸盘动作吸取物品并放到指定位置,完成本次抓取行动。抓取时,上位机实时读取机器人位姿信息与三维力传感器信息,并进行数据处理,得到机器人各关节的位姿增量:上位机读取机器人信息,从而确定机器人位姿变换矩阵;上位机读取力传感器信息,得到机器人与物品接触时的受力信息;上位机根据力传感器受力信息、力传感器到机器人末端的位姿变换矩阵、机器人位姿变换矩阵计算出机器人各个关节轴的旋转增量。具体的,三维力传感器实时调整机器人姿态,三维力传感器感知机器人与物体接触时x、y、z方向的接触力,通过坐标系变换得到这三个力在基坐标系下的值,上位机在此基础上计算出机器人末端在基坐标系下的角度增量:FxbFybFzb=cosαcosβcosαsinβsinγ-sinαcosγcosαsinβcosγ+sinαsinγsinαcosβsinαsinβsinγ+cosαcosγsinαsinβcosγ-cosαsinγ-sinβcosβsinγcosβcosγ·FxsFysFzs]]>式中:γ是基坐标系绕力传感器坐标系x轴的旋转角度,β是基坐标系绕力传感器坐标系y轴的旋转角度,α是基坐标系绕力传感器坐标系z轴的旋转角度;Fxs、Fys、Fzs分别是力传感器坐标系下测得的x,y,z方向的力;Fxb、Fyb、Fzb分别是转换到基坐标系下x,y,z方向的力。机器人末端在基坐标系下的旋转角度增量:Δθ=arctan(Fxb/Fzb),Δφ=arctan(Fyb/Fzb)根据计算获得的机器人末端在基坐标系下的角度增量,利用机器人逆运动学,计算机器人各个关节在基坐标系下的运动增量,根据运动增量调整机器人末端的位姿,使其末端的吸盘与待抓取物品的表面贴合。本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1