干貨-串口服務(wù)器定義、原理、國(guó)家標(biāo)準(zhǔn)
瀏覽次數(shù):發(fā)布時(shí)間:2022-06-27
串口服務(wù)器是為RS-232/485/422到TCP/IP 之間完成數(shù)據(jù)轉(zhuǎn)換的通訊接口轉(zhuǎn)換器。提供RS-232/485/422終端串口與TCP/IP網(wǎng)絡(luò)的數(shù)據(jù)雙向透明傳輸,提供串口轉(zhuǎn)網(wǎng)絡(luò)功能,RS-232/485/422轉(zhuǎn)網(wǎng)絡(luò)的解決方案。可以讓串口設(shè)備立即聯(lián)接網(wǎng)絡(luò)。
隨著Internet的廣泛普及,“讓全部設(shè)備連接網(wǎng)絡(luò)”已經(jīng)成為全世界企業(yè)的共識(shí)。為了能跟上網(wǎng)絡(luò)自動(dòng)化的潮流,不至于失去競(jìng)爭(zhēng)優(yōu)勢(shì),必須建立高品位的數(shù)據(jù)采集、生產(chǎn)監(jiān)控、即時(shí)成本管理的聯(lián)網(wǎng)系統(tǒng)。利用基于TCP/IP的串口數(shù)據(jù)流傳輸?shù)膶?shí)現(xiàn)來(lái)控制管理的設(shè)備硬件,無(wú)需投資大量的人力、物力來(lái)進(jìn)行管理、更換或者升級(jí)。
串口服務(wù)器就使得基于TCP/IP的串口數(shù)據(jù)流傳輸成為了可能,它能將多個(gè)串口設(shè)備連接并能將串口數(shù)據(jù)流進(jìn)行選擇和處理,把現(xiàn)有的RS 232接口的數(shù)據(jù)轉(zhuǎn)化成IP端口的數(shù)據(jù),然后進(jìn)行IP化的管理,IP化的數(shù)據(jù)存取,這樣就能將傳統(tǒng)的串行數(shù)據(jù)送上流行的IP通道,而無(wú)需過(guò)早淘汰原有的設(shè)備,從而提高了現(xiàn)有設(shè)備的利用率,節(jié)約了投資,還可在既有的網(wǎng)絡(luò)基礎(chǔ)上簡(jiǎn)化布線復(fù)雜度。
串口服務(wù)器完成的是一個(gè)面向連接的RS 232鏈路和面向無(wú)連接以太網(wǎng)之間的通信數(shù)據(jù)的存儲(chǔ)控制,系統(tǒng)對(duì)各種數(shù)據(jù)進(jìn)行處理,處理來(lái)自串口設(shè)備的串口數(shù)據(jù)流,并進(jìn)行格式轉(zhuǎn)換,使之成為可以在以太網(wǎng)中傳播的數(shù)據(jù)幀;對(duì)來(lái)自以太網(wǎng)的數(shù)據(jù)幀進(jìn)行判斷,并轉(zhuǎn)換成串行數(shù)據(jù)送達(dá)響應(yīng)的串口設(shè)備。
二、串口服務(wù)器的特點(diǎn):
內(nèi)部集成 ARP,IP,TCP ,HTTP,ICMP,SOCK5,UDP,DNS等協(xié)議。RS-485/422轉(zhuǎn)換提供數(shù)據(jù)自動(dòng)控制。RS-232/422/485三合一串行接口 , 300-230.4KBPS波特率。支持動(dòng)態(tài)IP(DHCP)和靜態(tài)IP,支持網(wǎng)關(guān)和代理服務(wù)器,可以通過(guò)Internet傳輸數(shù)據(jù)。提供數(shù)據(jù)雙向透明傳輸,用戶不需要對(duì)原有系統(tǒng)做任何修改。所有串口內(nèi)置600W防雷 。10/100M以太網(wǎng)、自動(dòng)偵測(cè)直連或交叉線??梢酝瑫r(shí)支持多個(gè)連接。
三、串口服務(wù)器工作方式及通訊模式:
工作方式:
1.服務(wù)器方式:在該工作方式下,串口聯(lián)網(wǎng)服務(wù)器作為TCP服務(wù)器端, 轉(zhuǎn)換器在指定的TCP端口上監(jiān)聽(tīng)平臺(tái)程序的連接請(qǐng)求,該方式比較適合于一個(gè)轉(zhuǎn)換器與多個(gè)平臺(tái)程序建立連接(一個(gè)轉(zhuǎn)換器不能同時(shí)與多個(gè)平臺(tái)程序建立連接)。
2.客戶端方式:在該工作方式下,串口聯(lián)網(wǎng)服務(wù)器 作為 TCP 客戶端,轉(zhuǎn)換器上電時(shí)主動(dòng)向平臺(tái)程序請(qǐng)求連接,該方式比較適合于多個(gè)轉(zhuǎn)換器同時(shí)向一個(gè)平臺(tái)程序建立連接。
通訊模式:
1.點(diǎn)對(duì)點(diǎn)通訊模式:該模式下,轉(zhuǎn)換器成對(duì)的使用,一個(gè)作為服務(wù)器端,一個(gè)作為客戶端,兩者之間建立連接,實(shí)現(xiàn)數(shù)據(jù)的雙向透明傳輸。該模式適用于將兩個(gè)串口設(shè)備之間的總線連接改造為 TCP/IP 網(wǎng)絡(luò)連接。
2.使用虛擬串口通訊模式:該模式下,一個(gè)或者多個(gè)轉(zhuǎn)換器與一臺(tái)電腦建立連接,實(shí)現(xiàn)數(shù)據(jù)的雙向透明傳輸。由電腦上的虛擬串口軟件管理下面的轉(zhuǎn)換器,可以實(shí)現(xiàn)一個(gè)虛擬串口對(duì)應(yīng)多個(gè)轉(zhuǎn)換器, N 個(gè)虛擬串口對(duì)應(yīng) M 個(gè)轉(zhuǎn)換器( N
3.基于網(wǎng)絡(luò)通訊模式: 該模式下,電腦上的應(yīng)用程序基于SOCKET 協(xié)議編寫(xiě)了通訊程序,在轉(zhuǎn)換器設(shè)置上直接選擇支持 SOCKET 協(xié)議即可。
四、串口服務(wù)器應(yīng)用領(lǐng)域:
它主要應(yīng)用在門禁系統(tǒng)、考勤系統(tǒng)、售飯系統(tǒng)、 POS 系統(tǒng)、樓宇自控系統(tǒng)、自助銀行系統(tǒng)電信機(jī)房監(jiān)控,電力監(jiān)控等。
五、硬件系統(tǒng)及其模塊:
1.硬件系統(tǒng)
硬件系統(tǒng)是實(shí)現(xiàn)整個(gè)系統(tǒng)功能的基礎(chǔ),是整個(gè)設(shè)計(jì)實(shí)現(xiàn)的關(guān)鍵。
整個(gè)串口服務(wù)器的關(guān)鍵在于串口數(shù)據(jù)包與TCP/IP數(shù)據(jù)報(bào)之間的轉(zhuǎn)換以及雙方數(shù)據(jù)因?yàn)樗俾什煌嬖诘乃俾势ヅ鋯?wèn)題,在對(duì)串口服務(wù)器的實(shí)現(xiàn)過(guò)程中,也必須著重考慮所做的設(shè)計(jì)和所選擇的器件是否能夠完成這些功能。
(1)硬件系統(tǒng)組成模塊
在制定設(shè)計(jì)方案和選定器件時(shí)遇到的技術(shù)難點(diǎn)是如何利用處理器對(duì)串口數(shù)據(jù)信息進(jìn)行TCP/IP協(xié)議處理,使之變成可以在互聯(lián)網(wǎng)上傳輸?shù)腎P數(shù)據(jù)包。目前解決這個(gè)問(wèn)題很多時(shí)候采用32位MCU + RTOS方案,這種方案是采用32位高檔單片機(jī),在RTOS(實(shí)時(shí)多任務(wù)操作系統(tǒng))的平臺(tái)上進(jìn)行軟件開(kāi)發(fā),在嵌入式系統(tǒng)中實(shí)現(xiàn)TCP/IP的協(xié)議處理。它的缺點(diǎn)是:?jiǎn)纹瑱C(jī)價(jià)格較高,開(kāi)發(fā)周期較長(zhǎng);需要購(gòu)買昂貴的RTOS開(kāi)發(fā)軟件,對(duì)開(kāi)發(fā)人員的開(kāi)發(fā)能力要求較高。
借鑒上述方案的優(yōu)缺點(diǎn),我們決定把串口服務(wù)器的硬件部分分為幾個(gè)模塊設(shè)計(jì),這就是主處理模塊、串口數(shù)據(jù)處理模塊和以太網(wǎng)接口及控制模塊等幾大模塊來(lái)共同完成串口服務(wù)器的功能。
在器件的選擇上,選用Intel公司的801086芯片作為主處理模塊的處理器芯片,它是一種非常適合于嵌入式應(yīng)用的高性能、高集成度的16位微處理器,功耗低。由于考慮到串口數(shù)據(jù)速率較低而以太網(wǎng)的數(shù)據(jù)傳輸速率高所造成的兩邊速率不匹配的問(wèn)題,我們決定采用符合總線規(guī)范的大容量存儲(chǔ)器來(lái)作為數(shù)據(jù)存儲(chǔ)器;由于主處理模塊還涉及到數(shù)據(jù)線/地址線復(fù)用、串并轉(zhuǎn)換、器件中斷信號(hào)譯碼、時(shí)鐘信號(hào)生成、控制信號(hào)接入等功能,若是選用不同的器件來(lái)完成,勢(shì)必會(huì)造成許多諸如時(shí)延不均等問(wèn)題,我們選用了一片大容量的高性能可編程邏輯器件來(lái)完成上述所提到的功能,這樣的優(yōu)點(diǎn)在于,我們保證了穩(wěn)定性和高可靠性,并且可編程邏輯器件的可編程功能使得對(duì)于信號(hào)的處理的空間更大,且具有升級(jí)的優(yōu)勢(shì)。
以太網(wǎng)接口及控制模塊在串口服務(wù)器的硬件里面起著很重要的作用,它所處理的是來(lái)自于以太網(wǎng)的IP數(shù)據(jù)包,考慮到通用性的原則,我們采用一片以太網(wǎng)控制芯片來(lái)完成這些功能,并在主處理模塊中添加了一片AT24C01來(lái)存儲(chǔ)以太網(wǎng)控制芯片狀態(tài)。通過(guò)主處理模塊對(duì)于以太網(wǎng)控制芯片數(shù)據(jù)及寄存器的讀/寫(xiě),我們可以完成對(duì)IP數(shù)據(jù)包的分析、解/壓包的工作。
串口數(shù)據(jù)處理模塊主要完成的是對(duì)于串口數(shù)據(jù)流的電平轉(zhuǎn)換和數(shù)據(jù)格式的處理,判斷串行數(shù)據(jù)的起始位及停止位,完成對(duì)數(shù)據(jù)和校驗(yàn)位的提取。一般的設(shè)計(jì)采用的是MAX232和一片UART的設(shè)計(jì)思想,這里我們也是遵從這種設(shè)計(jì)理念,不過(guò)我們采用的是集成了MAX232+UART功能的芯片,小尺寸、低成本、低功耗,而且采用與SPITM/QS-PITM/MICROWIRETM兼容的串行接口,節(jié)省線路板尺寸與微控制器的I/O端口。
這種模塊化的方案的優(yōu)點(diǎn)在于:采用高速度的16位微控制器,外圍器件少,系統(tǒng)成本低;并且采用Intel公司的開(kāi)發(fā)平臺(tái),可以大幅度地縮短開(kāi)發(fā)周期并降低開(kāi)發(fā)成本。
(2)硬件工作流程及應(yīng)用架構(gòu)
主處理器首先初始化網(wǎng)絡(luò)及串口設(shè)備,當(dāng)有數(shù)據(jù)從以太網(wǎng)傳過(guò)來(lái),處理器對(duì)數(shù)據(jù)報(bào)進(jìn)行分析,如果是ARP(物理地址解析)數(shù)據(jù)包,則程序轉(zhuǎn)入ARP處理程序;如果是IP數(shù)據(jù)包且傳輸層使用UDP,端口正確,則認(rèn)為數(shù)據(jù)報(bào)正確,數(shù)據(jù)解包后,將數(shù)據(jù)部分通過(guò)端口所對(duì)應(yīng)的串口輸出。反之,如果從串口收到數(shù)據(jù),則將數(shù)據(jù)按照UDP格式打包,送入以太網(wǎng)控制芯片,由其將數(shù)據(jù)輸出到以太網(wǎng)中??梢灾?,主處理模塊主要處理TCP/IP的網(wǎng)絡(luò)層和傳輸層,鏈路層部分由以太網(wǎng)控制芯片完成。應(yīng)用層交付軟件系統(tǒng)來(lái)處理,用戶可以根據(jù)需求對(duì)收到的數(shù)據(jù)進(jìn)行處理。
2.硬件系統(tǒng)模塊
根據(jù)硬件系統(tǒng)的具體結(jié)構(gòu)和不同功能,我們可以將硬件系統(tǒng)劃分為下述的幾大模塊。
(1)主處理器模塊
該模塊是串口服務(wù)器的核心部分,主要由主處理器、可編程邏輯器件、數(shù)據(jù)及程序存儲(chǔ)器等器件構(gòu)成。
主處理模塊完成的功能主要有:在串口數(shù)據(jù)和以太網(wǎng)IP數(shù)據(jù)之間建立數(shù)據(jù)鏈路;通過(guò)對(duì)以太網(wǎng)控制芯片的控制讀寫(xiě)來(lái)實(shí)現(xiàn)對(duì)IP數(shù)據(jù)包的接收與發(fā)送;判別串行數(shù)據(jù)流的格式,完成對(duì)串口設(shè)備的選擇以及對(duì)串行數(shù)據(jù)流格式的指定;控制串口數(shù)據(jù)流與IP數(shù)據(jù)包之間的速率控制,對(duì)數(shù)據(jù)進(jìn)行緩沖處理;對(duì)UART和以太網(wǎng)控制芯片的寄存器進(jìn)行讀寫(xiě)操作,并存儲(chǔ)轉(zhuǎn)發(fā)器件狀態(tài);完成16位總線數(shù)據(jù)的串并行轉(zhuǎn)換;完成總線地址鎖存功能;完成對(duì)各個(gè)串口以及各個(gè)存儲(chǔ)器件的片選功能;完成對(duì)各個(gè)串口的中斷口的狀態(tài)判別等功能。
(2)以太網(wǎng)接口及控制模塊
這個(gè)模塊主要由以太網(wǎng)接口部分和以太網(wǎng)控制部分構(gòu)成。
以太網(wǎng)接口部分完成的是
串口服務(wù)器與以太網(wǎng)接口電路的功能,控制器對(duì)所有模塊均有控制作用,使整個(gè)接口電路能協(xié)調(diào)地配合后續(xù)電路完成以太網(wǎng)的收發(fā)功能。
以太網(wǎng)控制部分由收端和發(fā)端組成,在他們之間還有以太網(wǎng)狀態(tài)檢測(cè)和控制單元,以及收發(fā)協(xié)調(diào)控制器,見(jiàn)圖5。由于以太網(wǎng)是半雙工工作的,所以這個(gè)部分必須隨時(shí)地監(jiān)視以太網(wǎng)的狀態(tài),并且要根據(jù)需要對(duì)以太網(wǎng)進(jìn)行控制,同時(shí)還要協(xié)調(diào)好內(nèi)部收發(fā)端電路的工作狀態(tài)。以太網(wǎng)檢測(cè)單元和收發(fā)協(xié)調(diào)控制器就是完成這樣的功能的。以太網(wǎng)狀態(tài)檢測(cè)單元與以太網(wǎng)接口的控制器接口,將接口的狀態(tài)送到收發(fā)協(xié)調(diào)控制器,同時(shí)將協(xié)調(diào)控制器的控制信號(hào)進(jìn)行處理,并送到以太網(wǎng)接口的控制器,以控制接口的狀態(tài)。
在收端,接收到的串行數(shù)據(jù)流信號(hào)通過(guò)主處理模塊進(jìn)行串并轉(zhuǎn)換和編碼,以太網(wǎng)控制單元控制各部分協(xié)調(diào),將產(chǎn)生的地址、數(shù)據(jù)、寫(xiě)信號(hào)送到RAM讀寫(xiě)控制單元進(jìn)行處理。相應(yīng)的,發(fā)端的工作流程和收端相反。