基于Linux操作系统设计一种新型数字超声探伤仪

接口/总线/驱动

50人已加入

描述

超声波探伤仪的种类繁多,但在实际的探伤过程,脉冲反射式超声波探伤仪应用的最为广泛。一般在均匀的材料中,缺陷的存在将造成材料的不连续,这种不连续往往又造成声阻抗的不一致,由反射定理我们知道,超声波在两种不同声阻抗的介质的交界面上将会发生反射,反射回来的能量的大小与交界面两边介质声阻抗的差异和交界面的取向、大小有关。脉冲反射式超声波探伤仪就是根据这个原理设计的。

超声探伤时,应用得最多的是A型显示,如图1所示。在A型显示中,横坐标代表被测物的深度,纵坐标代表回波信号的幅度。

超声波

本文利用ARM9芯片和高速FPGA数据采集及信号处理技术,在Linux操作系统平台上设计并实现了一种新型数字超声探伤仪。该探伤仪具有高性能、低成本、外围接口扩展丰富以及低功耗等特点。

设计思想与总体方案

本设计中的嵌入式探伤仪由两部分组成,一部分是模拟信号前端,包括超声发射接收电路及电源电路;另一部分是数字信号采集处理及控制后端,简称超声主控计算机。系统硬件的总体框图如图2所示。

超声波

图2 系统硬件总体框图

系统中选用S3C2440处理器,内嵌ARM920T核。本设计应用了这款芯片的诸多特点:高达203MHz的主频;内部集成LCD控制器;3路异步串行通信接口;内置看门狗定时电路及实时时钟;内部集成两路USB host和一路USBdevice;对嵌入式Linux良好的支持等。

在超高速数据采集方面,本系统中选用的Spartan-3结构与Virtex-II类似,1.2V内核,其在超高速数据采集和信号处理方而有着明显的优势。仪器性能方面,为了保证数字超声探伤仪0.01mm的检测精度和0~6000mm可变探测范围,在FPGA中主要进行如下数字信号处理:

◆ 60MHz硬件采样速率通过四次移相时钟处理,实现等效240MHz高采样率

◆ 数字滤波,程控带通FIR滤波器保证对0.5MHz~15MHz回波信号的良好数字滤波

◆ 数字检波,包括正向、负向、双向及RF检波

◆ 智能提取(提取点动态分配算法以保证显示波形的水平线性)

◆ 实时探伤报警(硬件报警闸门)

在仪器功能方面,充分利用ARM+Linux嵌入式系统的优势,扩展网络、USB等丰富接口,使得仪器可以实现PC机端Windows下的上位机软件和探伤仪上的LCD同步实时显示,随时下载探伤参数和上传探伤数据与图片,并使机器能连接U盘、移动硬盘、USB打印机等诸多设备。

本设计采用最新的Linux内核(Linux2.6.16),系统在响应速度、驱动功能等诸多方而都远远优于传统的2.4内核。在本项目开发过程中,采用的是网络文件系统;在最终的产品上,采用的是在DOC(MTD)上的ext2文件系统。 

系统硬件资源分配

总线分配

S3C2440地址总线内部是32位(4G),外部27位(128M)。数据总线宽度为32位。当外设芯片与CPU相接时,主控计算机的数据总线宽度可设置为32位、16位或8位模式。设置是在BWSCON寄存器中的DW位实现的。各外部设备的总线接法如表1所示。

超声波

外部地址空间分配

S3C2440提供8路片选,nGCS[0~7],每个片选都指定了固定的地址,每个片选固定间隔为128MB。

本系统中各外围接口设备所对应的地址空间分别为:

(1)NOR FLASH,nGCS0,接的是一片8M×16位数据宽度的INTEL TE28F128 FLASH,用于存放pPCBoot引导程序和Linux内核;

(2)网络芯片DM9000,使用nGCS1,用于网络传输收发数据的转存;

(3)DOC,使用nGCS2,存放文件系统包括管理程序、系统命令等;

(4)FPGA连接nGCS3,nGCS4;keyboard+led使用nGCS3,前端数字信号处理使用nGCS4。

(5)主控计算机内存由两片16M×16位数据宽度的SDRAM构成,两片拼成32位模式,共用nGCS6。共64M RAM,用于动态数据缓存。

中断资源分配

S3C2440 可处理56路中断,其中24路为外部中断EINTn。板上扩展的外设接口中,网络接口芯片DM9000使用EINT0。FPGA扩展中断资源为 EINT1、EINT2、EINT3、EINT4、EINT5、EINT6及EINT7。键盘用EINT2,前端图像数据更新用EINT3,回波频率测试数据更新用EINT4,系统关机按键用EINT1。

系统软件设计

系统软件的总体框图如图3。

超声波

图3 系统软件总体框图

超声探伤系统同时要处理的任务比较多,而且实时性要求高,因此在探伤应用程序中使用多线程技术。本系统可以分为四个线程,在主线程中,用MiniGUI实现实时探伤、参数下载和报表打印三个模块的功能,另外创建三个辅助线程,分别为:

读数据线程,用于读取实时探伤数据;读键盘线程,读取键盘上被按下的按键键值,然后再通过 SendMessage(hWnd,iMsg,wParam,lParam)发送一个按键消息,此消息将在MiniGUI的主窗口过程函数中进行处理;网络线程,向上位机传送探伤数据,并接收上位机的控制命令。 

测试及结论

经检测表明,本设计样机的功能和指标达到或超过国家行业标准JB/T 10061-1999《A型脉冲反射式超声探伤仪通用技术条件》的要求。其中,超声探伤仪最重要的指标一一探伤灵敏度佘量高达68dB(同家标准规定不低于46 dB),而薄板分辨力小于1mm(国家标准规定不高于3mm)。

试用证明,本嵌入式数字超声探伤仪设计项目具有性能优异、可靠性高、界面友好、操作方便、性价比高等诸多优点,在国内工业超声探伤仪领域处于领先水平。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分