(运城学院 数学与信息技术学院,山西 运城 044000)
容差模拟电路[1-2]是各类电子设备的重要组成元器件之一,电路板中绝大多数的数字电路故障来自于容差模拟电路,其可靠性和稳定性决定了电子设备的性能和寿命。在航空、遥感、远洋监测等特殊领域,对于容差电路故障的监控和检测具有特殊的价值和意义。同时在设计、制造容差模拟电路元件过程中,要使这些模块具有可检测性和可预测性功能,以便后续能够对这些设备进行监控、系统更新和维护。在容差模拟电路故障检测控制中,要求快速地对故障点进行定位和持续的监测,以最大限度地减少由于停机带来的损失。传统的人工故障诊断技术,如二次规范法[3],故障诊断效率低、检测成本高、算法较为复杂;而最小平方判据法[4]在诊断准确率方面难以满足系统的功能性要求。由此可见,现有故障诊断方法难以有效、快速地对容差模拟电路定位,急需一种模糊自适应的检测方式实现对故障点的准确定位。神经网络方法是一种处理海量模糊数据的有效方法之一,但传统神经网络方法存在训练样本复杂、迭代效率低的不足,为此本文在传统神经网络算法基础上引入了模块化的概念,分解复杂的容差模拟电路故障检测问题,能够有效提高检测效率和准确率。
容差模拟电路故障诊断过程是一项复杂的系统工程,相对与电子技术本身的快速发展,故障诊断技术的发展速度更慢。早期的对于电路系统的诊断,多采用人工方式为主的仪器仪表检查,不能够实现对故障点的准确定位和预判,可靠性较低。随着电子技术的发展、容差模拟电力系统的规模和复杂程度越来越大,一旦由于系统故障而造成停机,会造成严重的损失,因此对于检测技术的要求越来越高。近年来,人工智能技术[5-6]和大数据技术[7-8]不断地应用于电路检测领域,为克服传统神经网络技术的缺点和不足,本文将模块化的理念[9]引入了传统神经网络算法当中,利用每一个独立的子模块分别对输入变量进行模糊运算求解,再将最后的结果汇总。这种分而治之的模式将复杂的问题简化,提高的容差电路故障问题的处理效率,模块化神经网络故障检测方法所构建的网络检测模型扩展性强、容错能力强,而且具有数据分类处理和泛化的能力[10-11],还可以通过对容差模拟电路故障信号的提取和分类处理,实现对故障信号的准确定位、分析与预判,模块化神经网络系统结构图,如图1所示。
图1 模块化神经网络结构图
如图1所示,模块化神经网络将全部的样本空间分割为多个子模块,这样就将海量的样本故障信号分割为多个部分,这样及缓解了整个神经网络系统数据处理的研究,还能够避免产生大量的冗余信息节省了系统样本训练、学习的成本及系统的存储空间。由于输入神经网络的故障信号分布具有随机性特点,对实际容差模拟电路而言,不能够准确地确定出故障点的准确区域,而模块化的方式,解决了故障信号处理的实际问题,提高了神经网络算法的学习能力和容错能力。更为重要的是,模块化神经网络故障检测方式具有很强的预知性,故障信号的传播特征具有其本身的特点,通过模块化神经网络处理方式摒弃了原来以人工为主的检测方式,能够最大限度地减少由于系统停机而带来的损失。在空间分布的多个子模块,都具有各自的功能性和特点,使原本神经网络算法的处理方式更为灵活、高效。
模块化神经网络检测算法基于容差模拟电路故障样本的特征,对故障信号进行分类和聚类,还可以平衡不同故障样本之间的密度差和距离,使故障信号的分布更为均匀,也更易于信号不同特征的识别与提取。设容差模拟电路的故障训练样本集合S表示为:
S={(xi,yi)|xi∈RT,yi∈RT,i=1,2,...,n}
(1)
如果用dij=dist(xi,xj)表示样本xi和样本xj之间的欧式距离,那么模块化神经网络的密度参数ρi与位置参数ξi可以分别定义为:
(2)
基于模块化神经网络方式得出的故障数据聚类中心可以表示为{κ1,κ2,......,κm},共有m个故障信号聚类中心,基于上述的模块化分析方法确定的每一个聚类中心的神经网络模糊集:
(3)
其中:Fi表示模块化神经网络训练样本的模糊隶属度,如果欧式距离越大的,那么模糊隶属度就越大。在容差故障诊断过程中,每一个模糊集都有其所针对的模糊聚类故障数据样本,那么模块化神经网络训练算法就能够基于故障样本空间的分布,有针对性划分出多个功能模块,且保证每个功能模块之间具有紧密的联系。将样本中的模糊集进行模糊聚类:
(4)
其中:γij为每一个模块模糊隶属度所对应的聚类中心、λij为模糊隶属度。基于上述容差模拟电路检测算法就可以完成功能模块的分类。每一个功能模块还需要与训练样本集合相对应,使检测数据结果控制在合理的阈值范围之内。因此,每个功能模块就可以最大限度地发挥出数据分析处理的优势,识别并提取出故障信号的特征。
基于模块化神经网络算法提取容差模拟电路的故障样本特征,以实现对故障点的准确定位,设测试故障节点的集合表示为P={p1,p2,......,pn},受到电路容差故障的影响,故障特征样本可以表示为一组多维的测试向量X1i,X2i,.......,Xni,故障样本的中心可以表示为:
(5)
将容差模拟电路故障特征样本与模块化神经网络数据的相似程度进行对比,以此来测试向量Xni中所包含的已知故障样本特征点,定义两者之间的正弦夹角,并求解出正弦值,表示为:
(6)
正弦值越大则证明两者的相关性更高,相对于坐标系旋转而中值不变,当全部训练样本与特征样本量重叠时,就能够提取到故障信号中的特征量。由于不同故障信号所产生的特征向量与不相同,为了有效区分不同的故障类别容差特性,可以根据不同个体的差异而选择不同的神经网络模块进行训练和学习,这样有针对性的输入故障信号,能够减少训练时长、提高训练精度。在容差模块的选择与确定方面按照升序选取节点作为最原始的特征故障聚类中心,然后在根据不同的欧式距离确定其他的故障特征聚类中心。最后将离故障点最近的神经网络模块作为核心的故障信息处理模块,能够显著降算法的低迭代次数,提高收敛速度,以调整后的节点作为新的聚类中心,重新迭代运算直到算法结束。
给定重新迭代运算处理后的容差模拟电路故障样本集{ζi1,ζi2,......,ζin},为了提取故障信号的特征需要首先确定k个初始样本数据聚类中心c(j,t),其中t为迭代次数。计算每一个样本对象到聚类中心的欧式距离:
d(ζij,c)=|ζij-c(j,t)|
(7)
基于模块化神经网络模型重新确定聚类中心的位置,并提取出故障信号的细节特征:
(8)
从上述基于模块化神经网络的特征提取算法可以分析出,将故障信号特征样本与重心样本的相似度进行比较,判断出各个子模块之间的欧式距离。基于不同的故障信息聚类方式,确定故障特征向量与聚类中心的位置,是故障样本的特征向量得以保留。以模块化神经网络的处理方式,将海量不同类别的容差模拟电路故障特征在不同的神经网络训练样本集之间匹配,就有效地将学习样本数量缩减,实现了对故障样本的预筛选和分类,还能够保留故障点的特征。
提取出容差模拟电路的故障特征样本后,还要将这些细节特征按照不同的运算规则分别输入与之相对应模块化神经网络当中。神经网络训练样本集合是基于系统故障识别元件得出的,模块化神经网络具有传统BP神经网络算法固有的特征和拓扑结构,在处理模糊运算问题时具有一定的优势,模块化形式将原有的单一的大型拓扑结构拆分成若干个功能性较为完整的小型神经网络结构,每一种结构都会与其对应的故障特征检测相对应。任一个块结构也具有包含输入层、隐层和输出层等基础性的结构,每一个模块就是一个小型的神经网络,这些小型模块组合在一起构成了一个完整的大型结构体。每一个块状结构包含的神经元数量不同,动量因子和训练效率也会存在差异,小型神经元结构体与具体的故障特征相对应。将神经网络结构分解成为多个小型的神经网络结构就会使系统的泛化能力和运算能力大为增强。将每一次输入的训练样本矢量而得到的输出结果,都作为下一个模块的输入矢量,同时将系统随机容差也作为变量输入,基于故障信号的特征而判定出容差电路故障点和故障严重程度。
基于模块化神经网络的泛化理论,找到RT中包含的用于容差模拟电路故障检测的核函数k(xi,yi),使其满足如下的要求:
k(xi,yi)=c(xi)·c(yi)
(9)
通过泛化的核函数计算,得到模拟神经网络系统中高维内积结果,实现对故障特征从低维到高维的映射关系检测,进而再一次简化了运算的复杂度,基于泛化条件得到的模块化神经网络决策分类函数g(xi,yi)可以表示为:
g(xi,yi)=sgn(yiξ*k(xi,yi)+ρ)
(10)
由于在高维空间容易出现分类误差,引入松弛变量ψ得到最优的分类变量函数f(xi,yi):
f(xi,yi)=ψsgn(yiξ*g(xi,yi)+ρ)
(11)
此时基于函数分类变量函数f(xi,yi)的正负值,可以判定演变数量的属性类别。最后在模块化神经网络算法和核函数的分类作用下,得到用于容差模拟电路的故障检测函数:
(12)
基于模块化神经网络算法模型进行容差模拟电路故障检测具有理论上的可行性,但在确定每一个小型神经网络的拓扑结构和具体参数时还需进行多次的反复迭代,提高算法的收敛性能。微型模块化神经网络之间通过神经元建立协作关系,神经元数量和种类的选择与故障信号的类别相匹配。模块化神经网络的多样吧训练过程,提高了原有神经网络算法信号处理能力和泛化能力,适合于大样本的容差模拟电路的故障检测。在实际的故障检测中很难获得理想的样本容量,可以通过增加电阻的方式缩小理论检测与实际检测之间的差距,基于一定量的实际样本检测对已经测试到的样本数量的训练方式进行优化和升级,提高模型的数据分类检测能力和识别能力,实现对容差模拟电路故障的精确定位和检测。
为了验证基于模块化神经网络的容差模拟电路故障检测算法的优越性,进行实验测试,实验对比基于模块化神经网络的容差模拟电路故障检测算法(所提算法)和二次规范检测算法(传统算法)在检测准确率和检测效率方面的差异,测试容差模拟电路如图2所示。
图2 测试容差模拟电路
根据图2可知,待检测的容差模拟电路电阻集合可以表示为{R1,R2,R3,R4,R5},电路中四个节点P1、P2、P3、P4的电压值集合为{V1,V2,V3,V4},当各个电阻都处于正常的工作状态下,各节点的电压灵敏度和节点的电压标称值如表1和表2所示。
表1 节点的电压灵敏度
在电阻和电压值不同的情况下,模拟电路各节点的灵敏度也不同。当电阻为R1,电路节点电压值为V1时,节点的电压灵敏度为0.215 0;当电阻为R2,电路节点电压值为V1时,节点的电压灵敏度为0.296 5;以此类推,可以得到不同条件下,模拟电路各节点的电压灵敏度分别为0.005 2、0.023 5、0.142 5、0.325 1等。
表2 节点电压标称值
模拟电路为一种放大电路,为便于分析,只考虑容差模拟电路中的单一软故障情况,将电路中所有电子元器件的容差值设定为5%,用↑和↓表示超出容差值的范围,↑和↓的故障模式取值会有所不同,通常前者是后者的2.3倍,在5个节点采集电压信号的采样阈值,并进行快速傅里叶变换,以得到更为精准的信号描述。设置10种故障类型,其代码分别为τ1到τ10,故障模式如表3所示。
表3 容差模拟电路的故障模式表
在每一个节点中都采集20个故障谐波作为所提算法和传统算法的输入量,针对上述10个类别的故障,每类故障都选择100组特征向量,进行训练时间和正确率的对比,两种算法的故障检测误差率对比,如图3所示。
图3 容差模拟电路的故障检测误差对比
如图3所示,在样本容量为200时,传统算法的故障检测误差率为1.6%,而所提算法的故障检测误差率接近1.0%;当样本容量为600时,传统算法的故障检测率有所波动,同时两种算法的差距也达到了最大值;当检测样本容量为1 000时,传统算法的故障检测误差率为1.3%,所提检测算法的故障检测误差率达到了最低值0.382%;从总体上来看,随着样本容量的增加所提算法的故障检测率不断地降低,其优势性逐渐显现出来,而传统算法的检测误差率高于所提算法,并且波动较大,因此该算法稳定性不足。
故障集训练时间的长短是衡量容差模拟电路故障检测算法的效率的主要指标之一,本文统计了不同故障类别条件下两种算法的故障集训练时间,时间越短证明算法的效率越高,详细的数据统计见表4,其中A代表传统算法,B代表所提算法。
由表4数据可知,在不同类型的故障代码条件下,所提算法的训练时间始终少于传统算法,说明所提算法的检测效率高于传统算法。
综上,仿真实验数据证明了所提算法在容差模拟电路的故障检测准确率和检测效率方面的优越性,由于所提算法将大样本数量进行了合理化的分割,因此在总体上提高了检测效率和检测效果。
神经网络算法在处理海量模糊数据时具有较大的优势,由于容差模拟电路的故障样本包含较多的不确定性因素,样本的泛化能力较弱,为提高对故障样本的定位准确率和识别精度,本文引入了模块化的处理方法,将原有的神经网络模型拆分为多个小型模块,基于不同的故障样本类型而分别进行故障信号的定位和检测。将容差模拟电路的故障样本输入与之相对应的神经网络模块,提取出信号的不同故障特征,将这些特征信息作为输入项用与故障类别的诊断,大为提高了样本的泛化能力和数据分析处理能力。最后基于核函数计算及高维映射关系的检测,从而确定出决策分类函数的正负值和最终的故障检测函数,在不增加计算代价的前提下提高了故障点定位的精度和降低检测误差。