關 閉

新聞中心

EEPW首頁 > 工控自動化 > 設計應用 > 基于LabVIEW的數(shù)控機床網(wǎng)絡測控系統(tǒng)--網(wǎng)絡通信關鍵技術研究 (一)

基于LabVIEW的數(shù)控機床網(wǎng)絡測控系統(tǒng)--網(wǎng)絡通信關鍵技術研究 (一)

作者: 時間:2015-03-06 來源:網(wǎng)絡 收藏

  (1)流式套接字

本文引用地址:http://butianyuan.cn/article/270596.htm

  流式套接字為應用程序提供可靠的通信連接和無邊界限制的雙向數(shù)據(jù)流,能夠提供有序、無重復的傳輸,適用于處理大量數(shù)據(jù),并適用于要求得到響應的應用程序。流式套接字是基于直接連接的,建立在TCP基礎上。TCP三次握手——使用TCP協(xié)議的流程圖如圖4.2所示

  

TCP三次握手

 

  

使用TCP協(xié)議的流程圖

 

  (2)數(shù)據(jù)報套接字

  支持雙向數(shù)據(jù)流動,但不能保證數(shù)據(jù)的順序和不重復性,同時也不十分可靠。數(shù)據(jù)報是無連接的,由UDP(用戶數(shù)據(jù)報協(xié)議)支持,幾乎是直接建立在IP層上,傳輸速度比較快。UDP即用戶數(shù)據(jù)報協(xié)議,它是一種無連接協(xié)議,因此不需要像TCP那樣通過三次握手來建立一個連接。同時,一個UDP應用可同時作為應用的客戶端或服務器端。由于UDP協(xié)議并不需要建立一個明確的連接,因此建立UDP應用要比建立TCP應用簡單得多。它比TCP協(xié)議更為高效,也能更好地解決實時性的問題。使用UDP協(xié)議的流程圖如圖4.3所示。

  

使用UDP協(xié)議的流程圖

 

  其中Socket信息數(shù)據(jù)結(jié)構(gòu)程序如下:

  struct sockaddr

  {

  unsigned short sa_family; /*地址族*/

  char sa_data[14]; /*14字節(jié)的協(xié)議地址,包含該socket的IP地址和端口號。*/

  };

  struct sockaddr_in

  {

  short int sa_family; /*地址族*/

  unsigned short int sin_port; /*端口號*/

  struct in_addr sin_addr; /*IP地址*/

  unsigned char sin_zero[8]; /*填充0以保持與struct sockaddr同樣大小*/

  };

  中為網(wǎng)絡通訊提供了基于TCP/UDP的通訊函數(shù)供用戶調(diào)用。這樣用戶可直接調(diào)用TCP模塊中已發(fā)布的TCP VI及相關的子VI來完成流程的編寫,而無需過多考慮網(wǎng)絡的底層實現(xiàn)。在設計上采用C/S(客戶端/服務器)通信模式,VI程序分為兩部分:處理主機工作在Server模式,完成數(shù)據(jù)接收,并提供數(shù)據(jù)的相關處理;數(shù)據(jù)點計算機工作于Client模式,實現(xiàn)數(shù)據(jù)傳送。TCP傳輸數(shù)據(jù)過程如下:首先由發(fā)送端發(fā)送連接請求,接收端偵聽到請求后回復并建立連接,然后開始傳輸,數(shù)據(jù)傳輸完成后關閉連接,傳輸過程結(jié)束。

  (3)利用TCP協(xié)議通信實例

  以下通過C/S(客戶端/服務器)通信模式實現(xiàn)的數(shù)據(jù)傳輸模式。

  在服務器端,用“TCP Create Listener”節(jié)點創(chuàng)建偵聽,“TCP Wait on Listener”節(jié)點等待客戶機連接,通過循環(huán)產(chǎn)生100個正弦信號數(shù)據(jù),用兩個“TCP Write”節(jié)點來發(fā)送數(shù)據(jù),第一個節(jié)點用來發(fā)送波形數(shù)據(jù)的長度,第二個節(jié)點發(fā)送波形數(shù)據(jù),最后,用“TCP Close Connection”節(jié)點結(jié)束連接。程序框圖如圖4.4所示:

  

程序框圖

 

  在客戶端,用“TCP Open Connection”節(jié)點打開TCP連接,用兩個“TCP Read”節(jié)點讀取數(shù)據(jù),第一個節(jié)點接收波形長度作為第二個節(jié)點的輸入,第二個節(jié)點接收波形數(shù)據(jù),最后,用“TCP Close Connection”節(jié)點結(jié)束連接。程序框圖如圖4.5所示:

  

 

  運行TCP客戶端程序,顯示結(jié)果如下圖4.6所示。

  

運行TCP客戶端程序,顯示結(jié)果

tcp/ip相關文章:tcp/ip是什么


數(shù)字通信相關文章:數(shù)字通信原理


通信相關文章:通信原理




評論


相關推薦

技術專區(qū)

關閉