DataSocket
DataSocket
DataSocketDataSocket DataSocket
目錄
DataSocket技術是NI公司推出的面向測控領域的網路通信技術。DataSocket技術基於Microsoft的COM和ActiveX技術,對TCP/IP協議進行高度封裝,面向測量和自動化應用,用於共享和發布實時數據DamSockd能有效地支持本地計算機上不同應用程序對特定數據的同時應用,以及網路和不同計算機的多個應用程序之間的數據交互,實現跨機器、跨語言、跨進程實時數據共享。
在測試測量過程中,用戶只需要知道數據源和數據宿及需要交換的數據就可以直接進行高層應用程序的開發,實現高速數據傳輸,而不必關心 底層的實現細節,從而簡化通信程序的編寫過程、提高編程效率。
目前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 資源定位
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,本地文件伺服器);可提供一個到包含數據的本地文件或網路文件的連接。