多功能低功耗海洋數(shù)據(jù)采集器的設(shè)計
摘要:為了克服國內(nèi)數(shù)據(jù)采集器通用性不強,論文以C8051F120為控制核心設(shè)計了通用多功能低功耗海洋數(shù)據(jù)采集器。多功能低功耗海洋數(shù)據(jù)采集器采用B1203LS非線性變壓模塊,降低了系統(tǒng)的功耗;采用了OCM12864-8液晶顯示設(shè)計,實現(xiàn)了系統(tǒng)的菜單化管理;采用大容量存儲器AT45DB041,可以存儲大量歷史數(shù)據(jù);并提供了RS232接口可以實現(xiàn)遠程有線或者無線傳輸。整個系統(tǒng)有體積小、功耗低、太陽能供電的特點,完全達到設(shè)計要求,有較大的實用價值和應(yīng)用前景。
關(guān)鍵詞:采集器;低功耗;C8051F120;海洋氣象
國產(chǎn)海濱觀測站所采用的數(shù)據(jù)采集器大多與相應(yīng)的海濱觀測站配套使用,當(dāng)需要擴充海濱觀測站觀測功能,增加新的觀測要素傳感器時,不能直接進行升級,必須更換,從而造成重復(fù)建設(shè)和資源浪費。根據(jù)這一情況,改進和完善數(shù)據(jù)采集器,對于提高海濱觀測站的擴展性和通用性具有重要意義,同時這也是國際上海濱觀測站在擴展觀測要素、提高系統(tǒng)開放性方面的趨勢之一。
在硬件上實現(xiàn)通用,只需要修改配置文件,就可以實現(xiàn)氣象和水文采集器的互換使用。這樣可以大大簡化系統(tǒng)維護工作,提高觀測效率。同時論文基于一種低功耗單片機的海洋數(shù)據(jù)采集器,采用RS232接口實時接受和發(fā)送數(shù)據(jù),配有大容量存儲器,支持無線數(shù)據(jù)傳輸及日歷時鐘,可以長期獨立工作在無人值守的野外觀測記錄。論文還在開發(fā)時候考慮到海洋環(huán)境和產(chǎn)品開發(fā)成本,做到了防腐蝕、低功耗、低成
本、太陽能供電。
1 系統(tǒng)整體功能設(shè)計
系統(tǒng)要分別對氣壓、氣溫、濕度、降水、風(fēng)速、風(fēng)向等氣象要素和潮汐、水溫、鹽度等水文要素進行采集。根據(jù)對各種要素的觀測要求選擇合適的傳感器,目前市面上的主流傳感器接口輸出信號有4~20 mA電流模擬信號、電壓模擬信號、脈沖信號、串口信號等。本設(shè)計根據(jù)所采集的數(shù)據(jù)種類和選用的傳感器接口類型,設(shè)計了3類信號接收端:脈沖信號,RS232串口信號,模擬信號。傳感器信號經(jīng)信號調(diào)理電路傳輸至外擴A/D轉(zhuǎn)換電路,經(jīng)A/D轉(zhuǎn)換后進入單片機。單片機對信號進行濾波、添加時間標(biāo)簽等數(shù)據(jù)處理后,作為控制核心將數(shù)據(jù)存入FLASH存儲器,同時監(jiān)聽上位機指令,準(zhǔn)備將數(shù)據(jù)通過串口發(fā)送GPS模塊實現(xiàn)上位機通信并完成鍵盤設(shè)置和液晶顯示控制。采集器長期工作在無人看守狀態(tài)下,因此設(shè)計了程序故障后自動硬件復(fù)位模塊。系統(tǒng)總體方案框圖如圖1所示。
MCU模塊作為整個采集器的控制核心,主要完成信號的多路采集、軟件濾波、數(shù)據(jù)運算、上位機指令監(jiān)聽、數(shù)據(jù)傳輸、數(shù)據(jù)存儲、液晶顯示和鍵盤等控制功能。
信號輸入模塊主要功能是:將分別對氣壓、氣溫、濕度、降水、風(fēng)速、風(fēng)向等氣象要素和潮汐、水溫、鹽度等水文要素進行采集的信號進行調(diào)理后進MCU。
串行通信模塊實現(xiàn)上位機與下位機的相互通信,上位機可以通過發(fā)送指令選擇下位機工作在氣象或水文模式。上位機還可以通過指令修改下位機系統(tǒng)時間。
為了安裝和調(diào)試方便,系統(tǒng)設(shè)計了液晶和鍵盤模塊。該模塊用來完成采集器工作模式的選擇;系統(tǒng)時鐘的設(shè)定;水文或氣象參數(shù)的最大值和最小值的設(shè)定。
其他外設(shè)包括:看門狗模塊、FLASH存儲模塊和實時時鐘模塊。硬件看門狗模塊能夠使程序故障后自動恢復(fù)系統(tǒng)正常工作狀態(tài)。本設(shè)計要求數(shù)據(jù)存儲量大,因此使用擴展外部FLASH存儲模塊。數(shù)據(jù)傳輸格式要求,用時間來標(biāo)記不同時刻的數(shù)據(jù),因此采集器應(yīng)有實時時鐘模塊。
采集器有可能工作在沒有交流電源的工作場合,本設(shè)計用12 V太陽能電池供電。
2 系統(tǒng)硬件設(shè)計
根據(jù)系統(tǒng)整體功能,系統(tǒng)硬件包括:輸入信號接口模塊、單片機核心控制模塊、數(shù)據(jù)存儲模塊、時鐘模塊、看門狗模塊、串行通信模塊和電源模塊。
2.1 輸入信號接口設(shè)計
采集器接收從風(fēng)速風(fēng)向傳感器和雨量傳感器傳來的兩路脈沖信號包括:0~1 kHz方波的風(fēng)速頻率信號和降雨脈沖信號。兩路輸入信號進行信號調(diào)理電路,調(diào)理成可以進入單片機的0~3.3 V電壓信號進入MCU。采集器要接收從氣壓傳感器、濕溫傳感器和風(fēng)向傳感器輸入的四路模擬信號。本設(shè)計A/D模塊使用外接16位的A/D轉(zhuǎn)換芯片MAX1168。四路模擬信號進入AD后轉(zhuǎn)換成數(shù)字量,經(jīng)信號調(diào)理電路轉(zhuǎn)換成0~3.3 V電壓信號進入MCU。采集器將激光測距傳感器和溫鹽傳感器輸入的兩路RS232信號經(jīng)過MXA232電平轉(zhuǎn)化后,進入外擴串口芯片ST16C554D,然后進入MCU。為防止高強度干擾損壞單片機,文中設(shè)計了光電隔離電路。輸入信號邏輯框圖如圖2所示。
2.2 單片機核心控制模塊
單片機核心控制模塊的設(shè)計主要包括C8051F020單片機的最小系統(tǒng)、鍵盤及液晶顯示電路的設(shè)計。C8051F系列單片機是Silicone Labora tories公司生產(chǎn)的低功耗混合信號片上系統(tǒng)型MCU,精簡指令集結(jié)構(gòu),大多數(shù)指令可以在一個時鐘周期內(nèi)完成。C8051F120單片機具有100MIPS的處理峰值、128 kB的Flash存儲器、8448B的RAM、可外接存儲器、具有12位A/D且轉(zhuǎn)換峰值可達100ksps、64個I/O端口。因此選用C8051F1 20作為整個采集器的控制核心。為了方便野外安裝、調(diào)試設(shè)備,設(shè)計了鍵盤和液晶顯示模塊。液晶顯示模塊選擇OCM12864-8,與單片機連接只需5根數(shù)據(jù)線,操作方便,內(nèi)置字庫,可以輕松顯示中文、圖畫、數(shù)字、英文等信息。
2.3 數(shù)據(jù)存儲接口設(shè)計
數(shù)據(jù)存儲時,每分鐘數(shù)據(jù)以一條記錄的形式存入文件。測量數(shù)據(jù)以ASCII字符存儲,各要素數(shù)據(jù)按照讀取配置文件時得到的要素順序排列,并在記錄前面加上采集時間。選擇的存儲芯片AT45DB041,采用8腳的SOIC封裝。AT45DB041是ATMEL公司的新型FLASH芯片,該芯片具有容量大、讀寫速度快、外圍電路少等諸多優(yōu)點,更為重要的是該芯片可最低工作在2.5 V,工作電流僅為4 mA,因此在移動通信、便攜場合得到了廣泛的應(yīng)用。數(shù)據(jù)存儲接口邏輯如圖3所示。
2.4 時鐘和看門狗設(shè)計
數(shù)據(jù)傳輸格式要求,用時間來標(biāo)記不同時刻的數(shù)據(jù),因此采集器應(yīng)有實時時鐘設(shè)計。本設(shè)計使用的是DS1305實時時鐘芯片,該芯片以SPI總線形式與單片機相連。
采集器要長時間工作在無人看守狀態(tài)下,因此設(shè)計要求系統(tǒng)必須有程序故障后自動恢復(fù)系統(tǒng)正常工作狀態(tài)。外擴專門看門狗芯片X5043,X5043是INTERSIL公司生產(chǎn)的都有上電復(fù)位、高電壓復(fù)位控制、可編程看門狗定時器、4Kbit3-WIRE接口非易失性EEPROM、僅有8個引腳的封裝。工作過程中,微處理器或外設(shè)失效,導(dǎo)致系統(tǒng)“鎖死”或者“跑飛”,看門狗定時周期到X5043激活RESET引腳,停止了微控制器的工作,過200 ms后再次啟動單片機工作。
數(shù)據(jù)存儲模塊、時鐘模塊、看門狗模塊都是以SPI總線形式與單片機進行通信,節(jié)省了單片機管腳資源。
2.5 電源模塊設(shè)計
因為本設(shè)計供電方式為太陽能供電,太陽能供電電池成本較高,每瓦15元左右。為降低設(shè)備后繼成本,電池的壽命問題決定用B120315轉(zhuǎn)3.3 V。B1203LS優(yōu)點是非線性變壓、轉(zhuǎn)化效率高達80%、功耗低。設(shè)計完整后經(jīng)過測量,系統(tǒng)工作供電壓12 V時電流為80 mA,功率為0.96W。
3 軟件設(shè)計
本設(shè)計中,系統(tǒng)軟件是采用由頂往下和模塊化設(shè)計思想。系統(tǒng)軟件設(shè)計以中斷方式為主,以查詢方式為輔。用中斷來接收采集數(shù)據(jù)和上位機命令,用查詢方式對數(shù)據(jù)進行存儲。系統(tǒng)上電后先初始化各個模塊,然后啟動硬件看門狗,接下來是等待定時器中斷產(chǎn)生采集數(shù)據(jù)和等待上位機命令,并且查詢一分鐘時間是否到。如果一分鐘時間到處理存儲采集的數(shù)據(jù)。在程序中要進行多次喂狗,防止非是故原因看系統(tǒng)復(fù)位。根據(jù)設(shè)計每個要求,把系統(tǒng)的硬件資源盡可能最優(yōu)的軟件實現(xiàn)。設(shè)計流程如圖4所示。
4 數(shù)據(jù)測試
分別對模擬信號0 V、2.5 V和5 V數(shù)據(jù)點進行數(shù)據(jù)測試.每個數(shù)據(jù)點測50次求算術(shù)平均值并保留3位小數(shù),得測試表如表1。
分別對頻率信號100 Hz、500 Hz和1 000 Hz數(shù)據(jù)點進行數(shù)據(jù)測試,每個數(shù)據(jù)點測50次求算術(shù)平均值并保留3位小數(shù),得測試表如表2所示。
根據(jù)測試數(shù)據(jù),得出所有測量值誤差均不足0.1%,達到了各觀測要素的一級要求,完全符合設(shè)計要求。
5 結(jié)束語
文中對數(shù)據(jù)采集器的設(shè)計提出了詳細的硬件設(shè)計和軟件設(shè)計方案,采用單片機技術(shù)、傳感器技術(shù)、程序存儲技術(shù)、串口通信技術(shù),完成了氣象參數(shù)的定時采集、分塊存儲、實時顯示和串口傳輸。經(jīng)測試證明軟硬件均切實可行,測試的數(shù)據(jù)在誤差允許范圍內(nèi)。本設(shè)計可投入實際應(yīng)用,達到了預(yù)期設(shè)計目標(biāo),對以后類似研究和系統(tǒng)改進具有一定的參考作用。