《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于銥星的浮標遠程監(jiān)測與數據傳輸系統(tǒng)
基于銥星的浮標遠程監(jiān)測與數據傳輸系統(tǒng)
來源:電子技術應用2010年第12期
琚汝強,劉敬彪,于海濱
杭州電子科技大學 電子信息學院,浙江 杭州310018
摘要: 針對海洋定點垂直剖面監(jiān)測系統(tǒng),設計并實現了一種基于銥星的浮標遠程監(jiān)測與數據傳輸系統(tǒng)。它主要由帶有WINCE5.0操作系統(tǒng)的AT91SAM9G20主控板和銥星通信終端組成。為了降低系統(tǒng)功耗以達到長期無人值守監(jiān)測要求,采用基于STC12C5A60S2的浮標狀態(tài)監(jiān)測板代替主控板監(jiān)測浮標、錨燈和電池的狀態(tài)。三者通過串口通信實現數據的傳輸。
中圖分類號: TP311
文獻標識碼: A
文章編號: 0258-7998(2010)12-0036-03
A remote monitoring and data transmission system of buoy based on iridium satellite
JU Ru Qiang,LIU Jing Biao,YU Hai Bin
Electronic Information Institution of Hangzhou Dianzi University, Hangzhou 310018,China
Abstract: For ocean fixed-pointed vertical profiler monitor system, this paper designs and implements a remote monitoring and data transmission system, which mainly consists of AT91SAM9G20 main control board with the WINCE5.0 operation system and the iridium satellite communication terminals. In order to reduce the power consumption of system to meet the needs of long-term unattended monitoring, monitor board based on STC12C5A60S2 is used to replace the main control board to monitor the state of buoy, anchor light and battery.
Key words : remote monitoring;AT91SAM9G20;iridium satellite;serial communication

    以浮標平臺為載體的海洋定點垂直剖面監(jiān)測系統(tǒng)[1]可以實現海平面以下水體垂直剖環(huán)境監(jiān)測數據的實時、自動獲取,它由水下數據采集系統(tǒng)、電磁耦合系統(tǒng)、水上浮標遠程監(jiān)測和數據傳輸系統(tǒng)組成,可為海洋的探索和監(jiān)測提供豐富可靠的數據信息和資料。從我國開始研制海洋資料浮標以來,實時數據傳輸系統(tǒng)先后采用過多種數據通信方式,包括短波通信、INMARSAT-C衛(wèi)星通信以及GPRS/CDMA通信等。各種通信方式各有優(yōu)點和局限性,短波通信抗干擾能力差、誤碼率高、數據接收率低;INMARSAT-C衛(wèi)星通信可靠性高,數據接收率達95%以上,但通信費用較高;GPRSP/CDMA通信費用較低,但通信信號受到浮標到岸邊距離的限制[1]。根據浮標系統(tǒng)對數據傳輸及功耗的要求,本文利用銥星突發(fā)短數據SBD(Short Burst Data)透明數傳模塊提供的SBD業(yè)務,實現了數據的可靠傳輸,利用監(jiān)測板代替主控板完成對浮標系統(tǒng)的實時監(jiān)測,并大幅降低了系統(tǒng)的浮標遠程監(jiān)測與數據傳輸系統(tǒng)的功耗。
1 系統(tǒng)工作原理概述
    海洋定點垂直剖面監(jiān)測系統(tǒng)的整體結構框圖如圖1所示。本文主要闡述由主控板、銥星通信終端和監(jiān)測板組成的水上浮標遠程監(jiān)測與數據傳輸系統(tǒng)。它主要完成轉發(fā)水下數據采集到的數據和對浮標體進行實時監(jiān)測。為降低功耗,主控板未進行數據傳輸時休眠,銥星通信終端未發(fā)送數據時不供電。

    水下數據采集系統(tǒng)利用波浪能自行下降,到設定的深度后上升并且開始采集數據。當上升到距海面浮標體一定距離時,嵌于數據采集系統(tǒng)頂部玻璃鋼內的釹鐵硼磁塊將觸發(fā)嵌于浮標底部玻璃鋼內的磁敏開關電路,使其產生中斷信號,喚醒處于休眠狀態(tài)的主控板。然后,主控板通過RS232串口接收并保存從電磁耦合系統(tǒng)傳來的數據。數據接收完畢后,水下數據采集系統(tǒng)再次下降去采集數據。與此同時,主控板通過銥星通信終端將接收到的數據發(fā)送到監(jiān)控中心,并再次進入休眠狀態(tài),等待下次數據的到來。
    主控板休眠時無法完成監(jiān)測浮標、錨燈和電池電壓等狀態(tài)的工作,本文用監(jiān)測板代替主控板完成這些重要的工作。當出現異常情況時,監(jiān)測板通過I/O口產生中斷信號來喚醒主控板,并與之進行串口通信,然后由主控板通過銥星將以上狀態(tài)信息發(fā)送到監(jiān)控中心。
2 系統(tǒng)硬件概述
2.1 主控板

    主控板的微處理器選擇Atmel公司生產的工業(yè)級ARM9芯片AT91SAM9G20,其主頻高達400 MHz,在所有外設啟動的全功率模式下,其功耗僅為80 mW。相對其他ARM9芯片,其功耗較低。它有豐富的串口資源,6路RS232串口和1路可配置為RS485或RS422串口,支持銥星通信終端所需的9線串口,使得主控板和銥星通信終端之間的通信更加穩(wěn)定。安裝WINCE操作系統(tǒng)后,支持大容量SD卡存儲和多線程操作,非常適合應用在多串口數據采集、存儲和通信的場合。主控板的簡要框圖如圖2所示。

2.2 銥星通信終端
    銥星系統(tǒng)是由66顆環(huán)繞地球的低軌衛(wèi)星網組成的全球衛(wèi)星移動通信系統(tǒng),其最大優(yōu)勢是通信范圍可以覆蓋全球,而且無論在任何地方都能保證數據通信的信號強度和可靠性,不受天氣、高度、電離層、距離等不穩(wěn)定因素的制約,因此,特別適合現有通信手段達不到的地方。本系統(tǒng)工作的海洋環(huán)境就是這樣的地方。此外,相對于其他數據通信方式,銥星通信的費用較低,而且功耗較小,能夠滿足海洋浮標設備低功耗的要求。
    本系統(tǒng)中的銥星終端使用銥星SBD 透明數據傳輸模塊,它嵌入了銥星9601 SBD和SBD協(xié)議,結合銥星全球覆蓋網絡提供銥星數據業(yè)務(SBD),通過采用數據包的方式實現短消息雙向傳輸。在本系統(tǒng)中,主控板通過9線RS232串口向銥星模塊發(fā)送AT指令集,實現SBD業(yè)務。用戶可以通過郵件協(xié)議方式或DirectIP鏈接方式獲取數據,也可在終端之間進行數據收發(fā)。模塊的主叫消息可達205 B,被叫消息可達105 B。通信速率最高可達115 200 b/s,默認波特率為192 00 b/s,可通過AT+IPR命令設置[2]。
2.3 浮標狀態(tài)監(jiān)測板
    主控板可以完成浮標狀態(tài)的監(jiān)測工作,但由于其功耗相對單片機較高,為盡可能降低電子系統(tǒng)功耗,滿足長期無人值守監(jiān)測需求,本系統(tǒng)選用了以低功耗MCU芯片STC12C5A60S2為核心的監(jiān)測板來完成監(jiān)測導航錨燈、浮標倉蓋、倉體漏水和系統(tǒng)電池狀態(tài)的工作。其正常工作時的電流為2 mA~7 mA。
    浮標系統(tǒng)中,錨燈在夜間以一定頻率閃爍,以免過往船只撞上浮標,如果它在白天閃爍,則說明其出現異常。對浮標倉蓋進行監(jiān)測,主是要為了防止其被人為打開。浮標倉體如果發(fā)生漏水,則會對其中的電子系統(tǒng)和電池產生致命的危害。系統(tǒng)的電池電壓過低,也會嚴重影響系統(tǒng)的運行。如果以上這些異常情況發(fā)生了,都會通過主控板發(fā)送到監(jiān)控中心。監(jiān)測板的框圖如圖3所示。

3 系統(tǒng)軟件設計
    通過軟件降低功耗的方式有兩種:(1)使主控板未進行數據通信時休眠;(2)銥星通信終端沒有發(fā)送數據時,通過主控板I/O口控制終端的相應引腳關斷其電源。
3.1 AT91SAM9G20主控板程序設計
    主程序設計可分為以下四個步驟:(1)安裝中斷。上電后,不打開任何串口而直接進入休眠狀態(tài)。要使其返回正常狀態(tài)工作,則必需通過中斷將其喚醒。(2)串口配置和通信[3]。在WINCE中struct DCB包括了串口的波特率、字符位數和奇偶校驗等重要屬性,在修改好DCB之后,調用的串口操作API函數SetCommState使串口的屬性配置生效。對于串口讀寫,設置串口讀寫超時是非常重要的,SetCommTimeouts函數提供了這樣的功能。配置好串口后,用CreateFile函數打開數據接收串口和狀態(tài)串口,并調用CreateThread創(chuàng)建串口監(jiān)聽線程。在監(jiān)聽線程中利用WaitCommEvent函數阻塞線程,等待串口事件中某一事件的發(fā)生。當串口發(fā)生錯誤時,則調用OnError清除錯誤。當有字符到達串口的緩沖區(qū)時,用ReadFile讀串口。主控板與水下數據采集子系統(tǒng)之間的通信是在監(jiān)聽線程函數中回調函數OnReceive中完成的,接收到的數據保存在大容量SD卡中的文本文件。然后,利用線程同步API函數WaitForSingleObject(m_hSendWait, INFINITE)阻塞主線程。(3)數據傳輸。水下采集到的數據在傳輸完后,將會標識阻塞主線程的句柄m_hSendWait。之后,主控板將數據通過銥星發(fā)送到監(jiān)控中心。(4)關閉串口。一次數據接收和發(fā)送完后,應該關閉打開的串口,然后再次進入休眠狀態(tài)。主控板程序流程如圖4所示。

3.2 銥星通信終端程序設計
    主控板通過串口向銥星SBD透明數據傳輸模塊發(fā)送AT指令就可以控制其發(fā)送數據。銥星模塊發(fā)送數據時,其功耗最大,利用AT+CSQ命令可查詢當前銥星模塊與銥星衛(wèi)星之間是否存在網絡,這樣也可以減小銥星模塊的功耗。如果大于0,即應答信號位中的信號強度為1~5,則用AT+SBDIX命令發(fā)送數據。程序流程如圖5所示。

3.3 監(jiān)測板程序設計
    監(jiān)測板主要實現浮標體和電池狀態(tài)的實時監(jiān)測。當浮標、錨燈和電池體狀態(tài)正常時,無需將當前的狀態(tài)發(fā)回監(jiān)控中心,也就不用產生中斷信號。當出現異常情況時,如電池電壓低于預設值,MCU將產生中斷信號,并通過串口將狀態(tài)字符串發(fā)送給主控板,由后者通過銥星通信終端發(fā)送到監(jiān)控中心。
4 系統(tǒng)調試
    將主控板的打印串口COM3與電腦的串口相連,打開串口調試助手,波特率設置為9 600 b/s,無奇偶校驗位,8 bit數據位,1 bit停止位。系統(tǒng)上電后,把嵌有釹鐵硼磁塊的玻璃鋼圓板向內嵌有磁敏板的玻璃鋼片移動。當到達一定距離后,磁敏板產生中斷信號。水下數據采集板與水上主控板握手成功后進行數據通信,主控板將數據保存在SD中。經過長時間運行,通過從串口調試助手打印出的信息與SD卡和郵箱中的數據比較可知,系統(tǒng)運行穩(wěn)定。通過傳感器模擬異常情況時,異常情況數據幀也能通過銥星通信終端發(fā)送到郵箱中。
    測試到的主控板和監(jiān)測板的功耗如表1所示。若以表1的數據為依據,用12 V/38 AH的蓄電池對主控板、銥星通信終端和監(jiān)測板(不包括錨燈)供電,設系統(tǒng)每日完成一個數據采集周期,每個采集周期發(fā)送數據時間為2小時,則只采用主控板完成數據收發(fā)和狀態(tài)監(jiān)測所消耗的電能為22.7 WH,而用監(jiān)測板代替主控板完成狀態(tài)監(jiān)測工作所消耗的電能為14.1 WH。在不借助太陽能電池板對蓄電池充電的情況下,前者大約能工作20天,后者大約能工作32天??梢?,用監(jiān)測板代替主控板完成狀態(tài)監(jiān)測工作非常必要。

    本文利用銥星設計和實現了一種浮標遠程監(jiān)測和數據傳輸系統(tǒng),在系統(tǒng)運行穩(wěn)定的前提下,充分考慮到系統(tǒng)對功耗的要求,從硬件的選取到軟件的實現,都盡可能地降低其功耗。用監(jiān)測板代替主控板進行狀態(tài)監(jiān)測,不僅降低了系統(tǒng)的功耗,而且使狀態(tài)監(jiān)測和采集數據傳輸相對獨立,更易于系統(tǒng)的穩(wěn)定運行和功能的擴展。該浮標遠程監(jiān)控和數據傳輸系統(tǒng)很好地滿足了海洋定點垂直剖面監(jiān)測控制系統(tǒng)的需求,達到了設計目標。
參考文獻
[1] 張曙偉,王秀芬,齊勇.銥星數據通信在海洋資料浮標上的應用[J].山東科學,2006(5).
[2] Iridium Satellite LLC.Iridium 9601 short burst data  transceiver product developers guide V1.24[M],2005.
[3] 汪兵,李存賦,陳鵬,等.EVC高級編程及其應用開發(fā)[M]. 北京:中國水利出版社,2005.

此內容為AET網站原創(chuàng),未經授權禁止轉載。