基于ARM9260的多模式浮標岸基數(shù)據(jù)收發(fā)平臺
摘要:針對于海洋特殊的環(huán)境,數(shù)據(jù)傳輸能力不能滿足海洋環(huán)境檢測的需求現(xiàn)狀,文中提出將多種無線傳輸方式與AT91SAM9260結(jié)合構(gòu)造多模式浮標岸基數(shù)據(jù)收發(fā)平臺的設(shè)計方案,并給出具體的通信協(xié)議。同時,用VC++語言設(shè)計了岸基數(shù)據(jù)接收服務(wù)中心軟件。本設(shè)計已成功用于海洋數(shù)據(jù)傳輸,對我國海洋環(huán)境檢測技術(shù)的發(fā)展有較大的意義。
關(guān)鍵詞:海洋通信;無線傳輸;多模;AT91SAM9260;協(xié)議
海洋占據(jù)了地球表面的三分之二以上面積,并以其豐富的資源、廣闊的空間以及對地球環(huán)境氣候的巨大調(diào)節(jié)作用,成為全球生態(tài)系統(tǒng)和人類發(fā)展的一個重要組成部分,因此,發(fā)展海洋科技,尤其是海洋高新技術(shù)已成為世界新技術(shù)革命的重要內(nèi)容。然而,由于海洋特殊的環(huán)境,使得很多在陸地上已經(jīng)運用自如且性能良好的通信技術(shù)無法在海洋上使用,ARG0是以10~14天為周期通過衛(wèi)星系統(tǒng)來傳輸?shù)?,海洋通信技術(shù)成為了限制海洋技術(shù)發(fā)展的瓶頸。本文設(shè)計的基于AT91SAM9260的多模式浮標岸基數(shù)據(jù)收發(fā)平臺將多種數(shù)據(jù)傳輸方式集合在一起,很好的滿足了海洋數(shù)據(jù)全天侯長時間傳輸?shù)男枨蟆?br />
1 系統(tǒng)概述
基于AT91SAM9260的多模式浮標岸基數(shù)據(jù)收發(fā)平臺(以下簡稱收發(fā)平臺)系統(tǒng)結(jié)構(gòu)圖如圖1所示,本系統(tǒng)提供了四種通信方式:無線通信、數(shù)傳電臺通信、GPRS通信和銥星通信。這四種通信方式由AT91SAM920配置和管理,依據(jù)一定的通信選擇策略實現(xiàn)四種通信方式的智能切換。圖中,實線為電源線、長虛線為天線連接線、點虛線為串口通信信號線。
CPU是系統(tǒng)的核心,通過COM2~COM5依次與銥星模塊、無線模塊、速傳電臺模塊及GPRS模塊相連。COM6為用戶接口,可依據(jù)協(xié)議對本系統(tǒng)進行配置及實現(xiàn)數(shù)據(jù)傳輸,COM7為調(diào)試串口,可打印系統(tǒng)的運行信息,并可實現(xiàn)系統(tǒng)深入配置。
系統(tǒng)中各種通信方式各有優(yōu)點:如果浮標是部署在近海,可以直接通過無線模塊進行通信,不但速度快而且無需資費;若距離有所增加,則可以使用無線數(shù)傳電臺,此時仍可獲得較快的傳輸速率。若無線模塊和無線數(shù)傳電臺不能滿足需求,則可以使用GPRS,此時傳輸速率有所下降,且有較小延時;若在遠海,則可以使用銥星模塊。本系統(tǒng)可以同時滿足近海和遠海數(shù)據(jù)通信的需求。
2 系統(tǒng)原理
2.1 通信方式智能切換選擇策略
本收發(fā)平臺使用的選擇策略主要是:優(yōu)先級選擇策略、信號質(zhì)量選擇策略和通信保持策略。
優(yōu)先級選擇策略:由于四種通信方式有不同的傳輸速率、不同的傳輸距離和不同的延遲,同時考慮到海洋上特殊的環(huán)境以及盡量高速率、長傳輸距離、小延遲的通信要求,所以設(shè)置無線模塊、數(shù)傳電臺模塊、GPRS模塊及銥星模塊的優(yōu)先級依次為0~3,值越小,優(yōu)先級越高,同時可以依據(jù)協(xié)議由用戶設(shè)置模塊優(yōu)先級。
信號質(zhì)量選擇策略:系統(tǒng)在運行后,會運行通信守護進程,并定時檢測各通信方式的信號質(zhì)量,從而進一步保證通信的正常進行。
通信保持策略:收發(fā)平臺會優(yōu)先使用最近使用過的通信方式,若該通信方式故障,則會嘗試盡量多的次數(shù)來完成未完成的數(shù)據(jù)傳輸。用戶可依據(jù)協(xié)議設(shè)置嘗試次數(shù)及超時時間。
用戶也可以依據(jù)協(xié)議設(shè)置以上三種策略的優(yōu)先關(guān)系。
2.2 通信協(xié)議制定
通信協(xié)議是通信能否正常進行的重要保證。本收發(fā)平臺具有如下特點:一、用戶與收發(fā)平臺之間的通信需要有基本的重發(fā)確認機制,考慮到使用RS232通信鏈路重復(fù)出現(xiàn)故障的可能性叫小,所以該機制不需要復(fù)雜;二、用戶需要對收發(fā)平臺進行簡單的配置;三、收發(fā)平臺之間的通性應(yīng)該可以實現(xiàn)定點傳輸、廣播傳輸及轉(zhuǎn)發(fā)。因此,協(xié)議的制定至少包括兩個方面:用戶與收發(fā)平臺通信協(xié)議和收發(fā)平臺間通信協(xié)議。
圖2所示為用戶與收發(fā)平臺通信協(xié)議。劃分為三層:物理層、傳輸層、應(yīng)用層。各層功能如下:物理層提供數(shù)據(jù)的實際傳輸,由RS232來完成,傳輸層只需以字節(jié)為單位發(fā)送數(shù)據(jù)即可;傳輸層負責檢測網(wǎng)絡(luò)狀態(tài)以及數(shù)據(jù)幀的提??;應(yīng)用層依據(jù)幀類型完成用戶要執(zhí)行的操作。協(xié)議中:起始字符為“@”,占1字節(jié);數(shù)據(jù)長度為幀中數(shù)據(jù)字段的長度,占1字節(jié);校驗和對全幀進行校驗,若為0,則表示忽略校驗,占1字節(jié);結(jié)束字符為“#”,占1字節(jié)。
幀類型占1字節(jié),具體如下:
0:此時數(shù)據(jù)段為要發(fā)送的數(shù)據(jù),收發(fā)平臺不必理會其內(nèi)容,類似于透明傳輸,且通過何種方式傳輸由收發(fā)平臺決定;
1:與類型0相似,但使用由用戶指定的通信方式,0為無線通信、1為無線數(shù)傳電臺、2為GPRS、3為銥星,其它值表示不使用該通信方式;
2:對用戶指定的通信方式設(shè)定通信速率,0為9 600 bps,1為19 200 bps,此時,數(shù)據(jù)字段長度應(yīng)為兩字節(jié);
3:此時數(shù)據(jù)字段應(yīng)為四字節(jié),依次為通信方式0~3的優(yōu)先級,且不可重復(fù);
4:此時數(shù)據(jù)字段應(yīng)為三字節(jié),依次代表重發(fā)次數(shù)、發(fā)送超時時間(占兩字節(jié)),單位為毫秒。
5:設(shè)置收發(fā)平臺的目的地址,此時數(shù)據(jù)字段應(yīng)為一字節(jié),無需每次都設(shè)定;
255:此時數(shù)據(jù)字段長度為零,表示對用戶發(fā)來的數(shù)據(jù)進行確認。
圖3所示為收發(fā)平臺間通信協(xié)議,劃分為兩層:物理層、傳輸層。各層功能如下:物理層提供數(shù)據(jù)的實際傳輸,對于無線模塊和數(shù)傳電臺,提供的是連續(xù)的字節(jié)流傳輸,對于GPRS和銥星,提供的是不連續(xù)的以字節(jié)為最小單位的塊數(shù)據(jù)傳輸;傳輸層負責數(shù)據(jù)幀的提取,依據(jù)目的地址和該節(jié)點地址,接收、轉(zhuǎn)發(fā)或丟棄數(shù)據(jù)包,并提取接收數(shù)據(jù)包中的數(shù)據(jù)字段傳輸給用戶,且在任何時候都只接收但不轉(zhuǎn)發(fā)目的地址為廣播的數(shù)據(jù)包。協(xié)議中:起始字符為“@”,占1字節(jié);目的地址占用1字節(jié),255為廣播地址;源地址占用1字節(jié);跳數(shù)為數(shù)據(jù)包可以被轉(zhuǎn)發(fā)的次數(shù),為0時丟棄;數(shù)據(jù)長度為包中數(shù)據(jù)字段的長度,占1字節(jié);校驗和對數(shù)據(jù)長度和數(shù)據(jù)字段進行校驗,若為0,則表示忽略校驗,占1字節(jié);結(jié)束字符為“#”,占1字節(jié)。
3 硬件設(shè)計
考慮到收發(fā)平臺需要至少五路RS232接口,且可能要同時操作四種通信方式來傳輸數(shù)據(jù),綜合考慮,選用處理能力強的AT91SAM9260作為CPU;選用9XTend作為無線收發(fā)模塊,該模塊在使用高增益天線時最遠可達64 km,使用偶極天線時通信距離可達22 km;選用通信距離更遠的型號為MDS2710C的無線SCADA數(shù)傳電臺模塊;選用型號為GF-2008AW的GPRS模塊;選用9522A L-Band銥星收發(fā)模塊通過銥星衛(wèi)星與陸地基站進行通信。同時,為了存儲未能及時發(fā)出去的數(shù)據(jù)以及系統(tǒng)配置,添加SD卡作為存儲介質(zhì)。圖4所示為收發(fā)平臺硬件框圖。
4 軟件設(shè)計
4.1 主控AT91SAM9260程序設(shè)計
收發(fā)平臺要完成的功能主要是:與用戶通信、四種通信方式的控制與維護、數(shù)據(jù)存儲。開機后,收發(fā)平臺CPU讀取系統(tǒng)配置進行初始化,包括CPU本身初始化、RS232接口初始化、SD卡接口初始化、定時器初始化、通信模塊初始化。之后系統(tǒng)進入工作狀態(tài)。圖5所示為收發(fā)平臺正常工作時軟件流程圖,若某個通信模塊出現(xiàn)故障,CPU會關(guān)閉該模塊,當四種通信模塊都出現(xiàn)故障時,CPU將通知用戶,對于用戶發(fā)送的數(shù)據(jù)均不作出響應(yīng)。
4.2 上位機軟件設(shè)計
上位機軟件即岸基數(shù)據(jù)接收服務(wù)中心軟件完成計算機用戶與收發(fā)平臺間的通信,主要包括以下功能:收發(fā)平臺的配置、數(shù)據(jù)的接收與發(fā)送、數(shù)據(jù)的圖表化顯示及存儲、歷史數(shù)據(jù)的顯示與分析。圖6所示為上位機軟件主界面。
上位機軟件使用Visual C++語言設(shè)計,窗口設(shè)計主要包括主窗口、系統(tǒng)配置窗口、歷史數(shù)據(jù)分析窗口。主界面接收數(shù)據(jù)圖表顯示區(qū)能反映接收到的數(shù)據(jù)的變化趨勢,并可向收發(fā)平臺傳輸數(shù)據(jù),實現(xiàn)收發(fā)平臺的配置和數(shù)據(jù)收發(fā)。歷史數(shù)據(jù)分析窗口能以圖表方式反映歷史數(shù)據(jù)。
5 結(jié)束語
本收發(fā)平臺目前可以支持網(wǎng)絡(luò)內(nèi)存在最多255個收發(fā)平臺,已經(jīng)滿足了當前的需求,并已成功用于海洋數(shù)據(jù)傳輸。在后續(xù)改進中,可設(shè)計實現(xiàn)多個收發(fā)平臺的組網(wǎng)傳輸,進而更大程度上滿足數(shù)據(jù)長時間全天候傳輸?shù)男枨蟆?/p>