欢迎来到天天文库
浏览记录
ID:5390523
大小:630.54 KB
页数:5页
时间:2017-12-08
《基于知识库水电机组故障诊断专家系统》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第37卷第9期华电技术V0l_37No.92015年9月HuadianTechnologySep.2015基于知识库的水电机组故障诊断专家系统毛成,刘洪文,李小军,武晋辉,潘华,王江淮,钱华东(1.贵州电力试验研究院,贵阳550005;2.北京四方继保自动化股份有限公司,北京100085)摘要:根据水电机组的运行特点,收集机组运行过程发生的故障特征以及故障发生原因,以形成故障诊断专家系统的知识库,利用Java语言和Cybercontrol平台所提供的实时数据库、历史数据库以及画面组态功能来实现完整的故障诊断系统,以达到为水电机组运行和维护提供指导
2、的目的。关键词:水电机组;故障诊断;规则;知识库;专家系统中图分类号:TP182文献标志码:A文章编号:1674—1951(2015)09—0025—04—]O引言器1用.__J户随着水电行业的发展,水电机组的容量不断增人大,自动化程度和智能化程度不断提高,需要监测的机接参数也越来越多,机组运行时会产生大量的报警信口息,机组故障状态下,运行人员在短时间内观察和理专家解大量报警信息的含义是非常困难的,从而会影响知识库维护一实践事故处理的速度和准确性。引发故障的因素多种多样,相同故障表现出的症状也不会完全相同,因此,图1专家系统结构如果有一套可靠的辅
3、助工具对故障进行预测,将大现场维护人员交流,创建该故障诊断专家系统的知幅提高机组运行的可靠性和经济性¨。识库,它以xml文件的形式存储于指定目录下,可以本文提供了一种利用专家系统进行故障诊断的进行手动配置。方法。专家系统是一种智能计算机程序,它借助人知识库中的内容为诊断依据,即诊断规则,每条类的知识,按一定的搜索策略并通过推理手段去解规则包括若干前提条件和1个诊断结论,还有针对决某一特定领域的困难问题。本文所实现的诊断专该故障的分析及处理建议。家系统通过与北京四方继保自动化股份有限公司的1.2推理机制Cybercontrol平台相结合,实现了在线
4、监测和实时推理机也是一组计算机程序,是整个专家系统诊断。的协调控制中心,它可以根据知识库中的知识和用1基于知识库的专家系统户提供的征兆进行故障诊断,最终返回诊断结论、故障分析结果及处理建议。专家系统是一种智能计算机程序,它根据已有的本文采用的是基于规则的推理机制,即IF<前知识进行一系列的推理运算来解决一些问题。一提条件⋯⋯>THEN<故障结论及解释⋯⋯>模式,个专家系统通常由知识库、推理机、解释器、数据库和推理机工作结构如图2所示。人机接口等几部分组成,整体结构如图1所示。1.1建立知识库知识库是专家系统的核心,主要存储和管理专家系统中用于进行
5、故障诊断的知识。知识的表示形式有规则、框架、语义网络、谓词逻辑等,本文运用的是应用比较广泛的基于规则的知识表示形式。图2推理机工作结构本文建立的专家系统是针对水轮机典型故障的1.3解释接口故障诊断系统,通过与多家水电厂的各位专家以及解释接口包括解释器和人机界面:解释器可以收稿日期:2015—05—29;修回日期:2015—09—01给出故障诊断的详细依据以及诊断的逻辑推理过第9期毛成,等:基于知识库的水电机组故障诊断专家系统·27·3.1数据预处理功能的实现结论;然后将各个导致故障的事件进行逐层分离,分数据预处理功能主要包括:提供获取实时数据别作
6、为中间事件和顶事件;最后将结论和各事件建库和历史库数据的方法、提供对获取到的诊断数据立层次关系,形成推理的逻辑依据。水轮机故障层进行预处理的方法、提供将数据处理结果转换为文次如图5所示。本存储的方法。以上功能均利用Java语言进行编程实现。3.1.1诊断数据的获取诊断数据是故障诊断的的基础,本文从Cyber-control平台的实时库和历史库中获取数据,实现过程如下。首先,建立一个针对实时数据和历史数据的数据模型,该模型以xml文件的形式存储于指定目录中。然后,利用Java语言编写获取实时数据和历史数据的方法,主要包括模型加载方法、获取数据库数据
7、的接口函数及数据存储方法。图5水轮机故障层次模型加载方法如下。处理结果存储于一个列表中供其他方法使用,loadlnfo(){analogmodal=newSysmodal(sys-其实现方法如下。Model1);}//定义新模型publicArrayListgetAList(intstationId,intHydroturbi—loadmodal(){Filef=newFile(filename);//~uneld){载模型//遍历模型,找到电厂、机组if(!f.exists()){returnfalse;}ArrayListclistA=new
8、ArrayList();//定义列表如下是获取数据库数据的接口函数及数据存储floatvalue=((Record—SCADA—Anal
此文档下载收益归作者所有