文獻(xiàn)標(biāo)識碼: A
文章編號: 0258-7998(2013)08-0010-04
以自升降式浮標(biāo)系統(tǒng)為載體的海洋數(shù)據(jù)傳感采集與傳輸系統(tǒng)可以實(shí)現(xiàn)海平面以下不同深度水環(huán)境監(jiān)測數(shù)據(jù)的獲取和更新。國外在上世紀(jì)80年代研制出了一種將潛標(biāo)和錨泊浮標(biāo)相結(jié)合的系統(tǒng),由于該系統(tǒng)既能采集海洋定點(diǎn)數(shù)據(jù),又能實(shí)時回傳數(shù)據(jù),因此得到了廣泛使用。國內(nèi)潛標(biāo)技術(shù)緊隨國際潮流,提出了具備緊繃式錨泊潛標(biāo)系統(tǒng)架構(gòu)的自治式海洋監(jiān)測潛標(biāo),但該系統(tǒng)仍處于研制階段,未投入實(shí)際使用。本文提出將潛標(biāo)和浮標(biāo)合二為一的錨泊自升降海洋潛標(biāo)系統(tǒng),可以為海洋環(huán)境監(jiān)測提供充分的數(shù)據(jù)材料,同時對海洋環(huán)境保護(hù)和海洋資源開發(fā)有深遠(yuǎn)意義,應(yīng)用前景寬廣[1]。自升降傳動裝置及其控制系統(tǒng)是本次研究中的一項(xiàng)核心關(guān)鍵技術(shù)和創(chuàng)新點(diǎn)。Si4432模塊采用的是半雙工的通信方式,其中通信的可靠性和沖突處理為本研究的技術(shù)難點(diǎn)。
1 系統(tǒng)工作原理
自升降式浮標(biāo)數(shù)據(jù)采集與傳輸系統(tǒng)的整體結(jié)構(gòu)如圖1所示,主要包含傳感器組、岸基模塊、中繼模塊、浮標(biāo)模塊、潛標(biāo)模塊、無線收發(fā)模塊和上位機(jī)監(jiān)測平臺。
本系統(tǒng)主要由數(shù)據(jù)采集傳輸板、傳感器組和用戶遠(yuǎn)程監(jiān)控終端組成。其中數(shù)據(jù)采集傳輸板包括岸基系統(tǒng)、中繼系統(tǒng)、浮標(biāo)系統(tǒng)和潛標(biāo)系統(tǒng)。岸基系統(tǒng)和浮標(biāo)系統(tǒng)與中繼系統(tǒng)的通信是通過Si4432[2]無線收發(fā)模塊實(shí)現(xiàn)的。浮標(biāo)系統(tǒng)與潛標(biāo)系統(tǒng)在海底的通信是以電纜及導(dǎo)電滑環(huán)為介質(zhì),按照RS485協(xié)議進(jìn)行通信的。系統(tǒng)結(jié)構(gòu)框圖如圖2所示。
系統(tǒng)設(shè)計(jì)要求指標(biāo)如下:
(1)無線通信可靠傳輸距離:1 000 m;
(2)數(shù)據(jù)包傳輸誤碼率低于0.1%;
(3)浮標(biāo)板下潛深度:5 m~20 m;
(4)潛標(biāo)板下潛深度:20 m~100 m。
海洋環(huán)境采集與傳輸系統(tǒng)的工作原理:浮標(biāo)發(fā)送浮標(biāo)下降命令給潛標(biāo),潛標(biāo)控制絞盤電機(jī)拉動浮標(biāo)作垂直向下運(yùn)動。當(dāng)浮標(biāo)被拉到海面以下時,浮標(biāo)就開始采集海洋環(huán)境參數(shù),同時將采集到的數(shù)據(jù)寫入SD卡中。電機(jī)拉動浮標(biāo)向下運(yùn)動到一定深度后,電機(jī)向相反方向運(yùn)動,浮標(biāo)開始上浮。當(dāng)浮標(biāo)被再次釋放到海面上時,浮標(biāo)板停止采集,然后將采集到的海洋環(huán)境參數(shù)結(jié)合當(dāng)前時間打包為一幀數(shù)據(jù)后發(fā)送給中繼模塊。中繼模塊直接與岸基模塊進(jìn)行通信,中繼模塊將接收到的浮標(biāo)數(shù)據(jù)結(jié)合自身傳感器采集到的數(shù)據(jù)打包為一幀數(shù)據(jù)后發(fā)送到岸基模塊,通過上位機(jī)監(jiān)控軟件實(shí)時顯示當(dāng)前各項(xiàng)傳感器測得的海洋環(huán)境參數(shù)。同時,可以通過上位機(jī)向中繼模塊發(fā)送回收浮標(biāo)的命令,浮標(biāo)將對應(yīng)命令轉(zhuǎn)發(fā)給潛標(biāo),對應(yīng)步進(jìn)電機(jī)執(zhí)行釋放動作,完成釋放任務(wù)。
上述傳感器組集中在中繼模塊和浮標(biāo)模塊,中繼模塊的傳感器組包括加速度傳感器MMA7361、傾角傳感器SCA60C、溫度傳感器DS18B20、溫濕度傳感器SHT11和光照傳感器BH1750;浮標(biāo)模塊的傳感器組包括CTD[3]傳感器和DO溶解氧傳感器。為了記錄采集數(shù)據(jù)的時間,浮標(biāo)模塊帶有實(shí)時時鐘芯片DS1302。同時,為了能實(shí)現(xiàn)水下采集數(shù)據(jù)的大容量存儲,通過FAT文件系統(tǒng)可以很方便地實(shí)現(xiàn)對SD卡的數(shù)據(jù)寫入和讀出。
2 系統(tǒng)硬件
Si4432的工作頻段為433 MHz,最大輸出功率可以達(dá)到+20 dBm,外圍可加入功率放大電路,以提高發(fā)送功率。Si4432主要有關(guān)閉模式、掛機(jī)模式、發(fā)射模式和接收模式。關(guān)閉狀態(tài)下可以降低功耗,各模式間的切換必須先進(jìn)入掛起狀態(tài)。本設(shè)計(jì)中,Si4432模塊在發(fā)送或者接收完數(shù)據(jù)后立即切換到關(guān)閉模式,從而可以降低系統(tǒng)工作功耗。Si4432數(shù)據(jù)傳輸方式主要有FIFO模式、直接模式和PN9模式3種。本設(shè)計(jì)中Si4432工作在FIFO模式下,使用片內(nèi)的先入先出堆棧區(qū)來發(fā)送和接收數(shù)據(jù)。此狀態(tài)下,Si4432自動退出發(fā)送或者接收狀態(tài),當(dāng)相關(guān)的中斷信號產(chǎn)生時,自動處理字頭和CRC校驗(yàn)碼。在接收數(shù)據(jù)時,自動把字頭和CRC校驗(yàn)碼移去。在發(fā)送數(shù)據(jù)時,自動加上字頭和CRC校驗(yàn)碼。Si4432的通信距離可以達(dá)到1 km,可以達(dá)到本設(shè)計(jì)的指標(biāo)要求??傊?,Si4432具有低功耗特性,并且數(shù)據(jù)傳輸有效距離可以達(dá)到1 km,從數(shù)據(jù)傳輸有效距離和功耗上來考慮,Si4432可以實(shí)現(xiàn)海洋環(huán)境下的數(shù)據(jù)可靠傳輸,因此本文采用Si4432來實(shí)現(xiàn)數(shù)據(jù)傳輸。
本設(shè)計(jì)的創(chuàng)新點(diǎn)在于低功耗升降式浮標(biāo)的設(shè)計(jì),浮標(biāo)升降的實(shí)現(xiàn)是通過潛標(biāo)控制電機(jī)的正反轉(zhuǎn)來實(shí)現(xiàn)的。浮標(biāo)與潛標(biāo)的通信以RS485為接口,以電纜為傳輸途徑實(shí)現(xiàn)。由于電纜是盤繞在電機(jī)上的,利用導(dǎo)電滑環(huán)可以實(shí)現(xiàn)浮標(biāo)與潛標(biāo)間信號的穩(wěn)定可靠傳輸。水下電機(jī)采用12 V直流無刷電機(jī),減速比為153:1,最大拉力1 500磅,在無負(fù)載情況下電流4.5 A左右,在最大拉力下電流能高達(dá)27 A,所以在浮標(biāo)上要加上配重裝置以平衡浮力,減小拉力。驅(qū)動采用BTN7960芯片為主的模塊,驅(qū)動電壓范圍為6 V~24 V,最大驅(qū)動電流約為40 A。
本系統(tǒng)中微處理器選用TI公司16 bit單片機(jī)MSP430F149。這款單片機(jī)特點(diǎn)之一是它的低功耗,同時還可以很方便地在5種低功耗模式下進(jìn)行切換。MSP430F149內(nèi)部具有兩個USART收發(fā)控制器,12 bit A/D轉(zhuǎn)換器,以及豐富的定時器資源;片上集成2 KB RAM和60 KB Flash Memory,完全能滿足本系統(tǒng)設(shè)計(jì)的資源要求[4]。
加速度和傾角傳感器輸出的模擬電壓信號,可以通過430單片機(jī)內(nèi)部12 bit A/D轉(zhuǎn)換器獲得;溫度傳感器采用單總線的通信方式,可以通過430單片機(jī)I/O訪問;濕度傳感器[5]和光強(qiáng)度傳感器采用I2C協(xié)議進(jìn)行訪問;CTD傳感器和DO溶解氧傳感器通過串口進(jìn)行訪問。
3 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)軟件設(shè)計(jì)包括3大部分:中繼板傳感器組數(shù)據(jù)采集和傳輸程序,浮標(biāo)板傳感器組數(shù)據(jù)采集和傳輸程序以及潛標(biāo)板控制程序,本設(shè)計(jì)程序均在IAR下編譯、調(diào)試。
3.1 中繼板數(shù)據(jù)采集及傳輸程序設(shè)計(jì)
中繼板程序設(shè)計(jì)可以分為以下5個步驟:
(1)系統(tǒng)初始化
上電后,對系統(tǒng)時鐘、I/O口、UART、A/D以及傳感器接口初始化配置。
(2)Si4432模塊參數(shù)配置
通過單片機(jī)配置Si4432模塊的工作模式、收發(fā)波特率、本機(jī)地址、目的地址以及發(fā)射功率等級等參數(shù)。中繼板參數(shù)配置:工作模式為收發(fā)工作模式,波特率2 400 b/s,本機(jī)地址為0x60,目的地址為0x59,發(fā)射功率等級為7。
(3)中繼板接收浮標(biāo)板數(shù)據(jù)包
Si4432接收中斷程序4432_RX判斷是否接收到浮標(biāo)板發(fā)送數(shù)據(jù)的請求,如果接收到發(fā)送請求,則中繼板進(jìn)入接收數(shù)據(jù)的狀態(tài),并且一直等接收到完整的數(shù)據(jù)幀后才使能發(fā)送功能。使能發(fā)送后,中繼板可以將完整的數(shù)據(jù)幀發(fā)送給岸基板。
(4)數(shù)據(jù)幀整合和發(fā)送
中繼板使能發(fā)送數(shù)據(jù)后,發(fā)送程序開始將數(shù)據(jù)裝成完整的64 B數(shù)據(jù)幀格式,然后通過Si4432模塊發(fā)送64 B的數(shù)據(jù)到岸基模塊,發(fā)完為止。
(5)中繼板傳感器采集數(shù)據(jù)并更新緩沖區(qū)
中繼板在沒有請求發(fā)送和請求接收數(shù)據(jù)的情況下,溫度傳感器、濕度傳感器、光照傳感器、傾角傳感器和加速度傳感器開始工作并不斷獲取當(dāng)前傳感器數(shù)據(jù),以及時更新緩沖區(qū)。中繼板程序流程圖如圖3所示。
3.2 浮標(biāo)板數(shù)據(jù)采集及傳輸程序設(shè)計(jì)
浮標(biāo)板程序設(shè)計(jì)可以分為以下4個步驟:
(1)系統(tǒng)初始化
上電后,對系統(tǒng)時鐘、I/O口、UART、A/D、傳感器接口、DS1302以及FAT文件系統(tǒng)初始化配置。
(2)Si4432模塊參數(shù)配置
通過單片機(jī)配置Si4432模塊的工作模式、收發(fā)波特率、本機(jī)地址、目的地址以及發(fā)射功率等級等參數(shù)。中繼板參數(shù)配置:工作模式為收發(fā)工作模式,波特率為2 400 b/s,本機(jī)地址為0x61,目的地址為0x60,發(fā)射功率等級為7。
(3)浮標(biāo)板發(fā)送控制命令到潛標(biāo)板
浮標(biāo)板與潛標(biāo)板通信是在電纜上以RS485協(xié)議為基礎(chǔ)進(jìn)行通信,通過時間片切換的方法依次發(fā)送如下命令給潛標(biāo)板:電機(jī)下降命令0x01,上傳電池剩余電量命令0x03,釋放潛標(biāo)系統(tǒng)命令0x02。每發(fā)送一個命令后,要等到相應(yīng)的動作執(zhí)行完畢后才能執(zhí)行下一條命令。
(4)浮標(biāo)板發(fā)送數(shù)據(jù)幀到中繼板
浮標(biāo)板在接收到發(fā)送數(shù)據(jù)請求時,將傳感器數(shù)據(jù)和時間一起從SD卡中讀出,準(zhǔn)備待發(fā)送的數(shù)據(jù),將數(shù)據(jù)打包成完整的64 B數(shù)據(jù)幀格式,通過Si4432模塊發(fā)送到中繼板,發(fā)完為止。
(5)傳感器組開始工作并更新緩沖區(qū)
在浮標(biāo)板發(fā)送電機(jī)下降命令,浮標(biāo)下降到海面以下后,CTD傳感器和DO溶解氧傳感器開始工作,并將傳感器數(shù)據(jù)和當(dāng)前時間以FAT文件系統(tǒng)形式存放到SD卡中,直到浮標(biāo)再次浮到海面上為止。浮標(biāo)板程序流程圖如圖4所示。
3.3 潛標(biāo)板程序設(shè)計(jì)
潛標(biāo)板程序設(shè)計(jì)可以分為以下2個步驟:
(1)系統(tǒng)初始化
上電后,對系統(tǒng)時鐘、I/O口、UART、A/D進(jìn)行初始化配置。
(2)潛標(biāo)板接收浮標(biāo)板命令,進(jìn)行解析并執(zhí)行
潛標(biāo)板接收浮標(biāo)板發(fā)送的命令:浮標(biāo)系統(tǒng)釋放命令0x02,電機(jī)下降命令0x01以及上傳電量命令0x03。潛標(biāo)板接收到系統(tǒng)釋放命令后,驅(qū)動步進(jìn)電機(jī)執(zhí)行釋放命令;潛標(biāo)板接收到電機(jī)下降命令后,驅(qū)動直流電機(jī)先做向下運(yùn)動,過一段時間后再做向上運(yùn)動,將浮標(biāo)板送至海面上;潛標(biāo)板接收到電量上傳命令后,將電量信號上傳到浮標(biāo)板。潛標(biāo)板程序流程圖如圖5所示。
4 系統(tǒng)調(diào)試
在實(shí)驗(yàn)室環(huán)境下,通過Si4432無線收發(fā)模塊建立岸基模塊、中繼模塊、浮標(biāo)模塊之間的通信;浮標(biāo)模塊與潛標(biāo)模塊之間通過RS485總線電纜連接。
外圍的傳感器組掛接到單片機(jī)系統(tǒng)中,然后設(shè)定岸基模塊的本地地址為0x59,中繼模塊的本地地址為0x60,浮標(biāo)模塊的本地地址為0x61,打開電源,讓系統(tǒng)開始工作。接著以64 B為一個數(shù)據(jù)包,連續(xù)發(fā)送1 000個數(shù)據(jù)包,以不同距離和不同發(fā)送波特率完成數(shù)據(jù)傳輸誤碼率的測試,得出結(jié)果如表1所示。
由表1中測試結(jié)果可知,在傳輸距離為1 000 m以內(nèi),數(shù)據(jù)傳輸速率低于9 600 b/s的條件下,數(shù)據(jù)傳輸誤碼率基本為零,所以本系統(tǒng)基本上符合設(shè)計(jì)要求。
在實(shí)驗(yàn)室模擬調(diào)試的基礎(chǔ)上,在戶外也進(jìn)行了進(jìn)一步的測試,選擇測試點(diǎn)為海洋二所。將中繼板、浮標(biāo)板和潛標(biāo)板放入水中,基站板連接上位機(jī)軟件,對系統(tǒng)實(shí)行為期一周的實(shí)地測試。結(jié)果表明,系統(tǒng)工作正常,達(dá)到預(yù)期的測試結(jié)果。
本文利用升降式浮標(biāo)設(shè)計(jì)和實(shí)現(xiàn)了一種海洋數(shù)據(jù)采集與傳輸系統(tǒng)。該系統(tǒng)在設(shè)計(jì)時還保留了一些傳感器接口,為以后改進(jìn)、升級系統(tǒng)做準(zhǔn)備。同時由于浮標(biāo)系統(tǒng)在海水中受到浮力作用,為保證浮標(biāo)系統(tǒng)可靠的上升和下降,配備了一個重物掛在浮標(biāo)系統(tǒng)上,已減去浮標(biāo)系統(tǒng)的浮力,從而減輕了直流電機(jī)的負(fù)擔(dān),節(jié)省電量,進(jìn)而提高了水下系統(tǒng)持續(xù)工作時間。本系統(tǒng)很好地滿足了海洋數(shù)據(jù)實(shí)時傳輸要求,達(dá)到了預(yù)期的目標(biāo)。
參考文獻(xiàn)
[1] 姚泊.海洋環(huán)境概論[M].北京:化學(xué)工業(yè)出版社,2007.
[2] 郭亮.基于Si4432的無線射頻收發(fā)系統(tǒng)的設(shè)計(jì)[J].新器件新技術(shù),2009,11(1):38-41.
[3] 孫貴新,史峰.SBE25 CTD剖面儀以及使用方法[J].氣象水文海洋儀器,2010,3(3):18-20.
[4] 張福才.MSP430單片機(jī)自學(xué)筆記[M].北京:北京航空航天大學(xué)出版社,2011.
[5] Sensirion公司.SHT1x datasheet[Z].2008.