CN103616885B - 基于Petri网的PLC在线故障诊断方法 - Google Patents

基于Petri网的PLC在线故障诊断方法 Download PDF

Info

Publication number
CN103616885B
CN103616885B CN201310589522.5A CN201310589522A CN103616885B CN 103616885 B CN103616885 B CN 103616885B CN 201310589522 A CN201310589522 A CN 201310589522A CN 103616885 B CN103616885 B CN 103616885B
Authority
CN
China
Prior art keywords
storehouse
plc
petri net
invariants
institute
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310589522.5A
Other languages
English (en)
Other versions
CN103616885A (zh
Inventor
罗继亮
叶丹丹
邵辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huaqiao University
Original Assignee
Huaqiao University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huaqiao University filed Critical Huaqiao University
Priority to CN201310589522.5A priority Critical patent/CN103616885B/zh
Publication of CN103616885A publication Critical patent/CN103616885A/zh
Application granted granted Critical
Publication of CN103616885B publication Critical patent/CN103616885B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Testing And Monitoring For Control Systems (AREA)
  • Testing Of Devices, Machine Parts, Or Other Structures Thereof (AREA)

Abstract

本发明一种基于Petri网的PLC在线故障诊断方法,针对PLC传感器和执行结构中出现的故障问题,首先,建立PLC对象的规范普通Petri网模型;其次,提出该普通Petri网模型的严格最小库所不变量和特征库所不变量集合,从而借助特征库所不变量集合描述普通Petri网模型的结构信息;再次,基于特征库所不变量集合,提出任意当前标识的故障函数,利用故障诊断函数完成故障识别和定位。由于本发明采用了系统结构信息,无需遍历系统状态空间,降低了计算的复杂性,能够满足实时性的要求,利于工程应用。

Description

基于Petri网的PLC在线故障诊断方法
技术领域
本发明涉及PLC在线故障诊断领域,是一种基于Petri网特征结构的PLC在线故障诊断方法。
背景技术
可编程逻辑控制器(PLC)是工业控制系统中典型的控制器硬件,广泛地应用于钢铁、石油、化工、电力和交通系统的监控。而PLC系统中的故障问题更是面临着高复杂性难题:在现场总线技术的支持下,工业控制系统规模和结构复杂性增长迅速,比如地铁交通控制系统和核电控制系统等等,由于系统的状态个数随着传感器和执行机构的数目呈指数级增长,仅由5辆自动导航车辆组成的物流系统的状态就达数百万之巨,因此PLC系统中的故障诊断问题面临与生俱来的高计算复杂性。
发明内容
本发明的目的在于提出一种采用系统结构信息,无需遍历系统状态空间,且能够满足实时性要求的有效的PLC在线故障诊断方法。
一种基于Petri网的PLC在线故障诊断方法,包括如下步骤:
步骤1、输入系统运行的PLC程序;
步骤2、将给定的PLC程序转化为相应的普通Petri网模型N,给出初始标识m0和任意标识m;
步骤3、求出普通Petri网模型N的关联矩阵D,该关联矩阵D表征着网结构中各结点之间的关系;
步骤4、利用方程y·D=0,其中向量y表示库所不变量,计算一个特征库所不变量集合Y={y1,y2,…,yk},k=1,2,…,其中y1到yk为y·D=0的一个基础解系;
步骤5、判断yi·m=yi·m0等式是否成立,i=1,2,…,k;如果所有等式均成立,则没有故障发生,退出算法;否则,执行步骤6;
步骤6、计算故障矩阵T(m),其中:
T ( m ) i , j = 1 , y i · m ≠ y i · m 0 ^ y i ( p j ) ≠ 0 0 , y i ( p j ) = 0 - 1 , y i · m = y i · m 0 ^ y i ( p j ) ≠ 0 , 1 ≤ i ≤ k , 1 ≤ j ≤ n ;
从严格最小库所不变量yi中可以获取非零列,即j列所对应的库所pj所携带的系统信息,若在任意标识m下,库所间关系不满足严格最小库所不变量yi,则在该严格最小库所不变量yi中携带系统信息的库所pj可能存在故障,记其T(m)i,j为1;同理,若库所间关系满足严格最小库所不变量yi,则该严格最小库所不变量yi中携带系统信息的库所pj无故障,记其T(m)i,j为-1;而yi中零列,即不体现系统信息的库所pj的故障情况未知,记其T(m)i,j为0;
步骤7、计算故障函数λm,其中i=1,2,…,k,j=1,2,…n;
步骤8、比较这n个库所的故障函数λm(pj),选出最大的λm(pj)max,则故障出现在第j个库所pj的概率最大,第j个库所pj对应PLC程序中的输入,判断故障的类型,是执行机构故障还是传感器故障,输出故障概率最大的传感器或执行机构,退出算法。
针对PLC传感器和执行结构中出现的故障问题,本发明提出了基于普通Petri网结构特征的故障诊断方法,首先,建立PLC对象的规范普通Petri网模型;其次,提出该普通Petri网模型的严格最小库所不变量和特征库所不变量集合,从而借助特征库所不变量集合描述普通Petri网模型的结构信息;再次,基于特征库所不变量集合,提出任意当前标识的故障函数,利用故障诊断函数完成故障识别和定位。由于本发明采用了系统结构信息,无需遍历系统状态空间,降低了计算的复杂性,能够满足实时性的要求,利于工程应用。
附图说明
图1为本发明的流程示意图;
图2为实施例的俯视示意图;
图3为实施例的PLC梯形图;
图4为实施例程序中的输入及输出所对应的物理含义;
图5为实施例运行的Petri网模型;
图6为实施例Petri网中各结点对应的物理含义。
以下结合附图和具体实施例对本发明作进一步详述。
具体实施方式
如图1所示,一种基于Petri网的PLC在线故障诊断方法,包括如下步骤:
步骤1、输入系统运行的PLC程序;
步骤2、将给定的PLC程序转化为相应的普通Petri网模型N,给出初始标识m0和任意标识m;
步骤3、求出普通Petri网模型N的关联矩阵D,该关联矩阵D表征着网结构中各结点之间的关系;
步骤4、利用方程y·D=0,其中向量y表示库所不变量,计算一个特征库所不变量集合Y={y1,y2,…,yk},k=1,2,…,其中y1到yk为y·D=0的一个基础解系;
步骤5、判断yi·m=yi·m0等式是否成立,i=1,2,…,k;如果所有等式均成立,则没有故障发生,退出算法;否则,执行步骤6;
步骤6、计算故障矩阵T(m),其中:
T ( m ) i , j = 1 , y i · m ≠ y i · m 0 ^ y i ( p j ) ≠ 0 0 , y i ( p j ) = 0 - 1 , y i · m = y i · m 0 ^ y i ( p j ) ≠ 0 , 1 ≤ i ≤ k , 1 ≤ j ≤ n ;
从严格最小库所不变量yi中可以获取非零列,即j列所对应的库所pj所携带的系统信息,若在任意标识m下,库所间关系不满足严格最小库所不变量yi,则在该严格最小库所不变量yi中携带系统信息的库所pj可能存在故障,记其T(m)i,j为1;同理,若库所间关系满足严格最小库所不变量yi,则该严格最小库所不变量yi中携带系统信息的库所pj无故障,记其T(m)i,j为-1;而yi中零列,即不体现系统信息的库所pj的故障情况未知,记其T(m)i,j为0;
步骤7、计算故障函数λm,其中i=1,2,…,k,j=1,2,…n;
步骤8、比较这n个库所的故障函数λm(pj),选出最大的λm(pj)max,则故障出现在第j个库所pj的概率最大,第j个库所pj对应PLC程序中的输入,判断故障的类型,是执行机构故障还是传感器故障,输出故障概率最大的传感器或执行机构,退出算法。
实施例:
如图2所示为一个3工位钻床的工作台的俯视示意图,当按下启动按钮后,3个工位同时工作,其中一个工位,系统驱动送料液压缸将工件送到圆形工作台上,然后送料液压机构退回。在同一时刻,在另1个工位上系统将工件加紧并钻孔,然后钻头向上返回初始位置,并松开工件。在最后1个工件则自动用深度计测量加工的孔是否合格。如果合格则测量头自动上升,并自动卸下加工好的工件,然后卸料液压机构返回。如果不合格,测量头返回后由人工取走次品,然后用按钮发出人工卸料完成的重启信号。当3个工位的操作都完成后,其顺时针旋转120°,以便为下一次送料、装夹及加工、测量的循环做好准备。最后系统返回初始位置。其PLC程序如图3所示。图4为实施例程序中的输入及输出所对应的物理含义。如图5所示,为将图3的PLC程序的梯形图转化相应的Petri网。Petri网中各结点对应的物理含义如图6所示。
基于上面给定的Petri网模型,算出3工位钻床工作台的关联矩阵D,如下:
D = Post - Pre - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 - 1 - 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 - 1 0 0 0 0 0 0 0 0 1 0 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 - 1 0 0 0 0 0 0 0 0 0 1 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 - 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 - 1 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 - 1 0
求解严格最小库所不变量y,得到如下方程组:
- y 1 + y 2 + y 3 + y 4 = 0 - y 2 + y 5 = 0 - y 3 + y 6 = 0 - y 4 + y 7 = 0 - y 4 + y 8 = 0 - y 5 + y 9 = 0 - y 6 + y 10 = 0 - y 7 + y 11 = 0 - y 8 + y 12 = 0 - y 10 + y 13 = 0 - y 11 + y 14 = 0 - y 13 + y 15 = 0 - y 14 + y 16 = 0 - y 9 - y 15 - y 16 + y 17 = 0 - y 12 + y 16 = 0 y 1 - y 17 = 0 - - - ( 4 )
分别选取 y 2 y 3 y 4 T 1 0 0 T 0 1 0 T 0 0 1 T , 带入到式(4)中得到一组基础解系:
ξ 1 = 1 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 T ξ 2 = 1 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 1 T ξ 3 = 1 0 0 1 0 0 1 1 0 0 1 1 0 1 0 1 1 T
令y11,y22,y33,得到一个特征库所不变量集:
Y={y1,y2,y3}
其中三个严格最小库所不变量为:
y 1 y 2 y 3 = 1 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 1 0 1 1
给定一个当前标识:
m′=[00000000100000111]T,带入步骤4中得到:
y 1 · m ' ≠ y 1 · m 0 y 2 · m ' ≠ y 2 · m 0 y 3 · m ' ≠ y 3 · m 0
因此当前标识m′对应的故障矩阵为:
T ( m ' ) = 1 1 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 0 0 1 1 0 0 1 1 0 1 0 1 1
则相应的故障函数为则计算出如下结果:
λ(p1)=3,λ(p2)=1λ(p3)=1,λ(p4)=1,λ(p5)=1,λ(p6)=1,λ(p7)=1,λ(p8)=λ(p9)=λ(p10)=λ(p11)=λ(p12)=λ(p13)=λ(p14)=λ(p15)=λ(p16)=1,λ(p17)=3。
比较一下大小,发现λ(p1)和λ(p17)取值最大,则故障发生在p1、p17这两个库所处的概率最大。
现在根据Petri网的演化规则判断,库所p17与库所p9、p15和p16不可能同时出现标识,变迁t14未激发,库所p17中未能够出现标识,这与给出的标识m′矛盾,则库所p17处出现故障,工作台此时不可能处于旋转状态。此类故障为PLC程序中执行机构出现故障。

Claims (1)

1.一种基于Petri网的PLC在线故障诊断方法,其特征在于包括如下步骤:
步骤1、输入系统运行的PLC程序;
步骤2、将给定的PLC程序转化为相应的普通Petri网模型N,给出初始标识m0和任意标识m;
步骤3、求出普通Petri网模型N的关联矩阵D,该关联矩阵D表征着网结构中各结点之间的关系;
步骤4、利用方程y·D=0,其中向量y表示库所不变量,计算一个特征库所不变量集合Y={y1,y2,…,yk},k=1,2,…,其中y1到yk为y·D=0的一个基础解系;
步骤5、判断yi·m=yi·m0等式是否成立,i=1,2,…,k;如果所有等式均成立,则没有故障发生,退出算法;否则,执行步骤6;
步骤6、计算故障矩阵T(m),其中:
从严格最小库所不变量yi中获取非零列,即j列所对应的库所pj所携带的系统信息,若在任意标识m下,库所间关系不满足严格最小库所不变量yi,则在该严格最小库所不变量yi中携带系统信息的库所pj可能存在故障,记其T(m)i,j为1;同理,若库所间关系满足严格最小库所不变量yi,则该严格最小库所不变量yi中携带系统信息的库所pj无故障,记其T(m)i,j为-1;而yi中零列,即表示系统信息的库所pj的故障情况未知,记其T(m)i,j为0;
步骤7、计算故障函数λm,其中i=1,2,…,k,j=1,2,…n;
步骤8、比较这n个库所的故障函数λm(pj),选出最大的λm(pj)max,则故障出现在第j个库所pj的概率最大,第j个库所pj对应PLC程序中的输入,判断故障的类型,是执行机构故障还是传感器故障,输出故障概率最大的传感器或执行机构,退出算法。
CN201310589522.5A 2013-11-20 2013-11-20 基于Petri网的PLC在线故障诊断方法 Active CN103616885B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310589522.5A CN103616885B (zh) 2013-11-20 2013-11-20 基于Petri网的PLC在线故障诊断方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310589522.5A CN103616885B (zh) 2013-11-20 2013-11-20 基于Petri网的PLC在线故障诊断方法

Publications (2)

Publication Number Publication Date
CN103616885A CN103616885A (zh) 2014-03-05
CN103616885B true CN103616885B (zh) 2016-05-18

Family

ID=50167588

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310589522.5A Active CN103616885B (zh) 2013-11-20 2013-11-20 基于Petri网的PLC在线故障诊断方法

Country Status (1)

Country Link
CN (1) CN103616885B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105448369B (zh) * 2015-11-26 2018-01-26 福建宁德核电有限公司 一种核电站设备故障诊断方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102146845A (zh) * 2011-01-28 2011-08-10 中国人民解放军海军工程大学 Petri网图形化方法及在船用燃气轮机故障诊断上的应用
CN102411330A (zh) * 2011-08-25 2012-04-11 华侨大学 一种将可编程逻辑控制器程序转换为普通Petri网的方法
CN103019233A (zh) * 2012-12-21 2013-04-03 华侨大学 一种检测plc梯形图程序中是否存在竞态的方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102007051683A1 (de) * 2007-10-26 2009-06-18 Schneider Electric Gmbh Verfahren zur Orchestrierung von Services eines serviceorientierten Automationssystems sowie Orchestrierungs-Maschine
DE102009026139A1 (de) * 2009-07-08 2011-02-03 Schneider Electric Automation Gmbh Verfahren und Tools zur Bestimmung und Auswahl des Modus Operandi von Petri-Netz orchestrieren Abläufen für Service-orientierte Automatisierungsgeräte

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102146845A (zh) * 2011-01-28 2011-08-10 中国人民解放军海军工程大学 Petri网图形化方法及在船用燃气轮机故障诊断上的应用
CN102411330A (zh) * 2011-08-25 2012-04-11 华侨大学 一种将可编程逻辑控制器程序转换为普通Petri网的方法
CN103019233A (zh) * 2012-12-21 2013-04-03 华侨大学 一种检测plc梯形图程序中是否存在竞态的方法

Also Published As

Publication number Publication date
CN103616885A (zh) 2014-03-05

Similar Documents

Publication Publication Date Title
CN101446831B (zh) 一种分散的过程监测方法
CN104268658A (zh) 一种桥梁结构安全监测数据的预测方法
CN103116306B (zh) 一种自动的步进式有序时段划分方法
TWI501060B (zh) 稼動率計算方法及其系統、嵌入式裝置和電腦可讀取儲存媒體
TW201224786A (en) Method of efficacy anticipation and failure examination for an apparatus
CN104573315B (zh) 一种基于状态检修的输变电设备故障率的计算方法
CN106199174A (zh) 基于迁移学习的挤压机能耗异常预测方法
CN108544303A (zh) 一种数控机床主轴故障诊断方法及系统
CN105243393A (zh) 一种基于特征的复杂机电系统故障预报方法
CN102566554B (zh) 一种基于单类支持向量机的半导体过程监测方法
CN104182623A (zh) 一种基于当量变化率计算的热工过程数据检测方法
DE102011054006A1 (de) Überwachung und Diagnostizierung des Betriebs eines Generators
CN103616885B (zh) 基于Petri网的PLC在线故障诊断方法
CN107272412A (zh) 一种暂冲式风洞流场控制的辩识方法
CN111079857B (zh) 一种基于过完备宽度学习模型的污水处理过程故障监测方法
CN102419553A (zh) 冷连轧平整机液压伺服系统数字模型与故障预示方法
Martin et al. Simulation Based Assessment of Lean and Industry 4.0 Measures in Changeable Production Systems
CN105699043B (zh) 一种提高风洞传感器测量稳定性和精准度的方法
CN104535033B (zh) 准确测量不同流程产品阻焊厚度的方法和系统
CN107931397B (zh) 一种冲压机的在线监测装置及监测方法
CN106874589A (zh) 一种基于数据驱动的报警根源寻找方法
Manikanta Evaluation of modified PLS regression method to fill the missing values in training dataset
Lin et al. Neural-network based fault diagnosis of hydraulic forging presses in China
CN105676781A (zh) 基于Petri网的数控机床控制系统故障诊断方法
CN203484981U (zh) 翅片组穿管过程中使用的在线检测装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant