基于本体和规则的扬弹机故障诊断研究
2012-11-22曹存根张再跃
徐 斌,曹存根,张再跃
(1.江苏科技大学 计算机科学与工程学院,江苏 镇江 212003;2.中国科学院 计算技术研究所,北京 100190)
据文献调研知,目前关于舰船设备的故障诊断技术相关研究不多,已有对舰船的网络系统、导航系统以及柴油机动力系统等进行故障诊断研究[1-3],但关于舰船扬弹机故障诊断的研究工作还未见正式发表的论文。扬弹机作为供弹系统的主要构件,联系着弹药和舰炮,保证扬弹机的工作可靠性对于舰船火炮装备来说至关重要[4],因此研究扬弹机的智能故障诊断技术,具有很高的理论意义和军事价值。
本体及语义网技术已经在学术界获得了广泛的关注,同为W3C规范的本体描述语言OWL与语义网规则语言SWRL相互结合,可提供更强大的逻辑表达能力。本研究基于本体和SWRL规则的推理机制进行扬弹机故障本体设计与实现,通过扬弹机技术手册构建了不同种类的诊断规则,初步实验结果表明,该方法能快速准确定位故障部位,方便地存储和查找故障诊断知识,且耗时少、响应快,能够满足舰船设备维护维修实时性高的要求。
1 扬弹机本体建模
扬弹机本体作为一个领域本体,主要是描述其中涉及的概念和概念之间的关系,可按照扬弹机部件构成的层次来划分本体的各层类,而故障现象则作为每个类的属性。
本体的类通常也被称为概念,从语义上讲,类表示的是对象的集合。在设计扬弹机本体类时,从其主要部件出发,着重体现其每个机械系统的相互组成关系。扬弹机主要由接弹机、中部装弹机、驱动装置、装弹机等主要部件组成。针对这些主要部件,把扬弹机的本体分为四大类,分别是驱动、传动、制动、工作。根据扬弹机本体的特点,形式化定义如下:
O=〈C,P,R〉 其中,C表示概念(类),P表示概念的属性,R表示概念之间的关系。其中概念之间的关系为part-cf,即子类是父类的一个组成部分。部分层结构如图1所示。
图1所示是扬弹机本体的主要层次图,接弹机的每个故障可能发生的部件作为接弹机类的子类,如甲板套筒、链条、水密盖等,与父类接弹机之间存在part-cf关系。
扬弹机本体的属性主要是为了表述扬弹机可能涉及的各种故障现象如:震动、卡住、电流过大等。一个诊断规则中的属性关系以A(?x,?y)的谓词形式定义,其中A代表一个状态、现象或操作的谓词,而?x和?y可以是变量,也可以是本体中类的实例以及本体中的数据值。例如:Unlight(?x,?y)表示熄灭状态;Rotate(?x,?y)表示旋转操作属性。
2 故障诊断规则构建
2.1 SWRL规则
在基于SWRL规则推理中,所使用的推理基础是由OWL本体提供,利用本体实例和属性建立Atom子句,这些子句再成为推理式[5]。SWRL作为基础的规则描述语言,其目的是为了驱使规则,可与OWL本体知识库相互结合。其规则的形式可以定义为:A1(?x,?y)∧A2(?x,?y)∧…∧An(?x,?y)⟹C(?x,?y)。其中推出符号的前部分为规则的推理前提,即body部分,推出符号的后部分为规则的推理结果,即规则的head部分。利用已经定义好的本体中属性和关系建立的SWRL规则,相较于OWL具有更强的逻辑表达能力。
2.2 扬弹机故障规则构建
在已建立的扬弹机本体基础上,通过对本体概念的提取确定出故障所涉及的具体推理元素,并根据元素组建推理规则。推理规则的推理结果将会填充扬弹机部件的故障属性值。并且属性值可以重新写入本体文件,将推理结果保存到本体,达到知识的存储与共享。
为了说明具体规则的建立过程,下面首先根据扬弹机运行时“噪音过大”这个故障现象进行说明。
根据扬弹机技术文档中的知识抽取可知,扬弹机运行时噪音过大的一个原因是工作链条太松,那么建立规则:Chain(?z)∧hasNoise(?x,Big)∧hasPart(?x,?z)→isLoose(?x,?z)
(1)
规则(1)中工作链条记作“z”,扬弹机部件记作“x”,“Big”用来描述噪音的程度比较大,即非正常噪音。“hasPart”用来限制扬弹机部件“x”下的工作链条“z”(有可能扬弹机其他部件也存在工作链条)。“isLoose”作为一个属性关系连接“x”与“z”,也就是说扬弹机部件“x”的工作链条太松。其中“x”,“z”是一个变量,一般会是类中的一个实例来担任。
上面规则建立,基本体现了扬弹机故障规则的建立过程。在建立规则的过程中,希望达到如下的指标:
1)保证规则能够完整描述故障的发生部件以及故障发生的最直观的现象。
2)故障现象用谓词形式保存,谓词定义需统一的制定标准并尽可能减少冗余。
根据以上规则建立的方法,其他的故障规则也按照此方法建立,表1显示了部分规则的详情。
表1 扬弹机故障诊断规则(部分)
3 基于SWRL的故障推理实现
本文扬弹机的本体和规则是基于本体创建软件Protégé 3.4 以及其插件SWRL Editor来创建的。Protégé软件是斯坦福大学基于Java语言开发的本体编辑和知识获取软件,属于开放源代码软件[6]。SWRLEditor整合了JESS规则引擎,能够轻易实现OWL本体实事库到JESS事实库的转化,SWRL规则库到JESS规则库的转化。使用JESS引擎推理得出的结果也可以通过该插件来转化为新的OWL本体知识保存到原来的本体文件中,实现知识库的扩充。
下面通过一个实例来显示整个推理过程。首先从预先设置的故障描述中设置相应的知识以及相应的规则。
如“噪音大”中的一规则Chain(?z)∧hasPart(?x,?z)∧hasNoise(?x,Big)→hasDryfriction(?z,Chain-Guide-Rail-1)在JESS推理机运行之前首先载入若干相关的individual:
“Chain-Guide-Rail(Chain-Guide-Rail-1)”、“Chain(Chain-1)”、“Receiver(Receiver-1)”、“Status(Big)”。
同时载入的Axioms如下:“hasNoise(Receiver-1,Big)”、“hasPart(Receiver-1,Chain-1)”;
这些公理和实例在建立每个规则时定义到本体文件中,以供规则推理时进行调用并得出推理的结果。按照上面的示例JESS推理机执行匹配的规则可推出结果:“hasDryfriction(Chain-1,Chain-Guide-Rail-1)”,该结果表示链条与链条导轨之间发生了干摩擦。此示例是故障推理过程中的一部分,通过类似的多次推理,最终会推理出故障的原因以及故障排除方法,从而实现扬弹机故障推理诊断的基本功能。
一般的,基于本体和规则的故障推理流程如图2所示。
该故障诊断系统采用的JESS推理机是整个系统应用的核心组件,其主要作用是协调和控制系统的运行,并通过内置的推理算法取用知识库中的相关知识以及规则库中的特定规则执行推理过程。推理机的效率很大程度上取决于推理引擎的匹配算法,JESS推理机通过实现Rete匹配算法来提供高效的前向和后向推理,利用诊断系统中时间冗余性和结构相似性的特点,有效地减少了用于匹配操作的次数,因此该诊断系统采用JESS推理平台具有耗时少、响应快的特点。
4 结 论
设备的故障诊断是一个相当复杂的工程,对于设备要求更高的军工设备尤为如此。本文所研究的扬弹机故障诊断系统,故障的诊断规则采用了OWL本体形式,方便知识的存储与共享。基于SWRL规则与JESS推理机的架构具有通用性强、推理快、易扩展等优点。初步实验表明该系统能够快速根据现象推理定位可能的故障部位,达到了基本的故障诊断能力。随着领域本体运用技术不断成熟,本体和规则推理诊断技术将广泛服务于各种设备维护工作中,并逐渐融合到各行各业的智能化变革之中,加快促进我国智能化信息发展的步伐。
参考文献(References)
[1] 张路青.舰载网络故障管理机制与实现技术研究[J].舰船电子工程,2010,30(4):159-161.
ZHANG Lu-qing.Research on ship borne network fault management mechanism and its realization technology[J].Ship Electronic Engineering,2010,30(4):159-161.(in Chinese)
[2] 钱华明,夏琳琳,崔允红,等.智能故障诊断技术及其在舰船组合导航系统中的应用[C].昆明:2005 全国船舶仪器仪表学术年会,2005.
QIAN Hua-ming, XIA Lin-lin, CUI Yun-hong, et al. The application of ship integrated navigation system on intelligent technique of fault diagnosis[C].Kunming: 2005 The National Shipping Instrument Academic Annual Meeting,2005.(in Chinese)
[3] 汤建华,马善伟,刘世生,等.舰船柴油机智能化在线监测及故障预报技术研究[J].舰船科学技术,2009,31(11):34-36,69.
TANG Jian-hua, MA Shan-wei, LIU Shi-sheng, et al. Research on technologies of ship diesel engine intelligent online monitoring and fault predicting[J]. Ship Science and Technology, 2009, 31(11):34-36,69.(in Chinese)
[4] 王钢,王立权,孟祥伟,等.某火炮供弹系统的设计研究[J].兵工学报,2009,30(5):518-524.
WANG Gang, WANG Li-quan,MENG Xiang-wei,et al. Study on naval gun shell-feeding system design and experiment[J].ACTA Armamentarii, 2009, 30(5):518-524.(in Chinese)
[5] 侯智涛,熊齐邦.基于SWRL的网络管理信息定义[J].计算机工程与应用,2006,42(1):131-134.
HOU Zhi-tao, XIONG Qi-bang. SWRL-based network management information definitions[J]. Computer Engineering and Applications, 2006, 42(1):131-134. (in Chinese)
[6] 章勇,吕俊白.基于Protege的本体建模研究综述[J].福建电脑,2011,27(1):43-45.
ZHANG Yong, LV Jun-bai. Ontology modeling review based on protégé[J]. Fujian Computer, 2011, 27(1):43-45.(in Chinese)