一种故障诊断系统的逻辑网络拓扑排序和存储方法

文档序号:6305352阅读:279来源:国知局
一种故障诊断系统的逻辑网络拓扑排序和存储方法
【专利摘要】本发明公开了一种故障诊断系统的逻辑网络拓扑排序和存储方法,包括以下步骤:1)符合IEC61131-3标准、以功能块原理图fbd表示的复杂故障诊断逻辑是包括有向树形结构和带多重反馈环的有向有环结构,对表示逻辑关系的复杂拓扑结构进行拓扑排序;2)在数据库中分别建立两类表:功能块信息表和故障树逻辑关系表,所述功能块信息表描述每个功能块的详细属性和执行信息,所述故障树逻辑关系表描述各个功能块之间的连接关系以及它的排序级数,表和表之间通过关键字相关联;3)根据数据库中功能块的关系表的内容,直接生成符合IEC61131-3标准的fbd图。本发明可以降低自动控制领域故障诊断系统成本,实现系统灵活配置和可靠运行。
【专利说明】一种故障诊断系统的逻辑网络拓扑排序和存储方法
【技术领域】
[0001]本发明涉及一种故障诊断系统的逻辑网络拓扑排序和数据存储方法,属于自动控制领域。
【背景技术】
[0002]我国的各种自动化行业处于高速发展期。按照我国走新型工业化道路的要求,结合我国工业发展需求,自动控制的过程控制系统,在基础控制方面,随着电子技术、计算机技术、电力电子技术和检测技术的不断发展而发展和普及。
[0003]70年代PLC和DCS系统问世以来,成为了自动化系统过程控制的主流产品,而近年来,以计算机为基础的分布式控制系统及现场总线正在崭露头角,进军工业自动化的领域,对于多子系统和多点监测的复杂逻辑,以及需要按照具体应用对IEC61131-3进行功能块扩展的应用场合,计算机分布控制系统比传统PLC有着明显的灵活性和成本优势。
[0004]在计算机实现的开发系统中,底层可以集成和添加各种子系统模块,能够实现包括各设备模块和系统的信息集成,整个自动化系统信息和资源共享等功能。把故障诊断系统作为自动化过程综合监控中的组成部分,集故障树诊断,监控,预案处理为一体,提高系统的可靠性保障等级,有助于指导自动化系统的设计、维护、运行,具有重要的应用价值。而且故障诊断系统处在不断完善的发展阶段,应用范围在不断扩大中。
[0005]但是计算机中实现软PLC也存在一些问题需要解决,比如复杂逻辑在控制过程中的计算和解析。

【发明内容】

[0006]本发明所要解决的技术问题是:使自动化控制系统的故障诊断系统能够处理复杂的控制逻辑,排序合理,配置灵活,满足工程应用中的多种需求。
[0007]工程应用中,自动化控制系统的故障诊断系统的功能块比较复杂,往往是多输入多输出的模块,fbd图的逻辑关系也很复杂,但是一定会有连接规则如下:
I)所有的输入都只能连接来自另一个上一级模块的输出;2) —个功能块的一个输出端口可以连接多个功能块的输入。结合输入端口只对应一个输出端口的特点,为简化排序算法和存储,从最后的节点往前逆向进行拓扑排序。
[0008]为解决上述技术问题,本发明提供一种故障诊断系统的逻辑网络拓扑排序和存储方法,其特征在于,包括以下步骤:
一种故障诊断系统的逻辑网络拓扑排序和存储方法,其特征在于,包括以下步骤:
1)符合IEC61131-3标准、以功能块原理图fbd表示的复杂故障诊断逻辑是包括有向树形结构和带多重反馈环的有向有环结构,对表示逻辑关系的复杂拓扑结构进行拓扑排序;
2)在数据库中分别建立两类表:功能块信息表和故障树逻辑关系表,所述功能块信息表描述每个功能块的详细属性和执行信息,所述故障树逻辑关系表描述各个功能块之间的连接关系以及功能块的排序级数,功能块信息表和故障树逻辑关系表之间通过关键字相关联;
3)根据数据库中功能块信息表和故障树逻辑关系表的内容,直接生成符合IEC61131-3 标准的 fbd 图。
[0009]前述的故障诊断系统逻辑关系的拓扑排序和存储方法,其特征在于,在所述步骤
1)中,对复杂逻辑关系图的拓扑排序,采用逆向遍历的方法,包括以下步骤:
11)找出所有功能块中所有没有后驱(即无输出端口)的顶点,排序的级数L记为I;
12)对步骤11)中所有顶点功能块逆序前推,逐级找到前顶点,并用一个路径链表记录当前路径已经找过的顶点指针;排序级数L为前一级的级数加1,如果该功能块已经有级数U,则取L和Ltl中大者作为它的级数;如果该功能块有多个输入端口,添加新的路径链表记录其它端口路径,并顺序向前遍历该功能块的各个输入的分支;
13)如果遍历到该功能块没有前驱,即无输入端口,结束遍历本分支;如果遍历过程中发现本路径的链表中已经有该功能块的顶点存在,则当前路径中检测到环路,结束遍历本分支;
14)全部遍历完毕时级数反转,用排序级数的最大值减去所有功能块的级数,再加1,作为该功能块的级数,即最前级功能块级数最低。
[0010]前述的故障诊断系统逻辑关系的拓扑排序和存储方法,其特征在于:在所述步骤
2)中,所述数据表包括:
功能块信息表:详细记录各个功能块的运行信息和属性;
故障树逻辑关系表:根据拓扑排序结果,记录每个功能块的每个输入端口连接的前级模块ID,以及该功能块的排序的级数,从后向前推得到整个故障树的逻辑网络关系;故障树逻辑关系表通过功能块ID的关键字链接到功能块信息表。
[0011]前述的故障诊断系统逻辑关系的拓扑排序和存储方法,其特征在于:在进行逻辑网络拓扑排序之前进行连接检查:连接规则为:只允许输入和输出端口互连;按照数据流的类型区分端口连接,数字量点和模拟量点的端口不能直接互连;所有的功能块的每个输入端口都有且只有一个来自其它模块的输出端口连接相连接。
[0012]一种故障诊断系统的故障诊断方法,其特征在于:故障树的原理图编辑工具在客户端运行,故障诊断程序在服务器端的后台运行,原理图编辑工具把fbd原理图存储成符合IEC61131-3标准的xml文件,并进行拓扑排序存储在数据库中,后台读取数据库中的故障树的功能块排序,并进行计算和监控,具体包括以下步骤:
1)在数据库中分别按照设备分组和各设备信息建立设备组信息表、设备信息表,按照各个设备的信号点信息建立设备监控信号信息表和设备控制信号表,设备组和设备,以及设备和设备信息表之间通过关键字相关联;
2)在故障树原理图编辑工具中实现具体的逻辑关系,包括故障监控逻辑和失败的预案处理逻辑,并把监控信号信息表的相应信号点引入,作为故障监控逻辑的输入信号;把控制信号表的点引入,作为失败处理逻辑的控制输出点;编辑完成后,把相应故障树保存,即保存一份xml文件,在对逻辑关系拓扑排序后,保存入数据库;
3)故障诊断系统的诊断程序在后台载入数据库中故障树逻辑关系表以及功能块信息表的所有内容,并对不同的故障树按照指定扫描周期扫描运行,每次扫描过程都按照故障树逻辑关系表中的模块的级别从第一级运行到最后一级,如果扫描计算过程中发现期间有监控信号触发,逻辑计算有故障发生,根据失败处理逻辑,控制相应点动作,进行调整;
4)故障诊断系统的实时监控软件向用户实时显示故障树的各个点的状态,并在失败时给出推理结果。
[0013]本发明所达到的有益效果:为了解决计算机系统实现软PLC的计算和控制问题,本发明提供了一种可以用于基于计算机的故障诊断系统的拓扑排序和存储方法,一种工程中复杂逻辑关系对应的有向有环图的排序和存储方法,能把故障诊断中,符合IEC61131-3的复杂逻辑关系转换成监控软件可以简单处理的格式,存入数据库,方便各种复杂的逻辑的配置需求,排序合理,配置灵活,提高自动控制效率,减少人工干预。
【专利附图】

【附图说明】
[0014]图1为本发明的拓扑排序流程图;
图2为本发明的故障诊断系统的故障诊断流程图。
【具体实施方式】
[0015]下面是本发明的一个实际案例的实施方式,本发明的目的和特点也可以从案例的说明中看出。应当理解此处描述的实例仅仅用于说明和解释本发明,并不是限定本发明。
[0016]提供工程技术人员一个fbd功能块图编辑界面,编辑故障诊断系统的逻辑关系图。在保存时,把fbd图的各功能块及逻辑网络关系载入,进行拓扑排序,并把功能块设置以及逻辑关系存入数据库。
[0017]在进行逻辑网络拓扑排序之前要进行功能块的连接检查:制定连接规则如下:只能允许输入和输出端口互连;按照数据流的类型区分端口连接,如数字量点和模拟量点的输入输出端口不能直接互连;所有的功能块,如果有输入端口,每个端口都有且只有一个输入连接到其它模块的输出端口,但一个模块的输出端口可以连接任意个模块的输入。
[0018]排序的实现细节如下:对于符合IEC61131-3标准,以fbd图表示的复杂故障诊断逻辑,是包括有向树形结构和带多重反馈环的有向有环结构,根据工程实际应用需求,对这种表示逻辑关系的复杂拓扑结构进行拓扑排序;
对复杂逻辑关系图的拓扑排序,采用逆向遍历的方法,包括以下步骤:拓扑排序算法流程图如图1所示,其中CalBlockLevelO为一个递归函数。
[0019]I)找出所有功能块中所有没有后驱的顶点,即最后一级的顶点,排序的级数L记为I ;如果找不到这样的顶点,说明所有功能块形成了完全闭合环,提示用户修改原理图,并退出排序;
2)对步骤I)中所有顶点功能块,逆序前推,逐级找到前顶点,并用一个路径链表记录当前路径已经找过的顶点指针;排序级数L为前一级的级数加1,如果该功能块已经有级数U,说明该功能块连接到其它分支,则取L和Ltl中大者作为它的级数;如果该功能块有多个前驱,添加新的路径链表记录新路径,并顺序向前遍历该功能块的各个分支;
3)如果遍历到没有前驱的功能块,结束遍历本分支;如果遍历过程中发现路径链表中已经有该顶点存在,则当前路径中检测到环路,结束遍历本分支;
4)所有路径遍历完毕后,用排序级数的最大值减去所有功能块的级数,再加1,作为该功能块的级数,实现级数反转,即最前级功能块级数最低。[0020]在数据库中分别建立两类表:功能块信息表以及故障树逻辑关系表,前者描述功能块的详细属性和执行信息,后者描述各个功能块之间的连接关系,以及它的排序级数,表和表之间通过关键字相关联;根据数据库中功能块的关系表的内容,可以直接生成符合IEC61131-3 标准的 fbd 图。
[0021]数据表详细说明如下:
1)功能块信息表详细记录了各个功能块的运行信息;
2)故障树逻辑关系表的记录方法根据拓扑排序,记录每个功能块的每个输入端口连接的前级模块ID,以及排序的级数,这样从后往前倒推,就可以得到整个故障树的逻辑网络关系O
[0022]3)故障树逻辑关系表通过功能块ID的关键字链接到功能块信息表。
[0023]后台的监控软件读出数据库的内容,只需要根据各个功能块的排序级数,并不需要知道它们之间的具体逻辑关系,就可以用周期扫描的方式,按照级数运行功能块,进行故障诊断和监控。
[0024]基于fbd的C/S结构的自动化故障诊断系统的故障诊断过程如图2所示,系统按以下方法运行,故障树的原理图编辑工具在客户端运行,故障诊断程序在服务器端的后台运行,编辑工具需要把fbd原理图存储成符合IEC61131-3标准的xml文件,并进行拓扑排序存储在数据库中,供后台读取数据库中的故障树的功能块排序,进行计算和监控,包括以下内容:
1)根据自动控制的需求在数据库中分别建立设备组信息表、设备信息表和设备监控信号信息表,以及设备控制信号表,表和表之间通过关键字相关联;
2)在故障树原理图编辑工具中实现具体的逻辑关系,包括故障监控逻辑和失败的预案处理逻辑,并把监控信号信息表的相应信号点引入,作为故障监控逻辑的输入信号;把控制信号表的点引入,作为失败处理逻辑的控制输出点。编辑完成后,把相应故障树保存,即保存了一份xml文件,在对逻辑关系拓扑排序后,保存入数据库。
[0025]3)故障诊断系统的诊断程序在后台载入数据库中所有故障树的关系表以及功能块信息表,并对不同的故障树,按照指定扫描周期扫描运行,每次扫描都按照它的模块的级别从第一级运行到最后一级。如果计算中发现期间有监控信号触发,逻辑计算有故障发生,根据失败处理逻辑,控制相应点动作,进行调整。
[0026]4)故障诊断系统的实时监控软件向用户实时显示故障树的各个点的状态,并在失败时给出推理结果。
[0027]系统对自动化过程控制的运行和故障状态进行监视,采集信息,判断故障,迅速反应,保障资源得到最大优化,使冶金自动化过程可控,并顺利进行。与现有PLC技术相比,本发明的有益效果是在同样的可靠度下,处理复杂逻辑更加灵活,成本更低。
【权利要求】
1.一种故障诊断系统的逻辑网络拓扑排序和存储方法,其特征在于,包括以下步骤:1)符合IEC61131-3标准、以功能块原理图fbd表示的复杂故障诊断逻辑为包括有向树形结构和带多重反馈环的有向有环结构,对表示逻辑关系的复杂拓扑结构进行拓扑排序; 2)在数据库中分别建立两类表:功能块信息表和故障树逻辑关系表,所述功能块信息表描述每个功能块的详细属性和执行信息,所述故障树逻辑关系表描述各个功能块之间的连接关系以及功能块的排序级数,功能块信息表和故障树逻辑关系表之间通过关键字相关联; 3)根据数据库中功能块信息表和故障树逻辑关系表的内容,直接生成符合IEC61131-3 标准的 fbd 图。
2.根据权利要求1所述的故障诊断系统逻辑关系的拓扑排序和存储方法,其特征在于,在所述步骤I)中,对复杂逻辑关系图的拓扑排序,采用逆向遍历的方法,包括以下步骤: 11)找出所有功能块中所有没有后驱的顶点,排序的级数L记为I; 12)对步骤11)中所有顶点功能块逆序前推,逐级找到前顶点,并用一个路径链表记录当前路径已经找过的顶点指针;排序级数L为前一级的级数加1,如果该功能块已经有级数U,则取L和Ltl中大者作为它的级数;如果该功能块有多个输入端口,添加新的路径链表记录其它端口路径,并顺序向前遍历该功能块的各个输入的分支; 13)如果遍历到该功能块没有前驱,即无输入端口,结束遍历本分支;如果遍历过程中发现本路径的链表中已 经有该功能块的顶点存在,则当前路径中检测到环路,结束遍历本分支; 14)全部遍历完毕时级数反转,用排序级数的最大值减去所有功能块的级数,再加1,作为该功能块的级数,即最前级功能块级数最低。
3.根据权利要求1所述的故障诊断系统逻辑关系的拓扑排序和存储方法,其特征在于:在所述步骤2)中,所述数据表包括: 功能块信息表:详细记录各个功能块的运行信息和属性; 故障树逻辑关系表:根据拓扑排序结果,记录每个功能块的每个输入端口连接的前级模块ID,以及该功能块的排序的级数,从后向前推得到整个故障树的逻辑网络关系;故障树逻辑关系表通过功能块ID的关键字链接到功能块信息表。
4.根据权利要求1所述的故障诊断系统逻辑关系的拓扑排序和存储方法,其特征在于:在进行逻辑网络拓扑排序之前进行连接检查:连接规则为:只允许输入和输出端口互连;按照数据流的类型区分端口连接,数字量点和模拟量点的端口不能直接互连;所有的功能块的每个输入端口都有且只有一个来自其它模块的输出端口连接相连接。
【文档编号】G05B23/02GK104020756SQ201410220215
【公开日】2014年9月3日 申请日期:2014年5月22日 优先权日:2014年5月22日
【发明者】陈莉莉, 李冰, 张振山, 许涛, 胡波, 徐漫江 申请人:国电南瑞科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1