苏波 郑孟州
摘要:自动化生产线产品检测时,为快速获取产品的三维位姿参数,提出一种基于智能传感器的单目视觉工件位姿获取方法。通过HALCON软件中3D表面匹配算法,对机器人和智能传感器系统进行标定,运动平台带工件作平移运动,智能传感器扫描测量,获取工件的轮廓点云数据,利用软件完成物体的三维点云信息处理和模型的三维重构,确定工件位姿。试验结果表明,该方法可以快速测量,数据可用于机器人抓取。
关键词:智能传感器;三维重构;手眼标定;表面匹配
Research on the Workpiece Grabbing System Based on Intelligent Sensor
SU Bo,ZHENG Meng zhou
(School of Electrical Engineering and Automation, Henan Polytechnic University, Jiaozuo 454000, China)
Abstract:In order to complete the task of product testing in the automated production line and quickly obtain the three dimensional pose parameters of the product, a method of obtaining the pose of the monocular vision workpiece based on the smart sensor is proposed. Through the 3D surface matching algorithm in HALCON software, the system composed of robot and intelligent sensor is calibrated. The moving platform with workpiece for translational motion, intelligent sensor scanning and measurement gets the contour point cloud data of the workpiece, and completes the 3D point cloud information processing of the object by software.The three dimensional reconstruction of the model to determine the pose of the workpiece is completed. The experimental results show that this method can achieve fast measurement and the data can be used for robot grasping.
Key Words:smart sensor; 3D reconstruction; hand eye calibration; surface matching
0 引言
人工质检精度检测失误率高、效率低,已不能适应自动化生产需要。机器视觉理论提出利用机器人代替人眼作测量和判断,有效提高了生产效率,已被广泛应用。在机器视觉近20年的发展过程中,受图像摄取技术和数据处理技术限制,机器视觉系统普遍基于二维视觉技术[1]。但二维视觉不具有深度信息,因此研究机构围绕三维目标数字化这一课题开展了大量研究工作。随着三维图像摄取技术和数据处理技术的飞速发展,3D视觉技术成为计算机视觉领域发展焦点[2]。在机器人3D视觉领域,存在普通相机使用不便和鲁棒性差等问题,智能传感器测量系统能有效解决上述问题,成为重要的非接触测量方式之一。
基于相机的视觉系统,专家提出了许多标定方法,但智能传感器和相机结构上的区别限制了这些方法的通用性。人们都知道标定精度会严重影响智能传感器的测量精度[3],为此进行了许多探究,但仍没有通用的传感器标定方法。有学者提出根据空间定点进行标定,但仍需要标定靶[4],增加了标定难度和成本。为解决上述问题,本文设计了基于智能传感器的工件位姿视觉测量系统[5],提出使用表面匹配进行传感器和机器人系统的标定,通过智能传感器扫描测量工件,获取工件位姿信息。通过以太网向机器人发送指令完成抓取任务。系统不需要特定靶物,只要对待测物体进行标定即可实现手眼系统标定,较好地解决了上述问题。
1 系统总体设计
系统主要由3D智能传感器、运动平台、Articulated 机器人以及PC机组成,设计原理如图1所示。为保证测量结果的准确性,智能传感器选择至关重要。生产车间环境差、存在较多干扰,而且需要根据产品型号调整检测的视野范围。经过对比智能传感器产品,本文选择由加拿大LMI 公司生产的Gocator2350作为系统传感器。Gocator2350智能传感器采用工业级设计,专门针对生产车间的严苛使用环境,易于集成,内置多种工具。集激光发射器和相机成像测量装置为一体的智能激光传感器,使用方便、独立性强、拓展性好,装置紧凑体积小质量轻,可固定在狹小空间内或机械臂上,是抓取系统的理想选择。Gocator2350参数如表1所示。
采集数据时需要工件相对于传感器做平移运动,系统将传感器固定于工件上方,通过运动平台带动工件移动。系统选用传感器运动采集模式,包括时间运动采集和编码器运动采集两种。时间运动采集不需要使用编码器,每隔相同的时间采集一次信息,此方法对物体的运动速度有较高要求;编码器运动采集通过脉冲触发采集,运动平台对速度的控制精度要求不高,所以本文选用编码器运动采集模式。当运动平台带动工件运动时,编码器发出与运动同步的触发信号,智能传感器接收同步信号,发射出线激光并开始采集图像。激光扫描和图像采集同步完成,从而保证图像不会因为物体的运动速度变化而变形。按照传感器使用手册完成传感器的安装和接线后,可通过Web浏览器访问界面进行各类相关参数的设置。
工业生产中常用的机器人有Articulated Robot[6]和SCARA Robot[7]两种。Articulated机器人的臂通常覆盖6自由度的3个旋转接头(3个平移和3个旋转),而SCARA机器人通常具有3个平行的旋转接头和一个平行的棱镜接头,仅覆盖4个自由度(3个平移和1个旋转)。Articulated机器人可通过电磁感应方式定位,并将其解码为需要的特殊角度,使用非常灵活;而SCARA机器人运动具有一定限制(不能倾斜),但可提供更快更精确的性能,适用于高速拾放、包装和组装。通过比较,本文选择运动更为灵活的Articulated机器人。
2 HLCON图像采集
HALCON是德国MVTec公司开发的一套标准机器视觉算法包,是一套图像处理库,拥有应用广泛的机器视觉集成开发环境,能节约产品成本,缩短开发周期,是欧洲及日本工业界公认的最佳机器视觉软件,由多个各自独立的算子及底层数据管理核心构成[8]。HALCON支持Windows、Linux和Mac OS X操作环境,整个函数库可用C、C++、C#、Visual basic和Delphi等多种普通编程语言访问。HALCON为大量的图像获取设备提供接口,保证了硬件的独立性。作为目前业内功能最完善、效率最高的软件之一,HALCON广泛应用于工业生产各个方面,如机械加工、电子器件、包装加工、木材加工等领域[9],本系统采用HALCON软件作为图像在线实时采集与处理的核心模块。HALCON的GenTL协议,允许HALCON直接控制传感器,采集3D点云数据和灰度数据到HALCON中。在安装驱动时需注意的是,传感器的驱动和固件版本必须保持一致。完成驱动安装后,打开HALCON连接传感器并设置采集参数就可进行连接并采集图像。在程序编辑栏中添加三维重构算子,在HALCON图像显示界面就能看到三维重构模型。
3 视觉系统标定
单目传感器视觉系统通过不同的图像处理算子即可确定物体的三维姿态,这些数据可用来控制机器人,但由于安装等原因,机器人与传感器的位置关系未知。为实现精确测量,在测量前需要对机器人与传感器位置关系求解与校正,即“手眼标定”[10]。均匀变换矩阵是描述变换的好方法,但是矩阵元素过多,往往难以理解和计算,3D姿势可以很好地解决这个问题。 3D姿势是一个更容易理解的刚性变换表示方法:一个姿势具有6个参数,3个旋转和3个平移(TransX,TransY,TransZ,RotX,RotY,RotZ),代替均匀变换矩阵中的12个参数。在HALCON中可使用create_pose创建3D姿势,可以通过使用算子hom_mat3d_to_pose和pose_to_hom_mat3d在姿势和均匀矩阵之间进行转换。手眼系统标定和相机标定一样,都是基于校准对象的多幅图像,但与摄像机标定不同的是,手眼系统标定不会手动标定对象。根据相机与机器人位置关系的不同,机器人视觉系统可分为Eye_in_Hand系统和Eye_to_Hand系统。Eye_in_Hand系统的摄像机安装在机器人手部末端,在机器人工作过程中随机器人一起运动。Eye_to_Hand系统的摄像机安装在机器人本体外的固定位置,在机器人工作过程中不随机器人一起运动[11]。系统传感器是固定的,属于Eye_to_Hand系统,可通过机器人夹取标定对象进行手眼系统标定。手眼标定的目的是求解出从传感器坐标系到基础坐标系之间的变换关系[12],这个过程存在一系列坐标变换。在这个坐标变换链中,已经知道两个姿势。通过标定计算确定机器人基础坐标系与传感器坐标系的变换关系,以及校准对象坐标系到机器人工具坐标系的变换关系[13]。手眼标定系统的标定准则如下:
公式(1)中的 H=Rt 0011,其中R为3*3阶旋转矩阵, t 为3×1阶平移矩阵。本系统采用HALCON内部封装算子实现手眼系统标定,实施步骤如下:
(1)创建数据类型。执行标定过程必须先创建手眼标定的数据类型。HALCON是一款功能强大的视觉软件,内部封装丰富的标定类型,如基于机器人类型的校准、相机类型的校准和相机安装类型的校准。系统选用智能传感器,所以选择运用3D物体进行标定。使用create_calib_data和set_calib_data创建标定数据类型。
(2)设置标定物体位姿。相机标定通常选用合适的标定板进行标定,3D物体手眼标定选择功能更为强大的表面匹配法进行标定。表面是基于整体点的匹配,3D表面的全部有效数据点参与匹配计算[14]。使用拍摄的标定图构建3D模型,然后从模型中获得表面匹配所需要的表面模型,通过在标定场景中找到表面模型,估计物体在传感器中的位姿,使用算子如下:
read_object_model_3d
create_surface_model
find_surface_model
refine_surface_model_pose
构建的3D模型和3D表面模型如图2、图3所示。
(3)设置机器人工具位姿。机器人位姿精度对整个手眼标定系统的标定精度至关重要。在进行手眼标定时,每幅标定图片需要提供相对应的机器人位姿,机器人工具位姿可由机器人直接获得并通过input_pose_type算子確定机器人位姿类型。调用input_pose输入末端位姿,则可创建HALCON直接读取的文件,重复多遍即可获得多组机器人的位姿文件。在HDevelop中对机器人位姿文件的读取可直接由read_pose 函数实现。
(4)执行标定。在完成数据准备工作后,使用算子calibrate_hand_eye执行标定,get_calib_data获取标定结果数据。
标定实验选用15组数据,其中一组是标定场景中基于机器人基座的姿势,见表2。另一组是机器人夹着标定物体的15个场景中基于传感器的姿势,见表3,数据通过表面匹配获得。通过使用上述标定数据,按照标定流程,利用HDevelop示例程序进行标定测试。实验得出标定误差:最大平移误差为2.539mm,最大旋转误差为0.541 3°,标定结果如表4所示。
4 抓取姿态确定
设机器人基础坐标系和运动平台在同一平面。在获得标定数据后,通过设计的系统得到长方形工件表面轮廓的三维点云数据[15],图像显示如图4所示。已知物体相对于相机坐标系的位姿,然后使用手眼标定结果,得到抓取点在机器人基础坐标系中的抓取位姿。机器人可使用工件的数据信息完成抓取任务[16],原理如公式(2)所示:
在HALCON中通过以下代码完成上述功能:
hom_mat3d_compose
hom_mat3d_invert
hom_mat3d_compose
5 结语
本文设计了基于智能传感器的工件位姿检测抓取系统。采用专业的机器视觉处理软件HALCON和3D智能传感器Gocator2350,利用3D表面匹配方法进行手眼标定,使用标定数据获取准确的工件位姿信息,利用机器人抓取。实验数据分析表明,本系统实用性较好,可满足工业机器人的操作要求。
参考文献:
[1] 杨建华,张伟,李丽.基于机器视觉的锯材表面缺陷检测系统设计[J].林产工业,2013,40(1) :21 24.
[2] 莫圣阳.基于3D视觉技术的受电弓磨耗检测系统研究[D].广州:广东工业大学,2015.
[3] 陈伟.3D智传感器视觉测量系统关键算法研究[D].成都:电子科技大学,2014.
[4] LIU Z, LI X J, LI F J, et al. Calibration method for line structured light vision sensor based on a single ball target[J]. Optics and Lasers in Engineering,2015(69):20 28.
[5] ZHAO Y, ZHAO J, ZHANG L, et al. Development of a robotic 3D scanning system for reverse engineering of freeform part[J]. International Conference on Advanced Computer Theory and Engineering, 2008(2):246 250.
[6] 卢冠男.基于机器视觉的工业机器人抓取系统的研究[D].合肥:合肥工业大学,2017.
[7] 合泽强.基于机器视觉的工业机器人分拣系统设计[D].哈尔滨:哈尔滨工业大学,2016.
[8] 闫霞,牛建强.基于HALCON软件的摄像机标定[J].数字技术与应用,2010(11):112 113,115.
[9] 姚建平,肖江,闫磊,等.基于3D结构激光的木材表面缺陷检测的研究[J]. 林业机械与木工设备,2013,45(3):20 25.
[10] 王英男,戴曙光.線激光器的手眼标定方法[J].电子科技,2015,28(7):183 185.
[11] 徐德.机器人视觉测量与控制[M].第2版.北京:国防工业出版社,2011.
[12] 卢钰庭.基于视觉的机器人标定的研究[D].广州:华南理工大学,2013.
[13] LIN C C,GONZALEZ P,CHENG M Y,et al.Vision based object grasping of industrial manipulator [C]. Proceedings of 2016 International Conference on Advanced Robotics and Intelligent Systems,2016.
[14] 冯义从,岑敏仪. 三维自由表面匹配及其应用[J].测绘工程,2005,14(3):36 40.
[15] 杜晓燕.基于3D传感器的扫描仪研制[D].郑州:郑州大学,2017.
[16] 卢泉奇,苗同升,汪地,等.基于HALCON的机械手视觉抓取应用研究[J].光学仪器,2014,36(6):492 498.