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