技術(shù)頻道

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

基于虛擬儀器的遠(yuǎn)程網(wǎng)絡(luò)測控技術(shù)研究

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

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

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:中高壓變頻器的主要拓?fù)浣Y(jié)構(gòu)...

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

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

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

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

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

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

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