专家系统的开发工具专家系统的开发除了和知识获取相关外,还部分地取决于所使用的工具。工具的选择不仅影响速度,而且还影响构造专家系统的可行性。
在本课题中开发工具采用面向对象的程序设计语言Delphi.这是因为:**,Delphi采用面向对象的程序设计方法,使问题空间与求解空间在结构上一致,提高了软件的可重用性、可扩展性,可设计出更加结构化、可扩充、易移植和易维护的程序;其次,Delphi适应于多种数据库结构,采用了高效率的数据库管理系统和更先进的数据库引擎,可以提高系统的执行效率。
专家系统知识库的设计系统常见故障原因分析及排除由于制氧机组系统庞大、复杂,因此容易出现知识的匹配冲突、组合爆炸等情况。采用故障树分析法<1,2>分析并排除故障是一个有效途径。
将该制氧机组按设备分成多个模块,研究、分析故障及其产生的原因,编制若干故障树,构架知识库的基础。采用产生式的知识表达方式将故障树演绎为若干规则,由这些规则再组成专家系统的知识库。
在理论上分别以这三个分系统节点为根节点,继续往下深入分析,从而得到三棵故障树。但事实上,在空压机系统中,油路是一个较为独立的系故障分析列表(示意)序号故障名称故障处理方法101空气滤清器堵塞清洗或更换空气滤清器102空分设备管路堵塞或阀门故障清洗设备管路,更换故障阀门103吸气温度过高降低吸气温度104压缩机中间冷却器冷却效果不好改善中间冷却器冷却效果冷却水温度过高降低冷却水温,对循环水应加强冷却措施202冷却面积减少修理或更换脱落的肋片管203水垢、油垢的影响定期清洗冷却器的芯子,改善水质,减少积垢统,可以单列出来,而气路则是与空压机密不可分,故而这两棵故障树可以合二为一。*终得到的空压机系统故障总树只包含了两棵子故障树,即空压机故障树和空压机油路故障树。
对于空压机故障树来说,以“空压机”为顶节点事件,根据所列的空压机各部件故障往下深入分析,从而得到空压机故障树的各个故障树。
空压机排气量不足子故障树B1-空压机振动大;B2-排气量不足;C1-压比增加;C2-转速下降;D1-阻力增加;D2-电压降低;E1-吸入压力降低;E2-排气压力增加;F1-空气滤清器堵塞;F2-空分设备管路堵塞;G1-空气带油;G2-水硬度太大所示为空压机排气量不足子故障树。该树仅就“排气量不足”作进一步展开,并且由于“中间冷却器冷却效果不好“会导致空压机组”排气量不足“,因此可将这两根树枝合并,使”中间冷却器冷却效果不好“成为”排气量不足“的一根次级树枝。
从而使故障树得到简化,消除冗余。采取同样的方式,可以得到空压机故障树的所有树枝。
基于故障树的知识库针对空压机子故障树,有如下一些规则:按照以上方法,根据前文所总结出来的故障树,可以得出故障知识库的所有规则。为了便于知识存储和管理,破除规则中“OR”的关系,将带有“OR”的规则分解,如RULE2分为:R201IFC1THENB2;R202IFC2THENB2;R203IFC3THENB2;R204IFC4THENB2.
经过整理的规则,每个IF和THEN后所跟的均是一个规则元素,也将是存入故障知识表的内容。知识表的结构如所示。其中:KID为知识代码,为该知识在库中的惟一标识;KName为知识的具体内容;NOTE为附加说明。
知识表KIDKNameNOTEL101压比增加L102转速下降L103密封不好L104吸气温度上升L105排气量不足故障知识库规则表的表结构如所示。其中:RID为规则代码,是该规则在故障知识库中惟一标识;FName为故障名称;FCause为故障形成的原因;FTreat为故障处理方法;NOTE为附加说明。
知识库及规则表RIDFNameFCauseFTreatNOTER201L105L101R202L105L102R203L105L103R204L105L104…根据以上规则表,应用Delphi来构建制氧机组故障诊断专家系统的知识库。将规则表里的每一条规则表示为相应的记录类型的结点,并将这些结点连接起来构成链表,如所示。
知识库链表按以上方法分析,对应于排气量不足、机组振动大、润滑系统故障等几类故障,可以分别构建以head1,head2,…为表头的链表,继而*终搭建出整个制氧机组故障诊断专家系统的知识库。
知识库的维护知识库的可维护性是衡量知识库性能优劣的一个重要方面。采用链表搭建的制氧机组故障诊断专家系统的知识库具有良好的可维护性,具体表现在以下几个方面:链表的创建;链表结点的插入;链表结点的删除;链表的修改。
以链表结点的插入为例,如果在知识库的构建过程中,对于故障现象及原因收集的不完全或是日后的机组运行过程中出现了新故障,就需要将其添加到知识库中去;如果该新故障属于某已存在的故障类,就将其插入相应的链表中,由于故障规则不分先后,因此新的故障直接插入在表尾。用类似的程序可以完成对链表进行诸如删除结点、修改数据等操作了。
网页评论共有0条评论