石林羚
摘要:為滿足當(dāng)前海洋氣象數(shù)據(jù)參數(shù)的多樣化,傳感器種類增多的需求,設(shè)計(jì)了一種基于STM32處理器的模塊化浮標(biāo)數(shù)據(jù)采集處理系統(tǒng)。介紹了基于主機(jī)單元、傳感器和北斗通訊系統(tǒng)的模塊化數(shù)據(jù)采集處理的硬件電路,給出了各模塊的軟件流程。實(shí)際測(cè)試表明,該系統(tǒng)具有實(shí)時(shí)性、智能組合和擴(kuò)展、高可靠性和維護(hù)性等特點(diǎn),可靠運(yùn)用于浮標(biāo)系統(tǒng)的海洋氣象數(shù)據(jù)的監(jiān)測(cè)和傳輸。
關(guān)鍵詞:STM32;模塊化;氣象數(shù)據(jù);采集系統(tǒng)
0 引言
隨著我國“數(shù)字海洋”建設(shè)不斷深入推進(jìn),海洋觀測(cè)已進(jìn)入到對(duì)海洋動(dòng)力、大氣、環(huán)境、突發(fā)事件等實(shí)行全天候立體觀測(cè)階段,觀測(cè)參數(shù)已從傳統(tǒng)的風(fēng)、溫、濕、壓、波浪觀測(cè)擴(kuò)展到鹽、流、水質(zhì)、碳?xì)?、幅射、光照度等,傳感器?shù)量類型繁多,接口包括模擬、脈沖、數(shù)字(232、485、422等)等。復(fù)雜化帶來了監(jiān)測(cè)傳感器的專業(yè)化和多樣化,傳統(tǒng)浮標(biāo)單一采集系統(tǒng)已不適應(yīng)傳感器多樣化的搭配組合,數(shù)據(jù)采集和處理的實(shí)時(shí)性已難以滿足要求。
基于以上要求,本文研究的主要內(nèi)容是基于CAN總線的模塊化浮標(biāo)數(shù)據(jù)采集處理系統(tǒng)。包括下位機(jī)軟件和硬件的設(shè)計(jì),以及CAN總線通信的應(yīng)用。
1 系統(tǒng)硬件主要模塊設(shè)計(jì)
1.1 系統(tǒng)硬件組成框圖
1.2 系統(tǒng)的硬件部分主要由主控模塊、采集模塊和U盤存儲(chǔ)模塊和電源模塊組成。硬件的組成框圖如圖1所示。
1.2.1電源供電模塊
電源模塊的電路設(shè)計(jì)考慮其輸入電壓范圍應(yīng)滿足DC12V~20V,輸出電壓一方面作為控制器工作電源,另一方面為配置的傳感器提供電源。從系統(tǒng)電源的負(fù)載來看,DC12的負(fù)載包括控制器、實(shí)時(shí)傳輸設(shè)備和大多數(shù)傳感器,每個(gè)浮標(biāo)的配置不同,總功耗不同,根據(jù)具體配置設(shè)計(jì)太陽能電池板的功率和蓄電池的容量。電源模塊的輸出負(fù)載根據(jù)目前配置過的負(fù)載,考慮一定的擴(kuò)展容量,DC5V輸出電流2A; DC24V輸出電流為5A。
1.2.2主控模塊
主控模塊為設(shè)備控制中心,集數(shù)據(jù)處理、存儲(chǔ)、通訊于一體,主要功能是采集與之連接傳感器的數(shù)據(jù),同時(shí)通過CAN總線與各采集模塊通訊,接收各采集模塊采集的傳感器的數(shù)據(jù),將所接收的所有數(shù)據(jù)進(jìn)行處理后,存儲(chǔ)在存儲(chǔ)設(shè)備中,并通過北斗終端按工作周期發(fā)送至岸站。
1.2.3數(shù)據(jù)采集處理模塊
模塊的MCU采用超低功耗STM32 L4系列 - ARM CORTEX-M4 ULTRA-LOW-POWER MCUs為核心控制器。
采集模塊的輸入電源為DC5V,電源電路將DC5V通過自恢復(fù)保險(xiǎn)連接5V轉(zhuǎn)3.3V電路,DC3.3V為主控模塊的數(shù)字電路供電,輸出電流為0.5A;基準(zhǔn)電壓由3.3V轉(zhuǎn)2.5V電壓基準(zhǔn)電路實(shí)現(xiàn),為A/D轉(zhuǎn)換提供基準(zhǔn)。
采集模塊對(duì)外設(shè)計(jì)了多路RS232電路、RS485通道。所有通道的電源為可控,電源為DC12V、DC24V、DC5V、DC3.3V可選,根據(jù)系統(tǒng)配置的傳感器可將電源設(shè)置為間斷上電或常通電。采集模塊將采集的數(shù)據(jù)處理后通過CAN總線向主控模塊傳輸。
2 系統(tǒng)軟件主要模塊設(shè)計(jì)
該系統(tǒng)軟件是基于ARM Cortex-M4內(nèi)核的,集嵌入式技術(shù)、CAN總線技術(shù)和模塊化結(jié)構(gòu)于一體的STM32低功耗單片機(jī)進(jìn)行開發(fā);使用具有友好交互界面的Keil 編譯器進(jìn)行編譯。后續(xù)將開發(fā)基于操作系統(tǒng)的浮標(biāo)采集系統(tǒng)軟件。
該系統(tǒng)軟件通過CAN總線網(wǎng)絡(luò)將氣象傳感器的數(shù)據(jù)與主采集系統(tǒng)通信,和具有高可靠性、實(shí)時(shí)性和靈活性的優(yōu)點(diǎn)進(jìn)行模塊化設(shè)計(jì),具有可智能擴(kuò)展A/D、RS232和RS485接口的各型傳感器。該軟件主要包括主控軟件和采集板軟件。
2.1 主軟件組成框圖如圖2。
主控軟件流程圖如圖3所示:
主控軟件主要將數(shù)據(jù)采集板接受到的氣象數(shù)據(jù),按照預(yù)先定義的軟件協(xié)議進(jìn)行解析后,送實(shí)時(shí)數(shù)據(jù)顯示,將周期數(shù)據(jù)進(jìn)行打包,形成周期存儲(chǔ)數(shù)據(jù)和周期傳輸數(shù)據(jù)。氣象數(shù)據(jù)存儲(chǔ)模塊通過對(duì)SD卡的操作,將打包好的周期數(shù)據(jù),存儲(chǔ)至U盤。該通過CAN總線通訊,將同步信號(hào)發(fā)送至采集板,使主控板和采集板之間同步傳輸。采集板通過同步信號(hào),判斷是否開啟傳感器電源或傳輸數(shù)據(jù)至主控板。在數(shù)據(jù)傳輸方面,運(yùn)用CAN總線傳輸技術(shù);CAN總線傳輸采用非破壞性仲裁技術(shù),當(dāng)多個(gè)節(jié)點(diǎn)同時(shí)向總線發(fā)送信息時(shí),優(yōu)先級(jí)較低的節(jié)點(diǎn)會(huì)主動(dòng)的退出發(fā)送,而最高優(yōu)先級(jí)的節(jié)點(diǎn)可不受影響的繼續(xù)傳輸數(shù)據(jù)。
2.2 采集板軟件組成框圖如圖4。
采集板軟件流程圖如圖5所示:
分別通過采集板的串口和AD口,按照時(shí)序接收到傳感器傳輸?shù)臍庀髷?shù)據(jù)進(jìn)行解析。采集板將采集到的傳感器數(shù)據(jù)通過CAN總線傳送至主控板。主控板按照規(guī)定的協(xié)議進(jìn)行U盤數(shù)據(jù)打包和遠(yuǎn)程數(shù)據(jù)打包。
3.測(cè)試結(jié)果
在PC機(jī)上顯示的測(cè)試結(jié)果如圖6所示。將采集的氣象、水文等數(shù)據(jù)通過CDMA網(wǎng)絡(luò)、北斗衛(wèi)星接收進(jìn)行處理、存儲(chǔ)及顯示。
4.結(jié)束語
本文提出了一種基于STM32的氣象采集系統(tǒng)的模塊化設(shè)計(jì)方法,介紹了采集系統(tǒng)的硬件電路設(shè)計(jì)和軟件結(jié)構(gòu)設(shè)計(jì)。模塊化設(shè)計(jì)和分層設(shè)計(jì),保證軟件的實(shí)時(shí)性和可靠性。
本系統(tǒng)于2016年10月至12月,進(jìn)行了海上試運(yùn)行試驗(yàn),對(duì)設(shè)備全部功能進(jìn)行全方位、長時(shí)間的測(cè)試。經(jīng)測(cè)試,其性能穩(wěn)定,測(cè)試數(shù)據(jù)準(zhǔn)確,具有廣闊的應(yīng)用前景。
參考文獻(xiàn):(略)