技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網 > 技術頻道 > 技術百科 > 基于虛擬儀器的遠程網絡測控技術研究

基于虛擬儀器的遠程網絡測控技術研究

時間:2008-07-14 14:19:00來源:ronggang

導語:?本文提出了一種利用虛擬儀器技術的新型遠程測控技術實現(xiàn)方案。該方案采用C/S架構,由客戶端的虛擬儀器應用程序實現(xiàn)與服務器端的網絡通信,監(jiān)測和控制等功能需求
摘要:本文提出了一種利用虛擬儀器技術的新型遠程測控技術實現(xiàn)方案。該方案采用C/S架構,由客戶端的虛擬儀器應用程序實現(xiàn)與服務器端的網絡通信,監(jiān)測和控制等功能需求。主要利用DataSocket技術實現(xiàn)了網絡化測控的要求,該技術具有安全、靈活等諸多優(yōu)越性。最后重點論述了數(shù)據(jù)傳輸與接收過程中的一致性問題,提出了把時間等信息作為數(shù)據(jù)屬性同實時數(shù)據(jù)綁定后再進行數(shù)據(jù)發(fā)布的解決方案,很好地解決了這一問題。 關鍵詞: 虛擬儀器;遠程網絡;測控技術;一致性;DataSocket 1 前言   隨著網絡技術的引入,虛擬儀器技術漸漸向網絡化方向發(fā)展,很多測試任務也提出了遠程測試的要求。于是,網絡化的虛擬儀器成了虛擬儀器技術的一個發(fā)展方向。虛擬儀器技術與網絡技術的結合及其在測控領域中的應用,是對傳統(tǒng)測控方式的一場革命。應用LabVIEW作為虛擬儀器軟件開發(fā)平臺,為開發(fā)高性能的計算機測控系統(tǒng)提供了極大的便利。測控方式的網絡化,是未來測控技術發(fā)展的必然趨勢,通過建立分布式網絡測控系統(tǒng),能夠充分利用現(xiàn)有資源和網絡帶來的種種好處,實現(xiàn)各種資源最有效合理的配置。應用分布網絡測控,可以進行多點測量,多點分析處理。這樣既可以充分發(fā)揮服務器控制測試儀器的接口能力,又能發(fā)揮客戶機數(shù)據(jù)處理能力,而且便于系統(tǒng)的擴展。 2 遠程測控的實現(xiàn)   2.1 遠程測控系統(tǒng)的組成   根據(jù)遠程測控數(shù)據(jù)流量狀況及不同的測試需求可采用基于Client/Server(簡寫為C/S)和Browser/Server(簡寫為B/S)兩種網絡模型組建遠程測試系統(tǒng)。本課題采了C/S模式,其適合數(shù)據(jù)傳送量大的情況,而且具有效率高,數(shù)據(jù)可靠完整、兼容性強等特點。遠程測控系統(tǒng)結構圖如圖4.9所示。其中測控服務器作為測量發(fā)布節(jié)點,主要完成數(shù)據(jù)采集、數(shù)據(jù)發(fā)布以及將采集的數(shù)據(jù)存儲到數(shù)據(jù)庫服務器中的功能。Web服務器主要提供基本的網站功能,客戶端通過訪問該網站,可以獲得數(shù)據(jù)庫服務器中的實時作業(yè)信息和歷史數(shù)據(jù)。另外,客戶端利用虛擬儀器應用程序建立與服務器端的網絡通信,監(jiān)測和控制服務器端的作業(yè),接收來自服務器端的作業(yè)數(shù)據(jù),并進行數(shù)據(jù)分析處理、數(shù)據(jù)處理結果的存儲與顯示、生成數(shù)據(jù)報表以及數(shù)據(jù)或波形打印等。 [align=center] 圖一:遠程測控系統(tǒng)結構圖[/align]   2.2 基于C/S模式的DataSocket技術   在基于計算機的遠程測控中,雖然目前已經有TCP/IP、DDE等多種用于兩個應用程序之間共享數(shù)據(jù)的技術,但這些技術都不是用于實時數(shù)據(jù)(Live Data)傳輸?shù)?。只有DataSocket(DS)是一項在測量和自動化應用中用于共享和發(fā)布實時數(shù)據(jù)的技術。DataSocket技術是一種簡單易用的網絡數(shù)據(jù)通信技術,它封裝了TCP/IP編程細節(jié)(如選擇端口號、定義協(xié)議、創(chuàng)建連接、字節(jié)流處理、錯誤處理等),使測試工程師不用了解底層的網絡編程技術,就可以方便的搭建網絡化虛擬儀器測試系統(tǒng)。   LabView開發(fā)環(huán)境安裝后就會在Windows的程序菜單中增加National Instruments DataSocket條目,包括DS 的兩個組件Datasocket Server Manager和 DataSocket Server。其中,DataSocket Server是一個小巧、獨立運行的程序,利用DS技術傳輸數(shù)據(jù)必須在發(fā)布數(shù)據(jù)的機器上打開DataSocket Server。發(fā)布數(shù)據(jù)的程序通過它進行數(shù)據(jù)輸出;輸入數(shù)據(jù)的程序找到它才能接收數(shù)據(jù)。DataSocket Server的面板如圖4.10,其顯示了主機zhangtianyi.workgroup當前連接到DS上的任務數(shù)和已經發(fā)送的數(shù)據(jù)包數(shù)。Datasocket Server Manager和 DataSocket Server主要功能是設置DS Server可連接的客戶數(shù)目和可創(chuàng)建的數(shù)據(jù)項目數(shù)、設置用戶權限、預定義數(shù)據(jù)項等。 [align=center] 圖 二:DS服務器面板[/align]   DataSocket API提供了一個用于多樣編程語言、多種數(shù)據(jù)類型通訊的單一接口,它在LabView中的形式之一是兩個函數(shù)DataSocket Read 和DataSocket Write。發(fā)布數(shù)據(jù)時用DataSocket Write函數(shù)自動地將用戶數(shù)據(jù)轉化為在網絡上傳遞的字節(jié)流,接收數(shù)據(jù)時用DataSocket Read將字節(jié)流還原到它原始的形式。   DS傳遞數(shù)據(jù)的3個部分,即發(fā)布數(shù)據(jù)程序、DS服務器和接收數(shù)據(jù)的程序,可以放在同一臺機器上,但更有普遍意義的是將發(fā)布數(shù)據(jù)程序和DS服務器放在一臺機器上,將其作為測控服務器,而接收數(shù)據(jù)的程序在另一臺機器上運行,將其作為客戶機。本課題便是采用了后者的方案來實現(xiàn)遠程測控的。由測控服務器首先進行數(shù)據(jù)采集,然后把采集到的數(shù)據(jù)發(fā)布到DataSocketServer中,客戶端便可以同步地從DataSocket Server中接收數(shù)據(jù),這樣可保證客戶端數(shù)據(jù)與原始實驗數(shù)據(jù)的一致性。應用DataSocket技術進行實時數(shù)據(jù)傳輸?shù)目驁D例程如圖三所示。 [align=center] 圖 三:DataSocket的數(shù)據(jù)發(fā)布和數(shù)據(jù)接收程序框圖(左為發(fā)布右為接收)[/align]   利用DataSocket技術實現(xiàn)網絡化測控具有許多優(yōu)越性。突出的一點就是安全性高。利用DataSocket ServerManager可以設定客戶端連接數(shù)目、數(shù)據(jù)項數(shù)目,創(chuàng)建用戶組和用戶,設置用戶讀/寫以及創(chuàng)建數(shù)據(jù)項的權限(未設定權限的用戶對服務器不可訪問)。另外,DataSocket傳輸數(shù)據(jù)的端口使用3015,此端口已經通過IANA(Internet地址分配機構)注冊為DSTP協(xié)議專用端口,因此可以在防火墻外部的計算機上運行DataSocket服務器,同時可保證在防火墻內部的計算機上安全地運行數(shù)據(jù)發(fā)布等應用程序DataSocket傳輸?shù)臄?shù)據(jù)本身包含很小的頭文件,因此,數(shù)據(jù)傳輸速度快,適合于在網絡上大量實時數(shù)據(jù)的傳輸。 3 數(shù)據(jù)傳送與接收的一致性問題   在進行信號的采集時,采集的各數(shù)據(jù)跟時間是密切相關的,因此,時間信息及其它相關信息需要和采集的實時數(shù)據(jù)一起進行傳遞??梢圆扇≡诎l(fā)布端發(fā)送多個數(shù)據(jù)項的方法解決,即把實時數(shù)據(jù)、時間、及其他信息分別建立各自的數(shù)據(jù)項,之后經采集服務器端的DataSocket Publisher分別發(fā)布給DataSocket Server,再由客戶端分別接收。但經測試發(fā)現(xiàn),會產生偽數(shù)據(jù)現(xiàn)象。為保證客戶端接收數(shù)據(jù)的一致性,采用數(shù)據(jù)屬性方法,把時間等信息作為數(shù)據(jù)屬性同實時數(shù)據(jù)綁定后再進行數(shù)據(jù)發(fā)布。這樣在服務器和客戶端之間傳遞的是實時數(shù)據(jù)、時間等內容的綁定整體,所有的傳遞信息同時到達數(shù)據(jù)接收端,之后再由接收端利用數(shù)據(jù)屬性來提取相應的數(shù)據(jù)。采用這種措施后即使傳輸過程中出現(xiàn)數(shù)據(jù)丟失現(xiàn)象,丟失的也只能是綁定的數(shù)據(jù)包,并不會對下次傳來的數(shù)據(jù)產生影響,實驗的偽數(shù)據(jù)就不會產生了,從而避免了因某一項數(shù)據(jù)丟失而無法匹配或匹配錯誤情況的發(fā)生。   測控服務器端在采集、分析的同時,要求客戶端能夠正確、同步地實時顯示測試結果。如果僅用DataSocket中的DataSocket Write.vi和 DataSocket Read.vi來簡單實現(xiàn),往往會出現(xiàn)以下問題:發(fā)送數(shù)據(jù)和接受的數(shù)據(jù)并不同步,并且會接收到許多的無用數(shù)據(jù),如DataSocket Read.vi中出現(xiàn)Timeout提示,會再次返回上一次的接收數(shù)據(jù)或讀不到數(shù)據(jù),返回“0”值等,這些都是與測控過程無關的偽數(shù)據(jù),反而導致接收端顯示的混亂。為解決這個問題,即要保證客戶端接收數(shù)據(jù)的一致性,可采用上面提出的數(shù)據(jù)屬性方法,把標識號與實時數(shù)據(jù)綁定、打包后后再進行數(shù)據(jù)發(fā)布。具體是將每個數(shù)據(jù)包分為兩項:數(shù)據(jù)項和屬性項,分別存放采集數(shù)值和本次發(fā)送的標記—序號Q,然后發(fā)包給DataSocket;接收方也建立一個接收標記—序號P(初值與序號Q同),由于每個包都有一個唯一的序號,因此接收方每次讀到數(shù)據(jù)包時,只按序號P與序號Q的一致性來判斷是否接收包并存放到顯示數(shù)組中,之后將序號P自動加1(即預置為下一個接收包的序號)為下次傳送做準備。如果某次從DataSocket Read.vi中返回的數(shù)據(jù)包中序號Q為0或其它值,就會與當前序號P中的值不一致,表明此數(shù)據(jù)包無效,客戶端不予接收并循環(huán)等待讀取下一個數(shù)據(jù)包。圖四為程序流程: [align=center] 圖 四:收發(fā)數(shù)據(jù)流程[/align] 4 創(chuàng)新點總結   本文的創(chuàng)新點是提出了一種基于虛擬儀器的遠程網絡測控系統(tǒng)實現(xiàn)方案,詳細分析了遠程測控系統(tǒng)的總體框架和實現(xiàn)技術。并且隨著網絡技術的引入,虛擬儀器技術漸漸向網絡化方向發(fā)展,很多測試任務也提出了遠程測試的要求。網絡化的虛擬儀器已經成為虛擬儀器技術的一個發(fā)展方向。課題采用基于C/S模式的DataSocket技術,解決了數(shù)據(jù)傳送與接收的一致性問題,實現(xiàn)了虛擬儀器的的遠程測控功能。 參考文獻:   1 王承 何志偉 基于虛擬儀器的網絡化自動測試系統(tǒng)的構架及實現(xiàn)[J] 電子技術應用 2002   2 武安河,周利莉編著.Windows設備驅動程序(VxD 與WDM)開發(fā)實務[M].電子工業(yè)出版社,2001   3 石傅強 趙德永等LabVIEW6.1編程技術實用教程[M] 中國鐵道出版社 2000   4 龔崇權. 基于現(xiàn)場總線技術的虛擬儀器開發(fā)[J],微計算機信息,2006,2-1:177-178

標簽:

點贊

分享到:

上一篇:中高壓變頻器的主要拓撲結構...

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(m.u63ivq3.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業(yè)自動化與智能制造的全媒體“互聯(lián)網+”創(chuàng)新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號