基于机器视觉与深度学习的孔质量检测
2023-03-03王志共李炳伯
何 流,王志共,夏 飞,李炳伯
(1.江西昌河航空工业有限公司,江西 景德镇 333002;2.海军装备部驻武汉地区军事代表局驻南昌地区军事代表室,江西 南昌 330000)
1 引言
20世纪90年代以来,飞机装配领域,数字化、自动化的制孔技术得到了应用和推广[1]。EI公司、KUKA系统公司及Aritex等公司已成功研发出机器人自动制孔设备,在波音和空客等飞机制造企业中发挥了重要作用。国内,北京航空航天大学、浙江大学、南京航空航天大学、西北工业大学、上海拓璞数控科技股份有限公司、大连四达高技术发展有限公司等也与主机厂开展了课题研究,北京神工科技有限公司研制的机器人智能制孔系统在主机厂成功得到应用和推广,大大提升了制孔的质量和效率。
飞机装配工艺要求在制完孔后需要对孔的质量进行检验,对部分不合格的孔要进行补救,对无法处理的不合格工件进行报废处理,满足质量要求才可以进行紧固件安装。目前,孔质量检验采用的是传统的人工检验方式,难以跟上自动化、数字化生产的节奏,主要表现在:
1)精度低:机器人制孔的孔径精度高,传统的人工测量已经难以满足要求。人工用卡尺、塞规等进行测量,误差大,且测量精度受人工操作影响较大。
2)效率低:人工对孔逐个进行测量,效率低,且需要一直占用工装。因为孔的数量巨大,所以耗时长,在“制孔-检验”过程中所需时间占比高。为了保证产能,往往采用抽检或目视,为装配质量埋下了隐患。
3)难以将制孔和检验形成闭环,不适应质量信息管理和数字化装配的要求。
所以,迫切需要研究和开发与机器人制孔相适应的高效率、高精度的智能化在线检测手段,提升质量控制和管理水平。
飞机装配孔质量检验时,工件一般保持在工装上的夹持状态,属于原位测量,具有产品结构复杂、待测范围广、待测信息种类较多及测量精度要求高等特点。飞机装配孔质量检验从技术原理上分类,主要有接触式测量和非接触式测量两类。
接触式测量主要采用的是探针测量方案[2,3],如EI公司、KUKA系统公司及Aritex公司等,他们将测量模块集成到机器人制孔/钻铆系统的末端执行器上。探针沿孔的轴线进给,可以在线检测孔径、窝深和工件厚度,其主要缺点是制孔和检验完全串行,效率低,切屑和润滑油的堆积会影响测量精度,探头磨损也会导致精度退化,也使得制孔末端执行器结构更加复杂,体积更加庞大,可达性降低。
非接触式测量方面,EI公司研究采用激光轮廓仪扫描的方法来测量窝深[4]。但该方案测量精度有限,还不能进行孔径测量,也尚未应用到产品中。国内的机器人制孔系统在线检测技术目前应用较少,还以科研为主。非接触式测量具有不改变被测对象状态、测量效率高等优点,是测量的主要发展方向。机器视觉测量技术利用工业级相机采集目标图像信号,经软件处理数据信息,识别被测对象,输出测量结果,是一类典型的非接触式测量方法。视觉测量包括2D视觉测量、3D扫描测量等方法[5,6],已广泛应用于涂胶检测、连接器测量、零件尺寸测量等领域。
机器视觉测量技术的研究与应用兴起于国外,Marr D[7]提出计算机视觉理论后,视觉测量技术才得到真正意义上的发展,如今在制造业的广泛应用已成大势所趋。我国也出现诸多研究成果与应用实例,许楠楠[8]等利用最小二乘线性回归边缘检测与线边缘定位等方法,实现了对光学元件外径的快速精准测量。毕运波[9]等通过牛顿法求解透视几何原理修正计算模型并分析模型计算精度与窝深和物距间的关系,实现飞机装配中的自动化视觉测量沉头孔垂直度的视觉测量,测量误差可达0.03°。
本文针对飞机装配制孔的检验问题,提出了基于机器视觉的机器人测量方案,实现对孔边距、孔间距和孔径的自动化、高精度测量,试验和应用验证了系统的有效性。
2 需求分析
对机器人制孔系统的主要加工对象壁板类、翼面类工件而言,孔质量检验项目主要包括孔位(边距和间距)、孔径等。
2.1 孔位
典型的长桁上孔位示意如图1所示,孔位包括孔边距、间距s(或节距)和排距。其中,边距包括孔中心距长桁上(下)边沿的距离a和两端孔中心距左(右)边沿的距离b。
图1 典型的长桁上孔位示意图
机器人制孔系统的典型孔位误差为±0.5mm,要求检验系统的测量精度为0.15mm。根据产品实际尺寸,设定孔间距和孔边距测量的最大范围为24mm。
2.2 孔径
机器人制孔系统的典型孔径精度为H9,按测量孔径范围φ3mm~φ6mm计量,对应公差范围为0~0.030mm,要求检验系统的孔径测量精度为0.01mm。
2.3 其他要求
以典型的壁板类工件为例,每个工件上机器人制孔1 000个。考虑检验系统的节拍或效率,要求一次检验完成孔位和孔径的测量,检验时间小于25min。
3 基于机器视觉测量的孔质量检验方案
在装配生产线上,设置独立的孔质量检验工位,机器人制孔完成的工件和工装整体流转到检验工位。这样机器人制孔和检验可同步进行,不影响机器人制孔的节拍。孔质量检验工位采用机器人带测量末端执行器沿编程路径对孔质量进行检验的总体方案。
为了满足测量的范围和精度,采用将孔位和孔径分开检验的方案:
1)孔位。针对测量范围大、精度要对相对低的特点,采用普通2D工业相机+镜头+光源的方案。
2)孔径。针对测量精度要求高、范围小的特点,采用普通2D工业相机+远心镜头+光源的方案。
孔质量检验系统包括机器人、测量末端执行器和计算处理单元。其中,测量末端执行器及孔质量检测系统如图2所示,包括工业相机、远心镜头、定焦镜头、光源和结构件等;计算处理单元包括控制箱和软件(包括控制和通信模块、检测软件模块等)组成。控制和通信软件用于采集相机的图片数据,与其他设备进行数据交换等。检测软件模块用于实现对二维数据的重构、预处理,被测对象特征的提取和测量等。
图2 测量末端执行器及孔质量检测系统
典型的检测工艺流程为
1)检测准备:将测量末端执行器安装到机器人末端法兰上,建立机器人工具坐标系和测量(工件)坐标系。
2)基于被检验工件(含工装)的数模,机器人和工件的相位位姿,对机器人进行离线编程。
3)机器人带着测量末端执行器按设定的路径对孔质量依次进行检测,同步显示检测结果。
4)生成孔质量检测报告。
测量末端执行器视觉模块的选型见表1。
表1 视觉模块选型
孔径测量:工业相机CH120-10GM搭配高放大倍率远心镜头610052。CH120-10GM的像素尺寸为3.45μm,610052的放大倍率为0.75X,可以计算出图像分辨率为3.45μm/0.75 =4.6μm。经算法处理后图像精度可达3μm,单张图像视野可达18.8mm×13.8mm。
孔位测量:工业相机CA050-10GM搭配MF1628M-8MP镜头,综合算法,精度可达30μm,单张图像视野可达48mm×40mm。
综合考虑拍照效果和安装空间要求,采用双条光为两个相机补光。
4 孔位和孔径测量
4.1 测量原理
孔径测量对精度要求非常高,而且实际制出的孔在微观下不规则,测量性能会受到多种因素(如毛刺、缺陷及变形等)的影响。
本文算法采用内接圆,椭圆拟合和外接圆三种测量相结合的方式,如图3所示,图中黑白边缘部分是一个典型的孔边缘,三条线为三种测量方式分别得到的边缘。其中红线为内接圆算法,绿线为椭圆拟合算法,黄线为外接圆算法对应边缘。
图3 孔边缘及三种算法的结果
本方法可以最大程度减小各类因素对孔径测量的影响,极大提高算法精度。此外,本算法最大化的收集到了和孔径有关的信息,对实际的不规则孔的孔径测量有很大帮助。
采用与孔径测量类似的方法获得每个孔的圆心,并通过边缘检测获得被测物体的边缘。最终计算得出两点间距离/点到线距离得到孔间距和孔边距信息。
4.2 测量算法
1)预处理:高斯滤波,并根据需要使用二值化算法。
2)边缘检测:Canny边缘检测。
3)识别孔:先找出的所有边缘中的闭合形状,然后判断这些形状是否是待测孔。
找到每个形状的中心(x,y):
式中,n为形状内点的个数,P为形状内所有的点的集合。
计算形状上每个点到中心的距离的集合d:
式中,C为形状上所有点的集合。
计算点到中心距离集合的平均值mean和标准差std:
得到圆度结果
若圆度结果大于阈值,则可认为检测到了孔。阈值越大,则越不规则的圆会被检测到。
4)根据找到的孔的轮廓形状,分别找出拟合圆的圆心和直径Fx,Fy,Fd,最大内切圆的圆心和直径Ix,Iy,Id和最小外接圆的圆心和直径Zx,Zy,Zd。①拟合圆:将圆心和直径作为变量,通过最小二乘法拟合出结果。②最大内切圆:遍历轮廓内部的所有点,并计算这些点到轮廓的距离。内部距离轮廓最远的点即为圆心,其对应的距离即为半径,以此找出最大内切圆。③最小外接圆:找出轮廓上下左右边缘的四个点并计算出其外接圆,如果轮廓中有点在这个外接圆外,则将轮廓中最远的点引入并计算出其外接圆。不断遍历直到轮廓中所有点都在计算出的圆内,即得到了最小外接圆。
5)将以上结果储存,并和待测孔的真实孔径一起作为训练集,使用深度学习网络进行训练,并得到权重参数模型w。
6)进行足够多的训练后,即可得出圆心和孔径:
软件开发使用Python+OpenCV的方式进行算法开发和调试。整套系统以Python为基础架构,OpenCV构建核心算法,tkinter提供UI支持。两组相机的数据采用同时传输、同时处理、同时计算、同时显示结果的方式,以最高的效率完成测量任务。
5 试验验证
5.1 精度试验及评估
定制专用检具来对孔质量测量系统进行精度评估。检具一共四件,每件基本形状如图4所示,每个孔的孔径不一样。
图4 标准检具示意图
循环测量10次,计算孔位、孔径和孔距的不确定度,以孔边距为例进行说明。孔位即孔边距,包括上边距、下边距、左边距、右边距。如图1,孔位置检具上共有8个孔边距,包括孔1的孔边距3个(上、下、左),孔2的孔边距2个(上、下),孔3的孔边距3个(上、下、右)。
对孔边距i(i=1,…,8),进行n次测量,测量值为所以孔边距的最佳估计值:
采用A类评定方法,计算孔边距的标准不确定度:
计算孔边距的合并样本标准偏差(4个标准件,对应8×4=32个独立测量值):
孔边距测量结果最佳估计值的A类标准不确定度为
计算扩展不确定度:
式中,k=2。
式中,xi为孔间距(孔边距)的“真值”。
评估结果:孔位共有32个样本,孔径共有12个样本,孔距共有8个样本,对应的不确定度和评估结论见表2。
5.2 机器人制孔的测量与评估
将孔质量检验系统应用到某直升机机器人制孔生产线上,对壁板件和平台板等进行孔质量检验,输出结果和传统的游标卡尺、孔径千分表(或塞规)测量方法进行对比。测量和评估结果见表2。结果表明:孔质量检验系统测量数据准确,效率高。
表2 测量和评估结果
(续)
6 结论
基于机器视觉和深度学习的测量方法可实现对孔位和孔径的高精度测量。基于该技术开发的孔质量检验系统,具有测量精度高、效率高、智能化程度高和可拓展性强等特点,满足机器人制孔的非接触式检验要求,具有良好的推广应用前景。