基于TCP/IP的浮標網(wǎng)絡(luò )通信系統設計

發(fā)布時(shí)間:2010-4-22 17:07    發(fā)布者:李寬
關(guān)鍵詞: TCP , 浮標 , 設計 , 通信系統 , 網(wǎng)絡(luò )
引言

水聲信道匹配基礎研究是建立在水聲學(xué)、海洋物理聲學(xué)以及現代信號處理技術(shù)基礎上的新興研究領(lǐng)域。為滿(mǎn)足研究需要而構建的局部海域水聲信道測量平臺(圖 1),能夠實(shí)現環(huán)境信息和信道參量的系統采集和實(shí)時(shí)傳遞,對信道寬容匹配方法的可行性進(jìn)行檢驗。



浮標系統以它的靈活、高效、自身干擾小等特點(diǎn),在水聲信道研究中發(fā)揮著(zhù)其它設備不可替代的作用,F有的浮標系統大多采用直接序列擴頻電臺直接進(jìn)行水面通訊,這種方式往往不使用網(wǎng)絡(luò )協(xié)議或使用自定義的網(wǎng)絡(luò )協(xié)議。而采用無(wú)線(xiàn)網(wǎng)橋進(jìn)行水面通訊,以TCP/IP作為網(wǎng)絡(luò )協(xié)議,將大大增強浮標系統網(wǎng)絡(luò )化。同時(shí)由于 TCP/IP協(xié)議是目前最為成熟的網(wǎng)絡(luò )協(xié)議之一,浮標網(wǎng)絡(luò )的穩定性、可擴展性都得以提高,甚至通過(guò)互聯(lián)網(wǎng)直接控制浮標系統也成為可能。因此,本文基于 TCP/IP網(wǎng)絡(luò )協(xié)議設計并實(shí)現了浮標網(wǎng)絡(luò )通信系統。

1、浮標網(wǎng)絡(luò )通訊系統設計

1.1 基于TCP/IP網(wǎng)絡(luò )協(xié)議的浮標通訊系統

水聲信道匹配基礎研究所使用的浮標具有水下傳感器單元、信號處理單元及水面通訊單元。其中水面通訊單元負責浮標與岸基控制站、測量船及其它浮標的信息交換,要求具備網(wǎng)絡(luò )通訊功能。

浮標網(wǎng)絡(luò )通訊系統由無(wú)線(xiàn)網(wǎng)橋、TCP/IP協(xié)議控制單元及微控制器(MCU)組成,如圖 2所示。無(wú)線(xiàn)網(wǎng)橋采用較為成熟網(wǎng)橋產(chǎn)品,如BreezeNET無(wú)線(xiàn)網(wǎng)橋,其功能是通過(guò)無(wú)線(xiàn)網(wǎng)路傳輸TCP/IP數據包。MCU負責對TCP/IP協(xié)議棧的進(jìn)行設置,并寫(xiě)入待發(fā)數據及讀出接收數據。



TCP/IP協(xié)議棧的實(shí)現是浮標網(wǎng)絡(luò )通訊系統的核心部分。其實(shí)現方式可以采用軟件實(shí)現,但該方法一般要求處理速度較高的MCU,而且占用大量代碼空間,同時(shí)編程需要對整個(gè)TCP/IP 協(xié)議的機制和細節十分熟悉,開(kāi)發(fā)難度大。而硬件實(shí)現方式則把MCU從繁重的網(wǎng)絡(luò )協(xié)議運行工作中解放出來(lái),從而提高了系統效率。

數據或指令由無(wú)線(xiàn)網(wǎng)橋發(fā)送或接收。它通過(guò)RJ45接口經(jīng)變壓器與10Base-T通用以太網(wǎng)接口控制器RTL8201相連。RTL8201通過(guò)MII標準接口與W3100A交換數據。RTL8201從W3100A處接收以太幀,然后進(jìn)行曼徹斯特編碼,發(fā)送以太網(wǎng)幀時(shí),先在幀前端加上幀起始標志。當監聽(tīng)到網(wǎng)絡(luò )中有以太網(wǎng)幀存在時(shí),RTL8201接收模塊首先用鎖相環(huán)電路實(shí)現與物理信號同步,然后對物理信號采樣接收并送給曼徹斯特解碼功能塊,最后得到 W3100A能識別的歸“0”碼(已把幀前導碼分離),并將其通過(guò)MII接口送入網(wǎng)絡(luò )接口層模塊。發(fā)送數據時(shí),數據由MCU數據接口寫(xiě)入W3100A的發(fā)送緩沖區,通過(guò)控制各個(gè)協(xié)議層的相關(guān)控制寄存器,數據在TCP層中添加上各個(gè)控制標志等,封裝成為T(mén)CP段,實(shí)現面向連接的可靠傳輸;TCP段接著(zhù)交給 IP層進(jìn)行打包,IP層的一個(gè)重要功能是實(shí)現對TCP段的分片,以達到IP數據報能夠最大效率利用以太網(wǎng)幀的數據區的目的。完整的IP數據報繼續傳給網(wǎng)絡(luò )接口層,LLC子層使用物理層提供的不可靠的比特鏈路,實(shí)現可靠的分組傳輸服務(wù),MAC子層為數據分組添加目的節點(diǎn)的物理地址,MAC實(shí)現不可靠的分組傳輸。經(jīng)過(guò)網(wǎng)絡(luò )接口層后,最終封裝成幀格式,然后再經(jīng)過(guò)MII接口送入RTL8201,在RTL8201里進(jìn)行曼徹斯特編碼并添加前導信號等。當 RTL8201監聽(tīng)到物理鏈路空閑時(shí),立即通過(guò)RJ45接口把數據幀發(fā)送到以太網(wǎng)上。接收數據時(shí)則進(jìn)行相反的操作,收發(fā)器接收以太網(wǎng)上的物理信號把前導碼分離出來(lái)并進(jìn)行曼徹斯特解碼,把結果傳送給網(wǎng)絡(luò )接口層,網(wǎng)絡(luò )接口層MAC子層檢查幀的物理目的地址是否與自己的相同,以決定是否交給LLC子層,LLC用差錯檢測位判斷分組是否正確。正確的分組被送入IP層,在IP層中檢測錯誤、拆封并進(jìn)行分片重組后送給TCP層,TCP層實(shí)現面向連接的可靠傳輸,所以 TCP層將進(jìn)行嚴格的差錯控制,再從TCP段中取出數據,然后通過(guò)數據接口傳送回MCU。物理幀經(jīng)過(guò)各個(gè)協(xié)議層進(jìn)行解包,最終把數據傳回MCU,但在各層解包時(shí)如果IP地址或數據出錯等,數據包將被丟棄,并要求重傳。如果處理的報文是ICMP、UDP 或ARP等時(shí),其大致流程是一樣的,不同報文的區別會(huì )在相應的包頭指示出來(lái),供協(xié)議識別。

1.2 TCP/IP協(xié)議棧W3100A簡(jiǎn)介

W3100A是一種TCP/IP協(xié)議棧芯片,它包含了TCP、IP Ver.4、UDP、ICMP、ARP等Internet協(xié)議和DLC、MAC以太網(wǎng)協(xié)議。其功能框圖如圖 3所示。W3100A芯片由4部分組成:微控器接口單元、網(wǎng)絡(luò )協(xié)議引擎、雙口RAM及網(wǎng)絡(luò )物理層介質(zhì)開(kāi)關(guān)接口MII(Media Independent Interface)單元。W3100A支持全雙工20Mbps的數據通信,并可同時(shí)支持4個(gè)獨立的網(wǎng)絡(luò )連接;提供16KB的數據緩沖雙口SRAM;采用 0.35μm的CMOS工藝,64引腳LQFP封裝;采用3.3V電源電壓,其I/O接口兼容了5V的數字邏輯電平,可非常方便地與MCU和DSP接口連接。



2、電路設計

該系統的主要電路由微控制器MSP430F169、網(wǎng)絡(luò )協(xié)議棧W3100A、以太網(wǎng)接口控制器RTL8201及網(wǎng)絡(luò )接口構成。W3100A與 MSP430F169的連接可采用I2C接口模式或直接總線(xiàn)模式。采用I2C接口模式的優(yōu)點(diǎn)是電路簡(jiǎn)潔,占用端口資源少。但I2C接口的傳輸速度會(huì )受到一定限制,所以當要求更高傳輸速度時(shí),可采用直接總線(xiàn)接口方式,如圖 4所示。W3100A提供MII接口與RTL8201相連,其中引腳RX_CLK、RXDV、RXD[0:3]以及COL用于數據的接收,而 TX_CLK、TXE、TXD[0:3]用于數據的發(fā)送。



在接口的實(shí)現中,以太網(wǎng)變壓器是不可缺少的。在差分發(fā)送引腳 (TX+/TX-)上,需要一個(gè)專(zhuān)用于10BASE-T 操作的脈沖變壓器,將要發(fā)送的數據發(fā)送到網(wǎng)絡(luò )上。網(wǎng)絡(luò )傳來(lái)的數據也經(jīng)過(guò)變壓器,由差分接收引腳(RX+/RX-)接收。以太網(wǎng)變壓器的作用主要是將外部線(xiàn)路與RTL8201隔開(kāi),防止干擾和燒壞元器件,實(shí)現帶電的插拔功能。本設計采用了PULES的J0011型變壓器,其內部結構如圖 5所示。該變壓器集成了RJ-45接頭,在簡(jiǎn)化了連線(xiàn)的同時(shí)也提高了高頻信號傳輸的可靠性。



同時(shí)在設計復位電路時(shí)應注意,由于W3100A的復位引腳為高電平有效,而MSP430F169和RTL8021的復位引腳為低電平有效,所以在設計復位電路時(shí)要求同時(shí)產(chǎn)生高、低兩路復位信號,如圖 6所示。



3、軟件設計

3.1 MSP430總線(xiàn)讀寫(xiě)

W3100A有專(zhuān)門(mén)的微控制器接口與MCU相連,其總線(xiàn)操作類(lèi)似于MCU對外部存儲器的讀寫(xiě)。但MSP430微控制器沒(méi)有專(zhuān)門(mén)的外部擴展總線(xiàn)接口,所以這里采用通用端口模擬外部擴展總線(xiàn)端口。對于W3100A的訪(fǎng)問(wèn)要依照其讀寫(xiě)時(shí)序進(jìn)行操作,如圖 7、圖 8所示,可將讀寫(xiě)程序作為函數在主程序中調用。



下面列舉了部分讀總線(xiàn)程序:



寫(xiě)總線(xiàn)過(guò)程與讀總線(xiàn)類(lèi)似,不同的是將P4端口設為輸出狀態(tài),并操作寫(xiě)有效(/WE)。要注意的是/WE恢復到高電平時(shí)的上升沿觸發(fā)數據寫(xiě)入。

3.2 網(wǎng)絡(luò )傳輸控制

通過(guò)Wiznet公司為W3100A專(zhuān)門(mén)提供的Socket API函數,可使網(wǎng)絡(luò )通訊的軟件設計更加方便。首先初始化W3100A的網(wǎng)絡(luò )設置,即在相應的寄存器中設置默認網(wǎng)關(guān)、子網(wǎng)掩碼、本機物理地址和IP地址,然后建立Socket連接以實(shí)現通訊。整個(gè)過(guò)程與Windows Socket編程十分類(lèi)似。

建立TCP連接的流程如圖 9所示。首先完成芯片的TCP/IP初始化,設置相應通道如0通道的協(xié)議選擇寄存器C0_SPOR為0X01;選擇TCP協(xié)議,執行通道0命令寄存器 C0_CR中的sock_init命令位, 同時(shí)將C0_TW_PR、C0_TR_PR及C0_TA_PR置成同一值;然后執行C0_CR的connect和listen命令位,此時(shí)TCP連接就建立起來(lái)。



W3100A內部的16KB的雙口RAM作為數據發(fā)送和接收緩沖。其中0x4000~0x5FFF的地址空間是發(fā)送數據緩沖區,0x6000~0x7FFF的地址空間是接收數據緩沖區。MCU程序將要發(fā)送的數據寫(xiě)入發(fā)送緩沖區,并從接收緩沖區讀出收到的數據。當成批的數據發(fā)送時(shí),一定要先查詢(xún)1次發(fā)送數據指針,從而計算出可以利用的發(fā)送緩沖區的大小。圖 10示意了TCP數據發(fā)送的程序流程。數據接收的過(guò)程與發(fā)送過(guò)程類(lèi)似,在此不再贅述。



4、測試及分析

功能測試的關(guān)鍵在于對系統的可用性及穩定性進(jìn)行實(shí)驗。為此,建立了一個(gè)簡(jiǎn)化通訊網(wǎng)絡(luò ),采用PC機作為通訊網(wǎng)絡(luò )的一個(gè)終端,浮標作為另一終端。通過(guò)測試兩者間的通訊情況來(lái)實(shí)驗本系統功能。

首先,測試網(wǎng)絡(luò )連接情況。作為必要的IP實(shí)驗,由PC機將PING命令發(fā)送給浮標,PC機顯示結果如圖 11所示。



在局域網(wǎng)暢通的情況下,理論上0字節的PING請求平均響應時(shí)間為1ms,實(shí)驗結果驗證了網(wǎng)絡(luò )連接的正常。

通過(guò)大量轉發(fā)數據的方法測試系統穩定性。由PC機發(fā)送數據至浮標,浮標將數據直接轉發(fā)回PC機,PC機比較發(fā)出數據與接收數據,以判斷誤碼情況。室溫條件下,通訊距離100米,進(jìn)行三組各持續10小時(shí)的收發(fā)實(shí)驗,無(wú)丟包現象,誤碼率<10-9,符合設計要求。要指出的是,由于海況及通訊距離的不同,系統的傳輸誤碼率將有所不同,但在多數情況下該系統作為指令收發(fā)的通道是完全可靠的。

5、結論

TCP/IP協(xié)議在浮標系統中的應用極大的增強了浮標網(wǎng)絡(luò )的穩定性及可擴展性。本設計采用MSP430微控制器及網(wǎng)絡(luò )協(xié)議棧W3100A很好地實(shí)現了浮標系統的低功耗網(wǎng)絡(luò )通訊系統,為水聲信道匹配基礎研究提供了理想的網(wǎng)絡(luò )通訊保障。同時(shí)本設計也可以嵌入到其它設備中,如野外測量?jì)x器、車(chē)載系統等,為更多的嵌入式系統提供網(wǎng)絡(luò )化服務(wù),具有非常廣闊的應有前景。

參考文獻

   1. 劉兼唐.趙敏 以太網(wǎng)轉換接口設計 [期刊論文] -電子測量技術(shù)2006(3)
   2. 劉薊銘.朱杰.許智斌 FPGA在 TCP/IP實(shí)現中的應用 [期刊論文] -電子測量技術(shù)2006(2)
   3. 李啟虎 數字式聲納設計原理 2002
   4. TANENBAUM A S Computer Network 1996
   5. 盧偉國.楊本強 嵌入式 WEB傳感器的網(wǎng)絡(luò )化接口設計 [期刊論文] -電子技術(shù)應用2004(2)
   6. 李昆華 基于TCP/IP協(xié)議的網(wǎng)絡(luò )圖象監控系統
   7. Texas Instruments MSP430x15x,MSP430x16x,MSP430x161x mied signal microcontroller 2005
   8. WIZnet Technical Datasheet of W3100A v1.34 2005

作者:張志博、孫長(cháng)瑜 中國科學(xué)院聲學(xué)研究所
來(lái)源:電子測量技術(shù) 2008 31(2)
本文地址:http://selenalain.com/thread-10726-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)在線(xiàn)工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页