基于粒计算-SDG的故障诊断仿真平台
2011-05-15张志军赵静阁谢克明
张志军,詹 峰,赵静阁,谢克明
(1.太原理工大学信息工程学院,太原 030024;2.山西财经大学信息管理学院,太原 030006)
实际工业系统中,轻微故障若未能及时检测并处理,就可能发生连锁反应,导致整个系统崩溃,进而引发巨大的灾难性后果[1]。如中石油吉化公司2005年双苯塔爆炸,造成的严重环境污染几乎波及东三省。为改进系统运行的可靠性和安全性而提出的故障诊断方法,可以及时发现系统运行中的故障,并能准确定位该故障源,从而及时采取相应处理措施,避免故障的扩大和重大事故的发生,这有极重大的意义。
高温硝酸冷却流程系统是化工领域的重要系统之一,超高温硝酸输入到下一流程的反应器中,就有可能导致故障。故障容错技术研究的是系统在异常工况下,甚至是故障情况下运行的状态,实际工业系统本身不允许在实际运行中进行故障诊断的研究和试验,因此构建一个用于故障仿真诊断的试验平台很有必要。
本文根据课题前期的研究积累,引入Matlab程序图形化界面——用户图形界面(GUI),最终实现SDG模型导入、故障导入、故障显示、诊断显示等功能,实现Matlab环境下,基于粒计算-SDG的高温硝酸冷却故障诊断仿真试验平台。
1 仿真平台总体设计
仿真试验平台设计目标是模块化,提高可移植性和扩展性,能够对工业流程进行仿真、调试,判定故障状态和故障源[2]。仿真试验平台能够模拟如低量运行、超限运行等实际工业系统中的大部分异常情况,从而进行故障诊断的实验研究。
随着科学技术的发展,以计算机为上位机的控制系统已逐渐成为工业领域的主导,Matlab具有强大的工程试验、矩阵运算、图形绘制能力,并提供与组态王、VB和C语言等的无缝接口和混合编程环境。因此,本文选择Matlab编写实验程序,并构建了基于Matlab中GUI的故障诊断仿真试验平台。
2 仿真平台结构设计
仿真试验平台由知识获取层、知识处理层和用户层构成,其系统结构如图1所示。在设计时把用户界面与知识获取分开,知识获取与知识处理分开,从而使表现层、逻辑层和数据处理层互相独立。其中知识处理层包括知识处理与规则提取,故障的显示与分析等功能。
1)用户层是用户与系统相交互的界面,在该界面上,用户可提出对系统知识处理的请求,并显示分析诊断所得故障的结果。
2)知识处理层由知识处理任务、知识处理接口、故障分析及显示模块四个功能模块组成。
知识处理层通过调用知识获取层中的知识信息,采用粒计算中的知识约简算法[4,5],通过进行节点的属性重要度评价任务,约简系统的冗余属性知识,从而获取最简决策规则。通过读取故障节点信息,经故障诊断模块判别是哪个案例故障状态,并将诊断结果在GUI相应的控件对象上显示。
3)知识获取层包括数据预处理、知识库和数据源。
本仿真平台将数据源和知识库转化为矩阵形式,并保存为文本文件,通过故障诊断系统的函数可调用该文件。
图1 仿真试验平台系统结构
3 仿真平台设计流程
Matlab的图形用户界面,由窗体、文本框、按钮等控件构成。运行时,通过调用相应的图形控件函数来实现相应功能。
3.1 设计制作
故障诊断过程能看成模式分类的过程,系统中每个故障节点能对应一组相应的节点状态特征值。因而,在软件的设计过程中,要实现包括代码的结构化、文件的结构化、全局和局部变量的布置和使用,还要充分考虑数据接口、变量空间、变量生命期等问题。Matlab GUI设计具体步骤为:
1)打开Matlab工作平台;
2)创建GUI平台;
3)设置用户界面中的对象;
4)编写GUI中相应的函数。
3.2 设计流程
在高温硝酸冷却故障诊断系统的GUI中,运行时可显示系统的SDG模型、系统的节点状态、系统的诊断结果、故障诊断比较等。其具体设计步骤为:
1)在Matlab环境中,点击GUI Quick Start,启动Matlab GUI,运行相关的初始化程序,可得如图2所示的高温硝酸冷却故障诊断系统界面。
2)设置“Import SDG”按钮。要求单击该按钮时运行系统弹出SDG图选择窗体,在该窗体可打开系统目录下的SDG图文件。包括高温硝酸冷却系统SDG模型图和改进的高温硝酸冷却系统SDG模型图。
图2 高温硝酸冷却故障诊断系统界面
3)设置“Import Node State”按钮,通过编写Callback函数,实现当点击该按钮时,打开故障数据Fa(i).txt存储文件夹的选择窗口。其中,每个txt文件中存储两行故障诊断决策表中的数据[5]。通过选择按钮“Basic Node”或“Node Expasion”,可以将相对应的变量数据,读入计算机内存。
4)分析节点数据,得出诊断结果。本故障诊断仿真试验系统根据文献[5]得出的故障诊断决策规则,采用产生式规则(Production Rule),即形如“IF condition THEN conclusion”来表达推理规则知识。例:IF T3=1 AND T4=1 AND P6=-1 AND F2=-1 AND F7=-1 THEN PCV failure AND Pump shutdown。
在运行系统中,只需单击 “SDG-Based Fault Diagnosis” 或 “GrC and SDG-Based Fault Diagnosis”按钮,就可在SDG图下的文本框中显示所获诊断结果,如图3所示。
图3 高温硝酸冷却故障诊断结果
4 仿真试验平台的测试
在笔者电脑(CPU:Intel 1.70 GHz,RAM:512MB,OS:Windows2000 Professional)上所装Matlab7.0中进行仿真实验相关测试。
4.1 测试步骤
本仿真试验平台运行流程为:
1)启动仿真平台,导入系统的仿真模型,进行仿真系统的初始化。
2)自动判断系统是否已与现场实体相连。若有则打开通讯模块,进行数据采集等相关操作;若无则运行仿真模型,调用计算机中存储的一组历史数据或故障数据。
3)用户通过GUI界面中的读取节点状态按钮和选择按钮,把实时采集数据或计算机中所存数据调入系统变量赋值模块中。
4)用户单击故障判别按钮,系统根据已输入的数据,来分析和诊断,并把所获结果输出到系统故障显示模块。然后,用户通过对预期结果和输出结果进行比较,判断系统故障诊断的结果是否正确。
4.2 测试实例
假设实际系统出现如下故障剧情,通过以下步骤来验证系统诊断结果是否正确。
1)当故障Fa1发生,即输入实际系统的高温硝酸的压力过高。
此时检测出实际系统中的节点的异常征兆为T3较高、F1过高、T4较高、F2过高。根据 4.1的测试步骤,读入相应的数据,试验“基本SDG故障诊断”,“基于节点扩展的基本SDG故障诊断”,“基于知识约简的基本SDG故障诊断”和“基于知识约简的节点扩展故障诊断”,都得出故障为Fa1。
2)当故障Fa5发生,即实际系统中流量测试单元Fc出错和输入的冷却水管漏水。
此时检测出实际系统中的节点的异常征兆为P6过低、F2 关断 、F7 过低 、T3 较高、O10 关断 、T4较高。根据4.1的测试步骤,读入相应的数据,试验“基本SDG故障诊断”,“基于节点扩展的基本SDG故障诊断”,“基于知识约简的基本SDG故障诊断”和“基于知识约简的节点扩展故障诊断”,都得出故障为Fa5。
3)对于其他的故障状态,可以进行类似的诊断。经由对象系统各种故障数据的诊断测试,表明本文所建立的故障诊断仿真试验平台能准确地将故障诊断出来,也验证了本仿真试验平台所采用的诊断算法的正确性和有效性。
5 结论
Matlab具有界面友好的可视化编程环境和强大的数据处理能力,本文采用Matlab7.0,设计了界面友好的高温硝酸冷却故障仿真诊断系统。所设计的故障仿真诊断系统操作简单,使用户能很方便地获得故障征兆特征和直观的故障诊断结果。最后经实例验证表明该系统的有效性。
[1] 胡寿松,徐德友,刘亚.动态系统故障诊断方法的评估[J].华北电力大学学报,2003,30(6):20-24.
[2] 王春利,张卫华,吴重光.故障诊断技术理论与发展趋势及其在石化领域的应用[J].石油化工自动化,2008(6):7-13.
[3] Samantaray A K,M edjaher B,Ould Bouamama B,et al.Diagnostic bond graphs for online fault detection and isolation[J].Simulation Modelling Practice and Theory,2006,14:237-262.
[4] Xie Keming,Chen Zehua,Xie Gang,et al.BGr Cfor Superheated Steam Temperature System Modeling in Power Plant[C].The 2006 IEEE International Conference on Granular Computing,Atlanta,GA,United States,2006(10-12):708-711.
[5] Zhan Feng,Xie Keming,Zhao Jingge,et al.Fault Diagnosis Based on Granular Matrix-SDG and its Application[C].The 2009 IEEE International Conference on Granular Computing,Nanchang,China,2009(17-19):752-756.
[6] 陈皓,吴重光.用于故障诊断试验的仿DCS操作站软件研究[J].计算机仿真,2004,21(11):223-227.
[7] 刘强,刘忠义,张宁,等.基于符号有向图的故障诊断系统及其软件平台[J].软件导刊,2009,8(11):11-14.
[8] Xie Keming,Zhan Feng,Zhao Jingge,et al.Gr C and SDG-Based Fault Diagnosis Sy stem and its Simulation Platform[C].The 2010 IEEE International Conference on Granular Computing,Silicon Valley,USA,2010(14-16):550-555.