1. 引言
目前,军用飞机装备日趋大型、复杂、网络化,更新换代速度快,技术含量高,造价昂贵,故障涉及面广,部队保障起来难度很大。特别对于航空维护各专业来说,其保障工作直接与飞机、武器打交道,稍有不慎就会酿成大祸,造成大量人员伤亡和巨大的财产损失 [1] 。机载设备在工作过程中,发现故障的途径主要有三个:目视、人工检查、各种BIT测试。其中目视:在正常操作和使用过程中,发现工作异常,或者损坏;人工检查:在机械日或者其他时间进行工作检查,或者在发现航电系统异常进行故障定位时,发现工作异常;各种BIT测试:通过BIT测试发现的故障,较严重的故障系统会自动报警,所有被探测到的故障均被保存在MFL中。
2. 基于Visual Prolog语言的专家系统的设计
为了弥补部队在装备维修建议及故障诊断方面的不足,针对部队装备使用、维修、保障人员进行系统开发,并注重安全性和可靠性设计,设计开发符合部队实际,人机界面友好的某型机载设备故障诊断专家系统。
机载设备故障诊断专家系统的原理图如图1所示。它主要由专家系统接口模块、解释机构、推理机、知识获取机构以及知识库组成 [2] 。其中知识库用来存储和管理诊断知识的各种规则库,包括外场可更换单元(SRU)规则库,以及内场可更换单元(LRU)规则库,可以实现规则的读取, 增删和修改,以及知识库一致性的维护。
3. 知识库规则的研究
知识库中的知识是将关于世界的事实、关系、过程等编码成一种适当的数据结构。知识的表示用多种表示方法,其中产生式规则表示法是应用最广泛地一种,一般将这种系统成为基于规则的系统。本文知识库的创建正是基于规则 [3] 。
3.1. 规则的表示
某型机载设备在工作过程中,所有被探测到的故障均被保存在维护故障清单(MFL)中。在维护故障清单中,用故障代码来表示故障信息,典型的故障代码的显示格式如图2所示。
故障代码共有6位,图中L表示字母,N表示数字 [4] 。第1、2位表示系统故障代码,第3、4位表示故障设备代码,也就是外场可更换单元(LRU)代码,第5、6位表示内场可更换单元(SRU)和功能的代码。根据故障代码可以判断故障发生的相应位置 [5] 。

Figure 1. Block of fault diagnosis expert system principles
图1. 故障诊断专家系统原理方框图
首先,根据专家经验和外场维护工作人员的经验,得到设备的故障及故障诊断知识,在对故障进行分析的基础上,建立机载设备的故障规则,将故障规则表示为如下形式:
Rule (NUM, FORE, NAME, FITM, DETM, TIMES, ISO, SOL)
即:故障规则(编号,上级编号,故障代码或名称,故障首次出现时间,故障持续时间,发生次数,故障隔离措施,故障解决措施)。
在实现规则结构时,为实现规则的数据结构,需要加入顺序读取规则的IF部分;THEN部分;可信度因子。在规则库中加入、修改、删除规则等操作过程。
3.2. 知识库实例
知识库中知识的一致性、完整性是影响一个专家系统性能的重要因素。对于某型机载设备故障诊断专家系统来说,故障规则的一致性、完整性是保证该专家系统性能的重要因素。这里本文首先对规则进行划分[6] 。
本文将规则之间的联系划分为两大类:依次是RX与RY是无关的、RX与RY是相关的。其中对于无关的规则,不会影响知识库一致性,重点需要关注的是相关的规则。而对于RX与RY是相关的,又可分为RX与RY是相等的、RX与RY是包含的两种关系。
对于相等的两条规则,如果规则中的每一项都对应相等(规则的隔离、解决措施也相同),那么就定义这两条规则是重复的。对于重复冗余的规则,只需要删除其中多余的重复规则即可。如果规则RX的任何域都是规则RY的相应域的子集或者相等,那么RX与RY是相关的。
表1为某型机载设备故障实例。其中表中的故障隔离措施I及故障解决措施S,在某些情况下是一个合集。包含了对该部件处理措施的全部隔离和解决方法的集合。比如显控分系统故障隔离、解决措施是所有其包含部件故障隔离、解决措施的合集。显控分系统故障出现的次数也应该是各部件出现故障次数的或值(也就是最大值)。规则2~12包含于规则1,规则2~12是子集,规则1是超集;规则7、8相等的;规则2、3是相关的;规则3、11是相关的。
3.3. 知识库一致性维护
对于某型机载设备故障专家系统知识库规则的处理。对于无关的规则,由于它们在知识库中的相对位置对于推理策略并没有影响,所以把所有无关的规则提取出来放在彼此相关规则的前面。而所有相关的规则,由于它们的顺序对于推理策略有很大的影响,将相关的规则放在规则集中所有无关规则的后面[7] 。
要判断两条规则RX与RY是否存在上述异常,首先把RX与RY相应的域进行比较,如果RX与RY的任何域相等,则RX与RY是重复冗余,删除其中的一条规则即可。如果RX的相应域是RY相应域的子集或相等,对于规则的进一步的处理,将通过与机载设备维护人员的一个交互完成。
本文在知识库中,通过对各规则中的具体元素之间的关系比对来进行推理。通过定义以下谓词:judge_unrelated、judge_equal、judge_Included.从而根据元素是否是无关的、元素相等的、元素存在包含关系的等,实现对设备故障诊断规则的合理判断和处理。知识库规则异常检测的过程如图3所示。
4. 结束语
基于某型设备故障专家系统的知识库,在进行了大量全面的故障规则收集后,由设备生产领域的专家、技术专家、部队设备维护领域专业人员等,会同计算机相关专家一起,以部队机载设备实际维护经验、维护理念来检定规则的正确性和知识库的合理性,就完成了基于规则知识表示的建造。由于新知识的收集是一个长时间的、不断完善的过程,知识库中的知识越丰富、越广泛,知识库的维护也越来越困难,针对知识库一致性的维护,通过对异常规则的分类研究,并通过专家系统语言Visual Prolog进行异

Table 1. Examples of certain airborne equipment failure
表1. 某型机载设备故障实例

Figure 3. Process of knowledge rules abnormality detection
图3. 知识库规则异常检测的过程
常检测,删除多余的规则,并与维护人员交互处理,从而实现了专家系统知识库一致性。该专家系统知识库的建立对于部队某型设备的故障诊断具有重要的参考价值和应用价值,更加方便快捷的保证了部队设备的完好性。