随着旋转机械大型化、连续化和自动化程度的提高以及人工智能的发展,智能诊断系统在旋转机械故障诊断中得到了越来越广泛的应用。所谓智能诊断,是指利用人类专家的宝贵经验,模拟人类的思维方式,用计算机去诊断设备的故障,得到和人类专家相一致的诊断结果,在此过程中不需要或较少需要人的干预。目前,在现场应用的智能诊断系统中,除了从国外引进的以外,国内一些高等院校和科研单位也开展了这方面的工作,在实际应用中取得了一定的效果。
智能诊断系统是基于知识的系统,它以知识处理为研究内容,包括诊断知识的获取、知识表示和推理控制等。由于知识处理的难度和缺少经验,某些问题没有得到很好地解决,使一些智能诊断系统实际上并不具有充分的智能行为,主要还是依靠现场专家根据经验和机组的状态作出判断。本文根据故障诊断系统对知识处理提出的要求,从系统工程的角度对这些问题进行了分析,提出了一些有效的解决方法,使故障诊断系统的智能化水平得到明显提高。
1 诊断知识的获取
知识获取是把用于问题求解的专门知识从某些知识源中提炼出来。知识获取的途径主要有领域专家的经验知识,书刊和会议论文集以及模型试验和计算机仿真等。
诊断知识获取的方法可分为直接获取和间接获取两大类。知识的直接获取需要解决机器学习问题。机器学习是一个相当复杂的过程,需要有大量的领域知识作为支持机器学习的环境。到目前为止,知识的直接获取并没有达到实用化阶段,还不能用计算机获得人都难以得到的诊断知识。目前,知识的获取主要是用人工方法,依靠知识工程师从领域专家或相应的书本资料中艰难地抽取,如1所示。
问 形式化
领域专家 知识工程师 知识库
答
图1 知识获取的方法
智能诊断系统的设计需要领域专家、知识工程师和拥有大量启发式知识的知识库。领域专家是在某个领域中具有专门技能的人。在解决问题时,他们能较有把握地做出猜测,能较快地辨认出有效的求解方法,但通常对程序设计和人工智能缺乏了解。知识工程师是系统的主要设计者,知识获取主要是由知识工程师完成的。启发式知识是领域专家拥有的经验性知识,这种知识通常不被他人所了解,往往缺乏严格的理论依据,不能保证其在各种情况下的普遍正确性,但在一定条件下能够简洁有效地解决问题。知识工程师的任务是在了解领域的基本概念和系统目标的基础上,准备好问题提纲,和领域专家进行讨论,详细询问故障诊断结论是怎样得出的,可信度如何,为什么排除了其它故障,数据的可靠性和实时性如何,故障是如何处理的,处理后的效果如何,等等。在充分理解的基础上对收集的知识进行整理和分类,*后经过有关专家的确认,成为系统可用的精炼的知识。
由此可见,为了获取大量高品质的诊断知识,需要对现场发生的故障进行**深入的分析,因此是一件需要花费大量时间和精力的乏味的工作,一般要占开发一个智能诊断系统总工作量的4左右。如果没有宽广的知识源和强有力的知识获取,要想开发一个真正的智能诊断系统是不可能的。由于受到人力、物力和时间的限制等,目前一些智能诊断系统只有少数书本上的通用知识,缺少针对特定领域的专家经验知识,因此是不可能把故障诊断出来的。
2 知识表示与诊断推理
知识表示是将知识编码成为一种合适的数据结构。知识表示方法很多,同一知识可以有不同的表示方式,每种表示方法都有自己的优点和不足,一般需要根据实际情况进行组合。智能诊断系统经常采用规则表示形式,即把领域专家的经验知识用规则来描述。规则表示具有易于理解,容易增删和修改,易于实现推理等优点
在基于规则的诊断系统中,规则是系统的基本结构单元,它的正确与否直接影响系统的性能。规则必须能够准确地反映专家处理实际问题的整个思维过程,确切地表达故障与征兆之间的因果关系。因果关系是复杂的,在规则中表现为征兆与故障的复杂对应关系,必须仔细考虑其中微妙的差别,在规则的前提中采用*佳的征兆组合形式,而不能简单地认为规则只是某故障所有征兆的任意组合。
推理是根据一定的原则,从已知的判断得出另一个新的判断的思维过程。由于诊断知识的不确定性,经常采用不**推理方式。常用的不**推理方法有可信度方法、主观Bayes方法、模糊结合论法、证据理论和发生率计算等。事实上*常用的是前两种方法,后几种方法虽然考虑的问题较**,从理论上讲精度较高,但是由于某些数据获取和调整困难等,实际用起来并不方便。目前不**推理研究还不成熟,各种方法都有一定的应用条件,需要根据实际情况进行修改,不能照搬书本上的理论,不能简单地认为故障是通过某种算法就可以诊断出来的。
此外,模糊诊断方法,人工神经网络诊断方法,基于案例的诊断方法和基于模型的诊断方法等也得到了应用。每种诊断方法都有自己的适用范围和优缺点,必须对其本质进行深入分析,综合考虑各种理论和方法应用于实际的必要性和可能性。一种新的诊断理论和方法只有在实验室得到充分论证,具备实施的条件后,才能应用��实际,不能简单地认为采用了*新的理论就是*好的诊断系统。由于故障的表现是多样的和复杂的,不能将故障机理研究得到的一般性结论不分条件地用于各种情况,也不能仅通过少数特例来验证某种诊断方法的正确性。
3 征兆的自动获取
一般来说,征兆是设备表现出来的异常现象。从故障诊断的角度来说,征兆是有助于判断故障的各种现象,包括某些正常现象,因为利用正常现象可以排除某些故障。根据获取方式不同,征兆可分为两大类:自动获取的征兆和对话获取的征兆。为了实现故障诊断的自动化,征兆必须尽可能自动获取。
故障诊断系统是建立在监测系统的基础上的,监测系统的可靠性是诊断系统正常工作的前提。诊断是监测的目的,是监测系统发展的必然趋势。目前,监测系统的信号分析功能一般较强,但从监测系统得到的故障特征一般不能被诊断系统直接使用,主要使用对话方式获取故障征兆,用人工方式对获得的数据和信息进行解释,对设备状态作出判断,使故障诊断的实时性下降,并且需要现场人员具有丰富的经验和认真负责的精神。如果用户不能认真回答所有的问题,将使诊断结果的可靠性下降。
征兆获取是联系状态监测与故障诊断的桥梁。它是完成从数据库中的基本数据到征兆库中的征兆的过程,如图2所示。它是先对数据采集得到的基本数据进行分析,经过分析转换成特征数据,如通频及各种频率成分的幅值大小,转速和负荷,振幅、相位、温度、压力和流量等,再经过征兆获取程序,计算征兆的可信度,成为具有可信度大小的征兆事实,提供给系统诊断推理时使用。虽然征兆获取程序一般是在后台运行,不与用户直接发生关系,但却十分重要。
数据采集 数据库 特征数据 征兆库 诊断推理
图2 征兆获取的过程
用于征兆获取的方法很多,可以采用常规的频谱分析、包络分析、相关分析和频率细化技术等。同时,征兆获取是一门涉及到许多当代前沿科学的应用技术,必须借助现代数学方法,如模糊数学,小波变换,分形几何,诊断信息的集成和融合技术等,以便得到更多更可靠的可观测、可识别的征兆,但同样不能只追求形式,忽视方法的适用范围和条件。
征兆的可信度是诊断推理的主要依据,因此,它的正确与否直接影响诊断结论的可靠性。可信度既可以用离散的数值表示,也可以用连续函数形式表示。当征兆采用离散化量值时,其可信度非0即1,这类征兆主要有振动的**大小、转速和负荷及诊断部位等。当征兆采用连续化隶属函数表示时,其可信度则是[0,1]之间的值,如各种频谱成分的相对大小及其变化率等。选取或设计何种隶属函数的形式,取决于征兆的性质。为了把握征兆和故障的发生和发展情况,需要对设备历史数据库进行**系统的分析,同时也要满足在线诊断的需要。因此,不能脱离实际,不能从主观出发给出一些简单的定义,这是征兆获取的难点和关键所在。
在作者研制故障智能诊断系统过程中,根据汽轮发电机组、压缩机组和水轮发电机组等诊断对象的不同,通过故障机理研究、专家咨询和大量现场故障案例的分析,分别编制了数百条的诊断规则。从利用征兆诊断故障的角度出发,结合故障诊断问题的特点和要求对不**推理算法进行了改进。根据性质不同对征兆进行了分类和量化,对能够自动获取的征兆编制了相应的征兆获取程序。通过实验室模拟和现场实践证明,系统能够及时准确地诊断机组所发生的故障。
提高故障诊断的智能化水平,能够提高故障诊断的及时性和准确率,减少人为差错,适应现场的实际需要。诊断系统是否拥有大量和高品质的诊断知识,知识表示和诊断推理方法是否适应实际问题的需要,是否具有很强的征兆自动获取的能力,是影响故障诊断智能化水平的三要素,也是评价故障智能诊断系统性能的重要指标。此外,良好的人机界面,可扩充和可修改的模块化设计,完善的帮助和服务功能等,也是影响诊断系统可接受性的重要因素。因此,故障智能诊断系统的研制是一项复杂的系统工程,需要对诊断对象的故障机理、计算机技术、人工智能技术以及故障诊断原理和方法等有深入的了解并能综合运用于实际,协调各种因素以达到系统的*佳配置,使系统功能得到*大程度的发挥,使系统真正成为人类的得力助手。