文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2011)07-0042-03
在世界人口數(shù)量劇增,、陸地資源銳減、環(huán)境污染日益嚴(yán)重的今天,,進(jìn)軍海洋,、開(kāi)發(fā)海洋已成為世界海洋技術(shù)領(lǐng)域的一大主題。發(fā)展海洋科技,,尤其是海洋高新技術(shù)首先要解決的問(wèn)題就是海洋環(huán)境監(jiān)測(cè),。
目前,使用較多的是ARGO[1,2](Array for Real-time Geotropic Oceanography)即地轉(zhuǎn)海洋學(xué)實(shí)時(shí)觀測(cè)陣,,它是全球海洋觀測(cè)業(yè)務(wù)系統(tǒng)GOOS(Global Ocean Observing System)[3,,4]中的針對(duì)深海區(qū)溫度鹽度結(jié)構(gòu)觀測(cè)的一個(gè)子計(jì)劃。ARGO節(jié)點(diǎn)借助液壓動(dòng)力來(lái)改變自身體積以便在0~2 000 m深的海水中下沉與上浮,,同時(shí),,在上浮過(guò)程中對(duì)海洋環(huán)境進(jìn)行剖面測(cè)量。AGRO采集的數(shù)據(jù)是以10~14天為周期通過(guò)衛(wèi)星系統(tǒng)來(lái)傳輸?shù)摹?br/>
本系統(tǒng)針對(duì)遠(yuǎn)海海洋數(shù)據(jù)傳輸不能滿足實(shí)時(shí)檢測(cè)的現(xiàn)狀,,以無(wú)線傳感器為節(jié)點(diǎn)構(gòu)成數(shù)據(jù)傳輸網(wǎng)絡(luò),,采用銥星模塊將采集數(shù)據(jù)發(fā)往陸地基站。
1 系統(tǒng)簡(jiǎn)介
本海洋浮標(biāo)網(wǎng)絡(luò)數(shù)據(jù)傳輸系統(tǒng)結(jié)構(gòu)如圖1所示,,主要由海洋浮標(biāo)節(jié)點(diǎn),、無(wú)線網(wǎng)絡(luò),、衛(wèi)星通信系統(tǒng)組成,。
海洋浮標(biāo)節(jié)點(diǎn)通過(guò)光纖、電纜或無(wú)線方式與其下方的傳感器網(wǎng)絡(luò)通信,,以實(shí)現(xiàn)對(duì)一定范圍內(nèi)海洋環(huán)境的檢測(cè),,同時(shí)每個(gè)浮標(biāo)節(jié)點(diǎn)都攜帶有無(wú)線通信模塊和衛(wèi)星通信模塊。無(wú)線網(wǎng)絡(luò)完成兩個(gè)功能:將浮標(biāo)網(wǎng)絡(luò)中各節(jié)點(diǎn)采集的數(shù)據(jù)傳輸?shù)街行墓?jié)點(diǎn),;在中心節(jié)點(diǎn)發(fā)生故障時(shí)選擇新的中心節(jié)點(diǎn),,盡量保證系統(tǒng)的正常運(yùn)行。衛(wèi)星通信系統(tǒng)負(fù)責(zé)將匯集在中心節(jié)點(diǎn)的數(shù)據(jù)發(fā)送到陸地基站,。
本論文研究無(wú)線網(wǎng)絡(luò)的數(shù)據(jù)傳輸與網(wǎng)絡(luò)維護(hù)以及衛(wèi)星通信,。
2 系統(tǒng)原理
2.1 無(wú)線網(wǎng)絡(luò)結(jié)構(gòu)選擇及協(xié)議制定
無(wú)線網(wǎng)絡(luò)不同于有線網(wǎng)絡(luò),在有線網(wǎng)絡(luò)中,,一個(gè)節(jié)點(diǎn)發(fā)出的數(shù)據(jù)通過(guò)有線鏈路直接抵達(dá)目標(biāo)節(jié)點(diǎn)或中繼節(jié)點(diǎn),,在此過(guò)程中,不會(huì)對(duì)其他節(jié)點(diǎn)造成影響,。而無(wú)線網(wǎng)絡(luò)中,,節(jié)點(diǎn)發(fā)出的無(wú)線信號(hào)會(huì)對(duì)網(wǎng)絡(luò)中所有節(jié)點(diǎn)造成干擾,若不加限制,,則無(wú)線網(wǎng)絡(luò)完全無(wú)法運(yùn)行,。
此外,本無(wú)線網(wǎng)絡(luò)還具有以下特點(diǎn):(1)網(wǎng)絡(luò)中節(jié)點(diǎn)一般不會(huì)超過(guò)10個(gè),;(2)網(wǎng)絡(luò)一旦建立,,短期內(nèi)不會(huì)加入新的節(jié)點(diǎn),數(shù)據(jù)傳輸量不大但頻率較快,。
介于以上特點(diǎn),,本網(wǎng)絡(luò)設(shè)計(jì)如下:(1)采用星型結(jié)構(gòu),與此同時(shí),任何通信都由中心節(jié)點(diǎn)發(fā)起,,這樣可以避免中心節(jié)點(diǎn)同時(shí)收到多條數(shù)據(jù)而造成混亂,;(2)網(wǎng)絡(luò)分三層:物理層、傳輸層,、應(yīng)用層,;(3)網(wǎng)絡(luò)內(nèi)節(jié)點(diǎn)擁有唯一的網(wǎng)絡(luò)地址(初始設(shè)置中心節(jié)點(diǎn)地址為02,外圍節(jié)點(diǎn)依次遞增),,以實(shí)現(xiàn)數(shù)據(jù)的定點(diǎn)通信,。
圖2所示為網(wǎng)絡(luò)協(xié)議幀格式。由于每次通信都是由中心節(jié)點(diǎn)發(fā)起的,,所以協(xié)議中不設(shè)立源地址,。各層功能如下:物理層提供數(shù)據(jù)的實(shí)際傳輸,由無(wú)線模塊完成,,傳輸層只需以字節(jié)為單位發(fā)送數(shù)據(jù)即可,;傳輸層負(fù)責(zé)檢測(cè)網(wǎng)絡(luò)狀態(tài)以及數(shù)據(jù)幀的提取,并對(duì)比目的地址與該節(jié)點(diǎn)地址,,若不符合接收條件,,則丟棄數(shù)據(jù)包;應(yīng)用層完成中心節(jié)點(diǎn)指定的任務(wù),,如采集數(shù)據(jù)的發(fā)送,、節(jié)點(diǎn)地址的設(shè)定等。
應(yīng)用層標(biāo)志位意義如下:
G:中心節(jié)點(diǎn)獲取數(shù)據(jù)標(biāo)志,,此時(shí),,外圍節(jié)點(diǎn)以采集數(shù)據(jù)來(lái)填充數(shù)據(jù)幀并發(fā)送。
D:表示采集數(shù)據(jù),,此時(shí),,中心節(jié)點(diǎn)接收到的數(shù)據(jù)為采集到的數(shù)據(jù)。
A:重新設(shè)定節(jié)點(diǎn)地址標(biāo)志,,此時(shí),,數(shù)據(jù)域有三個(gè)字節(jié)且每個(gè)字節(jié)都為新地址并相等。該功能可在中心節(jié)點(diǎn)檢測(cè)到衛(wèi)星通信發(fā)生故障時(shí)設(shè)定新的中心節(jié)點(diǎn),。
S:成功標(biāo)志位,,外圍節(jié)點(diǎn)成功設(shè)定本節(jié)點(diǎn)新地址后置位該位,否則清零該位,,并告知中心節(jié)點(diǎn),。
W:警告標(biāo)志位,外圍節(jié)點(diǎn)發(fā)生故障時(shí)置位該位,,請(qǐng)求將故障信息發(fā)往陸地基站,。
R:授權(quán)標(biāo)志位,,指定新的節(jié)點(diǎn)為中心節(jié)點(diǎn)時(shí)置位該位,為了防止誤碼造成的中心節(jié)點(diǎn)轉(zhuǎn)移而造成網(wǎng)絡(luò)混亂,,此時(shí)數(shù)據(jù)域必須是0x5555,。
N:備用中心節(jié)點(diǎn)標(biāo)志,告知外圍節(jié)點(diǎn)數(shù)據(jù)域指定的為備用中心節(jié)點(diǎn)地址,,此時(shí)數(shù)據(jù)域由三個(gè)字節(jié)組成,,且每個(gè)字節(jié)都為備用中心節(jié)點(diǎn)地址并相等。
2.2 網(wǎng)絡(luò)自我修復(fù)
星型網(wǎng)絡(luò)對(duì)中心節(jié)點(diǎn)的依賴性很強(qiáng),,一旦中心節(jié)點(diǎn)發(fā)生故障,,網(wǎng)絡(luò)便會(huì)癱瘓。針對(duì)這一情況,,本論文提出了網(wǎng)絡(luò)中心節(jié)點(diǎn)轉(zhuǎn)移的概念,。考慮到各節(jié)點(diǎn)都有檢測(cè)網(wǎng)絡(luò)狀態(tài)的能力(傳輸層完成此功能),,同時(shí),,任何一個(gè)性能良好的節(jié)點(diǎn)都有能力至少完成一次網(wǎng)絡(luò)掃描并告知其他節(jié)點(diǎn)備用中心節(jié)點(diǎn)的地址,所以可以很容易地實(shí)現(xiàn)中心節(jié)點(diǎn)的轉(zhuǎn)移,。
中心節(jié)點(diǎn)故障[5]包括衛(wèi)星通信故障和無(wú)線模塊故障兩種,。
設(shè)中心節(jié)點(diǎn)地址為X,,當(dāng)衛(wèi)星通信發(fā)生故障時(shí),,中心節(jié)點(diǎn)首先在網(wǎng)絡(luò)中查找無(wú)故障的目標(biāo)節(jié)點(diǎn)(W=0),然后將目標(biāo)節(jié)點(diǎn)地址設(shè)置為X-1,、將自身地址設(shè)置為目標(biāo)節(jié)點(diǎn)的原始地址,,同時(shí)向目標(biāo)節(jié)點(diǎn)發(fā)送中心節(jié)點(diǎn)授權(quán)(R=1,數(shù)據(jù)域?yàn)?x5555),,最后,,目標(biāo)節(jié)點(diǎn)將自身地址設(shè)為X,成為新的中心節(jié)點(diǎn),。
當(dāng)無(wú)線模塊發(fā)生故障時(shí),,所有外圍節(jié)點(diǎn)都不會(huì)檢測(cè)到任何無(wú)線信號(hào),此時(shí),,外圍節(jié)點(diǎn)與備用中心節(jié)點(diǎn)地址進(jìn)行對(duì)比,,匹配的外圍節(jié)點(diǎn)成為中心節(jié)點(diǎn),發(fā)起數(shù)據(jù)通信,,查找無(wú)故障的節(jié)點(diǎn)并將該節(jié)點(diǎn)指定為新的備用中心節(jié)點(diǎn),,同時(shí)告知其他外圍節(jié)點(diǎn)。
3 節(jié)點(diǎn)硬件設(shè)計(jì)
節(jié)點(diǎn)需具有以下功能:衛(wèi)星通信,、無(wú)線通信,、水下數(shù)據(jù)接收,、數(shù)據(jù)存儲(chǔ),同時(shí)盡量降低節(jié)點(diǎn)的功耗及成本,。綜合考慮,,選用處理能力適中的STM32作為CPU;選用9XTend作為無(wú)線收發(fā)模塊,,該模塊在使用偶極天線時(shí)通信距離可達(dá)22 km,,在使用高增益天線時(shí)最遠(yuǎn)可達(dá)64 km;選用9601SBD(9601 Short Burst Data Transceiver)銥星收發(fā)模塊通過(guò)銥星衛(wèi)星與陸地基站進(jìn)行通信,。由于STM32只有兩個(gè)USART資源,,而銥星收發(fā)需要實(shí)時(shí)檢測(cè)信號(hào)質(zhì)量并盡量保證在較小的延遲下將數(shù)據(jù)發(fā)往陸地基站,所以9601SBD占用一個(gè)USART,,無(wú)線通信及水下數(shù)據(jù)接收共享一個(gè)USART,。圖3所示為節(jié)點(diǎn)硬件框圖。
4 軟件設(shè)計(jì)
系統(tǒng)軟件應(yīng)完成水下數(shù)據(jù)接收,、銥星模塊控制,、無(wú)線網(wǎng)絡(luò)通信與維護(hù)、數(shù)據(jù)存儲(chǔ)等功能,。開(kāi)機(jī)后,,各節(jié)點(diǎn)讀取系統(tǒng)配置對(duì)本節(jié)點(diǎn)初始化,包括SPI接口初始化,、定時(shí)器初始化,、水下數(shù)據(jù)接收初始化、9XTend初始化,。此外中心節(jié)點(diǎn)需要初始化9601SBD控制模塊,,而外圍節(jié)點(diǎn)則將9601SBD控制模塊置于休眠狀態(tài),以降低功耗,。之后系統(tǒng)進(jìn)入工作狀態(tài),。圖4所示為不同節(jié)點(diǎn)工作狀態(tài)下的程序流程圖。
5 實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)中設(shè)計(jì)了4個(gè)無(wú)線節(jié)點(diǎn),,并以圖5連接方式將這些節(jié)點(diǎn)隨意放置于10 m×8 m的房間中,,各節(jié)點(diǎn)供電電壓為9 V,銥星天線置于室外,,無(wú)線RF模塊的通信速率為19 200 b/s,,RF模塊與CPU的通信速率為9 600 b/s。首先將各節(jié)點(diǎn)配置為非網(wǎng)絡(luò)運(yùn)行狀態(tài),,此時(shí)記錄其中一個(gè)節(jié)點(diǎn)接收數(shù)據(jù)情況,,如表1所示。由表1可以發(fā)現(xiàn),,當(dāng)各節(jié)點(diǎn)發(fā)送數(shù)據(jù)幀的間隔時(shí)間不斷減小時(shí),,誤碼率明顯提高,,當(dāng)間隔時(shí)間為0.5 s時(shí),9%的誤碼率導(dǎo)致幾乎不能提取出正確的數(shù)據(jù)幀,。
當(dāng)把各節(jié)點(diǎn)用本論文所述方式進(jìn)行配置后,,查看其中一個(gè)節(jié)點(diǎn)接收數(shù)據(jù)情況并記錄如表2所示,此時(shí)即使將發(fā)送間隔時(shí)間降低到0.3 s也不會(huì)出現(xiàn)誤碼,,不足之處是有些數(shù)據(jù)幀需要延遲發(fā)送,。從協(xié)議上分析,由于通信總是由中心節(jié)點(diǎn)發(fā)起的,,所以不應(yīng)該出現(xiàn)誤碼,,但當(dāng)間隔時(shí)間降低到0.1 s時(shí),出現(xiàn)了誤碼,,這應(yīng)該是由于中心節(jié)點(diǎn)分配給外圍節(jié)點(diǎn)的時(shí)間片較小而造成的,,若增加時(shí)間片,則會(huì)降低網(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)男?,所以可以綜合考慮通信速率和網(wǎng)絡(luò)效率并依據(jù)實(shí)際需求選擇最佳的時(shí)間片值,。
通過(guò)電腦查看銥星衛(wèi)星通信狀態(tài),當(dāng)銥星天線信號(hào)良好時(shí),,從中心節(jié)點(diǎn)發(fā)送的數(shù)據(jù)僅需20 s即可抵達(dá)陸地基站,。表3記錄為3 h時(shí)間段內(nèi),9601SBD信號(hào)質(zhì)量狀況,,其中0代表無(wú)信號(hào),,5代表信號(hào)質(zhì)量最好。實(shí)驗(yàn)表明,,天氣狀況良好,,信號(hào)質(zhì)量為“3-5”時(shí)可以正常進(jìn)行銥星衛(wèi)星通信;天氣狀況較差,,如陰雨天時(shí),信號(hào)質(zhì)量為“4-5”時(shí)才能保證銥星衛(wèi)星正常通信,。
針對(duì)遠(yuǎn)海海洋特殊的應(yīng)用環(huán)境,,本文提出了以9XTend無(wú)線模塊及9601SBD銥星模塊構(gòu)建海洋浮標(biāo)網(wǎng)絡(luò)數(shù)據(jù)傳輸系統(tǒng)的設(shè)計(jì)方案,并給出了無(wú)線網(wǎng)絡(luò)的架構(gòu)及協(xié)議,。實(shí)驗(yàn)證明本設(shè)計(jì)切實(shí)可行并表現(xiàn)出較大的優(yōu)越性,,完全可以應(yīng)用于海洋浮標(biāo)網(wǎng)絡(luò)的數(shù)據(jù)傳輸,對(duì)我國(guó)海洋環(huán)境檢測(cè)技術(shù)的發(fā)展有較大的意義,。
本設(shè)計(jì)目前針對(duì)的是網(wǎng)絡(luò)中節(jié)點(diǎn)較少的情況,,理論上可以支持最多254個(gè)節(jié)點(diǎn)(地址0不使用,地址1作為中心節(jié)點(diǎn)轉(zhuǎn)移時(shí)的臨時(shí)地址),,但隨著節(jié)點(diǎn)的增多,,就會(huì)增加中心節(jié)點(diǎn)的負(fù)擔(dān),,在后續(xù)改進(jìn)中,可以將網(wǎng)絡(luò)分層或劃分子網(wǎng),,從而減輕中心節(jié)點(diǎn)的負(fù)擔(dān)并實(shí)現(xiàn)網(wǎng)絡(luò)的更大范圍覆蓋,。
參考文獻(xiàn)
[1] 朱伯康,劉仁清,,許建平.一種專門用于低緯度洋區(qū)觀測(cè)的Argo剖面浮標(biāo)[J].海洋技術(shù),,2009,28(4):123-125.
[2] Deng Ziwang,,Tang Youmin,,Wang Guihua.Assimilation of argo temperature and salinity profiles using a bias-aware localized EnKF system for the Pacific Ocean[J].Ocean Modelling,2010,,35(3):187-205.
[3] 麻常雷,,高艷波.多系統(tǒng)集成的全球地球觀測(cè)系統(tǒng)與全球海洋觀測(cè)系統(tǒng)[J].海洋技術(shù),2006,,25(3):41-44+50.
[4] Farhan A R,,Lim S.Integrated coastal zone management towards Indonesia global ocean observing system(INA-GOOS):review and recommendation[J].Ocean and Coastal Manage ment,2010,,53(8):421-427.
[5] 劉衛(wèi),,徐曉玲,楊楊.淺議無(wú)線網(wǎng)故障解決方法[J].甘肅高師學(xué)報(bào),,2010,,15(5):38-40.