本文研究数控机床常见故障诊断专家系统的开发与设计思路。运用故障树分析法FTA(Fault Tree Analysis)建立数控机床主要故障部位的故障树,通过Access建立故障数据库,并采用Visual Basic 6.0来开发设计数控机床故障诊断系统,可为机床故障诊断与维修提供帮助。
数控机床故障诊断的必要性
数控机床故障,就是数控机床全部或者部分丧失了规定的功能。由于数控系统种类繁多、功能增强、形式多样,同时涉及电子、机械、液压、气动和光学多个方面,给维修和诊断带来了许多困难。一旦发生故障,专业技术人员很难在短时间内判断出故障原因,更难以排除和维修,给加工生产带来很多不便。如何在较短的时间里对数控机床所发生的故障做出准确判断,查明故障部位,找出故障原因和排除方法,是数控机床故障诊断研究的重点〔1〕。
系统作故障检测和诊断的最终目的是使系统能长期可靠工作。由于新技术广泛使用,系统规模越来越大,人们对可靠性问题的重视也与日俱增。可以这么认为:没有故障诊断,就没有可靠性,就没有自动化〔2〕。
数控机床故障诊断方法
数控机床广泛应用以来,故障诊断与排除方法一直受到关注,也探索出许多故障诊断方法。国内外已将一些新的概念和方法引入到诊断领域。1990年Majstorvic对诊断与维修专家系统进行了总结、评论,剖析并列举了典型的维修专家系统和它们的应用范围。Tor Guimaraes在分析了机床专家系统需求、实例后,提出了设计建立机床专家系统的成功因素,这些研究使故障诊断技术突破传统的故障诊断方法,以知识和经验为基础的智能检测和诊断技术已经得到重视和应用,一种能为机床维修、操作人员提供帮助的故障诊断专家系统应运而生。
利用专家系统和数据库技术设计数控机床故障诊断系统,可为现场技术维修人员快速完成故障定位并进行故障维修提供帮助。
故障树分析法表达数控机床的故障
故障树分析法FTA
故障树分析法(FTA)是研究引起系统发生故障这一事件的各种直接或间接的原因,在这些原因间建立逻辑关系,并用逻辑框图表示的一种方法〔1〕。故障树以图形化的方式表示一个系统内故障或其它事件之间的交互关系。
基于FTA数控机床故障表达实例
以某数控机床自动换刀装置(ATC)的“刀库与机械手故障”为分析对象,介绍故障树分析方法在数控机床故障诊断中的应用。
本例中的顶事件T为“刀库与机械手故障”。
中间事件:S1-刀套不能夹紧刀具;S2-刀库不能旋转;S3-刀具脱落;S4-换刀时掉刀;S5-换刀速度不正常;S6-液压故障;S7-气压故障。底事件X1、X2为导致S1发生的原因事件;X3为导致S2发生的原因事件;X4-X6为导致S3发生的原因事件;X7-X9为导致S4发生的原因事件;X10-X13为导致S5发生的原因事件(图1)。
按照故障发生的部位建立故障数据表,包括数控系统、主轴系统、进给系统、伺服系统、PLC、机械结构等,根据故障发生的现象初步判定故障发生的部位,选择对应的故障现象,分析该故障现象可能发生的故障原因,得出相应的处理方法,逐步排除,缩小故障发生的原因,最终确定故障发生的原因,找到故障处理方法〔3〕。故障原因表的结构见表1。
故障树分析法与诊断专家系统之间的联系
从诊断专家系统和故障树的产生和作用来看,二者是有一定的联系的〔4〕。故障树是图形化的用于可靠性分析和故障诊断的系统故障模型,而诊断专家系统的任务是当系统失效时综合利用各种诊断信息,依据知识库中的知识,通过推理确定系统的故障模式,找出故障源和故障原因,并给出排除故障的方法和建议。
通过运用故障树分析法对所建的故障树进行定性分析,将简化的等效故障树用于专家系统知识库的建立,不仅可以解决诊断知识获取的难题,而且可以简化知识库,降低冗余,便于推理机制的实现。
通过利用故障树来形成专家系统的这一方法不仅结构简单,而且所需投资小,这种形式的专家系统在工厂企业中得到广泛应用。
故障诊断系统及其实现
系统需求分析
数控机床故障诊断就是鉴别数控机床的技术状态是否正常,发现并确定故障的部位和性质,寻找故障起因,得出相应的诊断结论并给出维修建议。
故障诊断就是将诊断知识,按照一定的推理算法,通过人机接口的形式让用户与计算机进行对话,由用户回答系统提出的问题,系统根据提问和回答的答案进行推理,并最终给出专家级的诊断结论。故障诊断原理示意图如图2所示。
数据需求分析
数控机床故障诊断系统应提供的故障诊断信息尽可能多,且要有一定的类别分类,以利于信息的检索和查询。经过权衡和考虑,将故障诊断信息存放在“诊断系统数据库”中,包含故障原因和故障现象两个数据表。
数控机床故障原因信息:故障现象、检查步骤、故障原因、排除方法、关键字等。
故障现象信息:类别编号、故障类别、故障现象等。
数据处理是对故障诊断基本信息的添加、修改、删除和查询等操作,主要为数控机床故障诊断提供数据支持,同时要保证大量数据的正确存贮与操作。
功能需求分析
数控机床故障诊断是一项实用性强的工作,应充分考虑机床故障诊断的实用性,解决机床故障诊断的实际问题。功能主要有三方面要求:(1)系统的用户是普通的机床操作人员,考虑到实际用户的技术水平,要提供方便、安全的操作方法,以利于故障查询功能的实现。(2)要充分考虑系统的开放性,在使用过程中,用户可以对数据库进行更新,并将用户实际诊断过程中的诊断信息进行保存。(3)应添加安全保护措施,使其具备基本的用户管理功能。
在系统设计时,充分考虑故障诊断实际需求,将数控机床故障诊断系统功能结构设计如图3所示。
故障诊断系统运行实例
在本系统中采取以数据库为主体的构造模式,通过数据库操作来完成模糊推理及解释功能,并在推理过程中使用数据库技术控制推理方向,提高推理效率。
数控机床故障诊断专家系统是一种基于知识的智能型计算机应用程序,系统利用Visual Basic的集成开发环境、内部控件及ActiveX控件、数据库技术,运用SQL语句实现数据库的查询操作。同时使用Visual Basic强大的访问数据库功能,将数据控件绑定到不同类型的数据源,完成数据库应用程序的开发,以实现对数控机床故障诊断的人机对话操作。
Access数据库实例
Access是Windows环境下的流行的关系型数据库系统,它既具备大中型数据库的基本功能,与SQL Server等大型数据库管理系统有着天然的联系;又保持了桌面数据库的方便易用性,提供了丰富的可视化开发手段,引入了VBA面向对象的编程技术,是当前桌面数据库系统开发的主流工具。
在整理数控机床故障数据库时,考虑数控机床故障点很多,在诊断系统数据库中设置两个数据库:故障现象库和故障原因库,意在按照故障树理论建立各故障部位的故障表。
VB编程系统实例
Visual Basic 6.0是一种集语言编辑和综合开发与一身的强大的集成开发工具。它具有良好的图形用户界面,采用可视化和事件驱动的面向对象程序设计机制,易学易用,是使用人数最多的程序设计语言。在Visual Basic应用程序中,可直接建立Access格式的数据库或访问Access中的数据,并可以进行数据存储和检索。
(1)菜单界面。在Windows应用程序窗口中,所有的操作都可以通过菜单来实现。菜单不仅可以提供人机对话界面,方便用户选择应用程序的各种操作,而且可以用来管理应用程序,控制各个功能模块的运行。为了方便使用,利用菜单编辑器创建菜单和菜单栏,将系统界面设计成下拉式菜单。
(2)使用TreeView控件建立故障树。使用树操作数据库,可以方便用户对数据库的操作。使用树进行选择操作与选择卡相比显得更加灵活。
比如在设计故障发生部位选择时,将各故障发生部位进行细分,建立根节点、节点、字节点,以提供故障部位的选择操作,更加便利。使用TreeView控件建立故障树,单击节点就可以展开或折叠字节点,更加便于操作人员的选择操作。
(3)使用ListView控件进行数据查询与显示。在诊断系统中,为了解决故障现象描述与表达的同一性,也为了加强诊断系统的使用效果,在主菜单“故障查询管理”中设置了“故障部位查询”和“故障现象查询”子菜单。1)故障部位查询界面。故障部位查询界面采用两个ListView来引导用户进行信息输入。用户可以在ListView1显示的故障发生部位选项中进行选择,当某个选项被选中,ListView2便显示该故障部位发生的所有故障现象、故障原因、排除方法等内容。用户可以移动光标进行查阅,并在三个文本框中显示相关故障信息。2)故障现象查询界面。故障现象查询界面中设计了“关键字输入”形式,由于故障现象表述因人而异,在界面的设计上相对复杂一些。使用ADO、DataGrid、ComboBox等控件来实现故障现象查询功能。
(4)机床故障诊断系统人机交互界面。利用Visual Basic的集成开发环境、内部控件及ActiveX控件、数据库技术,运用SQL语句实现数据库的查询操作。同时使用Visual Basic强大的访问数据库功能,将数据控件绑定到不同类型的数据源,完成数据库应用程序的开发,以实现对数控机床故障诊断的人机对话操作。
“故障现象查询”是从故障现象入手进行故障查询的操作界面。操作人员只需在“请输入故障现象”文本框中输入查询故障关键字,比如“刀具”,即会在显示区域列出相关的记录,包括故障现象、故障原因、排除方法及置信度,如图8所示。如果记录过多,还可以继续在“请输入故障现象”中输入查询语句,以缩小查询范围,便于数据的显示与操作。下方的按钮,可以完成查询、修改、录入、删除等多项功能。在故障现象向导查询界面中,只需按照提示,完成原因分析查询,得出故障原因及排除方法(图4)。
图4 故障现象查询界面及向导查询界面
总结
数控机床故障诊断系统的知识库内存储有“领域专家”对故障原因的分析、判断以及如何消除故障的经验知识,机床操作者可通过显示单元,用简单人机对话的方式选择故障现象,通过运行推理程序,按照一定的策略进行推理。诊断专家系统以专家知识、经验为基础,模仿领域专家解决复杂问题的思维过程,这就使普通维修人员同样能对故障做出具有专家级水平的诊断结论。
利用专家系统和数据库技术设计数控机床故障诊断系统,可为现场技术维修人员快速完成故障定位并进行故障维修提供帮助,具有较强的实际意义。