2012-11-08 13:49:28 来源:互联网
远程数据采集
数据采集是系统的主要信息来源,一般情况下,数据采集位于工业现场,距离企业监测中心比较远。因此,为便于对数据采集系统进行操作,用WCF技术实现对采集系统的远程监控,企业工程师可以在监测中心非常容易地实现远程启动、停止采集和实时获取等功能。由于是基于面向服务的,因此客户端可通过配置服务的绑定(Binding),实现安全可靠的消息传输,以达到对数据采集子系统进行管理的目的。这也是SOA技术在远程故障诊断系统中的应用之一。
基于WCF的数据采集,它是作为服务的提供者存在的,它将与数据采集相关的服务发布出来由监控端进行调用,从而达到监视实时数据、控制数据采集系统的目的。如果每台数据采集系统都将其服务发布到企业网内,可以通过一台监控机完成对多台数据采集机器监控,有利于管理,从企业级设备监测和故障诊断系统的架构上看,好处在于将数据采集程序(数据层)的各个逻辑功能以服务的形式发布,完全符合SOA的概念,有利于整个系统的扩展和伸缩性。
远程采集控制的结构
图2 远程采集控制的结构
2 故障诊断和趋势预测
近年来,设备维护逐渐从事后维护到预防性维护,一直转变到现在的状态维护。状态维护主要侧重于设备的智能诊断和趋势预测,能够在事发之前给维护人员提供可靠的维护依据,制定维修计划,这样可以避免意外停机,减少停机次数,提高生产效率,减小维修成本。
基于上述特点,设备监测需要不间断进行并且能够给出设备的状态变化情况及运行趋势。关于故障诊断方面的系统应用很多,这里不再赘述,本系统采用多种模型对设备的运行趋势进行预测,并结合监测指标的报警阈值,对设备的剩余寿命进行估算,本系统中采用的预测算法主要包括支持向量机(Support VectorMachine, SVM)[6]和神经网络(neural network)[7]等。下面给出用WCF技术实现SVM预测模型的具体方法。
2.1 SVM服务的发布
[page] 系统的开发是基于Visual Studio.Net 2005,首先定义WCF协议,协议里包括输入输出参数。在SVM服务中,需要设置2个函数:训练SVM和基于SVM的状态预测,因此,[OperationContract]可以创建为
[0perationContract]
void VsnSVM—Train(。);
void VsnSVM—Predict(。);
然后建立服务,通过添加引用将SVM算法的DLL文件加载到服务中,服务中需定义与协议中制定的形式相同的服务函数,在函数中调用DLL实现算法。由于在WCF技术中,服务是以类的形式建立的,因此需要建立宿主来承载服务,用以控制其启动与关闭。WCF支持的宿主类型有很多,这里用IIS承载的方式把服务进行发布。
在Host端,需要对端点进行配置来确保服务的唯一性以方便客户端调用,因此,需要定义地址(Address)、合同(Contract)和绑定(Binding)。主要配置如下:
服务的相关信息注册在统一描述、发现和集成协议(Universal Description,Discovery,and Integration,UDDI)注册服务器上。客户端或者用户可以在服务器上找到这些服务进行调用。一般情况下,服务器提供服务描述和服务的相关参数,用户可以通过Web服务器描述语言(Web ServiceDescription Language,WSDL)和XML Schema定义(XSD)获得服务描述。
2.2 SVM服务的消费
创建一个WCF服务并不复杂,当客户端查找SVM服务时,可以请求此服务的配置文件(包含端点、服务合同),并将配置文件加载到本地应用程序中然后对服务进行消费。需要注意的是,客户端调用时必须采用如下配置才能正确调用:
模型训练完毕后,相应的变量存入数据库。当需要对设备的状态进行预测时,调用数据库中的相应参数,再建立预测通道对数据进行预测。预测服务的调用与训练服务调用类似。图3为基于WCF的故障诊断界面。
基于WCF的系统部分界面
图3 基于WCF的系统部分界面
免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。