謝騰騰,黃少偉,張亞南,王芳輝
(1.中國石油大學(xué) 信息控制工程學(xué)院,山東 東營 257061;2.勝利油田勝利勘察設(shè)計研究院 山東 東營 257026)
國產(chǎn)海濱觀測站所采用的數(shù)據(jù)采集器大多與相應(yīng)的海濱觀測站配套使用,當需要擴充海濱觀測站觀測功能,增加新的觀測要素傳感器時,不能直接進行升級,必須更換,從而造成重復(fù)建設(shè)和資源浪費[1]。根據(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ā)成本,做到了防腐蝕、低功耗、低成本、太陽能供電。
系統(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)換后進入單片機。單片機對信號進行濾波、添加時間標簽等數(shù)據(jù)處理后,作為控制核心將數(shù)據(jù)存入FLASH存儲器,同時監(jiān)聽上位機指令,準備將數(shù)據(jù)通過串口發(fā)送GPS模塊實現(xiàn)上位機通信并完成鍵盤設(shè)置和液晶顯示控制。采集器長期工作在無人看守狀態(tài)下,因此設(shè)計了程序故障后自動硬件復(fù)位模塊。系統(tǒng)總體方案框圖如圖1所示。
圖1 系統(tǒng)總體方案框圖Fig.1 Overall program of the system diagram
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ù)傳輸格式要求,用時間來標記不同時刻的數(shù)據(jù),因此采集器應(yīng)有實時時鐘模塊。
采集器有可能工作在沒有交流電源的工作場合,本設(shè)計用12 V太陽能電池供電。
根據(jù)系統(tǒng)整體功能,系統(tǒng)硬件包括:輸入信號接口模塊、單片機核心控制模塊、數(shù)據(jù)存儲模塊、時鐘模塊、看門狗模塊、串行通信模塊和電源模塊。
采集器接收從風(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 輸入信號邏輯框圖Fig.2 Logic diagram of the input signal
單片機核心控制模塊的設(shè)計主要包括C8051F020單片機的最小系統(tǒng)、鍵盤及液晶顯示電路的設(shè)計。C8051F系列單片機是Silicone Laboratories公司生產(chǎn)的低功耗混合信號片上系統(tǒng)型MCU,精簡指令集結(jié)構(gòu),大多數(shù)指令可以在一個時鐘周期內(nèi)完成[2]。C8051F120單片機具有100MIPS的處理峰值、128 kB的Flash存儲器、8448B的RAM、可外接存儲器、具有12位A/D且轉(zhuǎn)換峰值可達100ksps、64個I/O端口。因此選用C8051F120作為整個采集器的控制核心[3-4]。為了方便野外安裝、調(diào)試設(shè)備,設(shè)計了鍵盤和液晶顯示模塊。液晶顯示模塊選擇OCM12864-8,與單片機連接只需5根數(shù)據(jù)線,操作方便,內(nèi)置字庫,可以輕松顯示中文、圖畫、數(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)用[5-6]。數(shù)據(jù)存儲接口邏輯如圖3所示。
圖3 數(shù)據(jù)存儲接口邏輯Fig.3 Data storage interface logic
數(shù)據(jù)傳輸格式要求,用時間來標記不同時刻的數(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后再次啟動單片機工作[7]。
數(shù)據(jù)存儲模塊、時鐘模塊、看門狗模塊都是以SPI總線形式與單片機進行通信,節(jié)省了單片機管腳資源。
因為本設(shè)計供電方式為太陽能供電,太陽能供電電池成本較高,每瓦15元左右。為降低設(shè)備后繼成本,電池的壽命問題決定用B1203LS轉(zhuǎn)3.3 V。B1203LS優(yōu)點是非線性變壓、轉(zhuǎn)化效率高達80%、功耗低。設(shè)計完整后經(jīng)過測量,系統(tǒng)工作供電壓12 V時電流為80 mA,功率為0.96W[8]。
本設(shè)計中,系統(tǒng)軟件是采用由頂往下和模塊化設(shè)計思想。系統(tǒng)軟件設(shè)計以中斷方式為主,以查詢方式為輔。用中斷來接收采集數(shù)據(jù)[9]和上位機命令,用查詢方式對數(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è)計流程圖Fig.4 Software designing flow diagram
分別對模擬信號0 V、2.5 V和5 V數(shù)據(jù)點進行數(shù)據(jù)測試,每個數(shù)據(jù)點測50次求算術(shù)平均值并保留3位小數(shù),得測試表如表1。
表1 模擬量測試結(jié)果Tab.1 Test result of analog
分別對頻率信號100 Hz、500 Hz和1 000 Hz數(shù)據(jù)點進行數(shù)據(jù)測試,每個數(shù)據(jù)點測50次求算術(shù)平均值并保留3位小數(shù),得測試表如表2所示。
表2 脈沖量測試結(jié)果Tab.2 Test result of pulse
根據(jù)測試數(shù)據(jù),得出所有測量值誤差均不足0.1%,達到了各觀測要素的一級要求,完全符合設(shè)計要求。
文中對數(shù)據(jù)采集器的設(shè)計提出了詳細的硬件設(shè)計和軟件設(shè)計方案,采用單片機技術(shù)、傳感器技術(shù)、程序存儲技術(shù)、串口通信技術(shù),完成了氣象參數(shù)的定時采集、分塊存儲、實時顯示和串口傳輸。經(jīng)測試證明軟硬件均切實可行,測試的數(shù)據(jù)在誤差允許范圍內(nèi)。本設(shè)計可投入實際應(yīng)用,達到了預(yù)期設(shè)計目標,對以后類似研究和系統(tǒng)改進具有一定的參考作用。
[1]高太長,劉西川,劉磊,等.自動氣象站及氣象傳感器發(fā)展現(xiàn)狀和前景分析[J].儀器儀表學(xué)報,2009(29):127-133.GAO Tai-zhang,LIU Xi-chuan,LIU Lei,et al.Analysis of development status and prospects of automatic weather stations and meteorological sensors[J].Chinese Journal of Scientific Instrument,2009(29):127-133.
[2]GBT 14914-200,海濱觀測規(guī)范[S].2006.
[3]鮑可進.C8051F微控制器原理及應(yīng)用[M].北京:中國電力出版社,2006.
[4]張亞南,劉潤華,游永智.基于C8051F930的管道溫度壓力遠程監(jiān)測系統(tǒng)[J].電子設(shè)計工程,2010,18(10):83-86.ZHANG Ya-nan,LIU Run-hua,YOU Yong-zhi.Remote pipeline temperature and pressure monitoring system based on C8051F930[J].Electronic Design Engineering,2010,18(10):83-86.
[5]潘琢金.混合信號ISP FLASH微控制器[M].新華龍電子有限公司,2004.
[6]張杏珍,孫健.IC卡芯片AT45DB041的原理及應(yīng)用[J].現(xiàn)代電子技術(shù)學(xué)報,2005(10):17-18.ZHANGXing-zhen,SUNJian.ICcard chip the AT45DB041 the principle and application[J].Modern Electronics Technique,2005(10):17-18.
[7]楊桂芹,嚴天峰.單片機應(yīng)用技術(shù)講座(19)第十五講 看門狗及其軟硬件實現(xiàn)方法[J].電子世界,2003(7):33-35.YANG Gui-qin,YAN Tian-feng.Lecture 15 Watchdog and its hardware and software implementation.SCM application of technical seminars (19)[J].Electronics World,2003(7):33-35.
[8]Greene JD,Gross A C.Nonlinear modeling of transformers[J].IEEE Transactions On Industry Applications,1988,24 (3):433-436.
[9]趙陽.數(shù)據(jù)中心節(jié)能降耗實施途徑探討 [J].陜西電力,2011(2):80-83.ZHAOYang.Probe into energy saving measures in data ceter[J].Shaanxi Electric Power,2011(2):80-83.