王 仲 顾煜炯 韩旭东 孙树民 朱俊杰 黄元平
1. 华北电力大学国家火力发电工程技术研究中心,北京,102206
2. 广东粤电中山热电厂有限公司,中山,528400
随着经济发展步入新常态,电力企业面临的生产经营环境愈发复杂。为提升企业核心竞争力,各家企业都在积极推进信息化与工业化的深度融合,探索实施智慧电厂的发展战略[1]。机组设备的状态监测与健康维护是智慧电厂的核心任务之一[2]。大数据分析与人工智能技术的发展,改变了健康维护工作的传统模式,促使其朝着智能化方向迈进。由于发电机组的健康维护关注参数背后的物理意义与特征间的因果关系,重视推理过程与结论的可解释性[3],因此服务于健康维护功能需求的工业大数据不仅包括结构化的参数测点数据,还应包括非结构化的专家知识[4]。燃气轮机作为典型的复杂系统,设备众多且彼此耦合,因此健康维护的领域知识具有体量大且繁杂的特点。以发电用重型燃气轮机为智能状态监测与健康维护的具体应用场景,开展大数据系统中知识获取、表达与推理的研究具有十分重要的意义。
知识获取与表达是知识工程的关键工序,是开发专家系统的核心工作[5]。CHOUDHARY等[6]针对不同的知识类型,总结了数据挖掘在制造业知识获取问题中的应用。YANG等[7]利用决策树模型获取转子振动类故障知识。在众多知识获取的模型中,故障模式及影响分析(failure mode, effect analysis,FMEA)和故障树分析(fault tree analysis, FTA)是工业上广泛应用的故障分析技术,能系统地指导知识的搜集[8]。FMEA通过评估潜在故障对设备功能及周围环境的影响,提出系统风险部件的预防改进措施[9]。CATELANI等[10]基于FMEA分析获取设备在设计和运行阶段的故障信息,并将其用于油气系统仪表的安全检测。FTA通过逻辑和图形化的方式描述了故障链中的顶事件、中间事件、基本事件等不同层次事件间的“与”“或”“非”等逻辑关系[11]。LI等[12]利用FTA方法分析地铁车辆设备故障间的因果关系,构建了诊断专家系统。
常见的知识表达方法基于一阶谓词逻辑、规则、语义网络、框架、Petri网[13]。近年来,本体技术发展迅速,结构化的知识表达形式和关联推理机制使其成为新一代知识管理系统的自然选择[14]。CHEN等[15]建立了基于本体理论的旋转机械故障诊断模型,规范了故障诊断中重要词条的本体化表达。SIHEM等[16]在故障知识本体表达基础上建立了汽轮机故障诊断专家系统。ZHOU等[17]提出信号分析和本体建模的混合模型,实现了机械部件全过程的故障诊断。MEDINA-OLIVA等[18]提出了一种基于本体的诊断系统架构,为管理者和工程师提供了有效的知识管理和综合信息共享平台。ZHOU等[19]将故障模式影响与危害性分析(failure mode effects and criticality analysis, FMECA)与本体建模相结合,建立了风电机组故障知识库。尽管现有文献对工业领域内知识工程的各环节分别进行了详细的论述,但仍然缺乏对健康维护工作中知识获取、表达与推理全过程的总结概述。燃气轮机健康维护作为一项复杂的系统工程,涉及特征提取、能效优化、故障识别、寿命管理、维护决策等多方面内容,需要一套系统性的工作思路指导数字化专家知识库构建,形成具有层次化结构的大数据系统平台,为健康维护的实现奠定基础[20]。
本文针对燃气轮机健康维护工作中知识搜集不全面、知识可移植性差、知识推理效率低等诸多问题,提出了一套指导知识获取、表达与推理的系统性框架。首先借助FMEA与FTA方法多维度获取燃气轮机健康问题诊断所必需的专家知识;然后基于本体建模对已获取的专家知识重新进行结构化表达,并结合本体公理和自定义规则实现知识的诊断;最后选用某实用燃气轮机为对象说明该知识工程框架在健康维护系统中的应用。
在智慧电厂的建设背景下,燃气轮机的健康维护任务应该全面覆盖机组运行工况,从多维度建立机组的故障知识图谱。在知识获取阶段,借助FMEA和FTA可以全面开展故障机理分析工作,搜集专家知识。
FMEA的分析内容主要包括故障的模式分析、影响分析、原因分析、特征分析和处理措施分析,结果以表格形式体现。燃气轮机作为机电热耦合复杂系统,健康问题可能会出现在单一设备的故障层面,也可能会出现在系统层面(往往反映在能效指标的异常上[21]),包括故障间的传递以及控制系统的失灵。燃气轮机参与调峰的工作模式已成常态,启停机阶段和变负荷阶段占据总服役周期的比重越来越大[22],关键参数的频繁变化会造成燃气轮机材料的加速老化,因此,为全面获取燃气轮机的健康维护知识,借助FMEA思路,从能效、故障和寿命三个角度分析机组的健康问题。将FMEA获取到的知识分为从原因到影响的故障演变知识、从征兆到原因的故障诊断知识,以及从评价到维护的故障决策知识,如图1所示。
图1 燃气轮机健康维护获取的多维度知识
燃气轮机的运行过程可以分为四个阶段:启机、停机、稳态和非稳态。不同运行阶段的故障模式及对应的征兆不同,需要以运行过程和设备对象为边界研究故障的特点。故障的原因与影响分析是故障知识获取的重要内容,反映了故障演变的因果链。故障原因不仅局限在设备失效方面,机组的能效水平与寿命同样应该纳入分析范畴。针对不同的故障原因,结合故障的严重程度综合评价,制定不同的维护策略。表1给出了压气机结垢故障FMEA结果,分析内容包括:模式、过程、部件、征兆、原因、影响、评价和维护。为了方便后续知识的表达和管理,对相关词条进行了编码备注。
表1 压气机叶片结垢的FMEA
FTA方法是对FMEA的补充,侧重分析各故障事件间的逻辑关系,为提取故障演变规则奠定基础。FTA方法的符号说明与详细介绍见文献[11]。故障树的构建首先需要确定顶事件与底事件的划分原则。故障树顶事件即故障模式的选取有以下三条原则:①将对设备正常运行影响较大、发生较为频繁的故障作为故障树顶事件;②顶事件最好是诱发燃机系统失效的直接主导原因;③应利于在线监测和诊断。确定故障树底事件的原则是划分到最小可维修单元或可测节点为止。如果可测参数异常由工况边界所致,则不作进一步分析,否则应划分到最小可维护单元。图2中,燃烧室压力波动大是故障树顶事件,中间事件由矩形表示,底事件用圆圈表示;三角形1、2、3表示故障树的转移,对应未详尽说明的故障底事件;相邻两层故障间用或门逻辑符号连接。进口可转导叶(inlet guide vancs,IGV)故障、旁路阀故障和燃料喷嘴堵塞故障的出现频率较高且对机组健康影响较大,将其认定为故障模式。
图2 燃烧室压力波动大的故障树
最小割集表示故障模式发展的一条可能路径,采用最小割集的方法获取故障演变规则。一个故障模式的全部最小割集构成了故障模式的故障演变图谱。故障树采用下行法确定全部最小割集,与门仅增加割集内所含元素的数量,或门增加割集的数量。对于故障树的顶事件与中间事件同为故障模式的情况,若中间事件与顶事件同时出现,则应优先检查处理中间事件。图2中,若燃料喷嘴堵塞故障和燃烧室压力波动大故障同时出现,则认为燃料喷嘴堵塞故障大概率是燃烧室压力波动大的诱因,可先处理燃料喷嘴堵塞故障。若燃烧室压力波动大的故障仍未消除,则按照故障原因可能性的大小逐步排查其他原因。
借助FMEA和FTA获取的非结构化专家知识是以表单和图形的形式储存的,难以直接驱动计算机查询推理。各个专家对故障机理和规则的描述缺乏统一的术语,造成诊断知识通用性差,因此需要采用本体模型对专家知识进行重新表达和管理。
本体作为一种概念知识结构化的表示形式,由类、属性和个体构成[23],可清楚准确地定义类及其关系的层次结构,是一种语义丰富的知识表述载体。本体建模语言一般采用互联网标准组织W3C(world wide web consortium)推荐的OWL(ontology web language)。燃气轮机健康维护领域本体采用斯坦福医学信息中心提出的七步法[24]构建,具体步骤如下。
(1)确定研究对象。本文开展的是燃气轮机健康维护领域的本体构建。
(2)考虑复用现有本体的可能性。整合本领域内已建好的核心本体。
(3)列出本体重要的概念词条。基于FMEA获取的知识表单提炼重要概念。
(4)定义类及层次结构。燃气轮机健康维护领域的本体包含健康维护、设备和运行过程三大类。运行过程和设备表示机组故障出现的边界条件,在健康维护本体类中分为模式、原因、影响、征兆、维护、评价等6个子类。燃气轮机健康维护本体中类的描述与层次划分如表2所示。
表2 燃气轮机健康维护本体类的术语与层次划分
(5)确定对象属性及关系。根据健康维护工作的内容,将对象属性分为 “组成”、“包含”、“发生在”、“因为”、“影响是”、“评价是”、“维护是”、“征兆是”,如表3所示。表3中,领域状态栏内的类通过对象属性与范围状态栏中的类相关联。
表3 燃气轮机健康维护对象属性说明
(6)确定数据属性及关系。确定设备的重要度和故障模式的风险等级。
(7)个体填充与一致性检验,判别构建本体过程中是否出现了逻辑冲突。
事实上,故障诊断的过程是一个语义检索过程,故障知识本体的约束和公理有助于消除语言歧义问题。燃气轮机的故障诊断可分为故障模式的识别和故障原因的推理两个环节。故障模式的识别是根据出现的征兆,为异常事件匹配相应故障模式。故障原因的推理是在故障模式识别的基础上,根据故障演变链搜寻出可能的故障原因,这往往需要反复多次推理查询。为实现燃气轮机故障诊断,本体的推理过程在Jena环境[19]下完成。Jena中的规则推理机支持RDFS(resource description framework schema)和OWL的公理推理,以及基于自定义规则的推理。基于本体推理的故障诊断采用OWL公理与自定义规则相结合的方法,如图3所示。
图3 基于本体推理的故障诊断
征兆SY出现时,利用hasSymptom属性创建与征兆相关联的异常事件个体YC。在构建完成的本体OWL中,故障征兆视作个体,通过OWL类中的等价关系Equivalent to与故障模式相关联。利用HermiT推理机完成异常事件个体YC到知识库中已有故障模式的分类。HermiT推理机是公开可用的OWL推理机,在给定一个OWL文件的情况下,能快速有效地识别类与个体之间的包含关系。如果某一异常事件个体出现的征兆与本体知识库中某一故障模式的征兆相一致,则判定该异常事件个体属于该故障模式类。故障模式的识别结果可以通过SPARQL(simple protocol and RDF(resource description framework) query language)语言查询。故障原因的推理是在故障模式的基础上,通过自定义规则实现的。用自定义规则表达故障树中故障演变传递的复杂因果关系。
燃气轮机健康维护知识管理系统框架的设计分为三个模块:知识获取、知识表达和知识推理,如图4所示。在知识获取模块中,通过划分燃气轮机系统结构构建设备树,确定每一部分设备与系统的功能,借助FMEA和FTA完成燃气轮机健康维护知识的获取。在知识表达模块,基于本体建模对已获取的故障知识进行结构化表达,构建燃气轮机健康维护专用领域本体知识库。在此基础上,以本体知识为单元对象,采用本体公理和自定义规则,结合人工智能算法在线提取故障征兆,实现故障模式的识别和故障原因诊断推理。
图4 燃气轮机健康维护的知识管理系统框架设计
图5 燃气轮机设备树
选用某实际300 MW发电用重型燃气轮机为对象,说明本文提出的系统框架在健康维护知识管理系统开发中的应用。首先对燃气轮进行系统划分与功能分析,得到的4层设备树如图5所示。燃气轮机可以分为压气机、透平和燃烧室3个子系统。通过故障机理分析和事故案例总结,将燃气轮机常见的故障模式分为25类,如表4所示,其中,FY表示发生在压气机的故障,FT表示发生在透平的故障,FR表示发生在燃烧室的故障。转子碰摩类故障中,转轴与1号轴承浮动油挡碰摩、轴颈与1号轴承轴瓦碰摩发生时的表现征兆不同,因此将其视为不同故障模式分析。
表4 燃气轮机典型故障模式、征兆及对应编号
Protégé软件可提供用户交互的开发环境与可视化界面,在本体构建中广泛使用[25]。通过Protégé本体软件搭建的燃气轮机健康维护领域本体模型如图6所示。图6中,左侧区域显示燃气轮机健康维护的类及其层次化关系,中间区域显示征兆类下的个体,右侧区域显示领域内的对象属性。借助Protégé本体开发工具可以快速便捷地将获取的故障知识转为本体结构化表达。此外,也可以选用图数据库Neo4j进行本体知识的存储。
图6 燃气轮机健康维护本体模型
以某次压气机喘振故障诊断为例说明该健康维护系统在实际状态监测中的应用。机组在2019年8月9日的启机升速过程出现2号轴承Y向振动过大的故障,最大振动幅值超过200 μm,最终导致机组跳机,如图7所示。故障发生时,压气机出口压力在转速超过1720 r/min后出现明显降低,如图8所示。振动过大和压力出口压力降低这两个征兆可通过预先写入系统的判别算法在线提取。图7和图8中,2019年8月7日和2019年8月14日的曲线表示正常启机条件下振幅与出口压力的变化趋势。此外,压气机出口的低沉轰鸣声可作为现场人员采集的离线征兆,添加到诊断系统中。
图7 喘振故障的振动幅值变化
图8 喘振故障的压气机出口压力变化
由在线特征提取结果可知,当前有故障征兆SY04(启动过程中2号轴承出现明显的低频振动分量)与SY05(启动过程中压气机出口压力下降),因此异常事件YC={SY04, SY05}。在本体知识库中构造异常事件网络片段:(YC,hasSymptom,SY04)和(YC,hasSymptom,SY05)。对异常事件与本体知识库内各个故障模式进行匹配,采用SPARQL查询异常事件YC所属的故障模式,推理结果判定为压气机喘振故障。
在此基础上,对已经识别出的故障模式,利用事先定义的推理规则,在Jena自建规则推理机环,完成故障模式对应的故障原因及其他信息的检索工作,并写入故障报表。FY02故障(压气机喘振)的故障原因有CY05(SFC出力不足)、CY06(防喘放气阀未打开)、CY07(IGV开度不合适)、CY08(入口滤网堵塞)、CY09/FY01(压气机结垢)。由于可观测型原因CY05、CY06、CY07、CY08的征兆均未出现,所以压气机叶片结垢是本次喘振故障的诱因。
(1)智慧电厂背景下的燃气轮机健康维护任务离不开领域知识图谱的构建,借助FMEA与FTA的分析方法,明确了故障知识的类型,实现了燃气轮机多维度故障知识的获取。
(2)故障知识的本体建模实现了知识的结构化与语义性表示,提高了知识管理的效率。结合本体公理与自定义规则在本体知识库上完成了故障模式的快速查询与推理。
本文仅讨论了故障知识的结构性表达,在今后的工作中将进一步开展基于本体的传感器数据语义性建模的研究。