基于小波-神经网络的电阻性开路故障诊断方法
2013-12-03余长庚赖丽萍
余长庚,赖丽萍
(广西贺州学院,广西贺州542800)
数字电路的电阻性开路故障是在电路直接相连的内部节点之间,由于缺陷电阻的存在而引起的故障。电阻性开路故障一般不会立刻引起电路的电压性故障,但它会造成时滞性故障,并且使用基于电压测试的方法不能对电阻性开路故障进行有效检测[1-2];电阻性开路故障含有一些不可靠性因素,在电路工作过程中,有可能会使电路功能失效,从而造成产品的可靠性下降。
Rius[3]研究了电源电压、测试速度和温度等测试条件对电阻性开路故障的影响,但国内对这方面的研究并不是很多。本文针对CMOS电路的电阻性开路故障,采用基于瞬态电流IDDT的故障诊断方法,以常用的CMOS组成的倒相器链为实例。首先对电源电流的瞬态电流IDDT的波形进行采样,根据正常电路与故障电路的瞬态电流的变化波形进行比较,从而发现电阻性开路故障;为了提高故障诊断率和诊断速度,利用主成分分析、小波和神经网络等技术进行故障诊断。
1 基于小波-神经网络的故障诊断技术
瞬态电流IDDT的测试是从被测电路的电源VCC到地回路之间,通过对电源电流观察来判别被测电路是否存在故障。测量方法是对故障进行激励,按照不同的故障类别,输入不同的测试向量对,然后观察流过电源VCC到地回路之间的瞬态电流是否发生变化,并与正常瞬态电流比较,其结果能判断电路是否存在故障。因此,在瞬态电流测试中主要研究的工作是如何选择高效率的测试向量对故障激活、瞬态电流的采集方法以及测试响应分析方法等。
小波-神经网络的故障诊断步骤为首先利用小波分析(或小波包分析)技术,将采集的瞬态电流信号在相互独立的频带之内分解,并将各频带内的能量值组成一个向量,不同的故障对应不同的向量值;然后作为特征向量输入到神经网络输入单元;再将确定好输入特征向量的神经网络,根据经验法确定神经网络类型、神经网络的隐层数和隐层单元数等,利用采集到的训练样本对神经网络进行训练,通过调整各个神经单元的权值,从而建立起所需的小波神经网络模型[4]。图1为小波-神经网络IDDT故障诊断步骤。
图1 基于小波-神经网络IDDT的故障诊断步骤Fig.1 Wavelet-neural network based IDDTfault diagnosis steps
2 电阻性开路故障瞬态电流IDDT方法
采用IBM公司的0.18 μm工艺设计一个6级倒相器链。在倒相器链级与级之间插入电阻性开路故障,如图2所示。
插入电阻性开路故障后,电路的瞬态电流IDDT具有明确的故障位置信息[5],可以作为故障定位信号使用。若在电路输入端输入一个脉冲跳变信号,模拟故障后峰值发生的时间与插入的电阻阻值大小有关,其结果是插入的阻值越小,IDDT第二个峰值距第一个峰值越短[5]。
对瞬态电流IDDT测试方法进行仿真分析,结果表明此方法非常适用于对电阻性开路故障进行检测,而且瞬态电流IDDT也能准确反映故障的位置信息,为故障诊断提供依据。本仿真采用的电路是CMOS电路的倒相器链;但是数字电路都是采用逐层设计结构,因此瞬态电流IDDT测试方法在其它门阵电路、组合逻辑中同样成立。
图2 插入电阻性开路故障的倒相器链Fig.2 Inverter chains of resistive-open defects
3 主成分分析方法
对多个变量之间具有一定相关关系的变量,在分析的过程中,希望涉及的变量较少,而得到的信息量较多,主成分分析方法正是适应这一要求的理想工具。它将多个变量通过线性变换导出较少个数的重要变量,从而把高维数据空间降为低维特征空间。
假如有n个数据样本,如每个样本共有p个变量,就构成一个n×p阶的输入数据矩阵X,
当p较大时,输入数据矩阵X维数就大,考察问题比较麻烦。通常采取降维处理,即采用较少的综合指标代替原来较多的变量指标,并且这些较少的综合指标,既尽量多地反映原来较多变量指标所反映的信息,这些变量之间又是彼此独立的。
定义:设 x1,x2,…,xP为原变量指标,z1,z2,…,zm(m ≤ p)为新变量指标
式(2)中系数lij的确定原则:
(1)zi与 zj(i≠ j;i,j=1,2,…,m)之间相互无关;
(2)z1是x1,x2,…,xP的一切线性组合中方差最大者,z2是与z1不相关的x1,x2,…,xP的所有线性组合中方差最大者;…;zm是与 z1,z2,……,zm-1都不相关的 x1,x2,…xP的所有线性组合中方差最大者。
主成分分析的实质就是确定原来变量xj(j=1,2,…,p)在诸主成分zi(i=1,2,…,m)上的荷载lij(i=1,2,…,m;j=1,2 ,…,p)。则新变量指标z1,z2,…,zm分别称为原变量指标x1,x2,…,xP的第1,2,…,m主成分。
4 电阻性开路故障诊断实例
实验电路采用如图2所示的倒相器电路,在电路中共设置6个故障模式,分别为正常模式、r1~r5电阻模式仿真,在Pspice仿真平台上,采集瞬态电源电流,导入到MATLAB软件中,采用小波包分析,进行三层小波包分解,提取第三层共8个小波系数,组成8维的故障特征矢量。图3(a)为无故障模式的小波系数重构图,图3(b)为r1电阻模式的小波系数重构图。
图3 小波系数重构图Fig.3 Reconstruction diagram of wavelet coefficients
输入两种不同类型的数据:一种是PCA之前的数据,另一种是PCA之后的数据。首先我们将PCA之前的数据输入BP神经网络。此时,BP神经网络的输入层神经元个数为6,对应6种故障模式;采用启发式改进BP算法的方法,也就是加动量修正法,可以提高训练速度。设学习速度为0.01,动量值为0.9,目标误差0.01,BP神经网络的训练曲线如图4(a)所示。从图中可以看出,BP神经网络经过6 575步训练达到了训练目标。之后利用主成分分析等数据预处理技术对电阻性开路故障特征进行压缩处理,可用找到每个故障样本的3维故障特征矢量,输入到BP神经网络,重复上述程序,结果如图4(b)所示。从图中可以看出,经过PCA之后的数据,BP神经网络只需要1 247步训练即达到了训练目标,收敛步骤及所用时间大幅减少。
图4 均方误差和训练次数关系曲线Fig.4 Relation curve of mean square error and training frequency
二者的具体数据对比结果如表1所示。
由神经网络仿真过程和表1可知,采用主成分分析方法后,神经网络的输入向量维数减少,神经网络的结构得到简化,其结果是神经网络训练的迭代次数减少,这样改善了神经网络训练周期,收敛时间减少,提高了故障诊断的速度。
表1 主成分分析前后数据对BP神经网络的影响Table 1 Impact of before and after principal component analysis data on BP neural network
[1]ARUMI D,RODRIGUEZ-MONTANWS R,FIGUERAS J,et al.Gate Leakage Impact on Full Open Defects in Interconnect Lines[J].IEEE Transaction on Very Large Scale Integration(VLSI)Systems,2011,19(12):2209 -2220.
[2]RIUS J.A method fordetecting resistive opens in buses[C]//IEEE 16th International On-Line Testing Symposium(IOLTS),Corfu,Greece:IEEE Computer Society,2010:187 -189.
[3]BHOJ A N,SIMSIR M O,JHA N K.Fault Models for Logic Circuits in the Multigate Era[J].IEEE Transactions on nanotechnology,2012,11(1):182 -193.
[4]余长庚,雷加.基于小波-神经网络的数字电路IDDT故障诊断[J].计算机工程与应用,2010,46(1):211-214.
[5]余长庚,赖丽萍.基于IDDT的数字电路故障诊断研究[J].现代电子技术,2011,34(13):179-182.
[6]焦李成.神经网络的应用与实现[M].西安:西安电子科技大学出版社,1995:38-39.