热轧板坯在线检测系统研究与实现
2020-10-28
(辽宁工业大学 机械工程与自动化学院,辽宁 锦州 121001)
随着工业机器人的应用与发展,工业机器人在实际生产得到了广泛的应用,机器人的应用不仅保障人身安全、降低生产成本,而且极大地提高了生产效率。热轧板坯的生产过程中,受到原材料、生产工艺以及其他因素的影响会造成热轧板坯在生产过程中出现裂纹、划痕和氧化皮等表面缺陷,如果在热轧板坯生产过程中不发发现并加以停止,会导致带有缺陷的产品大量生产,不仅浪费了资源,而且影响企业信誉。目前国内热轧板坯缺陷检测大多数还是采用人工检测的方法对热轧板坯进行取样抽检,人工检测存在很大的安全隐患,而且存在检测效率低,准确度不高等问题,严重影响企业生产效率和质量[1]。
本文针对天钢联合特钢钢厂的实际生产问题,设计了基于ABB 机器人热轧板坯在线检测系统。该系统采用ABB 机器人和CCD 相机相结合,机器人带动CCD 相机采集完图像后,带动相机撤出高温区域实现自动冷却,不仅解决了安全性不高和冷却性能复杂等问题,同时也解决CCD 相机成像范围有限的问题。相对于其他的检测方法,该方法精确度高、更灵活,属于真正的非接触的无损检测。
1 热轧板坯在线检测系统结构设计
1.1 系统硬件设计
本系统硬件设备主要包括ABB 公司IRB 4600工业机器人、IRC5 机器人控制柜、线阵CCD 相机、红外光源设备、光电传感器,工业计算机以及相机的夹具等。热轧板坯辊道运动过程中伴随着震动剧烈,严重影响图像采集质量。因此,本系统采用以机器人运动代替热轧板坯轨道运动的方式完成CCD 相机对热轧板坯表面的图像采集。将CCD 相机通过夹具安装至IRB4600 机器人上,辅助光源采用红外光源。ABB 机器人运动稳定,精度较高,保证图像采集质量。ABB 机器人检测系统结构如图1所示。
图1 ABB 机器人检测系统结构
1.2 系统软件配置
该系统软件部分主要包括:图像处理软件OpenCV,机器人运行程序以及用C#开发上位机界面程序。
1.3 系统工作原理
首先采用 PC SDK(software development kit)在上位机上设计 ABB 工业机器人的操作界面,实现本地和远程程序的变量同步,然后在以 TCP/IP 协议与 ABB 机器人控制柜通信[2],直接通过以太网对远程端的机器人进行控制和管理,通过上位机获取或设置机器人的robtarget 或path 信息,搭配socket 可以实现上位机控制机器人运行[3]。将OpenCV 图像处理软件安装到同一台工业计算机上,并将OpenCV 图像处理程序封装到一个DLL,然后用上位机界面调用这个DLL,实现ABB 机器人与图像处理信息的数据连接,从而实现ABB 机器人、上位机、OpenCV 图像处理程序信息通讯如图2 通讯原理图所示。
图2 通讯原理图
2 热轧板坯在线检测实现
2.1 热轧板坯缺陷检测内容
天钢热轧板坯在生产过程中,存在有氧化层、裂纹和划伤等主要表面缺陷。氧化层、划伤分布于热轧板坯表面,而裂纹则处于板坯内部,所以氧化层和划伤的温度相对于裂纹的温度较低,3 种缺陷在红外光的照射下对红外光的反射程度不同,在图像上所呈现的灰度值不同。结合缺陷的形状特征,最终将热轧板坯的表面缺陷识别出来[4]。
将识别出来的表面缺陷根据其形状特征进行分类,并对其缺陷的特征信息进行统计和分析[5],利用OpenCV 相应的API 函数分别求出划伤的长度、氧化层的面积以及裂纹的长度和面积,将统计结果与预先设定的阈值进行对比,若果缺陷的大小超出设定阈值,该热轧板坯就可以判定为合格产品,否则则判定为不良产品,重新铸造。本设计根据天钢实际生产过程,设计方案如图3 所示:
图3 热轧板坯检测系统设计方案图
2.2 图像的采集
CCD 相机对图像的采集是由机器人带动相机的运动来完成的,钢厂生产热轧板坯有不同的型号,型号的不同导致热轧板坯的长度和宽度各不相同,因此需要对机器人的路径进行规划。
当光电传感器触发,机器人带动CCD 相机对板坯进行图像的采集,板坯具体位置根据板坯图像区域锁定来实现的,所以需要对机器人的路径进行自主规划,即通过上位机将板坯的位置信息传递给ABB 机器人Path 程序中的Step 变量。调整机器人的位置信息。
2) 为了衡量算法的优劣性,分别计算比较Digits数据集、Plant数据集、Posture数据集上K-Means聚类、Spectral聚类、AP聚类和IOCAP聚类的平均ACC指标、Purity指标和NMI指标.实验中,每个算法执行25次,并取3个指标的平均值.
图4 机器人运动仿真图
计算机对图像的识别与处理需要一定的时间,因此应调整机器人的运动速度,如果速度过快,影响系统稳定,图像的采集造成缺失,速度太慢又会严重影响企业的生产效率,根据天钢的实际生产过程,最终机器人扫描速度定位1 500 mm/s。机器人运动主要Movel 和MoveJ 指令来完成。如图4 所示的机器人运动仿真图
2.3 图像预处理
由图1~图3 可知CCD 相机通过网线将图像传输到工业计算机,然后进行图像处理。采用不同的图像处理算法会产生不同的处理效果,板坯不同缺陷如图5~图7 所示。由板坯不同缺陷图可知,划伤呈线状,氧化层成鱼鳞状分布,而裂纹的灰度值最高。本算法根据不同缺陷在红外光线的光源照射下在图像所呈现的灰度值不同以及板坯缺陷灰度值和缺陷形状的特点本文对板坯缺陷设计如图8 所示的板坯表面缺陷检测算法流程图。
图5 划痕缺陷图
图6 裂纹缺陷图
图7 氧化层缺陷图
(1)首先对采集到的图像进行滤波处理,由于生产工艺和现场环境的影响,采集到的图像一般伴随着噪音的存在,眼睛几乎无法分辨,如果不对图形进行降噪处理,会对后期图像处理带来很大影响,甚至会影响检测结果。常见的噪音有椒盐噪声、高斯噪声等,对于图像受哪种噪音影响,可以对没有缺陷的板坯图像进行灰度直方图统计,如图9 所示,由灰度直方图可知噪音的类型成高斯分布,因此采用3x3 模板进行高斯滤波。
图8 热轧板坯表面缺陷检测算法流程图
Mat gaosi;
GaussianBlur(src,gaosi,Size(3,3),3,3);
图9 板坯无缺陷灰度直方图
(2)背景在图像检测处理的过程中会占用很多时间,影响图像处理速度,机器人定位同样需要板坯的位置信息。由板坯无缺陷灰度直方图可知,图像背景区域的灰度等级明显低于板坯的灰度级,对图像进行阈值处理,此时热轧板坯与背景处于不同灰度等级,为避免边缘影响,对该图像进行Hough检测如图10,板坯锁定区域所示,表1 为板坯区域坐标4 个顶点坐标。
表1 板坯区域坐标
图10 板坯锁定区域
(3)根据氧化层、裂纹、划伤在红外光的照射下图像灰度值的不同[6],划伤灰度值低于氧化层,裂纹的灰度值最高,在对表面缺陷识别之前,必须将三者分开。对板坯不同缺陷的灰度直方图进行局部灰度直方图统计处理如图11。由局部灰度直方图氧化层灰度峰值在65 而划伤灰度峰值在55,峰值差约为10 个灰度等级。
图11 局部灰度直方图
图12 阈值分割结果
2.4 热轧板坯缺陷判断决策
对板坯进行预处理后,板坯缺陷已经被分割出来,根据热轧板坯表面缺陷的不同形状特征采用不同的图像识别方法,对图像的特征信息进行识别和统计。
2.4.1 氧化层、裂纹识别
氧化层赋予板坯的表面,由氧化层的光强分布特征,使得部分氧化层没有被涵盖进去,容易致使氧化层被划分入裂纹。同时由于裂纹光强和形状分布特征,会导致一部分裂纹较大的板坯缺陷被误识别为氧化层。为了保证识别的准确度,分别对两种缺陷类型进行形态学操作,对氧化层进行腐蚀处理,让氧化层边缘充分包含进来。对裂纹进行膨胀处理,防止较大的裂纹被误识别为氧化层。
利用OpenCV 的findcontours()函数对其进行轮廓发现,然而氧化层分布散乱,由于氧化层灰度等级较低,因此对其图像像素进行取反处理,可对其面积进行求和处理并求出其最大轮廓长度。并对裂纹最大轮廓统计其面积和长度。如表2。
表2 缺陷面积和长度
图13 Hough 直线检测结果
2.4.2 划伤识别
经过图像的阈值处理后划伤的灰度级最低,如图12b 所示,划伤呈线性分布,因此本文采用Hough直线检测的方法对其进行划伤检测[9],并统计划伤数量,检测结果如图13 所示。
2.4.3 决策判断
对划伤、氧化层和裂纹的识别结果进行统计和分析。对统计结果与预先设定的阈值进行对比[10],对超出阈值板坯进行剔除和重新铸造。
3 上位机功能
在钢坯生产过程中,该检测系统的使用对象主要是一线的生产工人,所以上位机界面设计的主要特点是需要,界面简洁、调整的参数要少、容易操作易操作。
本设计上位机界面的开发采用C#语言,其主要功能用于显示钢坯表面缺陷类型、种类等主要相关信息,以及实现ABB 机器人,上位机的通讯功能。
4 结束语
本系统基于机器视觉在线检测系统,将ABB机器人远程操纵系统和视觉识别系统进行结合,大大提高了钢厂生产效率,降低生产成本,提高生产安全性,缺陷识别率达到95%,提高了产品质量。