《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 實現基于TCP/IP的多串口轉換網關
實現基于TCP/IP的多串口轉換網關
摘要: 隨著企業規模的擴大和Internet技術的廣泛普及,全球各個領域的不同企業已經對“讓設備聯網”達成共識,而在工業控制和通信設備中,更多的卻是符合RS232標準的串行口設備。
Abstract:
Key words :

隨著企業規模的擴大和Internet技術的廣泛普及,全球各個領域的不同企業已經對“讓設備聯網”達成共識,而在工業控制和通信設備中,更多的卻是符合RS232標準的串行口設備。如何將多個串行口的數據轉發到網絡上,實現設備的遠程控制、數據的遠程傳輸便成了一個亟待解決的問題。同時,考慮到成本問題,以往設備又不可能全部淘汰,因此,本文提出一種基于TCP/IP的多串口轉換網關,可從根本上解決這一難題。

多串口轉換網關使得串口數據流到以太網數據流的傳輸成為可能。它能連接多個RS232串口設備,并將串口數據進行選擇和處理,把RS232接口的數據流轉化成以太網數據流,這樣就可以進行網絡化的數據處理,實現串行數據的網絡化。采用此種方案,無需淘汰原有串口設備,多臺設備可同時入網,既可以提高設備利用率,又節約組網費用,還可在已有的網絡基礎上簡化布線復雜度。采用串口擴展芯片


 

(1)TCP/lP協議轉換模塊

它是一個微型的以太網接入模塊,由微控制器(MCU)、網卡接口芯片、EEPROM 93C46、片外512 KBSRAM芯片IS6lLV5128以及輔助元件構成。微控制器控制網卡接口芯片進行網絡通信,實現地址解析協議(ARP)、Internet控制報文協議(ICMP)、IP協議、用戶數據報協議(UDP)等協議的解析和封包。將以太網發送緩沖區的串口幀封裝在UDP包中,并傳給IP層;同時,接收以太網數據幀并向上層層解包,分離應用層數據,然后數據的解析處理交由多串口發送模塊完成,實現RS232串口流與以太網端口流的透明轉換。


 

(2)多串口收發控制模塊


 

實現多個RS232串口數據流的收/發控制,包括微控制器、串口擴展芯片(GM8123)、MAX232等元件。微控制器控制


 

當兩組串口同時有數據請求時,首先,MCU的中斷機制判斷中斷請求的優先級,對優先級高的中斷請求優先響應。系統對優先級分配:UART0為2,UARTl為1,即MCU優先響應UART0的中斷請求。當UARTO的3個子口同時有數據請求時,通過輪詢方式,對各個子口予以響應,即按照子口號的地址由小到大進行響應。這樣,就形成了2級中斷和4個串口的多串口實現方案。


 

3.2  多串口擴展芯片——GM8123

GM8123可將一個全雙工的標準串口擴展成3個標準串口,并能通過外部引腳控制。選用該芯片是基于它的自身特點:

①采用寫控制字的方式對芯片進行控制,控制簡單;

②數據格式10位或11位可選;

③擁有3個子串口.且各子串口波特率可調(統一調節);

④兩種模式(單道模式和多道模式)可通過1根引腳控制;

⑤在多通道工作模式下,各子串口的波特率等于母串口波特率的4分頻;

⑥在多通道工作模式下,接收時地址線SRADD1~0向MCU返回接收子通道的地址,MCU接收到母串口送來的數據后,就可根據SRADDl~0狀態判斷數據是從哪一個子串口送來的,發送時先由MCU選擇子串口再向母串口發送數據;

⑦與標準串口通信格式兼容,TTL電平輸出;

⑧每位采樣16次,提高數據正確性;

⑨寬工作電壓為2.3~6.7 V。

⑩輸入地址引腳有50~80 kΩ下拉電阻,其他輸入

引腳有50~80 kΩ上拉電阻(OSCI除外)。


 

3.3各串口的特點及應用分析


 系統中兩組串口利用的資源不同,在速率上它們之間存在差異。串口COMl、COM2和COM3通過GM8123擴展微控制器的UARTO得到,適合傳輸速率較慢、數據量小的設備;COM4是微控制器的UARTl,相對于第一組串口能很好的適應傳輸速率較快的設備。
 


 

GM8123工作在多道模式,各子串口必須設置統一波特率,不適用于各串口設備工作波特率不一致、又要求同時工作的場合,這也是該芯片的不足之處。實際應用中,COM1、COM2和COM3應該連接類型、速率相同的設備。COM4的波特率可以根據需求具體配置,這樣,系統的4個串口從速率上可以形成兩種應用方案:一是4個串口配置相同波特率;二是每l組配置1個波特率值。
 

綜上所述,系統提供了由2組4個串口、兩級優先級控制、2種波特率配置方案構成的多串口實現方法。


 

4  工作原理

4.1  幀的統一化 

系統4個串口源的數據要作為以太網幀的一部分,為了向設備提供透明的接口和區分數據源,需要制定統一的幀格式。幀格式如圖2所示,其中串口號字段用來區分數據源;幀頭、幀尾作為一個串口幀的起始分界(可自定義);數據部分是來自串口的原始數據流。同樣,網口發送數據也要有一致的幀格式,如圖3所示。顯然,串口幀是作為UDP層的協議數據進行傳輸的。


 4.2系統數據流向分析

多串口轉換網關,實現多個串口和一個網口間的數據轉換,關鍵是多個串口數據如何送到網絡上、網絡數據又怎樣轉到多個串口。其中,串口鏈路層完成串口數據收發功能,串口網絡層作為TCP/IP應用層的一部分,實現串口幀的封裝。發送是入協議棧的過程,如圖4所示,接收是出協議棧的過程(圖略),不同之處在于對數據的收/發處理。

多串口到網口的數據轉換傳輸:串口鏈路層,接收來自測控設備的數據,交給串口網絡層,該層完成串口數據幀的封裝并放入以太網的發送緩沖區。當系統規定的UDP打包時間到或已經有4個串口數據幀時,打UDP包,并逐層下送,直到把數據送上物理介質,完成比特流的傳輸。

為了能一次傳輸盡量多的數據,系統對數據長度作了嚴格定義:串口數據幀的數據段最大長度為300個字節;網口發送幀的數據段最多允許4個串口數據幀。同時,還要滿足具體應用對實時性的要求:對每一個串口規定一個最長響應時間。時間到時,不管是否已接收:300個字節都要對串口數據進行封裝,并放人以太網發送緩沖區;同時,為了避免系統由于等待以太網發送緩沖區串口幀數達到4,而造成串口數據不能實時發送,要求在一定的時間內進行一次以太網通信,而不必等待4個串口幀到齊才打包傳輸。

這樣,系統對數據容量和時間的雙重規定,能保證具體應用對實時性的要求,并能一次傳輸盡量多的數據,降低了由于時間上的“空等”造成系統實時性差的可能性。4個串口在串口層完成的功能是相同的,僅以COMl為例,給出串口層上數據

流,如圖5所示。

圖6說明了多串口數據幀等待打包傳輸的過程。
 

網口數據到多串口的數據流向,是對以太網鏈路層的數據幀向上逐層解包的過程。如圖7所示,將收到的以太網幀,依次去掉每層的協議頭分解出應用層數據,再以0x24和OxOa為分界分離,根據串口號字段的值,將信息發送到相應的設備,完成預定的控制。

結語

本文介紹基于TCP/IP的多串口轉換網關,采用GM8123芯片增加了串行口數目,適合要求入網串口設備多的場合。借助于該多串口網關,可方便的實現串口設備和監控層的透明數據通信,實現設備的網絡化控制與信息的分布式管理,必能廣泛的應用在基于以太網的分布式測控網絡中。和它類似的還有GM8125串口擴展芯片,不過GM8125是一擴五的串口擴展芯片

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 亚洲五月综合缴情婷婷| 撅起小屁股扒开调教bl| 天天爱天天干天天| 亚洲精品第一国产综合野| 色吧亚洲欧美另类| 日本高清免费aaaaa大片视频| 国产精品国产午夜免费福利看| 亚洲AV综合色区无码一区| 菠萝视频在线完整版| 好吊妞视频在线| 亚洲国产日韩女人aaaaaa毛片在线| 麻豆国产人免费人成免费视频| 成人午夜国产内射主播| 亚洲视频在线一区二区三区| 女人隐私秘视频黄www免费| 嫩草影院在线视频| 亚洲国产成人精品无码区在线秒播| 精品视频一区二区三区免费| 在线a毛片免费视频观看| 亚洲AV日韩AV高潮无码专区| 老色鬼久久综合第一| 在线观看www成人影院| 久久精品欧美一区二区| 精品无码久久久久久久久久| 国产精品美脚玉足脚交欧美| 久久久久99精品国产片| 波多野结衣绝顶大高潮| 国产男人女人做性全过程视频| 久久99精品久久久久久| 特级按摩一级毛片| 国产成人久久精品一区二区三区| 一本色道久久88—综合亚洲精品| 永久免费看mv网站入口| 国产凌凌漆免费观看国语高清| www成人免费视频| 最新69堂国产成人精品视频| 全彩调教侵犯h本子全彩网站mj| 窝窝午夜看片七次郎青草视频| 女人与公拘交酡过程高清视频| 久青草影院在线观看国产| 精品国产一区二区三区免费|