拼接类木制玩具一般使用刀模在一块小木板上进行冲切成型,随着加工次数增多,
很多小零件在冲切以后可能自行掉落。这样会造成两个后果:1. 零件缺失,无
法做成完整产品。2. 如果零件较大,掉落在工作台上以后,可能造成下一次冲切
的时候,影响冲切质量,甚至损坏刀具。因此,在产品冲压以后,机械手自动取
出产品之前,必须监视有无零件脱落,如有情况,即时处理,保证生产顺利进行。
下图是常见的一种冲压后的木制玩具产品的半成品
下图是一块零件脱落以后的图。
这块零件如果脱落的话,不但因缺少零件而报废一个产品,而且,可能对刀具产生
恶劣影响。
当然,不是所有的一些小零件脱落都可能需要报警,如图:
这个小块不是产品零件,只是一个大零件切割后的一种余料而已,而且尺寸不是很大,对刀
具影响不大,脱落以后可以不进行报警。
解决方法初探
使用机器视觉大师监视这类的产品异常有不少方法,其中一种方法可以使用BLOB算子对整个
原料木板区域进行分析。 根据每个BLOB的大小进行筛选,去掉一些小的零件。
这个方法有个严重缺陷,当原图很大且零件比较多的时候,比较耗时。
另一种方法可以使用双态识别算子对每个零件进行单独监控,只要有一个零件进行掉落,就
会相应的双态识别算子检测到,监控可以做到无遗漏。这种方法需要根据零件数量建立很多算子,
当然也是比较麻烦。不过,我们可以通过复制粘贴的方法进行快速处理。
笔者仅介绍如何使用双态识别算子进行零件脱落监视的操作过程。
上图为产品放在简易平台上相机拍摄的图像,本文介绍的测试条件就是这样恶劣。
注意:由于平台非常简陋,为了放置手工方便,特意在右上交画了一个小三角,以
区分方向防止下次放反,在自动化设备上,这个不是必须的。
添加双态识别算子
下面是建立双态算子进行零件监视的过程。
一、点击菜单”控件” ->”定位类”->”双态测量”添加到视场,将算子拖动到零件位置。
二、双击该算子,进行参数设置和模板学习。显示参数设置窗口。
选择模板区形状为圆形,并且对称显示。关闭后,重新调整模板和搜索区大小。注意,一定要
尽量使搜索区在零件图像范围内。如下图:
三、在“学习”页,点击”学习模板一”进行学习。
四、在”识别”页,选择”平方差”识别方法,最小分数设置为0.9以上。
按照上面的步骤,或使用复制的方法,添加其它“双态识别”算子。由于木板上零件太多,
本次设计仅添加三个算子分别对三个零件进行监视。如下图:
编写脚本
点击菜单”模式”->”编辑脚本”, 弹出”编辑脚本”对话框。选择测量类型为“质量检测”。
上面的语句解释如下:
如果视场2里面三个双态识别算子的检测结果为0,那么将系统变量good设置为1,
ng设置为0,表示这次检测是没有脱落的,否则只要其中一个检测算子不为0,表示
其中的一个零件已经脱落,则good变量为0,ng设置为1。
语句sight2.dual1.res表示为视场sight2的算子名称为.dual1的检测结果。由于我们仅对模板
一进行学习,该默认结果索引值为0(从0开始计)。如果结果为0,表示学习的模板一有检测
到,该区域是正常的。
质量检测类任务支持2个系统变量:good和ng,具体如下:
变量名 | 说明 | 类型 |
good | 合格标记 | 布尔(1为真,0为假) |
ng | 次品标记 | 布尔(1为真,0为假) |
注意:视场名称为sight2是因为本地电脑有两个相机,笔者只用其中一个名称为sigh2的
相机视场进行演示
检测运行
点击菜单”相机”->”测量运行”,进入检测状态。放置工件到视场位置(注意不要与学习时候的
工件位置相差太大, 2-3毫米偏差是没有问题的),然后点击”下一个”按钮完成一次自动测量。
分别将三个零件拆下和恢复模拟两次监视,总共7次模拟检测(最后一次拆下两个零件,没有做恢复测试),
结果记录如下:
合格字段数据值如果为1,表示当此记录的产品无脱落,否则次品字段的数据将为1,表示有脱落。
实际应用建议
机器视觉大师并没有数字IO,无法进行结果输出到外部执行机构(即时专享版也不行),在
实际的全自动控制系统里面是无法应用的。 实际的控制系统建议使用FVS一体式可编程
机器视觉控制器实现本文阐述的监控方法。FVS一体式可编程机器视觉控制器使用视觉算子
与机器视觉大师的视觉算子是完全一样,脚本编写也类似,而且FVS支持MODBUS协
议的PLC通信,可以完全实现自动化控制的要求。
本次实验使用的机器视觉大师版本为v4.1.1022版,主窗口图如下:
最新版多多摄像头大师(机器视觉大师)下载地址:http://www.hdy.net.cn/softshare/ddcam.htm
技术交流QQ群: 295860595 该群文件空间即时更新多多摄像头大师最新版本,下载速度更快
,