基于FPGA技术的旋盖表面缺陷视觉检测系统的毕业设计.docx_第1页
基于FPGA技术的旋盖表面缺陷视觉检测系统的毕业设计.docx_第2页
基于FPGA技术的旋盖表面缺陷视觉检测系统的毕业设计.docx_第3页
基于FPGA技术的旋盖表面缺陷视觉检测系统的毕业设计.docx_第4页
基于FPGA技术的旋盖表面缺陷视觉检测系统的毕业设计.docx_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于FPGA技术的旋盖表面缺陷视觉检测系统的毕业设计目 录第1章 前言11.1 研究背景11.2 系统介绍21.3 基于FPGA图像采集处理系统与基于其他芯片系统的比较21.4 本章小结4第2章 系统方案设计52.1系统框图和方案描述52.2 FPGA硬件结构设计52.2.1 编码模块实现62.2.2 抗干扰模块实现72.3 CCD相机的选择72.4 光源的选择82.5 本章小结10第3章 系统软件结构设计113.1 系统通信模块设计113.1.1 CCD与计算机通信123.1.2 FPGA与上位机的通信123.2 存储器模块133.3 控制模块133.4 本章小结14第4章 缺陷检测设计及实现154.1 旋盖位置检测154.1.1确定流水线旋盖位置154.1.2旋盖配准检测164.1.3旋盖灰度化与边缘提取164.2 缺陷检测设计174.2.1 注胶面检测和盖爪检测174.2.2 印刷面缺陷检测194.3 本章小结19第5章 时序仿真以及检测测试215.1 FPGA模块时序仿真215.1.1编码模块仿真215.1.2抗干扰模块仿真225.2 缺陷检测仿真235.3本章小结25第6章 总结与展望266.1 总结266.2 展望26参考文献28致谢30第1章 前言随着工业自动化的到来,科学技术的不断发展,对产品的质量要求越越来越高,质量不仅代表公司的形象,而且更是赢得市场的首要条件。而对产品的质量更加有效以及快速的实时检测成为一个重要的研究课题。传统检测是检测人员通过肉眼来进行筛别,但是这种检测方法存在着许多不足:(1)检测结果容易受到检测人员的主观因素影响;(2)检测效率比较低;(3)微小缺陷不易查别;(4)检测标准不一致;(5)对瓶盖产品造成二次伤害; 本课题针对旋盖生产中的旋盖缺陷检测进行了研究,该旋盖缺陷视觉检测系统,可对流水线生产旋盖进行缺陷检测,该系统可选择缺陷类型并对其检测标准进行参数设定,在硬件上选用稳定的LED光源照射以及地变形率的百万像素彩色工业摄像头,对待检测产品进行图像采集,并与检测标准图相对比判别是否为缺陷产品,并挑选、剔除不良产品。可进行产品的计数(良品、不良品、总数等数据)。高效快速的进行产品的标准检测,提高产品的检测效率。1.1 研究背景 目前大多数瓶盖生产企业采用人工进行旋冠盖的质量检测。人工费用越来越贵已经是不争事实,采用本系统能有效减少质检人工,保持检测的高效准确。面对市场上的几种旋盖缺陷检测系统的不足,结合实际的工业需要,我们提出了基于FPGA的旋盖表面缺陷视觉检测系统,以满足旋盖生产企业的缺陷检测要求,使得生产效率大大提高,检测效率也大大提高。1.2 系统介绍本系统用于旋冠盖质量检测,由瓶盖传送带、光学传感器、CCD摄像头、照射光源、信号处理卡、计算机组成。CCD摄像头固定于传送带的正上方,照射光源置于传送带的上方,把光学传感器置于摄像头正下方的传送带旁,来用于检测摄像头正下方是否存在瓶盖以及瓶盖的位置,当光学传感器的检测信号触发摄像头,并采集位于其正下方的传送带上的瓶盖的图像,通过以太网接口将采集到的图像数据传送到计算机内,计算机则进行瓶盖表面的图像数据分析处理,如若遇到有瑕疵的瓶盖产品,计算机将记录的信号数据传输给信号处理卡,信号处理卡即作出相应的信号输出,即控制流水线上的剔除装置,将有瑕疵的瓶盖剔除。另外,本系统能有效降低由于环境或者其他因素导致的亮度、对比度以及质量等图像变化的影响,可以实现实时瓶盖质量的高速在线检测,以及对于瓶盖良品、不良品的统计。本系统在实现缺陷检测方面运用较为先进的算法,大大提高了数据处理的运算能力,并且算法的性能比较优越,基本实现了设计的要求。1.3 基于FPGA图像采集处理系统与基于其他芯片系统的比较 目前市场上的图像采集与处理系统的核心器件,一般选用的核心芯片通常为FPGA,或者为数字信号处理器(DSP,Digital Signal Processor)和专用集成电路(ASIC,Application Specific Integrated Circuit)芯片。DSP作为数据信号处理的主要芯片,是由通用CPU发展而来的,但是DSP提高了硬件的结构的发展和指令集结构发展。DSP芯片在数字信号处理滤波器,卷积和FFT重复的乘法和加法运算方面做的较好。对于DSP一些显著的特点,大概可以总结出以下几方面:硬件乘法器,和更多功能单元,精简指令集,总线结构,其特有的寻址单元,存储器,流水处理。硬件乘法器,乘法运算直接实现;多功能单元,实现CPU多功能单一的并联运行单元,包括ALU,乘法器,地址发生器,使DSP能够在相同的时间内完成更多的操作,为了提高程序的速度;精简指令集,有利于DSP的结构简化和减少总线结构的成本,对DSP总线和数据总线的程序,也可以接受指令和操作数,不同于传统的CPU使用统一的进程和地址空间的冯诺曼结构,共享程序和数据总线;特殊寻址单元,DSP地址发生器,在平行的ALU操作,地址运算不额外占用CPU时间,内存,存储;放电参数和数据,解决竞争和访问外部内存总线速度不匹配的问题,访问速度,缓解了DSP数据瓶颈;流水处理,即对多个不同的操作进行重叠的执行,从而提高了DSP程序的运行效率。 基于FPGA图像采集与处理系统的核心器件,与传统的DSP图像采集处理系统进行比较的基础上,结合FPGA和DSP的硬件结构特点,都具有各自的应用领域。针对两种芯片的不同应用领域的图像处理算法的角度进行了分析,从而根据图像处理算法的计算的复杂性和算法进行分类。 从总体性能上分析,进行实时图像采集以及对所采集的图像进行分析、处理对整个系统性能的要求特别高,进行处理的数据流量一般情况下也比较大,所以几乎所有仅具最简单功能的通用的DSP都不能在图像采集以及分析处理系统中达到所需要的的性能要求。然而,可编程逻辑器件FPGA允许系统设计人运用并行处理的技术方式来实现图像信号采集及处理分析的算法,并且仅仅需要单个的逻辑器件就能实现设计所要求的性能。基于DSP的处理方案采用的是DSP处理器拥有高度的流水线化的并行处理方式,在特定算法上处理速度会很快,但是其优化运算固定且有限,并且指令执行的顺序性不能为许多算法提供设计要求所需的高性能。通常还需要在单块线路板上嵌入多个DSP处理器来满足高性能的要求,以得到必需的并行处理能力,这必将增加程序资源的开销以及数据存储器资源的开销。 由于标准的DSP处理器在自身性能上存在的缺陷,从而在某种程度上促进了专门解决这种性能缺陷的ASIC设计芯片的蓬勃发展。但是,这些器件往往存在较低的灵活度,反而使其局限于非常有限的领域,因此,鉴于FPGA芯片与ASIC芯片相比的很大的优越性,从而基于FPGA的应用方案得到了广泛的应用与发展。尤其在需要处理高分辨率系统设计中,基于处理器的解决方案受到的限制特别明显。一般来说,处理器的分辨率受限于分配给滤波器的每个抽头或者在每个转换阶段的时钟周期的数目。在DSP为核心芯片的设计方案中如需达到极限条件,则往往除了增加额外的DSP部件之外别无选择。相比而言,FPGA芯片可以通过定制调整提供最具实用价值且性能高、效率高的产品。其设计人员可在适当的范围和速率之间进行适当的考虑,从而可以通过比DSP时钟低很多的速率来实现设计期望所指定的功能。除了拥有并行处理能力的优势之外,优秀的FPGA设计方案还可以实现处理计算量较大的高端的DSP算法,同时还可以提供可编程逻辑方案所特有的灵活性的特点,以及拥有专用定制的门阵列(如ASIC)解决方案所具有的较高性能和集成度。在Altera库中,大多数标准DSP功能都能以可以进行参数配置的DSP核的形式实现。基于FPGA的算法往往具有专用集成芯片的运算处理速度,可以满足高速图像进行处理的需要;由于FPGA系统现场可编程,使检测系统具有良好的灵活性,满足不同的检测需求;当前,FPGA的编程技术日趋发展成熟,其FPGA算法实现也较为简单,编程容易,具有很好的可移植性和继承性的特点。 随着电子自动化的发展,以及业界的积极推动和高质量视频开发以及压缩格式的不断改进优化,对与图像采集并进行处理系统的运算速度的要求也在不断提高。由于FPGA工艺的发展同样遵循摩尔定律,因此在越来越多的图像采集和处理系统中,越来越多的FPGA芯片得到广泛的应用,基于FPGA核心的处理系统以更具吸引力的低成本的优势实现了传统DSP系统所实现的相同功能以及性能。 因此,结合当前图像采集处理系统的现状,针对旋盖生产过程中检测过程的特点,我们采用FPGA芯片作为核心器件来代替DSP芯片或者ASIC芯片来实现图像采集处理以及进行在线检测,研发出基于FPGA的旋盖表面缺陷在线视觉检测系统。采用FPGA作为核心芯片来搭建系统,使该系统设计具有较大的灵活性,可以为以后进一步实现现场编程更改设计要求,还能使用FPGA实现对外围逻辑的控制,以提高检测系统的集成度。1.4 本章小结 本章简单的介绍了基于FPGA的旋盖表面缺陷检测系统的整体构架以及各模块的一些功能设计要求,并详细分析比较了当前市场上已经形成检测能力的集成检测系统,比较了几种市场上较为流行的图像处理系统的核心器件如DSP、ASIC、CPLD等等,详细分析比较了它们的具体结构和性能。第2章 系统方案设计2.1系统框图和方案描述该系统用于旋冠盖质量检测,由瓶盖传送带、光学传感器、摄像头、光源、图像处理卡、计算机组成。摄像头固定在传送带的正上方,光源置于传送带的上方,光学传感器置于摄像头正下方的传送带旁,用于检测摄像头正下方是否存在瓶盖,由光学传感器的检测信号触发摄像头采集位于其正下方的传送带上的瓶盖的图像,所采集的瓶盖图像被送入计算机内。具体框架实现如图2-1所示。 图 2-1 系统总体框架图系统的运行方式为:首先通过CCD相机采集到需要要检测的图像数据,经过图像信号采集卡进行A/D转换之后通过PCI总线传输到PC机中。PC机通过与FPGA上的进行串口RS-232通信协议从而将所采集的图像数据传输到FPGA硬件系统的存储器中,再经过FPGA硬件平台上的图像处理算法实现对图像数据的处理之后,将处理后的数据结果通过再串口传输到PC机上。在工业运用上,可以将图像采集后得到的图像数据直接传输到所搭建的FPGA硬件系统上进行图像数据处理。2.2 FPGA硬件结构设计在该系统中,通过编码器对流水线上的旋盖进行信号采集,并输出两路编码信号(A,B)给FPGA信号处理卡,信号处理此卡对此两路编码信号进行解码处理,以此得到传送带上旋盖的位置坐标。得到的坐标数据利用FIFO技术进行数据队列化处理旋盖通过FPGA技术进行传送带上旋盖位置坐标的编码以及解码,并利用FPGA中的FIFO技术对所采集的旋盖坐标信号进行队列化,将处理信号输出给PC机进行处理,来判断是否为需要剔除的旋盖,并反馈信号给FPGA控制剔除装置对有缺陷旋盖进行剔除。具体FPGA内部实现框架图如2-2所示。 图2-2 FPGA硬件模块内部实现框架图 2.2.1 编码模块实现该系统采用增量式旋转编码器来检测传输带上盖子的位置,该编码器通过处理内部接受管转化其角度码盘的时序和相位关系,得到其角度码盘角度位移量增加(正方向)或减少(负方向)。增量式编码器转轴旋转时,有相应的脉冲输出,其计数起点可任意设定,进而实现多圈无限累加和测量。编码器轴转一圈会输出固定的脉冲,脉冲数由编码器光栅的线数决定。当检测需要提高分辩率时,可利用 90 度相位差的 A、B 两路信号来进行倍频或更换高分辩率编码器。 如图2-3所示。 图2-3 编码原理图2.2.2 抗干扰模块实现本模块通过徘徊计数器对输入信号进行计数,当计数超过10次,输出才变化。输入信号检测周期由iClk1控制。该模块能有效滤除输入信号中的干扰。该模块具体通过利用FPGA在信号异步输入,同步输出的方法进行了信号的抗干扰扰。2.3 CCD相机的选择CCD,英文全称:Charge-coupled Device,即电荷耦合元件,也被称为CCD图像传感器。CCD本身是一种半导体器件,它能够把光学影像转化为数字信号。 CCD上面植入的微小光敏物质被称作像素(Pixel)。也就是说一块CCD上包含的像素数越多,其提供的画面分辨率也就越高,图像的质量也就越高。具体来说,CCD的作用就像相机的胶片一样,但是,它是把图像像素转换为数字信号。另外,CCD上有许多排列整齐的电容,并且能感应光线,将影像转变成数字信号。然后通过外部电路的控制,它的每个小电容都能将其所携带的电荷转移给它相邻的电容。CCD作为一种光数转化的半导体元件,当前在工业检测领域,CCD相机得到了广泛的应用。从结构上划分,CCD芯片结构分为线阵CCD和面阵CCD。其中面阵CCD主要用作于彩色或者黑白摄像,而线阵CCD在非接触的光电检测方面应用的比较广泛。该系统的图像采集装置则是采用了德国Basler公司的线阵CCD相机作为采集光敏器件,如图2-4 CCD相机。 图2-4 CCD相机现在来具体分析一下该相机如何得到具体参数信息。当然不同的CCD芯片,其具体芯片规格的确定以及使用,我们可以从下面的分析中计算出符合使用的CCD的型号和配套的相机镜头的焦距。首先,相机的视场(FOV)必须大于或者等于待被测物体或需检测的物体部位大小。我们假定CCD芯片的像元大小为P(m),用R(m)表示CCD的分辨率,假设CCD芯片的成像部分边界长是L(mm),其水平视场为FOV (mm),系统的放大率是M,对物体的分辨率是R(obj),经过计算可知: CCD的分辨率R为: (式2-1); 系统的分辨率M为: (式2-2); 对物体的分辨率为: (式2-3); 则CCD芯片的长为: (式2-4);2.4 光源的选择CCD相机若能正常工作则需要可靠地光源,所以光源的选择有很大的影响,在不同程度的光源下,CCD相机的具体性能是不相同的,因此当我们在作图像采集的时候,必须要用符合工作要求的光源照射,才能使得CCD相机发挥最好的性能。在本系统中对瓶盖进行光照分为两种,在对瓶盖的印刷面进行光照的光源为LED环光照射,而在对瓶盖注胶面的光源为球积分光源,所以,相机的成像比较良好更有利于进行图像数据的分析。主要光源类型和特点如下表2-5所示。表2-5 光源比较日光外部环境影响较大,不适合做机器视觉光源。钨光灯光照度不均匀,容易产生较多的热量。荧光灯光谱的分布存在问题,可产生较稳定的照度场。 LED(1)即时起作用,没有惯性大范围进行光强控制,适用于频闪观测应用。(2)当二极管通常排列成矩阵或环状,可作为光纤系统的供给光源。(3)具有单色特性。(4)价格合理,体积小,重量轻,使用寿命长,并且产生热量少,在机器视觉中应用广泛。 激光光强高,且彩色并且相干,可以作为光纤系统光源 球积分光源不会对输出的光束强度和均匀度造成影响。可降低测量时因探测器上的入射光源不均匀分布或光束偏移所造成的微小误差,因此可以提高测量的准确度。 LED 环光 1、没有频闪:LED灯为纯直流供电,无频闪,亦不会对设备(如示波器)产生谐波的干扰。2、光照均匀:LED无影灯是360均匀的照射在被观察物体上,虚影不会产生,而且清晰度高。3、工作寿命长:LED无影灯由于发热量低、工耗小(低电压、低电流起动)平均寿命大于35000个小时.4、消除隐患:若使用宽频AC 100240V输入的控制电源,则可完全杜绝由于电压接错而烧毁灯管的隐患。5、环保安全:耐震、耐冲击、不易破损,更没有汞污染,是真正的环保产品。6、亮度可调:0-100%线性亮度调节,达到最佳视觉效果同时也减轻作业疲劳。工业照明技术如图2-6所示。图2-6 工业照明技术示意2.5 本章小结本章主要描述对旋盖缺陷检测系统框架的方案设计,并对FPGA模块进行了内部框架的分析和设计,其中对其编码模块和抗干扰模块进行了简要的涉及描述。本章在硬件的选择方面主要参考了设计要求,包括对相机的选择、光源特点的分析与选择等等。第3章 系统软件结构设计该系统大体可以分为以下的几个模块:(1)图像采集模块;(2)通信模块;(3)算法模块;(4)控制模块;(5)存储器模块。具体模块间的联系与结构设计如图3-1所示。3-1 系统软件结构图 在该系统中各个模块组成了系统的整个架构,下面就各个模块详细分析一下设计思路和实现方法。3.1 系统通信模块设计在该系统的通信模块中实现了相机与计算机之间的通信模块以及FPGA和上位机之间进行数据通信模块。其中相机与计算机之间的通信是通过以太网协议来进行的通信的,该系统在FPGA和上位机通信方面采用的是RS232通信协议,当通过RS232通信协议数据传输时,其数据格式为一位起始位、八位数据位以及一位停止位,进行通信的接口则使用FPGA开发板上的简单串口就可以完成设计要求。3.1.1 CCD与计算机通信由于我们采用的为工业级的相机进行对瓶盖采集图像,像素达到了130万,所以对于将要传输的数据量比较大,传输速度要求较高,所以本系统采用的为以太网接口与相机相连。由于以太网为最为广泛的计算机网络技术,且支持广泛的编程语言编程,此外以太网通讯速率高以及资源可共享,可以对所采集的图像可进行保存。目前,10、100 Mb/s的快速以太网已广泛应用各个领域,而且1Gb/s传输速率的以太网技术也越来越成熟,但是传统的现场总线最高传输速率也只有12Mb/s而已。显而易见,以太网的速率要比传统现场总线要快的多,也就是说完全可以满足工业控制网络不断增长的带宽要求。所以,选用以太网作为相机与计算机处理的通信协议。3.1.2 FPGA与上位机的通信 1)异步串行发送当异步发送模块读取到一个8位的数据到寄存器中时,通信模块将该数据进行串行化。当电路中TxD_start信号到来时将读取到的8位数据串行发送到TxD。当一个8位数据在发送的过程中,busy信号即为有效,此时的TxD_start信号则被忽略掉。随后 8位的数据信号、起始位信号以及结束位信号按顺序依次发送,在本项目的编程代码中使用状态机来具体实现,其中CLK为系统时钟,BaudClk为波特率时钟。 2) 异步串行接收收到8位数据以及结束位后rx_data_ready,信号使能。这时我们需要解决的问题是对开始位的检测以及过滤掉有误的开始位,这样接收状态机才能进行工作。为了保证任意一个开始位被检测到,系统所采用的过采样。过采样就是用波特率的N倍频率来进行采样,这样就能保证在任意一个开始位到来时可以使被采样模块检测到N次。在本文中采用了8倍波特率的采样频率。在该电路中如果有毛刺信号的干扰,那么就会导致误判起始位,为了解决干扰的问题,本文采用多次采样表决的方式,多次表决就是当在某个采样周期检测到数据的一个起始位后,系统不是马上判定为一帧数据到来,而是对该信号进行多次采样,只有连续多次检测到起始位才认为是一祯数据的开始,本文采用4位表决。 3) 异步数据传输的速率 异步数据传输的速率与传输的波特率有很大关系。波特率就是每秒传输数据的位数。而对于RS232的串口,其波特率不能随意的进行设置,只能使用标准的波特率,如4800,9600, 115200等。若要在FPGA上实现串口通信,首先必须解决的问题就是波特率的实现。我们采用FPGA的开板上50M晶振,所以要实现以上介绍的几种波特率并非轻而易举。本项目采用了一个参数化的FPGA波特率生成器。如图3-2所示。 图3-2 通信协议外部接口 图3-3 双端口RAM模块图3.2 存储器模块在项目中我们采用了FPGA默认的片内RAM。该模块采用Verilog HDL语言实现了一个片内的8位RAM,可存储40%个单元。FPGA的片内RAM包括分布式RAM和嵌入式RAM(即BRAM)两种;而从端口数上又可分为双端口RAM和单端口RAM。本文用FPGA开发软件Quartus II 13.0 的IPCore生成工具实现了一个双端口的RAM,双端口的RAM模块和其外部信号接口如图3-3所示。3.3 控制模块控制模块CA(Control automation)处于顶层模块,它所负责的是对整个FPGA模块处理流程的控制执行,在该系统中控制模块的功能主要在于对各路所采集到的信号进行判断并作出相应的动作。3.4 本章小结本章对实时图像处理检测系统的整体框架进行描述,将整个系统分为图像采集模块、通信模块、存储器模块以及控制模块等模块,来进行模块化设计。详细阐述了硬件实现的过程及实现过程中注意的要点。在本章节中选取的各个模块都进行了详细的分析论证,以充分满足设计的要求,无论是硬件的选取或者软件结构上的设计均与其他市场同类设计进行了详细的比较。虽然涉及的方面比较广泛,但都对其进行了较为详细的参考论证。第4章 缺陷检测设计及实现为提高旋盖表面缺陷检测的高效以及准确率,对旋盖进行了注胶面、盖爪以及印刷面的缺陷视觉检测系统的设计以及实现。通过对图像进行灰度化处理,确定图像处理的窗口,利用Sobel算子和Kirsch算子进行细化边缘提取,确定旋盖中心点找出旋盖检测半径,并提出利用灰度图像处理和边缘检测算法在缺陷以及非缺陷交界处的突变变化,检测为缺陷点,经实验检测表明,该系统能够准确的检测出旋盖的表面缺陷包括印刷面的缺陷以及盖爪缺陷。该系统基于FPGA技术,通过对流水线上旋盖位置进行坐标定位,利用FPGA中的FIFO技术对旋盖进行队列化处理,并结合PC机的缺陷检测处理信号,触发FPGA控制信号,剔除装置对缺陷旋盖进行剔除。 4.1 旋盖位置检测4.1.1确定流水线旋盖位置由于旋盖流入传送带的速度以及位置远近不同,所以我们要对传送带上的旋盖位置进行确定,摄像头固定在传送带的正上方,光源置于传送带的上方,光学传感器置于摄像头正下方的传送带旁,用于检测摄像头正下方是否存在瓶盖,由光学传感器的检测信号触发摄像头采集位于其正下方的传送带上的瓶盖的图像。具体流程图如图4-1所示。 图4-1 确定旋盖坐标流程图4.1.2旋盖配准检测由于旋盖在流入流水线的时候,摆放姿态并不相同,这样就导致了检测标准的匹配难度增大,对于这种问题的出现,本系统采用的方法如下:在注胶面检测时,首先,相机采集到图像之后并对其进行了灰度图处理,由于旋盖的大小一定且盖爪数量一定,当确定盖爪图像后自动进行与系统所设置的标准放置位置匹配,进行位置的配准。而当进行印刷面的检测时,则是通过灰度化的图,根据亮度的不同设置一个亮度提取分界线,然后与系统所设定的标准亮度区域进行面积比对,然后进行位置配准,以完成剩下的缺陷识别。如图4-2所示。 图4-2 旋盖配准流程4.1.3旋盖灰度化与边缘提取由于旋盖的大小标准一定,以及盖爪的数量一定,所以可以将这些作为识别特征点。首先,相机采集到的图像为高分辨率的彩色图像,若要进行缺陷识别,则必须将旋盖彩色图像进行灰度化处理,通常可用的方法为:彩色图像的灰度处理: 设f(i,j)的RGB分量为(r1, g1, b1),r = r1 / 64 * 64 g = g1 / 64 * 64 b = b1 / 64 * 64 ,这样就得到了黑白图像。若要确定旋盖的检测区域,则需要确定旋盖的边缘。由于物体的边缘是由灰度不连续性所导致的的。而我们常见的边缘是阶跃性边缘,阶跃性边缘两边的图像像素的灰度值会有明显的不同,并且在其二阶方向导数在边缘处呈零交叉现象,因而可以用微分算子来进行边缘检测的算子。这种微分算子类边缘检测法类似于高空间域的高通滤波,该算法增强了高频分量,并且这类算子对噪声敏感性高。在边缘检测中通常可用的算子有梯度算子、Sobel算子和Kirsh算子。在本文中,采用了Sobel算子寻找边缘并进行边缘化提取处理。对于数字图像的每一个像素f(i,j),考察它的上、下、左、右邻域灰度的加权值,通过把各方向上(0、45、90、135)的灰度值加权之和进行计算处理作为输出,就可以达到提取图像边缘的效果。 即: (式4-1); (式4-2); (式4-3);取适当的域值T,若g(i,j)T,则(i,j)为阶跃性边缘点。边缘求出后就可以进行旋盖监测区域的确定。如图4-3所示为得到的图像。图4-3 旋盖边缘测定采集图像4.2 缺陷检测设计4.2.1 注胶面检测和盖爪检测由于注胶面的区域的正常部分和有缺陷的部分的光的反射率不同,往往有很大的差异。当进行灰度化处理之后,旋盖的正常部分和缺陷部分的亮度会有很大的差别,因而可以对缺陷进行检测。一般灰度图像矩阵元素的取值范围通常为0,255。由此看来,其图像矩阵数据类型一般为8位无符号整数的(int8),这就是人们经常提到的256灰度图像。其中,“0”表示纯黑色,“255”表示纯白色,中间的数字从小到大表示由黑到白的过渡色数值。进而通过进行灰度检测和边缘检测来确定注胶面是否有缺陷。在对盖内注胶面检测的同时,系统对旋盖盖边进行爪定位匹配和数量大小匹配,通过边缘提取与模板进行配准以达到盖爪质量缺陷的检测。注胶面和盖爪检测流程图如图4-4所示。图4-4 注胶面检测流程图注胶面具体缺陷类型有脏点、气泡等类型,具体实物如图4-5所示。图4-5 注胶面具体缺陷类型旋盖盖爪缺陷类型有大小不一、盖爪缺损、盖爪数错、盖爪角度错等类型,具体实物如图4-6所示。图4-6 旋盖盖爪缺损类型4.2.2 印刷面缺陷检测 对印刷面的检测方案,由于印刷面的图案较为复杂,且对比度比较复杂,因此在生成灰度图的过程中若用注胶面得检测方法的话容易产生极大的误差。就这一问题,本系统采用的另一个图像识别方法,首先进行灰度的检测,然后进行边界检测,在与标准的瓶盖印刷面的瓶盖进行配准检测和位图检测,从而确定印刷面的图案位置是否符合标准,此检测方法允许一定的检测误差。由于旋盖的图案较为复杂,也是本系统设计的一大难点,对于旋盖印刷面的检测,其具体检测流程图如图4-7所示。图4-7 印刷面检测流程印刷面的主要缺陷类型有瓶盖图案套印、位置错误、图案面脏污等类型,具体实物为如图4-8所示。图4-8 印刷面缺陷类型4.3 本章小结 通过进行详细的观察以及论证,确定该系统进行缺陷检测的具体流程,对旋盖表面的多种不同缺陷类型进行检测,采取了适当的设计方案和较好的算法处理。具体阐述了检测的原理以及缺陷检测的标准,可以完全胜任的对于表面缺陷的检测任务。在本章中,运用到了许多的检测方法以及先进的检测算法。第5章 时序仿真以及检测测试 首先由于在该系统中运用了FPGA控制模块,因此主要对编码模块和抗干扰模块进行了电路仿真,以验证是否符合设计要求。其次,通过缺陷检测系统进行了流水线在线安装,并对其进行了旋盖表面的实物检测。5.1 FPGA模块时序仿真5.1.1编码模块仿真该系统采用编码器来检测传送带上的旋盖位置,并把旋盖的坐标信息传送到FPGA板卡,通过FPGA的FIFO 技术把坐标信号队列化,进行储存,并与计算机通信。当计算机对旋盖进行缺陷检测完毕后,就把相应的信号即是否为缺陷旋盖的坐标信号回送到FPGA中,FPGA信号处理卡则控制剔除装置对旋盖进行剔除的选择。所以编码器的代码设计如下:Module OpticalEncoder( 时钟信号端口iClk;重置信号端口iReset;使能信号端口iEnable;两路输出信号Encode0:1;一路输入信号INput;输出频率信号oTick ; ); always(时钟上升沿触发或者重置下降沿触发) 初始化设置; 数据二级寄存器储存;/对信号的状态进行采集。 对采集的信号状态变化进行判断; 转化相位关系; 转化时序关系; 输出相应的频率; Endmodule 编码器转轴旋转时,会有相应的脉冲输出,其计数起点为任意设定,可实现多圈无限累加和测量。编码器轴转一圈会输出固定的脉冲,脉冲数由编码器光栅的线数决定。需要提高分辩率时,可利用 90 度相位差的 A、B 两路信号进行倍频或更换高分辩率编码器。5.1.2抗干扰模块仿真该模块的作用为通过徘徊计数器对输入信号进行计数,当计数超过10次,输出才变化。输入信号检测周期由iClk1控制。该模块能有效滤除输入信号中的干扰。 抗干扰模块代码设计为:Module PreventShake( 时钟信号 iClk1; 时钟信号 iClk; 输入信号iport; 输出信号oport; );always(时钟信号iClk) 初始化信号; 输入信号iport; 设置信号检测周期iClk1;/计数超过10,输出信号有变化。 输入信号消抖滤波;/对信号进行周期性的检测,防止输入信号误触发。 输出经过滤波的信号oport; Endmodule 其仿真效果如图5-1所示。图5-1 抗干扰时序仿真在图5-1中,进行了信号检测抗干扰的仿真,其中设置iClk为50MHZ即时钟周期为10ns,而设置iClk1的检测信号时钟周期为200ns,通过设置iport信号的频率可以测试出当计数超过10次输出信号才会有脉冲输出,当设置iport信号频率使得计数小于10的时候,oport信号没有脉冲输出。充分证明了该模块的功能达到了设计的要求。5.2 缺陷检测仿真该系统可以通过对缺陷检测系统的操作界面进行参数的设置,来制定剔除标准。如图5-2所示,为主要的参数设置界面。 图5-2 系统参数设置界面在该界面可以进行一种或多种缺陷类型的设定,包括对注胶面、盖爪、印刷面等等的缺陷的标准设定。如图5-3为系统实时进行对流水线上的旋盖注胶面和印刷面的检测参数设定。 如图5-3 实时检测旋盖注胶面和印刷面的缺陷在图5-3中,左边为进行注胶面的测试图,右侧为对印刷面的实时检测图,同时可以对注胶面和印刷面的缺陷检测进行参数修改,并实时观察修改后的参数标准所检测的结果。如图5-4,5-5分别为该系统对注胶面和印刷面进行参数修改产生的检测结果。图5-4 注胶面检测参数修改实时观测图图5-5 印刷面检测参数修改实时观测图5.3本章小结本章通过对FPGA模块中的编码模块和抗干扰模块进行仿真,达到了预期的设计效果,能够准确的获取旋盖在传送带上的坐标信息并对多路信号进行抗干扰处理,能过得到较为准确的检测信号。本章还进行了系统的操作界面进行了检测测试,通过修改检测参数,来确定旋盖的剔除标准,并在流水线上进行了实物检测,检出率达到了98.75%的检出率,基本实现了设计要求。第6章 总结与展望6.1 总结 本文首先介绍了FPGA的发展现状,并且分析了FPGA作为主要的数据分析处理的硬件的优势与特点,提出了基于FPGA的旋盖表面缺陷的在线检测系统的设计与实现。并且结合实时图像处理系统的特点和FPGA应用技术,我们根据实时图像处理系统的设计要求,主要就工业实时图像表面缺陷检测处理系统的开发过程进行了论述,设计并实现了基于FPGA的旋盖表面缺陷检测系统。归纳起来,本文完成的主要工作有:(1) 查阅了大量的有关文献文献,同时了解实时图像处理系统的技术原理以及缺陷检测的具体实现方法,据此设计了适合本系统的基于FPGA的表面缺陷实时检测处理系统的整体设计方案以及对硬件的选取。(2) 对Altera公司的FPGA芯片的逻辑结构、FPGA开发流程以及相关开发仿真工具进行学习以及使用,并且利用硬件描述语言来进行设计实现系统功能。(3) 对整个缺陷检测系统进行了模块化划分,以及对系统的方案实施采取了较为优秀

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论