APP下载

矿用提升机故障诊断

2017-08-27张亚伦

卷宗 2017年17期
关键词:专家系统故障

张亚伦

摘 要:本文将针对在矿山机械中十分重要的矿用提升机建立一个进行故障诊断的专家系统,收集专业资料建立起脚本文件并对脚本文件进行结构化分析,建立起故障诊断的故障征兆集和故障原因集。并以主轴承装置为例详细说明系统的工作过程。

关键词:矿用提升机;故障;专家系统;主轴承装置

矿用提升机被称为“矿井的咽喉”。无论是在自动化生产领域还是在采矿业中军占有重要位置。其工作环境十分特殊,一旦发生故障将造成不可估量的人员损失和经济损失,因此在故障出现前后能快速准确地找出故障原因就显得尤为重要[1]。在长期的生产实践过程中积累了丰富的经验,将故障分为以下几类:主轴承故障,制动系统故障,减速系统故障,钢丝绳、天轮、提升容器故障,主轴、卷筒故障和调绳离合装置故障。具体内容如图1—图6所示:

本文中故障诊断专家系统的功能是根据现场的情况确定是否有故障并推断故障的类型和位置,因此需要对现场状态进行进行评估,根据上一部分所收集到的资料,确定了以下的故障征兆集与故障原因集:

主轴承部分故障征兆集:强金属音;规则音;不规则音;异常磨损,振动大;异常温升;

主轴承部分故障原因集:异常载荷;润滑剂不足或不合适;装配不良;滚道剥离或生锈;游隙过大;异物入侵;滚动体损伤;密封不良;

制动系统故障征兆集:局部轴瓦过热;松闸不灵活;制动力矩不足;轴瓦偏磨;油压不稳;

制動系统故障原因集:轴瓦调整不当,制动力矩分布不均;转动活结不灵活;制动油缸卡缸;油压压力小;制动重量不够,盘形弹簧弹力不够;密封皮碗或涨圈过紧;活塞表面不光滑;油孔或油管堵塞;密封圈漏气;油质不良;油泵工作性能不良;轴瓦与制动中心线不重合,偏差过大;轴瓦间隙不均匀;

调绳离合装置故障征兆集:运动卷筒卡在轴上;离合器发热;离合器不能很好的合上;离合器气缸内有敲击声;

调绳离合装置故障原因集:活动卷筒的轴套润滑不良;尼龙绳套与轴连接在一起;离合器沟槽内有脏物或金属碎屑;内齿圈和外齿轮的轮齿上有毛刺;活塞安装不正确;活塞与缸盖间间隙太小[1]

在系统发生某一个故障后, 经过复杂系统的作用之后会产生多个外在表现,比如声音异常,发热异常,机械破坏等,而同一种故障现象也可能有多种故障原因导致,所以根据故障现象确定故障原因的推理过程肯定是不确定的,异常现象产生时会有多个可能的结果,需要由现场操作的技术人员逐个排查,因此本文中所建立的专家系统是为现场操作的技术人员提供参考信息之用。使用过程为:首先,由现场人员发现异常之后开启专家系统,启动后专家系统通过交互界面向现场人员发出一系列的询问,询问内容是是否有某故障现象,用户向回答yes或者no,所有问题询问结束后向用户输出诊断结果。在系统内部动作过程开始于用户输入信息,每回答一个问题,系统内部推理机就会运行并得出一系列推理,之后将这些知识库中相关信息及这些推论掉入数据库[2],当作事实,用事实和数据库中数据和知识库中事实规则进行匹配,匹配成功得到最终的诊断结果之后输出所有匹配成功的诊断结果。所以本系统的关键模块是推理机,其工作原理为:通过询问程序向用户发出提问,若得到肯定的回答,则作出肯定的断言,得到肯定的事实,最后将这个事实调入数据库和数据库中规则相匹配,若匹配成功,则输出对应的诊断结果并将该肯定结论保留到数据库中,如果根据当前的已知事实无法得到确定的诊断结果,则回溯到询问模块,继续向用户发出提问。如果询问得到的是否定的回答,即没有某个故障现象,则系统作出否定断言,得到相应的否定事实,之后将该事实同样添加到数据库中,将其与知识库中的规则相匹配,判断能否得到相应的结论,若能则输出诊断结果,否则继续返回到询问模块,发出提问。若系统发出所有提问后仍然没有匹配成功,则输出无法确定故障原因。

以主轴承故障为例,详细说明程序的运行过程:

源程序如下

主轴承模块诊断程序:

/*以下是基本事实的定义*/

xpositive(symbol,symbol)

xnegative(symbol,symbol).

/*以下是谓词定义*/

reason_is(symbol).

positive(symbol,symbol)

negative(symbol,symbol)

ask(symbol,symbol,symbol)

remember(symbol,symbol,symbol)

clear_facts()

run().

/*下面是为推理机提供知识*/

reason_is(zhuZCr1):- %当存在强金属音现象时,故障原因为异常载荷

positive(has,zhuZCs1).

reason_is(zhuZCr2):- % 当存在强金属音,异常磨损和异常温升现象时

positive(has,zhuZCs1), % 故障原因为润滑剂不足或不合适

positive(has,zhuZCs4),

positive(has,zhuZCs6).

reason_is(zhuZCr3):-

positive(has,zhuZCs1),

positive(has,zhuZCs4),

positive(has,zhuZCs5).

reason_is(zhuZCr4):-

positive(has,zhuZCs2),

positive(has,zhuZCs5),

positive(has,zhuZCs6).

reason_is(zhuZCr5):-

positive(has,zhuZCs3).

reason_is(zhuZCr6):-

positive(has,zhuZCs3),

positive(has,zhuZCs5),

positive(has,zhuZCs6).

reason_is(zhuZCr7):-

positive(has,zhuZCs3).

reason_is(zhuZCr8):-

positive(has,zhuZCs4).

/*以下是推理过程*/

run():-

reason_is(X),!,

write(“\nthe reason maybe “,X).

nl,nl,

run():-

write(“diagnosis complete”),

write(“thank you for your usage” ),

clear_facts.

positive(X,Y):-

xpositive(X,Y),!.

positive(X,Y):-

not(xnegative(X,Y)),

ask(X,Y,yes).

negative(X,Y):-

xnegative(X,Y),!.

negative(X,Y):-

not(xpositive(X,Y)),

ask(X,Y,no).

ask(X,Y,yes):-

!,

write(“Does it”,X),

write(“the symbol of”,Y),

readln(Reply),nl,

frontchar(Reply,”yes”),

remember(X,Y,yes).

ask(X,Y,no):-

!,

write(“Does it”,X),

write(“the symbol of”,Y),

readln(Reply),nl,

frontchar(Reply,”no”),

remember(X,Y,no).

remember(X,Y,yes):-

assertz(xpositive(X,Y)).

remember(X,Y,no):-

assertz(xnegative(X,Y)).

clear_facts:-

write(“please press the space bar to exit”),

retractall(_,dbasedom),

readchar(_).

goal

run.

S1:操作系統通过关键词goal找到目标程序run;

S2:取出run程序的第一个前提条件reason_is(X)判断是否成立

S3:在知识库中寻找与谓词reason_is(X)相匹配的规则与知识,第一条规则是reason_is(zhuZCr1),谓词相同,匹配成功,开始查验第一条规则的前提条件

S4:前提条件是positive(has,zhuZCs1),推理机中对positive(has,zhuZCs1)进行说明的规则有两个positive(X,Y):-xpositive(X,Y),!.和positive(X,Y):- not(xnegative(X,Y)),ask(X,Y,yes).其中第一个规则中前提条件为xpositive(X,Y),没有与xpositive()相关的谓词声明,故按照第二条规则进行推理

S5:第二条规则中第一个前提条件为非xnegative(X,Y), xnegative(X,Y)与xpositive(X,Y)一样是无法判断的,因此xnegative(X,Y)不成立的条件成立,取出第二条规则的第二个前提条件

S6: 取出第二条规则的第二个前提条件是ask(X,Y,yes).故转到程序段ask(X,Y,yes),判断其是否成立

S7: ask(X,Y,yes)程序段的前两个要求为输出问题的指令,执行后将在屏幕上显示如下信息:

Does it has the symbol of zhuZCs1?

S8:用户根据实际情况回答yes或者no

S9:第三和第四两条指令的功能是读取并保存用户输入的信息

S10:如果输入的是yes,则ask(X,Y,yes)成立,转去执行remember(X,Y,yes)指令,其功能为断言xpositive(X,Y).成立,生成事实xpositive(X,Y),回溯查验规则positive(X,Y):-xpositive(X,Y),!.前提条件成立,则positive(X,Y).成立;

X绑定zhuZCr1成功,转去执行run的第三个条件,输出信息“the reason maybe zhuZCr1”

并换行

最后执行强制失败指令fail,转去验证知识库中推理验证第二条知识,直到知识库中所有知识均被查验完毕,输出diagnosis complete thank you for your usage

S10:如果输入的是no,则ask(X,Y,no)成立转去执行remember(X,Y,no)指令,其功能为断言xnegative(X,Y).成立,生成事实xnegative(X,Y),回溯查验规则positive(X,Y):-xnegative(X,Y),!.前提条件不成立,则终止回溯,开始验证第二条规则;

直到知识库中所有知识均被查验完毕,输出diagnosis complete thank you for your usage

参考文献

[1]郭文斌. HSVE2.8型矿用提升机故障诊断专家系统设计. 江西煤炭科技. 2016.11.15

[2]武波,马玉祥. 专家系统. 北京理工大学出版社 2003.09

猜你喜欢

专家系统故障
TCDS地面专家系统的应用和存在问题
数控机床液压系统故障诊断专家系统的研究
奔驰R320车ABS、ESP故障灯异常点亮
江淮车故障3例