一种距离-波幅曲线校正的实现方法

文档序号:5952026阅读:576来源:国知局
专利名称:一种距离-波幅曲线校正的实现方法
技术领域
本发明涉及一种超声波探伤技术,特别涉及一种距离-波幅曲线校正的实现方法。
背景技术
在超声波探伤中,对于性质和大小相同的缺陷,由于深度(声程)的不同,缺陷反射的回波高度也不同。为了解决这一问题,需要制作相同尺寸不同深度的人工反射体的距离-波幅曲线(DAC曲线),来描述反射体回波高度随距离变化的关系,用于对缺陷信号 超声回波幅度定量和灵敏度的校正。如图I所示DAC校正示意图,DAC曲线制作,一般采用设点连线的方式,第一点的位置采用自动增益功能调到80%左右,然后依次制作后面的点,将制作的点依次连接起来就形成了 DAC曲线。由于制作的是有限个点,探伤时的声程与制作DAC曲线时的声程不一定相符,所以实际调用DAC曲线的时候,需要进行插值计算,以便绘出在当前参数下的DAC曲线。由于DAC曲线的插值运算包含较复杂的浮点运算,因此,在现有的探伤设备中需要额外增加一片微处理器进行超声回波数据的DAC曲线校正,增加了硬件开发复杂度,增加了设备成本,降低了设备可靠性,而且DAC曲线校正速度受制于微处理器速度,通常比较慢,难以满足在线设备高速信号处理的要求。

发明内容
本发明是针对超声波探伤中距离-波幅曲线校正速度慢、成本高的问题,提出了一种距离-波幅曲线校正的实现方法,该方法使用FPGA实现了基于DAC曲线的缺陷信号超声回波幅度校正,解决了校正过程中必须使用微处理器进行浮点运算的问题,简化了超声探伤设备硬件开发复杂度。本发明的技术方案为一种距离-波幅曲线校正的实现方法,具体包括如下步骤
1)定义距离-波幅曲线根据各个距离-波幅点拟合相应距离-波幅曲线,并将DAC曲线离散为固定间隔的DAC曲线校正段,每个DACAPn(xn,yn)均为两个坐标值,Xn横坐标DAC_x为时间(us),yn纵坐标为DAC_y增益(dB),间隔时间定为IOOns,每个固定间隔的距离-波幅校正值定义为单位DAC增益(DAC_ Λ A);
2)将命令参数下载给FPGA现场可编程门阵列,命令参数下发时,首先将每个DAC点的DAC_x,DAC_y和DAC_ Λ A参数下发,最后下发DAC开关命令,参数定义如下
Α:定义DAC_x命令参数总长36位;bit35-bit32位为此DAC点定义的顺序位,即此点为第几个DCA点,从I开始计数;bit31-bitl6保留;bitl5-bit0位为对应此DAC点的DAC_X值;
B:定义DAC_y命令参数总长36位;bit35_bit32位为此DAC点定义的顺序位,即此点为第几个DCA点,从I开始计数;bit31-bit0位为对应此DAC点的DAC_y值;C:定义DAC_AA命令参数总长37位;bit36_bit33位为此DAC点增益定义的顺序位,即此增益为第几个DCA点的增益,每个DAC_ Λ A参数对应一条拟合直线,取直线起点作为该参数;bit32位为参数符号,与拟合直线斜率符号相同;bit31-bit0位为此DAC点增益的 DAC_AA 值;
D:定义DAC_control命令参数总长32位;bit32_bit5保留;bit4为DAC开关位,I表示DAC功能开,O表示DAC功能关;bit3-bit0为DAC总点数;
3)FPGA现场可编程门阵列内DAC校正模块根据步骤2)下发的命令参数对采样数据Pn(xn, yn)进行DAC校正,DAC校正采用比例校正方式,即某时刻采样点的数据Pn(xn,yn)与该时刻对应的DAC校正增益(DAC_yn + k*DAC_ Λ An)相乘,乘积为校正后的采样点数据,其中K为米样步长。所述步骤3)中DAC校正过程由一个状态机控制,每个状态转移如下 1)、Idel:空闲状态,等待采样开始,采样开始进入DAC_ready状态;
2)、DAC_ready:判断是否启动DAC校正(DAC_open是否为1),如果没有启动DAC校正(DAC_open = O),则进入 DAC_closed 状态,否则(DAC_open = I),进入 DAC_open 状态;
3),DAC_closed:将输入采样数据P1 (X1, yj直接输出,等待采样结束,返回Idel状态;
4)、DAC_open:将第一个DAC点对应的参数赋值DAC_xl、DAC_yl、DAC_AA1给当前参数,跳转到wait_spot状态;
5)、wait_spot:等待进入DAC曲线校正区域,进入DAC曲线校正区域后进入spot_begin状态,否则停留在wait_spot状态;
6)、spot_begin:将输入的采样数据Pn(xn, yn)与(DAC_yn + k*DAC_AAn)相乘,将乘积作为DAC校正后数据输出,第一次进入该状态时,n = l,k = 0,固定时间间隔(100ns)后进A spot_end 状态;
7)、spot_end:判断是否到下一个DAC点,没到,k = k + I,跳回spot_begin,否则跳转到 next_spot 状态;
8)、next_spot:判断η是否大于等于DAC点总数,如果大于等于DAC点总数,跳转到DAC_end状态,结束DAC补偿,否则,将下一个DAC点对应的参数赋值给当前参数,η = η +1,跳回 spot_begin ;
9)、DAC_end:将输入采样数据直接输出,等待采样结束,返回Idel状态。本发明的有益效果在于本发明距离-波幅曲线校正的实现方法,解决了校正过程中必须使用微处理器进行浮点运算的问题,简化了超声探伤设备硬件开发复杂度,降低开发成本,提高校正速度和硬件可靠性。


图I为现有技术中距离-波幅曲线校正示意 图2为本发明距离-波幅曲线校正的实现方法中距离-波幅曲线离散化示意 图3为本发明距离-波幅曲线校正的实现方法中距离-波幅曲线校正模块示意 图4为本发明距离-波幅曲线校正的实现方法中距离-波幅曲线校正过程状态转移图。
具体实施例方式本发明所采用的技术方案是根据各个DAC点拟合相应距离-波幅曲线(DAC曲线),并将DAC曲线离散为固定间隔的DAC曲线校正段,通过参数下载给FPGA (Field 一Programmable Gate Array现场可编程门阵列),FPGA根据参数在对应的曲线段内对采样信号进行DAC曲线校正,如图2所示DAC曲线离散化示意图,其中DAC曲线拟合由PC即完成,将离散后的DAC曲线用参数形式下发给FPGA ;FPGA根据DAC曲线参数,对采样数据进行DAC曲线校正。DAC曲线最多支持16个DAC点,增益校正范围为_20dB 30dB,每个DAC点Pn(xn, yn)均有两个坐标值,χη横坐标DAC_x为时间(心),5^纵坐标为DAC_y增益(dB)。曲线拟合算法采用直线拟合,在相邻两个DAC点之间拟合一条直线,然后对DAC曲线离散为固 定间隔的DAC曲线校正段,为保证校正精度,每个间隔定为100ns,将每个固定间隔的DAC校正值定义为单位DAC增益(DAC_ Λ A),将DAC开关,DAC点数,每个点的DAC_x和DAC_y,DAC_八八作为命令参数下载给? 6八。每个命令格式定义如下
I)定义令参数总长36位;bit35-bit32位为此DAC点定义的顺序位,即此点为第几个DCA点,从I开始计数;bit31-bitl6保留;bitl5-bit0位为对应此DAC点的DAC_X值。2)定义令参数总长36位;bit35_bit32位为此DAC点定义的顺序位,SP此点为第几个DCA点,从I开始计数;bit31-bit0位为对应此DAC点的DAC_y值。3)定义DAC_A A命令参数总长37位;bit36_bit33位为此DAC点增益定义的顺序位,即此增益为第几个DCA点的增益,每个DAC_AA参数对应一条拟合直线,取直线起点作为该参数;bit32位为参数符号,与拟合直线斜率符号相同;bit31-bit0位为此DAC点增益的DAC_AA值。4)定义DAC_control命令参数总长32位;bit32_bit5保留;bit4为DAC开关位,I表示DAC功能开,O表示DAC功能关;bit3-bit0为DAC总点数。命令参数下发时,首先将每个DAC点的DAC_x,DAC_y和DAC_ Δ A参数下发,最后下发DAC开关命令。在FPGA内设计DAC校正模块,DAC校正模块根据下发的命令参数对采样数据进行DAC校正,如图3所示校正模块示意图。DAC校正采用比例校正方式,即某时刻采样点的数据与该时刻对应的DAC校正增益相乘,乘积为校正后的采样点数据。DAC校正过程由一个状态机控制,如图4所示DAC校正过程状态转移图,每个状态转移如下
1)Idel :空闲状态,等待采样开始,采样开始进入DAC_ready状态;
2)DAC_ready :判断是否启动DAC校正(DAC_open是否为I ),如果没有启动DAC校正(DAC_open = O),则进入 DAC_closed 状态,否则(DAC_open = I),进入 DAC_open 状态;
3)DAC_closed:将输入采样数据直接输出,等待采样结束,返回Idel状态;
4)DAC_open:将第一个DAC点对应的参数赋值给当前参数,跳转到wait_spot状态;
5)wait_spot:等待进入DAC曲线校正区域,进入DAC曲线校正区域后进入spot_begin状态,否则停留在wait_spot状态;
6)spot_begin:将输入的采样数据与(DAC_yn + k*DAC_ Δ An)相乘,将乘积作为DAC校正后数据输出,第一次进入该状态时,n = l,k = O,固定时间间隔(IOOns)后进入spot_end状态,K为采样的步长;
7)spot_end :判断是否到下一个DAC点,没到,k = k + I,跳回spot_begin,否则跳转到 next_spot 状态;
8)next_spot:判断η是否大于等于DAC点总数,如果大于等于DAC点总数,跳转到DAC_end状态,结束DAC补偿,否则,将下一个DAC点对应的参数赋值给当前参数,η = η + 1,跳回 spot_begin ;
9)DAC_end:将输入采样数据直接输出,等待采样结束,返回Idel状态。本实施例中采样频率为100MHz,DAC点数为3点,分别为P1O^y1K P2 (x2,y2)、P3 (x3, y3),如图 2 所不,其中 X1 = IOus, Y1 = OdB, x2 = 30us, y2 = IOdB, x3 = 45us, y3 =-10dB,具体实施过程如下 一、软件根据曲线拟合结果生成相应的DAC曲线命令参数,下发给FPGA,以16进制表示的参数列表如下
DAC_xl :36’ hi 0000 03E8 ;
DAC_yl :36,hi 0000 0000 ;
DAC_x2 :36’ h2 0000 0BB8 ;
DAC_y2 :36,h2 0194 C583 ;
DAC_x3 :36,h3 0000 1194 ;
DAC_y3 :36’ h3 0028 7A26 ;
DAC_AA1 :37’ h03 0002 061B ;
DAC_ Δ A2 :37 ’ h04 0002 6DBA ;
DAC_control :32’ hOOOO 0013 ;
二、从上到下依次将上述参数下发到FPGA中的DAC校正模块中,DAC校正模块根据下发的命令参数对采样数据进行DAC校正,如图3所示。DAC校正采用比例校正方式,即某时亥IJ采样点的数据与该时刻对应的DAC校正增益相乘,乘积为校正后的采样点数据。DAC校正过程由一个状态机控制,每个状态转移如下
1、Idel:空闲状态,等待采样开始,采样开始进入DAC_ready状态;
2、DAC_ready:判断是否启动DAC校正(DAC_open是否为I),如果没有启动DAC校正(DAC_open = 0),则进入 DAC_closed 状态,否则(DAC_open = I),进入 DAC_open 状态;
3、DAC_closed:将输入采样数据P1 (x1; Y1)直接输出,等待采样结束,返回Idel状态;
4、DAC_open:将第一个DAC点对应的参数赋值DAC_xl、DAC_yl、DAC_A Al给当前参数,跳转到wait_spot状态;
5、wait_spot:等待进入DAC曲线校正区域,进入DAC曲线校正区域后进入spot_begin状态,否则停留在wait_spot状态;
6、spot_begin:将输入的采样数据Pn(xn, yn)与(DAC_yn+ k*DAC_ Δ An)相乘,将乘积作为DAC校正后数据输出,第一次进入该状态时,n = l,k = 0,固定时间间隔(100ns)后进入spot_end 状态;
7、spot_end:判断是否到下一个DAC点,没到,k = k + 1,跳回spot_begin,否则跳转到 next_spot 状态;
8、next_spot:判断η是否大于等于DAC点总数3,如果大于等于DAC点总数3,跳转到DAC—end状态,结束DAC补偿,否则,将下一个DAC点对应的参数赋值给当前参数,η = η +I,跳回 spot—begin ;
9、DAC—end :将输入米样数据直接输出,等待米样结束,返回Idel状态。
权利要求
1.一种距离-波幅曲线校正的实现方法,其特征在于,具体包括如下步骤 1)定义距离-波幅曲线根据各个距离-波幅点拟合相应距离-波幅曲线,并将DAC曲线离散为固定间隔的DAC曲线校正段,每个DACAPn(xn,yn)均为两个坐标值,Xn横坐标DAC_x为时间(us),yn纵坐标为DAC_y增益(dB),间隔时间定为IOOns,每个固定间隔的距离-波幅校正值定义为单位DAC增益(DAC_ Λ A); 2)将命令参数下载给FPGA现场可编程门阵列,命令参数下发时,首先将每个DAC点的DAC_x,DAC_y和DAC_ Λ A参数下发,最后下发DAC开关命令,参数定义如下 Α:定义DAC_x命令参数总长36位;bit35-bit32位为此DAC点定义的顺序位,即此点为第几个DCA点,从I开始计数;bit31-bitl6保留;bitl5-bit0位为对应此DAC点的DAC_X值; B:定义DAC_y命令参数总长36位;bit35_bit32位为此DAC点定义的顺序位,即此点为第几个DCA点,从I开始计数;bit31-bit0位为对应此DAC点的DAC_y值; C:定义DAC_AA命令参数总长37位;bit36_bit33位为此DAC点增益定义的顺序位,即此增益为第几个DCA点的增益,每个DAC_ Λ A参数对应一条拟合直线,取直线起点作为该参数;bit32位为参数符号,与拟合直线斜率符号相同;bit31-bit0位为此DAC点增益的 DAC_AA 值; D:定义DAC_control命令参数总长32位;bit32_bit5保留;bit4为DAC开关位,I表示DAC功能开,O表示DAC功能关;bit3-bit0为DAC总点数; 3)FPGA现场可编程门阵列内DAC校正模块根据步骤2)下发的命令参数对采样数据Pn(xn, yn)进行DAC校正,DAC校正采用比例校正方式,即某时刻采样点的数据Pn(xn,yn)与该时刻对应的DAC校正增益(DAC_yn + k*DAC_ Λ An)相乘,乘积为校正后的采样点数据,其中K为米样步长。
2.根据权利要求I所述距离-波幅曲线校正的实现方法,其特征在于,所述步骤3)中DAC校正过程由一个状态机控制,每个状态转移如下 1)、Idel:空闲状态,等待采样开始,采样开始进入DAC_ready状态; 2)、DAC_ready:判断是否启动DAC校正(DAC_open是否为1),如果没有启动DAC校正(DAC_open = O),则进入 DAC_closed 状态,否则(DAC_open = I),进入 DAC_open 状态; 3),DAC_closed:将输入采样数据P1 (X1, yj直接输出,等待采样结束,返回Idel状态; 4)、DAC_open:将第一个DAC点对应的参数赋值DAC_xl、DAC_yl、DAC_AA1给当前参数,跳转到wait_spot状态; 5)、wait_spot:等待进入DAC曲线校正区域,进入DAC曲线校正区域后进入spot_begin状态,否则停留在wait_spot状态; 6)、spot_begin:将输入的采样数据Pn(xn, yn)与(DAC_yn + k*DAC_AAn)相乘,将乘积作为DAC校正后数据输出,第一次进入该状态时,n = l,k = 0,固定时间间隔(100ns)后进入spot_end状态;(此处K没有定义?) 7)、spot_end:判断是否到下一个DAC点,没到,k = k + I,跳回spot_begin,否则跳转到 next_spot 状态; 8)、next_spot:判断η是否大于等于DAC点总数,如果大于等于DAC点总数,跳转到DAC_end状态,结束DAC补偿,否则,将下一个DAC点对应的参数赋值给当前参数,η = η +I,跳回 spot—begin ; 9)、DAC—end :将输入釆样数据直接输出,等待釆样结束,返回Idel状态。
全文摘要
本发明涉及一种距离-波幅曲线校正的实现方法,根据各个DAC点拟合相应距离-波幅曲线(DAC曲线),并将DAC曲线离散为固定间隔的DAC曲线校正段,通过参数下载给FPGA现场可编程门阵列,FPGA根据参数在对应的曲线段内对采样信号进行DAC曲线校正。此方法解决了校正过程中必须使用微处理器进行浮点运算的问题,简化了超声探伤设备硬件开发复杂度,降低开发成本,提高校正速度和硬件可靠性。
文档编号G01N29/44GK102778512SQ20121023019
公开日2012年11月14日 申请日期2012年7月5日 优先权日2012年7月5日
发明者杨帆 申请人:上海电力学院
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1