基于LabVIEW的水平仪自动检测装置

2014-03-14 09:06赵焕宇大连市计量检定测试所
上海计量测试 2014年5期
关键词:水平仪液泡玻璃管

赵焕宇 / 大连市计量检定测试所

基于LabVIEW的水平仪自动检测装置

赵焕宇 / 大连市计量检定测试所

结合步进电机驱动与图像处理技术,设计了一种基于LabVIEW和NI Vision的水平仪自动检测装置。采用高清摄像头读取目标图像信息,利用图像处理的方法实现图像的去噪与目标定位,实现微米级的分辨力,检测系统自动给出检测结果报表。利用LabVIEW的图形化语言,实现了软件设计的快速开发,降低了软件开发的难度。通过对图像采集系统及步进电机驱动电路的大量实验,证明了设计方法可靠实用,提高了检测效率,系统各个模块配合良好,可以准确可靠地得到检测数据,在实际工作中得到了很好的验证。

水平仪检测;视觉处理;LabVIEW;NI Vision

0 引言

目前国内计量检定机构大都使用杠杆螺丝副式水平仪检定装置检定气泡式水平仪分度线示值误差。检定时通过人工转动手轮带动杠杆螺丝副使工作台产生微小倾角变化,通过人工判断水泡分度线误差。近年来,国内相关生产厂家也对水平仪检定器产品进行了不同程度的技术改进,用光栅尺和数显装置替代了微分筒读数,既消除了检定过程中机械部分螺纹回程误差,又可以很大程度提高读数准确度,但却未能在根本上消除完全凭主观判断水泡与分度线相对位置所带来的(因检定人员个体判定标准差异导致检测结果的)重复性误差;同样也无法解决要对分度线逐一静止检定,工作效率较低等诸多问题[1]。

本文所阐述的水平仪自动检测装置是针对现有水平仪检定装置进行自动化和智能化的技术改造,以步进电机代替人工为系统提供匀速可控转动,利用高清镜头进行图像采集和处理,替代人眼观测。采用NI公司的LabVIEW软件和NI Vision模块开发上位机软件系统,对校准数据进行量化分析,实现试验过程动态连续检测,能够大大提高检定系统准确度和工作效率。

1 硬件组成及工作原理

系统由计算机作为上位机、步进电机控制及脉冲数据采集、图像采集三部分组成,如图1所示。步进电机配合减速器对水平仪检定器的手轮施加匀速转动,被检水平仪的气泡会随水平仪检定器工作面的均匀倾斜变化向一侧做匀速运动,在气泡顶端匀速通过每条被检刻线并与之相切时,图像采集系统对应进行识别,计算机同时对步进电机控制模块发送读取脉冲命令,上位机对信号间隔内步进电机脉冲数作出统计,与系统存储的标准值比较,输出检定结果,以及形成数据报表。整个检定过程操作人员只需将被检水平仪置于工作台上,对检测装置进行初始设置。启动系统后,就不再需要人工介入,检定系统将自动完成对全部刻线的检定并输出检定结果。

图1 系统示意图

2 自动检测装置的软件设计

2.1 图像采集和处理

为了更有效地获取图像中有效的信息,机器视觉检测系统往往需要对采集到的图像进行一定的预加工,其中包括连续图像的获取、对图像的预处理、以及根据处理后的图像进行分析。图像获取是通过摄像头获取水平仪玻璃管中液泡实时运动,图像质量的好坏直接影响将要根据此图像进行的自动检测,所以选择了1080 P高清工业镜头作为图像采集硬件。考虑到连续采集,将一些初始化操作提取出来,在每次连续采集开始时,仅作一次初始化,可以提高程序的工作效率。利用NI Vision连续图像的采集程序,如图2所示。

图2 利用NI Vision连续图像的采集程序

2.2 图像的理解与识别

本系统的控制信息以及检测数据都是根据摄像头采集到的图像数据进行的,能否得到良好的图像直接关系到系统的性能,所以对图像预处理是非常必要的,目的就是去除图像噪声干扰,恢复图像的本来面目,真实可靠的图像是数据检测和系统控制的前提。根据本检测系统的特点,需要对原始图像作滤波、平滑、锐化、增强处理等[2]。

检测目标的确定,亦即关注区ROI的设定。在机器视觉系统设计中,是从关注区中提取测量指标而不是从整个图像中提取。因为本系统设计思路是摄像头和待检水平仪始终处于相对静止,待处理的图像中被测物体始终保持在相同的位置和方向,唯一的变化是水平仪液泡随水平仪检定器手轮旋转而运动,所以直接定义了关注区ROI,如图3所示。

图3 设置ROI后在图像中的实际效果

为了获取水平仪分度以及液泡顶端坐标。调用BuildKernel.VI和Convolute.VI,其中BuildKernel.VI创建所需要的算子,Convolute.VI使用线性的滤波器进行滤波处理,这两个函数配合使用,通过设置BuildKernel.VI,选择Gradient变换突出待测目标,然后调用NI Vision函数中的IMAQ LineProfile.VI,获取ROI直线上的像素值[3],以数组的形式返回直线上分布的像素大小,将其输进波形显示控件,形成一个最大值是255、最小值为0的波形图。尖峰的位置坐标就是玻璃管分度和液泡顶端的位置坐标,可以通过算法程序得到像素数组值的最大值以及与其对应的索引坐标,就可以确定水平仪玻璃管分度和液泡顶端位置坐标。显示效果如图4所示。

图4 原始图像和对应的波形坐标

在系统的硬件设计时,将摄像头固定在水平仪检定器的平台上,当步进电机带动检定器手轮转动时,通过镜头采集的图像画面中,玻璃管分度相对镜头静止,只有液泡相对于镜头在运动,因此怎样判断图像中哪个是液泡波峰哪个是分度波峰很重要。在系统开始检测工作之前,首先通过调节检定器手轮,使水平仪玻璃管液泡右侧顶端处于玻璃管中间位置,然后取得分度的坐标值,称为固定坐标值。开始检定后,随着手轮的旋转,通过程序设定使液泡首先往屏幕一侧运动,取得一组包括活动坐标在内的位置坐标数组,通过查找数组相同元素的方法,取得多余的那个元素的数组索引,进而通过索引值对应的活动波峰坐标。无论是玻璃管分度坐标还是液泡顶端坐标,因为都是取自一条水平ROI直线上,所以y坐标都是相同的,只有x坐标不同,其相对位置也就是x坐标位置。

取得了液泡顶端的位置坐标索引,这个索引加1就是其右侧固定分度位置的坐标索引,当液泡右侧x坐标减液泡顶端x坐标,差值等于一个固定值时,就认为液泡与玻璃管分度线相切。经过大量实验,得出当这个像素差值小于等于4时,就是相切。同理,当液泡往相反侧运动时,上述过程同样可以完成。

2.3 数据的存储和报表处理

利用LabVIEW数据库工具包LabSQL只能操作而不能创建数据库,所以必须借助第三方数据库管理系统,本软件系统选择了Access来创建数据库。首先创建一个DBdata.mdb数据库文件,然后建立数据库链接,LabSQL与数据库之间是通过ODBC连接的,用户需要在ODBC中制定数据源名称和驱动程序。所以在利用LabSQL编程之前,先要在Windows操作系统中的ODBC数据源中创建一个DSN(Data Source Name,数据源名)。LabSQL与数据库之间的连接是建立在DSN基础之上的。流程如图5所示。

图5 LabSQL与数据库连接框图

连接上数据库就可以利用LabSQL工具对数据库进行操作了,数据库的操作主要是创建记录、添加记录、删除数据、历史记录查询、提取数据等操作。

报表生成是测试系统普遍要求的一项基本功能。LabVIEW的NI报表工具包封装了Word和Excel对象,可以创建复杂的报表。本系统的所有测试数据都存入Access数据库中,通过调用数据库中数据生成后续工作需要的校准记录以及证书等。

3 装置改造前后的分析对比

通过比对的方法完成系统性能测试。采用传统方法进行检测的数据与本系统测试数据进行对比试验,验证系统工作情况及性能,分析测量数据及测量过程,找到影响测量不确定度的因素并加以改进。使用分度值为0.005 mm/m的水平仪检定器校准一台分度值为0.02 mm/m的水平仪,传统方法与改造后的装置取得的数据分析如图6所示。分析两种方法取得的数据可以看出,传统方法因检定人员个体判定标准差异,导致校准结果的重复性误差一致性较差;同样也无法解决要对分度线逐一静止检定、工作效率较低等诸多问题。

水平仪自动检测装置取得的数据一致性较好,而且只要驱动步进电机脉冲数足够多,装置的准确度也会得到相应提高,能对校准结果量化分析,实现试验过程动态连续检测,大大提高了检定系统准确度和工作效率。

图6 传统方法、自动检测数据分析

4 结语

水平仪自动检测装置综合运用视觉处理技术,结合LabVIEW相关工具软件,其中包括NI Vision、LabSQL、报表工具包,研制成功的水平仪自动检测装置达到了预期的设计效果,能够满足水平仪校准规范对检测标准装置的要求,节省了人力的同时也提高了检测结果的客观性和精确性,研究成果具有较好的应用价值,在计量检测行业中有很好的应用前景。

[1] 贺凯琴.水平仪的调修及保养[J].中国计量,2005,5:57-58.

[2] 赵国政.步进电机的构造及控制技术解析[J].硅谷,2011,2: 46-47.

[3] 王庆有.图像传感器应用技术[M].北京:电子工业出版社, 2006.

[4] 王建民,浦昭邦,刘国栋.提高图像测量系统精度的细分算法的研究[J].光学精密工程,1998 ,6(4): 44-50.

[5] 美国国家仪器有限公司. LabVIEW TOOL BOX [M] .Texas: 美国国家仪器有限公司,2011, 8.

[6] 陈志坤,马晓峰.基于LabVIEW的图像检测系统的设计及实现[J].河北理工学院学报, 2003, 25(3): 40-45.

[7] Labviewfunction and VI reference manual [ Z] . USA : NI Inst ru2ment, 1996.

[8] 李瑞,周冰,胡仁喜. LabVIEW 2009中文版虚拟仪器从入门到精通[M]. 北京:机械工业出版社,2010.

[9] 杨乐平,李海涛,杨磊. LabVIEW程序设计与应用,2版)[M]. 北京:电子工业出版社,2005.

LabVIEW-based development in automatic calibrators for the levels

Zhao Huanyu
(Dalian Institute of Measurement and Testing)

In this paper, by used stepper motor driver and image processing technology, a automatically calibrators for the levels designed, it based on LabVIEW and Ni Vision's. High de fi nition camera to read the target image information, the use of image processing methods to achieve image denoising and targeting to achieve micron-level resolution, detection system automatically gives the test results report. Use LabVIEW graphical language to achieve a rapid development of software designed to reduce the difficulty of software development. Through the image acquisition system and stepper motor drive circuit a lot of experiments, proved reliable and practical design methods to improve the detection ef fi ciency of each module with a good system, you can get accurate and reliable test data,and it has been proved in practical work.

levels calibration; vision processing; LabVIEW; NI Vision

猜你喜欢
水平仪液泡玻璃管
植物液泡膜H+-ATPase和H+-PPase 研究进展
由托里拆利实验想到测量液体密度
白念珠菌液泡的致病性作用
水平仪分度值误差校准结果不确定度评定
基于单片机控制的玻璃管搬运机械手设计
电子水平仪精度分析与测试
落地镗铣床使用电子水平仪实现滑枕挠度自动补偿的研究
阳光下的生命
农用纸膜破损试验
两个连通球形液膜有平衡状态