技术文章
基于智能相机构建工业机器视觉应用
日期:2014-06-16
来源:三姆森科技
在大规模或者高测试要求的生产线上,机器视觉功能可以被用来代替传统人工测量或检测,以实现人工条件下无法达到的可靠性、精确度及测试速度。在中国,机器视觉从最初的实验室研究起步至今,约有近20年的历史。但是,长期以来除了成套引入或复制国外产线外,机器视觉并没有在自主的工业产线上形成规模性和普遍性的应用。除了市场和用户需要有认可的过程外,原先基于PC架构的机器视觉系统,在很多场合不适合本土更为敏感的成本因素以及更为复杂的现场环境。其次是视觉系统开发相对复杂,让缺乏相关应用经验的工程师不敢轻易尝试。
智能相机低成本、高可靠性、简单易用的特点迎合了上述市场的特性,在国内也逐渐开始挑战基于PC架构的地位。从近两年北美市场销售统计情况来看,图像采集卡基本保持稳定,而智能相机的增幅高达17%左右。
在硬件架构上,智能相机集成了图像传感器、运行实时程序的嵌入式处理器,以及用于连接其它工业设备的I/O端口。它结构紧凑且体积小,较PC架构来说更适合工业现场的应用环境。区别于传统相机将图像传输到上位机再进行处理,智能相机能独立完成采集、处理到结果输出的三个环节,系统的复杂度大为降低。以NI 1742智能相机(图1)为例,除了配有标准C Mount镜头接口、光源控制器、优质的Sony CCD(每秒60帧采样率)和553MHz高性能PowerPC处理器外,还附带了软件开发平台。
当然,对于一款智能相机来说,并不意味着集成的配件越多性能就越突出。因为机器视觉应用有其特殊性,对系统的灵活性要求很高。以光源配置举例,实际应用中被测物体的特性千差万别,受现场照明环境影响也很大,如果用户选择绑定LED的智能相机系统(即使是最常用的环形光源),往往也会在后续开发过程中发现不能满足实际要求,再重新配购就增加了不必要的成本。为此,NI智能相机在设计时就考虑到了集成度与灵活性的平衡。仍以光源为例,NI 1742通过集成光源控制器,提供500mA 直流电流或者1A闪控电流的方式,即满足选择的灵活性又免去了配置外部光源控制设备。除了明显减少外部配件成本以及连线需求外,还缩短了开发的时间,因为这样工程师能够在一个平台上用同样的应用程序接口(API)开发各种功能。
机器视觉应用程序开发
谈到机器视觉应用程序开发,由于国内机器视觉发展较晚,很多用户还不能熟练或者有意愿去学习使用复杂的编程语言或环境来开发整套机器视觉应用程序。除了依靠专业的集成商或外部开发人员外,选择高效灵活的机器软件开发平台,可有效降低开发难度。因此,智能相机开发平台的易用性以及算法的支持度,成为了非常重要的选择标准。
选择一:基于交互式的软件开发工具,如NI VBAI(Vision Builder for Automated Inspection)。作为业内最方便易用的视觉软件开发平台之一,用户无需编程,就可以用菜单配置的方式完成整个应用程序开发,没有或较少有机器视觉经验的工程师均可快速入门。他们可以通过交互式的方式来配置并验证光源设置、采集方式、图像预处理和处理算法,再以软件工具给出的对应执行时间量作为优化判据,最终直接将最优化的程序发布运行于NI 智能相机平台。在图2的滤油器检测应用中,从采集一张合格的原始物件图像开始,到设定模板用于匹配中心孔,再到颗粒分析来对周围小孔进行计数,以及最后通过灰度检测验证O型环,每个步骤逐次添加完成。其中算法及参数修改所对应的结果,都会同步的叠加在图像窗口中显示。机器视觉算法原型开发及验证的过程变得直观而高效。
目前,对于智能相机应用的很多顾虑集中在算法执行能力以及处理速度。VBAI平台提供了上百个高级的视觉工具,涵盖了边缘检测、模式识别、光学字符识别、1维/2维条形码识别等高级应用。此外,VBAI是NI 智能相机附带的。对用户而言,可以基于NI智能相机构建整套系统,实现工业检测的各种常见应用,同时又降低了成本和开发的复杂度。
选择二:图形化开发环境LabVIEW。相对于传统的文本编程,其基于数据流的开发方式,非常适合于机器视觉这种典型的采集、分析到结果输出的数据依赖型应用结构。图像和数据在LabVIEW节点传递的过程就决定了程序执行的顺序,所以用户可以在程序框图中以运行流程一致的方式建立应用程序。LabVIEW所配备的高级的视觉工具库,使测控领域的工程师们在实现更高的开发效率的同时,也获得了更大的灵活性以及应用程序的性能。NI 智能相机的用户,可以直接将之前通过VBAI软件交互式配置的应用自动生成为LabVIEW代码。这样,无论是机器视觉的初学者还是专业集成商,都可以运用NI的进一步扩展高性能的的机器视觉应用。
智能相机与自动化系统集成
当智能相机结合上述两类原型验证环境、高级的图形化编程平台以及自动生成工具时,开发过去看似复杂的机器视觉应用变得前所未有的简单。另一个非常重要的一个环节,即在设计视觉架构时,应考虑产线上或者装备的整体自动化系统集成。实质上,机器视觉功能很少作为孤立的系统,而是以整个自动化系统或者设备的有机组成部分之一出现。智能相机的输出结果需要被用来驱动执行机构以分类产品或剔除不良品,引导运动控制系统或机器人动作,与PLC或者PAC(可编程自动化控制器)通信实现更高性能的闭环控制,集成入企业级软件和SCADA以监测生产状态趋势并统计存量,这样才能最大程度的发挥其优势。目前的问题是,多数机器视觉供应商提供的产品或服务往往局限于视觉功能,工业自动化系统整体集成的挑战留给了用户或集成商,这种困难一定程度上阻碍了工业机器视觉应用的推广。 在这点上,基于NI的解决方案具备了较大的优势。从通信接口来看,除了配备标准的RS232和工业I/O用于连接PLC、执行器之类的设备外,NI 智能相机独创性的提供了双端口千兆以太网接口,机器视觉检测可以同时直连HMI和控制系统,实现功能的同步与扩展。在此基础上,操作员或管理者基于NI网络发布技术,可以在远程使用标准浏览器来监控工业现场的检测过程。配合LabVIEW企业管理工具包,智能相机获取的产品信息也可以同步导入数据库以及企业级软件。另外,通过NI 支持的Modbus等多种工业通信协议或者OPC服务器,可以完成视觉功能与产线已有的三方自动化设备或PLC的无缝集成。 随着嵌入式技术的发展,近几年智能相机性能显著提高,越来越多必须依赖于PC处理的应用开始向智能相机平台倾斜。低成本、高可靠性及易于安装维护等优势,使得机器视觉在制造业上的规模性应用越来越普遍。伴随着国内产业链的升级,智能相机将在自动化舞台上发挥更大的作用。在起步过程中,选择某款智能相机的方案,往往就会决定企业未来长期应用的情况和发展。因此,在投入初期,应该考虑到视觉供应商是否能够像NI一样提供完备高效的平台,并且不断致力于将最新的商用集成技术引入到产品中,以保证未来系统的灵活性以及性能提升的可行性。
智能相机低成本、高可靠性、简单易用的特点迎合了上述市场的特性,在国内也逐渐开始挑战基于PC架构的地位。从近两年北美市场销售统计情况来看,图像采集卡基本保持稳定,而智能相机的增幅高达17%左右。
在硬件架构上,智能相机集成了图像传感器、运行实时程序的嵌入式处理器,以及用于连接其它工业设备的I/O端口。它结构紧凑且体积小,较PC架构来说更适合工业现场的应用环境。区别于传统相机将图像传输到上位机再进行处理,智能相机能独立完成采集、处理到结果输出的三个环节,系统的复杂度大为降低。以NI 1742智能相机(图1)为例,除了配有标准C Mount镜头接口、光源控制器、优质的Sony CCD(每秒60帧采样率)和553MHz高性能PowerPC处理器外,还附带了软件开发平台。
谈到机器视觉应用程序开发,由于国内机器视觉发展较晚,很多用户还不能熟练或者有意愿去学习使用复杂的编程语言或环境来开发整套机器视觉应用程序。除了依靠专业的集成商或外部开发人员外,选择高效灵活的机器软件开发平台,可有效降低开发难度。因此,智能相机开发平台的易用性以及算法的支持度,成为了非常重要的选择标准。
选择一:基于交互式的软件开发工具,如NI VBAI(Vision Builder for Automated Inspection)。作为业内最方便易用的视觉软件开发平台之一,用户无需编程,就可以用菜单配置的方式完成整个应用程序开发,没有或较少有机器视觉经验的工程师均可快速入门。他们可以通过交互式的方式来配置并验证光源设置、采集方式、图像预处理和处理算法,再以软件工具给出的对应执行时间量作为优化判据,最终直接将最优化的程序发布运行于NI 智能相机平台。在图2的滤油器检测应用中,从采集一张合格的原始物件图像开始,到设定模板用于匹配中心孔,再到颗粒分析来对周围小孔进行计数,以及最后通过灰度检测验证O型环,每个步骤逐次添加完成。其中算法及参数修改所对应的结果,都会同步的叠加在图像窗口中显示。机器视觉算法原型开发及验证的过程变得直观而高效。
选择二:图形化开发环境LabVIEW。相对于传统的文本编程,其基于数据流的开发方式,非常适合于机器视觉这种典型的采集、分析到结果输出的数据依赖型应用结构。图像和数据在LabVIEW节点传递的过程就决定了程序执行的顺序,所以用户可以在程序框图中以运行流程一致的方式建立应用程序。LabVIEW所配备的高级的视觉工具库,使测控领域的工程师们在实现更高的开发效率的同时,也获得了更大的灵活性以及应用程序的性能。NI 智能相机的用户,可以直接将之前通过VBAI软件交互式配置的应用自动生成为LabVIEW代码。这样,无论是机器视觉的初学者还是专业集成商,都可以运用NI的进一步扩展高性能的的机器视觉应用。
当智能相机结合上述两类原型验证环境、高级的图形化编程平台以及自动生成工具时,开发过去看似复杂的机器视觉应用变得前所未有的简单。另一个非常重要的一个环节,即在设计视觉架构时,应考虑产线上或者装备的整体自动化系统集成。实质上,机器视觉功能很少作为孤立的系统,而是以整个自动化系统或者设备的有机组成部分之一出现。智能相机的输出结果需要被用来驱动执行机构以分类产品或剔除不良品,引导运动控制系统或机器人动作,与PLC或者PAC(可编程自动化控制器)通信实现更高性能的闭环控制,集成入企业级软件和SCADA以监测生产状态趋势并统计存量,这样才能最大程度的发挥其优势。目前的问题是,多数机器视觉供应商提供的产品或服务往往局限于视觉功能,工业自动化系统整体集成的挑战留给了用户或集成商,这种困难一定程度上阻碍了工业机器视觉应用的推广。 在这点上,基于NI的解决方案具备了较大的优势。从通信接口来看,除了配备标准的RS232和工业I/O用于连接PLC、执行器之类的设备外,NI 智能相机独创性的提供了双端口千兆以太网接口,机器视觉检测可以同时直连HMI和控制系统,实现功能的同步与扩展。在此基础上,操作员或管理者基于NI网络发布技术,可以在远程使用标准浏览器来监控工业现场的检测过程。配合LabVIEW企业管理工具包,智能相机获取的产品信息也可以同步导入数据库以及企业级软件。另外,通过NI 支持的Modbus等多种工业通信协议或者OPC服务器,可以完成视觉功能与产线已有的三方自动化设备或PLC的无缝集成。 随着嵌入式技术的发展,近几年智能相机性能显著提高,越来越多必须依赖于PC处理的应用开始向智能相机平台倾斜。低成本、高可靠性及易于安装维护等优势,使得机器视觉在制造业上的规模性应用越来越普遍。伴随着国内产业链的升级,智能相机将在自动化舞台上发挥更大的作用。在起步过程中,选择某款智能相机的方案,往往就会决定企业未来长期应用的情况和发展。因此,在投入初期,应该考虑到视觉供应商是否能够像NI一样提供完备高效的平台,并且不断致力于将最新的商用集成技术引入到产品中,以保证未来系统的灵活性以及性能提升的可行性。