智能空調(diào)控制系統(tǒng)設(shè)計_第1頁
智能空調(diào)控制系統(tǒng)設(shè)計_第2頁
智能空調(diào)控制系統(tǒng)設(shè)計_第3頁
智能空調(diào)控制系統(tǒng)設(shè)計_第4頁
智能空調(diào)控制系統(tǒng)設(shè)計_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課 程 設(shè) 計 說 明 書題目:智能空調(diào)控制系統(tǒng) 學(xué)院(系):年級專業(yè): 學(xué) 號:學(xué)生姓名:指導(dǎo)教師:教師職稱 摘 要智能空調(diào)控制系統(tǒng)是根據(jù)溫度傳感器采集室內(nèi)的環(huán)境溫度與系統(tǒng)的預(yù)設(shè)值進行對比,通過控制系統(tǒng)的預(yù)先設(shè)置,空調(diào)進行自動制冷或制熱,從而達到了智能控制的目的。根據(jù)人們對生活環(huán)境的要求和單片機的應(yīng)用特性,本文介紹了應(yīng)用STC89C52單片機進行控制的智能空調(diào)控制系統(tǒng)。智能空調(diào)控制系統(tǒng)主要由電源電路、液晶顯示電路、單片機控制電路、按鍵電路、控制指示電路等組成。其工作原理是溫度傳感器DS18B20采集室內(nèi)溫度傳送給單片機,單片機分析數(shù)據(jù),控制智能空調(diào)加熱或制冷。此系統(tǒng)可以通過按鍵設(shè)置空調(diào)的溫度

2、,使空調(diào)對室內(nèi)進行加溫或降溫,也可以對系統(tǒng)預(yù)設(shè)一個溫度值,通過傳感器感知室內(nèi)溫度與智能空調(diào)的預(yù)設(shè)溫度值進行對比,通過單片機控制空調(diào)對室內(nèi)進行加溫或降溫,達到智能空調(diào)的自動控制功能。在定時功能啟動的情況下,如果計時時間與定時時間相同,此時空調(diào)相應(yīng)的狀態(tài)會自動關(guān)閉,把定時時間存在STC89C52單片機內(nèi)部的EEPROM中,斷電后不會消失,直至通過按鍵去改變,達到了智能空調(diào)的定時功能。關(guān)鍵詞:智能空調(diào);液晶顯示;STC89C52單片機;ds18b20溫度檢測芯片目 錄1智能空調(diào)控制系統(tǒng)的方案設(shè)計1智能空調(diào)控制系統(tǒng)1系統(tǒng)工作原理2系統(tǒng)功能模塊工作原理介紹2各功能要求實現(xiàn)的工作原理22系統(tǒng)功能模塊的設(shè)計

3、與實現(xiàn)5主控制模塊5主控制單元模塊設(shè)計5主控制單元工作原理5電源模塊設(shè)計6電源模塊概述6電源模塊的應(yīng)用6溫度檢測模塊設(shè)計7溫度傳感器的選取7DS18B20概述7溫度檢測單元電路8顯示模塊設(shè)計101602液晶顯示器概述10顯示模塊電路15模塊設(shè)計17鍵盤電路功能設(shè)定17矩陣鍵盤電路工作原理17外圍驅(qū)動電路模塊設(shè)計18驅(qū)動電路18JQC-3FF繼電器183系統(tǒng)軟件設(shè)計204系統(tǒng)測試及結(jié)果分析23系統(tǒng)測試23系統(tǒng)測試結(jié)果及分析25結(jié)論26心得體會27參考文獻27附錄281 智能空調(diào)控制系統(tǒng)的方案設(shè)計本系統(tǒng)以單片機STC89C52為核心,采用電源模塊、溫度采集、鍵盤輸入、液晶顯示、驅(qū)動電路等,實現(xiàn)了基

4、于空調(diào)溫度控制系統(tǒng)。把定時時間存入單片機EEPROM中,不易丟失。人機交互采用按鍵輸入、液晶顯示,界面友好,易于操作。1.1 智能空調(diào)控制系統(tǒng)DS18B20溫度傳感器采集室內(nèi)溫度數(shù)據(jù),并將信息反饋給CPU,單片機分析并與設(shè)定的溫度值進行比較,通過驅(qū)動電路使智能空調(diào)調(diào)節(jié)不同的工作狀態(tài),單片機的工作狀態(tài)有加熱、制冷工作狀態(tài)。不同的按鍵S的功能設(shè)置為:S2為“加”,S10為“減”,S3啟動/關(guān)閉,S5為啟動智能空調(diào)制冷狀態(tài),S6為調(diào)節(jié)走時按鍵,S7為啟動智能空調(diào)暖風(fēng)工作狀態(tài),S13為開啟/關(guān)閉定時,S14為調(diào)節(jié)定時。系統(tǒng)的結(jié)構(gòu)框圖如圖1-1所示:單片機 液晶顯示 鍵盤輸入 溫度檢測 晶振電路 驅(qū)動電

5、路復(fù)位電路圖1-1 智能空調(diào)控制系統(tǒng)結(jié)構(gòu)框圖1.2 系統(tǒng)工作原理1.2.1 系統(tǒng)功能模塊工作原理介紹電源管理模塊將外部交流電通過整流變壓器及穩(wěn)壓芯片7805進行穩(wěn)壓,以便提供給各個系統(tǒng)工作模塊,如DS18B20溫度傳感器、單片機主控制單元、液晶顯示單元、驅(qū)動電路單元等。單片機(STC89C52)主控制單元負責(zé)整個智能空調(diào)控制系統(tǒng)的運行控制,通過人際交互單元(按鍵及液晶顯示)的系統(tǒng)功能設(shè)置,用1602液晶顯示器將室內(nèi)溫度顯示出來,并且可以通過按鍵進行調(diào)整,實現(xiàn)空調(diào)加熱或制冷的工作狀態(tài)設(shè)置,即達到智能空調(diào)的手動控制功能。通過DS18B20溫度傳感器實時檢測室溫并通過1602液晶顯示器顯示室溫,并將

6、室溫與預(yù)設(shè)值進行對比,實現(xiàn)空調(diào)自動制冷或加熱,實現(xiàn)了智能空調(diào)的自動控制功能。在定時功能啟動的情況下,如果計時時間與定時時間相同,此時,空調(diào)相應(yīng)的工作狀態(tài)會自動關(guān)閉。把定時時間存在STC89C52單片機內(nèi)部的EEPROM中,斷電后不會消失,直至通過按鍵去改變,實現(xiàn)了智能空調(diào)的定時加熱或制冷功能。1.2.2 各功能要求實現(xiàn)的工作原理1、定時與時間顯示剛開始上電時,1602液晶顯示器上產(chǎn)生實時時間。此系統(tǒng)運用單片機的定時器功能產(chǎn)生走時,采用的是二十四小時制,在一直通電的情況下,會一直加到23:59:59,然后清零從00:00:00重新開始。若開啟定時功能,液晶右下角顯示定時時間,在顯示器的右上角顯示

7、ON,未開啟定時功能則顯示OFF。液晶顯示屏的顯示畫面,如表1-1所示:表1-1未開啟定時或開啟定時功能,液晶顯示屏顯示結(jié)果0123456789101112131415OOFNF單片機得電后,其內(nèi)部定時器會立即開啟,在軟件程序中設(shè)定其相應(yīng)的內(nèi)部定時器的寄存器從而相應(yīng)的走時會比較準(zhǔn)確的記錄下來。2、溫度檢測與顯示DS18B20檢測的室內(nèi)溫度信號返回給單片機,單片機會相應(yīng)的處理此溫度信號,同時送往液晶顯示器顯示。提前設(shè)定的溫度值存在單片機ROM中,單片機處理后,也會在液晶上顯示。如表1-2所示,用*表示實時室內(nèi)溫度。表1-2 液晶顯示屏顯示實時室內(nèi)溫度(*為溫度值)0123456789101112

8、131415*智能溫控就是感溫頭精確感應(yīng),把室內(nèi)溫度的變化傳遞給中央控制芯片,由芯片控制系統(tǒng)使室內(nèi)溫度達到顯示屏上的設(shè)定溫度,使用者只需要自身的要求而去設(shè)定不同的溫度即可,以達到最大的智能化控制。3、鍵盤調(diào)節(jié)人機交互采用鍵盤輸入。通過鍵盤輸入指令,控制相應(yīng)的不同狀態(tài)的切換、時間定時長短的設(shè)定。調(diào)整時間設(shè)定(*表示光標(biāo)閃爍)如表1-3所示。表1-3液晶顯示的調(diào)整時間設(shè)定(*為走時時間,為定時時間)0123456789101112131415*:*:*:通過按鍵把定時的時間寫入單片機的EEPROM中,永久性保存。2 系統(tǒng)功能模塊的設(shè)計與實現(xiàn)2.1 主控制模塊2.1.1 主控制單元模塊設(shè)計系統(tǒng)主控制

9、單元,采用AT89c52單片機為主控制芯片,主要包括AT89c52單片機、復(fù)位電路、時鐘電路、下載電路、電源指示電路。2.1.2 主控制單元工作原理系統(tǒng)主控制單元如圖2-1所示:圖2-1 系統(tǒng)主控制單元功能電路STC89C52單片機具有256KB的程序存儲區(qū)、8KBFlashROM,完全滿足系統(tǒng)設(shè)計需要,按鍵S1為復(fù)位按鍵,采用低電平復(fù)位,電容C3與電阻R10組成上電復(fù)位電路,為了提高串行通信波特率的準(zhǔn)確度,時鐘電路采用12MHZ的晶振和電容C1、電容C2組成振蕩電路。2.2 電源模塊設(shè)計2.2.1 電源模塊概述LM7805是常用的三端穩(wěn)壓器,一般使用的是TO-220封裝,能提供DC 5V的輸

10、出電壓,應(yīng)用范圍廣,內(nèi)含過流和過載保護電路。帶散熱片時能持續(xù)提供1A的電流,如果使用外圍器件,它還能提供不同的電壓和電流。2.2.2 電源模塊的應(yīng)用電源模塊電路如圖2-2所示。電源電路主要為系統(tǒng)提供工作圖2-2 電源模塊功能電路電源,總電源有220V輸入,通過變壓器和整流器輸出12V直流電源。但是這個直流電源很不穩(wěn)定,所以再用一個7805進行穩(wěn)壓,輸出穩(wěn)定的5V直流電源。供單片機、lcd1602等使用。2.3 溫度檢測模塊設(shè)計2.3.1 溫度傳感器的選取溫度是一種最基本的環(huán)境參數(shù),人民的生活舒適度與環(huán)境的溫度息息相關(guān),DS18B20裝置適用于人民的日常生活和工業(yè)和農(nóng)業(yè)生產(chǎn)用的溫度測量。由半導(dǎo)體

11、公司生產(chǎn)的DS18B20型單線智能溫度傳感器,屬于新一代適配微處理器的智能溫度傳感器,可廣泛用于工業(yè)、民用、軍事等領(lǐng)域的溫度測量及控制儀器、測控系統(tǒng)和大型設(shè)備中。DS18B20具有體積小,接口方便,傳輸距離遠等特點。采用數(shù)字溫度傳感器DS18B20,與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測溫度并且可根據(jù)實際要求通過簡單的編程實現(xiàn)912位的數(shù)字值讀數(shù)方式??梢苑謩e在和750ms內(nèi)完成9位和12位的數(shù)字量,并且從DS18B20讀出的信息或?qū)懭隓S18B20的信息僅需要一根口線( 單線接口) 讀寫,溫度變換功率來源于數(shù)據(jù)總線,總線本身也可以向所掛接的DS18B20供電,而無需額外電源。因而使用DS1

12、8B20可使系統(tǒng)結(jié)構(gòu)更趨簡單,可靠性更高,成本更低。測量溫度范圍為-55+125。在-10+85,精度為±。DS18B20的精度較差為±2。現(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。2.3.2 DS18B20概述1DS18B20的性能特點:(1)采用單總線專用技術(shù),既可通過串行口線,也可通過其它I/O口線與微機接口,無須經(jīng)過其它變換電路,直接輸出被測溫度值(9位二進制數(shù),含符號位)。(2) 測溫范圍是-55+125。(3)內(nèi)含64位經(jīng)過激光修正的只讀存儲器ROM。(4)適配各種單片機或系統(tǒng)機。(5)用戶可分別設(shè)定各路溫度的上、下限。(6)內(nèi)含寄生電

13、源。2DS18B20內(nèi)部結(jié)構(gòu)DS18B20內(nèi)部結(jié)構(gòu)主要由4部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報警觸發(fā)器TH和TL,配制寄存。DS18B20的管腳排列如圖2-3所示。圖2-3 DS18B20引腳圖3DS18B20引腳功能如下:NC(1 、2 、6 、7 、8腳) :空引腳,懸空不使用。VDD(3腳):可選電源腳,電源電壓范圍是3。DQ(4腳):數(shù)據(jù)輸入/輸出腳,漏極開路,常態(tài)下高電平。2.3.3 溫度檢測單元電路溫度檢測單元采用DS18B20實現(xiàn)溫度的檢測。功能電路如圖2-4所示,溫度傳感器DS18B20將采集回來的數(shù)據(jù)經(jīng)口給AT89c52單片機,AT89c52單片機把這些數(shù)據(jù)

14、進行分析,送至1602液晶顯示器上顯示溫度。圖2-4 DS18B 20溫度檢測功能電路具體操作如下:1DS18B20初始化。(1)數(shù)據(jù)線拉到低電平“0”。(2)延時480微妙(該時間的時間范圍可以從480到960微妙)。(3)數(shù)據(jù)線拉到高電平“1”。(4)延時等待80微妙。如果初始化成功則在15到60微妙時間內(nèi)產(chǎn)生一個由DS18B20所返回的低電平“0”。根據(jù)該狀態(tài)可以來確定它的存在,但是應(yīng)注意不能無限的進行等待,不然會使程序進入死循環(huán),所以要進行超時判斷。(5)若CPU讀到了數(shù)據(jù)線上的低電平“0”后,還要做延時,其延時的時間從發(fā)出的高電平算起(第(3)步的時間算起)最少要480微妙。2控制器

15、寫時序。(1)數(shù)據(jù)線先置“0”(2)延時15微妙。(3)按從低位到高位的順序發(fā)送數(shù)據(jù)(一次只發(fā)生一位)。(4)延時60微妙。(5)將數(shù)據(jù)線拉到高電平。(6)重復(fù)15步驟,直到發(fā)送完整的字節(jié)。(7)最后將數(shù)據(jù)線拉高。3控制器讀時序。(1)將數(shù)據(jù)線拉低“0”。(2)延時6微妙。(3)將數(shù)據(jù)線拉高“1”,釋放總線準(zhǔn)備讀數(shù)據(jù)。(4)延時4微妙。(5)讀數(shù)據(jù)線的狀態(tài)得到1個狀態(tài)位,并進行數(shù)據(jù)處理。(6)延時30微妙。(7)重復(fù)17步驟,直到讀完一個字節(jié)。2.4 顯示模塊設(shè)計2.4.1 1602液晶顯示器概述1液晶顯示器簡介液晶顯示器的主要工作原理是通過電流刺激液晶分子,從而產(chǎn)生點、線、面、并配合背部燈管

16、構(gòu)成不同的顯示畫面。各種不同型號的液晶顯示器都是按照顯示字符的行數(shù)或者是液晶顯示器點陣的行、列數(shù)進行命名的。例如:1602液晶顯示器所表述的意思就是,每行顯示16個字符,一共能夠有兩行進行顯示字符。本設(shè)計就是應(yīng)用1602液晶顯示器進行顯示溫度以及定時時間。液晶顯示器的英文名稱是Liquid Crystal Display,所以液晶顯示器又可以叫做LCD,以下的1602液晶顯示器都稱為LCD1602。字符型液晶顯示模塊是一種專門用于顯示字母、數(shù)字、符號等點陣式液晶顯示器,LCD1602以并行操作方式占大多數(shù),但是有的也并行操作方式和串行操作方式同時具有,用戶自行選擇并口或串口操作。2 LCD16

17、02的基本參數(shù)及引腳功能:LCD1602分為帶背光和不帶背光兩種,基控制器大部分為HD44780,帶背光的比不帶背光的要厚,是否帶背光在應(yīng)用中并無差別,兩者尺寸差別,如圖2-5所示:圖2-5LCD1602尺寸圖3LCD1602主要技術(shù)參數(shù):(1)顯示容量:162個字符(2)芯片工作電壓:(3)工作電流:2.0mA(5.0V)(4)模塊最佳工作電壓:(5)字符尺寸:2.954.35(WH)mm4.引腳功能說明:LCD1602采用標(biāo)準(zhǔn)的14腳(無背光)或16腳(帶背光)接口,各引腳接口說明如表2-1所示:第1腳:VSS為地電源。第2腳:VDD接5V正電源。第3腳:VL為液晶顯示器對比度調(diào)整端,接正

18、電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,使用時可以通過一個10K的電位器調(diào)整對比度。第4腳:RS為寄存器選擇,高電平時選擇數(shù)據(jù)寄存器、低電平時選擇指令寄存器。表2-1 LCD1602引腳接口說明編號符號引腳說明編號符號引腳說明1VSS電源地9D2數(shù)據(jù)口2VDD電源正極10D3數(shù)據(jù)口3VL液晶顯示偏壓11D4數(shù)據(jù)口4RS數(shù)據(jù)/命令選擇12D5數(shù)據(jù)口5R/W讀/寫選擇13D6數(shù)據(jù)口6E使能信號14D7數(shù)據(jù)口7D0數(shù)據(jù)口15BLA背光源正極8D1數(shù)據(jù)口16BLK背光源負極第5腳:R/W為讀寫信號線,高電平時進行讀操作,低電平時進行寫操作。當(dāng)RS和R/W共同為低電平時可以寫入指

19、令或者顯示地址,當(dāng)RS為低電平R/W為高電平時可以讀忙信號,當(dāng)RS為高電平R/W為低電平時可以寫入數(shù)據(jù)。第6腳:E端為使能端,當(dāng)E端由高電平跳變成低電平時,液晶模塊執(zhí)行命令。第714腳:D0D7為8位雙向數(shù)據(jù)線。第15腳:背光源正極。第16腳:背光源負極。5LCD1602的指令說明:LCD1602內(nèi)部的控制器共有11條控制指令,如表3-2所示。LCD1602液晶模塊的讀寫操作、屏幕和光標(biāo)的操作都是通過指令編程來實現(xiàn)的。(說明:1為高電平、0為低電平)表3-2 LCD1602控制指令序號指令RSR/WD7D6D5D4D3D2D1D01清顯示00000000012光標(biāo)返回000000001*3置輸

20、入模式00000001I/DS4顯示開/關(guān)控制0000001DCB5光標(biāo)或字符移位000001S/CR/L*6置功能00001DLNF*7置字符發(fā)生存貯器地址0001字符發(fā)生存貯器地址8置數(shù)據(jù)存貯器地址001顯示數(shù)據(jù)存貯器地址9讀忙標(biāo)志或地址01BF計數(shù)器地址10寫數(shù)到CGRAM或DDRAM10要寫的數(shù)據(jù)內(nèi)容11從CGRAM或DDRAM讀數(shù)11讀出的數(shù)據(jù)內(nèi)容指令1:清顯示,指令碼01H,光標(biāo)復(fù)位到地址00H位置。指令2:光標(biāo)復(fù)位,光標(biāo)返回到地址00H。指令3:光標(biāo)和顯示模式設(shè)置I/D:光標(biāo)移動方向。高電平右移,低電平左移。S:屏幕上所有文字是否左移或者右移。高電平表示有效,低電平則無效。指令4

21、:顯示開關(guān)控制。D:控制整體顯示的開與關(guān),高電平表示開顯示,低電平表示關(guān)顯示。C:控制光標(biāo)的開與關(guān),高電平表示有光標(biāo),低電平表示無光標(biāo)。B:控制光標(biāo)是否閃爍,高電平閃爍,低電平不閃爍。指令5:光標(biāo)或顯示移位。S/C:高電平時移動顯示的文字,低電平時移動光標(biāo)。指令6:功能設(shè)置命令。 DL:高電平時為4位總線,低電平時為8位總線。N:低電平時為單行顯示,高電平時雙行顯示。F: 低電平時顯示5x7的點陣字符,高電平時顯示5x10的點陣字符。指令7:字符發(fā)生器RAM地址設(shè)置。指令8:DDRAM地址設(shè)置。指令9:讀忙信號和光標(biāo)地址BF:為忙標(biāo)志位,高電平表示忙,此時模塊不能接收命令或者數(shù)據(jù),如果為低電平

22、表示不忙。指令10:寫數(shù)據(jù)。指令11:讀數(shù)據(jù)。6LCD1602的RAM地址映射及標(biāo)準(zhǔn)字庫表:液晶顯示模塊是一個慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志為低電平,表示不忙,否則此指令失效。要顯示字符時要先輸入顯示字符地址,也就是告訴模塊在哪里顯示字符,圖2-7是LCD1602的內(nèi)部顯示地址。在對液晶模塊的初始化中要先設(shè)置其顯示模式,在液晶模塊顯示字符時光標(biāo)是自動右移的,無需人工干預(yù)。每次輸入指令前都要判斷液晶模塊是否處于忙的狀態(tài)。圖2-7LCD1602內(nèi)部顯示地址LCD1602液晶模塊內(nèi)部的字符發(fā)生存儲器(CGROM)已經(jīng)存儲了160個不同的點陣字符圖形,如圖3-7所示,這些字符

23、有:阿拉伯?dāng)?shù)字、英文字母的大小寫、常用的符號等,每一個字符都有一個固定的代碼,比如大寫的英文字母“A”的代碼是01000001B(41H),顯示時模塊把地址41H中的點陣字符圖形顯示出來,我們就能看到字母“A”。7. LCD1602的一般初始化(復(fù)位)過程:寫指令38H:顯示模式設(shè)置寫指令08H:顯示關(guān)閉寫指令01H:顯示清屏寫指令06H:顯示光標(biāo)移動設(shè)置寫指令0CH:顯示開及光標(biāo)設(shè)置2.4.2 顯示模塊電路在該系統(tǒng)中顯示用到的是LCD1602液晶顯示器。液晶顯示器以其微功耗、體積小、顯示內(nèi)容豐富、超薄輕巧的諸多優(yōu)點,在各種小系統(tǒng)中得到了非常廣泛的應(yīng)用。LCD1602是指顯示的內(nèi)容為16

24、15;2,即可以顯示2行,每行16個字符液晶模塊(顯示字符和數(shù)字)。圖2-8LCD1602與單片機接線電路圖2.5 模塊設(shè)計2.5.1 鍵盤電路功能設(shè)定鍵盤電路圖如圖2-9所示。圖2-9鍵盤電路圖按鍵S116組成矩陣鍵盤與單片機AT89c52的P3口相連接。S2為“加”,S10為“減”,S3啟動/關(guān)閉,S5為啟動智能空調(diào)制冷狀態(tài),S6為調(diào)節(jié)走時按鍵,S7為啟動智能空調(diào)暖風(fēng)工作狀態(tài),S13為開啟/關(guān)閉定時,S14為調(diào)節(jié)定時。2.5.2 矩陣鍵盤電路工作原理矩陣鍵盤采用動態(tài)掃描的方式:首先給P3.0口低電平,然后逐列掃描,如果S1鍵按下則P3.4口為低電平;然后給P3.1口低電平,再逐列掃描,以此

25、類推,直到P3.3為低電平,掃描完一次矩陣鍵盤。2.6 外圍驅(qū)動電路模塊設(shè)計2.6.1 驅(qū)動電路本系統(tǒng)中AT89c52單片機根據(jù)讀取的按鍵值,做出不同的響應(yīng)動作。單片機只是一個主控方,他的強大功能必須依靠外圍器件驅(qū)動才能完成,所以本設(shè)計中通過三極管VT1(8550),繼電器K1后,驅(qū)動智能空調(diào)的啟動/停止功能,最終使室內(nèi)的溫度保持在一個人為感覺良好的理想狀態(tài)。通過控制繼電器的通/斷即可達到智能空調(diào)智能控制的要求。驅(qū)動電路圖如圖2-10所示。圖2-10 驅(qū)動電路圖2.6.2 JQC-3FF繼電器繼電器的工作原理實質(zhì)是通過低電壓、小電流控制高電壓、大電流。JQC-3FF-5V繼電器的觸點形式是一開

26、一閉。繼電器的工作參數(shù)如表3-4所示。表2-4 繼電器工作參數(shù)額定電壓:DC-12V額定電流:12觸點切換電流:10觸點切換電壓:1防護特征:塑封式觸點負載:大功率應(yīng)用范圍:電磁型號:JQC-3FF-5VDC-1ZS(551)觸點形式:一開一閉3 系統(tǒng)軟件設(shè)計系統(tǒng)軟件設(shè)計采用模塊化、結(jié)構(gòu)化的設(shè)計思想,使程序便于移植。系統(tǒng)程序主要包括主程序、系統(tǒng)宏定義、鍵盤處理函數(shù)、LCD顯示函數(shù)、溫度檢測、系統(tǒng)控制算法函數(shù)。首先系統(tǒng)上電后啟動系統(tǒng)功能,此時處于待機狀態(tài),S3按下后液晶顯示器顯示,空調(diào)開始工作,然后可以通過人機交互選擇系統(tǒng)所運行的功能。系統(tǒng)上電后自動開始走時,開機后顯示器顯示時間、室內(nèi)溫度確定值

27、、設(shè)定值以及定時時間。通過人機交互選擇系統(tǒng)所運行的功能,確定這些數(shù)值是否需要進行改動。當(dāng)上述所有數(shù)值設(shè)定好后,再次通過人機交互選擇系統(tǒng)所運行的功能,把所定時的時間寫入到單片機的EEPROM中,把定時功能開啟。智能空調(diào)控制系統(tǒng)的主程序流程圖,如圖3-1所示:開始調(diào)用鍵盤程序DS18B20檢測溫度 判斷按鍵做出相應(yīng)處理液晶顯示有按鍵?NY圖3-1主程序流程圖智能空調(diào)控制系統(tǒng)按鍵部分的子程序流程圖,如圖3-2所示:圖3-2按鍵部分的子程序流程圖液晶顯示部分的子程序流程圖,如圖3-3所示:圖3-3液晶顯示部分的子程序流程圖4 系統(tǒng)測試及結(jié)果分析通過兩周的設(shè)計和制作,本系統(tǒng)成功地實現(xiàn)了設(shè)計要求。為驗證系

28、統(tǒng)的功能和各項技術(shù)指標(biāo),下面通過實驗對本系統(tǒng)進行功能驗證。4.1 系統(tǒng)測試1.首先上電,液晶顯示器不顯示。2.S3按下后顯示走時,定時、實際溫度值等。3.按下S7按鍵,開啟暖風(fēng)模式,右上角顯示1.4. 按下S13按鍵,開啟定時模式。5. 定時模式開啟時,按下S14按鍵,可調(diào)節(jié)定時時間。此時光標(biāo)閃爍。按下S2或S9可調(diào)節(jié)時間。6. 按下S6按鍵,光標(biāo)在時間處閃爍,此時按下S2或S9可調(diào)節(jié)時間。4.2 系統(tǒng)測試結(jié)果及分析通過以上的測試數(shù)據(jù)分析,可以得出以下結(jié)論:1、本系統(tǒng)的走時功能,定時功能得以實現(xiàn)。2、本裝置使用了矩陣鍵盤。按鍵簡潔方便,滿足人們的習(xí)慣??蓪崿F(xiàn)各個功能的調(diào)節(jié)與運行。3、走時精確度

29、較高,與現(xiàn)實的時間相差甚小,可以完全作為一個電子鐘使用。走時精確,而就會減小定時長短的失誤,更加精確化。利用單片機的自身資源,節(jié)省了成本,減少了外圍電路的設(shè)計。4、溫度傳感器檢測的實時溫度準(zhǔn)確度較高,可以使室內(nèi)溫度始終保持在一個比較理想的狀態(tài)中,使人們的生活更加舒適。5、在本設(shè)計中,為了防止在溫控點上壓縮機頻繁的啟動/關(guān)閉,影響其壽命,溫控的精度誤差控制在1攝氏度。實踐證明,這對室內(nèi)的溫度并沒有明顯的影響。結(jié)論本論文分析了智能空調(diào)控制系統(tǒng)結(jié)構(gòu)和特點,總結(jié)全文,主要的研究工作有以下幾個方面:1、對智能空調(diào)控制系統(tǒng)的原理和組成進行了詳細的介紹,確定了系統(tǒng)的總體設(shè)計方案。2、對智能空調(diào)控制系統(tǒng)的控制

30、過程做了準(zhǔn)確的算法分析,包括檢測過程中的實時溫度、按鍵復(fù)用、驅(qū)動等,通過上述分析最終通過程序算法實現(xiàn)溫度的自動控制控制。3、對鍵盤詳細的分析,采用內(nèi)部定時器產(chǎn)生實時時鐘供顯示屏顯示,使其可作為一臺精度較高的電子時鐘使用。這樣節(jié)省了成本。4、以AT89c52最小系統(tǒng)板為控制系統(tǒng),進行并完成了系統(tǒng)要求所需的各硬件模塊的原理圖,并做了相應(yīng)的硬件制作調(diào)試。采用了DS18B20溫度傳感器檢測實時溫度狀態(tài),使數(shù)據(jù)更準(zhǔn)確,并對DS18B20溫度傳感器進行了精確的控制,提高了檢測系統(tǒng)的可靠性。5、完成了相關(guān)的分析算法程序和各功能模塊的應(yīng)用程序的設(shè)計,實現(xiàn)了溫度控制。整個軟件的設(shè)計采用模塊化、結(jié)構(gòu)化設(shè)計思想,使

31、程序便于移植。6、分析了控制系統(tǒng)中可能存在的各種干擾源,在設(shè)計控制系統(tǒng)時,采用硬件和軟件抗干擾技術(shù)相結(jié)合的方法進行了抗干擾設(shè)計,保證了控制系統(tǒng)的可靠性。1 譚浩強,C程序設(shè)計.北京:清華大學(xué)出版社,2005.07。2 7805電壓轉(zhuǎn)換模塊使用說明書。3 DS18B20溫度傳感器使用手冊。4LCD1602液晶顯示模塊使用說明書。5 數(shù)字電子技術(shù)基礎(chǔ)。常丹華 主編6 單片機原理及應(yīng)用技術(shù)。張淑清等編著7 百度文庫以及網(wǎng)上的各種資料。附錄附錄1系統(tǒng)主程序/包含所需頭文件#include<reg52.h>#include"LCD1602.h"#include"

32、ds18b20.h"#define uint unsigned int#define uchar unsigned char/uchar key_value;sbit led=P22; /電源指示燈uchar p; /定時中斷參數(shù)uchar key_scan(); /矩陣鍵盤掃描/*定時中斷初始化*/void dszd_init()TMOD=0x01;TR0=1;TH0=(65535-10000)/256;TL0=(65535-10000)%256;ET0=1;EA=1;/*空調(diào)啟動停止*/uchar start()if(key_value=2) /按鍵s3按下 打開/關(guān)閉空調(diào)del

33、ay(500); /延時500mskey_value=0;s3num+;s3num=s3num%2;if(s3num=1)begin=1;if(s3num=0)begin=0;if(s3num=1&&r=1&&s1num=0&&s2num=0) /開關(guān)打開/并且開啟定時并且沒有進行調(diào)試if(hour=hour_1&&min=min_1)begin=0;s3num=0;return begin;/*室溫與設(shè)定溫度比較*/void compare()if(cold=0)/制冷模式下if(temper-temp>1)|(temp-

34、temper>1)jidianqi_1=1;/溫差大于一度 啟動電動機if(temper=temp)/室內(nèi)溫度等于設(shè)定溫度 關(guān)閉/電動機jidianqi_1=0;if(hot=0)/暖風(fēng)模式下if(temper-temp>1)|(temp-temper>1)jidianqi_2=1;/溫差大于一度 啟動電動機if(temper=temp)/室內(nèi)溫度等于設(shè)定溫度 關(guān)閉電動機jidianqi_2=0;/*主程序*/void main()dszd_init(); /開定時中斷 while(1)key_scan();/開矩陣鍵盤掃描start();write_com(0x08);/關(guān)

35、閉顯示jidianqi_1=0;jidianqi_2=0;/啟動前電機關(guān)閉cold=0;hot=0; / 制冷/暖風(fēng)指示燈關(guān)閉while(begin)init(); /初始化液晶顯示cold=0; /默認(rèn)為制冷模式hot=1;while(begin)led=1; /電源指示燈一直亮write_hms(0,hour);write_hms(3,min);write_hms(6,sec);/顯示時間key_scan(); /矩陣鍵盤掃描start(); /掃描空調(diào)開啟/關(guān)閉lcd_mode(); /工作模式LCD_scan();/更新液晶時間顯示lcd_temp();/更新液晶溫度顯示dingshi

36、();/定時時間顯示和調(diào)節(jié)LcdDisplay(Ds18b20ReadTemp();/溫度檢測compare();/溫度比較,控制電動機起動/關(guān)閉/*定時中斷*/void Timer0() interrupt 1TH0=(65536-10000)/256; TL0=(65536-10000)%256;p+;if(p=100)p=0;sec+;if(sec=60)sec=0;min+;if(min=60)min=0;hour+;if(hour=24)hour=0;#ifndef _LCD1602_H_#define _LCD1602_H_#define uint unsigned int#def

37、ine uchar unsigned charuchar key_value;sbit cold=P20;/綠燈時制冷指示燈sbit hot=P21;/紅燈為暖風(fēng)指示燈sbit jidianqi_1=P11;sbit jidianqi_2=P12;/*定義液晶顯示器*/sbit LCDE=P27;sbit LCDRS=P26;sbit LCDRW=P25;uchar num,s1num,s2num,s3num,r;uchar hour,min,sec,hour_1=1,min_1;uchar temper=26;uchar shi,ge;uchar begin;uchar code table

38、_1="27 / /26 OFF 0" /液晶顯示器第一行顯示結(jié)果uchar code table_2="00:00:00 00:00" /液晶顯示器第二行顯示結(jié)果void delay(uint z) /1ms延時函數(shù)uint i,j;for(i=0;i<z;i+)for(j=0;j<110;j+);/*矩陣鍵盤掃描程序*/uchar key_scan()uchar table=0,i;for(i=0;i<4;i+)P3=(0x10<<i);table=P3;table=table&0x0f;if(table!=0x

39、0f)delay(5); /去抖table=P3; /區(qū)分獨立鍵盤table=table&0x0f;if(table!=0x0f)switch(table)case 0x0e:key_value=0+i;break;case 0x0d:key_value=4+i;break;case 0x0b:key_value=8+i;break;case 0x07:key_value=12+i;break;while(table!=0x0f) /松手檢測 table=P3;table=table&0x0f;return key_value;/*液晶顯示器寫命令*/void write_co

40、m(uchar com) LCDRS=0;LCDRW=0;P0=com;delay(5);LCDE=1;delay(5);LCDE=0;/*液晶顯示器寫數(shù)據(jù)*/void write_data(uchar date) LCDRS=1;LCDRW=0;P0=date;delay(5); /延時5msLCDE=1;delay(5);LCDE=0;/*液晶顯示器初始化*/void init() LCDE=0;write_com(0x38); /顯示模式設(shè)制write_com(0x0c); /開顯示 不顯示光標(biāo) 光標(biāo)不閃爍write_com(0x06); /當(dāng)讀或?qū)懸粋€字符后地址指針加一,且光標(biāo)加一 整

41、屏不移動write_com(0x01); /顯示清屏write_com(0x80); /設(shè)計數(shù)據(jù)指針地址for(num=0;num<16;num+)write_data(table_1num);delay(20); /延時20 mswrite_com(0x80+0x40); /重新設(shè)置數(shù)據(jù)指針 換行for(num=0;num<16;num+)write_data(table_2num);delay(20);/*/void write_hms(uchar add,uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80

42、+0x40+add);write_data(0x30+shi);write_data(0x30+ge);/*/void write_temp(uchar date)uchar shi,ge;shi=date/10;ge=date%10;write_com(0x80+0x07);write_data(0x30+shi);write_data(0x30+ge);/*調(diào)整液晶顯示器時間*/void LCD_scan() uchar panduan_1; if(key_value=5) / 按鍵S6摁下panduan_1=1;/delay(50); /延時50mswhile(panduan_1)if(

43、key_value=5)delay(500); /延時500ms 防止加的過快s1num+;key_value=0;if(s1num=1)TR0=0;/停止時間計時write_com(0x80+0x40+1);/重新設(shè)置數(shù)據(jù)指針 換行write_com(0x0f);/顯示光標(biāo) 光標(biāo)閃爍if(s1num=2)write_com(0x80+0x40+4);if(s1num=3)write_com(0x80+0x40+7);if(s1num=4)s1num=0;write_com(0x0c);TR0=1;panduan_1=0; /判斷標(biāo)志位清零 退出時間調(diào)節(jié)if(s1num!=0)if(key_v

44、alue=1) /按鍵S2按下delay(500);/延時500ms 防止加的過快key_value=0;if(s1num=1)hour+;if(hour=24)hour=0;write_hms(0,hour); /光標(biāo)在小時處閃爍write_com(0x80+0x40+1);/使光標(biāo)再回到小時處閃爍if(s1num=2)min+;if(min=60)min=0;write_hms(3,min); /光標(biāo)在分處閃爍write_com(0x80+0x40+4);/光標(biāo)再回到分處閃爍if(s1num=3)sec+;if(hour=60)sec=0;write_hms(6,sec);/光標(biāo)在秒處閃爍

45、write_com(0x80+0x40+7);/光標(biāo)再回到秒處閃爍if(key_value=9) /按鍵S10按下delay(500);/延時500ms防止減的過快key_value=0; if(s1num=1)hour-;if(hour=-1)hour=23;write_hms(0,hour); /光標(biāo)在小時處閃爍write_com(0x80+0x40+1); /使光標(biāo)再回到小時處閃爍if(s1num=2)min-;if(min=-1)min=59;write_hms(3,min); /光標(biāo)在分處閃爍write_com(0x80+0x40+4);/光標(biāo)再回到分處閃爍if(s1num=3)sec-;if(sec=-1)sec=60;write_hms(6,sec); /光標(biāo)在秒處閃爍write_com(0x80+0x40+7);/光標(biāo)再回到秒處閃爍key_scan();/*工作模式*/void lcd_mode()if(key_value=4) /按鍵s5按下/delay(50);key_value=0;write_com(0x80+0x0f);write_data(0x30+0x00); /顯示0表示制冷jidianqi_1=1; /繼電器1起動

溫馨提示

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

評論

0/150

提交評論