基于机器视觉的太阳能电池硅片隐裂检测*
2019-12-26孙智权赵不贿
王 宇,孙智权,赵不贿
(江苏大学 a.电气信息工程学院; b.工业中心,江苏 镇江 212013)
0 引言
近年来,光伏产业发展迅速,太阳能电池作为核心光伏组件,其主要作用是将太阳的光能直接转化为电能。目前市面上光伏系统大量使用的是以硅为基底的硅太阳能电池,而太阳能电池的硅片较薄,其厚度一般在180μm~200μm之间,很容易造成硅片隐裂。一旦出现电池的硅片隐裂,太阳能电池的转换效率将受到严重影响[1-2],其使用寿命也会大大缩短。因此,若不能在太阳能电池生产工序之前检测出带有隐裂的硅片,将造成资源和生产成本的浪费,产品质量下降,企业效益降低。
目前国内各主要厂商普遍使用人工检测的方法,常见的有划拨法,虽然这种检测方法能检测出硅片隐裂,但检测速率较低,错检率高,劳动强度大,需要投入大量的人力资源,也大大增加了人为损坏硅片的风险,不能满足生产需求,并在劳动力成本急剧上升的当下,无疑给硅片厂商带来经济成本的压力。为此,亟需开发出太阳能电池硅片隐裂自动化检测系统。
由于隐裂的不可见性,研究人员根据近红外线不易被硅材料吸收的原理,通过激光源对硅片进行照射,在硅片另一侧通过相机捕获透射过去的近红外光[3]。该方法具有结构简单的特点,但需避免可见光干扰,鲁棒性不强。王楠[4]利用改进各向异性扩散算法与区域生长法结合,对硅片隐裂进行检测,该方法能够初步达到自动识别的能力,但对微小隐裂缺陷和噪声过多的图像会出现漏判和误判。本文在此基础上,设计了一种基于机器视觉的硅片隐裂自动识别系统。在此基础上,本文根据硅材料对近红外光的反射特性构建了图像采集及其自动化控制系统硬件成像平台,同时在系统图像识别算法部分,通过变异系数法和改进动态阈值法分别构建特征平面以及对该平面上缺陷位置进行定位。
1 系统设计
1.1 隐裂检测工作流程
硅片缺陷检测系统主要由软件和硬件两部分组成,其中硬件部分主要包括图像采集单元和自动化执行单元,软件部分主要负责对带有隐裂的硅片图像进行智能筛选、人机交互以及各执行单元控制信号的传递。检测系统的整个工作流程如图1所示。硅片从上料口由传送带传送至带有接近开关的工位产生触发信号,图像采集卡接收到来自接近开关的触发信号后给线阵CCD近红外相机帧触发信号,并将采集的硅片图像传送给计算机。计算机根据采集到的图像进行计算,作出分析判断后将分选信号传送给PLC,最后由PLC控制分选机械手动作,剔除带有隐裂的硅片。
图1 系统工作流程图
1.2 机器视觉硬件系统设计
对于机器视觉检测系统,成像的质量好坏决定整个系统的检测精度。为了能够提高识别准确率,本文设计如图2所示的机器视觉成像平台。
图2 成像平台示意图
传送机构采用同步带,同步带水平安装在支撑底座上,且同步带之间留有间隙,目的是为了避免近红外光在穿过硅片后被同步带反射回来造成影响。工业相机和镜头作为整个系统的数据采集单元,需要根据检测需求进行选型。一般硅片的尺寸为156mm×156mm,要求检测精度为0.2mm,检测效率为4000 pcs/h,物距在300mm左右。根据线阵相机选型标准[5],选择2k分辨率线阵相机、25mm焦距的镜头。因此本系统选择凌云Lynx-2048-GigE线阵近红外短波相机,帧速可达40kHz。
成像时,光源的主要作用在于增大隐裂缺陷与硅片正常部位之间的成像对比度。本文选用的光源为1300nm的近红外光源,布置在相机一侧对硅片进行斜向打光,斜向角的范围与水平面呈75°~90°。该波段的近红外光在硅材料的特殊晶键结构之间发生全反射,若硅片上出现隐裂的情况,近红外光则会直接穿过硅片,因此缺陷处成像效果相比于正常区域,其亮度较暗。挡板能够降低已通过检测位置硅片因正面反射造成的干扰。
1.3 软件系统设计
本系统软件采用.Net开发平台中winform技术与Halcon图像处理软件联合开发,完成图像处理,人机界面以及数据通信等功能集成。图像处理功能是在Halcon软件中进行编写,导出能够在winform窗体下调用的HDevelopEeport类的.cs文件,并通过C#编程对该文件进行调用。人机界面通过winform窗体中自带的控件对检测结果进行显示。数据通信采用串口通信的方式将分选信号传递给PLC。软件系统工作流程如图3所示。
图3 软件系统工作流程
2 隐裂缺陷检测算法
2.1 图像预处理
本系统由于采用线阵相机作为图像采集单元,采集的硅片图像会存在较多的图像背景部分。为了减少图像背景对识别率及计算时间的影响,需要提取图像的感兴趣区域ROI(Region of Interest)[6]。本文通过数字图像处理的方法对采集到的硅片图像进行预处理。由于图像背景灰度值与被测硅片成像部分相差较大,所以本文选用灰度阈值法中的全局阈值对硅片图像进行初步ROI提取。全局阈值的具体定义如下:
MinGray≤g(x)≤MaxGray
(1)
其中,g(x)为灰度值在MinGray至MaxGray之间的像素点的集合。根据图4所示的硅片图像的灰度特征分布图,MinGray和MaxGray分别取值为30和150。为了防止背景中存在小块亮点的干扰,对g(x)进行联通域分析[7]。根据联通域的面积特征,选取面积最大的联通域的外接矩形作为图像的ROI。 原始图像和ROI图像如图5所示。
图4 硅片图像灰度特征分布
(a) 原图 (b) ROI图像 图5 图像预处理
2.2 隐裂算法设计
对于硅片中的隐裂缺陷,由于工业环境下成像条件的限制,所采集的硅片图像会出现明暗不均的情况,采用目前成熟的边缘检测,固定阈值,最大方差阈值分割[8]等算法满足不了厂家对检测精度的要求。因此,本文提出一种通过分析局部均值和局部标准差的改进动态阈值法。该方法首先需要求取图像的局部变异系数[9],构建特征平面。选用3×3的掩模作为计算变异系数的局部窗口,所以局部变异系数的计算方法为:
(2)
(3)
(4)
式中,Xi代表中心像素点X的8邻域,Meanij(F) 、Devij(F) 、C.Vij(F) 分别表示用局部均值,局部标准差以及局部变异系数的值代替中心像素点后的图像,如图6所示。从以上公式可知,在硅片正常区域,变异系数的值较小,在缺陷区域(灰度值变化较大),变异系数的值较大,所以由变异系数所构建的特征平面能够增强缺陷区域与正常区域的对比度。
(a) ROI (b) 均值
(c) 标准差 (d) 变异系数 图6 特征平面构造
本文所提的改进动态阈值法通过13×13的掩模在特征平面上逐像素进行运算,计算各个掩模覆盖的像素块的平均值和标准差。根据计算结果计算可变阈值,可变阈值可以定义为:
(5)
式中,DevScale为标准差因子,该参数可以调整标准差对局部区域的噪声的灵敏度,该参数不能选择较高或较低的值,否则会导致提取不到缺陷或提取整个图片区域的情况,经本文实验,DecScale可在-1~1之间选取。Absthreshold为绝对阈值,在图像的均匀区域中,标准差很低,因此单个灰度值的影响很大,为了降低标准差在均匀区域中的灵敏度,通过调整Absthreshold可忽略均匀环境中小灰度值的变化。则图像缺陷区域分割[10]为:
(6)
从局部特征来分割缺陷区域和正常区域,可以避免因为图像采集机构所造成的光照不均匀和硅片各部位对光反射率不同造成的成像亮度不均造成的干扰,对微小缺陷和对比度弱的缺陷能够达到较好的识别。检测结果如图7所示。
图7 检测结果展示
3 实验分析
为了测试本文算法的稳定性,利用上海某电池厂家人工挑选出500片带有隐裂缺陷的硅片,其中单晶硅片300张,多晶硅片200张,同时为了验证是否存在过检,加入250片正常硅片。在本文设计的图像采集单元下采集图像数据,并通过在Halcon里对算法参数进行配置,设置标准差因子和绝对灰度值为0.2和20,将算法封装进检测软件。检测结果会显示在如图8所示的人机界面上,系统实物图如图9所示。通过实验,可以得到表1检测结果。
表1 实验结果
可以从表1看出,对于单晶硅片,该类型硅片不存在晶界的干扰,本文算法识别率能够达到100%;对于多晶硅片,由于部分隐裂在硅片晶界中,对算法干扰较大,会造成少量漏检;对于正常硅片,由于切割工艺的原因造成的线痕较深,会造成算法误判。
图8 人机界面
图9 系统实物图
4 结束语
本文针对国内各大光伏厂家对太阳能电池硅片隐裂缺陷检测困难,人工检测效率低、成本高和容易造成新的隐裂等问题,根据硅片的反射特性,利用图像处理技术与自动化控制相结合的方法,研制开发了太阳能电池硅片隐裂检测系统,实现了对硅片隐裂缺陷的实时有效检测。为了能够准确的识别带有隐裂的硅片,设计了结合局部变异系数与改进动态阈值的检测算法。通过实验验证,本文所设计的检测系统检测精度较高,最低识别率达到99%,检测速度优于人工检测,为光伏行业质量检测提供了新的解决方案。