基于linux 的多功能網(wǎng)關(guān)的設(shè)計-設(shè)計應(yīng)用_第1頁
基于linux 的多功能網(wǎng)關(guān)的設(shè)計-設(shè)計應(yīng)用_第2頁
基于linux 的多功能網(wǎng)關(guān)的設(shè)計-設(shè)計應(yīng)用_第3頁
基于linux 的多功能網(wǎng)關(guān)的設(shè)計-設(shè)計應(yīng)用_第4頁
基于linux 的多功能網(wǎng)關(guān)的設(shè)計-設(shè)計應(yīng)用_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

精品文檔-下載后可編輯基于linux的多功能網(wǎng)關(guān)的設(shè)計-設(shè)計應(yīng)用摘要:深入研究了MODBUSRTU協(xié)議和MODBUSTCP協(xié)議,以UC7402-LX為開發(fā)平臺,設(shè)計了一款linux多功能網(wǎng)關(guān),用于解決工業(yè)以太網(wǎng)環(huán)境下串口通信設(shè)備的“信息孤島”問題。

1引言

隨著世界范圍內(nèi)網(wǎng)絡(luò)和信息技術(shù)的日趨成熟,在工業(yè)通信和自動化應(yīng)用中日益采用以太網(wǎng)和TCP/IP協(xié)議作為主要的通信接口和手段,向網(wǎng)絡(luò)化、標(biāo)準(zhǔn)化、開放性方向發(fā)展將是各種控制系統(tǒng)技術(shù)發(fā)展的主要潮流。然而,采用串口進行通信的現(xiàn)場設(shè)備仍然大量存在,且必將在相當(dāng)長的一段時間內(nèi)存在。因此,在串口設(shè)備和工業(yè)以太網(wǎng)之間就需要有一個橋梁,來消除工業(yè)現(xiàn)場中的“信息孤島”。

Modbus/TCP是Modbus的延伸,它基于以太網(wǎng)和標(biāo)準(zhǔn)TCP/IP協(xié)議,直接應(yīng)用第四層。它定義了一個結(jié)構(gòu)簡單的、開放和廣泛應(yīng)用的傳輸協(xié)議,用于主從式通信。ModbusTCP/IP基本上用簡單方式將Modbus幀嵌入TCP幀,是一種面向連接的傳送,它需要響應(yīng)。在TCP幀中使用開放的Modbus提供了一種系統(tǒng)規(guī)模可伸縮的方案,由10個節(jié)點到100個網(wǎng)絡(luò)節(jié)點。ModbusTCP/IP在工業(yè)現(xiàn)場得到了廣泛的應(yīng)用,是目前工業(yè)以太網(wǎng)通信的事實上的標(biāo)準(zhǔn)。

本文以MOXA的嵌入式工控機UC7402-LX為平臺,在深入研究MODBUS通信協(xié)議的基礎(chǔ)上,設(shè)計了一款多功能網(wǎng)關(guān),既可以實現(xiàn)MODBUS/TCP與MODBUS/RTU的雙向轉(zhuǎn)換,同時也可以實現(xiàn)MODBUS/TCP與自定義串口通信協(xié)議的雙向轉(zhuǎn)換。

2硬件平臺簡介

MOXAUC7402-LX采用IntelXscaleIXP-422266Mhz處理器,內(nèi)嵌Apache網(wǎng)頁服務(wù)器支持PHP和XML,低功耗和無風(fēng)扇的設(shè)計使其結(jié)構(gòu)緊湊,非常適合在工業(yè)環(huán)境當(dāng)中使用。MOXAUC7402-LX配備有2個10/100Mbps網(wǎng)口和8個可通過軟件設(shè)置的RS-232/485/422串口,并預(yù)裝有l(wèi)inux系統(tǒng)。

3MODBUS協(xié)議

MODBUS是MODICNO公司倡導(dǎo)的一種通信協(xié)議,經(jīng)過許多公司的實際應(yīng)用,逐漸被認可,成為一種應(yīng)用于工業(yè)控制器上的標(biāo)準(zhǔn)通信協(xié)議,由于其功能比較完善而且協(xié)議開放,因此,被廣泛應(yīng)用于工業(yè)現(xiàn)場,在微機化測量設(shè)備之間實現(xiàn)雙向串行多節(jié)點數(shù)字通信。它連接單個分散的測量控制設(shè)備,使之可以相互溝通信息、共同完成自控任務(wù)的網(wǎng)絡(luò)系統(tǒng)與控制系統(tǒng),具有分散控制、使用簡單、簡化系統(tǒng)結(jié)構(gòu)、數(shù)據(jù)易于處理、節(jié)約硬件設(shè)備、易于安裝和維護等優(yōu)點。

3.1MODBUSRTU

MODBUS有兩種串行傳輸模式,即RTU模式和ASCII模式。RTU模式以十六進制傳送數(shù)據(jù),每個8bit字節(jié)包含兩個4bit的十六進制字符。而ASCII模式是將一個字節(jié)分為兩個ASCII字符發(fā)送。因而在同樣的波特率下,RTU模式比ASCII模式具有更高的吞吐率。大多數(shù)工業(yè)控制器采用RTU模式。

MODBUSRTU的報文幀和字節(jié)長度如表1所示,報文總是由起始位、設(shè)備地址、功能碼、數(shù)據(jù)域、校驗域和結(jié)束位組成。

3.2MODBUSTCP

ModbusTCP只是在TCP/IP協(xié)議的基礎(chǔ)上進一步進行了modbus報文的封裝,其數(shù)據(jù)幀如圖1所示,包含了報文頭,功能代碼和數(shù)據(jù)三部分,其中MBAP報文頭各域及所占字節(jié)長度如表2所示。

4多功能網(wǎng)關(guān)軟件設(shè)計

4.1modbustcp與modbusrtu協(xié)議轉(zhuǎn)換

由上可知,modbustcp與modbusrtu的協(xié)議轉(zhuǎn)換的即為數(shù)據(jù)幀的解封裝與封裝。Modbus初在串行鏈路上的實現(xiàn)(RS485ADU=256字節(jié))限制了ModbusPDU的長度。因此,對串行鏈路通信來說,ModbusPDU=256-服務(wù)器地址(1字節(jié))-CRC(2字節(jié))=253字節(jié)。從而:RS232/RS485ADU=253字節(jié)+服務(wù)器地址(1字節(jié))+CRC(2字節(jié))=256字節(jié)。TCPModbusADU=253字節(jié)+MBAP(7字節(jié))=260字節(jié)。如圖3所示為modbusRTU為master時的軟件流程圖,部分代碼摘錄如下:

4.2modbustcp與自定義串口協(xié)議轉(zhuǎn)換

自定義串口協(xié)議與modbusrtu類似,但由于其協(xié)議為自定義的,導(dǎo)致ADU的格式并不固定,這就需要定制該函數(shù)。本文目前只針對單一設(shè)備的情況,因此采取將串口數(shù)據(jù)幀直接作為modbustcp的PDU,而MBAP采用固定格式處理,完成了對單一串口單臺設(shè)備連接的透明處理。

5結(jié)束語

Frenic-Mini為富士的一款

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論