摘 要: 基于DataSocket的虛擬儀器技術是計算機技術、網(wǎng)絡通信技術和儀器儀表技術相結合的產物,。闡述了虛擬儀器和LabVIEW的一些概念,,針對現(xiàn)階段基層部隊裝備型號多樣、分布廣泛等特點而導致的維修保障難度增大的現(xiàn)狀,,提出了基于DataSocket的虛擬儀器技術在設備遠程狀態(tài)監(jiān)測與故障診斷中的應用,,對DataSocket的性能、結構和工作原理進行了分析,。通過開發(fā)一套設備遠程狀態(tài)監(jiān)測與故障診斷系統(tǒng),,驗證了使用該技術可以實現(xiàn)實時數(shù)據(jù)的現(xiàn)場監(jiān)控和故障排除。
關鍵詞: 虛擬儀器,;DataSocket,;狀態(tài)監(jiān)測;故障診斷
0 引言
近年來,,隨著科學技術的進步以及國防信息化建設步伐的加快,,裝備基層部隊的新裝備越來越多,并具備型號多樣,、分布廣泛,、科技含量高等特點。新的特點給裝備的狀態(tài)監(jiān)測和故障診斷帶來新的挑戰(zhàn),,由于受空間和時間的限制,,僅依靠經驗豐富的專家親臨現(xiàn)場進行指導維修是不現(xiàn)實的。而基于網(wǎng)絡的遠程故障診斷技術可以提供顯著的技術支持,,通過建立在現(xiàn)場設備上的狀態(tài)監(jiān)測點,,可以監(jiān)測和采集設備狀態(tài)的信息數(shù)據(jù),并發(fā)送到遠端專家診斷平臺,,繼而對設備運行的狀態(tài)進行監(jiān)控并對故障及時診斷,。數(shù)據(jù)采集,、傳輸和分析是遠程診斷的重要組成部分,,基于DataSocket的虛擬儀器技術不僅改變了傳統(tǒng)儀器在數(shù)據(jù)采集,、處理,、顯示和存儲方面的舊有觀念,,而且還為設備的遠程監(jiān)控和故障診斷提供了豐富的現(xiàn)場資源,,給故障的遠程診斷提供了新途徑[1],。
1 虛擬儀器與LabVIEW
1.1 虛擬儀器技術
由于計算機技術和微電子技術滲透到測量與控制技術領域,,信號在被采集并被轉換成數(shù)字形式后,,更多的信號分析與處理工作都在計算機中完成,儀器與計算機之間的界限日漸模糊,。虛擬儀器便是通過編寫程序軟件將通用計算機與儀器功能硬件結合起來,,將傳統(tǒng)儀器的數(shù)據(jù)采集與控制,、數(shù)據(jù)分析與處理和結果的輸出顯示三大功能集成到計算機軟件當中,使整個測試過程自動進行,。用戶通過友好的圖形界面來操作計算機,,如同操作自己設計的儀器一樣,就能完成所有數(shù)據(jù)的采集,、分析和顯示存儲工作,。“軟件就是儀器”的口號提出便反映了虛擬儀器技術的本質特征,,虛擬儀器結構圖如圖1所示,。
1.2 LabVIEW
虛擬儀器以透明的方式把計算機資源和儀器硬件的測試能力相結合,這樣的結合通過虛擬儀器開發(fā)軟件LabVIEW實現(xiàn),。它是美國國家儀器NI公司開發(fā)的一種圖形化編程工具,,使用圖形化的編程語言編寫程序,即使不熟悉計算機語言的用戶也可以方便地“畫”出自己的程序,,使編程更加簡潔和直觀,。借助LabVIEW功能強大的函數(shù)庫,用戶都可以直接調用現(xiàn)成函數(shù),,包括基本的功能函數(shù)到高級分析庫,,基本涵蓋了一起設計的所需要的全部函數(shù)。同時,,用戶也可以按自己需要定制虛擬儀器的面板界面,,通過將儀器的控制操作和數(shù)據(jù)結果顯示在前面板上,可模擬傳統(tǒng)儀器儀表的操作方式以實現(xiàn)多種測試功能,。目前,,LabVIEW的開發(fā)環(huán)境已經在數(shù)據(jù)采集、儀器控制和自動測試領域得到廣泛的應用,。
2 DataSocket技術
測試數(shù)據(jù)的網(wǎng)絡發(fā)布與實時共享是設備遠程監(jiān)控和故障診斷系統(tǒng)開發(fā)的關鍵技術之一,,現(xiàn)有的TCP/IP和DDE等技術常因為編程的復雜性使用不便,在實時傳輸大量現(xiàn)場數(shù)據(jù)時,,無法滿足實際需要,。同時,日益廣泛和復雜的網(wǎng)絡應用也給網(wǎng)絡編程開發(fā)人員帶來極大的工作負擔,。為此,,NI公司便針對現(xiàn)實需求開發(fā)了一種面向測量和網(wǎng)絡數(shù)據(jù)實時交換的新技術——DataSocket。
2.1 DataSocket簡介
DataSocket是建立在TCP/IP協(xié)議基礎上的網(wǎng)絡實時傳輸技術,,其對網(wǎng)絡底層協(xié)議進行了高度封裝,,隱藏了數(shù)據(jù)傳輸細節(jié),網(wǎng)絡編程人員不需要進行底層復雜的TCP編程,,也避免了為不同的數(shù)據(jù)格式和通信協(xié)議編寫程序代碼,,只需通過統(tǒng)一的API編程接口,,就可以實現(xiàn)網(wǎng)絡原始數(shù)據(jù)的傳輸。DataSocket技術通過資源定位符(URL)定位數(shù)據(jù)源,,URL的前綴表示寫入數(shù)據(jù)的類型和使用的傳輸協(xié)議,,例如file是本地文件,ftp是文件傳輸協(xié)議,,用于讀取文件中數(shù)據(jù),;http為超文本協(xié)議,用于提供數(shù)據(jù)的網(wǎng)頁鏈接,;opc表示過程過程控制的OLE,,專門用于共享實時生產數(shù)據(jù),該協(xié)議在運行OPC服務器時使用,;dstp則表示來自DataSocket服務器的實時數(shù)據(jù),。DataSocket技術通過使用與協(xié)議無關、與語言無關,、與操作系統(tǒng)無關的API接口,,因而具有很強的通用性,它基于URL,,可以使用在任何編程環(huán)境中,,也可與分布于任何地方的客戶終端進行通信[2]。其體系結構如圖2所示,。
2.2 DataSocket結構組成
DataSocket由DataSocket Server Manager,、DataSocket Server和DataSocket API 3部分組成,同時包括了Dstp(DataSocket Transfer Protocol傳輸協(xié)議),、通用資源定位符(URL)和文件格式等規(guī)程,。其中,DataSocket Server Manager是一個獨立運行的程序,,可以設置DataSocket Server可連接的客戶程序的最大數(shù)目和可創(chuàng)建的數(shù)據(jù)項的最大數(shù)目,,并可創(chuàng)建用戶組和用戶,設置用戶創(chuàng)建數(shù)據(jù)項和讀寫數(shù)據(jù)項的權限,;而DataSocket Server也是一個獨立運行的程序,,它負責監(jiān)督DataSocket Server Manager中所設定的各種權限和客戶程序之間的數(shù)據(jù)交換[2]。在網(wǎng)絡通信時,,必須同時運行在服務器和客戶端,;DataSocket API是一個與協(xié)議無關、與語言無關,、與操作系統(tǒng)無關的最底層的通信接口,,可將現(xiàn)場采集的數(shù)據(jù)變成數(shù)據(jù)流,在多種編程環(huán)境下與多種數(shù)據(jù)類型通信,,進行數(shù)據(jù)發(fā)布和共享,。DataSokcet API包含4個動作:Open、Read,、Write和Close,,通過這些節(jié)點就可以完成DataSocket通信[3]。
2.3 DataSocket工作原理
DataSocket通過DataSocket函數(shù)庫實現(xiàn)網(wǎng)絡通信,,DataSocket發(fā)布數(shù)據(jù)需要Publisher(發(fā)布器),、DataSocket Server和Subscriber(訂閱器)3個要素。發(fā)布數(shù)據(jù)時,,發(fā)布器利用DataSocket API接口將數(shù)據(jù)寫到DataSocket Server中,,接收數(shù)據(jù)時,客戶端再通過訂閱器利用API接口從DataSocket Server讀取數(shù)據(jù),。通信過程如圖3所示[4],。
DataSocket技術實現(xiàn)數(shù)據(jù)傳輸有面板控件直接相連和編寫基于DataSocket協(xié)議程序兩種方式。通過面板控件直接相連方式實現(xiàn)數(shù)據(jù)的實時通信只需要設置數(shù)據(jù)顯示控件的DataSocket Connection對話框,,在本地和異地的數(shù)據(jù)顯示控件的DataSocketConnection對話框上填寫相同的URL即可,,本地控件的數(shù)據(jù)便可實時地傳輸?shù)较嗤琔RL的異地控件中,無需編程,,簡單實用[5],。
而需要透明的數(shù)據(jù)傳輸并可對數(shù)據(jù)進行處理時,就需要編寫DataSocket協(xié)議程序,,DataSocket函數(shù)庫的Write和Read動作直接表明了對數(shù)據(jù)的寫入和讀取操作,,數(shù)據(jù)可以是單個字符或字符串、布爾量或數(shù)據(jù)量都行,,數(shù)據(jù)接收端可以對接收的數(shù)據(jù)進行處理和分析,。
3 遠程狀態(tài)監(jiān)測與故障診斷系統(tǒng)
3.1 系統(tǒng)構成
遠程監(jiān)控與故障診斷系統(tǒng)結構上由現(xiàn)場測試系統(tǒng)、服務器和遠程故障診斷客戶端3部分組成,。
現(xiàn)場測試系統(tǒng)位于最前端,,是對設備的直接執(zhí)行體,由現(xiàn)場儀表,、控制設備和硬件接口等組成,,它主要負責對現(xiàn)場數(shù)據(jù)采集和執(zhí)行功能的控制。現(xiàn)場智能傳感器拾取原始信息,,通過信號調理電路調理后將采集信號提供給數(shù)據(jù)采集卡,,計算機則選擇PXI、USB,、GPIB等總線方式與外置數(shù)據(jù)采集設備和儀器功能硬件連接,,實現(xiàn)數(shù)據(jù)采集和儀器的控制[6]。
服務器端在整個平臺中處于核心地位,,服務器端采用高性能的工控機,。作為現(xiàn)場與遠程故障診斷端口的通信紐帶,,一方面它為虛擬儀器軟件提供特定的運行環(huán)境,完成對現(xiàn)場數(shù)據(jù)的采集,、儀器的控制與管理,;另一方面又要向遠程故障診斷中心提供數(shù)據(jù)和網(wǎng)絡服務,并接受遠端發(fā)出的控制指令完成對現(xiàn)場設備相應的控制操作,。通過安裝在工控機上的儀器硬件接口,,服務器上由LabVIEW開發(fā)的虛擬儀器軟件就可以控制數(shù)據(jù)采集卡DAQ采集原始信號,實現(xiàn)現(xiàn)場設備模擬量輸入輸出,、數(shù)字I/O和定時計數(shù),。同時,利用DataSocket技術,,服務器端控制設備采集數(shù)據(jù)后,,將原始數(shù)據(jù)傳輸?shù)竭h程診斷客戶端[7]。
遠程故障診斷客戶端提供監(jiān)控與診斷的人機窗口,,利用DataSocket讀取現(xiàn)場數(shù)據(jù),,再利用LabVIEW自帶的信號分析模塊完成信號處理。信號處理的最終目的是清晰顯示出特征信號曲線,,提取出特征信息,,并結合專家多年的診斷維修經驗,完成故障診斷,。系統(tǒng)結構如圖4所示,。
3.2 系統(tǒng)實例
為進一步驗證DataSocket技術在遠程監(jiān)測與故障診斷中的應用,以在服務器端采集混有白噪聲的正弦波為例,。電源故障是設備常見的故障之一,,設備的電機也通常由交流電供電,針對交流電源故障的診斷問題,,通過遠程診斷客戶端對混有白噪聲的正弦交流信號進行檢測和分析診斷,,從而判斷為何種故障。
服務器端使用LabVIEW編寫虛擬儀器程序,,通過自帶的DAQ等功能板卡驅動程序,,控制設備采集待測信號,并保存至計算機內的數(shù)據(jù)庫中,。在服務器的LabVIEW程序面板上的URL上輸入DataSocket Server所在的計算機地址,,服務器端默認地址為localhost,通過DateSocket Writer節(jié)點寫入數(shù)據(jù),,如圖5和圖6所示,,將混有白噪聲的正弦信號寫入并顯示在示波器儀表中。
客戶端通過DateSocket Reader節(jié)點將數(shù)據(jù)從URL指定的位置讀出,實時顯示在客戶端示波器上,,如圖7所示,。
為分析接收的數(shù)據(jù),先通過LabVIEW提供的信號分析子模塊,,對接收信號進行頻譜分析,,可以得到正弦信號的特征頻率,再通過濾波器(這里使用反-切必雪夫濾波器)濾除白噪聲,,去偽存真,對濾波后的圖可以通過時域分析,,得到頻率和幅值,。通過對接收信號的分析操作,再對比已經建立的故障特征曲線數(shù)據(jù)庫,,便可以實現(xiàn)對設備狀態(tài)的監(jiān)測和故障診斷,,如圖8、圖9所示,。
4 結論
綜上所述,,基于網(wǎng)絡的虛擬儀器技術充分利用了自身的軟硬件優(yōu)勢,針對基層部隊的設備狀態(tài)監(jiān)測和故障診斷現(xiàn)狀,,提供了一種經濟,、有效的設備保障手段。使用DataSocket網(wǎng)絡傳輸方式,,克服了舊有方式在底層網(wǎng)絡編程效率低,、數(shù)據(jù)傳輸實時性差等缺點,真正實現(xiàn)了網(wǎng)絡編程的簡單快捷和測試數(shù)據(jù)的實時傳輸,。通過傳輸混有白噪聲的正弦波的實例表明,,專家不用親臨現(xiàn)場就可在遠端實時地監(jiān)測現(xiàn)場設備狀態(tài),并可對現(xiàn)場傳輸?shù)墓收闲盘栠M行分析處理,,繼而達到故障診斷的目的,。
參考文獻
[1] 李風保,李凌,,王曉東.基于虛擬儀器的網(wǎng)絡化測控系統(tǒng)[J].儀器儀表學報,,2004,25(4):295-297.
[2] 陳國順,,于涵偉.測試工程及LabVIEW應用[M].北京:清華大學出版社,,2013.
[3] 莫慧芳,饒明輝.基于DataSocket技術的電機聲頻遠程故障診斷系統(tǒng)[J].自動化與儀器儀表,,2013(3):175-176.
[4] National Instruments. DataSocket transfer protocol(dtsp) overview[EB/OL]. [2006-09-06](2015-08-10). Http://www.ni.com.white-paper/3223/en.
[5] 蔣薇,,張曉波,賴青貴.基于LabVIEW的儀器通信技術研究[J].計算機測量與控制,2013,,21(4):1030-1032.
[6] 王吉平,,趙哲,田克純,,等.基于LabVIEW的通信測量技術研究[J].自動化與儀表,,2011,26(1):29-31.
[7] 王亞凡,,張秉仁,,閆立東.基于LabVIEW的多功能虛擬頻譜分析儀的設計[J].電子技術應用,2014,,40(12):100-102.