熊波 王卓
華中科技大學控制科學與工程系 湖北 430074
隨著生產(chǎn)技術的發(fā)展和自動化水平的提高,工業(yè)現(xiàn)場的機械設備越來越復雜,其維修方式由事后維修、定期維修發(fā)展成為狀態(tài)維修。要實現(xiàn)狀態(tài)維修,必須對設備進行實時監(jiān)測以了解設備運轉情況。目前故障診斷的方法主要有三種:溫度分析法、油樣分析法和振動分析法。振動分析方法應用廣泛,能對早期故障進行有效診斷,信號測試方便,分析簡單,直觀,診斷結果可信度高,在工業(yè)生產(chǎn)和科研領域受到了高度重視。要對機械設備進行振動分析,必須將設備的振動信號傳遞給工程技術人員,實現(xiàn)對機械設備進行實時狀態(tài)監(jiān)測。
Labview提供了大量用于數(shù)據(jù)采集、分析、顯示和存儲的工具與函數(shù),同時它還提供了大量常用于自動化測試測量領域的圖形控件與多種編程語言和應用程序的接口,可以根據(jù)需要擴展其應用。正是由于這些特點,LabVIEW在數(shù)據(jù)采集、儀器控制、過程監(jiān)控和自動測試領域中具有得天獨厚的優(yōu)勢并應用廣泛。文獻介紹了LabVIEW環(huán)境下利用串口通訊、測量分析和數(shù)據(jù)顯示功能模塊實現(xiàn)數(shù)據(jù)監(jiān)控的一個實例。文獻[5]介紹了LabVIEW在變壓器故障診斷中進行數(shù)據(jù)分析、數(shù)據(jù)存儲、信息融合、數(shù)據(jù)庫管理和故障診斷的實例。因此,通過LabVIEW來獲取機械設備的實時振動數(shù)據(jù)是一種比較理想的方案。
LabVIEW圖形化的基于數(shù)據(jù)流的編程方式簡便直觀,但LabVIEW只能單機運行,不易于實現(xiàn)遠程設備的故障診斷。而基于Web的瘦客戶端模式能使數(shù)據(jù)最大范圍的共享,且瀏覽方便。因此,將兩者優(yōu)點結合起來,使得工程人員通過瀏覽器就能遠程查看機械設備的實時振動數(shù)據(jù)并進行分析,這是非常理想的一種解決方案,也是本文研究的主要內(nèi)容。
在本系統(tǒng)中,需要傳遞的數(shù)據(jù)有波形、頻譜、RMS(振動有效值)和峭度指標等。這些數(shù)據(jù)可以分為兩種類型:實時波形和特征參數(shù)。系統(tǒng)的總體架構和工作原理如圖1。
圖1 系統(tǒng)總體架構和工作原理圖
當客戶端發(fā)送URL請求Web Service時,Web Service獲取對應的網(wǎng)絡共享變量數(shù)據(jù)并進行頻譜分析,以XML文件的方式返回給客戶端,實現(xiàn)實時數(shù)據(jù)的遠程傳輸和數(shù)據(jù)共享。
LabVIEW8.0在工程的基礎上引入了網(wǎng)絡共享變量(Net-Published Variable)的概念,網(wǎng)絡共享變量為同一工程下不同設備間的數(shù)據(jù)交換提供了很好的方式,用戶不需要關心其底層實現(xiàn),也不需要編程,只需要像訪問同一設備中的全局變量一樣進行讀寫操作。LabVIEW數(shù)據(jù)采集程序將機械設備的實時振動數(shù)據(jù)采集上來,然后將這些實時振動數(shù)據(jù)以網(wǎng)絡共享變量的形式發(fā)布。這樣,只要該LabVIEW數(shù)據(jù)采集程序處于運行狀態(tài),這些網(wǎng)絡共享變量就能被其他LabVIEW程序訪問了。
LabVIEW Web Service模塊在實時數(shù)據(jù)的遠程傳播中發(fā)揮著關鍵性的作用,其主要實現(xiàn)了以下幾個功能:
(1) 網(wǎng)絡共享變量的定位和讀?。?/p>
(2) 將網(wǎng)絡共享變量轉化為XML文件;
(3) 生成和發(fā)布Web服務。
另外,針對傳輸?shù)臄?shù)據(jù)的不同,處理實時波形和實時特征參數(shù)的LabVIEW Web Service程序也不完全一樣,處理實時波形的LabVIEW Web Service程序除了上述三種功能外,還有波形變換的功能。
從工業(yè)現(xiàn)場采上來的機械振動實時波形是加速度波形,然而,從加速度波形中能獲得的信息有限,因此,有必要對加速度波形進行相應的變換,以獲得更多對故障診斷有幫助的信息。
對采集上來的原始波形進行變換有兩種方案:
(1) LabVIEW數(shù)據(jù)采集程序從工業(yè)現(xiàn)場采集到波形數(shù)據(jù)后,進行變換,然后將變換后的波形以網(wǎng)絡共享變量的形式發(fā)布,供LabVIEW Web Service程序讀取。
(2) LabVIEW數(shù)據(jù)采集程序將采集到的原始波形數(shù)據(jù)以網(wǎng)絡共享變量的形式發(fā)布,LabVIEW Web Service程序從網(wǎng)絡共享變量中讀取波形數(shù)據(jù)后,根據(jù)用戶請求進行相應的變換。
通過對比,發(fā)現(xiàn)第一種方案用到的網(wǎng)絡共享變量比第二種多得多。從節(jié)省網(wǎng)絡資源,控制網(wǎng)絡流量的角度出發(fā),第二種變換方案更優(yōu),應成為首選方案。
處理波形數(shù)據(jù)的LabVIEW Web Service程序如圖2。
處理波形數(shù)據(jù)的LabVIEW Web Service程序主要分為4個部分:
第1部分主要是根據(jù)3個端口信息對共享變量進行定位。第2部分主要是讀取共享變量,添加時間信息,對讀取過程進行容錯處理。第3部分主要根據(jù)端口type的信息對實時波形進行相應的變換。第4部分主要將最終的數(shù)據(jù)轉化為XML文件。
圖2 處理實時波形的LabVIEW Web Service程序
處理實時特征參數(shù)的LabVIEW Web Service程序和圖2所示程序大同小異,只是沒有對波形進行變換的部分。
Web服務生成時,會形成相應的URL映射,URL映射會生成一些端口,這些端口包含了Web服務的所有信息。客戶端通過URL請求Web服務時,Web服務根據(jù)URL提供的端口信息為客戶端提供服務。
處理實時波形的Web服務的URL映射如下所示:/read/:hostname/:LibraryName/:VariableName/:type
上面的URL映射包含了4個端口,各端口的含義為:
(1) hostname:網(wǎng)絡共享變量所在計算機的主機名;
(2) LibraryName:網(wǎng)絡共享變量所在變量庫的庫名;
(3) ariableName:網(wǎng)絡共享變量名;
(4) type:波形變換的類型,有效取值為0,1,2,3,4,5,分別對應的變換類型為位移波形,速度波形,加速度波形,幅值譜,相位譜,功率譜。
由于特征參數(shù)是浮點型的數(shù)字,因此處理實時特征參數(shù)的Web服務的URL映射和處理實時波形的Web服務的URL映射相比,沒有type端口,其他端口及端口的含義相同。
XML(Extensible Markup Language)被普遍認為是World Wide Web發(fā)展的重要里程碑,現(xiàn)已成為Web上數(shù)據(jù)表示與交換的標準。XML具有良好的擴展性,結構靈活,使用日趨廣泛。XML可以將各種信息如文本、表格,甚至圖形等以原始數(shù)據(jù)的方式儲存。正是利用XML的這些特點,在LabVIEW Web Service程序中,實時波形和實時特征參數(shù)均轉化為XML文件的形式,然后再進行網(wǎng)絡傳輸,用戶得到數(shù)據(jù)之后,再在Web中對XML做相應處理,將其還原。在整個系統(tǒng)中,數(shù)據(jù)的流向及存在形式如圖3。
圖3 系統(tǒng)數(shù)據(jù)流向及存在形式圖
系統(tǒng)的實時數(shù)據(jù)有很多種,這些數(shù)據(jù)分為兩種類型:實時波形和實時特征參數(shù),客戶端請求Web服務之后,這兩種數(shù)據(jù)都是以XML文件的形式返回給客戶端,客戶端的工作主要是對XML文件進行相應的處理,將數(shù)據(jù)從XML中還原出來,并顯示在Web頁面上。
由于實時特征參數(shù)比較簡單,只是一個單一的浮點數(shù),因此其Web實現(xiàn)也比較簡單:Structs得到返回的XML文件后,相應的處理類把特征參數(shù)從XML中解析出來,并保存到該類的靜態(tài)變量中,Web頁面以一定周期從此靜態(tài)變量中讀取值,并顯示在頁面上。這樣就實現(xiàn)了實時特征參數(shù)的實時顯示和更新。
(1) 原理與方案
LabVIEW Web Service將實時波形轉化為XML文件時,是將所有點的幅值按順序保存的,由于在頁面中顯示的實時波形是要隨時間不斷變化的,因此,在Web頁面中嵌入靜態(tài)圖片的方案顯然行不通。本系統(tǒng)采用的方案是在頁面中嵌入Flex以實現(xiàn)實時波形的顯示和更新。
Flex技術所開發(fā)的程序運行于Flash Player中,因此可以在幾乎所有電腦中運行,對于大部分瀏覽者而言并不需要安裝額外的客戶端,瘦客戶端的特點是Flex技術得天獨厚的優(yōu)勢。Flex中有一種數(shù)據(jù)類型為ArrayCollection,若控件的數(shù)據(jù)源數(shù)據(jù)類型為ArrayCollection,則當數(shù)據(jù)源發(fā)生變化時,控件也要相應地發(fā)生變化,因此,可以把獲得的實時波形數(shù)據(jù)作為控件的數(shù)據(jù)源,類型設置為ArrayCollection,這樣,每當實時波形發(fā)生變化時,控件也要相應地發(fā)生變化。實時波形在頁面中的實時更新也就能夠實現(xiàn)了。
(2) 通用Flex模塊設計及與Web的交互
為減小程序設計的工作量,按照模塊化設計的思想,應該將Flex模塊設計成一個通用的模塊,實現(xiàn)最基本的功能。Web頁面根據(jù)需要,選擇一定數(shù)量和類型的通用Flex模塊嵌入其中,以實現(xiàn)實時波形的顯示和更新。
通用Flex模塊最重要的功能就是請求Web服務,獲取實時波形并顯示。其工作過程如圖4。
圖4 通用Flex模塊工作過程及與Web的交互
通用Flex模塊接收Web頁面?zhèn)鬟^來的URL,F(xiàn)lex的HTTPService通過該URL請求Web服務并獲得Web服務返回的XML文件,提取XML文件中的波形振幅數(shù)據(jù),并將這些數(shù)據(jù)的數(shù)據(jù)類型設定為ArrayCollection,并作為波形顯示控件的數(shù)據(jù)源。這樣,控件中的實時波形就能實時顯示和更新了。
此外,為了使波形顯示更加美觀和合理,通用Flex模塊還有一些優(yōu)化模塊,這些優(yōu)化模塊具有波形初始顯示時的自適應顯示,波形顏色設置,波形大小調(diào)整,時間信息的顯示等一些功能。
關于波形顯示控件的選擇,對于位移波形,速度波形和加速度波形,由于變換為XML文件時,橫軸信息沒有發(fā)生變化,用LineChart就能夠正確的顯示實時波形了。而對于幅值譜,相位譜和功率譜,由于變換為XML文件時,橫軸信息發(fā)生了變化,為了能正確顯示頻譜數(shù)據(jù),需要加上頻譜數(shù)據(jù)的橫軸信息,因此,采用PlotChart作為頻譜數(shù)據(jù)的顯示控件。
由于Flex模塊的通用性,F(xiàn)lex模塊用來請求Web服務的URL必須由外界提供。在本系統(tǒng)中就是由Web頁面程序提供。Web和Flex的交互,就是要在Web頁面程序中實現(xiàn)對Flex程序的調(diào)用,以實現(xiàn)URL從Web頁面到Flex的傳遞。
Flex提供了與外部程序交互的功能,通過ExternalInterface將被外部程序調(diào)用的函數(shù)聲明為回調(diào)函數(shù),這樣,外部程序就能夠訪問被聲明為回調(diào)函數(shù)的函數(shù)了。
在Web頁面中,首先需要嵌入通用Flex模塊,給每一個嵌入的Flex模塊一個ID,通過ID號就能調(diào)用對應Flex模塊中的回調(diào)函數(shù),實現(xiàn)URL的傳遞。
對于機械設備的故障診斷,可以采用初步診斷和詳細診斷相結合的方式。
機械設備的實時振動特征參數(shù),如振動有效值,波形指標,峭度指標等能反映設備的整體運行情況。因此,可以通過監(jiān)測實時特征參數(shù)來對設備是否存在故障進行初步的診斷。當實時特征參數(shù)出現(xiàn)異常時,說明機械設備存在故障,這時,就需要查出故障的產(chǎn)生部位和類型,因此,需要對機械設備進行詳細的診斷。
對機械設備進行詳細診斷,比較經(jīng)典的方法是對實時波形進行頻譜分析,很多故障都存在對應的特征頻率,當故障出現(xiàn)時,表現(xiàn)在功率譜上就是特征頻率出現(xiàn)異常(峰值、劇增,邊頻等),此時根據(jù)特征頻率就能診斷出機械設備的故障部位和故障類型。
系統(tǒng)運行時,實時波形數(shù)據(jù)顯示的效果如圖5。
圖5 實時波形數(shù)據(jù)顯示效果圖
運行結果表明,LabVIEW采集的實時波形信號和實時特征參數(shù)實現(xiàn)了遠程傳輸,在網(wǎng)頁上能正確顯示。當連續(xù)獲取實時的數(shù)據(jù)波形時,系統(tǒng)也能及時響應,而且系統(tǒng)運行穩(wěn)定,響應時延小。
工業(yè)現(xiàn)場設備的實時振動數(shù)據(jù),對于分析設備運轉狀況有著極其重要的作用。本系統(tǒng)通過LabVIEW Web Service、EJB、Flex和Structs等技術,實現(xiàn)了實時振動數(shù)據(jù)的遠程傳輸,將實時波形和實時特征參數(shù)呈現(xiàn)在網(wǎng)頁上,且系統(tǒng)在運行過程中穩(wěn)定、響應迅速、系統(tǒng)時延小,使用戶能夠及時、準確、直觀的了解工業(yè)現(xiàn)場設備的運轉情況,為設備的保養(yǎng)維護提供有力的支持。
[1] 葉榮學,孫偉,林赫等.機械設備狀態(tài)維修方式的研究與選擇[J].中國電力.1998.
[2] Gao Baolu, Xiong Shibo, Xu Zhanwei.The application of wireless sensor networks in machinery fault diagnosis[J].2010 International Conference on Machine Vision and Human-machine Interface.2010.
[3] 陳新崗,田曉霄,趙陽陽等.基于Labview的變壓器故障診斷系統(tǒng)研究[J].計算機工程與科學.2011.
[4] 田愛萍,邰文濤.基于μC/OS-II與LabVIEW的井下低壓選擇性漏電保護系統(tǒng)研究[J].電測與儀表.2012.
[5] 陳新崗,田曉霄,趙陽陽等.基于Labview的變壓器故障診斷系統(tǒng)研究[J].計算機工程與科學.2011.
[6] 張小龍,馮能蓮,李紅志等.LabVIEW中多設備數(shù)據(jù)共享方法對比研究[J].工業(yè)儀表與自動化裝置.2008.
[7] 嚴麗,劉健.一種模糊XML模型的概念設計方法[J].計算機科學.2011.
[8] 李亞坤,王宏志,高宏等.基于實體描述屬性技術的XML重復對象檢測方法[J].計算機學報.2011.
[9] 胡斌蜂,孫偉德,陳奇.基于Flex的WebGIS注記控件研究[J].計算機工程.2011.