陈凡
(江门职业技术学院 机电技术系,广东 江门 529090)
基于虚拟仪器的超声测厚仪的研制
陈凡
(江门职业技术学院 机电技术系,广东 江门 529090)
运用虚拟仪器技术,结合超声波发射/采集卡开发了一种新的超声波测厚仪,并设计了自动测厚算法,测量结果表明:新的超声波测厚仪能够自动、精确地完成厚度测量.
超声波;厚度测量;LabVIEW;虚拟仪器
工业生产中的许多构件需要测量其厚度,超声波测厚仪因检测精度高、设备简单、操作安全、成本低等而得到了广泛应用. 常用的超声波测厚仪有共振式、兰姆波式和脉冲反射式,其中脉冲反射式测厚仪结构简单、应用最广[1]. 虚拟仪器技术以计算机为核心,通过各种硬件接口获取信号,然后在软件中完成分析和操作,具有强大的处理功能和模块化的开发优势. 作为一种虚拟仪器开发语言,LabVIEW采用图形化的语言编程方式,其提供的丰富的总线接口功能能很好地匹配各种硬件的结构特点,运行速度也较快[2].
普通的超声测厚仪多用闸门定位峰值,实质上是把回波的上升沿或下降沿作为回波点,因测量结果受到回波宽度、闸门高度的影响,故误差较大[3]. 为此,有人采用伪随机码或相控阵技术来改善测量效果,但均需较复杂的测量电路和算法[4]. 本文采用数字式系统,利用虚拟仪器技术,在LabVIEW平台下开发一种新的超声波测厚仪,根据超声波在板材中传播的特点,编制了自动测厚算法,以期提高测厚精度和效率.
超声波有较高的频率,一般使用的频率为5 MHz,这样高频率的超声波可以认为是沿直线传播的. 利用该特点,人们可以通过时间换算来测量厚度,即厚度=声速×传播时间/2. 在厚度测量中,超声波探头将电压信号转换为超声波脉冲发射出去,当遇到端面时脉冲会发生反射,反射回来的信号被超声波发射探头接收并转换为电压信号,如图1所示.超声波会在界面上多次反射,根据其中任一次反射来回所需的时间均可计算出两界面之间的厚度.
图1 超声波测厚原理
图2 测量方案
2
.1 总体设计
超声波发射/接收卡采用多通道超声波PCI卡,卡上有4个独立的发射/接收通道,PCI总线速度快,非常适合超声波的数据采集. 本文采用LabVIEW软件作为开发平台,测量方案如图2所示. 超声波探头将超声信号传递给超声波发射/接收卡,通过接口程序进入应用软件分析处理;同时为了定位厚度测量位置,还需要采集行进信号. 应用软件包括接口程序、处理程序和显示操作程序3个部分.
2.2 接口程序设计
本系统中的硬件接口程序包括:1)超声波发射/接收卡的数据采集与控制接口程序,2)行进控制信号的接口程序.
常用的超声波发射/接收卡都提供驱动程序,本系统采用的超声波发射/接收卡提供了DLL驱动程序,LabVIEW中的Call Library Function节点可以直接调用DLL中的函数,实现计算机与采集卡的数据通信. Call Library Function通过调用DLL中的不同函数以完成对采集卡的初始化、数据读取和控制等功能,从采集到的数据中截取所需的数据长度,并根据采集频率和声速将采集到的数据转换为随时间变化的超声波回波波形.
行进信号需通过计算机硬件接口传递,常用的硬件接口有并口与串口. 串口的数据传输比较大,在LabVIEW中使用串口须安装VISA驱动程序,效率较低,且串口存在通信不稳定的问题;并口编程简单、可靠性高,但数据传输量有限. 因此,本系统采用并口的状态寄存器接收采集控制信号. 并口内有3个8 位输出锁存/输入寄存器. 第1个地址378H为数据口;第2个地址379H为状态输入口;第 3个地址 37AH为控制信号输出口. 利用并口数据寄存器实现控制信号的输出,利用状态寄存器实现控制信号的输入. 在LabVIEW中调用并口的节点为“读端口”和“写端口”.
2.3 处理与显示操作程序设计
在 LabVIEW 中,软件一般分为前面板和后台程序,前面板用于界面显示与操作,后台程序用于程序运行控制. 本文设计的程序整体结构为帧结构,它可以完成硬件的初始化、数据采集和退出.在主帧中使用了定时while循环结构以保证采集程序高速和准确的运行,同时利用event结构以中断方式接收键盘和鼠标的操作.
要实现对试件的自动测厚,需要观测到3次回波,并测出第1次回波和第2次回波之间的时间间隔及第2次回波与第3次回波之间的时间间隔,取二者的平均值,以提高测量精确度. 由于超声波测量中会有高频振荡及杂波的影响,判断回波位置比较困难,所以普通的超声波测厚仪通常用手动调整闸门位置来识别回波,无法实现自动测厚.
3.1 算法设计
由于超声波的第1次回波的幅值高于第2次回波,第2次回波的幅值又高于第3次回波,所以需调整采样位置,排除始波. 假定从采集卡中获取n个采样点a[i](i=0,1,2,,n),则其中必有k个峰值点,设为数组b[k](k=1,2,3,),且b[ 1]>b[ 2]>b[3]. 峰值点数组b[k]即为所需的一组反射回波波峰数据. 第1个峰值点b[ 1 ]= max(a[i]),设此峰值点在采样数组a[i]中的位置为i1,其值为a[i1],同理假设第2峰值点为a[i2],第3峰值点为a[i3].a[i1]附近的值如a[i1− 1],a[i1+1]的值等均大于b[2],为了找出a[i2],需要首先剔除a[i1]附近的值,故 可以截取一段数据,即从采样数组a[i]中取a[j](j=i1+m,i1+m+1,,n),其中m的取值由回波脉冲的宽度决定,则b[ 2]= max(a[j])=a[i2]为第2峰值点,以此类推可获得峰值点b[3]、b[4]等.
3.2 算法的实现
首先由操作者给出厚度的大概范围,然后调整延时,去除始波,再找到信号的峰值点,作为第1次回波;间隔某一段时间(由脉冲的估计宽度决定)后,在剩余信号中寻找峰值点,作为第2次回波;依此类推,寻找第3个峰值点,作为第3次回波. 这样既能找到回波,又避免了次生杂波的影响. 之所以取前3次回波,是因为回波幅值随着反射次数的增加逐渐减小,3次以后的回波很容易被噪声淹没,且3次回波计算得到2个厚度值,取2个厚度的平均值可以消除部分随机误差的影响. 前3次回波探测显示界面如图3所示. 在测量前,需确定试件中的声速、脉冲的最大宽度、采样深度及超声仪器的其他常规参数.
图3 前3次回波探测显示界面
例 取一块平整无明显缺陷的钢板,利用千分尺测量其厚度为20.565 mm,再用本文超声波测厚仪测其厚度,间隔10 s观察,获得5组数据,分别为20.650,20.635,20.650,20.650,20.635 mm,取它们的平均值,则测量结果为20.644 mm,垂直线性误差为0.4%,低于普通超声波测厚仪1%的垂直线性误差.
通过以上分析,本文的超声波测厚仪与普通超声波测厚仪相比可以自动完成厚度测量,消除了手动闸门定位带来的误差,提高了测量精度,且测量方法简单,无需设计复杂的硬件结构,降低了算法的复杂度,提高了测量效率.
[1]潘荣宝. 超声测厚仪及测厚[J]. 压力容器,1996, 13(1): 58-63.
[2]杨乐平,李海涛,赵勇,等. LabVIEW高级程序设计[M]. 北京:清华大学出版社,2003.
[3]彭春,香勇,彭雪莲,等. 基于时间融合的波形方式高精度超声测厚[J]. 应用声学,2005, 24(2): 93-96.
[4]盛凯,陶丽梅,殷红梅. 超声相控阵在钢丝压延机测厚系统中的应用研究[J]. 橡胶工业,2009 (8): 503-505.
[5]祖强,韩忠伦,卢强. 超声波厚度测量不确定度的分析与计算[J]. 无损探伤,2005, 29(6): 32-34.
[责任编辑:孙建平]
Development of an Ultrasonic Thickness Measurement Instrument Based on Virtual Instruments
CHEN Fan
(Department of Electromechanical Technology, Jiangmen Polytechnic College, Jiangmen 529090, China)
An ultrasonic thickness measurement instrument is developed based on virtual instruments. A measurement arithmetic is designed to finish measurement automatically and accurately. Measurement testing shows the instrument can measure thickness automatically, simply and accurately.
ultrasonic wave; thickness measurement; LabVIEW; virtual instruments
TP273
A
1006-7302(2010)02-0003-62
2009-12-10
陈凡(1980—),男,湖北天门人,助教,硕士,主要从事智能仪器设计研究,E-mail: chen.fan@hotmail.com.