引言
按以上故障诊断原理构造的故障诊断系统在火电厂输煤plc控制系统中得到了应用。从实际运行来看,故障诊断系统能准确而迅速地判断出故障的原因,方便运行人员维护和检修,大大地提高了控制系统的稳定性和智能化水平。这种设计对类似的工业控制系统提供了一定的参考。
1 简介
plc作为一种成熟稳定可靠的控制器,目前已经在工业控制中得到了越来越广泛的应用。plc系统的设计直接影响着工业控制系统的安全可靠运行。一个完善的plc系统除了能够正常运行,满足工业控制的要求,还必须能在系统出现故障时及时进行故障诊断和故障处理。故障自诊断功能是工业控制系统的智能化的一个重要标志,对于工业控制具有较高的意义和实用价值。
故障诊断一般有两种途径:故障树方法和专家系统方法。故障树方法利用系统的故障逻辑结构进行逻辑推理,由错误的输出找到可能的输入错误。这种方法比较适用于系统结构相对简单,各部分耦合少的情况。专家系统方法通过建立系统故障的知识库与推理机,计算机借助现场的数据利用知识库和推理机进行深入的逻辑推理,找出故障原因。这种方法适用于系统结构复杂,各部分耦合强的大型工业系统。
本文根据故障树推理与专家经验规则推理相结合的方法,以某火电厂输煤控制系统的设计为例,介绍了一种利用plc和上位计算机进行故障诊断的plc系统设计。
2 系统设计
故障诊断系统建立在基于plc和上位计算机组成的控制系统上。plc在故障诊断系统中的功能主要是完成输煤系统设备故障信号检测、预处理,转化存储并传输给上位计算机。上位计算机由于具有强大的科学计算功能,利用专家知识和专家库,完成从故障特征到故障原因的识别工作。并通过人机界面,给出故障定位,报告和解释故障诊断结果,并为操作员给出相应的排除故障的建议。
3 plc程序设计
在进行故障诊断设计时,首先必须对整个系统可能会发生的故障进行分析,得到系统的故障层次结构,利用这种层次结构进行故障诊断部分的设计。以火电厂输煤控制系统的故障结构为例。为了描述简单,这里作了一定的简化。图1为系统的故障层次结构。
系统故障结构的层次性为故障诊断提供了一个合理的层次模型。在进行系统的plc梯形图程序设计时,应充分考虑到故障结构的层次,合理安排逻辑流程。在引入故障输入点时应注意:必须将系统所有可能引起故障的检测点引入plc,以便系统能及时进行故障处理;应在系统允许的条件下尽可能多的将最底层的故障输入信息引入plc的程序中,以便得到更多的故障检测信息为系统的故障自诊断提供服务。
(1) 故障点的记录
为了得到系统的故障情况实现系统的故障自诊断,plc必须将所有故障检测点的状态反映给内部寄存器,图2是用来记录故障点的部分程序。
ir4.02是输入的io节点,表示a侧皮带信号,当输煤系统使用a侧皮带正常运行时4.02的值为1,当4.02变为0时,说明a侧皮带信号出了故障,此时利用上升沿微分指令记录这次的信号跳变。这样这次事故就记录在ir31.00中。程序设计中将ir31作为记录底层故障信息的寄存器,由于内部寄存器ir有16位,所以能够记录16种不同的故障原因。如果有更多的故障需要记录,可以设置多个寄存器字。需要说明的是,有时引起故障的原因可能不止一个,往往一个故障会引起另一些故障的发生,因此还有关键的一点是程序要能记录最先发生的故障。这也需要通过plc编程实现,程序只对最开始发生的故障敏感。
[DividePage:NextPage]
(2) 多次故障事件的记录
由于系统实际长时间的运行中,可能会出现多次故障,为了检修和维护方便,还需要plc能够将多次故障事件记录下来。omronc200h型plc的数据存储区(dm区)可以间接寻址,利用这一点,可以在dm区划出一定的区域,用来记录每次故障事件,包括故障类型和事件发生的时间(日期,小时,分钟,秒)。这一段dm区域可以循环记录,实际使用中记录了最后50次故障的情况,这些记录是系统运行的重要资料,方便了运行人员了解设备情况,对其进行检修和维护。
(3) 模拟量故障的诊断
对于模拟量信号例如犁煤车,给煤车电机电流的故障诊断,首先利用模拟量模块,接收来自电流变送器的模拟信号,将其转换为数字信号,然后与整定值或系统允许的极限值比较,若在允许范围之内则表明对应的设备处于正常运行状态,如果实际值接近或达到极限值,则为不正常状态。判断故障发生与否的极限值根据实际系统相应的参数变化范围确定。
(4) 各种故障信息的串行通信
上位机通过串行通讯及时读取plc的内部寄存器区的各种故障信息。利用plc的rs232通信接口,可与上位计算机进行hostlink方式串行通信。通信时,上位计算机首先向plc发出一帧命令帧,包括操作命令、寄存器类型、起始地址与要读取的寄存区数目等。plc收到命令帧后会做出响应,如果没有错误则向上位计算机发出响应帧,响应帧中包含了上位机需要查询的寄存器值。
上位计算机通过读取数据寄存区的值来获取当前plc的工作状况,同时上位计算机对plc的控制也可通过对该区的写操作来完成。具体的通信实现可以参考相关资料,这里不作详细论述。
4 借鉴专家系统故障诊断方法的实现
系统故障结构的层次性为故障诊断提供了一个清晰的层次模型,可以利用基于模型的故障树法。但是在进行比较详尽的故障诊断以及系统故障存在耦合时,仅仅使用故障树法是不够的,必须借鉴专家系统的方法。
(1) 面向对象的“知识对象”, 大大提高了故障诊断的推理效率
在传统的专家系统中,知识被组织成知识库的形式,推理机进行推理时,要从知识库表示的所有空间中搜索所需的知识。这种方法有搜索空间大,推理效率低的缺点。“知识对象”的概念可以解决这一问题。“知识对象”是一个逻辑概念,它利用面向对象的方法,将知识源和黑板都表达为对象,在知识对象的内部封装了专家系统和推理机、解释器。当相应的知识对象被激活后,就在对象内部进行推理,大大提高了推理效率。根据系统的实际情况和故障推理的过程,在这里知识对象被具体化为故障节点。故障节点是进行诊断推理的基本单位,诊断信息在故障节点间层层传递,故障节点内部利用这些信息进行推理并最终确定故障原因。
图3为系统部分故障节点的层次结构。图3可以看出,故障节点在结构上以虚线为分界线分为两个部分。上一部分层次清晰,在这一部分可以采用基于故障模型的故障树方法;下一部分由于结构复杂,耦合性较强,构造模型困难,可采用专家系统的推导方法。
故障节点呈网状分布,1个节点可能有1个或多个父节点,也可能有1个或多个子节点。子节点和父节点之间的关系由故障层次和子节点故障层次来表示。如节点1的子节点故障层次为1,而节点2和节点3的故障层次为1,则节点2和节点3是节点1的子节点。故障层次和子节点故障层次不仅指明了故障节点结构上的层次,而且也隐含了推理规则。
(2) 对象类型与推理节点
对象类型表示该故障节点在故障推理中的作用,它可分为3类:根节点,叶节点,推理节点。根节点的故障由它的子节点产生,应到其子节点中去继续推理。叶节点是底层故障。叶节点没有子节点。推理节点是故障诊断规则最为集中的节点,检测节点可以视为推理节点的子节点,它为推理节点的推理过程提供相关的信息。我们在推理节点并不是判断该节点是否存在故障,而是利用推理节点封装的规则库与推理机,结合检测节点提供的信息进行故障推理,找出故障原因。
(3) 故障节点的检测方式
地址段是节点的位置(本系统中是plc中的寄存器)。数据段根据用户的需要可以为一个或几个,数据段中数据的定义与节点的性质有关。检测方式表明在该节点系统进行何种操作。主程序根据故障节点的检测方式选取相应的处理函数。该函数是检测手段与推理规则的结合,故可称之为检测/推理函数。一方面它可以检测故障节点本身的状态,另一方面使用推理机制进一步推断故障原因。性质类似的节点使用相同的检测/推理函数,利用地址段和数据段中的值加以区别。
(4) 各节点的注释段要有相应帮助信息
各节点的注释段不仅能记录故障的原因和维修方法,还可以记录其他的帮助信息。有时因系统的检测手段不完备,或规则不完全,推导过程要进行人机对话。这时候如果节点的注释段中有相应帮助信息,可以给用户以提示或指导用户进行操作,使推理能顺利进行。
本系统的故障诊断通过在上位计算机上用vc6.0开发的应用程序实现,集成在上位机监控系统中。在运行中给操作人员提示,指导用户进行操作,了解设备状态,判断故障发生原因,并可给出相应的维修建议。用户也可以对故障诊断进行指导和修正。
5 结束语
按以上故障诊断原理构造的故障诊断系统在火电厂输煤plc控制系统中得到了应用。从实际运行来看,故障诊断系统能准确而迅速地判断出故障的原因,方便运行人员维护和检修,大大地提高了控制系统的稳定性和智能化水平。这种设计对类似的工业控制系统提供了一定的参考。
声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。
- 暂无反馈