文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2010)12-0036-03
以浮標(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.