基于FPGA的八通道超声探伤系统设计
扫描二维码
随时随地手机看文章
摘要:文中提出了一种基于FPGA的八通道超声探伤系统设计方案。该系统利用低功耗可变增益运放和八通道ADC构成高集成度的前端放大和数据采集模块;采用FPGA和ARM作为数字信号处理的核心和人机交互的通道。为了满足探伤系统实时、高速的要求,我们采用了硬件报警,缺陷回波峰值包络存储等关键技术。此外,该系统在小型化和数字化方面有显著提高,为便携式多通道超声检测系统设计奠定基础。
关键词:八通道;超声探伤;硬件报警;FPGA
超声波探伤是一种重要的无损检测方法,在大型锅炉、发电机组、铁路桥梁和航空航天等各个工业部门都得到了广泛的应用,并成为保证工程质量、确保设备安全的一种重要手段。
目前国内研制的超声探伤仪器大部分为便携式单通道。这些仪器重量轻,使用方便,便于探伤人员携带使用。但单通道仪器同时具有扫查面积小,速度慢,误判率高等缺陷,不利于扫描大型器件。而少数多通道仪器则都是基于PC机所研制的。这些仪器能够快速扫描各种器件,但是同时具有体积大,价格高等缺点,不利于多通道探伤仪的应用和普及。
针对上述提到的一些问题,结合现代数字信号处理技术和微电子技术,提出了一种基于嵌入式系统和FPGA的便携式八通道超声探伤系统的解决方案。该方案采用ARM9处理器作为主控芯片,利用大容量的FPGA进行并行处理,能够同时满足便携性和实时性两大要求。并能通过以太网接口,将数据快速传输到PC机上,对信号进行进一步的处理。
1 八通道超声探伤系统硬件设计
本系统的硬件总体框图如图1所示。系统主要包含前端发射接收电路、八通道模数转换电路,FPGA数据处理与逻辑控制系统和ARM后处理模块4个部分组成。
前端发射接收电路的主要作用为生成用于激发探头阵元产生超声波的高压脉冲,接受回波,以及实现对回波信号进行数控增益。ADC将采样的模拟信号转化成数字信号。FPGA模块主要实现对数据的FIR滤波,非均匀压缩,硬件报警,峰值包络的存储,以及相关的控制逻辑。ARM后处理模块主要实现波形显示、通道切换、频谱分析、参数预置、人机交互等功能和一些相关外设的驱动。
1.1 前端发射接收电路
前端发射接收电路是实现八通道超声设备主要性能指标的关键。一般由探头触发电路,隔离网络,带通滤波器,可变增益放大器(VGA)4部分级联而成。
可变增益放大器部分由三级可变增益AD8331级联而成。AD8331是一款单通道、超低噪声、线性dB可变增益放大器(VGA),针对超声系统应用进行了优化,可以用作低噪声可变增益元件。这款器件内置一个超低噪声前置放大器(LNA)、一个48 dB增益范围的VGA以及一个具有可调输出限制功能的可选增益后置放大器。经过三级级联和调试以后能够实现0~120 dB的增益动态范围。
1.2 八通道数模转换电路
本系统采用AD9212作为八通道模数转换器。AD9212是ADI公司推出的一款八通道,10位采样精度模数转换器。该器件内置采样保持电路,低成本,低功耗,小尺寸,单片集成八个通道的AD电路,能够极大的减少电路设计的工作量和所需的电路板的面积。与此同时,AD9212采用串行LVDS数据输出和DDR操作,既具有较高的数据输出速率,又能减少所需的接口IO资源。
1.3 数据处理与逻辑控制模块
在本系统中,数据处理与逻辑控制子系统承担着实时处理八通道数据,配置八个通道的参数,以及操作总线与ARM进行通信的任务。FP GA具有丰富的可编程资源,集成度高,实现灵活,能够很好的满足设计要求。
数据处理与逻辑控制子系统的结构框图如图2所示,该子系统主要分成数据处理部分和逻辑控制部分。数据处理模块实时处理数模转换器传输来的数据流,逻辑控制模块负责控制外设以及FPGA内部各个模块的时序。数据处理模块包括DDR2串并转换,将AD转换器传输的DDR数据串行转换成并行数据。并行数据经过FIR滤波器,去除了模拟前端引入的噪声,最后通过检波和非均匀压缩以后得到包络数据。逻辑控制模块主要实现发射的正负延时控制,增益的控制以及该子系统的状态监测和控制。
1.4 ARM后处理系统
ARM后处理系统的硬件结构如图3所示。ARM的高性能的处理能力和较强的内存管理技术能有效完成数据的后处理,将探测结果多种显示模式直观的呈现出来。同时它还有丰富的片内外围设备接口,如网口,串口,USB接口,非常适合便携式嵌入式系统的应用,大大简化了硬件的设计难度。
2 八通道超声探伤系统软件设计
本系统的应用程序基于Qt/Embedded开发,在软件设计时采用了层次化、模块化的思想。利用Qt中的信号与槽机制,以及C++面向对象方法将软件主要分为如下模块:数据通信模块(驱动接口)、运算处理模块、界面模块、主控模块、参数预置模块、数据管理模块等。模块之间可通过信号与槽通信。软件框架如图4所示。
3 八通道探伤系统设计中的关键技术
3.1 硬件报警技术
以往的单通道仪器多使用软件报警技术。所谓软件报警,就是采用软件的方法进行波形闸门比较和报警。其最大的优点是闸门的设定比较灵活。其缺点是报警会产生滞后,报警响应慢。一般在单通道低重复频率条件下,处理器响应速度尚可以接受;然而对于高重复频率和多通道的情况,软件报警将会占用处理器大量时间,造成报警滞后,无法满足实际探伤的要求。因此,在将要研制的八通道仪器中,只能采用FPGA来实现八通道的实时报警。
硬件报警器主要分为2种:进波(A门)报警和失波(B门)报警。当缺陷回波的峰值超过A门时,触发进波报警,指示工件中存在较大缺陷。当回波信号的峰值移出B门时,触发失波报警,指示回波信号较弱,仪器工作异常。本文在FPGA中,使用状态机实现2种报警器。进波报警状态机和失波报警状态机如图5所示。
3.2 缺陷回波峰值包络的存储技术
峰值包络是指一定时间内,缺陷回波的峰值所形成的包络。峰值包络用来估计缺陷的状况。记录峰值包络可以让探伤人员对缺陷大小做详细和准确的计算。针对八通道超声探伤系统通道多、数据量大的情况,采用了FPGA来对峰值包络进行实时记录存储。
具体工作流程如下:在报警状态下,分别将回波信号存储器和报警数据存储器相同地址处的存储值取出比较,如果前者大于后者,那么用回波信号存储器的数据写入报警数据存储器对应地址处,用新的数据刷新旧的数据。否则保持原来的存储值不变。如此往复循环,将新来的每一帧回波信号与报警数据存储器中存储的峰值包络进行比较,直到报警结束就可以得到整个报警期间所有缺陷回波的峰值包络。图6为缺陷峰值包络存储框图。
3.3 八通道实时数据传输
本系统中,FPGA同时处理八通道波形数据,将要显示的通道的实时数据传送入FIFO中。ARM系统需要从FIFO中读入波形数据并进行实时的波形显示,这对系统的实时性要求非常高。为了向应用程序及时高效地传递实时数据,我们采用了Linux的异步通知机制,该机制结合了应用层的信号机制与驱动层的中断机制,从而实现了应用层对设备的异步操作。
以重复频率50 Hz为例,FPGA每隔20 ms发送一个中断信号给ARM,ARM模块接收到中断后,在中断处理程序中读取FIFO数据,并向应用程序发送SIGIO信号。应用程序接收到信号后,产生一个Qt事件,并将其挂入到Qt事件队列中等待响应。实际运行表明,系统能够稳定地传输和实时显示波形,该方案是可行的。
4 实验结果
在超声波探伤过程中,通过将波形峰值与一条特定标准的曲线进行比较,用户便可以确定材料内部有无缺陷和缺陷大小以及位置的情况。常用的曲线包括AVG曲线和DAC曲线。
直探头情况下,通常使用AVG曲线。AVG曲线一般由设备自行测出。对于不同的孔径,可以通过测量得出不同的孔径曲线。本文所研发的八通道仪器可以同时测出8条AVG曲线,如图7所示。图中可以看到同时显示的八条AVG曲线,同时显示了第二通道的回波包络波形。
5 结束语
文中提出了一种嵌入式八通道超声波探伤仪系统的设计方案。一方面,系统完全采用数字化设计,利用FPGA丰富的资源,提高系统处理并行数据的能力,完成了系统核心功能的实现。另一方面,嵌入式ARM后处理子系统以其丰富的外部接口,大大提高了硬件的集成度,同时,Linux操作系统和QT/Embedded集成开发环境,方便今后软件系统的维护、更新和升级。系统运行和测试表明,该方案切实可行,能够满足八通道探伤系统的要求,具有广阔的应用前景。