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

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

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


 

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

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


 

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


 

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


 

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


 

3.2  多串口擴展芯片——GM8123

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

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

②數(shù)據(jù)格式10位或11位可選,;

③擁有3個子串口.且各子串口波特率可調(統(tǒng)一調節(jié)),;

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

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

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

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

⑧每位采樣16次,,提高數(shù)據(jù)正確性,;

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

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

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


 

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


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


 

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

綜上所述,,系統(tǒng)提供了由2組4個串口、兩級優(yōu)先級控制,、2種波特率配置方案構成的多串口實現(xiàn)方法,。


 

4  工作原理

4.1  幀的統(tǒng)一化 

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


 4.2系統(tǒng)數(shù)據(jù)流向分析

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

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

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

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

流,,如圖5所示。

圖6說明了多串口數(shù)據(jù)幀等待打包傳輸?shù)倪^程,。
 

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

結語

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

此內容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載,。