《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于銥星的浮標(biāo)遠(yuǎn)程監(jiān)測與數(shù)據(jù)傳輸系統(tǒng)
基于銥星的浮標(biāo)遠(yuǎn)程監(jiān)測與數(shù)據(jù)傳輸系統(tǒng)
來源:電子技術(shù)應(yīng)用2010年第12期
琚汝強,劉敬彪,于海濱
杭州電子科技大學(xué) 電子信息學(xué)院,浙江 杭州310018
摘要: 針對海洋定點垂直剖面監(jiān)測系統(tǒng),設(shè)計并實現(xiàn)了一種基于銥星的浮標(biāo)遠(yuǎn)程監(jiān)測與數(shù)據(jù)傳輸系統(tǒng)。它主要由帶有WINCE5.0操作系統(tǒng)的AT91SAM9G20主控板和銥星通信終端組成。為了降低系統(tǒng)功耗以達(dá)到長期無人值守監(jiān)測要求,采用基于STC12C5A60S2的浮標(biāo)狀態(tài)監(jiān)測板代替主控板監(jiān)測浮標(biāo)、錨燈和電池的狀態(tài)。三者通過串口通信實現(xiàn)數(shù)據(jù)的傳輸。
中圖分類號: TP311
文獻(xiàn)標(biāo)識碼: 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

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

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

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

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

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

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

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

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

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。