基于西门子808d数控系统的机床故障诊断专家系统研究
2019-05-13王家海刘旭超彭劼扬
王家海 刘旭超 彭劼扬
摘要:数控机床在制造领域有着举足轻重的地位,由于故障复杂多样,能快速定位故障原因的经验丰富的工程师比较稀缺。本文以数控机床故障诊断专家知识为研究对象,提出合适的知识表达结构,使之结构化以便于提高检索效率及后续的相似性推理;在对故障现象检索的基础上,应用simrank算法根据故障现象与故障原因之间多对多的关系,推理得到不同故障现象之间的相似度,据此给出知识库中的相应解决方案。最终实现了基于西门子808d数控系统的机床故障诊断专家系统的开发。
关键词:数控机床;故障诊断;专家知识;Simrank算法
中图分类号:TH165 文献标识码:A 文章编号:1007-9416(2019)01-0001-03
0 引言
数控机床是机加工领域的重要生产设备,发生故障会严重打乱生产节奏。有研究表明,在排除故障时,要找出故障原因所花费的时间远大于维修过程,而且需要经验丰富的工程师才可以。为了实现对数控机床的最大化利用,通过信息技术使普通维修人员可以借鉴专家经验,实现对故障原因的快速定位。
近年来,国内外对于数控机床故障诊断投入了大量的研究,主要方法有专家系统法,故障树分析法和模糊集合论等方法。专家系统是根据专家经验知识以及分析问题的思维方式,建立故障诊断知识库和推理机来协助故障诊断。故障树分析法是将系统故障产生原因由总体至局部按树状逐渐细分的分析方法[1]。黄江涛等[2]根据故障树分析法的理论基础,设计了递归算法、基于BDD图求解MCS算法及模块化分解算法,并以数控机床急停实例分析了算法流程。模糊推理则以模糊集合论为基础,解决了故障传播和诊断过程的不确定性,但在以模糊逻辑为基础的故障诊断中建立隶属函数和模糊规则较困难,从而降低了结果的可信度[3]。
基于以上调研,本文以西门子808D数控系统的诊断知识为研究对象,本文提出了基于本体的七层知识体系结构作为故障诊断专家知识的表示方法,并用simrank算法作为专家系统案例检索算法,最终开发了相应的故障诊断专家系统。
1 数控机床故障诊断知识结构分析与构建
为了统计数控机床的故障[4],本文收集了应用西门子808D数控系统的机床产生的3000多例故障信息,并对此进行整理分类。从整理结果看,数控机床常见故障有系统故障、输入输出设备故障、伺服系统故障等。以数控系统故障为例,部分如表1所示。
通过对案例的分析,项目以七层知识体系结构构建了一个故障诊断知识体系:系统、子系统、故障部位、故障描述、故障原因、故障现象、解决方案,如图1所示。优势在于网络化、结构化的案例数据可以增强故障诊断的解释性能,便于推理故障的发生原因。
2 故障案例检索算法研究
本文采用SimRank 算法对知识库诊断案例中的故障现象和故障原因之间的多对多的关系进行自动分析,以推理估算得到某一故障现象的相关故障现象及相应的相似度,来实现已知故障现象的扩展后再匹配出数据库中的相关案例,提高结果的全面性。SimRank算法[5]是基于图论的基本知识来计算任意多个对象之间的相似度的一种算法,把对象与对象之间的关系用一个二部图来表示,如图2所示。对于二部图结构的节点集合来说,分为故障现象集和故障原因集两个子集,且子集内部没有连线。对于两子集内的节点来说,节点之间的相似度计算公式分别如公式①和公式②所示。
(1)
(2)
其中,S(A,B)表示节点A和节点B间的相似度,从公式①可以看出S(A,B)取决于所有与A,B相连接的对象之间的相似度。
计算故障现象之间的相似度的具体流程如下:①整理所有的故障现象和原因,构建故障现象和故障原因的关系图;②初始条件:节点与自身的相似度为1,与同一子集内的其余的相似度为0;③通过公式(1)由故障原因之间的相似度值来计算故障现象之间的相似度值;④ 通过公式(2)由故障现象之间的相似度值来计算故障原因之间的相似度值;⑤重复步骤③和④,迭代k次之后可以得到一个包含故障现象集中所有节点之间的相似度的矩阵。
接下来验证将SimRank算法应用于故障现象之间相似度计算的可行性。实验测试数据如图3,作为SimRank算法的输入。其中,A代表故障现象A,a表示故障原因a。
当总迭代次数k=11时,以迭代次数为横坐标,以两个节点之间的相似度为纵坐标,生成各系列的相似度随迭代次数的变化曲线如图4。其中,A-B代表现象A和现象B的相似度,a-b代表原因a和原因b的相似度;由于曲线A-B与曲线B-C重合,故仅一条可见。
由图可知:最终结果中,Sim(A-C)>Sim(A-B)=Sim(B-C),Sim(a-b)>Sim(a-c)>Sim(b-c),与我们对图3的网络拓扑图的直观感受一致,即:现象A和C有更多个共同连接的故障原因,所以与A-B、B-C相比,A-C之间的相似度应该较大;原因a和b有更多个共同连接的故障现象,所以a-b的相似度应该较大。因此用simrank算法计算故障现象之间的相似度可行。
3 专家知识诊断系统的实现
使用专家系统进行故障诊断的流程图如图5所示。具体诊断流程描述如下:①首先,由用户输入故障信息(如“换刀”),系统弹出一系列故障现象供用户选择,如图6,此处勾选“换刀异常”;②系统应用simrank算法推理得出与所选现象相似度高的其他现象供用户再次选择,得到相关故障现象集如图7;③系统根据相关故障现象集来搜索相关故障案例,并依据与初次选择的故障现象之间的相似度来决定案例的重要程度,排序后反馈给用户。
4 结语
本文对数控机床故障诊断现状进行了调研,针对存在的问题,对故障诊断专家知识的表示以及對故障现象扩展推理的方法进行了研究,主要成果如下:①从原始的故障案例中分析整理,提出数控机床故障诊断知识的七层网络结构,使知识表达层次简明,利于后续专家经验的处理与调用;②在对故障现象检索的基础上,应用simrank算法根据故障现象与故障原因之间多对多的关系,推理得到不同故障现象之间的相似度,实现相关的故障现象推荐功能;③以C#+ASP.NET为开发平台,应用SQL数据库完成了专家系统各模块的开发。项目开发的专家系统能提升故障案例的检索效率和查全率,提高了维修员的工作效率。
參考文献
[1] Liu Y, Fan Z P, Yuan Y, et al. A FTA-Based Method for Risk Decision Making in Emergency.
[2] Response[J].Computers & Operations Research,2011,42(2):608-612.
[3] 黄江涛,王家海,文剑飞等.基于故障树的数控机床故障诊断算法设计的研究[J].机床 与液压,2014(06):32-36.
[4] 赵太平. CAK6150数控车床故障诊断系统的研究:[硕士学位论文].上海:上海交通大学,2007.
[5] 刘恒,寇月,申德荣,等.基于随机游走路径的分布式SimRank算法[J].计算机科学与探索,2014,8(12):1422-1431.
Abstract:CNC machine tools play an important role in the field of manufacturing. Because of the complexity and diversity of faults, experienced engineers who can quickly locate the causes of faults are scarce. This paper takes fault diagnosis expert knowledge of CNC machine tools as the research object, puts forward appropriate knowledge expression structure, which is structured to improve retrieval efficiency and follow-up similarity reasoning. On the basis of fault phenomena retrieval, simrank algorithm is applied to infer the similarity between different fault phenomena according to the many-to-many relationship between fault phenomena and fault causes. The corresponding solutions in the knowledge base are given. Finally, the development of machine tool fault diagnosis expert system based on Siemens 808d NC system is realized.
Key words:CNC machine tools;fault diagnosis;expert knowledge;Simrank algorithm