基于LabVIEW的網(wǎng)絡(luò)通信方法
本文關(guān)鍵詞:基于LabVIEW的網(wǎng)絡(luò)通信方法,,由筆耕文化傳播整理發(fā)布。
基于LabVIEW的網(wǎng)絡(luò)通信方法
黃國興
(華南理工大學(xué)機(jī)械與汽車工程學(xué)院,廣東廣州510640)
摘 要:虛擬儀器是計(jì)算機(jī)系統(tǒng)與儀器系統(tǒng)技術(shù)相結(jié)合的產(chǎn)物,改善了傳統(tǒng)儀器在數(shù)據(jù)處理、顯示、傳送、存儲等方面的性能,具有靈活性、方便性等優(yōu)點(diǎn),廣泛應(yīng)用于數(shù)據(jù)采集、數(shù)據(jù)分析、測試與測量和通信仿真等方面。LabVIEW作為圖形化的虛擬儀器開發(fā)平臺,提供了大量具有通信功能的函數(shù),能構(gòu)建基于計(jì)算機(jī)網(wǎng)絡(luò)的測試系統(tǒng)。LabVIEW中的網(wǎng)絡(luò)通信方法主要有DataSocket、TCP/IP、UDP、共享變量和遠(yuǎn)程面板調(diào)用等。文中對LabVIEW的幾種不同網(wǎng)絡(luò)通信方法做了簡單的分析和比較,并給出了示例。
關(guān)鍵詞:虛擬儀器;LabVIEW;網(wǎng)絡(luò)通信
中圖分類號:TP393.02 文獻(xiàn)標(biāo)志碼:A 美國NI公司推出的LabVIEW語言是一種優(yōu)秀的面向?qū)ο蟮膱D形化編程語言,使用圖標(biāo)代替文本代碼創(chuàng)建應(yīng)用程序,擁有大量與其他應(yīng)用程序通信的VI庫[1]。它將軟件和不同的測量儀器硬件及計(jì)算機(jī)集成在一起,建立虛擬系統(tǒng),以形成用戶自定義的解決方案,最近幾年里,人的發(fā)展,息和命令交換用范圍,,進(jìn)一步增強(qiáng)了數(shù)字化儀器的優(yōu)勢,從而成功地進(jìn)入了網(wǎng)絡(luò)化虛擬儀器階段。通過將網(wǎng)絡(luò)技術(shù)與虛擬儀器技術(shù)相結(jié)合,不僅降低了儀器成本,更提高了工作效率。據(jù)統(tǒng)計(jì),在全球500強(qiáng)企業(yè)中有85%的企業(yè)使用了虛擬儀器技術(shù),應(yīng)用領(lǐng)域極其廣闊[2]。
控件上顯示,實(shí)現(xiàn)了服務(wù)器和客戶端之間的數(shù)據(jù)傳輸。
這是,用,,避免了,傳輸效率高,傳輸,支持多點(diǎn)對多點(diǎn)通信,廣泛地應(yīng)用于實(shí)時(shí)系統(tǒng)之中。112 DataSocket技術(shù)
DS(DataSocket)技術(shù)是一種面向測控領(lǐng)域的通過網(wǎng)絡(luò)實(shí)時(shí)進(jìn)行數(shù)據(jù)交換的編程技術(shù)。DS是由DSServer與DSAPL兩部分組成。DSServer負(fù)責(zé)提供DSTP協(xié)議(數(shù)據(jù)傳輸協(xié)議)和管理底層網(wǎng)絡(luò)通信,實(shí)現(xiàn)和用戶程序之間的數(shù)據(jù)交換,不需要用戶編寫有關(guān)網(wǎng)絡(luò)通信的底層程序。DSAPI是用戶訪問網(wǎng)絡(luò)數(shù)據(jù)的接口。DSAPI訪問DSTP對象時(shí)就是通過訪問DSServer來實(shí)現(xiàn)現(xiàn)場數(shù)據(jù)的高速傳輸。
圖3中,首先在DSServerManager中新建一個類型為Number的波形數(shù)據(jù)項(xiàng),驅(qū)動DSServer后,發(fā)布者(Publisher)通過DSAPI向URL位置指定的地址寫入數(shù)據(jù)。其中條件結(jié)構(gòu)1能自動更新數(shù)據(jù),條件結(jié)構(gòu)2則是向DSServer寫入更新的數(shù)據(jù),While循環(huán)上的移位寄存器把上一次循環(huán)得到的數(shù)據(jù)保存到下一次循環(huán)的輸出,實(shí)現(xiàn)更新現(xiàn)場數(shù)據(jù)。圖4上訂閱者(Subscriber)在指定的URL地址上,通過DSAPI從DSServer中讀取數(shù)據(jù)。通過DSServer廣播數(shù)據(jù)的3個角色———發(fā)布者、訂閱者和DSServer,可以存在于同一臺或不同臺計(jì)算機(jī)上,但需要注意的是:發(fā)布者和訂閱者的URL必須指向DSServer所在的計(jì)算機(jī)。
推出共享變量之前,在LabVIEW中實(shí)現(xiàn)網(wǎng)絡(luò)通信的最簡便方法就是DS。DS技術(shù)可以應(yīng)用于任
1LabVIEW的網(wǎng)絡(luò)通信方式
1.1 共享變量
共享變量是LabVIEW為簡化網(wǎng)絡(luò)編程邁出的巨大一步。由共享變量引擎SVE(SharedVariableEngine)實(shí)現(xiàn)共享變量底層的網(wǎng)絡(luò)通信和緩存器管理,通過創(chuàng)建共享變量,用戶可以在不同計(jì)算機(jī)上的VI之間、本地不同的VI之間或同一個程序框圖的
不同循環(huán)之間交換數(shù)據(jù)[3]。
圖1為服務(wù)器端程序框圖,首先創(chuàng)建2個共享變量。服務(wù)器端利用For循環(huán)向“waveform”變量寫入數(shù)據(jù);第2個變量是“command”,服務(wù)器端通過緩存器(buffer)接受和處理客戶端發(fā)送的請求命令,實(shí)現(xiàn)和客戶端建立通話。在圖2中,客戶端也創(chuàng)建了2個變量“waveform1”和“command1”,分別綁定服務(wù)器端的“waveform”和“command”,發(fā)送請求連接命令到服務(wù)器端,得到允許后,通過SVE實(shí)現(xiàn)不斷地從“waveform”中讀取數(shù)據(jù),并在前面板波形 40
《新技術(shù)新工藝》 數(shù)字技術(shù)與機(jī)械加工工藝裝備 2008年 第10期
本文關(guān)鍵詞:基于LabVIEW的網(wǎng)絡(luò)通信方法,由筆耕文化傳播整理發(fā)布。
本文編號:244183
本文鏈接:http://sikaile.net/kejilunwen/wltx/244183.html