- 系统故障诊断技术、算法及MATLAB实现
- 魏秀琨等编著
- 6941字
- 2023-11-24 18:37:37
1.1.3 系统故障诊断技术的基本理论与方法
随着故障诊断技术的发展,人们已提出了许多方法。按照国际故障诊断权威专家德国Frank教授的观点,故障诊断方法可分为基于数学模型的方法、基于知识的方法和基于信号处理的方法3类。然而,近年来随着理论研究的深入和相关领域的发展,各种新的故障诊断方法不断出现,传统的分类方式已经不再适用。周东华教授从一个全新的角度对现有的故障诊断方法进行了重新分类,将其分为定性分析方法和定量分析方法两大类,如图1-1所示。
图1-1 故障诊断方法分类
1.定性分析方法
1)基于图论的故障诊断方法
基于图论的故障诊断方法主要包括符号有向图(Signed Directed Graph,SDG)方法和故障树(Fault Tree)方法。
SDG是一种被广泛采用的描述系统因果关系的图形化模型。在SDG中,事件或者变量用节点表示,变量之间的因果关系用从原因节点指向结果节点的有方向的边表示。在系统正常时,SDG中的节点都处于正常状态;在系统发生故障时,故障节点的状态会偏离正常值,并发出报警信号,根据SDG给出的节点变化的因果关系并结合一定的搜索策略,可以分析出故障所有可能的传播路径,判明故障发生的原因,并且得到故障的发展演变过程。
故障树是一种特殊的逻辑图。基于故障树的诊断是一种由果到因的分析过程,它从系统的故障状态出发,逐级进行推理分析,最终确定故障发生的基本原因、影响程度和发生概率。
基于图论的故障诊断方法具有建模简单、结果易于理解和应用范围广等特点。但是,当系统比较复杂时,这类方法的搜索过程会变得非常复杂,而且诊断正确率不高,可能给出无效的故障诊断结果。
2)基于专家系统的故障诊断方法
基于专家系统(Expert System)的故障诊断方法利用领域专家在长期实践中积累起来的经验建立知识库,并设计一套计算机程序,模拟人类专家的推理和决策过程,从而进行故障诊断。专家系统主要由知识库、推理机、综合数据库、人机接口及解释模块等部分构成。
知识库和推理机是专家系统的核心,在传统专家系统中,专家知识常用具有确定性的“if-then”规则表示。通常来说,专家知识不可避免地具有不确定性。模糊专家系统在专家知识的表示中引入了模糊隶属度的概念,并利用模糊逻辑进行推理,能够很好地处理专家知识中的不确定性。模糊理论善于描述由“不精确”引起的不确定性,证据理论则能描述由“不知道”引起的不确定性。
基于专家系统的故障诊断方法能够利用专家丰富的经验知识,无须对系统进行数学建模,并且诊断结果易于理解,因此得到了广泛的应用。但是,这类方法也存在不足,主要表现如下:首先,知识的获取比较困难,这成为专家系统开发中的主要瓶颈;其次,诊断的准确程度依赖知识库中专家经验的丰富程度和知识水平的高低;最后,当规则较多时,推理过程会出现匹配冲突、组合爆炸等问题,使得推理速度较慢、效率低下。
3)定性仿真
定性仿真(Qualitative Simulation)是获得系统定性行为描述的一种方法,由定性仿真得到的系统在正常和各种故障情况下的定性行为描述可作为系统知识以用于故障诊断。基于定性微分方程约束的定性仿真方法是定性仿真中最为成熟的方法之一。这种方法先将系统描述成一个代表物理参数的符号集合及反映这些物理参数之间相互关系的约束方程集合,然后从系统的初始状态出发,生成各种可能的后继状态,并用约束方程过滤掉那些不合理的状态,重复此过程,直到没有新的状态出现为止。定性仿真的最大特点是能够对系统的动态行为进行推理。
2.定量分析方法
1)基于解析模型的故障诊断方法
基于解析模型的故障诊断方法,利用系统精确的数学模型和可观测输入输出量,构造残差信号来反映系统期望行为与实际运行模式之间的不一致,然后基于对残差信号的分析进行故障诊断。总体来说,这类方法包括状态估计(State Estimation)方法、参数估计(Parameter Estimation)方法和等价空间(Parity Space)方法。
(1)状态估计方法主要包括滤波器方法和观测器方法,利用被控过程的状态直接反映系统的运行状态,并结合适当的模型进行故障诊断。首先,重新构造被控过程状态,并构造残差序列,残差序列包含各种故障信息及基本残差序列;其次,通过构造适当的模型并采用统计检验法,把故障从中检测出来,并做进一步的分离、估计及决策。通常可用Luenberger观测器或卡尔曼滤波器进行状态估计。
2000年,Puneet Goel等几位美国机器人学者在滑轮式机器人上提出了一种基于多卡尔曼滤波器的故障检测和辨识方法,用适应方法预测可能出现的故障类型,然后学习它们并将其作为故障样本。每种故障类型的行为模型都被嵌入多个类似的卡尔曼滤波器估计器。当预报读数和实际的传感器读数不同时,这个残差就被作为每个滤波器的工作情形指示器。用反馈式神经网络的方法将这个残差集作为样本,确定哪个滤波器与正常状态的滑动式机器人更协调,则最不协调的滤波器可能出现故障。
(2)参数估计方法认为故障会引起系统过程参数的变化,而过程参数的变化会进一步导致模型参数的变化,因此,可以通过检测模型中的参数变化来进行故障诊断。
(3)等价空间方法利用系统的解析数学模型,建立系统输入和输出变量之间的等价数学关系,这种关系能够反映输出变量之间静态的直接冗余及输入和输出变量之间动态的解析冗余,然后通过检验实际系统的输入值和输出值是否满足该等价关系,达到检测和分离故障的目的。
基于解析模型的故障诊断利用了对系统内部的深层认识,具有很好的诊断效果。但是这类方法依赖被诊断对象精确的数学模型,在实际应用中,对象精确的数学模型往往难以建立,此时基于解析模型的故障诊断方法便不再适用。然而,系统在运行过程中积累了大量的运行数据,因此,需要研究数据驱动的故障诊断方法。
2)数据驱动的故障诊断方法
数据驱动的故障诊断方法对过程运行数据进行分析处理,从而在不需要知道系统精确解析模型的情况下完成系统的故障诊断。这类方法又可分为机器学习方法、多元统计分析方法、信号处理方法、信息融合方法和粗糙集方法等。
(1)机器学习方法。机器学习方法的基本思路如下:利用系统在正常和各种故障情况下的历史数据训练神经网络(Neural Network)或者支持向量机(Support Vector Machine)等,以用于故障诊断。
在故障诊断中,神经网络主要用来对提取出来的故障特征进行分类。神经网络的训练需要大量对象的历史数据,这对于有些系统是无法实现的。与神经网络不同,支持向量机更适用于小样本的情况。
机器学习方法以故障诊断正确率为学习目标,并且适用范围广。但是机器学习方法需要过程故障情况下的样本数据,并且精度与样本的完备性和代表性有很大的关系,因此,难以用于那些无法获得大量故障数据的工业过程。
(2)多元统计分析方法。多元统计分析方法利用多个变量之间的相关性对过程进行故障诊断。这类方法根据过程变量的历史数据,利用多元投影方法将多变量样本空间分解成由主元变量张成的较低维的投影子空间和一个相应的残差子空间,并分别在这两个空间中构造能够反映空间变化的统计量,然后将观测向量分别向两个子空间进行投影,并计算相应的统计量指标以用于过程监控。利用不同的多元投影方法得到的子空间分解结构反映了过程变量之间不同的相关性,常用的多元投影方法包括主元分析(Principal Component Analysis,PCA)、偏最小二乘(Partial Least Squares,PLS)及独立主元分析(Independent Component Analysis,ICA)等。
PCA对过程变量的样本矩阵或样本方差矩阵进行分解,所选取的主元变量之间是互不相关的,并且可以由过程变量通过线性组合的形式得到。PCA方法得到的投影子空间反映了过程变量的主要变化,而残差子空间则主要反映了过程的噪声和干扰等。
基于PCA的故障诊断方法将子空间中的所有变化都当作过程故障,而实际中人们往往最关心质量变量的变化,因此,只对那些能够导致质量变量发生变化的故障感兴趣。PLS利用质量变量引导过程变量样本空间的分解,所得的投影空间只反映过程变量中与质量变量相关的变化,因此,具有比PCA更强的对质量变量的解释能力。如果质量变量能够实时在线测量,则可以建立过程变量与质量变量之间的软测量模型,将质量变量的预测值与实测值比较以进行故障诊断。但是质量变量通常无法在线获得,在这种情况下,只能利用PLS给出的过程变量的投影结构和实测值来对质量变量进行监控。当将PLS用于过程监控时,更为贴切的名称是潜空间投影(Projection to Latent Structures)。
基于PCA的故障诊断方法假设过程变量服从多元正态分布,然而在有些情况下,过程变量并不完全是正态分布的。此时,PCA提取出来的主元变量只是不相关的,并不是相互独立的。针对具有非高斯分布的多个过程变量,ICA认为影响这些过程变量的少数本质变量是相互独立且非高斯的,并且可以由过程变量的线性组合得到,利用ICA算法可以提取出这些互相独立的主元变量。
多元统计分析方法不需要对系统结构和原理深入了解,完全基于系统运行过程中传感器的测量数据,而且算法简单,易于实现。但是,这类方法诊断出来的故障物理意义不明确,难以解释,并且由于实际系统的复杂性,这类方法中还有许多问题有待进一步的研究,如过程变量之间非线性,以及过程的动态性和时变性等。
(3)信号处理方法。这类方法利用各种信号处理方法对测量信号进行分析处理,提取与故障相关的信号的时域或频域特征以用于故障诊断,主要包括谱分析(Spectrum Analysis)方法和小波变换(Wavelet Transform)方法。不同的故障会导致信号的频谱表现出不同的特征,因此,可以通过对信号的功率谱、倒频谱等进行谱分析来进行故障诊断。
以傅里叶变换为核心的传统谱分析方法虽然在平稳信号的特征提取中发挥了重要作用,但是实际系统发生故障后的测量信号往往是非平稳的,而且傅里叶变换是一种全局变换,不能反映信号在时频域上的局部特征。小波变换作为一种非平稳信号的时频域分析方法,既能反映信号的频率内容,又能反映该频率内容随时间变化的规律,并且其分辨率是可变的,即在低频部分具有较高的频率分辨率和较低的时间分辨率,而在高频部分具有较高的时间分辨率和较低的频率分辨率。小波变换在故障诊断中的应用主要有以下几种:利用小波变换对信号进行多尺度多分辨率分析,从而提取信号在不同尺度上的特征以用于故障诊断;利用小波变换的模极大值可以检测出信号的突变,因此,基于小波变换的奇异性检测可用于突发型故障的诊断;根据实际系统中有用信号往往集中在低频部分且比较平稳,而噪声主要表现为高频信号的特点,小波变换还常用于随机信号的去噪。基于小波分解与重构的去噪方法通过在小波分解信号中去除高频部分来达到去噪的目的。
(4)信息融合方法。信息融合方法对多源信息进行自动分析和综合,从而获得比单源信息更为可靠的结论。信息融合按照融合时信息的抽象层次可分为数据层融合、特征层融合和决策层融合。目前,基于信息融合的故障诊断方法主要是决策层融合方法和特征层融合方法。
决策层融合方法利用决策层融合算法对基于不同传感器数据得到的故障诊断结果或者基于相同数据经过不同方法得到的故障诊断结果进行融合,从而获得更加准确的结论。基于DS证据理论(Dempster-Shafer Evidence Theory)融合的方法是决策层融合方法中研究最多的一类。DS证据理论处理具有不确定性的多属性判决问题时具有突出的优势,它不但能处理由“不精确”引起的不确定性,还能处理由“不知道”引起的不确定性。
特征层融合方法主要利用神经网络或支持向量机将多个故障特征进行融合,得到融合后的故障特征以用于诊断或者直接输出故障诊断结果。故障特征既可以是从多个传感器数据中得到的特征,也可以是从相同数据中抽象出来的不同特征。
基于信息融合的故障诊断方法利用了多个传感器的互补和冗余信息,但是,如何保证这些信息能够被有效利用以达到提高故障诊断的准确性及减少虚报和漏报的目标,还有待进一步的研究。
(5)粗糙集方法。粗糙集(Rough Set)是一种从数据中进行知识发现并揭示其潜在规律的新的数学工具。与模糊理论使用隶属度函数和证据理论使用置信度不同,粗糙集的最大特点就是不需要数据集之外的任何主观先验信息,就能够对不确定性进行客观描述和处理。属性约简是粗糙集理论的核心内容,它是在不影响系统决策的前提下,通过删除不相关或者不重要的条件属性,使得可以用最少的属性信息得到正确的分类结果。因此,在故障诊断中可以使用粗糙集来选择合理有效的故障特征集,从而降低输入特征量的维数及故障诊断系统的规模和复杂程度。
总之,数据驱动的故障诊断方法不需要精确的解析模型,完全从系统的历史数据出发,因此,在实际系统中更容易直接应用。但是,这类方法因为没有系统内部结构和机理的信息,因此,对故障的分析和解释相对比较困难。需要说明的是,虽然基于解析模型的方法和数据驱动的方法是两类完全不同的故障诊断方法,但它们之间并不是完全没有联系的。
设备故障诊断技术发展至今,相关方法均已有了明显的成效。在定量分析方法中,基于解析模型的故障诊断方法研究较早,对线性系统的诊断也较完善。对非线性系统的故障诊断仍是当前的研究热点和难点问题,采用非线性理论、自适应观测器及定性方法等可以对一些简单的非线性系统进行故障诊断。另外,故障诊断的鲁棒性研究也日益受到重视,它和故障诊断的灵敏性的合理折中也是一个难点问题。此外,故障检测最优阈值的选取和故障的准确定位等诊断性能方面的问题也是研究热点方向之一。数据驱动的故障诊断方法避开了系统建模的难点,实现简单,实时性较好,但对潜在的早期故障的诊断存在不足,因此,多用于故障的检测,与其他诊断方法的结合有望提高其故障诊断性能。
定性分析方法对于复杂系统和非线性系统有较大的实际意义。由于该类方法充分考虑了人的智能因素,更符合对实际系统的自然推理,是一类很有前途的诊断方法。但该类方法的部分理论尚不成熟,真正应用于工业实际过程的不是很多,在很多方面还有待进一步研究。
虽然经过几十年的发展,故障诊断研究已经取得了大量的成果,但是在已有成果中,对于故障检测问题的研究较多,而对于故障分离和辨识问题的研究较少;对于单故障诊断问题的研究较多,而对于多故障诊断问题的研究较少。此外,对于故障诊断的鲁棒性、自适应性等问题的研究和结论也较少,这些都有待进一步的研究。
(1)数据驱动的复杂系统的故障诊断和预测。复杂系统具有高维、强非线性、强耦合及大时延等特性,很难对其建立精确的数学模型,因此,根据复杂系统的实际运行数据对其进行故障诊断和预测,成为保证复杂系统安全、可靠运行的关键问题。
(2)基于定量数据和定性信息的故障诊断和预测。系统知识既包括客观反映系统运行状态的测量数据(定量数据),也包括人们的主观认知和经验(定性信息),因此,如何在故障诊断和预测中将这些客观定量数据和主观定性信息进行综合利用是一个重要的研究方向。
(3)复杂系统的混合故障诊断和预测。实际系统的复杂性及各种故障诊断和预测方法的局限性,使得单一的故障诊断和预测方法往往无法达到理想的效果。因此,如何有效地利用多种故障诊断和预测方法提高整个诊断系统的性能是一个具有重要现实意义的研究方向。
(4)特定系统的故障诊断和预测。在对混杂系统、奇异系统和网络化控制系统等进行处理时,需要解决其特有的问题,一般的动态系统故障诊断和预测方法很难适用,必须研究针对这类系统结构和特点的故障诊断和预测方法。
目前,故障诊断正处于智能化诊断阶段。这一阶段的特点是将人工智能的研究成果(如专家经验的总结、模糊逻辑和人工神经网络等)应用到故障诊断领域中,以常规诊断技术为基础,以人工智能技术为核心,其研究内容与实现方法已发生并将继续发生重大变化。此时,以数据处理为核心的诊断过程被以知识处理为核心的诊断过程代替,对诊断技术的研究转变为从知识的角度出发来系统地研究诊断技术。智能诊断技术经过二十多年的发展,已有了很多研究成果,但远未达到成熟的水平。
智能诊断技术能够大大提高诊断的效率和可靠性。目前,智能诊断技术主要有3个基本方向:专家系统故障诊断、模糊逻辑故障诊断和神经网络故障诊断。它们之间的融合也在研究之中。
人工智能在故障诊断领域中的应用,实现了基于人类专家经验知识的设备故障诊断,并且将其提高到一个新的水平——智能化诊断。由此可以看出,故障诊断是一门综合性学科,它的发展离不开它所依赖的基础学科的发展。可以说,与前沿科学的相互融合、取长补短是故障诊断技术的发展方向。传感器的精密化、多维化,诊断理论和诊断模型的多元化,以及诊断技术的智能化是当今故障诊断技术的发展趋势。
基于人工智能的故障诊断即将人工智能领域的各种研究成果用于故障诊断,如基于专家系统的方法、基于人工神经网络的方法、基于遗传算法及模糊推理的方法等。它是计算机技术和故障诊断技术相互结合与发展进步的结果。基于人工智能的故障诊断的本质特点是模拟人脑的机能,有效地获取、传递、处理、再生和利用故障信息,成功地识别和预测诊断对象的状态。将神经网络、专家系统、遗传算法、模糊推理等人工智能领域中的各种方法加以综合利用并用于故障诊断,特别是针对具有模糊性的诊断对象,将更有利于深入细致地刻画与描述故障的特征,有利于避免故障判断中的非此即彼的绝对性,使推理过程与客观实际更加相符,同时也解决了传统的故障诊断专家系统中存在的知识获取“瓶颈”问题、知识“窄台阶”问题,以及容易出现的“匹配冲突”“组合爆炸”“无穷递归”等问题。将人工智能领域中的各种方法有机结合,可以大大提高故障诊断的水平和效率。因此,基于人工智能的故障诊断技术是故障诊断领域最为引人注目的且最有发展前途的研究方向之一,是今后故障诊断领域的研究热点。