![基于單片機的智能風(fēng)機的設(shè)計_第1頁](http://file4.renrendoc.com/view3/M01/16/21/wKhkFmab12uARw1wAAHVBJ853SY310.jpg)
![基于單片機的智能風(fēng)機的設(shè)計_第2頁](http://file4.renrendoc.com/view3/M01/16/21/wKhkFmab12uARw1wAAHVBJ853SY3102.jpg)
![基于單片機的智能風(fēng)機的設(shè)計_第3頁](http://file4.renrendoc.com/view3/M01/16/21/wKhkFmab12uARw1wAAHVBJ853SY3103.jpg)
![基于單片機的智能風(fēng)機的設(shè)計_第4頁](http://file4.renrendoc.com/view3/M01/16/21/wKhkFmab12uARw1wAAHVBJ853SY3104.jpg)
![基于單片機的智能風(fēng)機的設(shè)計_第5頁](http://file4.renrendoc.com/view3/M01/16/21/wKhkFmab12uARw1wAAHVBJ853SY3105.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
****屆本科畢業(yè)論文(設(shè)計)****屆本科畢業(yè)論文(設(shè)計)摘要隨著現(xiàn)代科技的快速發(fā)展,智能家電產(chǎn)品逐漸普及。智能風(fēng)機作為一種性價比高、節(jié)能環(huán)保的夏季家電產(chǎn)品,受到消費者的青睞。然而,傳統(tǒng)風(fēng)機智能化程度低,給特殊人群使用帶來不便,因此提高風(fēng)機智能化水平至關(guān)重要。本研究采用51單片機作為核心控制器,結(jié)合溫度傳感模塊、人體感應(yīng)模塊、液晶顯示屏、藍(lán)牙模塊等,設(shè)計了一款能夠?qū)崟r顯示環(huán)境參數(shù)、自動調(diào)節(jié)風(fēng)速、支持遠(yuǎn)程控制的智能風(fēng)機系統(tǒng)。系統(tǒng)具有溫度自動檢測與調(diào)節(jié)、實時參數(shù)顯示、手動控制及參數(shù)設(shè)定等功能,旨在提供舒適便捷的使用體驗。硬件部分包括單片機模塊、溫度傳感模塊、電機風(fēng)機模塊等關(guān)鍵部件的選型與設(shè)計;軟件部分基于Keil4開發(fā)環(huán)境,采用C語言編程,實現(xiàn)了系統(tǒng)的主控制程序及各功能子程序。通過軟件調(diào)試和硬件調(diào)試,解決了數(shù)碼管顯示混亂、溫度采集不準(zhǔn)確等問題,并通過Proteus仿真軟件驗證了系統(tǒng)設(shè)計的可行性和正確性??偨Y(jié)而言,本研究設(shè)計的基于單片機的智能風(fēng)機系統(tǒng)不僅提高了風(fēng)機的智能化水平,而且具有成本低廉、功能豐富、易于操作等優(yōu)點,具有良好的市場前景和消費者應(yīng)用價值。關(guān)鍵詞:51單片機;智能風(fēng)機;軟件設(shè)計;硬件設(shè)計目錄TOC\o"1-3"\h\u摘要 引言當(dāng)炎炎夏日來臨時,無論是家庭還是學(xué)校宿舍,智能風(fēng)機都是必備的家電設(shè)備之一。然而,以往的普通智能風(fēng)機功能較為局限,僅僅能夠?qū)崿F(xiàn)人工設(shè)定智能風(fēng)機的擺頭角度和調(diào)整風(fēng)速的高低,此外每個檔位之間的風(fēng)速差異較大。這給老年人或者病人等行動不便者帶來諸多不便。為了解決這個問題,本次論文提出了一款基于51單片機構(gòu)成的智能溫度控制智能風(fēng)機設(shè)計方案。51系列單片機具備較高的性能和低功耗表現(xiàn),且提供多樣的芯片型號供我們選擇,性價比優(yōu)越,適用于大規(guī)模產(chǎn)品開發(fā)需求。這款智能風(fēng)機引入了DS18B20溫度傳感器模塊,實時采集周圍環(huán)境溫度并傳送至51單片機內(nèi)進(jìn)行處理,進(jìn)而依照溫度狀況調(diào)節(jié)智能風(fēng)機的檔位及風(fēng)速。此外,還利用紅外人體探測模塊監(jiān)測周圍有無人員存在,以此實現(xiàn)智能風(fēng)機智能開關(guān)。用戶可以通過按鍵設(shè)定自動或手動模式、風(fēng)速檔級、溫度臨界點以及在自動模式下手動微調(diào)風(fēng)速等多種參數(shù),而這些信息都可以通過七段數(shù)碼管顯示出來。此外,還可以通過藍(lán)牙調(diào)試助手進(jìn)行遠(yuǎn)距離無線控制智能風(fēng)機的工作狀態(tài)、檔位、溫度臨界點等等各方面的參數(shù)。在國內(nèi)外,智能家居設(shè)備的發(fā)展迅速,特別是與溫度控制相關(guān)的設(shè)備。傳統(tǒng)的智能風(fēng)機設(shè)備已經(jīng)不能滿足現(xiàn)代人對舒適度和便捷性的需求,因此,智能溫度控制智能風(fēng)機應(yīng)運而生。隨著物聯(lián)網(wǎng)、人工智能等技術(shù)的快速發(fā)展,越來越多的家電企業(yè)開始涉足智能家居領(lǐng)域,推出了各種具有智能化、網(wǎng)絡(luò)化、自動化等特點的家電產(chǎn)品[1]。智能溫度控制智能風(fēng)機作為一種常見的智能家居設(shè)備,已經(jīng)得到了廣泛的應(yīng)用。各大企業(yè)都在不斷推出更加智能、更加人性化的智能風(fēng)機產(chǎn)品,以滿足消費者的需求[2,3]。在國際上,智能家居設(shè)備的發(fā)展同樣迅速。許多國際知名家電企業(yè)都在積極研發(fā)和推廣智能家居設(shè)備,其中包括智能溫度控制智能風(fēng)機[4]。這些產(chǎn)品不僅具有高度的智能化和自動化特點,還注重用戶體驗和節(jié)能環(huán)保等方面,深受消費者的喜愛。盡管智能溫度控制智能風(fēng)機已經(jīng)得到了廣泛的應(yīng)用,但仍然存在一些問題和挑戰(zhàn)[5]。如何進(jìn)一步提高設(shè)備的智能化程度、如何保證設(shè)備的穩(wěn)定性和安全性、如何降低設(shè)備的成本等等[6]。因此,未來的研究和發(fā)展方向應(yīng)該注重解決這些問題,推動智能溫度控制智能風(fēng)機技術(shù)的不斷進(jìn)步和應(yīng)用。 1緒論 1.1研究背景及意義炎熱的夏季,電風(fēng)扇無疑是家居生活中必不可少的一員。然而傳統(tǒng)電風(fēng)扇存在一些明顯的缺陷:其一,控制方式單一,大多只能手動開關(guān)和調(diào)節(jié)風(fēng)速,無法根據(jù)室內(nèi)溫度變化自行調(diào)節(jié),給用戶帶來很大不便;其二,能耗較高,長期高轉(zhuǎn)速運轉(zhuǎn)會消耗大量電力,加重用戶的經(jīng)濟負(fù)擔(dān);其三,噪音較大,特別是在高速運轉(zhuǎn)時,會產(chǎn)生明顯的噪音污染,影響居住環(huán)境的舒適性。針對上述問題,開發(fā)一種基于智能控制的新型電風(fēng)扇就顯得尤為必要。本文設(shè)計的基于單片機的智能風(fēng)機控制系統(tǒng),借助溫度檢測傳感器和單片機等電子元器件,實現(xiàn)了根據(jù)溫度自動調(diào)節(jié)風(fēng)速的智能化控制,從而極大地提高了風(fēng)機的節(jié)能環(huán)保性和人性化體驗。該系統(tǒng)的設(shè)計思路是:在風(fēng)機上安裝溫度傳感器,檢測當(dāng)前室內(nèi)溫度;預(yù)先設(shè)定一個溫度閾值區(qū)間,例如20-28℃;當(dāng)溫度低于20℃時,系統(tǒng)自動關(guān)閉風(fēng)機;當(dāng)溫度介于20-28℃之間時,風(fēng)機以一檔低速運轉(zhuǎn);當(dāng)溫度超過28℃時,風(fēng)機自動切換到二檔高速運轉(zhuǎn),從而實現(xiàn)自動根據(jù)溫度變化調(diào)節(jié)風(fēng)速的目的。同時,系統(tǒng)還預(yù)留了手動控制接口,允許用戶根據(jù)個人需求隨時開關(guān)或切換風(fēng)機狀態(tài),兼顧自動化和人性化的需求。1.2國內(nèi)外研究現(xiàn)狀1.2.1國內(nèi)研究現(xiàn)狀近年來,國內(nèi)對于智能家電控制系統(tǒng)的研究熱度不斷升溫。在智能風(fēng)機控制領(lǐng)域,主要的研究思路是利用單片機作為控制核心,結(jié)合溫度、濕度等傳感器以及WiFi模塊等無線通訊模塊,實現(xiàn)風(fēng)機的智能化控制。在硬件方面,溫度傳感器DS18B20因其精度高、抗干擾能力強等優(yōu)點成為研究者的最愛,也是本文選用的溫度檢測模塊。在單片機控制器的選擇上,大多數(shù)方案采用了STC89C51、STC12C5A60S2等51系列單片機,或者是Arduino系列的開源硬件平臺。51單片機被廣泛運用的主要原因有三:一是價格低廉,二是資源豐富,三是功能相對簡單的控制場景可完全勝任。在軟件方面,許多研究聚焦于設(shè)計高效的溫度采集算法、數(shù)據(jù)處理算法以及人機交互界面等,以提升系統(tǒng)的響應(yīng)速度和用戶體驗。同時,還有不少文獻(xiàn)探討了風(fēng)機控制系統(tǒng)的硬件電路設(shè)計和PCB布局??偟膩碚f,國內(nèi)在單片機控制技術(shù)和相關(guān)硬件電路設(shè)計方面已有較為成熟的研究基礎(chǔ),但大多局限于實驗室研究階段,真正的商業(yè)化產(chǎn)品還較為缺乏。1.2.2國外研究現(xiàn)狀相比之下,國外在智能家電領(lǐng)域的研究更為領(lǐng)先。像日本的松下電器、荷蘭的飛利浦等知名家電企業(yè),都推出了自己的智能風(fēng)扇產(chǎn)品,并已在全球范圍內(nèi)實現(xiàn)商業(yè)化應(yīng)用。這些智能風(fēng)扇產(chǎn)品在硬件配置上相對高端,不僅具備基本的溫度自動調(diào)節(jié)功能,還支持APP遠(yuǎn)程控制、語音操作、聯(lián)網(wǎng)控制等智能化功能。其中,美國亞馬遜公司的Alexa語音助手成為國外多家廠商的合作伙伴。用戶只需語音下達(dá)指令,就可以控制風(fēng)扇的開關(guān)、風(fēng)速、oscill等功能,操作體驗之便捷可想而知。除了功能智能化,國外產(chǎn)品在節(jié)能環(huán)保方面也有長足進(jìn)步。有些產(chǎn)品采用直流無刷電機,功耗更低;有些則選用生物材料制造葉片,使用壽命更長等。可以說,國外智能風(fēng)扇產(chǎn)品在人性化、智能化和環(huán)保節(jié)能等方面已走在了前列。1.3章節(jié)安排本文共分為5章,具體安排如下:第1章為緒論,闡述了設(shè)計智能風(fēng)機控制系統(tǒng)的背景意義,并對國內(nèi)外的相關(guān)研究現(xiàn)狀進(jìn)行了概述。第2章介紹了本系統(tǒng)的功能要求和總體設(shè)計方案,并對硬件部件的選型進(jìn)行了論證和對比。第3章重點闡述了系統(tǒng)各硬件模塊的具體設(shè)計,包括單片機、溫度傳感器、數(shù)碼管顯示、按鍵輸入和風(fēng)機執(zhí)行模塊等。第4章是系統(tǒng)軟件的設(shè)計部分,首先簡單介紹了使用的軟件工具Keil,然后以程序流程圖的形式詳細(xì)說明了主程序和子程序的設(shè)計思路。第5章通過Proteus等仿真軟件,展現(xiàn)了系統(tǒng)真實運行時的界面顯示和功能操作。
2系統(tǒng)硬件設(shè)計2.1系統(tǒng)功能要求本智能風(fēng)機控制系統(tǒng)的主要功能需求如下:自動根據(jù)溫度調(diào)節(jié)風(fēng)機轉(zhuǎn)速。當(dāng)環(huán)境溫度低于預(yù)設(shè)下限時,系統(tǒng)自動關(guān)閉風(fēng)機;當(dāng)溫度介于上下限之間時,風(fēng)機以一檔低速運轉(zhuǎn);當(dāng)溫度超過預(yù)設(shè)上限時,風(fēng)機自動切換至二檔高速運轉(zhuǎn)。手動控制風(fēng)機開關(guān)和調(diào)速。除了自動調(diào)節(jié)外,系統(tǒng)還需提供手動控制接口,允許用戶根據(jù)個人習(xí)慣或特殊需求,隨時開關(guān)風(fēng)機或切換風(fēng)機轉(zhuǎn)速檔位。實時顯示當(dāng)前溫度值。系統(tǒng)應(yīng)當(dāng)通過數(shù)碼管等顯示裝置,將所檢測的室內(nèi)溫度值實時顯示出來,方便用戶查看。指示風(fēng)機運行狀態(tài)。通過指示燈等方式,直觀顯示出風(fēng)機當(dāng)前處于停止、一檔或二檔運轉(zhuǎn)的具體狀態(tài)??稍O(shè)置溫度上下限閾值。系統(tǒng)應(yīng)當(dāng)允許用戶通過按鍵或其他輸入方式,設(shè)定溫度的上下限閾值,作為自動調(diào)節(jié)風(fēng)機的判斷依據(jù)。2.2系統(tǒng)設(shè)計方案為實現(xiàn)上述功能需求,本系統(tǒng)主要由單片機控制器、溫度傳感器、按鍵輸入模塊、七段數(shù)碼管顯示模塊、指示燈模塊和電機風(fēng)機執(zhí)行模塊等硬件部分組成。其中,STC89C51單片機是整個系統(tǒng)的控制核心,負(fù)責(zé)獲取溫度數(shù)據(jù)、掃描按鍵狀態(tài),并根據(jù)編寫的控制邏輯程序控制風(fēng)機的運行狀態(tài),同時驅(qū)動數(shù)碼管模塊顯示溫度值,驅(qū)動指示燈模塊顯示風(fēng)機狀態(tài)。溫度傳感器DS18B20用于檢測當(dāng)前環(huán)境溫度,并將數(shù)據(jù)傳輸至單片機。按鍵輸入模塊允許用戶設(shè)置溫度上下限閾值及手動開關(guān)調(diào)速。七段數(shù)碼管模塊驅(qū)動四位數(shù)碼管,實時顯示當(dāng)前溫度讀數(shù)。指示燈模塊包含兩個發(fā)光二極管,分別指示風(fēng)機一檔和二檔狀態(tài)。最后,電機風(fēng)機執(zhí)行模塊根據(jù)單片機的控制信號,實現(xiàn)風(fēng)機的開停和轉(zhuǎn)速切換。下面展示的便是整個系統(tǒng)的詳細(xì)框架示意圖:圖2-1系統(tǒng)總設(shè)計圖功能設(shè)計的目標(biāo)設(shè)定如下:(1)手動操控方式:通過可操作的鍵盤或開關(guān),對智能風(fēng)機的旋轉(zhuǎn)速度進(jìn)行精準(zhǔn)調(diào)控;(2)自動化運轉(zhuǎn)機制:依據(jù)環(huán)境的溫度變化,智能調(diào)控智能風(fēng)機的運行速度以達(dá)到最佳能效。2.3硬件模塊選型2.3.1單片機模塊的選型方案一:STC89C51單片機STC89C51是一款基于經(jīng)典8051內(nèi)核的8位單片機,具有4KB程序存儲空間。它工作穩(wěn)定可靠、編程方便、資源豐富且價格低廉,非常適合應(yīng)用于中小型的嵌入式控制系統(tǒng)。方案二:STM32F103單片機STM32F103屬于32位ARMCortex-M3內(nèi)核的單片機系列,相比8051內(nèi)核具有更強大的運算能力和更豐富的外設(shè)資源。但其價格昂貴,開發(fā)資源相對較少,存在一定學(xué)習(xí)門檻。根據(jù)本系統(tǒng)對單片機計算能力和存儲空間的實際需求,以及考慮成本等因素,最終選擇了性價比較高、資源豐富的STC89C51單片機。2.3.2溫度檢測模塊的選型方案一:DS18B20數(shù)字溫度傳感器DS18B20是一款精度高、防干擾能力強的數(shù)字溫度傳感器,采用單總線通信方式接口簡單,與單片機的連接相對容易。方案二:AD590模擬溫度傳感器AD590是模擬溫度傳感器,輸出電壓模擬量信號。雖然精度較高,但需要外接A/D轉(zhuǎn)換芯片才能與單片機通信,電路設(shè)計相對復(fù)雜。本系統(tǒng)對溫度檢測要求精度較高、抗干擾能力強,但功耗等其他指標(biāo)要求不高。因此,綜合各方面因素,最終選擇了DS18B20數(shù)字溫度傳感器。3系統(tǒng)的硬件設(shè)計3.1STC89C51單片機STC89C51單片機作為系統(tǒng)的控制核心,需要與各個外圍硬件模塊連接緊密協(xié)作。它內(nèi)部的8051內(nèi)核通過執(zhí)行程序指令,控制I/O端口的電平狀態(tài),進(jìn)而控制外接模塊的工作。單片機內(nèi)部由存儲器、中央處理器、I/O接口電路等部分組成。存儲器主要包括程序存儲器和數(shù)據(jù)存儲器。程序存儲器用于存放程序代碼,STC89C51的程序存儲空間為4KB,足以滿足本系統(tǒng)需求。數(shù)據(jù)存儲器則分為內(nèi)部RAM和特殊功能寄存器兩部分,內(nèi)部RAM為256Bytes,用于存放程序運行過程中的臨時數(shù)據(jù);而特殊功能寄存器則用于控制I/O端口、中斷、定時器等功能模塊。中央處理器是執(zhí)行程序代碼的運算核心,實現(xiàn)了從存儲器取指、譯碼、執(zhí)行指令的全過程。它主要由算術(shù)邏輯運算單元ALU和控制單元等部分組成??刂茊卧?fù)責(zé)指令譯碼和控制信號的發(fā)出,ALU則執(zhí)行算術(shù)邏輯運算。8051內(nèi)核采用哈佛架構(gòu),程序存儲器和數(shù)據(jù)存儲器分開設(shè)置,提高了并行工作能力。I/O接口電路則負(fù)責(zé)單片機與外部設(shè)備的連接通信。STC89C51采用的是標(biāo)準(zhǔn)8051結(jié)構(gòu),共有4個并行I/O口(P0P3),每個I/O口包含8個I/O線,可編程為輸入或輸出方向。這些I/O口為單片機與各外圍硬件模塊的連接提供了通路。在本系統(tǒng)中,P3.7用于溫度傳感器的數(shù)據(jù)通信,P3.2P3.5和P2.2~P2.7共同控制數(shù)碼管顯示,P1用于檢測按鍵輸入,P0.0和P0.1控制指示燈的點亮狀態(tài)。圖3-1STC89C51單片機電路圖3.2七段數(shù)碼管模塊七段數(shù)碼管是一種常見的數(shù)字顯示裝置,廣泛應(yīng)用于電子產(chǎn)品、儀器儀表等領(lǐng)域。數(shù)碼管模塊是由多個獨立的七段數(shù)碼管組成的顯示單元。本系統(tǒng)采用四位共陰極數(shù)碼管模塊,意味著其中四個數(shù)碼管的陰極引腳是共享的,每個數(shù)碼管都需要引出8個引腳,包括7個段選引腳和1個位選引腳。七段數(shù)碼管的工作原理是:通過對8個引腳施加不同的電位組合,控制其中的7個發(fā)光二極管段的點亮狀態(tài),就可以顯示出不同的數(shù)字或字符。比如要顯示數(shù)字"8",就需要點亮數(shù)碼管的上中下三個水平段和四個斜邊發(fā)光二極管。要顯示字母"A",則需要點亮上中左右斜三個發(fā)光段。因此通過精心設(shè)計電位組合,理論上一個七段數(shù)碼管可顯示0-9的數(shù)字以及部分字母。在本系統(tǒng)中,單片機通過動態(tài)掃描技術(shù)控制數(shù)碼管顯示。具體做法是:首先使用P3.2P3.5四個I/O口控制4位數(shù)碼管的位選,確定要點亮哪一位數(shù)碼管;然后使用P2.2P2.7六個I/O口控制七個發(fā)光二極管段的點亮組合,確定該位要顯示什么數(shù)字;最后通過高頻循環(huán)掃描,使人眼產(chǎn)生視覺持續(xù)的錯覺,從而看到連續(xù)的數(shù)字顯示。圖3-2七段數(shù)碼管模塊電路圖3.3DS18B20溫度檢測模塊DS18B20是一款數(shù)字溫度傳感器,工作原理是利用半導(dǎo)體的阻值隨溫度變化的特性。當(dāng)溫度變化時,傳感器內(nèi)部的熱敏電阻會發(fā)生阻值變化,而檢測電路對這一阻值變化十分敏感,可以精確測量出當(dāng)前溫度值。DS18B20內(nèi)部由溫度傳感器本體、A/D轉(zhuǎn)換器、存儲器和單總線控制器等部分組成。溫度傳感器本體感受環(huán)境溫度變化并轉(zhuǎn)換為模擬量,A/D轉(zhuǎn)換器則將這一模擬量轉(zhuǎn)換為數(shù)字信號;數(shù)字信號經(jīng)存儲器儲存后,再被單總線控制器轉(zhuǎn)碼為單總線格式,最終通過單總線接口輸出。該傳感器的一大優(yōu)點是采用單總線通信方式,只需一根數(shù)據(jù)線即可與單片機交換數(shù)據(jù)。單總線通信的基本時序是:首先由主機(單片機)發(fā)出復(fù)位脈沖,然后DS18B20返回存在脈沖,主機再發(fā)出功能指令碼,指令DS18B20執(zhí)行相應(yīng)功能(如溫度轉(zhuǎn)換),最后由DS18B20返回結(jié)果數(shù)據(jù)。通信格式遵循嚴(yán)格的定義,以免沖突。在本系統(tǒng)中,DS18B20的單總線接口與單片機的P3.7引腳相連。單片機可以向傳感器發(fā)出溫度轉(zhuǎn)換指令,并讀取轉(zhuǎn)換后的溫度數(shù)值。得到數(shù)值后再通過編程處理,最終將處理好的溫度數(shù)據(jù)顯示到數(shù)碼管上。圖3-3DS18B20溫度檢測模塊電路圖3.4指示燈模塊指示燈模塊是對風(fēng)機運行狀態(tài)的直觀反映,用于告知用戶風(fēng)機當(dāng)前所處的轉(zhuǎn)速檔位。該模塊由兩個發(fā)光二極管組成,分別指示一檔和二檔狀態(tài)。發(fā)光二極管是一種固態(tài)發(fā)光器件,利用正向?qū)〞r的發(fā)光原理工作。它內(nèi)部由n型和p型半導(dǎo)體組成p-n結(jié),當(dāng)注入少量電流時,電子和空穴復(fù)合會釋放出能量,能量以光的形式射出而發(fā)光。不同的半導(dǎo)體材料,所發(fā)出的光的顏色也不同,紅色、綠色、黃色等都可以實現(xiàn)。在本系統(tǒng)中,指示燈模塊連接到單片機的P1.0和P1.2兩個I/O口。當(dāng)風(fēng)機運行在一檔低速時,單片機控制P1.2輸出高電平(+5V),使第一個LED點亮,提示用戶風(fēng)機當(dāng)前運行在低速檔;當(dāng)風(fēng)機運行在二檔高速時,P1.0輸出高電平,驅(qū)使第二個LED點亮,提示高速運轉(zhuǎn)中。通過兩個LED的交替點亮,用戶可清楚地了解到風(fēng)機的實時轉(zhuǎn)速狀態(tài)。圖3-4指示燈模塊電路圖3.5電機風(fēng)機模塊電機風(fēng)機是本系統(tǒng)的最終執(zhí)行終端,根據(jù)單片機發(fā)出的高低電平控制信號,實現(xiàn)開停和調(diào)速等動作。電機是通過電磁感應(yīng)原理實現(xiàn)電能與機械能的互相轉(zhuǎn)換。它主要由定子和轉(zhuǎn)子兩部分組成。定子為靜止不動的部分,內(nèi)包繞有絕緣線圈;轉(zhuǎn)子則為可旋轉(zhuǎn)的部分,通常由永磁體或另一組繞線組成。當(dāng)通電后,定子線圈將產(chǎn)生一個旋轉(zhuǎn)磁場,這一旋轉(zhuǎn)磁場將引起轉(zhuǎn)子磁場產(chǎn)生力矩,從而使轉(zhuǎn)子在定子磁場的作用下發(fā)生旋轉(zhuǎn)運動。轉(zhuǎn)子的旋轉(zhuǎn)運動經(jīng)過機械傳動裝置就可以帶動風(fēng)扇葉片旋轉(zhuǎn),實現(xiàn)電能到機械能的轉(zhuǎn)換并產(chǎn)生氣流。風(fēng)機電機的控制方式可分為有刷直流電機和無刷直流電機兩種。有刷電機通過在轉(zhuǎn)子上裝配整流環(huán)和碳刷,從而實現(xiàn)電流的整流和反轉(zhuǎn),是一種相對簡單廉價的做法。無刷電機則利用電子開關(guān)和位置傳感器,通過控制電路實現(xiàn)無接觸電流反轉(zhuǎn),結(jié)構(gòu)更加緊湊,噪音更小,能耗更低。在本系統(tǒng)中,單片機通過一根電線控制風(fēng)機電機的啟動和停止。具體原理是:當(dāng)單片機輸出高電平電壓時,電機兩端就會通電導(dǎo)通,電機開始旋轉(zhuǎn)帶動風(fēng)扇葉片;當(dāng)單片機輸出低電平時,電路斷開,電機停止轉(zhuǎn)動。同時,根據(jù)不同的高低電平組合,還可以實現(xiàn)對電機轉(zhuǎn)速的控制調(diào)節(jié)。圖3-5電機風(fēng)機模塊電路圖3.6按鍵模塊按鍵是本系統(tǒng)重要的人機交互接口,允許用戶通過按鍵輸入來設(shè)定溫度上下限閾值,或者手動控制風(fēng)機的開關(guān)和調(diào)速。按鍵模塊由3個獨立按鍵組成,分別對應(yīng)設(shè)置上限溫度、設(shè)置下限溫度、手動開關(guān)風(fēng)機和手動調(diào)節(jié)風(fēng)速四個功能。每個按鍵的一端與單片機的P3口相連,另一端則與地線相連。當(dāng)按鍵沒有被按下時,兩端為斷開狀態(tài);當(dāng)按鍵被按下時,兩端就會短路接通,產(chǎn)生高電平信號輸入到P3口。單片機檢測到高電平,即可判斷出用戶的按鍵輸入指令。為了防止按鍵抖動導(dǎo)致多次響應(yīng),軟件中需要設(shè)計消抖動子程序。消抖動的基本思路是延時采樣,即當(dāng)檢測到高電平信號后,先等待一段時間后再次檢測;如果此時仍為高電平,則判定為有效按鍵按下,否則就是抖動無效。除了消抖動外,軟件還需設(shè)計狀態(tài)機判斷按鍵按下的先后次序,進(jìn)而執(zhí)行不同的功能操作。比如先后檢測到按鍵2和按鍵3被按下,就代表用戶想要手動控制風(fēng)機開關(guān);而按鍵1和按鍵2分別對應(yīng)設(shè)置溫度上下限。通過狀態(tài)機的設(shè)計,可以準(zhǔn)確地解析和響應(yīng)用戶的各種按鍵輸入指令。圖3-6按鍵模塊電路圖
4系統(tǒng)的軟件設(shè)計4.1Keil4軟件介紹Keil4是一款由德國Keil公司開發(fā)的集成開發(fā)環(huán)境(IDE)軟件,主要用于編寫和調(diào)試基于51單片機和ARM單片機的嵌入式系統(tǒng)程序。它提供了全面的編輯、編譯、鏈接、仿真調(diào)試等功能,支持多種開發(fā)語言如C、C++、匯編語言等,使用十分方便。Keil4軟件的主要界面包括:工程管理窗口、代碼編輯窗口、構(gòu)建輸出窗口、調(diào)試窗口等。其中,工程管理窗口用于管理軟件工程項目,包括創(chuàng)建新項目、添加文件、配置編譯選項等。代碼編輯窗口則提供了代碼編寫環(huán)境,支持代碼高亮、自動補全等多種編輯功能。構(gòu)建輸出窗口顯示軟件編譯過程中的提示信息和編譯錯誤信息。調(diào)試窗口則用于程序的仿真調(diào)試,可以設(shè)置斷點、查看寄存器和內(nèi)存數(shù)據(jù)等。除了基本的編碼編譯功能,Keil4還集成了先進(jìn)的μVision調(diào)試器,支持在目標(biāo)板或仿真器上進(jìn)行源代碼級的仿真調(diào)試。通過JTAG或模擬接口,調(diào)試器可在單片機實際運行過程中跟蹤程序執(zhí)行狀態(tài),實時監(jiān)視變量和內(nèi)存單元的變化情況,大大提高了軟硬件聯(lián)調(diào)的效率。本系統(tǒng)的軟件開發(fā)就是在Keil4的集成環(huán)境下完成的,利用其強大的編譯和調(diào)試功能,編寫和優(yōu)化了系統(tǒng)的主控制程序和各功能子程序,最終生成了控制單片機的目標(biāo)代碼。4.2軟件流程圖介紹4.2.1主程序流程圖系統(tǒng)軟件的主程序控制整個系統(tǒng)的工作流程,首先初始化所有用到的硬件資源,包括單片機各I/O口、定時器、中斷等。然后進(jìn)入主循環(huán)體,先讀取DS18B20傳感器采集到的溫度數(shù)據(jù),接著根據(jù)溫度值和預(yù)設(shè)的溫度閾值范圍,判斷風(fēng)機是否需要開啟或調(diào)節(jié)轉(zhuǎn)速。當(dāng)溫度低于下限閾值時,系統(tǒng)會關(guān)閉風(fēng)機,進(jìn)入待機狀態(tài)。下限閾值可設(shè)置為15°C。當(dāng)溫度介于下限閾值和上限閾值之間時,風(fēng)機會啟動一檔低速運轉(zhuǎn)。下限為15°C,上限為25°C,則溫度在這個范圍內(nèi)時,風(fēng)機會以一檔低速運轉(zhuǎn)。當(dāng)溫度高于上限閾值25°C時,風(fēng)機會切換至二檔高速運轉(zhuǎn)。無論哪種情況,程序都會驅(qū)動數(shù)碼管顯示當(dāng)前溫度值,并通過指示燈指示風(fēng)機的實時轉(zhuǎn)速狀態(tài)。在自動溫控的同時,主程序還會不斷檢測按鍵狀態(tài)。一旦發(fā)現(xiàn)有按鍵被按下,就進(jìn)入按鍵掃描程序,判斷具體是哪個按鍵被按下,并執(zhí)行相應(yīng)的操作。比如按下設(shè)置溫度上限鍵,就進(jìn)入溫度設(shè)置子程序修改上限值;按下開關(guān)風(fēng)機鍵,就直接控制風(fēng)機開停狀態(tài)。按鍵處理需要插入到溫度檢測和風(fēng)機控制的環(huán)節(jié)之中,以保證按鍵響應(yīng)的實時性和系統(tǒng)的高效運行。因此,主程序的執(zhí)行順序是:溫度檢測->風(fēng)機控制->按鍵檢測->按鍵處理->顯示更新,循環(huán)執(zhí)行這一流程。圖4-1主程序流程圖4.2.2按鍵消抖子程序流程圖由于按鍵手工按下會存在抖動的問題,因此需要設(shè)計消抖動子程序濾除抖動,避免多次響應(yīng)。首先檢測按鍵輸入口的電平狀態(tài),如果為高電平,則說明有按鍵被按下,需要進(jìn)行消抖動處理。進(jìn)入10ms的延時,延時后再次檢測按鍵狀態(tài)。如果還是高電平,說明這是有效按鍵,則響應(yīng)執(zhí)行相應(yīng)操作;如果是低電平,說明之前的高電平是抖動無效,則直接退出,視為無按鍵按下。這種延時采樣的方法,可以有效過濾掉按鍵抖動前后的高低電平抖動,只響應(yīng)高電平的穩(wěn)定狀態(tài)。10ms的延時時間是一個合理的選擇,足夠消除絕大部分的抖動情況。在實際代碼中,延時函數(shù)可以通過軟件延時或硬件延時的方式實現(xiàn)。軟件延時使用空循環(huán)的方式,循環(huán)若干次相當(dāng)于延時若干時間;硬件延時則借助單片機的定時器/計數(shù)器硬件資源實現(xiàn)。兩種方式各有利弊,需要根據(jù)實際情況權(quán)衡選擇。圖4-2按鍵程序流程圖4.2.3溫度檢測子程序流程圖溫度檢測是系統(tǒng)的核心功能之一,直接關(guān)系到風(fēng)機控制的準(zhǔn)確性。溫度檢測子程序首先對DS18B20溫度傳感器發(fā)出轉(zhuǎn)換溫度的指令,命令其開始溫度測量。DS18B20內(nèi)部A/D轉(zhuǎn)換后將數(shù)字溫度值緩存在內(nèi)部存儲器中。之后單片機發(fā)出讀溫度值的指令,DS18B20就將溫度數(shù)據(jù)通過單總線接口讀出。讀取到的原始溫度數(shù)據(jù)需要進(jìn)行軟件處理,去掉無關(guān)的位,再進(jìn)行換算,最終得到實際的溫度值。處理后的溫度值既可以存儲在變量中,也可以直接輸出到數(shù)碼管顯示。該子程序的精度高低直接取決于DS18B20傳感器的精度。DS18B20可提供9~12位分辨率可選,分辨率越高,測量精度就越高,但轉(zhuǎn)換時間也就越長。一般選擇12位分辨率,精度可達(dá)±0.0625°C。此外,軟件還需要設(shè)置一個溫度檢測的時間間隔,控制溫度檢測的頻率。檢測間隔過長影響響應(yīng)速度,過短則浪費CPU資源。一般設(shè)置為2~3秒較為合理。該時間間隔也可以作為定時中斷的周期,使用硬件定時器實現(xiàn)。圖4-3溫度檢測程序流程圖4.3程序編寫在51單片機系統(tǒng)中,程序的編寫主要依賴于C語言或匯編語言。由于C語言具有代碼清晰、可讀性強、易于調(diào)試和維護(hù)等特點,因此在51單片機系統(tǒng)的程序編寫中,C語言成為了主要的選擇。在編寫程序時,需要遵循一定的編程規(guī)范,如模塊化編程、注釋清晰、代碼簡潔等。同時,還需要熟悉51單片機的硬件特性和指令系統(tǒng),以便能夠正確地操作硬件,實現(xiàn)預(yù)期的功能。在本論文所描述的溫度調(diào)控智能風(fēng)機系統(tǒng)中,程序編寫的主要任務(wù)包括:1.初始化系統(tǒng)硬件:在程序開始運行時,首先需要對系統(tǒng)硬件進(jìn)行初始化,包括I/O端口、定時器、中斷等。這是為了確保系統(tǒng)硬件在正常工作狀態(tài)下,為后續(xù)的數(shù)據(jù)采集、處理和控制操作提供穩(wěn)定的基礎(chǔ)。2.數(shù)據(jù)采集:通過51單片機的I/O端口,讀取DS18B20溫度轉(zhuǎn)換器的溫度數(shù)據(jù),并將其轉(zhuǎn)換為適合后續(xù)處理的格式。同時,還可以通過獨立鍵盤連接電路,獲取用戶輸入的控制指令。3.數(shù)據(jù)處理:根據(jù)采集到的溫度數(shù)據(jù)和用戶輸入的控制指令,進(jìn)行邏輯運算和判斷,確定風(fēng)機的運行狀態(tài)和調(diào)節(jié)策略。4.控制輸出:根據(jù)處理后的數(shù)據(jù),控制風(fēng)機的運行狀態(tài),包括啟動、停止、調(diào)速等。同時,還可以通過顯示屏等輸出設(shè)備,將當(dāng)前溫度、風(fēng)速等信息展示給用戶。在程序編寫過程中,還需要考慮到程序的健壯性、可移植性和可擴展性等方面的問題。例如,可以通過增加錯誤處理機制,提高程序的健壯性;通過采用模塊化編程,提高程序的可移植性和可擴展性??偟膩碚f,程序編寫是51單片機系統(tǒng)設(shè)計和實現(xiàn)過程中的重要環(huán)節(jié),需要充分理解硬件特性和指令系統(tǒng),掌握編程規(guī)范和技巧,才能編寫出高效、穩(wěn)定、易維護(hù)的程序。圖4-4程序編寫軟件5系統(tǒng)調(diào)試5.1軟件調(diào)試5.1.1按鍵顯示部分的調(diào)試初始階段,根據(jù)既定的設(shè)計理念,我們精心地編寫了相關(guān)的系統(tǒng)軟件程序。其中,P0端口負(fù)責(zé)與數(shù)碼管緊密連接,P1端口則直接連通到了鍵盤接口,而P2端口則專門用于控制LED位碼,以便實現(xiàn)對鍵盤應(yīng)用功能以及數(shù)碼管顯示狀態(tài)的精細(xì)調(diào)控。盡管在這種情況下,糾結(jié)的代碼仍然沒有出現(xiàn)明顯的編譯語法錯誤。但是,在仿真調(diào)試環(huán)節(jié)中,我們卻驚訝地發(fā)現(xiàn)數(shù)碼管的顯示結(jié)果出現(xiàn)了混亂現(xiàn)象,而原本預(yù)設(shè)的設(shè)定溫度居然并不準(zhǔn)確。更為嚴(yán)重的是,每當(dāng)嘗試借助按鍵來調(diào)整設(shè)定溫度時,顯示器上的溫度數(shù)值竟然沒有絲毫的變化趨勢。為了徹底解決這類問題,我們需要對各個組件逐一進(jìn)行詳細(xì)的檢查并分析產(chǎn)生失調(diào)現(xiàn)象的根本原因。經(jīng)過對鍵盤程序的深入剖析和分析,我們發(fā)現(xiàn)在其中隱藏著潛在的問題。原來,編碼體系存在缺陷,缺少了一套能夠有效抑制鍵盤震動現(xiàn)象的裝置。當(dāng)用戶按下并松開某個特定鍵位時,由于物理慣性因素的作用,按鍵必然會出現(xiàn)一定程度的晃動,這就給51單片機產(chǎn)生了錯誤的信號反饋,最終導(dǎo)致設(shè)定溫度調(diào)節(jié)出現(xiàn)障礙,甚至?xí)l(fā)設(shè)備無法正常運轉(zhuǎn)的嚴(yán)重后果。為了避免類似問題的再次發(fā)生或者降低此類問題可能帶來的危害,我們必須設(shè)法在鍵盤掃描程序中添加消除抖動的功能,從而延長按鍵釋放后的判斷時間,以期精準(zhǔn)區(qū)分按鍵的完成按下還是完全釋放的動作。至于數(shù)碼管無法正常顯示的問題,其實關(guān)鍵在于我們現(xiàn)在所使用的系統(tǒng)程序強制要求所有的數(shù)碼管段碼都要經(jīng)由P0端口進(jìn)行輸送,以滿足動態(tài)掃描的畫面顯示需求。然而遺憾的是,現(xiàn)有程序的寄存器空間無法滿足這樣的需求,所以當(dāng)P0端口嘗試傳輸段碼時,就難免出現(xiàn)亂碼的現(xiàn)象,使得顯示屏無法識別并解讀出正確的段代碼。因此,我們迫切需要為這個系統(tǒng)增添一套連接或者配置段代碼空間的流程。通過在鍵盤掃描程序中添加專門的抗振程序,顯著增長按鍵釋放后的延遲判斷時間;同時,在屏幕顯示程序中引入用于妥善保存段代碼的寄存器之后,數(shù)碼管的顯示狀況逐漸恢復(fù)正常,不再出現(xiàn)亂碼,而且按鍵操作也能夠順利執(zhí)行,不會另外產(chǎn)生延誤現(xiàn)象。在此次研究過程中,我們成功在模擬調(diào)試環(huán)境下得到了滿意的成果。5.1.2傳感器DS18B20溫度采集部分調(diào)試鑒于數(shù)字溫度積分傳感器DS18B20具備極高的集成程度,為軟件技術(shù)的設(shè)計與調(diào)試帶來極大便利。它采用微型化設(shè)計,具備極低功耗及較高精確度,為檢測儀器的精度及穩(wěn)定性提供堅實支撐以及無限可能性。軟件方面,我們首選采用P3.7端口作為數(shù)字溫度輸入渠道。然而值得注意的是,在輸入數(shù)字信號之前必須先行對其進(jìn)行預(yù)處理,因此我們在這里設(shè)立了溫度轉(zhuǎn)換程序。經(jīng)過嚴(yán)謹(jǐn)?shù)木幊毯途?xì)的軟件設(shè)計,該程序能夠?qū)崿F(xiàn)對外界環(huán)境連續(xù)測溫。然而我們也發(fā)現(xiàn)了一些不足之處,那就是受到硬件LED數(shù)量的限制,此處僅能顯示部分默認(rèn)溫度的整數(shù)部分。當(dāng)前市場上所銷售的溫度轉(zhuǎn)換應(yīng)用程序都會將檢測到的外界環(huán)境溫度以十倍的方式呈現(xiàn)在顯示屏上,以此解決溫度傳感器只能顯示測得的整數(shù)部分而非小數(shù)點后數(shù)字的難題。然后再將其轉(zhuǎn)化成以三位數(shù)表示的數(shù)值,例如將28.5調(diào)整為285,使得編碼過程更為簡便快捷,進(jìn)而提升編程效率。5.2硬件調(diào)試5.2.1按鍵顯示部分的調(diào)試本系統(tǒng)按鍵功能具體介紹如下:(1)若按下P1.3鍵,此時顯示屏示數(shù)中的最后兩位數(shù)字將會以每攝氏度為單位進(jìn)行自動調(diào)整,亦即實現(xiàn)其設(shè)定溫度的增加;(2)如按下位于中間位置的P1.4鍵,則顯示屏示數(shù)中的最后兩位數(shù)字將出現(xiàn)降溫現(xiàn)象,每按動此鍵一次,相應(yīng)的溫度便會下降1°C。然而,在實際操作過程中發(fā)現(xiàn),有時系統(tǒng)設(shè)定溫度并非嚴(yán)格按照上述設(shè)定方式增加或減少,反而常呈波動不穩(wěn)定狀態(tài)。經(jīng)過深入調(diào)研與剖析,我們認(rèn)為引發(fā)這一現(xiàn)象的主要因素可能源于系統(tǒng)內(nèi)部抗震程序設(shè)定存在某些瑕疵,導(dǎo)致了按鍵釋放時的延遲判斷持續(xù)時間過久。因而,為了改善并提高系統(tǒng)運行效能,有必要對現(xiàn)有奇偶設(shè)定進(jìn)行適度調(diào)整,主要措施是適當(dāng)延長按鍵釋放時的相應(yīng)延遲時間,但也需注意控制時間不能過長,否則可能導(dǎo)致密鑰失效等嚴(yán)重后果。5.2.2溫度采集部分調(diào)試首先必須要將DS18B20新型傳感器芯片成功與微處理器系統(tǒng)的P3.1端口進(jìn)行可靠對接。為確保芯片能夠順利接入并保持穩(wěn)定工作狀態(tài),請您細(xì)心留意位于系統(tǒng)版面右下方三大專業(yè)接口,即VCC(電源)、P3.7以及GND(接地)。在插接時務(wù)必保持謹(jǐn)慎小心,嘗試將芯片緊密貼合于這些特定的插針之上。此步驟至關(guān)重要,它將有效簡化后續(xù)許多繁瑣復(fù)雜的程序操作流程。當(dāng)我們在對系統(tǒng)進(jìn)行全面調(diào)試檢驗過程中,為了確定DS18B20新式產(chǎn)品是否能夠在整體系統(tǒng)板上正常運行工作,您可嘗試輕輕合攏雙手或者牢牢抓住芯片,通過肉眼觀察以及實驗室設(shè)備檢測來獲取準(zhǔn)確的反饋信息。如果當(dāng)結(jié)果呈現(xiàn)出現(xiàn),LED顯示屏上前兩行溫度數(shù)據(jù)瞬間驟升,這意味著我們所選取的DS18B20新模型已經(jīng)成功在該系統(tǒng)板上產(chǎn)生了良好的工作效果;然而,若是沒有出現(xiàn)這種理想狀況,那么便可能無法讓DS18B20發(fā)揮出其最佳性能,導(dǎo)致系統(tǒng)崩潰。因為DS18B20具有三排數(shù)量眾多的傳感器,所以在我們進(jìn)行現(xiàn)場調(diào)試工作時,必須要格外注意每一排中傳感器所在的精準(zhǔn)位置,以防止由于錯誤安裝而造成的芯片功能失效或核心部件損壞現(xiàn)象的發(fā)生。5.3仿真分析5.3.1Proteus簡介Proteus軟件乃是英國知名實驗室半導(dǎo)體科技有限公司獨立研制并推出的一款卓越的電子設(shè)計自動化(EDA)輔助工具。這款深具創(chuàng)新意識的產(chǎn)品已經(jīng)成功走過十多個年頭的歲月,其廣泛的用戶群體幾乎遍及全球五大洲,并且深得廣大用戶群體的喜愛與推崇。在眾多的EDA工具軟件之中,Proteus無疑展現(xiàn)出難以匹敵的競爭優(yōu)勢。除了擁有原型設(shè)計、藝術(shù)布線以及電路模擬等基礎(chǔ)功能以外,Proteus軟件獨領(lǐng)風(fēng)騷之處在于其出色的互動式電路模擬能力,這使得用戶能夠?qū)崟r監(jiān)控電路運行狀況,從而進(jìn)一步驗證程序設(shè)定是否正確無誤。此外,此版本軟件更具備與多種系統(tǒng)配置工具無縫對接的支持能力,包括源代碼、原理圖鏈接以及元件功能在內(nèi)的諸多內(nèi)容均能輕松適應(yīng)不同的系統(tǒng)配置需求。而且,此款軟件甚至還能夠驅(qū)動諸如示波器、邏輯分析儀等各類儀器儀表進(jìn)行圖像展示和數(shù)值輸出,顯示效果極為出眾。Proteus軟件的核心架構(gòu)主要包括智能化原理圖設(shè)計、深度完備的電路仿真功能、獨特的51單片機協(xié)同仿真功能以及極富實效性的PCB設(shè)計平臺等四大部分相互協(xié)作構(gòu)成。至于Proteus軟件的優(yōu)勢所在,主要體現(xiàn)在以下兩大方面:首先,該軟件內(nèi)置的元件庫包含了豐富多樣的元器件資源,以支持各類已安裝的總線和智能互聯(lián)功能的正常運轉(zhuǎn);其次,該軟件亦具備對CPU(例如:ARM、8051/52、AVR)及其常用外部設(shè)備模型的實時仿真能力支持。正是由于上述兩大特性,Proteus軟件對于51單片機的開發(fā)和實際應(yīng)用提供了極大的便利與幫助。5.3.2仿真系統(tǒng)的展示為了驗證系統(tǒng)設(shè)計的可行性和正確性,我們使用Proteus等仿真軟件對系統(tǒng)進(jìn)行了仿真測試,各模塊能夠協(xié)同工作,實現(xiàn)了預(yù)期的各項功能,系統(tǒng)運行情況如下:圖5-1待機狀態(tài)初始狀態(tài)下,系統(tǒng)處于待機模式,風(fēng)機停止運轉(zhuǎn),數(shù)碼管和兩個指示燈均熄滅。圖5-2溫度上限設(shè)置圖5-3溫度下限設(shè)置通過按鍵模塊,可以設(shè)置溫度的上下限閾值。比如按下按鍵1和2,將上限設(shè)為35℃,下限設(shè)為8℃。此時數(shù)碼管會先后顯示"H35"、"L8"提示設(shè)置成功。圖5-4一檔轉(zhuǎn)動當(dāng)溫度在9~35℃之間時,比如當(dāng)前溫度為16℃,系統(tǒng)自動啟動風(fēng)機一檔低速運轉(zhuǎn),數(shù)碼管顯示"16",低檔指示燈點亮。圖5-5二檔轉(zhuǎn)動當(dāng)溫度超過35℃時,比如數(shù)碼管顯示36℃,系統(tǒng)將風(fēng)機轉(zhuǎn)速切換至二檔高速模式,高檔指示燈點亮。當(dāng)溫度降至35℃以下時,風(fēng)機將恢復(fù)一檔低速運行。通過上述仿真結(jié)果可見,本智能風(fēng)機控制系統(tǒng)完全實現(xiàn)了自動根據(jù)溫度調(diào)節(jié)風(fēng)機轉(zhuǎn)速的功能,同時也具備手動控制和顯示監(jiān)視等人性化輔助功能,可以很好地滿足用戶需求。該系統(tǒng)設(shè)計方案是可行的。結(jié)論本文設(shè)計了一種基于STC89C51單片機的智能風(fēng)機控制系統(tǒng)。該系統(tǒng)融合了溫度自動檢測、風(fēng)機智能控制、人機交互等多種功能,實現(xiàn)了風(fēng)機根據(jù)室內(nèi)溫度自動調(diào)節(jié)轉(zhuǎn)速的目標(biāo),同時也保留了手動控制的接口,兼顧了自動化和人性化需求。在硬件方面,系統(tǒng)由單片機控制器、溫度傳感器、按鍵輸入、數(shù)碼管顯示、指示燈和電機風(fēng)機等模塊組成。其中STC89C51作為控制核心,DS18B20負(fù)責(zé)精準(zhǔn)溫度檢測,按鍵和數(shù)碼管分別實現(xiàn)人機輸入輸出,指示燈直觀反映風(fēng)機狀態(tài),最終由電機驅(qū)動風(fēng)機按設(shè)定轉(zhuǎn)速運行。在軟件方面,基于Keil集成開發(fā)環(huán)境,設(shè)計了主控制程序、溫度檢測子程序、按鍵掃描和消抖動子程序等,編寫了高效的控制算法。主程序根據(jù)溫度值與預(yù)設(shè)閾值的對比,自動控制風(fēng)機的開停和調(diào)速;按鍵子程序則解析用戶輸入,實現(xiàn)手動控制和溫度閾值設(shè)置。最后,通過Proteus等仿真軟件,對系統(tǒng)進(jìn)行了全面測試,驗證了設(shè)計方案的可行性。仿真結(jié)果顯示,該智能風(fēng)機控制系統(tǒng)完全實現(xiàn)了預(yù)期的自動溫控和人機交互功能,設(shè)計方案獲得了成功。該系統(tǒng)的研究不僅可以應(yīng)用于風(fēng)機控制領(lǐng)域,其設(shè)計思路和方法也可推廣到其他嵌入式控制系統(tǒng)中,為今后的智能家居產(chǎn)品設(shè)計提供了有益借鑒。相信隨著科技的進(jìn)步,這種智能化、人性化的控制理念必將愈發(fā)普及,為人類創(chuàng)造更加舒適便利的生活環(huán)境。參考文獻(xiàn)[1]谷泓杰,朱斌,黃麗麗.智能風(fēng)機設(shè)計[J].價值工程,2023,42(24):117-119.[2]彭文莉.基于單片機的智能控溫智能風(fēng)機系統(tǒng)設(shè)計[J].無線互聯(lián)科技,2023,20(05):31-33+42.[3]沈鈺,孟櫻,王睿晗,等.基于模糊控制的智能風(fēng)機的設(shè)計[J].湘南學(xué)院學(xué)報,2022,43(02):104-111.[4]Anthony,ChaoYan,LiPeijun,andsoon.DesignofintelligentfansystembasedonSU[J].JournalofSuihuaCollege,2020,40(09):158-160.[5]Liu.Designofmulti-functionautomatictemperatureregulatingfansystembasedonSU[J].HenanBuildingMaterials,2020,(05):145-146.[6]Maimati,WangPengyun,HuangHengyi,andsoon.Designofintelligenttemperature-controlledelectricfan[J].InternetofThingsTechnology,2020,10(03):101-104.[7]姜楚華,樓應(yīng)侯,方慶朕,等.智能風(fēng)機控制系統(tǒng)設(shè)計[J].機械工程師,2022,(03):59-62.[8]張楠.基于單片機的多功能智能風(fēng)機控制系統(tǒng)解決方案研究[J].長江信息通信,2021,34(09):182-184.[9]孫景偉,丁學(xué)用.智能紅外遙控智能風(fēng)機的設(shè)計[J].科學(xué)技術(shù)創(chuàng)新,2020,(28):127-129.[10]李盛林.基于單片機的學(xué)生用智能風(fēng)機控制系統(tǒng)的設(shè)計[J].電子技術(shù)與軟件工程,2020,(18):103-106.致謝時光荏苒,大學(xué)的時光轉(zhuǎn)眼就要結(jié)束了,馬上離開安逸舒適的校園生活,步入社會,邁入新的人生旅程。我用一篇畢業(yè)論文為學(xué)業(yè)生涯送上一份答卷。與此同時,我衷心的感謝老師們、同學(xué)們以及家人對我的幫助和支持。落其實者思其樹,學(xué)其成時念吾師。首先要特別感謝我的導(dǎo)師蔡老師和李學(xué)長,從論文的選題到多次修改以及最終成文,一直耐心引導(dǎo)我,以淵博的知識給予我細(xì)心引導(dǎo),一次又一次不辭辛勞陪我字斟句酌,傾盡所能的點播和指導(dǎo)我,讓我不斷發(fā)現(xiàn)不足并努力提升自己,感謝您的包容與關(guān)愛?;厥滓粭l條語音,這些點點滴滴記錄著您的心血,讓我養(yǎng)成了一絲不茍的習(xí)慣,讓我面對未來的考驗,愈發(fā)嚴(yán)謹(jǐn)、穩(wěn)重、堅韌。十月胎恩重,三生報答輕。感謝父母二十余載的養(yǎng)育之恩,從咿呀學(xué)語到蹣跚學(xué)步,從懵懂無知、不諳世事到慢慢懂事、長大成人,都離不開他們的默默付出。是他們教會了我人情世故,正是他們的悉心教育,讓我擁有了樂觀積極的生活態(tài)度,擁有了直面恐懼和未來的勇氣。一路走來,雙親相伴,是我莫大的福氣,倘若遇到困難,他們也是我唯一堅強的后盾。感謝你們的包容與照顧,我無以為報,唯有萬般努力才能成為你們的驕做,希望時間在你們身上過得慢一點,值此學(xué)成之際,謝謝我的父母一直以來的鼓勵和陪伴。行文至此,唯愿各位平安喜樂,萬事順意!附錄源程序:#include<reg52.h> //頭文件#include<intrins.h> //包含頭文件#include"DS18b20.H" //包含DS18B20頭文件#include"eeprom52.h" //包含存儲函數(shù)頭文件#include"Nixietube.h" //包含數(shù)碼管顯示頭文件#defineucharunsignedchar //宏定義#defineuintunsignedint/*顯示函數(shù)數(shù)碼管顯示數(shù)據(jù),其實數(shù)碼管顯示數(shù)據(jù)很好理解,單說一位數(shù)碼管,是由八段發(fā)光二極管組成,其中7段是組成數(shù)字,第八段是小數(shù)點,數(shù)碼管的段選碼就是這樣來的,想讓數(shù)碼管那一段進(jìn)行點亮,哪一段數(shù)碼管不亮,這樣就組成了一個又一個的段碼,而位選是對于多位數(shù)碼管,因為段選IO都是接在一起的,送給其中一位數(shù)碼管段碼的時候,實際另外幾個數(shù)碼管一樣可以顯示這個數(shù)據(jù),所以我們要選擇哪一個,哪一些數(shù)碼管不可以點亮,這就是位選,選擇這么多數(shù)碼管哪一位進(jìn)行點亮。數(shù)碼管顯示一般的流程位選選擇要顯示數(shù)據(jù)的數(shù)碼管送段選碼短延時一下讓其顯示一會送全部熄滅段碼消影用短延時一下位選選擇要顯示數(shù)據(jù)的數(shù)碼管下面一直重復(fù)之前的步驟數(shù)碼管顯示方式多種多樣,總的大方向是不會變的,所以備注的方法和實際有點出處很正常*/ucharcodess[]= //段碼{0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//數(shù)碼管ucharcodess1[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10, 0xc7,0x89,0xbf//0xc7=L0x89=H0xbf=-負(fù)號};//0-9為帶小數(shù)點的ucharms;sbitkey1=P3^4;sbitkey2=P3^5;sbitkey3=P3^3;//按鍵控制P3^4設(shè)置切換3.5上下限加3.6上下限減sbitled_0=P1^0;//上限溫度報警燈sbitled_2=P1^2;//下限溫度報警燈charH,L,T_ms;//用于設(shè)置上下限度上下限度與要比較的數(shù)據(jù)類型最好相同ucharflag,PWM_ON;//PWM_ON是風(fēng)扇開關(guān)標(biāo)志位sbitFan=P1^6;//風(fēng)扇端口定義bitvoled=0;//voled用來判斷風(fēng)扇軟啟動inttemp;//存儲讀出來的溫度,與H,L上下限度數(shù)據(jù)類型相同bitON=1;voiddelay(uintT) //短延時{ while(T--);}//Nixietube是封裝好的數(shù)碼管顯示函數(shù),四個括號里面直接填寫段碼即可voiddisplay() //顯示函數(shù){ if(flag==0&&temp>=0)//溫度為正數(shù)時執(zhí)行 {if(temp>999)Nixietube(ss[temp/1000%10],ss[temp/100%10],ss1[temp/10%10],ss[temp%10]); if(temp>99)Nixietube(0xff,ss[temp/100%10],ss1[temp/10%10],ss[temp%10]); if(temp<99&&temp/100%10<=0)Nixietube(0xff,0xff,ss1[temp/10%10],ss[temp%10]); } if(flag==0&&temp<0)//溫度為負(fù)數(shù)時 {if(temp*-1/100%10<=0)Nixietube(0xff,ss1[12],ss1[temp*-1/10%10],ss[temp*-1%10]); if(temp*-1/100%10>0)Nixietube(ss1[12],ss[temp*-1/100%10],ss1[temp*-1/10%10],ss[temp*-1%10]); }if(flag==1)//flag==0顯示溫度=1顯示上限=2顯示下限 {if(H>99)Nixietube(ss1[11],ss[H/100],ss[H%100/10],ss[H%10]);//溫度范圍是125~-55,當(dāng)上限值大于99時執(zhí)行 if(H>=10&&H<=99)Nixietube(ss1[11],0xff,ss[H/10],ss[H%10]);//當(dāng)上限值大于12小于99時執(zhí)行不顯示最高位 if(H<10&&H>=0)Nixietube(ss1[11],0xff,0xff,ss[H%10]);//不顯示百位十位 if(H<0&&H>=-9)Nixietube(ss1[11],0xff,ss1[12],ss[H*-1%10]);//設(shè)置的為負(fù)數(shù)且介于0~-9之間時執(zhí)行不顯示十位if(H<0&&H<-9)Nixietube(ss1[11],ss1[12],ss[H*-1%100/10],ss[H*-1%10]); //最低可以到55 } if(flag==2)//同上 {if(L>99)Nixietube(ss1[10],ss[L/100],ss[L%100/10],ss[L%10]); if(L>=10&&L<=99)Nixietube(ss1[10],0xff,ss[L/10],ss[L%10]); if(L<10&&L>=0)Nixietube(ss1[10],0xff,0xff,ss[L%10]);if(L<0&&L>=-9)Nixietube(ss1[10],0xff,ss1[12],ss[L*-1%10]);if(L<0&&L<-9)Nixietube(ss1[10],ss1[12],ss[L*-1%100/10],ss[L*-1%10]); } }voidkey()//按鍵處理{ if(!key1)//設(shè)置上限按鍵按下{delay(500); //延時消抖 if(!key1) //再次判斷 {while(!key1);//松手檢測if(flag==1) //如果flag=1,表示是設(shè)置上限狀態(tài) { if(H<125)H++; //如果上限小于125,上限自加 SectorErase(0x2000);//每修改一次上下限數(shù)據(jù)就寫進(jìn)EEROM byte_write(0x2000,H);} elseif(flag==2) {if(L<H-1)L++;//原則是下限不超過上限 SectorErase(0x2200); byte_write(0x2200,L);} }}if(!key2)//設(shè)置下限{delay(500); if(!key2) {while(!key2);//松手檢測 if(flag==1) { if(H>L+1)H--;//原則上限不低于下限 SectorErase(0x2000);//每修改一次上下限數(shù)據(jù)就寫進(jìn)EEROM byte_write(0x2000,H);} elseif (flag==2) { if(L>-55)L--; SectorErase(0x2200); byte_write(0x2200,L);} }}if(!key3)//設(shè)置上限下限切換按鍵{ delay(1000); if(!key3) { while(!key3);flag=(flag+1)%3; }}}voidalarm()//報警{
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司借款合同模板3
- 2025年二手房的買賣合同標(biāo)準(zhǔn)范文(2篇)
- 2025年中小學(xué)生森林防火心得體會感悟模版(2篇)
- 2025年臨床兒科見習(xí)心得體會(2篇)
- 公司員工勞動合同
- 2025年中學(xué)班主任教師月工作小結(jié)范文(二篇)
- 電鍍儀器租賃合同
- 2025年鄉(xiāng)烤煙生產(chǎn)工作總結(jié)及工作打算樣本(3篇)
- 2025年中班教師的育兒心得范文(2篇)
- 2025年乘務(wù)人員工作心得體會模版(4篇)
- (正式版)FZ∕T 80014-2024 潔凈室服裝 通 用技術(shù)規(guī)范
- 新起點英語二年級下冊全冊教案
- 【幼兒園戶外體育活動材料投放的現(xiàn)狀調(diào)查報告(定量論文)8700字】
- 剪映專業(yè)版:PC端短視頻制作(全彩慕課版) 課件 第3章 短視頻剪輯快速入門
- 湖南省長沙市開福區(qū)青竹湖湘一外國語學(xué)校2023-2024學(xué)年九年級下學(xué)期一模歷史試題
- 帶狀皰疹與帶狀皰疹后遺神經(jīng)痛(HZ與PHN)
- 漢密爾頓抑郁和焦慮量表
- 風(fēng)電場事故案例分析
- 前列腺癌的診斷與治療
- 人教版八年級數(shù)學(xué)初中數(shù)學(xué)《平行四邊形》單元教材教學(xué)分析
- EPC項目設(shè)計及施工的配合
評論
0/150
提交評論