簡介
DataSocket技術是NI公司推出的面向測控領域的網路通信技術。DataSocket技術基於Microsoft的COM和ActiveX技術,對TCP/IP協定進行高度
封裝,面向測量和自動化套用,用於共享和發布實時數據。DataSocket能有效地支持本地計算機上不同應用程式對特定數據的同時套用,以及網路和不同計算機的多個應用程式之間的數據互動,實現跨機器、跨語言、跨進程實時數據共享。
在測試測量過程中,用戶只需要知道數據源和數據宿及需要交換的數據就可以直接進行高層應用程式的開發,實現高速數據傳輸,而不必關心 底層的實現細節,從而簡化通信程式的編寫過程、提高編程效率。
DataSocket在10M網路中的傳輸速率可達到640kbps。對於一般的
數據採集系統,可以達到很好的傳輸效果。隨著
網路技術的飛速發展和網 絡信道容量的不斷擴大,測控系統的網路化已經成為現代測量與自動化套用的發展趨勢。依靠DataSocket和網路技術,人們將能更有效地控制 遠程儀器設備,設定在任何地方進行
數據採集、分析、處理和顯示,並利用各地專家的優勢,獲得正確的測量、控制和診斷結果。
DataSocket 是獨立於平台的解決方案,可以通過
網路傳輸數據。DataSocket 非常類似於可以在
網路電腦間讀寫數據的全局變數。DataSocket 用在您需要共享一台電腦上的數據到其他電腦或者某個電腦組中。
例如:實驗室的電腦採集數據並發布到辦公室一台電腦進行後期處理與分析。
DataSocket技術
DataSocket基於Microsoft的COM和ActiveX技術,源於TCP/IP協定並對其進行高度封裝,面向測量和自動化套用,用於共享和發布實時數據,是一種易用的高性能數據交換
編程接口。它能有效地支持本地計算機上不同應用程式對特定數據地同時套用,以及網路上不同計算機地多個應用程式之間的數據互動,實現跨機器、跨語言、跨進程的實時數據共享。用戶只需要知道數據源和數據宿及需要交換的數據就可以直接進行高層應用程式的開發,實現高速數據傳輸,而不必關心底層的實現細節,從而簡化通信程式的編寫過程,提高編程效率。
DataSocket邏輯構成
DataSocket包括DataSocket Server Manager(以下簡稱Manager),DataSocket Server和DataSocket API一部分。
Manager是一個獨立運行的程式,主要功能有:設定DataSocket Server連線的客戶端程式的最大數目和創建數據項的最大數目:創建用戶組和用戶;設定用戶創建和讀寫數據項的許可權;限制身份不明的客戶對伺服器進行訪問和攻擊。例如,將Manager中的Default Reader設定為everyhost,則網中的每台客戶計算機都可以讀取伺服器上的數據。Manager對DataSocket Server 的配置必須在本地計算機上進行,而不能遠程配置或通過運行程式來配置。
DataSocket Server 是一個必須運行在伺服器端的程式,負責監管Manager中所設定的具有各種許可權的用戶組和客戶端程式之間的數據交換。DataSocket Server通過內部數據自描述格式對TCP/IP進行最佳化和管理,簡化Internet通信方式,提供自由的數據傳輸,可以直接傳送
虛擬儀器程式所採集到的
布爾型、數字型、字元串型、
數組型和波形等常用類型的數據。它可以和測控應用程式安裝在同一台計算機上,也可以分裝在不同的計算機上,以便用
防火牆進行隔離來增加整個系統的安全性。DataSocket Server不會占用測控計算機CPU的工作時間,測控應用程式可以運行得更快。使用DataSocket技術進行通信時伺服器和客戶端得計算機上筆形都進行DataSocket Server。
DataSocket API提供獨立的接口,用於不同的語言平台內部多種
數據類型的通讀。在LabVIEW中,DataSocket API被製作成ActiveX控制項和一系列功能VI(Virtual Instrument),用戶可以方便地使用。一般由伺服器進行數據採集,根據需要將測量地數據寫入DataSocket 數據公共區,然後客戶端通過網路充數據公共區讀取所需地測量數據。
資源定位
DataSocket 對外提升資源定位接口和功能調用接口,通過
統一資源定位符(URL)對數據的傳輸目的地進行定位,讀數據時為源地址,寫數據時為宿地址。在資源定位符中標明數據的
傳輸協定、網路計算機標誌和
數據緩衝區變數。DataSocket支持多種
數據傳送協定,不同的URL前綴表示不同的協定或
數據類型。主要包括:(1)dstp(DataSocket Transfer Protocol):DataSocket 的專門
通信協定,可以傳輸各種類型的數據,當使用這個協定時,VI與DataSocket Server連線,用戶必須為數據提供一個附加到URL的標識Tag,DataSocket連線利用Tag在DataSocket Server上為一個特殊的數據項目指定地址,目前套用
虛擬儀器技術組建的測量網路大多採用該協定;(2)http(Hyper Text Transfer Protocol,
超文本傳輸協定);(3)ftp(File Transfer Protocol,
檔案傳輸協定);(4)opc (OLE for Process Control,操作計畫和控制);特別為實時產生的數據而設計,例如工業自動化操作而產生的數據。要使用該協定,必須首先運行一個OPC Server;(5)fieldpoint,logos,lookout:分別為NI FieldPoint 模組,LabVIEW數據記錄與監控(DSC)模組及NI Lookout模組的
通信協定;(6)file(local file servers,本地檔案伺服器);可提供一個到包含數據的本地檔案或網路檔案的連線。