基于 SOA 的监测、诊断与预测系统架构

1 概述
   软件设计经历 3 个阶段:基于过程(process-oriented),基于对象(object-oriented)和基于组件(component-oriented)。在过去20 年里,这些远程过程调用(Remote Procedure Call),
分布式组件对象模型(Distributed Component Object Model)和通用对象请求代理体系结构(Common Object Request BrokerArchitecture)等,在许多领域取得较大成功[1-5]。
在设备故障诊断领域,研究者主要利用这些技术来开发状态监测和故障诊断系统实现对重要企业重要设备维修和维护,如风机、轴、蒸汽轮机、水力发电机等。然而,如果企业级系统功能繁多,
企业内部程序的开发平台、编程语言等很可能各不相同,要在企业内部实现诸多功能的整合是非常困难的事情。同时还需要考虑到系统的安全性、扩展性等方面的要求。
基于以往设计方法的诊断系统存在着重用性差、异构平台调用困难、互操作性差、紧耦合等诸多缺陷。要实现易于扩展的、功能可柔性组合、跨异构平台的企业级设备状态监测与故障诊断系统,
基于以往的设计方法已无法满足这样的要求。随着 IT 技术的发展,为解决异构性、互操作性以及软件系统不断改变的要求所带来的系列问题, 面向服务架构(Service-Oriented Architecture, SOA)的研究已逐年深入并获得应用,
将SOA 及其相关技术引入机械设备的状态监测与故障诊断系统应用开发领域都具有重要意义。本文介绍基于SOA 的状态监测与预测系统的架构设计,并应用WCF 技术对预测模型加以实现并验证。
2 基于 SOA 的设备诊断和预测系统体系架构
   目前,各个企业使用自身的故障诊断系统实现对机器设备的监测和故障诊断,有一定的局限性。企业的知识库、规则库有限,可能无法对各种设备故障进行及时诊断。如果各个企业和科研院所都将相关的知识库、方法库等商业逻辑通过SOA 技术发布为服务,
那么企业就可以充分利用网络资源来实现机械设备的远程故障诊断,这能够大大提高效率,减少成本,并实现诊断资源共享的目的。将SOA 技术引入机械设备远程故障诊断领域,将在很大程度上提高故障诊断的准确性。
分布式故障诊断系统中,应用SOA 技术能够更好地解决原有系统中的跨平台和跨防火墙等问题,并且很好地改善系统的可扩展性和伸缩性。SOA 的引入使得整个联合故障诊断系统体现松耦合、开放等特点,这就能随时允许故障诊断服务的加入或退出,
解决了以往无法在异构平台间共享数据和服务的问题,提高网络诊断资源的利用率。面向服务框架(Service-Oriented Framework Architecture,SOFA)是整个基于SOA 状态监测和预测系统体系结构中的核心,
它主要实现业务服务(Business Service)和业务处理逻辑(Business Process Logic),为智能客户端(Smart Client)提供服务。SOFA 分为基础业务服务层、业务服务总线以及业务处理层。
基础业务服务层包括很多细粒度的服务,如特征提取、诊断算法、数据分析算法、数据实时存储、权限设定、报表、设备各种管理等。这些服务被包装成单个服务或者根据复杂性对几个细粒度的服务进行合成形成一个粗粒度服务。
最终,这些服务被继承到业务服务总线上成为面向业务的服务。为便于对业务进行访问,将基础业务层主要分为 4 种业务服务总线:权限验证,数据访问,诊断分析和文档报表服务。每个业务服务总线都是由若干个细粒度的服务集成的,
因此,每个业务服务总线都包含了多个面向消费者的、独立于底层组件的粗粒度服务。这样做的好处在于有利于实现独立于组件的业务,当需求变化时只需要调整服务而不用修改底层细粒度服务。利用业务服务总线更具有实际意义的是:
能够支持跨平台的不同服务组件之间的基本交互,还将异构平台间的基础结构功能整合为一体。
3 基于 SOA 的设备诊断和预测系统的实现
3.1 远程数据采集
   数据采集是系统的主要信息来源,一般情况下,数据采集位于工业现场,距离企业监测中心比较远。因此,为便于对数据采集系统进行操作,用WCF 技术实现对采集系统的远程监控,企业工程师可以在监测中心非常容易地实现远程启动、停止采集和实时获取等功能。
由于是基于面向服务的,因此客户端可通过配置服务的绑定(Binding),实现安全可靠的消息传输,以达到对数据采集子系统进行管理的目的。这也是SOA 技术在远程故障诊断系统中的应用之一。程序(数据层)的各个逻辑功能以服务的形式发布,完全符合SOA 的概念,有利于整个系统的扩展和伸缩性。
3.2 故障诊断和趋势预测
   近年来,设备维护逐渐从事后维护到预防性维护,一直转变到现在的状态维护。状态维护主要侧重于设备的智能诊断和趋势预测,能够在事发之前给维护人员提供可靠的维护依据,制定维修计划,这样可以避免意外停机,减少停机次数,提高生产效率,减小维修成本。
基于上述特点,设备监测需要不间断进行并且能够给出设备的状态变化情况及运行趋势。关于故障诊断方面的系统应用很多,这里不再赘述,本系统采用多种模型对设备的运行趋势进行预测,并结合监测指标的报警阈值,
对设备的剩余寿命进行估算,本系统中采用的预测算法主要包括支持向量机(Support VectorMachine, SVM)[6]和神经网络(neural network)[7]等。下面给出用WCF 技术实现SVM 预测模型的具体方法。
4 结束语
   本文将 SOA 引入到设备的状态监测、故障诊断和趋势预测领域中,并提出基于SOA 的状态监测和预测系统的架构模型,实现不同软件平台资源共享、降低系统间的耦合性、增加系统的可扩展性和伸缩性,因此,减少了开发时间。
本文在企业网内实现了基于SOA 的状态监测、故障诊断和趋势预测系统,如服务的发布和消费,并将该系统应用到企业现场中。但实现真正意义上的基于SOA 的远程分布式故障诊断系统,还需要做很多工作,尤其是安全性问题(跨企业网的安全问题)、部署、异构平台的解耦、记账和收费问题等。
基于 WCF 的数据采集,它是作为服务的提供者存在的,它将与数据采集相关的服务发布出来由监控端进行调用,从而达到监视实时数据、控制数据采集系统的目的。如果每台数据采集系统都将其服务发布到企业网内,可以通过一台监控机完成对多台数据采集机器监控,
有利于管理,从企业级设备监测和故障诊断系统的架构上看,好处在于将数据采集

posted on 2010-10-12 16:34  jdmei520  阅读(634)  评论(0编辑  收藏  举报

导航