自动锁螺丝机已经被广泛应用,在无视觉的自动锁螺丝机上,很多螺丝由于定位不准,没有被锁上。当然,很多人工锁螺丝的工件上,更加容易出现此类问题。视觉监视螺丝有无锁上,成为很多自动化生产线,特别是无人车间必须解决的问题。
*近,笔者所在公司刚刚完成一个实际的螺丝有无上锁的小CASE,顺便整理出来供大家分享。(注:笔者使用机器视觉大师进行结果重现,用于实际工程的系统是FVS一体式可编程机器视觉控制器系统,两个软件的机器视觉算法是一致和兼容的。机器视觉大师是没有IO通信的,结果无法输出到执行机构。)
工件总共需要6颗螺丝,锁住两个小零件(不知道正确的叫法是什么),螺丝使用内六角扳手。每一颗螺丝都需要被确认锁上,如果任何一颗螺丝掉队,需要系统进行报警,并通知后续工位进行处理。
整个视觉任务要求很简单,就是检测螺丝有无,这种任务如有无,长短,正反,一般当仁不让地使用双态识别算子。是的,就是用双态识别算子,不过,如果要达到可靠的监视功能,还是需要一点点小技巧的,下面跟我一起来学习如果使用双态识别算子实现任意多数量螺丝有无锁上的工程需求吧。
为了节省篇幅,笔者对机器视觉大师的一些基本操作不再介绍,直接进入相关的操作环节。
添加双态识别算子
下面是建立双态算子进行零件监视的过程。
一、点击菜单”控件” ->”定位类”->”双态测量”添加到视场,将算子拖动到零件位置。
二、双击该算子,进行参数设置和模板学习。显示参数设置窗口。
选择模板区形状为环形(注意是环形),并且对称显示。关闭后,重新调整模板和搜索区大小。如下图:
为什么使用环形的模板框呢?这里笔者想重点进行说明。
检测螺丝有无**种方法可以拍摄和学习测螺丝上紧后的状态,然后使用排除法,将其它状态进行
排除,以此判断螺丝是否锁紧,如下图:
第二种方法是拍摄和学习无螺丝的状态,同样采用排除法进行判断螺丝有无锁紧(这种方法是**种
方法相反的情况),如下图:
第二种方法的图像让人看起来更悦目,但是该方法有个缺陷,就是随便有个物体挡住螺丝孔的话都
会产生螺丝已经上紧的误判。
由于螺丝为头部内六角形状,如下图。在螺丝上紧以后角度可能会产生变化,图像可能产生
旋转,如果使用**种方法,将对识别结果产生不利影响。故使用环形模板区,可以直接避
开这种干扰。
三、在“学习”页,点击”学习模板一”进行学习。
四、在”识别”页,选择”平方差”识别方法,*小分数设置为0.9以上。
使用复制的方法,添加其它“双态识别”算子,调整好位置以后,每个算子重新学习一遍。如下图:
编写脚本
点击菜单”模式”->”编辑脚本”, 弹出”编辑脚本”对话框。选择测量类型为“质量检测”。输入判断脚本语句。
(顺便提句题外话:在FVS视觉控制器里面不支持全局good和ng, 可以直接输出信号给外部设备)