您当前的位置:五五电子网电子知识电子知识资料仪器仪表读写器LabVIEW和IMAQ在指针式仪表自动读数中的应用 正文
LabVIEW和IMAQ在指针式仪表自动读数中的应用

LabVIEW和IMAQ在指针式仪表自动读数中的应用

点击数:7891 次   录入时间:03-04 12:04:03   整理:http://www.55dianzi.com   仪器仪表读写器

1 引言

  指针式仪表由于具有结构简单、维护方便、不受电磁场干扰、可靠性高、价格便宜等优点,目前在科学实验和生产中仍在广泛使用。仪表生产企业和计量检定部门在对指针式仪表进行检定时,其读数通常都由人工来完成。由于人眼的视觉误差和视觉疲劳会引起读数误差,且读数速度较慢,检定人员的劳动强度大,检定周期长,工作效率低,易造成读数精度低、可靠性差、重复性差等问题的出现。因此如何实现指针式仪表的自动检定,以提高检定效率、检定精度,就成为急需解决的问题。

  随着数字图像处理技术的不断发展,将数字图像处理技术应用于指针式仪表的读数自动识别的方法越来越多的受到人们的关注[1~2]。本文采用基于LabVIEW虚拟仪器的计算机视觉技术,开发了一套指针式仪表自动读数系统,实践证明该系统具有读数效率高,准确、可靠等优点。

2 LabVIEW虚拟仪器开发平台和IMAQ Vision 软件

  LabVIEW是由美国国家仪器公司(NI)推出的一个功能强大而又灵活的仪器和分析软件应用开发平台。LabVIEW程序称为虚拟仪器,简称为VI,LabVIEW所使用的G语言是最易于使用的图形化数据流式编程语言,特别适用于测试、测量、仪器控制、过程监控和工业自动化等方面的工程应用软件的开发。它简化了科学计算、进程监视和控制、测试和测量程序的开发,极大的缩短了开发周期。

  NI公司的IMAQ Vision软件是LabVIEW虚拟仪器开发平台外挂的机器视觉和图像处理开发工具包。IMAQ Vision软件中包括一整套MMX优化函数,提供了大量的图像预处理、图像分割、图像理解函数库和开发工具,可用于完成图像的灰度、彩色以及二值图像的显示、图像处理(包括统计、小波分析、滤波、和几何变换等)以及形状匹配、斑点分析、计算和测量等。应用LabVIEW提供的功能强大的图象处理函数库,结合其虚拟仪器的特性,能够实现工控领域中基于视觉和图像处理的各种各样的应用问题,如自动测量系统、实时监控系统、汽车零部件检测和医药产品包装校验等,与用传统的语言进行图像处理系统的开发相比,大幅度的降低了难度和开发周期。

3 指针式仪表自动读数系统的设计

  我们研制的指针式仪表自动读数系统,硬件部分主要由NI公司的PCI-1411图像采集卡、CCD摄像机、计算机和辅助光源组成;系统软件是在LabVIEW7.0虚拟仪器平台上应用IMAQ Vision图像处理软件包进行开发的,软件在功能上主要包括图像采集模块、图像预处理模块、图像分析模块。系统方框图如图1所示。系统的工作过程为:通过应用程序控制CCD摄像机和图像采集卡完成指针式仪表的图像采集;图像送入计算机内存,并在计算机显示器上显示;系统对图像进行预处理、分析,自动识别指针式仪表的读数并将结果显示并存盘。



图1 指针式仪表自动读数系统方框图

  3.1 图像采集模块

  该模块是其它模块工作的基础。由于LabVIEW平台中提供了图像采集的函数,所以可以方便地完成图像采集的任务。在驱动程序的驱动下,由图像采集卡将CCD摄像机所摄得的指针式仪表模拟图像转换成数字信号后,通过PCI总线传入计算机的指定内存空间。在采集过程中,利用IMAQ提供的控制函数控制图像采集卡对图像的采集,并可将图像存储为需要的多种文件格式:BMP、JPEG和PNG等。

  3.2 图像预处理模块

  在图像采集过程中,利用CCD摄像机获取指针式仪表盘的图像时,由于现场的光线变化以及人走动的干扰等因素,使摄得的图像会产生一些不好的效果甚至畸变,造成图像的质量减低。为了保证读数的精确度,需要对图像进行预处理。系统中图像的主要预处理过程如下:

  (1)图像二值化

  在对指针式仪表盘进行自动读数之前,先对图像进行二值化处理,使图像变成黑、白两色,这样更加容易提取图像的仪表刻度与指针。二值化的具体做法是将图像中小于某一灰度的像素值置为0,大于此灰度值的像素值置为1,而这个灰度值就是阈值(Thresholding value)。对图像进行二值化主要考虑的问题就是阈值的选取,阈值设的过高,将漏掉小幅度变化的边缘;阈值设的过低,将出现由噪声引起的许多虚假的图像边缘。

  IMAQ Vision中阈值处理分为手动阈值和自动阈值两种。手动阈值设置方式由用户指定最大灰度值和最小灰度值,它们之间的值设置为1,其它为0。自动阈值方式可自动生成不同阈值范围,适用于照明条件变化较大的情况。IMAQ Vision提供5中自动阈值技术,Entropy基于标准图像分析,是发现微小粒子的最佳函数;Metric值由图像初始化时的初值决定;Memones基于统计学,假设图像模糊或在采样时受电信号干扰,适用于对比度较低的情况;Inter Variance基于差别因子分析,适用于各部分比例相当的图片。在指针式仪表自动读数系统中,可以根据实际效果适当选择上面几种阈值设置方式。

  (2)图像中值滤波

  图像在采集过程中往往受到各种噪声源的干扰,这些噪声在图像上往往表现为一些孤立的像素点即毛刺,这可理解为毛刺的像素灰度与它们的相邻像素有显著不同。这些干扰如果不经过滤波处理,会对后面的指针式仪表读数的自动识别带来影响。

  中值滤波是非线性滤波器的一种,它既可做到噪声抑制、滤除脉冲干扰及图像扫描噪声,又可以克服线性滤波器带来的图像细节模糊,保持图像边缘信息。在IMAQ Vision中,中值滤波可以直接调用功能函数IMAQ Nth Order来实现。中值滤波的主要功能就是使那些与邻近像素显著不同的像素具有与其邻近像素更加相似的强度,达到消除图像的孤立毛刺的目的。

  3.3 图像分析模块

  预处理后的图像中,指针式仪表盘的背景为白色的,仪表刻度和指针为黑色的。为自动识别仪表的读数,还需对预处理后的图像进行进一步的分析。在图像分析过程中,主要调用IMAQ Get Meter.vi与IMAQ Read Meter.vi两个子程序来实现。

  IMAQ Get Meter.vi子程序用来识别仪表的起始刻度位置和满量程刻度位置,计算出起始刻度线与满量程刻度线之间的弧度值,同时它还可以计算仪表指针(将仪表刻度盘中的最长线段看作指针)起初始刻度线的弧度值。IMAQ Read Meter.vi子程序通过读取IMAQ Get Meter.vi子程序输出的数据并进行分析,返回仪表指针的位置与起始刻度线的弧度值占起始刻度线与满量程刻度线之间的弧度值的百分比。将仪表的满量程乘以此百分数,就是仪表的实际读数。系统软件的前面板和程序框图分别如图2与图3所示。在自动读数系统实际运行过程中,必须在软件的前面板中对被测仪表的实际量程进行设置。

  系统还可以对实际读数进行误差分析,同时自动生成Excel报表储存硬盘并进行打印。



图2自动读数系统软件前面板



图3自动读数系统软件程序框图

4 结论

  本文采用计算机视觉技术,在LabVIEW虚拟仪器开发平台上,应用IMAQ Vision图像处理软件包和相应的硬件开发了一种新颖的指针式仪表自动读数系统。将系统用于对微安表的自动读数,实验结果表明,该系统具有实用性、读数精度较高、效果稳定和抗干扰能力强等优点。对系统的硬件和软件加以修改,可以推广到其它指针式仪表的自动读数,为此类仪表的检定或计量提供了一种新方法。

  本文作者创新点:本文采用计算机视觉技术,在LabVIEW虚拟仪器开发平台上,应用IMAQ Vision图像处理软件包和相应的硬件开发了一种新颖的指针式仪表自动读数系统。与传统的检定方法相比较,该系统该系统具有实用性、读数精度较高、效果稳定和抗干扰能力强等优点.


本文关键字:仪表  仪器仪表读写器电子知识资料 - 仪器仪表读写器