电子电路故障检测综述.docx
《电子电路故障检测综述.docx》由会员分享,可在线阅读,更多相关《电子电路故障检测综述.docx(26页珍藏版)》请在冰豆网上搜索。
电子电路故障检测综述
电路模块故障诊断
摘要:
本文对模拟电路、数字电路和数模混合电路的故障诊断理论和方法进行了综述。
文中介绍了故障诊断的基本概念,发展历程,各种诊断方法、分类及特点,概述了故障诊断的必要性,并着重分析了近期发展起来的适用于各种电路的新方法并且举例进行了说明。
关键词:
故障诊断;模拟电路;数字电路;数模混合电路
1.引言
随着现代自动化技术水平的不断提高,各类工程系统的规模和复杂性日益俱增,系统的维护、修理和调试已变得相当困难,维护一个系统的费用甚至高于设计一个系统的费用。
在系统的维护中,不能及时发现和修复故障,不仅会导致设备损坏,甚至会造成停工停产,部门瘫痪,从而带来极大的经济报失。
因此系统的可靠性与安全性已引起社会各界的高度重视。
这里,故障检测和诊断技术则为提高系统的可靠性、可维修性和有效性开辟了新的路径。
然而,古老的人工测试手段不仅对技术人员的素质有很高的要求,而且测试的速度慢,修复时间长,经济效益也低,又不能实现在线诊断,随着电路的日趋复杂,根本无法胜任这一任务。
计算机科学的迅猛发展和日益普及,为故障诊断提供了有效的工具,使之借助计算机的自动故障诊断应运而生,并立即显示出其广阔的应用前景。
[1]
1.1系统故障诊断的发展背景
控制系统故障诊断技术是一门应用型的边缘学科,它的基础理论是现代控制论、计算机工程、数理统计、信号处理、模式识别、人工智能、人工神经网络以及相应的应用学科。
1971年美国麻省理工学院Beard博士首先提出了用解析冗余代替硬件冗余,
并通过系统自组织使系统闭环稳定,通过比较器的输出得到系统故障信息的思
想,标志着这门技术的开端。
80年代是控制系统故障诊断理论蓬勃发展的一个阶段,使用的故障诊断方法主要是基于观测器/滤波器方法或是系统辨识和参数估计方法。
90年代以后,人们对于控制系统故障诊断理论的研究更加深入,各种方法相互渗透和融合,近年来使用神经网络、模糊逻辑及组合的故障诊断方法在明显地增加,对于非线性系统的故障诊断也有了更多的研究。
我国对控制系统故障诊断的研究相对较晚,与国外研究水平相比还有差距。
但近年来我国对故障诊断技术非常重视。
如清华大学自动化系从1983年起就已经开始了这方面的研究工作。
据不完全统计,我国至少已有几十人在这一学术方向上取得了工学博士学位。
[3][4]
1.2系统故障诊断的基本原理
我们通常所说的故障是指系统所出现的一些异常现象。
根据故障发生的部位,可以把故障化分成被控过程的元器件故障、执行器故障、传感器故障,以及控制器的软件、硬件故障等。
故障诊断技术包含了故障检测、故障分离、故障估计和故障预报等内容。
[2]
系统故障诊断的基本原理是对比测试法:
利用系统可检测量或结构知识或先验经验建立系统正常运行时的一个标准或规则,然后对实际系统的可检测量进行分析,与标准进行比较,来判断系统是否发生故障,或直接进行故障判断。
[3]
图1简述了故障检测的基本流程
标准
(又称故障字典)
正常运行的系统
可检测量
结构知识
先验经验
被检测的系统
特征提取
形成故障信息
比较
有故障信号处理
故障定位
排除故障
无故障
图1
1.3系统故障诊断的主要方法
故障诊断技术发展至今,已提出了大量的方法,所有的故障诊断方法大致可以划分以下几种。
图2为故障诊断的各种方法分类。
[2][3][5]
专家系统方法
基于症状的方法
模糊推理方法
基于知识的方法
模式识别方法
神经元网络方法
定性观测器
定性仿真
基于定性模型的方法
知识观测器
滤波器方法
参数估计方法
最小二乘类方法
基于解析模型的方法
故障诊断方法
观测器方法
状态估计方法
滤波器方法
等价空间方法
FFT
变换类方法
小波变换
基于信号处理的方法
谱分析方法
相关分析
基于离散事件的方法
图2
1.3.1基于知识的方法
在工程实践中,对象的精确数学模型是无法得到的,这就大大限制了解析方法的使用范围。
而基于知识的方法恰恰不需要对象的精确数学模型,因此具有很大生命力。
它的发展大致经历了两个阶段:
基于浅知识(人类专家的经验知识)的第一代故障诊断专家系统和基于深知识(诊断对象的模型知识)的第二代故障诊断专家系统。
基于浅知识的方法以领域专家和操作者的启发性经验知识为核心,通过演绎推理或产生式推理来获取诊断结构,其目的是寻找一个故障集合,使之能对一个给定的征兆(包括发生的和未发生的)集合产生的原因做为最佳解释,在其推理过程中,一般要用到两类知识,一类是表达故障与征兆之间联系的因果性符号知识;另一类是反映故障与征兆之间因果关系成立程度的数值性知识(模糊性度量、信任度、可能度等)。
这种方法具有知识表达直观、形式统一、模块性强、推理速度快等优点。
但是这种方法具有较大的局限性,如知识集不完备,对没有考虑到的情况容易陷入困境。
基于深知识(模型知识)的方法利用启发式症状、过程的历史知识、统计知识进行故障的诊断。
它要求对系统的每一个环节具有明确的输入输出表达关系,诊断时首先通过诊断对象的实际输入与期望输出之间的不一致,生成引起这种不一致的原因集合,然后根据诊断对象领域中的第一定律知识(具有明确科学依据知识)及其内部特定的约束关系,采用一定的算法,找出可能的故障源。
基于深知识(模型知识)的诊断推理在知识的表达与组织上比基于经验知识的诊断推理具有更大的优越性;知识获取方便,维护简单,易于保证知识库的一致性和完整性。
但是搜索空间大,推理速度慢。
[3]
1.3.2基于解析模型的方法
这种方法的核心就是要建立一个比较准确的被控过程的数学模型来描述被测系统。
所谓基于解析模型,就是通过将被诊断对象的可测信息和由模型表达的系统先验信息进行比较,从而产生残差,并对残差进行分析和处理而实现故障诊断的技术。
在没有故障时,残差等于零或近似为零;而当系统中出现故障时,残差应显著偏离零点。
根据残差产生形式的不同,又可以分为状态估计方法、等价空间方法和参数估计方法。
状态估计方法的基本思想是利用系统的定量模型和测量信号重建某一可测变量,将估计值与测量值之差作为残差,以检测和分离系统故障。
在能够获得系统的精确数学模型的情况下,状态估计方法是最直接有效的方法。
等价空间方法的基本思想就是通过系统输入、输出(或部分输出)的实际值检验被诊断对象数学关系的等价性(即一致性),从而达到检测和分离故障的目的。
参数估计方法基本思想是许多被诊断对象的故障可以看作是其过程系数的变化,而这些过程系数的变化又往往导致系统参数的变化。
因此,可以根据系统参数及响应的过程系数变化来检测和诊断故障。
[3]
1.3.3基于信号处理的方法
基于信号处理的方法通过利用信号模型,如相关函数、频谱、自回归滑动
平均等,直接分析可测信号,提取诸如方差、幅值、频率等特征值,从而检测
故障的发生。
近年来出现了一些新的基于信号处理的故障诊断方法:
(1)绝对值检验和趋势检验
(2)基于信息融合的方法
(3)利用Kullback信息准则检测故障
(4)基于自适应滑动窗格形滤波器的故障检测方法
(5)基于信号模态估计的诊断方法
(6)基于小波变换的故障诊断方法
(7)信息校核的方法
1.3.4基于离散事件系统的方法
离散事件系统作为现实系统的一种抽象,有着广泛的应用意义,可以模拟多种不同类型的实际系统。
其建模过程表现为:
根据部件之间的相互关系及部件本身运行过程,模拟实际运行。
[8]
基于离散事件的故障诊断方法是近年来发展起来的一种新型故障诊断方法。
其基本思想是:
离散事件模型的状态既反映正常状态,又反映系统的故障状态。
系统的故障事件构成整个事件集合的一个子集。
系统的正常事件构成故障事件的补集。
故障诊断就是确定系统是否处于故障状态和是否发生了故障事件。
这种方法的主要优点是不需要被诊断系统的精确数学模型,因而非常适用于解决难以建立精确模型的系统的故障诊断问题。
1.4故障诊断技术的研究展望
故障诊断技术要想快速的发展,除了建立在直观的测试基础上的研究以外,还需要在控制系统的设计以及容错控制[5]方面进行深入研究。
例如在测试生成技术中,早期的测试向量的是人工根据电路的结构和功能推断得到或者使用穷举的方法来得到。
随着集成电路的出现和规模的不断增长,测试向量急剧增加。
因此取而代之的是自动测试向量生成(AutomaticTestPatternGenerationATPG)、可测性设计(DesignForTest,DFT)[6]、边界扫描测试(BoundaryScanTest,BST)和内建自测试(Build-InSelf-Test,BIST)等更为先进的测试技术和策略。
一般来说,在大规模的电路测试中,为了检测同样的故障集,如果能够生成高效的测试向量,压缩测试向量集,提高电路故障检测率,均能极大的减少测试时间和降低测试成本。
[12]
2.数字电路故障诊断
诊断技术发展到现在,数字电路的故障诊断目前已经比较成熟,并已投入实用,因为数字电路的离散特性,其可测性问题相对较简单些,但是目前的这些理论和方法较之于实际面临的问题,仍然有许多不足,特别是对复杂的大规模非线性系统故障诊断方法的研究更有待深入地探索。
2.1数字电路故障诊断的发展背景
同早期的控制系统故障诊断一样,在数字电路故障诊断发展的初期,故障检测主要靠工程技术人员凭借自己的经验进行查找,那时的故障诊断系统主要用于功能测试,使用了特殊的硬件设备,如电压表、测试示波器和校验电路等。
从50年代起,随着系统规模的增大和复杂性的增加,数字电路故障诊断技术的研究已经逐渐的由人工诊断转向了机器诊断,专用测试仪器及硬件设备逐渐成为诊断故障的辅助手段,诊断故障的主要工作转向依靠诊断程序来完成。
Eldred在1959年发表的第一篇关于组合电路的测试报告中,提出了敏化通路的概念,揭开了数字电路故障诊断的序幕。
Yau和seller等提出的布尔差分算法,Thayse提出的布尔微分算法,虽然在实际使用中存在一定的困难,但是它使通路敏化的理论得到了系统化,因此这两种算法在数字电路诊断理论上占有重要的地位,是进行理论研究的必要工具和基础。
[9][10]随后Roth于1966年提出著名的D算法,从理论上说,组合电路故障检测和诊断在Roth的D算法中已经到了最高点。
在D算法的发展基础上,Goal提出的PODEM算法以及Fujiwara提出的FAN算法又在一定程度上对D算法进行的本质上的升华。
时序电路的测试比组合逻辑电路的测试要要困难的多。
原因有三:
一是在时序电路中存在反馈线;二是存在着存储元件;三是时序元件对竞态现象是异常敏感的。
解决时序电路测试问题的最初途径是沿用组合电路的算法,Hennie在19644年首先提出了把时序电路“复原”的输入序列的问题,但实际上并非所有的时序电路都存在这样的“复原”序列。
为了比较好的解决时序电路的测试问题,相继提出了逻辑函数的多值模拟法,如三值、六值和九值布尔模拟。
[11]
2.2数字电路常见的故障模式[11]
(1)固定型故障(stuckfaults)
若故障使电路中的某引线的逻辑电平固定在逻辑高电平上则称固定1故障,简记为S-a-1;若固定在逻辑低电平上则称固定0故障,简记为S-a-0。
固定型故障又分为单固定型故障(SingleStuck-atFault,简称SSA故障)和多固定型故障(MultipleStuck-atFault,简称MSA故障)。
SSA故障是指电路中一根线固定于逻辑1或0。
它具备以下一些性质:
[12]
SSA故障模型表达了许多不同的失效方式
SSA故障模型是与工艺无关的故障模型
SSA故障的测试向量也可以检测出许多非经典性故障
SSA障模型比其他类型的故障模型的数目少,通过故障化简的方法还可以减少故障数目
SSA故障还可以通过一定的等效,表达其他类型的故障
关于SSA故障,研究得出了以下的定理:
定理1:
在一个无扇出的组合电路C中,任何能检测到其原始输入上所有的SSA故障的测试向量集一定也能检测到C的所有SSA故障。
定理2:
对于一个组合电路C,任何能检测到其原始输入和扇出分支上所有SSA故障的测试向量集一定能检测出C的所有SSA故障
MSA故障定义为电路中几条线可能同时固定于逻辑1或0。
影响MSA故障测试的主要因素是原始输入的个数和重聚的扇出点的个数。
研究发现,对组合电路而言有以下一般结论:
对于冗余的两级电路,任意一个测试SSA故障的完全测试集可测试所有的MSA故障
对于无扇出的电路,任意一个测试SSA故障的完全测试集可以测试所有的两重和三重故障
对于内部无扇出的电路,测试SSA故障的完全测试集,同时也可测试至少98%的MSA故障,这样测试集数目少于6个
对于无扇出的所有原始输入和电路中所有输出分支上的MSA故障,能够测试它门的完全测试集也能测试该电路中的所有MSA故障
对于内部无扇出的电路c,任意一个测试SSA故障的完全测试集可以测试c中所有的MSA故障
用SSA故障的测试生成来检测MSA故障具有很高的故障检测率,因此对MSA故障分析只需要处理SSA故障的测试向量不能测试到的故障即可。
(2)固定开路故障(s-op)
若故障使CMOS门电路的输出端处于高阻状态,则称该故障为固定开路故
障。
固定开路故障是一种发生在CMOS电路中的特殊故障,与经典的固定故障
不等效,它将使故障门变为时序电路。
(3)桥接故障(bridgefault)
若电路中两根或多根信号线无意中连接在一起了,就造成了桥接故障。
按照信号线的种类的不同,又可将之分为元件输入端之间的桥接故障和输入端与输出端反馈式桥接故障,反馈式桥接故障比较复杂,发生这类故障时有可能把组合电路改变成时序电路,甚至使电路发生振荡而趋于不稳定。
(4)间歇性故障((intermittentfaults)
间歇性故障是可重复出现的非固定型故障。
主要是由于元件参数的变化、接插件的不可靠、焊点的虚焊和松动以及其它环境因素等引起的。
间歇性故障的影响是随机的,而不是确定的,因此一般采用概率分析的方法对它作模型化。
(5)时滞故障(delayfaults)
时滞故障主要考虑电路中信号的动态状况,即电路中各元件的时延变化,脉冲信号边沿参数的变化等。
这类故障主要导致时序配合上的错误,对时序电路影响较大。
2.3引起数字电路故障的原因[21]
影响数字电路故障的原因有很多,但一般可归结为以下几种:
(1)由设计质量因素引起的故障。
如电源滤波、布线、时钟速度配合、毛刺、竞争冒险等;
(2)由制造、原材料质量及生产工艺等因素引起的故障。
如精度、劣质器件、焊接等;
(3)由工作环境条件或外部电路因素引起的故障。
如温度、湿度、强电、磁场、射线等。
2.4数字电路故障诊断的方法简介与评价[13][10]
2.4.1组合电路故障诊断的方法
(1)布尔差分法
布尔差分法是由Sellers等人提出的,它通过对数字电路布尔方程式的差分运算来研究故障的传播,从而求得故障测试集的一般表达式。
由文献[10]有一个组合逻辑系统,布尔表达式为:
y=y(x1,x2,…,xi,…,xn)
如果下列布尔表达式成立
y=y(x1,x2,…,,…,xn)y(x1,x2,…,,…,xn)
则表明,在函数y中,当xi有变化,其对应y值的异或操作结果为1时,则y能反映xi的变化,即xi是可测的,于是定义布尔函数:
=y(x1,x2,…,,…,xn)y(x1,x2,…,,…,xn)
为y(x)相对于xi的布尔差分,显然,利用布尔差分可方便地寻求敏化通路。
(2)D算法
D算法是由Roth等人提出的,它克服了一维敏化法的局限,采用多维敏化的思想同时敏化从故障位置到电路的所有输出端的全部通路。
它用5个值(0,1,x,D,D)来描述电路中的各节点的状态.算法由故障激活、故障驱赶和线相容等步骤组成.只要所考虑的故障可测,用D算法就一定能求得故障的测试。
D算法是第一个建立在严格理论基础上的组合电路测试生成算法,它具有算法上的完备性,且便于在计算机上实现,是比较成功和目前应用最广的测试生成算法之一。
D算法的不足是,它在进行测试生成时把大量时间花费在许多不同路径的试探上,因此在组合电路的规模较大时,用该算法的计算复杂性大,效率不高,特别是对由大量异或门构成的电路,其运算效率低。
(3)PODEM算法[14]
PODEM算法由Goel于1981年提出,它是经典算法的发展,是一个完全算法,它面向故障,适用于任何组合电路,该算法把测试码自动生成问题归结为一个状态,空间搜索问题。
算法是D算法的发展,它的基本原理是沿着敏化通路传递故障效应。
由文献[16]设电路N中有节点g,其原始输入和输出分别为n个和m个,则有
fj=Fj(g,x1,x2,…,xn)(1≤j≤m)
g=G(x1,x2,…,xn)
要诊断故障g(s-a-α),则要解方程
g=G(x1,x2,…,xn)=α,
但至少存在一个j(1≤j≤m)使
F(1,x1,x2,…,xn)F(0,x1,x2,…,xn)=1
PODEM算法将解方程的n维空间搜索问题化为分支判决树问题。
这种算法它吸收了穷举算法的优点,采用逐个地给原始输入赋值的办法为给定故障生成测试.因此避免了许多盲目的试探,减少了D算法中回溯与判决的次数.大量的实验数据表明,对于误差校正型电路PODEM算法比D算法的测试生成速度快若干倍,就是一般的组合电路也有显著的提高.
(4)FAN算法[13]
PODEM算法显著地减少了判决与回溯的次数,但它仍然存在回溯的问题.为加速测试生成,Fujiwara等提出了FAN算法,该算法在减少回溯次数,降低每一次回溯的时间以及对扇出点都做了细致处理,它的主要特点如下:
①搜索空间由头线(headlines)和扇出源节点构成;
②在每一步中尽可能多地确定已唯一隐函值的信号值;
③故障值分配给由故障唯一确定或隐函的地方;
④在D边界中只有一个元件时,选择一条唯一确定的敏化通路;
⑤反向蕴涵到主导线就停止,主导线的值可以推迟到最后再确认;
⑥用多路回退的办法对扇出源进行处理;
⑦使用SCOAP作为启发性信息来指导搜索
FAN算法的运算速度快于PODEM算法,不仅回溯次数少,而且故障覆盖率较高。
FAN算法丰富和发展了测试生成算法的基本思想。
2.4.2时序电路故障诊断的方法
时序电路由于内部有存储元件,它的输出不仅决定于当前的输入信号,而且决定于存储元件的状态,因此对于它进行故障检测或故障诊断比组合电路要困难得多。
由于组合电路的测试生成不仅在理论上比较成熟,而且有具体的方法和程序可供使用,因此对于同步时序电路测试生成的基本思路是:
将时序电路先转换成组合电路,然后应用组合电路的测试生成方法进行测试生成。
对于异步时序电路,则采用改进的九值算法和H算法。
文献[15]介绍了九值算法基本流程,可见它比一般的扩展D算法在作D驱赶时要减少很多次无用的计算,同时它充分考虑了故障在重复阵列模型中的重复影响作用,从而可减少计算机的工作量,但是由于算法本身采用的是迭代组合模型,因而不能保证求得的测试一定是正确的。
文献[18]介绍了H算法的基本原理和运算流程,它采用了Huffman模型,而不是迭代组合电路模型,因而能正确地描述电路的逻辑行为;同时在生成测试的过程中避免竞态和检测电路中的不稳定性,保证求得的测试序列是确凿的、无竞态的。
总之,数字电路故障诊断的主要就是就是按照上述介绍的几种算法的思想进行故障检测的,例如文献[17]给出了组合数字电路只有一个故障的具体算例,文献[22]给出了一个基于对比测试输出响应的数字电路故障诊断的方法,文献[19]介绍了含的有微处理器数字电路板故障诊断的方法,文献[14]给出了基于PODEM算法的施奈特电路的故障检测算例,文献[20]提出了一种改进的PODEM算法,文献[18]也给出了基于H算法的异步时序电路的算例。
4.模拟电路故障诊断
相对于数字电路故障诊断而言,模拟电路的故障诊断则进展甚慢,究其原因主要是模拟电路本身的特性决定了它的诊断要困难和复杂得多。
4.1模拟电路的测试现状与故障特点[23][27][25]
70年代以来,虽然有不少的理论工作者投入到模拟电路故障诊断的研究中,发表过数千篇论文,但主要解决的是线性网络在无容差或小容差情况下的诊断理论和方法。
近年来在非线性问题上也取得了一些长足的进展,但不具实用性。
而
模拟电路故障的特点是其诊断过程中的重大畔脚石:
(1)模拟电路的输入激励和输出响应都是连续量,模拟电路中的故障模型比较复杂,难以进行简单的量化。
(2)模拟电路中的元器件参数具有很大的离散性,即“容差”,“容差”事实上就是轻微的故障,只是尚在允许的范围内而已,它们的普遍存在,导致故障
的模糊性,而无法决定实际故障的物理位置。
(3)模拟电路中存在广泛的非线性问题,在实用的模拟电路中,几乎都存在着反馈回路及非线性问题,增加了计算和测试的复杂性。
(4)频率范围宽。
模拟电路的频率低端除直流外最低需测至10-5Hz,高端要测至103GHZ(如卫星电视的高频头信号就高达103GHZ以上)。
在这样宽的频率范围内,即使测量同一电信号,在不同频段所依据的原理、采用的方法和使用的设备都可能相差很大。
(5)现代电子电路通常是多层的或被封装的,可测试用的节点数非常有限,导致可用作故障诊断的信息量不够充分,造成故障定位的不确定性和模糊性。
(6)元件长期使用造成的老化,环境因素的影响,不同元件间的串扰,测试仪器引入的寄生参数造成的可测性指标偏离正常范围
4.2模拟电路故障的分类
按照模拟电路故障的特点,可将模拟电路故障分为以下几种类型:
[11]
(1)软故障:
又称为渐变故障,是指组件的参数值随着时间或环境条件超过了预定的容差范围而造成的故障,它们均未使设备完全失效,一般仅引起系统性能的异常或恶化。
(2)硬故障:
又称为突变故障,是指由于组件的参数突然发生大的变化,如开路、短路、损坏、失效等而产生的故障。
电路中发生硬故障,经常导致系统严重失效,甚至瘫痪。
一些常见元件的硬故障如表1所示[24]
元件
可能的故障
电阻
阻值变高或开路
电容
开路或短路
电感
开路、短路,线圈与铁芯短路
元件
可能的故障
电子管
灯丝开路,电极间短路,阴极发射率偏低
半导体器件
pn结开路或短路
表1
(3)永久性故障:
永久性故障:
是指一旦出现就长期存在的故障,任何时刻进行检测均可发现此类故障,例如开路、短路等。
(4)间歇性故障:
是指某种特定条件下才出现或随机、存在时间短暂的故障现象,例如接触不良等。
(5)单故障与多故障:
若某一时刻仅有一个组件发生故障,称为单故障;若同
时有两个或两个以上的组件发生故障,则称为多故障。
(6)质变故障:
元件发生故障后,其性质发生了变化。
比如电阻变成电容等。
4.3模拟电路故障诊断方法简介和评价
模拟电路的测试诊断方法有很多种,目前文献中介绍的诊断方法大都是采用对被诊断电路进行现场测试之先于或后于电路模拟(CircuitSimulation)的方法来分类。
利用此法分为两类:
一是测前模拟法,一是测后模拟法。
图3中对测前模拟法和测后模拟法进行了详细分类:
[1][25]
测前模拟法中以故障字典法最有代表性,测后模拟法中则主要包括参数辨识法和故障检验法,下面对这几种典型的方法进行系统的叙述和评价。
故障字典法
测前模拟