如何开发可靠的视觉应用

视觉系统通常可以代替检测人员或提高检测人员的检测能力,它们还经常被用于不适合人类的检测任务,改善恶劣环境的安全性。那么在开发可靠的视觉应用时,应该注意哪些问题呢?

他们可能会说这是质量问题,但实际上是钱的问题。

检测零件和装配件是因为把坏的零件卖给顾客会给生产商带来经济损失。在生产线上安装传感器是为了降低加工成本或者提升产品质量,因此价值和公共安全都是驱动因素。

视觉系统通常可以代替检测人员或提高检测人员的检测能力。它们还经常被用于不适合人类的检测任务,这改善了恶劣环境的安全性。相机不会疲劳,他们能看到人类无法看到的东西,也能识别人类大脑无法理解的东西。

有些人认为视觉系统仅仅是一个相机和计算机程序。这些人并不是我喜欢的供应商或客户。机器视觉系统就是自动光学检测。

相机只是一个图像传感器。它需要一个镜头。镜头必须具有合适的放大倍率和分辨率,以便为计算机提供尽可能多的信息。镜头的格式和尺寸必须类似于图像传感器的格式和尺寸,而且镜头的分辨率必须满足相机的像素大小。有些相机的像素是1.2μm。根据瑞利判据,传统光学器件在可见光下只能分辨出3μm。在许多情况下,任何老镜头都可以分辨,因为其像素完全足以验证某个部分存在与否;但是如果涉及到测量,那么镜头必须与传感器完全匹配。拥有可靠的镜头供应商是一个很好的开端。测试镜头和相机组合是一个重要步骤。

当然,优质镜头和传感器的作用有限;我们还需要控制照明。有些人试图摆脱环境光;毕竟这是一个工厂,除了个别灯泡烧坏的情况,全天24h都亮着灯;一年中会有某一个时刻,阳光从适当角度射入而导致所有零件发生故障。因此,我们为视觉系统增加灯光,其强光可以覆盖环境光。有时颜色过滤器可以用来进一步隔离相机受到的环境光。

闪光灯是一个非常有效的工具。它能够定格运动零件或振动零件的动作,使图像传感器获得更清晰的图像用于检测。

清晰的图像非常重要。正确的图像配准也很重要。相机必须安装牢固。一个视觉系统需要坚固的安装硬件,优秀的安装设计可以在移除和更换相机时无需要改变程序,只需进行标准的校准。

不要忘记输出 

视觉系统必须将检测结果传送给一个操作员或一个知道如何处理这些信息的控制器。信息可能是离散的,例如成功/失败、表示储罐排序质量的数字或测量结果。这些数据包括切换一个位的值,Modbus PLC链中的轮询寄存器,或者通过实时工业以太网协议传送的整数或浮点数值。对于操作员来说,它可能是一个简单的灯光或音频提示。

有时候输出比简单的I/O更为复杂;它可能需要绑定到关系数据库中,而我们需要在这个数据库中对整个过程的所有检测进行分析。开放平台通信(OPC)是针对海量数据后端的常用方法。

视觉系统可能还需要一些花俏的功能。流程要求会规定当不同零件进入装配线时,视觉系统必须改变检测算法。检测算法将控制照明以实现最佳检测效果。相机可以安装在机器人上,从多个视角观察零件或组件。每一个图像都需要一套不同的检测工具。然后结果数据被汇总为最终的质量分数。

可以肯定的是检测系统会相当复杂。视觉系统有三个重要组件:处理器/传感器;照明/镜头;程序/接口(图1)。就像一个三条腿的凳子,如果其中一条腿很虚弱,这个凳子就无法使用。

虽然凳子的三条腿很重要,但这个系统必须被车间工人接受。终端用户的反响对系统开发非常重要。如果车间工人不喜欢你的新检测系统,那么机器可能会莫名其妙地停止工作。从工厂经理那里获得指导是一个好办法;毕竟系统是管理层买单。但是车间安装系统后,通常需要与最终用户进行磨合,这是宝贵的经验。

为了适应生产的改变,系统必须易于使用、维护和修改。而且它必须不受环境光、温度、压力、电流波动和天气的影响。

用户通过软件与视觉系统进行交互。某些系统的接口是不可见的。客户只能看到包含所需信息的数据流,例如零件是否太大、太小、太亮、多余或丢失。

不要把检测系统看作机器视觉系统。可以把它想象成一个优质的传感器,工厂电工把它从仓库架子上取下来,安装在生产线上,用螺丝刀或按钮编程,插入PLC中,然后开始工作。

由于相机还不够智能,所以检测系统需要一名熟练的操作员。熟练的操作员需要进行充足的训练,系统界面应当易于车间工人操作,而不仅仅是编程人员会使用。

拨开迷雾 

工厂环境非常恶劣。脏镜头会改变测量结果。油和水的光学特性会干扰相机。必须制定一个定期验证安装情况的方法。自动自检是一个好办法。必须有一个清洁光学器件的工序。相机和灯光必须安装牢固,可以使用机械钉或其他方法来固定相机和照明的位置。

以下是关于视觉系统的一些经验法则:

•控制零件的位置可以提高分辨率,也就是说视野越小越好;

•环境光对系统不利。可以用挡板、防护罩、过滤器或闪光灯来消除或大大减少环境光的影响;

•对于测量应用,分辨率应当至少比公差高5-10倍。通常是10倍,但有些应用也采用5倍的设定;

•确定什么是真正需要检测的项目;

•不要图简单,不要因为一个算法很简单就使用它,选择能够适应环境和过程变化的算法;

•所有设备或过程都必须由专人负责。多数情况下,机器视觉系统被安装,然后独立运行。如果一个系统没有专人负责,就会出现问题。一个人可以管理设施中的多个视觉系统,进而成为本地的视觉专家;

•如果测量实际单位,你需要考虑几何失真或物体亮度,校准是必不可少的;

•详细记录系统运行情况。你可能需要在一两年或10年内进行修改。更糟糕的是你可能需要修改前任编写的代码,希望他们曾认真做好了记录;

•确保有足够的文档维持系统运行并进行任意的用户调整。

每个人都应该有一份“如果”清单。你的系统如何应对不同的故障模式?让一个陌生人运行检测系统。如果你不得不说“不要那样做”,那么说明系统有问题。如果电源插头被拔掉会怎么样?如果系统启动时电源插头被拔掉会怎么样?下一次在启动过程中你可以试试看。如果硬盘填满了会怎么样?

相机具有位深度的分辨率。大多数相机可以有效区分256(8位)以内的强度差异。理想的步骤是线性的。

分辨率不仅仅是x与y。测试相机的动态范围是个好办法。拥有一个12位的模拟数字(A/D)转换器,并不意味着相机能输出12位的有用数据。

模拟故障。把已知的缺陷与完好的零件整合到系统中进行模拟,直到结果满意为止。使用图像处理工具制作一个模拟缺陷零件的数据库。

该系统可以采集图像用于离线分析;这可能是每一个零件、一个统计零件样品或者触发一些检测标准。坏的零件也是值得采集的目标。

确保你的系统可以从图像库离线运行。离线程序可以用于检查生产图像以及开发更先进的检测算法,而检测人员无须到达生产/检查现场。有些工厂经理喜欢在隔间或桌面上进行检测。

别人的错误

一家制造商想在塑料片中发现50μm的缺陷。系统运行得很好。这是与客户的质量控制部门紧密合作的结果。该系统被用于寻找造成50μm缺陷的根本原因。在检测系统帮助下,制造商随后消除了造成缺陷的根本原因。

突然问题变成了10μm的缺陷。如果我能预见未来,我会提议增加10%的预算,使用更高分辨率的系统。该系统很强大,但最终客户花费了很多钱升级软件。硬件无法升级,因为这需要对系统进行重大改造。最后,该系统可以顺利地检测出新的缺陷。

从此案例中我们得到了教训:假设客户的需求会发生变化,我们必须努力增加灵活性以适应这一变化。

小组项目

事实证明,一个机器视觉专家需要广泛的才能,所以你的身后最好有一个团队。多个学科的知识是成功实现机器视觉的基础,包括机械工程、设计工程、软件工程、视觉工程、照明工程、采购以及技术写作。

接受标准

如果两个相机都不能识别相同的标准,那么将摄像机插入计算机可能是一个兼容性噩梦。请注意:GigE Vision、Camera Link、EMVA 1288、Camera Link HS、USB3 Vision、CoaXPress、GenICam以及JIIA的Lens MountStandards。

需要考虑的问题

另外,在开发视觉应用系统时还应考虑以下几个问题:

•如果培训时采用好的零件,你又怎么知道缺陷到底是什么样的?

•10个有缺陷的零件样本量对培训来说足够了吗?

•基准点的墨色或印刷电路板上的丝印颜色会在6-12个月内发生变化吗?这会导致检测系统拒绝来自新的第二层供应商的所有零件吗?

•操作员会接受正规的设备培训吗?

•视觉系统的最终目标是什么?

 

评价!您认为该篇文章:

非常好          一般           没有价值

无需注册,直接提交,定期抽奖,祝您好运!

  • 转发至:
  • 收藏到QQ书签

相关报导