李超
(第七一五研究所,浙江杭州,310023)
隨著陸地資源的過度開發(fā),各個國家紛紛開始加大對海洋資源的開發(fā)投入。通過海洋水文氣象的觀測能夠幫助人們更好的分析了解海洋環(huán)境的變化規(guī)律,為海洋資源開發(fā)、預防海洋災害等方面提供科學依據(jù)。
海洋浮標是一種能夠?qū)崿F(xiàn)實時、自動、全天候海洋觀測的設備平臺,是海洋觀測中最重要、最可靠、最穩(wěn)定的手段之一[1]。隨著我國“數(shù)字海洋”建設不斷推進,海洋觀測已進入到對海洋動力、大氣、環(huán)境、突發(fā)事件等實行全天候立體觀測階段,海洋浮標從單一的氣象浮標或水文浮標,發(fā)展到綜合多參數(shù)浮標[2]。海洋浮標所搭載的傳感器數(shù)量也由幾個增加到十幾個。為適應海洋浮標發(fā)展的需求,設計了一種用于海洋浮標的多串口數(shù)據(jù)采集系統(tǒng)。
多串口數(shù)據(jù)采集系統(tǒng)包括供電模塊、數(shù)據(jù)采集模塊和無線傳輸模塊組成。供電模塊用于各傳感器的電源管理,當傳感器不工作時關斷傳感器電源減少電量消耗。數(shù)據(jù)采集模塊是浮標的控制中心,用于采集各個傳感器的輸出數(shù)據(jù)、監(jiān)控浮標的狀態(tài)信息。無線傳輸模塊用于發(fā)送浮標采集的各個傳感器的數(shù)據(jù),實時發(fā)送到網(wǎng)站接收平臺,實現(xiàn)浮標的實時采集觀測。如圖1所示。

圖1 多串口數(shù)據(jù)采集系統(tǒng)結構框圖
浮標大多采用蓄電池加太陽能充電板的供電方式,當白天陽光充足時,太陽能充電板給浮標系統(tǒng)提供電量的同時將多余的電量沖入蓄電池,當夜晚無陽光時,使用蓄電池的電量給浮標供電,這種供電方式?jīng)Q定對系統(tǒng)的整體功耗要求比較高,所以供電模塊采用低功耗設計。
供電模塊主要包括電壓轉(zhuǎn)換電路和開關控制電路兩部分。電壓轉(zhuǎn)化電路將蓄電池輸出的標稱為12V的電壓轉(zhuǎn)化為5V和24V輸出,滿足不同傳感器的供電需求。選用的電壓轉(zhuǎn)化電源具有高轉(zhuǎn)化效率、寬電壓輸入、輸出短路保護、高可靠性等功能,能夠滿足海上惡劣的使用環(huán)境和低功耗的要求。開關控制電路主要由三極管和MOS管組成,數(shù)據(jù)采集模塊通過IO端口控制12V和24V輸出電壓的通斷,當IO端口為高電平時輸出電壓打開,當IO端口為低電平時輸出電壓關閉。數(shù)據(jù)采集模塊根據(jù)內(nèi)部邏輯控制傳感器加電斷電,達到降低功耗的要求。如圖2所示。

圖2 開關控制電路原理圖
數(shù)據(jù)采集模塊是整個海洋浮標的控制中心。數(shù)據(jù)采集模塊通過模擬或者數(shù)字接口采集不同種類的傳感器的數(shù)據(jù),處理打包之后通過無線傳輸模塊發(fā)送到岸站接收平臺。同時通過供電模塊對傳感器進行電源管理,降低系統(tǒng)功耗。目前數(shù)據(jù)采集模塊的核心芯片一般采用單片機,但是單片機的數(shù)字外設接口有限,已經(jīng)無法滿足海洋浮標多樣化和集成化的發(fā)展要求。本文提出了一種串口擴展的設計方法,將串口數(shù)量擴展到20個以上,能夠滿足大多數(shù)海洋浮標的使用要求。
數(shù)據(jù)采集模塊的核心控制芯片采用的是STM32F429芯片。其芯片特性如下:1.71V-3.6V寬電壓供電;主頻高達180MHz;具有睡眠、停機和待機等多種低功耗模式;支持最多24通道的12位高精度模數(shù)轉(zhuǎn)換器;4個USART模塊和4個UART模塊;高達6個SPI模塊;具有外部和內(nèi)部看門狗檢測。
時鐘芯片采用的是DS3234芯片。該芯片是一款低成本、超高精度、低功耗、采用SPI總線的實時時鐘(RTC),并且集成了溫度補償晶體振蕩器(TCXO)和晶體。DS3234芯片還集成了256字節(jié)SRAM,通過外部紐扣電池供電實現(xiàn)掉電存儲。RTC可以計數(shù)秒、分、時、星期、日期、月份和年份信息。該芯片為數(shù)據(jù)采集模塊提供了精準的系統(tǒng)時鐘。
串口擴展電路采用的是一轉(zhuǎn)多路模擬開關的模式,通過單片機的IO端口控制不同的通道打開,達到串口擴展的目的。模擬開關選用CD4051芯片。CD4051芯片是單端8通道多路開關,輸入的數(shù)字信號范圍是3-20V,具有導通延時短、阻抗小等優(yōu)點,它有3個通道選擇輸入端A、B、C,通道選擇輸入端用來選擇打開的通道號。
STM32F429芯片輸出的串口引腳TX和RX分別接到兩片CD4051的公共輸入輸出端,然后CD4051的0-7通道輸入輸出端分別接到不同串口轉(zhuǎn)換芯片的輸入輸出端口。串口擴展電路原理圖如圖3所示。通過兩片CD4051模擬開關芯片,實現(xiàn)了一個串口擴展成8個串口。本設計一共采用了四片模擬開關芯片,對兩個串口分別進行了擴展,擴展之后串口總數(shù)達到了22個。

圖3 串口擴展電路原理圖
數(shù)據(jù)采集模塊軟件程序主要包括四部分組成:初始化程序、時間校準程序、傳感器采集處理程序和打包上傳程序。系統(tǒng)上電后,首先進行初始化設置,包括初始化系統(tǒng)時鐘、IO、SD卡、串口等。然后接收GPS時間數(shù)據(jù),判斷數(shù)據(jù)有效之后對系統(tǒng)時間進行校準,如果無效則不進行校準,使用系統(tǒng)自帶時鐘芯片的時間。然后判斷是否到達傳感器采樣時間,通常傳感器工作周期設置為0.25h、0.5h、1h、4h,即從零點開始,每隔固定時間采集一次傳感器數(shù)據(jù)。當?shù)竭_某一儀器的采集時間時,先判斷該儀器對應的串口是否為擴展串口,如果是擴展串口,需要先通過IO設置切換到對應的通道,然后在進行傳感器數(shù)據(jù)采集處理。最后到達數(shù)據(jù)上傳時間后,將所采集的所有傳感器數(shù)據(jù)進行打包,并通過無線傳輸模塊將數(shù)據(jù)上傳。如圖4所示。

圖4 數(shù)據(jù)采集模塊軟件設計流程
無線傳輸模塊可選用北斗通信終端或者GPRS無線數(shù)傳模塊。北斗通信終端的優(yōu)點是傳輸數(shù)據(jù)保密性好,能夠在遠海使用,但是通信帶寬較低。而GPRS無線數(shù)傳模塊則傳輸數(shù)據(jù)量大,但是只能在近海基站信號覆蓋的地方使用,具有局限性。系統(tǒng)同時兼容兩種傳輸模式,可根據(jù)使用環(huán)境和需求選用合適的傳輸方式。
本文基于海洋浮標設計了多串口數(shù)據(jù)采集系統(tǒng),該系統(tǒng)具有擴展性強、性價比高、開發(fā)便利等特點。基本能夠滿足用戶不同水域、不同功能的水質(zhì)監(jiān)測要求,使得海洋浮標實現(xiàn)了海上連續(xù)、實時、長期、自動獲取海洋水文氣象的監(jiān)測數(shù)據(jù),相比傳統(tǒng)的方法節(jié)約了大量的人力物力,并且能夠及時了解布放水域中水質(zhì)的變化,對了解海洋、開發(fā)海洋有十分重要的意義[3]。