基于單片機的溫濕度檢測系統(tǒng)_第1頁
基于單片機的溫濕度檢測系統(tǒng)_第2頁
基于單片機的溫濕度檢測系統(tǒng)_第3頁
基于單片機的溫濕度檢測系統(tǒng)_第4頁
基于單片機的溫濕度檢測系統(tǒng)_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、 計 控 學 院College of computer and control engineering Qiqihar university電氣工程課程設計報告題目:寢室溫濕度檢測裝置的設計系 別 電 氣 工 程 系 適用班級 電氣12級 指導教師 時 間 學生姓名 提交日期 摘 要隨著人們生活水平的提高,人們對健康提出了更高的要求,空氣中的濕度通過各種直接或間接途徑影響了我們的舒適感,空氣中的濕度過大或過小都會對人體健康不利。在日常生活中,溫濕度監(jiān)控系統(tǒng)應用很廣泛,例如:機房、檔案館、材料加工場等場所,乃至我們的寢室,溫濕度與健康密切關聯(lián),都必須控制環(huán)境的溫度和相對濕度,使其保持在一定的范圍

2、。使用DHT11可以靈活的檢測環(huán)境的溫濕度,由用戶設定一定的閾值,實時監(jiān)測顯示,并且可以根據(jù)用戶要求設定報警裝置,當溫濕度超過一定的范圍時,立即報警?;诖?,我設計了一款用51單片機控制的溫濕度監(jiān)控系統(tǒng),操作簡單,使用方便。關鍵詞:溫濕度; 51單片機; DHDT11目 錄摘 要I第1章 緒論11.1 本論文的背景和意義11.2 本論文的基本內(nèi)容11.3 方案設計11.3.1 溫濕度監(jiān)控系統(tǒng)滿足的基本要求11.3.2 系統(tǒng)功能原理圖2第2章 硬件設計32.1 電路原理圖32.2 電路原理圖介紹32.3 蜂鳴器電路部分說明42.4 晶振電路部分說明42.5 1602模塊電路說明42.6 濕度傳感

3、器DHT11介紹52.7 技術參數(shù)說明6第3章 軟件設計73.1 軟件設置實現(xiàn)的功能73.2 軟件流程圖7第4章 實驗板測試8結(jié)論9參考文獻10附錄11II第1章 緒論1.1 本論文的背景和意義室內(nèi)溫濕監(jiān)控系統(tǒng)的設計是一個對現(xiàn)實生活非常實用,本課題研究的主要內(nèi)容是設計制作對室內(nèi)溫濕度的監(jiān)督與控制,相當于簡易空調(diào)的制作,了解空調(diào)系統(tǒng),運用原理設計制作方案;運用物理知識制作控制溫濕變化設備;傳感器獲取外界溫濕度參數(shù),51單片機編程控制,實現(xiàn)智能化設計;并用仿真軟件對控制效果進行仿真研究。 隨著科技的飛速發(fā)展和普及,高性能設備越來越多,各行各業(yè)對溫濕度的要求也越來越高。傳統(tǒng)的溫濕度監(jiān)測模式

4、是以人為基礎,依靠人工輪流值班,人工巡回查看等方式來測量和記錄環(huán)境狀況信息。在這種模式下,不僅效率低下不利于人才資源的充分利用,而且缺乏科學性,許多重大事故都是由人為因素造成的,人工維護缺乏完整的管理系統(tǒng)。而問世監(jiān)控系統(tǒng)就可以解決這樣人才資源浪費,管理不及時的問題,這是由于它的智能化設計所決定的。它的工作步驟如下:感應環(huán)境溫濕度;單片機判斷感應到的溫濕度是否異常;若感應到的溫濕度異常,實行措施進行調(diào)節(jié);判斷異常是否超過預設時間,若超過預設時間,則輸出異常信號報警;判斷異常是否處理完畢,若處理完畢,解除報警。這樣就可以利用控制器對機房溫濕度進行監(jiān)控,從而實現(xiàn)環(huán)境溫濕度管理的實時性和有效性。故本次

5、設計對于類似項目還具有普遍意義。1.2 本論文的基本內(nèi)容 本設計完成的是溫室的溫濕度監(jiān)測系統(tǒng),利用單片機設一個溫濕度檢測系統(tǒng),對給定的溫濕度進行測試并實時顯示,并怕不斷當時的溫度或濕度是否在規(guī)定的范圍內(nèi),若不是,測啟動報警系統(tǒng)。1.3 方案設計 1.3.1 溫濕度監(jiān)控系統(tǒng)滿足的基本要求a.溫度檢測范圍0-50度,相對濕度20%-90%;b.可以根據(jù)實際用途設定溫濕度報警值;c.監(jiān)測數(shù)據(jù)可以通過模塊顯示; 1.3.2 系統(tǒng)功能原理圖根據(jù)設計要求確定了系統(tǒng)的總體方案,整個方案由單片機、濕溫度傳感器、顯示模塊、報警器等五部分組成。系統(tǒng)功能原理圖如圖1所示。 濕度傳感器 溫度傳感器 單片機蜂鳴器LCD

6、顯示圖1-1 系統(tǒng)功能原理圖第2章 硬件設計2.1 電路原理圖單片機是整個系統(tǒng)的控制中樞,它指揮外圍器件協(xié)調(diào)工作,從而完成特定功能。硬件實現(xiàn)上采用模塊化設計,每個模塊只實現(xiàn)一個功能,最好將各個模塊連接在一起。這種設計比較簡單的就可以實現(xiàn),電路原理圖如圖2-1所示:圖2-1 電路原理圖2.2 電路原理圖介紹本系統(tǒng)主要硬件有電源電路、溫濕度傳感器、蜂鳴器、晶振電路、復位電路、LCD顯示電路、且控制電路的核心器件是由STC紅晶科技公司生產(chǎn)的STC11F04E單片機,屬于MCS-51列,STC11F04E是一種低功耗、高性能的CMOS8位微控制器,具有8K在系統(tǒng)可編程FLASH存儲器;相比傳統(tǒng)的51系

7、列速度更快,且在本設計中充分利用了該單片機的資源不浪費I/O口。片上Flash允許程序存儲器在線編程。這些優(yōu)點使得STC11F04E為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案,價格低廉,性能可靠,抗干擾強,因此廣泛應用在工業(yè)控制和嵌入式中。系統(tǒng)的蜂鳴器電路、晶振電路、復位電路如圖2-1、圖2-2 、圖2-3所示: 圖2-2 蜂鳴器電路 圖2-3 晶振電路 圖2-4復位電路2.3 蜂鳴器電路部分說明蜂鳴器額定電流小于30mA,其中使用三極管驅(qū)動工作,為了減少功耗本實驗采用9012晶體管。2.4 晶振電路部分說明晶振電路采用11.095MHz的無源晶振,微調(diào)電容大小取30PF。2.5 1

8、602模塊電路說明顯示模塊選用1602字符型液晶模塊,是目前應用比較廣泛的液晶屏之一,電路如圖2-5所示。圖2-5 1602液晶顯示電路2.6 濕度傳感器DHT11介紹DHT11數(shù)字溫濕度傳感器是一款含有已校準熟悉信號輸出的溫濕度復合傳感器,它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術,確保產(chǎn)品具有極高的可靠性和卓越的長期穩(wěn)定性。傳感器包括一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能8位單片機相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應、抗干擾能力強、性價比極高等優(yōu)點。每個DHT11傳感器都在即為精確的濕度校驗室中進行校準。校準系數(shù)以程序的形式存在OTP內(nèi)存中,傳感器內(nèi)部在檢測型號的處理

9、過程中要調(diào)用這些校準系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達20米以上,使其成為給類應用甚至最為苛刻的應用場合的最佳選擇。產(chǎn)品為4針單排引腳封裝,連接方便。DHT11應用電路如圖2-6:圖2-6 DHT11應用電路2.7 技術參數(shù)說明a.供電電壓: 3.35.5V DC;b.輸 出: 單總線數(shù)字信號;c.測量范圍: 濕度20-90%RH, 溫度050;d.測量精度: 濕度+-5%RH, 溫度+-2;e.分 辨 率: 濕度1%RH, 溫度1;f.互 換 性: 可完全互換;g.長期穩(wěn)定性: <±1%RH/年;第3章 軟件設計3.1 軟件

10、設置實現(xiàn)的功能系統(tǒng)單片機代碼采用C語言編寫,以Kei uVision4為開發(fā)環(huán)境。系統(tǒng)軟件實現(xiàn)的功能:a.通過LCD顯示溫濕度值;b.比較檢測到的溫濕度值和報警值,發(fā)現(xiàn)超限蜂鳴器立即報警;3.2 軟件流程圖根據(jù)這些功能,系統(tǒng)軟件流程圖如圖3-1所示:1602初始化 延時讀取溫濕度值讀取成功1602顯示數(shù)據(jù) 報警,發(fā)出信號是否超限Y延時N圖 3-1 系統(tǒng)軟件流程圖第4章 實驗板測試通過測試實驗板,已基本達到預定目的,測評如下:1. 預先設置溫度閾值是30攝氏度,濕度閾值是30%TH;2. 溫度測試:通電后,溫度顯示室內(nèi)值,用手捂住DHT11,使顯示器達到30,此時蜂鳴器立即報警;3. 濕度測試:

11、緊接著溫度測試,用嘴吹氣增加DHT11的濕度,使其達到閾值30,蜂鳴器立即報警;通過測試,實驗板基本完成預定的目標,即完成了溫濕度的檢測,且能在設定的閾值范圍內(nèi)報警,達到了預期的效果。結(jié)論由于采用的是高效單片機作為核心,DHT11可以靈活的檢測環(huán)境的溫濕度,由用戶設定一定的閾值,實時監(jiān)測顯示;此溫濕度控制儀具有精度高、成本低、體積小、接口簡單等優(yōu)點,還具有良好抗干擾能力。加上優(yōu)化程序,使得本系統(tǒng)具有很高的實用性。單片機的應用如今已經(jīng)在工業(yè)、 電子等方方面面展示出了它的優(yōu)越性,利用單片機在設計電路逐漸成了趨勢, 它與外圍的簡單電路再加上優(yōu)化程序就可以構建任意的產(chǎn)品,使得本設計成為現(xiàn)實。隨著單片機

12、的日益發(fā)展,它必將在未來顯示出更大的活力,為電子設計增加更多精彩。在設計過程中, 由于時間和本人能力的限制, 設計中存在一些需要改進和優(yōu)化的地方。測量精度有待進一步提高,軟件設計也存在不合理之處。但從設計過程中,對于單片機有更進一步的認識, 對用于單片機仿真的軟件操作能力也明顯提高,也對溫濕度檢測系統(tǒng)有了更深刻的理解,對protel99se和Altium designer仿真軟件有了更明確的認識,通過此設計,對在實驗板在制作過程中出現(xiàn)的各種問題的解答提高了自己的思考能力和動力能力。端正了做事的心態(tài),不能有半點馬虎,細節(jié)決定成敗,做事應該滴水不漏,認認真真,踏踏實實,對以后的日常生活和工作都受益

13、匪淺。參考文獻1 謝自美. 電子線路設計*實驗*測試M.華中科技大學出版社.2 張友德等. 單片微型機原理、應用和實驗M.電子工業(yè)出版社.3 吳經(jīng)國等.單片機應用技術M. 中國電力出版社.4 李群芳.單片機微型計算機與接口技術M.電子工業(yè)出版社.5 閆石.數(shù)字電子技術基礎M.高等教育出版社.6 黃智偉.全國大學生電子設計競賽訓練教程M.電子工業(yè)出版社.7 周立功.單片機實驗與實踐M.北京航空航天大學出版社.8 XU Yi - min .The Design for Stepping Motor of SCM Control SystemJ. Heilongjiang Science and T

14、echnology Institute.2005.1附錄附錄1程序源代碼/*/DHT11溫濕度測試程序/P0作為LCD的數(shù)據(jù)控制口,P2.0 作為DHT11data總線 ,P2.1作為狀態(tài)顯示/用三根杜邦線連到開發(fā)板/*/#include <reg52.h>#include <intrins.h>typedef unsigned char unint8;typedef unsigned char unint16;unsigned char str1=" "unsigned char str2=" "unsigned char co

15、de dis1 = "2-# H: "unsigned char code dis2 = "618 T: "sbit TRH = P37;/溫濕度傳感器DHT11數(shù)據(jù)接入sbit ST = P31;/狀態(tài)顯示,是為了方便調(diào)試,具體使用的時候可以不要sbit SF = P32;sbit LCD_RS = P33; sbit LCD_RW = P34;sbit LCD_EN = P35;unint8 TH_data,TL_data,RH_data,RL_data,CK_data;unint8 TH_temp,TL_temp,RH_temp,RL_temp,C

16、K_temp;unint8 com_data,untemp,temp;unint8 respond;/*/void delayNOP() _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_(); _NOP_();/*/*/ 毫秒級延時子程序/*/void delay_ms(unsigned char ms) unsigned char i; while(ms-) for(i = 0; i< 150; i+) _NOP_(); _NOP_(); _NO

17、P_(); _NOP_();_NOP_(); _NOP_(); _NOP_(); _NOP_(); /*/*/5us級延時程序/*/void delay_us() unint8 i; i-; i-; i-; i-; i-; i-; /*/ /*/ 測試LCD忙碌狀態(tài)/lcd_busy()為1時,忙,等待。lcd_busy()為0時,閑,可寫指令與數(shù)據(jù)。/*/bit lcd_busy() bit result; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delayNOP(); result = (bit)(P1&0x80); LCD_EN = 0; retu

18、rn(result);/*/*/ 寫入指令數(shù)據(jù)到LCD/*/void lcd_wcmd(unsigned char cmd) while(lcd_busy(); LCD_RS = 0; LCD_RW = 0; LCD_EN = 0; _NOP_(); _NOP_(); P1 = cmd; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0; /*/*/寫顯示數(shù)據(jù)到LCD /RS=高電平,RW=低電平,E=高脈沖,D0-D7=數(shù)據(jù)。 /*/void lcd_wdata(unsigned char dat) while(lcd_busy(); LCD_RS

19、 = 1; LCD_RW = 0; LCD_EN = 0; P1 = dat; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0; /*/*/LCD初始化設定/*/void lcd_init() delay_ms(15); lcd_wcmd(0x38); /16*2顯示,5*7點陣,8位數(shù)據(jù) delay_ms(5); lcd_wcmd(0x38); delay_ms(5); lcd_wcmd(0x38); delay_ms(5); lcd_wcmd(0x0c); /顯示開,關光標 delay_ms(5); lcd_wcmd(0x06); /移動光標

20、delay_ms(5); /lcd_wcmd(0x01); /清除LCD的顯示內(nèi)容,如果屏幕過暗,可將這倆句刪除 /delay_ms(5);/*/*/設定LCD顯示位置/*/void lcd_dis_pos(unsigned char pos) lcd_wcmd(pos | 0x80); /數(shù)據(jù)指針=80+地址變量/*/*/收發(fā)信號檢測,數(shù)據(jù)讀取/*/char receive() unint8 i; ST=0; com_data=0; for(i=0;i<=7;i+) respond=2; while(!TRH)&&respond+); delay_us(); delay

21、_us(); delay_us();delay_us(); delay_us(); delay_us();delay_us(); delay_us(); delay_us(); if(TRH) temp=1; respond=2; while(TRH)&&respond+); else temp=0; com_data<<=1; com_data|=temp; return(com_data); /*/*/濕度讀取子程序 /溫度高8位= TL_data/溫度低8位= TH_data/濕度高8位= RH_data/濕度低8位= RH_data/校驗 8位 = CK_d

22、ata/調(diào)用的程序有 delay();, Delay_5us();,RECEIVE(); /*/void read_TRH() /主機拉低18ms TRH=0; delay_ms(36); TRH=1; /DATA總線由上拉電阻拉高 主機延時20us delay_us(); delay_us(); delay_us(); delay_us(); delay_us(); delay_us(); delay_us(); /delay_us(); /delay_us();delay_us();delay_us();delay_us(); /主機設為輸入 判斷從機響應信號 TRH=1; /判斷DHT1

23、1是否有低電平響應信號 如不響應則跳出,響應則向下運行 if(!TRH) respond=2; /判斷DHT11發(fā)出 80us 的低電平響應信號是否結(jié)束 while(!TRH)&& respond+); respond=2; /判斷從機是否發(fā)出 80us 的高電平,如發(fā)出則進入數(shù)據(jù)接收狀態(tài) while(TRH && respond+); /數(shù)據(jù)接收狀態(tài) RH_temp = receive(); RL_temp = receive(); TH_temp = receive(); TL_temp = receive(); CK_temp = receive(); T

24、RH=1;ST=1; /數(shù)據(jù)校驗 untemp=(RH_temp+RL_temp+TH_temp+TL_temp); if(untemp=CK_temp) RH_data = RH_temp; RL_data = RL_temp; TH_data = TH_temp; TL_data = TL_temp; CK_data = CK_temp; /濕度整數(shù)部分 if(RH_data/10>2|TH_data/10>2)|(TH_data%10<5&&TH_data/10<2) SF=0; delay_ms(50); SF=1; else SF=1; str10 = (char)(0X30+RH_data/10); str11 = (char)(0X30+RH_data%10); str12 = 0x2e; /小數(shù)點 /濕度小數(shù)部分 str13 = (char)(0X30+R

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論