基于过程数据模块的装备故障诊断技术研究
2018-12-25蒙立荣马永起吴家菊刘振吉
蒙立荣,马永起,程 铮,余 杰,吴家菊,刘振吉
(1.中国工程物理研究院计算机应用所,四川 绵阳 621999;2.国防科技大学计算机学院,湖南 长沙 410073)
0 引言
交互式电子技术手册(Interactive Electronic Technical Manual,IETM)是指综合应用计算机多媒体、数据库和网络等技术优势,将内容繁杂的操作手册、维修手册等信息,按照有关的标准有机地组织管理起来,并以最优化的方式将文字、表格、图像、工程图形、声音、视频、动画等多种信息形式显示在电子屏幕上,并以交互的方式进行查阅,将维修技术人员或系统操作人员所需的信息,精确地展现在使者面前,以加速装备使用和保障活动的实施[1]。IETM作为装备综合保障的十大要素之一,它的广泛应用对降低装备保障费用、提高装备综合保障效率具有重要的意义,同时在缩短故障维修时间、提高工作效率等方面具有显著优势,已成为装备保障信息化技术研究的热点。
在IETM的所有功能中,一个重要功能是在故障隔离和故障维修过程中提供隔离及维修支撑,指导故障维修人员在较短时间内完成故障的推理隔离及维修,从而提高故障排除和维修的准确性、效率性,最大限度地提升装备综合保障效率。而过程数据模块是实现IETM交互式故障隔离及维修交互过程的基础,如何基于过程数据模块高效发挥IETM的故障隔离及故障维修作用是本文研究的主要内容。
1 过程数据模块
1.1 过程数据模块的功能
针对IETM,目前国际上应用得最广泛的S1000D标准包含了13种不同类型的数据模块,其中大多数的数据模块都是采用平铺直叙的形式来描述信息,由此生成的IETM往往交互性不强。为了增强IETM的交互性,S1000D引入了一种专门用于创建交互式内容的数据模块——过程数据模块(Process Data Module)。
图1 过程数据模块结构模型
过程数据模块主要用于表现故障隔离和故障诊断类的技术信息,在过程数据模块中,可以定义变量、表达式、对话框,以此实现人机交互的功能。更为重要的是,可以在过程数据模块中调用测试程序,与测试程序交换数据,以实现集成化的IETM。
IETM技术标准定义的这个具有特殊交互功能的过程数据模块用来表现由数据模块和步骤组成的如维修过程、故障查找程序等程序流,实现IETM技术信息的复杂交互过程[2]。这一“交互性”是交互式电子技术手册的一个重要交互方面,其主要用于描述交互式程序结构信息,可以根据静态或动态状态信息,按照特定的顺序把多个数据模块或步骤组成一个具有较强交互功能的结构化程序,是IETM实现交互性的核心与关键。
过程数据模块设计的初衷是实现IETM的交互过程,具备获取、存储和操作状态信息的能力,可充分描述一个故障诊断、隔离及维修的完整过程。过程数据模块能实现的交互功能主要包括[3,4]:
(1)故障诊断,特别是动态诊断与系统仿真;
(2)执行外部程序,实现IETM与外部程序的交互;
(3)导航、跟踪和对话框驱动等交互功能;
(4)信息过滤,呈现于用户当前情形相吻合的所需要的信息;
(5)顺序遍历,尤其对测试和排故是必要的,下一步是基于当前的动态状态信息或者由外部输入来决定。
1.2 过程数据模块的结构
过程数据模块采用元素
在主元素
1.3 逻辑引擎的工作机制
在IETM平台中,交互性的逻辑结构由过程数据模块来描述,而交互功能的实现则需要逻辑引擎来完成。逻辑引擎是执行数据模块过程的软件部分,是程序脚本的解释器,是由基于过程数据模块的Schema来完成相应功能,如对元素
图2 逻辑引擎功能结构图
逻辑引擎从人机交互界面获取输入,对过程数据模块进行遍历,对得到的变量表达式进行表达式估值,同时进行对话框呈现,得出的计算结果用于逻辑判断和维护变量表达式。逻辑判断的输出结果不是一个明确的装备故障,那么将继续根据人机交互进行下一个测试任务。
图3 基于过程数据模块的交互式故障推理原理
2 交互式故障推理
在IETM中进行故障推理,主要是利用故障推理信息单元来对装备进行故障推理。故障推理信息单元是以故障类、程序类数据模块为主构成的粒度更大的数据模块,即故障推理过程数据模块,其本质属于过程数据模块。基于过程数据模块的交互式故障推理的过程是用户在交互界面上通过对话框输入故障现象,在IETM系统内部进行对应的变量赋值,因此IETM系统得到一个表征故障状态的变量表达式,该表达式与系统中故障推理过程数据模块的前置要求表达式进行匹配,根据运算结果激活相应的故障推理过程数据模块,再按照激活的故障推理过程数据模块中的逻辑流程进行推理,最后根据测试结果与诊断规则的运算结果决定是否已经定位故障或者还需要进行下一个测试任务。所有诊断规则中设置了包含赋值语句的结束要求,该结束要求在没有定位故障时继续测试,在定位故障后结束测试并进入排故单元。基于过程数据模块的交互式故障推理原理如图3所示。
故障推理过程数据模块在设计上包含前置要求、链接单元、测试单元和排故单元。其中,前置要求给出了进入故障推理过程数据模块所必须满足的变量表达式;测试单元是对检查任务以及测试结果状态的描述,用于匹配诊断推理规则,从而定位故障;链接单元则提供了故障隔离、维修相关的文字、图片、多媒体等信息。测试单元中核心功能是逻辑引擎,其负责执行过程数据模块并给最终用户提供交互式显示功能,也是IETM与测试程序的接口软件。该逻辑引擎的功能主要包含5个方面:
(1)遍历过程数据模块,按照过程数据模块所表达的逻辑关系,解析并执行过程数据模块中的所有节点。
(2)维护变量状态表中变量的状态,利用用户输入的信息或者测试程序返回的测试结果更新变量的值。
(3)评估表达式,在进行条件判断和分支选择时,逻辑引擎会评估表达式的是否,作为执行条件节点或分支节点的依据。
(4)给最终用户展示IETM内容,如:对话框、系列操作步骤、一个引用的完整数据模块等。
(5)与测试程序交换数据,可以接收测试程序返回的测试结果,也可以调用测试程序接口并发送必要的参数值。从用户的角度来说,逻辑引擎引导用户通过IETM中一系列连续的操作,这些操作代表着故障隔离过程的各个步骤。
经过排故单元后还是不能将故障排除,那么可以通过领域专家的远程支持帮助排故。领域专家根据故障信息提出解决方案,用于指导排故人员再次通过IETM进行交互式故障推理。
经过排故单元成功排除故障后,用户可以在IETM平台中反馈评价交互式诊断推理过程,同时如果IETM平台集成了故障知识库、维修知识库和工具仪器库,则根据故障推理、维修过程更新对应的知识库,而领域专家形成的规则案例也可以存储至知识库中进行统一分析管理,更新后的知识库为下一次的故障推理提供不断优化的推理逻辑流程,从而持续提升故障推理的成功率。
基于过程数据模块的故障隔离方式之所以能高效发挥IETM的故障隔离及故障维修,是利用了过程数据模块的交互性,基于故障特征和测试结果,结合用户经验进行全面系统的分析,通过内部程序流引导或根据用户指令去获取测试跳转条件,逐步深入地推理、检查,从而隔离定位故障。这种方式的优势是有了用户的实时参与,使得整个故障推理过程更加符合人的思维和推理习惯,因此这种故障诊断模式相比于通过筛选预先内置的有限故障模式相比,可以提高故障推理及维修的交互性和准确率。此外,这种模式预留了故障诊断流程的扩展接口,可以在使用中不断优化已存在的诊断流程,而且也可以方便增加新的诊断流程,实现测试系统的自我丰富与完善。
3 在IETM中的功能实现和示例
将基于过程数据模块的交互式故障推理应用于IETM浏览平台中,构建了辅泵故障的诊断过程数据模块,执行的辅泵故障诊断后得到本次故障隔离流程如图4所示。
图4 基于过程数据模块的交互式故障推理示例
在图4的执行过程中,用户首先在平台提供的全文检索界面输入“辅泵无法工作”关键词,在检索结果中选择并启动辅泵故障推理流程,然后根据“辅泵低压报警灯持续闪烁”的故障特征去检测右辅助泵压力表是否在正常值0.8~1 MPa范围内,发现检测结果不在正常值范围内,从而进一步指导用户去检查右辅泵,通过左右辅泵互换,启动右机组,再次检测右辅助泵压力表是否在正常值0.8~1 MPa范围内,此时检测结果为少于0.8 MPa,提示用户去检查轮胎是否有损坏,当用户未发现轮胎有破损,找到了本次故障的底事件,得到右辅泵体故障的推理结果,此时输出故障隔离流程图,最终结束测试进入下一步排故单元,再根据维修方案进行故障维修,从而完成整个故障推理及维修的全过程。
3 结论
随着IETM在装备综合保障中应用的不断推广,特别是过程数据模块的使用,提高了故障推理及维修的交互性和准确率。同时,由于基于过程数据模块的推理机制在实际的推理过程中不需要频繁访问数据库,具有较好的独立性,使得推理过程相对简洁清晰。然而,因为交互式故障推理的实现需要逻辑引擎来完成,所以逻辑引擎的处理效率和准确性对完成交互式故障推理起决定性作用,后期将对逻辑引擎的处理效率和准确性开展进一步研究。