一種基于ADμC816的自動(dòng)氣象站
摘要 本文介紹了一種新型的MCU ADμC816,該芯片內(nèi)含具16位的ADC。以ADμC816為核心,研制了一種自動(dòng)氣象站。該自動(dòng)站能檢測(cè)氣壓、氣溫、風(fēng)向、風(fēng)速、濕度、降雨6個(gè)氣象要素,并具有存儲(chǔ)、GPRS通訊等功能。
關(guān)鍵詞 ADμC816、自動(dòng)氣象站、GPRS
An automatic weather station base on ADμC816
YANG Lei DAN Yong-ping
Abstract:The new MCU ADμC816 was introduced in this paper, It contains the 16 bit ADC unite inside, The automatic weather station is developed base on ADμC816, It can measure six sensor signals, Air pressure, air temperature, direction of wind, wind velocity, humidity, and rainfall . Furthermore it has the function of storage, communication base on GPRS etc.
Keywords:ADμC816, automatic weather station GPRS
1 自動(dòng)氣象站的功能要求
隨著社會(huì)和科技的發(fā)展,氣象部門(mén)提出了氣象要素采集自動(dòng)化、網(wǎng)絡(luò)化的要求,為此我們與河南省氣象局聯(lián)合研制了自動(dòng)氣象站。該氣象站要求自動(dòng)采集氣壓、氣溫、風(fēng)向、風(fēng)速、濕度、降雨6個(gè)要素,具有存儲(chǔ)和通訊功能,具有實(shí)時(shí)時(shí)鐘,各要素的測(cè)量要求:
1 氣壓 測(cè)量范圍:500-1100 hPa,采集的分辨率:0.1hPa,準(zhǔn)確度:±0.3hPa,采集速率:6次/分鐘(一分鐘共取6個(gè)樣本值,取中間大小的4個(gè)值的等權(quán)算術(shù)平均值)。
2 氣溫 測(cè)量范圍:-50 - +50℃,分辨率:±0.1℃,準(zhǔn)確度:±0.2℃,采集速率:6次/分鐘。
3 濕度 測(cè)量范圍:0%-100%,分辨率:1%,準(zhǔn)確度:(±4%,濕度≤80%;±8%,濕度>80%),采集速率:6次/分鐘。
4 風(fēng)向 測(cè)量范圍:0-360º, 分辨率:3º,準(zhǔn)確度:±10º,采集速率:60次/分鐘。
5 風(fēng)速 測(cè)量范圍:0-60m/s,分辨率:0.1m/s,準(zhǔn)確度:±(0.5+0.03V)m/s,采集速率:60次/分鐘。
6 降雨 雨量范圍:0-999mm,雨強(qiáng)范圍:0-4.0mm/分, 分辨率:0.1mm,準(zhǔn)確度:(降雨量每分鐘≤10.0mm,
為±0.5mm,強(qiáng)降雨,即降雨量每分鐘>10.0mm時(shí)為±5%,)[1]。
2 ADμC816功能簡(jiǎn)介
2.1 ADμC816簡(jiǎn)介 ADμC816是美國(guó)ADI公司出品的單片機(jī),它是目前最強(qiáng)功能的單片機(jī)之一。該芯片的內(nèi)核是加強(qiáng)型8051MCU,并增加了用戶想要的WDT看門(mén)狗、I2C總線、模擬量處理、上電復(fù)位檢測(cè)、欠壓復(fù)位檢測(cè)、FLASH存儲(chǔ)器等功能,而且溫度范圍達(dá)到了工業(yè)級(jí)標(biāo)準(zhǔn)并有良好的電磁兼容特性[2]。ADμC816的模擬處理功能及存儲(chǔ)器等豐富的資源使其在數(shù)據(jù)采集系統(tǒng)、智能化儀器儀表中得到廣泛的應(yīng)用。
2.2 ADμC816的ADC ADμC816有兩路完全獨(dú)立的Σ-△ADC通道,并有片內(nèi)數(shù)字濾波,輸出速率可調(diào)。主通道具有緩沖能力,并可以編程為8個(gè)輸入范圍,電壓從正負(fù)20mV到2.56V,輸入可以選擇3個(gè)差分輸入之一(AIN1-AIN2、AIN3-AIN4、AIN2-AIN3);輔助通道不具備緩沖能力,固定輸入為0—2.5V,輸入可以選擇4個(gè)單端輸入之一(AIN3、AIN4、AIN5或內(nèi)部溫度傳感器信號(hào))。同時(shí)ADμC816有1個(gè)12位電壓輸出DAC。
2.3 存儲(chǔ)器 8KB片內(nèi)FLASH/EEPROM程序存儲(chǔ)器;640B片內(nèi)FLASH/EEPROM數(shù)據(jù)存儲(chǔ)器;256B片內(nèi)數(shù)據(jù)RAM;16MB外部數(shù)據(jù)地址空間;64KB外部程序地址空間。
3 電路組成及工作原理
電路組成如圖1所示:
3.1 最小系統(tǒng)
系統(tǒng)采用ADμC816單片機(jī),片內(nèi)有上電復(fù)位檢測(cè)、欠壓復(fù)位檢測(cè)和WDT看門(mén)狗,構(gòu)成了完備的復(fù)位電路,不需要外接電路。8KB片內(nèi)FLASH/EEPROM程序存儲(chǔ)器作為系統(tǒng)的程序存儲(chǔ)器。利用P0口、P2口以及ALE、/RD、/WR信號(hào)擴(kuò)展了1M字節(jié)的SRAM。利用ADμC816的SCL、SDA信號(hào)與實(shí)時(shí)時(shí)鐘芯片SD2003相連,完成實(shí)時(shí)時(shí)鐘功能。利用ADμC816的RXD、TXD、P1.0、P1.1信號(hào),經(jīng)電平轉(zhuǎn)換芯片MAX232形成了RS232接口,該接口有RXD、TXD、CTS、RTS信號(hào),可和GPRS模塊或是PC機(jī)進(jìn)行通信。
除了系統(tǒng)具備可充電鉛酸蓄電池外,外部SRAM和時(shí)鐘芯片SD2003還具有可充電鋰電池做后備電源。
3.2 氣壓、風(fēng)向預(yù)處理電路
氣壓傳感器采用諧振筒式傳感器,該傳感器的輸出為周期(頻率)與氣壓相關(guān)的TTL電平的矩形波信號(hào)(下稱氣壓原始信號(hào))和一個(gè)與工作溫度呈線性關(guān)系的0-5V的模擬電壓信號(hào)。氣壓原始信號(hào)的處理需要8個(gè)I/O信號(hào),風(fēng)向傳感器輸出為7位格雷碼。由于ADμC816的I/O口數(shù)量有限,增加了基于AT89C52的預(yù)處理電路。預(yù)處理電路如圖2所示,上述15個(gè)信號(hào)分別接在AT89C52的P1、P2口和T0端,通過(guò)P3.6、P3.7與ADμC816連接,將預(yù)處理后的信號(hào)傳送至ADμC816。
3.3 信號(hào)采集電路
氣壓測(cè)量:將氣壓原始信號(hào)接在預(yù)處理電路中,實(shí)現(xiàn)頻率測(cè)量,將氣壓傳感器輸出的溫度信號(hào)接在ADμC816的AIN5引腳,對(duì)該溫度進(jìn)行測(cè)量,實(shí)現(xiàn)溫度補(bǔ)償。
氣溫測(cè)量:氣溫傳感器采用VISLA的PT100鉑電阻,精密電流源將電阻變?yōu)殡妷盒盘?hào),接在ADμC816的AIN1、AIN2引腳,實(shí)現(xiàn)對(duì)氣溫的測(cè)量。
濕度測(cè)量:采用VISLA的濕度傳感器,該傳感器輸出為0-1V的電壓信號(hào),接在ADμC816的AIN1、AIN2引腳,實(shí)現(xiàn)對(duì)濕度的測(cè)量。由于AD轉(zhuǎn)換為16位,完全滿足濕度測(cè)量的要求。
雨量測(cè)量:采用翻斗式雨量傳感器,其輸出是一對(duì)節(jié)點(diǎn),可以將降雨量轉(zhuǎn)換為脈沖個(gè)數(shù)。該信號(hào)經(jīng)整形后接在ADμC816的INT1端,準(zhǔn)確實(shí)現(xiàn)對(duì)降雨的測(cè)量。
風(fēng)速測(cè)量:風(fēng)速信號(hào)為一個(gè)脈沖信號(hào),其頻率與風(fēng)速成正比,將該信號(hào)接到定時(shí)計(jì)數(shù)器1的外部輸入端T1,通過(guò)單位時(shí)間內(nèi)(由定時(shí)計(jì)數(shù)器0完成準(zhǔn)確定時(shí))計(jì)數(shù)器的值,即可完成風(fēng)速測(cè)量。定時(shí)計(jì)數(shù)器1工作于是16位計(jì)數(shù)方式,完全滿足準(zhǔn)確度的要求。
風(fēng)向測(cè)量:將風(fēng)向的7位格雷碼接到預(yù)處理電路中,實(shí)現(xiàn)風(fēng)向測(cè)量,測(cè)量誤差為360/128=2.8125,滿足性能要求。
4 高精度測(cè)量的實(shí)現(xiàn)
4.1 氣壓信號(hào)的準(zhǔn)確測(cè)量
4.1.1 信號(hào)的非線性問(wèn)題。氣壓傳感器使用了太原某儀表公司提供的GDJ-5壓電激勵(lì)諧振筒式壓力傳感器。該傳感器的輸出為:周期(頻率)與氣壓相關(guān)的TTL電平的矩形波信號(hào)(原始信號(hào))和一個(gè)與環(huán)境溫度呈線性關(guān)系的0-5V的模擬電壓信號(hào)。在傳感器出廠前,廠家對(duì)該傳感器進(jìn)行了標(biāo)定,分別列出了-30℃、-20℃、-10℃、0℃、10℃、20℃、30℃、40℃、50℃情況下,不同氣壓下(450、500、550、600、650、700、750、800、850、900、950、1000、1070 hPa)對(duì)應(yīng)的周期(單位是 )的數(shù)值。從數(shù)值上看,周期以及頻率與氣壓呈非線性關(guān)系,且存在對(duì)溫度的交叉靈敏度。如圖3說(shuō)明了溫度為0℃時(shí)周期、頻率與氣壓值的關(guān)系,圖4說(shuō)明了在750 hPa時(shí),周期、頻率與溫度的關(guān)系。(圖3左圖中橫坐標(biāo)表示氣壓450-1070hPa,縱坐標(biāo)是周期(單位是 )。右圖中橫坐標(biāo)表示氣壓450-1070hPa,縱坐標(biāo)是頻率。圖4左圖中橫坐標(biāo)表示溫度-30℃-50℃,縱坐標(biāo)是周期。右圖中橫坐標(biāo)表示溫度-30℃-50℃,縱坐標(biāo)是頻率)。
如果不對(duì)其非線性關(guān)系做校正處理而認(rèn)為是線性關(guān)系,則測(cè)量的氣壓值的誤差將超過(guò)10hPa,超出了國(guó)家規(guī)定的測(cè)量誤差范圍。
4.1.2 氣壓信號(hào)采集 通過(guò)數(shù)據(jù)分析,欲使系統(tǒng)分辨率達(dá)0.1hPa,應(yīng)按照周期及頻率對(duì)氣壓的最低靈敏度處來(lái)確定周期及頻率測(cè)量的分辨率。這就要求周期測(cè)量分辨率為0.0026362 ,頻率測(cè)量的分辨率為0.068645Hz。系統(tǒng)對(duì)溫度的分辨率,應(yīng)根據(jù)周期C或(頻率f)對(duì)溫度的最高交叉靈敏度來(lái)決定,需要對(duì)溫度電壓的分辨率為43 mV。
對(duì)于信號(hào)周期(頻率)的測(cè)量,經(jīng)常用兩種實(shí)現(xiàn)方法:(1)用直接測(cè)量信號(hào)的周期。單片機(jī)的機(jī)器周期 數(shù)量級(jí),如果直接用單片機(jī)的定時(shí)計(jì)數(shù)器,不能滿足0.0026362 分辨率的要求。(2)直接測(cè)量信號(hào)的頻率。將信號(hào)作為單片機(jī)定時(shí)計(jì)數(shù)器的外部脈沖信號(hào),在給定時(shí)間內(nèi)對(duì)外部信號(hào)進(jìn)行計(jì)數(shù)。若滿足0.068645Hz分辨率的要求,定時(shí)時(shí)間要超過(guò)15秒。按照這種方法,不能達(dá)到國(guó)家氣象局規(guī)定的氣壓采集速率:6次/分鐘。
在系統(tǒng)的預(yù)處理電路中(如圖2所示),對(duì)原始?xì)鈮盒盘?hào)128分頻后作為門(mén)控信號(hào),在信號(hào)高電平時(shí)對(duì)12MHz信號(hào)進(jìn)行計(jì)數(shù),計(jì)數(shù)值為N,則高電平時(shí)計(jì)數(shù)值為64個(gè)原始?xì)鈮盒盘?hào)的周期和:
64C=N/12
其中C為測(cè)量的原始信號(hào)的周期,C=N/768 =N×0.0013 ,這種間接的測(cè)量方法測(cè)量的分辨率為0.0013 ,氣壓原始信號(hào)脈寬為200 ,這樣一次的測(cè)量時(shí)間為:128*200 ,約為26ms, 滿足6次/分鐘的要求。
對(duì)于溫度測(cè)量,將溫度信號(hào)進(jìn)行分壓,接到ADμC816的模擬輸入端進(jìn)行16位的AD轉(zhuǎn)換,其電壓的分辨率為5000 mV/65535=0.076 mV,滿足43 mV的要求。
4. 1。3 氣壓的測(cè)量 用曲線擬合法,測(cè)量出氣壓:
= ( a0+ a1×T+ a2×T 2)+( b0+ b1×T+ b2×T 2) ×f +( c0+ c1×T+ c2×T 2) ×f2+( d0+ d1×T+ d2×T 2) ×f3+( e0+ e1×T+ e2×T 2) ×f4
其中各系數(shù)在PC計(jì)算機(jī)上通過(guò)回歸解析式得到,得到的各系數(shù)通過(guò)串行接口下載至自動(dòng)氣象站。
通過(guò)標(biāo)定數(shù)據(jù),用曲線擬合法(擬合至f2項(xiàng))時(shí)的結(jié)果如圖5所示,從曲線上看,擬合誤差在各溫度各個(gè)氣壓下其誤差均小于0.3hPa,滿足了測(cè)量要求。在程序設(shè)計(jì)中,按4次項(xiàng)(到f4)來(lái)擬合,PC計(jì)算機(jī)計(jì)算參數(shù)時(shí)對(duì)于沒(méi)有必要的高次項(xiàng),令其系數(shù)為0。
4.2 氣溫信號(hào)的準(zhǔn)確測(cè)量
在小范圍、測(cè)量精度要求不高的場(chǎng)合,一般都將熱電阻傳感器看作線性傳感器,在該自動(dòng)站中,溫度范圍較大(-50℃到+50℃),要求測(cè)量精確,0.1℃,以0℃作為基點(diǎn)溫度,r0=100歐,在溫度t時(shí)的電阻表達(dá)式為:
Rt = R0 (1+ at + bt2 )
需要對(duì)該器件作非線性校正。用曲線擬合法[3],通過(guò)標(biāo)定數(shù)據(jù),PC計(jì)算機(jī)完成參數(shù)a,b的計(jì)算后,下載至自動(dòng)氣象站。通過(guò)軟件計(jì)算可得出準(zhǔn)確的溫度值。
5 自動(dòng)氣象站的技術(shù)特點(diǎn)
該自動(dòng)氣象站有如下特點(diǎn):
1.選擇了高性能的ADμC816單片機(jī),內(nèi)部集成了各種功能部件,簡(jiǎn)化了系統(tǒng)電路的設(shè)計(jì)。16位的AD轉(zhuǎn)換器完成了各種模擬信號(hào)的高精度采集。在進(jìn)行參數(shù)標(biāo)定時(shí),PC計(jì)算機(jī)與自動(dòng)站通訊,PC計(jì)算機(jī)將各種標(biāo)定參數(shù)下載至自動(dòng)氣象站,存儲(chǔ)在ADμC816內(nèi)部E2PROM中,避免了電位器等器件的使用,調(diào)整方便、性能可靠。
2.自動(dòng)站的可通過(guò)GPRS模塊和氣象中心實(shí)現(xiàn)遠(yuǎn)距離的無(wú)線傳輸。也可和PC機(jī)通過(guò)串口進(jìn)行通信。
該自動(dòng)站研制成功后,經(jīng)過(guò)試運(yùn)行表明氣象信息采集準(zhǔn)確,通信可靠?,F(xiàn)正在氣象部門(mén)推廣使用。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。