串列埠轉乙太網關鍵技術

2021-06-13 07:37:36 字數 2445 閱讀 5831

1.概述

串列埠轉乙太網目前可以採用串列埠轉乙太網模組來實現,變得非常簡單易用,但是在該技術中出現的一些新問題、使用誤區需要引起注意。串列埠轉乙太網並不是簡單傳輸媒介的變化,而是串列埠到tcp/ip的協議轉化。其中關係到的關鍵技術包括:tcp/ip的工作模式問題、串列埠分幀技術、9位技術。這裡詳細分析這些串列埠轉網口的技術。

2.澄清乙個概念:到底是串列埠轉乙太網還是串列埠轉tcp/ip?

串列埠一般來說就是uart,它實際只定義了資料鏈路層的規範,也就是起始位、資料位、停止位。但是在不同的物理層又分為:ttl串列埠、rs232串列埠、rs485串列埠等。 

ttl串列埠:它是mcu晶元之間進行資料通訊的串列埠,它以+5v(或者+3.3v)表示1,以gnd表示0。 

rs232串列埠:它是實現裝置之間通訊的串列埠,其主要將訊號電壓從0~5v的電壓變為±15v(實際一般為±12v)。電壓的增加,增大了資料傳輸的距離和可靠性。 

rs485串列埠:它是實現遠距離通訊的串列埠,可以實現上千公尺的資料傳輸。其主要特徵是用差模訊號(a、b兩根線之間的電壓)代替了rs232共模訊號(訊號線和gnd之間的電壓),從而能夠抵抗共模干擾,實現更遠距離的傳。 

如果按照iso的7層模型(物理層、資料鏈路層、網路層、傳輸層、會話層、表示層、應用層)來分的話,串列埠實際上只包含了物理層、資料鏈路層。而tcp/ip協議應該屬於網路層和傳輸層。所以串列埠轉tcp/ip並不準確。乙太網屬於物理層和資料鏈路層,所以串列埠轉乙太網更加準確。

由於目前在乙太網之上執行的協議多半是tcp ip協議,所以串列埠轉乙太網也可以說成是串列埠轉tcp ip。

3.串列埠轉網口關鍵技術一:tcp/ip的工作模式問題

串列埠轉乙太網,並不是簡單物理層和資料鏈路層的轉化。由於串列埠協議本身不具有網路層和傳輸層,串列埠轉乙太網,實際是將串列埠的資料作為tcp/ip的應用層資料,用tcp/ip封裝傳輸的方式。tcp/ip的應用層資料是tcp/ip所要傳送的真正有效的資料。例如使用者通過socket的recv()和send()函式接收和傳送的實際是應用層資料。這樣通過串列埠轉tcp ip使用者就可以用recv()和send()函式收發串列埠資料了。

但是tcp/ip並不只是recv()和send()這麼簡單,根據工作模式的不同,它關係到連線、關閉、監聽等,這是串列埠轉網口後需要增加處理的部分。tcp ip的工作模式可以分為:tcp服務端模式(tcp server)、tcp客戶端模式(tcp client)、udp模式。

udp模式:udp模式是基於非連線的模式,只要有資料傳送即可傳送,不需要事先連線。所以這種模式更加地接近於串列埠的通訊方式。但是udp協議無法保證資料不丟失,容易產生誤碼。

tcp模式:tcp模式採用資料可靠傳輸機制,所以可以保證資料基本不誤碼、不丟失。在tcp通訊中,必然是由通訊的兩端構成,其中一方是tcp客戶端,一方是tcp服務端。tcp客戶端和tcp服務端的概念可以用**來模擬。tcp客戶端是打**的人,而tcp服務端是接**的人。

如何選擇tcp/ip的工作模式?

tcp與udp的選擇:盡量選擇tcp模式,特別是經過internet的大資料量傳輸,udp容易誤碼和丟失。 

選擇tcp客戶端還是tcp伺服器端:請遵循以下原則: 

原則一:發起資料傳送的一方應該選擇為客戶端。例如乙個資料採集系統,採集終端應該為客戶端。這是因為當tcp連線斷開的情況下,客戶端能夠在需要傳送資料的時候主動建立連線。而tcp服務端,只能夠被動地接受連線,使得資料無法傳送出去。 

原則二:ip或者網域名稱固定的一方為伺服器端。例如在有多個資料採集終端,而只有乙個中心伺服器的情況下,中心伺服器應該為服務端。這是因為,中心伺服器的ip或網域名稱一般是固定的,而採集終端的ip是不斷增加和變化的。中心伺服器難以記住所有的採集終端的ip,所以也難以發起連線;而採集終端尋找**伺服器就比較容易。 

4.串列埠轉網口關鍵技術二:串列埠分幀技術

串列埠資料是可以連續不斷傳送的,而乙太網資料則是以資料報為單位傳送的。這樣就關係到將多長的串列埠資料打包後作為乙個乙太網資料報傳送的問題。

資料報長度:乙太網資料報最長1500多位元組,所以在串列埠轉網口**器收到1500位元組後必須將其打包傳送。使用者可以設定這個資料報長度上限。

資料報間隔:除了資料報長度作為串列埠分幀的規則外,乙個更為符合邏輯的方法是通過資料報間隔。當串列埠轉tcp ip**器發現的串列埠資料流中出現了t毫秒的空閒時間時,則認為之前收到的串列埠資料可以作為乙個乙太網資料報傳送了。這裡的t就是使用者設定的資料報間隔。

5.串列埠轉網口關鍵技術三:9位技術

乙太網資料是以位元組byte計算的每個位元組都是8位,但是串列埠資料則有可能出現9位,第9位常常用於區分是位址幀還是資料幀,1表示位址幀0表示資料幀。那麼在當串列埠轉化為乙太網之後,如何將第9位也傳送出去就成了乙個關鍵技術。

在眾多的串列埠轉網口方案中都是將第9位直接捨棄的,目前據了解上海卓嵐資訊科技的方案具有快速地適應9位的功能,其實現方法中採用了稱之為realcom的協議。由於增加了第9位,所以串列埠資料不能夠直接透明地轉化為tcp ip應用層資料,realcom 協議將串列埠資料打包之後整個作為tcp ip的應用資料傳輸。這樣可以在realcom協議的協議頭部加入該資料報的9位是1還是0的資訊,從而實現了9位傳輸技術。

高效能串列埠轉乙太網模組

wiznet高效能乙太網模組有以下幾個系列 w5500s2e 系列 w5500s2e s1,w5500s2e z1,w5500s2e r1 w7500s2e 系列 w7500s2e z1,w7500s2e r1,w7500s2e c1 高效能乙太網模組特點 w5500s2e系列 支援modbus r...

串列埠轉乙太網模組 WIZ108SR 資料手冊

wiznet出品的串列埠轉乙太網模組wiz108sr,它基於w7100全硬體tcp ip協議棧,支援rs 422 rs 485串列埠,內嵌乙太網控制模組,能高效 穩定地實現串列埠轉乙太網功能。以下為其詳細的資料手冊。緊湊尺寸的 rs422 485 串列埠 到乙太網 快速簡單的乙太網連線到串列埠裝置 ...

串列埠轉乙太網模組裝置介紹和使用說明

隨著物聯網技術的發展,生產物聯網裝置的廠家也越來越多,現在市面上生產和銷售的串列埠轉乙太網產品主要有兩種,一種是串列埠伺服器,另一種是串列埠轉乙太網模組,使用者在專案開始前,首先需要考慮的是選擇串列埠伺服器還是串列埠轉乙太網模組。1.從外觀上 串列埠伺服器是串列埠轉乙太網模組加乙個外殼,該外殼具電磁...