LabVIEW具有強大的遠程數據采集能力,實現方法主要有主要4種:方法一, 軟件操作界面共享方式, 利用RemotePanels技術實現遠程數據采集;方法二, DAQ 設備共享方式,采用RDA 技術實現DAQ 設備的遠程控制;方法三,數據發布方式,利用TCP技術實現遠程數據采集 ;方法四,數據共享方式,利用DataSocket技術實現遠程數據采集。無論采用哪種方式,系統都由通過網絡連接的客戶機(Client)和服務器(Server)構成,其中DAQ設備安裝在服務器上,客戶機通過網絡控制服務器上的DAQ設備完成數據采集。
利用Remote Panels技術實現遠程數據采集
從LabVIEW 6. 1 開始, LabV IEW 集成了RemotePanels技術, 允許用戶直接在客戶端計算機上打開并操作位于服務器端計算機上的V I的前面板, 甚至可以將LabVIEW V Is的前面板窗口嵌入到一個網頁中并在網頁中直接操作它, 這是一種軟件操作界面共享方式。按照常規方式編寫服務器端軟件, 控制DAQ設備完成數據采集, 通過一定的設置將服務器端軟件的前面板發布到客戶機中, 這樣, 用戶在客戶機上就可以直接操作位于服務器上的軟件, 實現遠程數據采集。在LabVIEW中設定并使用Remote Panels僅需兩個步驟:
第一步,在LabVIEW Web Server端的計算機上開啟LabVIEW Web Server服務:在客戶端使用Remote Panels之前,必須首先在Server計算機上運行LabVIEW, 并利用LabVIEW 的Op tions配置對話框配置Web Server的文件路徑和網絡參數、客戶機訪問權限和V Is訪問權限。為了提供網頁瀏覽器訪問,必須在配置服務器時利用Web Publish Tool將網頁發布出去。
第二步,在客戶端計算機上連接并運行RemotePanels。有兩種方式可以實現Remote Panels操作:方式一:在LabVIEW 環境中利用Connect to Remote Panels工具可以直接操作Remote Panels。方式二:利用網頁瀏覽器在網頁中直接操作Remote Panels。若在客戶端的網頁瀏覽器的地址欄中輸入服務器的網址,即可實現在網頁中直接操作RemotePanels。在局域網內, 網址格式是:http: / /PcName:Port/ViName. htm;在Internet互聯網上,網址格式為:http: / / IpAddr: Port/ViName. htm。當Remote Panels出現在瀏覽器上時,通過右鍵下拉菜單可以獲得RemotePanels的控制權。利用網頁瀏覽器操作Remote Panels不需要安裝LabVIEW,只需安裝一個LabVIEW Run-Time Engine即可。
LabV IEW的Remote Panels不僅可以觀看,而且可以在LabV IEW的環境中或瀏覽器上加以控制。這個強大的功能讓開發人員可以輕松的創建遠程應用程序,使用戶在周末的時侯坐在家中的計算機前輕松的監控辦公室、實驗室甚至生產線上的各種情況。這種方式的缺點是在客戶端不能得到測試數據。
利用RDA技術實現遠程數據采集
利用RDA (Remote Device Access)技術共享服務器上的設備,在客戶機上編程直接控制服務器上的DAQ設備,實現遠程數據采集。RDA在編程方面與使用本機DAQ 設備完全一樣。在LabV IEW中利用RDA技術實現遠程數據采集的步驟如下:
第一步,配置RDA 服務器。RDA 服務器需要安裝N I-DAQ6. 0 (或更高版本)以及DAQ設備,設置服務器的IP地址,例如192. 168. 0. 1,其子網掩碼為255.255. 255. 0。然后啟動服務器上的RemoteDevice Access Server即可。若有必要,可以在DAQ設備的屬性對話框中設置RDA訪問密碼。
第二步,設置客戶機。RDA客戶端應安裝與服務器相同版本的N I-DAQ,否則DAQ設備會無法連接。設置客戶機的IP地址,例如192. 168. 0. 2,其子網掩碼為255. 255.255. 0。RDA客戶機的設置比較復雜,通常按照下列步驟進行:
在客戶機的MAX (Measurement &Automation Exp lorer) 左側目錄樹中的De-vices and InteRFaces項的右鍵彈出菜單中選擇“Create New.。 . ”,在Create New窗口選擇RDA /Ethernet Device。
在隨后出現的Se-lect Remote Computer對話框中輸入服務器的IP 地址或計算機名。
在隨后出現的System對話框中設定設備號,若服務器上的DAQ設備設置了RDA訪問密碼,則還需在Password欄中輸入正確的密碼。
至此,就完成了客戶機上RDA設備的添加,客戶機的MAX左側目錄樹中會出現這個RDA設備。從此以后,用戶可以像在本地一樣操作該設備。在客戶機上直接編寫DAQ軟件,實現遠程數據采集。
利用TCP技術實現遠程數據采集
LabV IEW提供了一系列用于實現網絡數據傳輸的TCP節點(功能函數) 。編寫服務器端軟件,控制DAQ設備完成數據采集,然后利用TCP節點編程將數據發布到網絡上。在客戶端軟件中利用TCP節點接收這些數據即可實現遠程數據采集。雙機通信的流程如圖3所示。該方法實際上是通過編程實現測試數據的傳輸。
利用DataSocket技術實現遠程數據采集
DataSocket 是N I公司推出的一項基于TCP / IP標準的面向測量和自動化工程的網上實時高速數據交換的新技術,可用于一個計算機內或者網絡中多個應用程序之間實時數據的共享和發布。 DataSocket利用dstp (DataSocket Transfer Protocol)協議、通用資源定位符URL進行網絡通信。DataSocket摒除了較為復雜的TCP / IP底層編程,克服了傳輸速率較慢的缺點,大大簡化甚至免除了Internet編程。
LabV IEW6 i以上的LabV IEW版本中,所有控件都增加了一個叫做DataSocket Connection的特殊屬性,利用這個屬性,可以實現不同計算機上相對應的兩個甚至多個同類別控件之間的DataSocket通信。
在控件的DataSocket Connection屬性的配置對話框中可以設置該控件的DataSocket URL地址,地址的格式如下: dstp: / / servername /dataname,例如: dstp: / /lht/wave。如果為兩臺計算機中的兩個類型相同的LabV IEW控件設置相同的DataSocket ConnectionURL地址(例如都是dstp: / / lht/wave) , 并且其連接類型(Connection Type)都設為Publish and Subscribe,這兩個控件就由DataSocket連接起來,這兩個控件的值會完全保持同步,其中一個控件發生了變化,另一個控件也會同步發生同樣的變化。
利用DataSocket的這種特性,就可實現遠程數據采集:利用服務器端軟件控制DAQ 設備完成數據采集,將測試數據放到一個數組控件中,在客戶機端軟件中利用同樣的數組控件通過DataSocket Server接收這些數據,然后通過進一步的編程對這些數據進行相關處理。這種方法實際上就是利用DataSocket的數據共享獲得服務器端的數據。
與方法三相比,方法四不需要專門編寫用于發送和接收數據的程序,但是需要在服務器和客戶機上額外安裝一個DataSocket Server軟件。
結論
使用Remote Panels、RDA、TCP和DataSocket等4種技術都可實現遠程數據采集,它們各有特點,表1對這4種技術進行了比較。
Remote Panels技術通過共享軟件界面的方式使用戶通過IE瀏覽器直接操作服務器上的DAQ軟件,適用于在客戶機上進行現場監控。RDA技術通過共享硬件的方式使用戶直接控制網絡上的遠端DAQ設備成為可能。TCP技術通過編程實現數據發布和傳輸,編程稍為復雜,但靈活。DataSocket技術通過數據共享的方式傳送測控參數,是一種簡單易用的數據傳輸方法,其最大的特點是高速的實時數據的發布。上述4種技術各有優缺點,用戶可以根據它們各自的特點,靈活使用這些技術構建功能強大的遠程虛擬儀器。
(審核編輯: 智匯小新)
分享