基于PTR2000的無(wú)線(xiàn)氣象信息采集系統設計

發(fā)布時(shí)間:2015-11-24 14:42    發(fā)布者:designapp
摘要:本文介紹了一種基于PTR2000的無(wú)線(xiàn)氣象信息采集系統的硬件和軟件設計,該系統可以實(shí)現溫度、濕度、氣壓等氣象數據的采集和傳輸。氣象數據采集系統由單片機ATmega16、溫度傳感器DS18B20、濕度傳感器HS1101和氣壓傳感器MPX4105構成,實(shí)現溫度、濕度、氣壓等基本氣象參數的測量。采集的氣象數據通過(guò)無(wú)線(xiàn)收發(fā)模塊PTR2000上傳給上位機進(jìn)行存儲和相應處理。數據采集端由太陽(yáng)能電源系統供電,可以滿(mǎn)足長(cháng)期測量需要。

引言

隨著(zhù)經(jīng)濟社會(huì )的發(fā)展,工農業(yè)生產(chǎn)對氣象信息的需求日益加大。農業(yè)農情灌溉氣象環(huán)境指標監測、森林火險氣象指標監測、各種突發(fā)性災害性天氣的快速響應和現場(chǎng)監控均需要對氣象信息進(jìn)行實(shí)時(shí)采集和分析。本系統采用DS18B20、HS1101等高精度傳感器,低功耗單片機ATmega16,數字無(wú)線(xiàn)收發(fā)芯片NRF401;數據采集端配備光伏電源系統供電。通過(guò)數據采集、傳送與處理實(shí)現周?chē)h(huán)境溫度、濕度、氣壓等氣象要素的全天候監測;系統工作方式靈活,通過(guò)128×64液晶顯示器可實(shí)現現場(chǎng)所測數據的顯示,也可以采用無(wú)線(xiàn)通信的方式將數據傳送至計算機進(jìn)行存儲和處理。



1 系統工作原理[1-3]

氣象信息監測系統由下位機數據采集和上位機數據管理兩部分構成。下位機數據采集系統主要由三部分構成,如圖1所示。其中,數據采集模塊由傳感器DS18B20、HS1101、 MPX4105和單片機ATmega16組成,PTR2000數據收發(fā)模塊由數字無(wú)線(xiàn)收發(fā)芯片NRF401構成,電源系統采用光伏電源系統構成。上位機數據管理系統如圖2所示,其中,PTR2000數據收發(fā)模塊由數字無(wú)線(xiàn)收發(fā)芯片NRF401構成,經(jīng)MAX232電平轉換直接與計算機相連,計算機實(shí)現數據的接收和處理。



上位機定時(shí)發(fā)出檢測指令,下位機通過(guò)無(wú)線(xiàn)收發(fā)模塊接收到檢測指令后,開(kāi)始檢測氣象數據。檢測結束后,通過(guò)無(wú)線(xiàn)收發(fā)模塊把采集的數據發(fā)給上位機。上位機實(shí)現采集數據的儲存、圖形化。下位機數據采集系統可以實(shí)現現場(chǎng)氣象數據的顯示,F場(chǎng)顯示時(shí),無(wú)線(xiàn)數傳模塊被關(guān)閉,下位機數據采集端獨立運行,不依賴(lài)于上位機發(fā)出的檢測指令,依次顯示采集到的氣象數據。

2 信息采集系統硬件電路設計

數據采集模塊以ATmega16為核心,完成氣象信息的采集、轉換和傳輸。系統中主要利用ATmega16的片內ADC、定時(shí)/計數器、I/O口輸入輸出控制、可編程串行USART等資源實(shí)現數據采集。

2.1 溫度測量電路



利用數字溫度傳感器DS18B20進(jìn)行溫度采集,溫度測量電路如圖3所示。 DS18B20的數據總線(xiàn)接ATmega16的P0.0口。ATmega16不支持單總線(xiàn)協(xié)議,采用軟件方法模擬單總線(xiàn)協(xié)議,完成對DSl8B20芯片的訪(fǎng)問(wèn)。

2.2 濕度測量電路[2]



濕度測量采用HS1101傳感器,測量電路如圖4所示。該電路把電容參數的變化轉換為與之成反比的電壓頻率的變化,振蕩電路輸出方波信號的頻率為如式(1)所示。f=1/Cx*(R1+2*R2 )*ln2 (1)

2.3 氣壓測量電路[3-4]

系統選用MPX4105作為氣壓傳感器。MPX4105可產(chǎn)生與氣壓呈線(xiàn)性關(guān)系的模擬輸出電壓,氣壓測量電路如圖5所示。輸出電壓Vout和大氣壓P的關(guān)系如式(2)所示。Vout=Vcc*(0.01P-0.09) (2)

2.4 液晶顯示電路

選用LCD128×64液晶顯示器顯示溫度、氣壓和濕度氣象信息,顯示電路如圖6所示。通過(guò)按鍵設置現場(chǎng)顯示氣象數據或是通過(guò)無(wú)線(xiàn)傳輸數據到上位機。

2.5 無(wú)線(xiàn)數據傳輸電路[5-7]

系統采用無(wú)線(xiàn)傳輸模塊PTR2000傳輸氣象數據。本模塊工作頻率為國際通用的數傳頻段,設置CS可以選擇模塊兩個(gè)頻道中的一個(gè)作為通信頻道。PTR2000模塊直接與單片機的串口連接,通過(guò)MAX232進(jìn)行電平轉換與計算機相連,構成無(wú)線(xiàn)通信系統,完成氣象數據的無(wú)線(xiàn)傳輸。與ATmega16連接的數據發(fā)送端電路如圖7所示。



2.6 太陽(yáng)能供電系統電路

下位機采用太陽(yáng)能供電系統供電,供電系統主要由太陽(yáng)能電池板、充電控制電路和蓄電池三個(gè)部分,太陽(yáng)能電池供電控制電路如圖8所示。
                                
2.6.1 系統功耗測算

系統工作在現場(chǎng)模式時(shí),PTR2000模塊不工作,LCD處于工作狀態(tài),背光打開(kāi),系統工作電壓為4.98V,電流為164mA,LCD處于關(guān)閉狀態(tài)時(shí),電流為18mA。系統工作在無(wú)線(xiàn)模式時(shí),PTR2000模塊工作,LCD關(guān)閉。PTR2000模塊的工作電壓為2.7V~5.25V,發(fā)射時(shí)工作電流為20mA~30mA,接收時(shí)工作電流為10mA[8]。PTR2000主要工作在發(fā)射狀態(tài),工作電壓約為5V,工作電流取30mA,因此,PTR2000消耗的功率約為0.15W。系統長(cháng)期工作在無(wú)線(xiàn)模式,為節約能源,LCD處于關(guān)閉狀態(tài)。根據以上分析,數據采集系統的總系統工作電流約為48mA,按I=50mA,功率為0.25W。

2.6.2 蓄電池選用



根據系統的工作情況、太陽(yáng)能供電子系統的特點(diǎn),選用電壓為12V的鉛酸蓄電池。數據采集系統全天候工作,考慮天氣因素影響,最長(cháng)陰雨天數設為5天,蓄電池能為采集系統提供5天的電量,電池的放電深度取75%。根據系統功耗和系統的工作狀況,蓄電池的容量計算如式(3)所示。

Q=A*I*D*W*Tp/dd (3)

式中:A為安全系數,取1.1~1.4之間,取1.1;I=50mA為系統工作電流;D=24h為全天工作方式;W為最長(cháng)連續陰雨天數,取W=5天;Tp為溫度修正系數,一般在0℃以上取1,-10℃以上取1.1,-10℃以下取1.2,取Tp=1.1;dd為蓄電池放電深度,一般鉛酸蓄電池取0.75。根據式(3),計算容量為9680mAh,選擇容量為10Ah的蓄電池,電池尺寸為151×98×95。2.6.3 太陽(yáng)能電池板選用[9]

蓄電池電壓為12V,鉛酸蓄電池充電終了時(shí)的標志一般是單體電壓為2.7 V,蓄電池的最大充電電壓為16.2V(2.7V×6),考慮充電控制電路線(xiàn)路壓降,應選用18V的太陽(yáng)能電池板。蓄電池的容量為10Ah,充電電流一般選用1A(10×0.1)。根據以上分析,太陽(yáng)能電池板的功率為18W(18V×1A)。實(shí)際選用的是單晶硅太陽(yáng)能電池板,功率為20W,峰值電壓為17.2V,峰值電流為1.16A,電池板尺寸為485*350。



2.6.4 太陽(yáng)能電池充電控制

充電控制電路控制蓄電池充電,同時(shí)保護蓄電池,避免過(guò)充。SUN_V與ATmega16的內置模數轉換器ADC0相連,檢測光電池的電壓,BAT_V與ADC1相連,檢測蓄電池的電壓,判斷蓄電池是否已經(jīng)達到過(guò)充點(diǎn)或過(guò)放點(diǎn)。SUN_CTR和BAT_CTR與ATmega16的I/O口相連,根據檢測結果發(fā)出充電、停充指令。當蓄電池電壓高于16.2V,停止充電;當太陽(yáng)能電池板電壓低于蓄電池電壓時(shí),停止充電;蓄電池電壓低于16.2V,并且太陽(yáng)能電池電壓高于蓄電池電壓1.3V時(shí),進(jìn)行充電。

蓄電池的輸出電壓經(jīng)過(guò)DC-DC變換為5V后為信息采集端電路供電。



3 信息采集系統軟件設計

采用C語(yǔ)言設計了溫度、濕度和氣壓測量程序,無(wú)線(xiàn)數據傳輸程序、太陽(yáng)能充放電控制程序。

3.1 溫度測量程序設計

Read_Temperature(void) 是DSl8B20溫度采集程序,程序清單如下:

Read_Temperature(void)
{
Init_DS18B20() ;//DS18B20初始化
WriteOneChar(0xCC) ; // 跳過(guò)讀序號列號的操作
WriteOneChar(0x44) ; // 啟動(dòng)溫度轉換
Init_DS18B20() ;
WriteOneChar(0xCC) ; //跳過(guò)讀序號列號的操作
WriteOneChar(0xBE) ; //讀取溫度寄存器
tel = ReadOneChar() ; //溫度低8位
teh = ReadOneChar() ; //溫度高8位
}

Init_DS18B20()是DSl8B20初始化程序,根據DSl8B20的1-WIRE協(xié)議,控制器先向DQ發(fā)出低電平復位脈沖,寬度在480μs~ 960μs之間,然后恢復DQ的高電平,在200μs之內,等待由DSl8B20發(fā)出的應答脈沖。如果DQ被下拉為低電平,則DSl8B20初始化成功。

WriteOneChar()是DSl8B20寫(xiě)入程序,控制器先下拉DQ為0,延時(shí)1μs以上,隨后寫(xiě)入數據位,延時(shí)60μs,再置DQ為1,各位逐位寫(xiě)入。

ReadOneChar()是DSl8B20讀出程序,控制器先下拉DQ為0,延時(shí)1μs以上,隨后從DQ上讀入數據位,延時(shí)60μs,再置DQ為1,完成一位數據的讀取,各位逐位讀出。

采集溫度時(shí),先進(jìn)行DSl8B20復位,然后向DSl8B20寫(xiě)入跳出ROM命令CCH和溫度轉換命令44H,經(jīng)延時(shí)750μs等待DSl8B20充分完成溫度轉換。再進(jìn)行一次復位后,通過(guò)發(fā)送溫度讀取命令BEH,即可調用數據讀取子程序得到轉換的溫度數據。

溫度計算時(shí),讀取的溫度值高八位如果大于0×07則溫度值為負,應取反加一后乘以0.625,溫度值高八位如果小于0×07則溫度值為正,直接乘以0.625即可。
                                
3.2 濕度測量程序設計[2]

濕度測量電路輸出的方波信號輸入ATmega16的計數器T0,定時(shí)器T1進(jìn)行計時(shí)。定時(shí)時(shí)間到,產(chǎn)生中斷,根據計數器的數值和定時(shí)時(shí)間計算出頻率值。



本電路典型的濕度-頻率關(guān)系如表1所示。利用Matlab中的polyfit()命令線(xiàn)性擬合出相對濕度與頻率的關(guān)系式,如式(4)所示。把ATmega16測算出的頻率(Frequency)代入式(4)就可計算出相對濕度RH。

RH=-0.0767*Frequency+565.0967 (4)3.3 氣壓測量程序設計
MPX4105輸出的模擬電壓經(jīng)ATmega16的片內ADC轉換成相應數字量,再根據電壓和氣壓轉換關(guān)系即可計算出要測的氣壓值。
氣壓測量程序adc(void)如下所示。
adc(void)//單次AD轉換 10位精度
unsigned char adcl,adch;
float adc=0;
ADMUX|=0X07;//參考電壓AVCC轉換結果右對齊輸入端ADC7
ADCSRA|=((1
while(~(0XEF|ADCSRA));//等待轉換完成
adcl=ADCL;adch=ADCH;//讀取轉換值
adc=5000/1024*(adch*256+adcl);//10位精度參考電壓5000mV
return adc;
}

3.4 無(wú)線(xiàn)數據傳輸程序設計

ATmega16串行通信初始化程序void uart_init(unsigned int baud)如下所示。

void uart_init(unsigned int baud)//串行通信初始化
{
UCSRB=0x00; //UART收發(fā)允許中斷允許
UCSRA=0x02;//收發(fā)完成,錯誤狀態(tài)寄存器清零
//設為雙倍速減小波特率設置誤差
UCSRC=(1
SREG=BIT(7);//全局中斷開(kāi)放
DDRD|=0X02;//配置TX為輸出
}

4 結束語(yǔ)

經(jīng)測試,系統可以實(shí)現-55℃~125℃范圍的溫度測量,溫度測量分辨率為0.5℃,系統工作在-20℃~70℃溫度范圍內時(shí)不需采取保溫措施;濕度測量范圍為1% RH ~99%RH,平均靈敏度為0.34pF/%RH;氣壓測量范圍為15kPa~105kPa,采集的氣象信息可實(shí)時(shí)顯示,也可通過(guò)無(wú)線(xiàn)傳輸給上位機進(jìn)行顯示、存儲;太陽(yáng)能供電系統能夠為系統提供穩定可靠的能量。晴天時(shí),蓄電池充電耗時(shí)約1.5天,蓄電池充滿(mǎn)時(shí)能連續為采集系統提供約8天的電能。為提高太陽(yáng)能充電效率,縮短充電時(shí)間,可以對太陽(yáng)能電池板加裝單軸步進(jìn)逐日系統。為提高單日充電時(shí)間,降低太陽(yáng)能供電系統成本,可以選用薄膜太陽(yáng)能電池板。通過(guò)軟件設置,本系統可以與上位機構成含兩站點(diǎn)的氣象信息采集系統,完成氣象信息的采集、存儲和處理。

參考文獻:
[1] Atmel Corporation.ATmega16-16LData Sheet. 2004
[2] Relative Humidity Sensor HS 1100/HS 1101. HPC001 Rev. 7 June 2002
[3] Motorola Sensor Device Data MPX4105 1997
[4] 孫艷玲,劉亞麗.基于MPX4105芯片的數字氣壓計設計[J].中國儀器儀表,2007(11):62-65
[5] 吳慧峰,劉政,楊雙.基于PTR2000 智能儀器的無(wú)線(xiàn)網(wǎng)絡(luò )設計[J]. 機電信息, 2011(12): 134-135
[6] 周源,李元尊,齊強.基于PTR2000的無(wú)線(xiàn)數據傳輸系統設計與實(shí)現[J]. 海軍航空工程學(xué)院學(xué)報. 2012(5):549-553
[7] 盧超. 分布式無(wú)線(xiàn)土壤電導率測量裝置的設計[J]. 儀表技術(shù)與傳感器. 2011(8): 37-39
[8] PTR2000datasheet[R/OL].http://pdf.eepw.com.cn/p20091021/a10ff60edd0064674ded45024b6d7840 .pdf
[9] 李俄收,王 遠,吳文民.鉛酸蓄電池充電技術(shù)的研究[J]. 2010(5): 253-257
本文地址:http://selenalain.com/thread-157534-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页