小零件也可应用机器视觉检测机器视觉技术

使用集成到单一系统中的多台相机,实现小零件的检测。

虽然诸如垫圈、螺钉和橡胶垫等小零件的质量可以由人工检查,但这是一项枯燥乏味、且耗时的重复性劳动。而且,这种检查也会因为人眼疲劳而出现错误,同时人工检查也不能高速完成,因此这样的检查任务更适合让机器视觉系统去完成。

 

机器视觉系统除了能更快地执行这样的检查任务之外,还可以对每个零件的多个方位成像,从而确保零件的所有部分都制造正确。为了实现这一点,机器视觉系统需要部署多个成像站点来完成这项任务,这些成像站点通常会采用不同的照明光源、相机系统和镜头产品。

 

机器视觉公司开发出了一套基于旋转台的检测系统来执行这项任务(见图1)。在操作中,零件通过一个振动碗加载到旋转台上,随后零件在旋转台上旋转经过多个成像站点,以检测其顶部缺陷、底部缺陷、内部缺陷和内部缺陷。该系统使用多个视觉检测站点对小零件进行检查,如检查垫圈、螺钉和橡胶垫等产品。

机器视觉

 

图1:为了开发一套机器视觉系统用于检查垫圈、螺钉和橡胶垫等小零件,使用了一个配有三个视觉站点的旋转台。

 

尺寸和表面

当振动碗给料器(VBF)将小零件加载到系统的旋转台上后,系统旋转,将零件送入到成像站点(见图2)。在每个零件旋转时,使用基恩士公司的一个激光位移传感器测量零件的高度,并在经过设定的时间延迟后,触发第一个成像检查站的相机。在这里,检查零件的尺寸。

 

机器视觉

图2:在操作中,零件通过一个振动碗加载到旋转台上,随后在旋转台上经过多个成像检查站点,以检查其(a)尺寸、(b)顶部缺陷、(c)底部缺陷以及(d)内部和周边缺陷。

 

在第一个成像检查站点,在旋转台上方安装了一台Manta G-504 GigE相机,该相机采用2/3英寸2452×2056 CCD传感器,配备Opto Engineering公司的远心镜头。该相机捕获零件的彩色图像,并将图像通过相机的GigE接口传送到系统的主机PC中。

 

接下来,零件被旋转台带到第二个成像检查站点,在这里相机将捕获零件上表面的图像。第二个成像站点同样安装了一台Manta G-504 GigE相机,其配备的是35mm镜头。为了对弯曲表面(常常是高反射的镜面)准确成像,此处采用的照明光源是圆顶灯,安装在接近正被成像零件的上方,以便清晰显现出零件的角度、纹理或形貌特征。

 

不同的颜色
由于被检查的不同零件所反射和/或吸收的波长可能不同,因此,该系统中使用的定制圆顶灯包括红光LED和绿光LED。当零件进入成像检查站点后,随即接受红色光源和绿色光源的漫射照明。
通过这种方式,用红光照亮零件,将反射红色的颜色表面特征,相对的绿色的颜色表面特征将变暗。类似地,用绿光照亮零件,将反射绿色的颜色表面特征,红色的颜色表面特征将变暗。当零件被照亮后,分别在两种不同光源的照射下,各自拍摄一幅图像,然后将这两幅图像组合,并通过相机的GigE接口传送到系统的主机PC中。

另外,该系统还在旋转盘的下方部署了一个相同的成像站点,用于捕获零件底部表面特征的图像,然后传送到主机PC中。

 

零件内部

除了捕获零件的高度信息、顶部和底部表面特征之外,通常需要捕获零件的外表面和内表面的特征。例如,在检查橡胶圈的案例中,须分析零件外表面上的分型线,以及在零件内表面上可能出现的任何缺陷。

 

尽管使用专用的环外侧镜头和折反射环外侧镜头,可以减少执行此任务的相机和镜头的数量,但在一些情况下,这种镜头可达到的分辨率并不足以满足应用对细节的要求。在这种情况下,则需要采用多相机/镜头解决方案。

 

为了在基于旋转台的检查系统中完成零件的内外侧表面检查任务,某机器视觉公司开发了一套专用的成像系统,其使用12台相机来完成这项任务。当零件旋转到该成像系统下时,系统触发6台相机对零件的外表面成像;这6台相机均配备索尼的1600×1200 CCD传感器,与水平方向成60°角安装。与此同时,另外6台配备索尼1600×1200 CCD传感器的相机也被触发,用于捕获零件内表面的图像;这6台相机与垂直方向成45°角安装。随后,由这12台相机捕获的图像通过GigE接口传送到系统的主机PC中。

 

当图像被系统捕获时,它们被显示在平板监视器的图形用户界面上(见图3)。这个界面是使用GTK+编写的,允许用户清晰地看到(从上到下顺时针)零件的尺寸、表面特征、外边缘特征和内表面特征。因此,操作者能在系统处理图像时,看到各个成像站点捕获的图像情况。

 

机器视觉

 

图3:在该系统的设计中,利用Retina库,用监督学习来分析图像。有了这个用户图形界面,操作者看到(从顶部到底部)零件的尺寸、表面特性、外边缘和内表面。

 

监督式学习

该系统并没有使用诸如特征分析等标准的图像处理算法,来检测特定特征以及每个零件的颜色缺陷,而是使用了一种基于C/C ++库的人工智能软件——Retina。与无监督式或半监督式学习算法不同,Retina使用专有算法分析图像,需要操作员使用一组图像培训系统。因此需要配置参数,参数就是用于培训的图像。在这种监督式学习系统中,算法使用输入变量(此处为图像)和输出变量(通过或失败)来学习从输入到输出的映射函数。

 

在该系统中,Retina软件用于处理来自各个机器视觉站点捕获的所有图像。这消除了任何图像预处理阶段,比如用于保持图像所有信息的图像阈值处理。

 

为了培训该系统,培训过程需要使用的零件数量,取决于被检查零件的可变性。对于简单的零件,培训过程大约只需要5个零件;对于更复杂的零件,则培训过程所需的零件数量可能更多。典型情况下,首先要捕获一个对象的大约100幅图像。然后对合格和不合格的零件成像,操作者将其输入系统,对系统进行培训。一旦培训完成,将其他零件呈现给系统,并且系统向操作者查询关于部件的状况,以加强监督式机器学习。

 

零件被分类后,它们将围绕旋转台旋转。为了根据缺陷对零件分类,一个与系统主机相连的PLC,触发吹气阀,从而将零件分别放置到不同的箱子中。通过以不同的方式配置系统,零件可以按照“合格”和“不合格”分类,或者也可以根据检测到的缺陷类型,将零件分别放置到不同的箱子中。在很多情况下,在分类之后,有缺陷的零件可以被再循环或重新生产。