鲁延峰, 沈晓红, 李 凯
(北京工商大学 机械工程学院, 北京 100048)
在当代工业生产中,无损检测技术有着广泛应用. 随着计算机技术、超大规模集成电路技术和通信技术的飞速发展,把计算机技术的强大处理功能应用到工业探伤中,以适应现代化大规模生产成为必然. 基于虚拟仪器的无损探伤技术应运而生. 虚拟仪器(virtual instrumentation,简称VI)是以计算机为核心、以仪器系统与计算机软件技术的紧密结合为出发点而设计的现代化仪器,它利用计算机系统的强大计算和处理功能,结合相应的硬件,突破传统仪器在数据处理、显示和传送等方面的限制,使用户可以方便地对其进行维护、扩展和升级等. 本文构建的超声检测虚拟仪器将超声检测技术和虚拟仪器技术进行有机结合,实现了超声波的发射以及超声回波信号的程控放大、实时采集和处理,并能通过软件实现超声检测参数的设定和检测过程的控制,对提高超声检测的精度、效率具有十分重要的意义.
超声波无损检测(ultrasonic flaw-detection)利用材料内部缺陷的声学性质对超声波传播的影响,非破坏性地探测出设备或工件表面和内部缺陷(如裂纹、气泡)的大小、形状及其分布情况[1]. 一般情况下,回波显示方式,横坐标是超声波的传播时间或者传播距离,纵坐标是超声波反射波的幅值. 如果在某个金属工件中存在一个缺陷,缺陷与金属材料之间形成一个不同介质之间的交界面,交界面之间的声阻抗是不同的,当发射的超声波遇到这个界面,就会发生反射. 反射回来的能量又被探头接收到,在显示屏幕中横坐标的一定位置处出一个反射波的波形,这个位置就是缺陷在被检测材料中的深度,这个反射波的高度和形状因不同的缺陷而不同,反映了缺陷的性质.通过调节探伤灵敏度,可对此缺陷进行定性和定量分析.
本系统采用工控机加超声检测卡的方式. 自行开发超声检测卡,该卡应用ISA总线标准设计,通过该卡完成超声探头激励脉冲的产生、超声回波信号的接收放大和模数转换,并将转换后的数据存入卡上FPGA的存储单元,之后在计算机软件读取FPGA内存储的数据,并对其进行处理和结果显示.
虚拟超声检测系统整合了最新的虚拟仪器思想,由仪器硬件(工控机、超声检测卡、探头)和仪器软件(LabWindows/CVI平台开发的高层用户界面,检测卡驱动程序)组成,其结构如图1.
图1 超声检测系统示意Fig.1 Whole block diagram of Ultrasonic-testing system
图3 虚拟超声检测系统用户界面Fig.3 User-interface of Virtual Ultrasonic-testing system
超声检测卡是整个仪器的重要组成部分,考虑到超声检测中回波信号数据量以及ISA总线设计简单、成本低、速度适中等特点,超声检测卡设计成基于ISA总线标准. 其工作原理是,超声检测卡按照用户要求,通过计算机虚拟仪器的用户界面设定的超声波发射脉冲重复频率(20~2 kHz)产生同步时钟信号,控制同步电路产生触发超声波发射脉冲信号Trig、采样起始信号Ts、采样结束信号Te,信号Trig触发发射电路产生高频电压信号并加在发射探头上,探头受到高频电压信号激励产生超声波并通过耦合剂传入工件. 超声波遇到缺陷或工件底面反射回到探头,探头将超声波信号转化成微弱电信号传入超声检测卡. 超声检测卡通过限幅电路,AD8332进行高频放大,然后通过由阻容网络构成的滤波电路将微弱的电信号调制成适合AD9218转换的模拟信号. AD9218是一个3 V,10 bit的模数转换器,本检测卡采用40 MHz采样频率. 其中由一片FPGA芯片EP1C12Q240C8及同步电路控制高速ADC将模拟信号转化成数字信号,并经过数字滤波后存入FPGA片内开辟的RAM存储单元,计算机读取FPGA内数据进行处理和显示. 其结构如图2.
图2 超声检测卡结构框图Fig.2 Structure block diagram of Ultrasonic-testing card
超声检测软件部分包括超声检测系统的用户界面和超声检测卡的驱动程序.
虚拟超声检测系统用户应用软件是基于NI公司的Lab Windows/CVI平台开发的. Lab Windows/CVI是32位面向计算机测控领域的软件开发平台,它以ANSI C为核心,将功能强大、使用灵活的C语言平台与数据采集、分析和表达等测控专业工具有机结合,其中超声检测系统用户界面的功能是控制系统完成探伤过程及多通道检测,C扫图显示,灵敏度校验和打印探伤报告等[2]. 其功能界面如图3.
超声检测卡的驱动程序完成超声检测卡上的I/O端口和内存的访问,从而控制参数设定和过程控制,该驱动是基于WinDriver开发的,利用WinDriver开发设备驱动程序,不需要熟悉操作系统的内核,开发者在自己熟悉的开发环境下,利用用户模式来开发所需的驱动程序,具有简单、高效的特点[3].
将超声检测卡插在工控机ISA插槽中,打开DriverWizard,新建一个设备驱动工程,选择硬件设备的类型,本处选择ISA card,输入板卡资源I/O地址,内存地址等(具体分配见表1,表2),一直点击“NEXT”按钮,完成Windriver的自动生成,选择要使用的IDE,这里使用的是VC++6.0,IDE自动启动,编译产生二进制文件,连接库文件,使之成为windows可执行程序文件. 对功能函数进行分析,编写DLL文件,应用程序通过DLL来使用其导出函数实现和驱动程序的接口,从而访问硬件.
表1 I/O口地址资源Tab.1 Address resource of I/O
表2 RAM地址资源Tab.2 Address resource of RAM
将该系统整体连接并将其在机车轴承的探伤中得以实际应用测试. 由探伤用户界面的C数据显示选项卡,可以看到轴承的缺陷的波形图以及C扫描图和展开图,通过该选项卡可以清晰地看到缺陷的位置以及大小等信息,如图4.
图4 虚拟超声检测系统C数据显示Fig.4 C-data display of Virtual Ultrasonic-testing system
为了方便探伤数据的保存,本系统特别添加了超声探伤记录卡的打印功能,其中包括检验单位、探伤日期、探伤标准、所用探伤仪器及探头、耦合液类型等,可以通过打印机将该轴承的探伤数据打印保存,方便日后的查阅,如图5.
图5 虚拟超声检测系统探伤记录卡Fig.5 Test record of Virtual Ultrasonic-testing system
借助超声检测技术、虚拟仪器技术、电子技术以及信号处理技术等开发了虚拟超声检测系统,包括超声检测卡的硬件设计、超声检测卡的驱动设计和超声检测系统用户界面开发. 实践应用证明,该系统实现了超声检测的数字化、图形化和自动化. 但由于技术和时间有限,该系统存在不足之处有待进一步改善,比如使用人工智能、模式识别等算法提高系统检测的可靠性.