Arduino單片機(jī)的智能家居設(shè)計(jì)_第1頁(yè)
Arduino單片機(jī)的智能家居設(shè)計(jì)_第2頁(yè)
Arduino單片機(jī)的智能家居設(shè)計(jì)_第3頁(yè)
Arduino單片機(jī)的智能家居設(shè)計(jì)_第4頁(yè)
Arduino單片機(jī)的智能家居設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩15頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

...wd......wd......wd...山東科技大學(xué)第三屆學(xué)生電子設(shè)計(jì)大賽技術(shù)報(bào)告基于Arduino單片機(jī)的智能家居系統(tǒng)學(xué)院:電子通信與物理學(xué)院班級(jí):碩研2015級(jí)參賽者:張榮飛曹其棟侯煥存摘要本文中我們基于Arduino單片機(jī)設(shè)計(jì)了一個(gè)模擬智能家居系統(tǒng)。該系統(tǒng)以ArduinoUNOR3單片機(jī)為核心,外接光照檢測(cè)、溫濕度傳感器、LED、風(fēng)扇和無(wú)線(xiàn)通信等模塊。整個(gè)系統(tǒng)分為檢測(cè)端和控制端兩大局部,檢測(cè)端由光敏電阻、溫濕度傳感器、無(wú)線(xiàn)通信模塊和單片機(jī)組成。控制端由無(wú)線(xiàn)接收、液晶顯示、電燈控制和風(fēng)扇控制四大模塊組成,包含單片機(jī)、無(wú)線(xiàn)通信模塊、LCD顯示屏、風(fēng)扇和LED等。檢測(cè)端和控制端之間借助無(wú)線(xiàn)通信模塊進(jìn)展無(wú)線(xiàn)通信,控制端內(nèi)部的無(wú)線(xiàn)接收和液晶顯示兩個(gè)模塊之間那么采用串口通信。該系統(tǒng)能夠?qū)崿F(xiàn)對(duì)室內(nèi)溫度、濕度和光照強(qiáng)度等參數(shù)的實(shí)時(shí)檢測(cè),并借助LCD顯示溫濕度值,還可以根據(jù)檢測(cè)端探測(cè)到的光照強(qiáng)度和溫度值以及預(yù)先設(shè)定的參數(shù)對(duì)室內(nèi)的電燈和風(fēng)扇進(jìn)展智能控制。關(guān)鍵詞:智能家居;Arduino單片機(jī);自動(dòng)控制;無(wú)線(xiàn)通信;液晶顯示目錄§1緒論11.1智能家居簡(jiǎn)介11.2智能家居的研究意義2§2系統(tǒng)總體設(shè)計(jì)方案32.1系統(tǒng)框圖32.2系統(tǒng)工作原理簡(jiǎn)介3§3系統(tǒng)硬件設(shè)計(jì)43.1單片機(jī)的選擇43.1.1ArduinoUNO簡(jiǎn)介43.1.2Arduino單片機(jī)特色53.1.3Arduino單片機(jī)引腳簡(jiǎn)介53.1.4Arduino單片機(jī)編程軟件63.2溫濕度檢測(cè)模塊設(shè)計(jì)63.2.1DHT11概述63.2.2DHT11引腳說(shuō)明73.2.3電源引腳83.2.4串行接口〔單線(xiàn)雙向〕83.3光照檢測(cè)模塊設(shè)計(jì)83.4無(wú)線(xiàn)通信模塊設(shè)計(jì)93.5液晶顯示模塊設(shè)計(jì)93.5.1液晶顯示模塊的選擇93.5.2液晶顯示電路設(shè)計(jì)103.6其他模塊設(shè)計(jì)113.6.1電燈模塊設(shè)計(jì)113.6.2風(fēng)扇模塊設(shè)計(jì)123.7系統(tǒng)硬件實(shí)物圖12§4軟件系統(tǒng)設(shè)計(jì)134.1檢測(cè)端程序設(shè)計(jì)134.2控制端程序設(shè)計(jì)13§5總結(jié)15參考文獻(xiàn)15附錄:源程序16§1緒論1.1智能家居簡(jiǎn)介智能家居很早就出現(xiàn)在人們的定義當(dāng)中,但很長(zhǎng)時(shí)間以來(lái)都沒(méi)有真正意義上的智能家居成型,到了1984年美國(guó)聯(lián)合科技公司〔UnitedTechnologiesBuildingSystem〕將智能信息融入建筑設(shè)備中,在整合的根基上應(yīng)用到了美國(guó)康乃迪克州哈特佛市的城市地標(biāo)性建筑中時(shí),出現(xiàn)了世界上的首棟智能化建筑,也正是從那時(shí)開(kāi)場(chǎng),智能化家居正式融入到現(xiàn)代生活中。智能家居控制的開(kāi)展關(guān)鍵在于設(shè)計(jì)理念以及經(jīng)營(yíng)者的心態(tài),市場(chǎng)目標(biāo)客戶(hù)真正需要什么東西,如果只注重簽單,不設(shè)身處地的為客戶(hù)著想,不兼顧智能解決未來(lái)的開(kāi)展,提供片面的智能家居解決方案,而不考慮客戶(hù)的適用性,是不可取的,是急功近利的表現(xiàn),這不僅降低了智能家居的應(yīng)用效果,還不利于整個(gè)智能家居行業(yè)的開(kāi)展。智能家居控制系統(tǒng)的市場(chǎng)不是一般普通的商品買(mǎi)賣(mài),而是一項(xiàng)系統(tǒng)性工程,它涉及到很多技術(shù),涉及到人們生活的方方面面,智能家居控制系統(tǒng)的終極目標(biāo)是一種理想,更是一種理念,要想智能家居控制系統(tǒng)有很好的開(kāi)展,研發(fā)機(jī)構(gòu)必須本著長(zhǎng)遠(yuǎn)開(kāi)展的心態(tài),本著簡(jiǎn)化、實(shí)用、性?xún)r(jià)比高、適合市場(chǎng)的理念,虔誠(chéng)研究人們的生活、習(xí)慣、精神文化等需要,并把它看最高目標(biāo),運(yùn)用各種技術(shù)手段實(shí)現(xiàn)它。在國(guó)內(nèi),智能家居不是單純意義上的智能產(chǎn)品,也不能被狹義的理解為小區(qū)智能化,而是基于小區(qū)的多層次家居智能化解決方案。它綜合利用主控平臺(tái)、無(wú)線(xiàn)連接及通信、設(shè)備管理、整體布局布線(xiàn)等手段,將住戶(hù)智能化管理、交互共享及消費(fèi)服務(wù)、小區(qū)安防監(jiān)控等常見(jiàn)家居因素協(xié)調(diào)配合并最終整合為整體,在原有小區(qū)智能化的大面上延伸到小區(qū)內(nèi)部室內(nèi)家居的具體環(huán)節(jié),構(gòu)建出高效、舒適、安全、便捷的個(gè)性化住宅空間。近幾年,很多研發(fā)機(jī)構(gòu)和廠商已經(jīng)意識(shí)到家庭安全的重要性,把智能家居作為一個(gè)重要的方向和工程來(lái)研究,并紛紛投入大量人力財(cái)力,使智能家居真正的走向市場(chǎng)和產(chǎn)業(yè)化生產(chǎn)。智能家居是一個(gè)具有交互能力的平臺(tái),并且通過(guò)平臺(tái)能夠把各種不同的系統(tǒng)、協(xié)議、信息和內(nèi)容控制在相對(duì)獨(dú)立的模塊單元中進(jìn)展傳輸、交換。1.2智能家居的研究意義隨著人們生活水平的不斷提高,生活節(jié)奏的加快,人們不斷的對(duì)居住環(huán)境提出更高的要求,越來(lái)越注重家庭生活中每個(gè)成員的舒適、安全和便利,因此從市場(chǎng)需求的角度來(lái)說(shuō),智能家居必然是前景廣闊。因此設(shè)計(jì)一個(gè)符合國(guó)家國(guó)情和標(biāo)準(zhǔn)的集遠(yuǎn)程控制和本地控制為一體的智能家居控制系統(tǒng)是非常具有現(xiàn)實(shí)意義的,且勢(shì)在必行。作為智能家居的核心系統(tǒng)的智能家居的控制系統(tǒng),它的設(shè)計(jì)功能的完善必將推動(dòng)住宅智能化的開(kāi)展。而系統(tǒng)功能的集成化、用戶(hù)使用的傻瓜化以及市場(chǎng)的平民化將是智能家居控制器的開(kāi)展趨勢(shì),系統(tǒng)也將逐步邁向綠色化。最終,我想全人類(lèi)的夢(mèng)想是智能家居控制系統(tǒng)將囊括所有的家事雜物,讓我們真正的享受舒適溫馨的家庭生活。雖然智能家居經(jīng)過(guò)十幾年的蓬勃開(kāi)展,很多功能已趨于完善和成熟,智能化家居系統(tǒng)的應(yīng)用也越來(lái)越廣泛,然而生活中的智能家居所展現(xiàn)出的智能化,與業(yè)主所理想的智能化還存在較大差距。而這也推動(dòng)了智能化技術(shù)在家居領(lǐng)域的縱深開(kāi)展,并為各類(lèi)智能化家居新產(chǎn)品的設(shè)計(jì)和研發(fā)增加了動(dòng)力,同時(shí)新產(chǎn)品的出現(xiàn),也大大豐富了智能家居系統(tǒng)的厚度。因此,將智能家居作為這次研究的主要內(nèi)容具有很大的現(xiàn)實(shí)指導(dǎo)意義。本文的目的就是設(shè)計(jì)一個(gè)簡(jiǎn)捷有效智能家居控制系統(tǒng),從溫度、濕度、光照強(qiáng)度的采集,到LCD實(shí)時(shí)顯示,并根據(jù)采集的信號(hào)不同采取相應(yīng)的應(yīng)對(duì)機(jī)制,智能控制家中的電燈、風(fēng)扇等電器設(shè)備,從而實(shí)現(xiàn)基本的智能家居功能?!?系統(tǒng)總體設(shè)計(jì)方案2.1系統(tǒng)框圖智能家居控制系統(tǒng)對(duì)整個(gè)家庭內(nèi)部環(huán)境進(jìn)展監(jiān)測(cè)和及時(shí)應(yīng)對(duì)的系統(tǒng),核心局部是單片機(jī),通過(guò)與其他各監(jiān)測(cè)模塊和執(zhí)行模塊的連接,實(shí)現(xiàn)對(duì)室內(nèi)環(huán)境的整體改變和各元件的控制。首先,主控元件對(duì)接收到的數(shù)據(jù)〔如光線(xiàn)強(qiáng)暗,溫度上下〕通過(guò)LCD顯示模塊進(jìn)展實(shí)時(shí)顯示,使室內(nèi)情況一目了然。然后根據(jù)各信號(hào)采集模塊傳送給單片機(jī)的數(shù)據(jù),做出應(yīng)對(duì)執(zhí)行,實(shí)現(xiàn)家居系統(tǒng)的智能控制。系統(tǒng)總體框圖如下:圖2.1系統(tǒng)總體框圖2.2系統(tǒng)工作原理簡(jiǎn)介本系統(tǒng)工作可以分為四個(gè)局部:第一局部是傳感器數(shù)據(jù)采集,將溫度傳感器、濕度傳感器以及光敏電阻分別連接到單片機(jī)①上,單片機(jī)①會(huì)將傳感器采集到的實(shí)時(shí)數(shù)據(jù)進(jìn)展處理;第二局部是數(shù)據(jù)傳輸,有兩個(gè)無(wú)線(xiàn)模塊,一個(gè)連接到單片機(jī)①上作為發(fā)射端,一個(gè)連接到單片機(jī)②上作為接收端,單片機(jī)①將處理過(guò)的數(shù)據(jù)通過(guò)發(fā)射端發(fā)送出去,單片機(jī)②通過(guò)接收端將數(shù)據(jù)接收進(jìn)來(lái),再次進(jìn)展處理;第三局部是控制功能,單片機(jī)②將接收到的數(shù)據(jù)與設(shè)定的閾值進(jìn)展對(duì)比,當(dāng)?shù)竭_(dá)閾值條件時(shí),可以啟動(dòng)風(fēng)扇或者電燈,另外,溫度和光敏設(shè)定了幾個(gè)不同的閾值,當(dāng)?shù)竭_(dá)某一閾值會(huì)有相應(yīng)的風(fēng)扇轉(zhuǎn)速或者電燈亮度;第四局部,溫濕度顯示,單片機(jī)②將通過(guò)無(wú)線(xiàn)方式接收到的數(shù)據(jù)采用串口通信的方式傳給單片機(jī)③,單片機(jī)③是專(zhuān)門(mén)用來(lái)控制LCD1602液晶顯示屏的,得到數(shù)據(jù)后單片機(jī)③將數(shù)據(jù)傳到液晶屏進(jìn)展顯示?!?系統(tǒng)硬件設(shè)計(jì)3.1單片機(jī)的選擇首先將所需器件羅列,根據(jù)與單片機(jī)相連的各器件,確定整個(gè)系統(tǒng)所需與單片機(jī)連接的管腳數(shù),通過(guò)查資料,選定Arduino單片機(jī)作為該系統(tǒng)的微控制器,因?yàn)樗鼛в心MI/O口,在外接各類(lèi)傳感器方面比普通的51系列單片機(jī)更為方便。Arduino單片機(jī)的模擬I/O口可以很方便地將光敏電阻和溫濕度傳感器等模塊采集到的模擬量經(jīng)A/D轉(zhuǎn)換后送給單片機(jī)進(jìn)展處理,而對(duì)數(shù)字信號(hào)的識(shí)別和處理正是Arduino的優(yōu)勢(shì)所在。3.1.1ArduinoUNO簡(jiǎn)介ArduinoUNO是ArduinoUSB接口系列的最新版本,作為Arduino平臺(tái)的參考標(biāo)準(zhǔn)模板。UNO的處理器核心是ATmega328,同時(shí)具有14路數(shù)字輸入/輸出口〔其中6路可作為PWM輸出〕,6路模擬輸入,一個(gè)16MHz晶體振蕩器,一個(gè)USB口,一個(gè)電源插座,一個(gè)ICSPheader和一個(gè)復(fù)位按鈕。UNO已經(jīng)發(fā)布到第三版,與前兩版相比有以下新的特點(diǎn):在AREF處增加了兩個(gè)管腳SDA和SCL,支持I2C接口;增加IOREF和一個(gè)預(yù)留管腳,將來(lái)擴(kuò)展板將能兼容5V和3.3V核心板。這樣改進(jìn)了復(fù)位電路設(shè)計(jì),USB接口芯片由ATmega16U2替代了ATmega8U2。圖2.2為改進(jìn)后的ArduinoUNO。圖2.2ArduinoUNOR33.1.2Arduino單片機(jī)特色1、開(kāi)放源代碼的電路圖設(shè)計(jì),程序開(kāi)發(fā)接口免費(fèi)下載,也可依需求自己修改。2、使用低價(jià)格的微處理控制器(ATMEGA8或ATmega128)??梢圆捎肬SB接口供電,不需外接電源,也可以使用外部9VDC輸入。3、Arduino支持ISP在線(xiàn)燒,可以將新的“bootloader〞固件燒入ATmega8或ATmega128芯片。有了bootloader之后,可以通過(guò)串口或者USBtoRs232線(xiàn)更新固件。4、可依據(jù)官方提供的Eagle格式PCB和SCH電路圖,簡(jiǎn)化Arduino模組,完成獨(dú)立運(yùn)作的微處理控制??珊?jiǎn)單地與傳感器,各式各樣的電子元件連接(如:紅外線(xiàn)、超聲波、熱敏電阻、光敏電阻、伺服馬達(dá)等)。5、支持多種互動(dòng)程序,如:Flash、Max/Msp、VVVV、PD、C、Processing等。6、應(yīng)用方面,利用Arduino,突破以往只能使用鼠標(biāo)、鍵盤(pán)、CCD等輸入的裝置的互動(dòng)內(nèi)容,可以更簡(jiǎn)單地達(dá)成單人或多人游戲互動(dòng)。3.1.3Arduino單片機(jī)引腳簡(jiǎn)介Arduino單片機(jī)的數(shù)字I/O被分成兩個(gè)局部,其中每個(gè)局部都包含有6個(gè)可用的I/O管腳,即管腳2到管腳7和管腳8到管腳13。在數(shù)字電路中開(kāi)關(guān)〔switch〕是一種基本的輸入形式,它的作用是保持電路的連接或者斷開(kāi)。Arduino從數(shù)字I/O管腳上只能讀出高電平〔5V〕或者低電平〔0V〕,因此我們首先面臨到的一個(gè)問(wèn)題就是如何將開(kāi)關(guān)的開(kāi)/斷狀態(tài)轉(zhuǎn)變成Arduino能夠讀取的高/低電平。解決的方法是通過(guò)上/下拉電阻,按照電路的不同通常又可以分為正邏輯〔PositiveLogic〕和負(fù)邏輯〔InvertedLogic〕兩種。Arduino的優(yōu)勢(shì)在于對(duì)數(shù)字信號(hào)的識(shí)別和處理,但我們所生活的真實(shí)世界并不是數(shù)字〔digital〕化的,簡(jiǎn)單到只要用0和1就能夠表示所有的現(xiàn)象。例如溫度這一我們已經(jīng)司空見(jiàn)慣的概念,它只能在一個(gè)范圍之內(nèi)連續(xù)變化,而不可能發(fā)生像從0到1這樣的瞬時(shí)跳變,類(lèi)似這樣的物理量被人們稱(chēng)為是模擬〔analog〕的。Arduino是無(wú)法理解這些模擬量的,它們必須在經(jīng)過(guò)模數(shù)轉(zhuǎn)換后變成數(shù)字量后,才能被Arduino進(jìn)一步處理。3.1.4Arduino單片機(jī)編程軟件Arduino語(yǔ)言是建設(shè)在C/C++根基上的,其實(shí)也就是根基的C語(yǔ)言,Arduino語(yǔ)言只不過(guò)把AVR單片機(jī)〔微控制器〕相關(guān)的一些存放器參數(shù)設(shè)置等都函數(shù)化了,不用我們?nèi)チ私馑牡讓樱尣惶私釧VR單片機(jī)〔微控制器〕的朋友也能輕松上手。圖2.3Arduino編程界面Arduino語(yǔ)言是以setup()開(kāi)頭,loop()作為主體的一個(gè)程序構(gòu)架。官方網(wǎng)站是這樣描述setup()的:用來(lái)初始化變量,管腳模式,調(diào)用庫(kù)函數(shù)等等,此函數(shù)只運(yùn)行一次。loop()函數(shù)是一個(gè)循環(huán)函數(shù),函數(shù)內(nèi)的語(yǔ)句周而復(fù)始的循環(huán)執(zhí)行,功能類(lèi)似c語(yǔ)言中的“main();〞。3.2溫濕度檢測(cè)模塊設(shè)計(jì)智能家居的一個(gè)主要控制對(duì)象就是住戶(hù)室內(nèi)溫濕度,適宜的溫濕度為主人提供良好的家居環(huán)境,這樣一來(lái),溫濕度檢測(cè)與控制模塊就變得尤為重要。考慮到硬件電路的復(fù)雜性,本設(shè)計(jì)中選擇DHT11數(shù)字溫濕度傳感器來(lái)檢測(cè)室內(nèi)的溫度和濕度,這樣可以用一個(gè)傳感器檢測(cè)兩個(gè)指標(biāo),使硬件電路得以簡(jiǎn)化。3.2.1DHT11概述DHT11數(shù)字溫濕度傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器。它應(yīng)用專(zhuān)用的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與卓越的長(zhǎng)期穩(wěn)定性。傳感器包括一個(gè)電阻式感濕元件和一個(gè)NTC測(cè)溫元件,并與一個(gè)高性能8位單片機(jī)相連接。因此該產(chǎn)品具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性?xún)r(jià)比極高等優(yōu)點(diǎn)。每個(gè)DHT11傳感器都在極為準(zhǔn)確的濕度校驗(yàn)室中進(jìn)展校準(zhǔn)。校準(zhǔn)系數(shù)以程序的形式儲(chǔ)存在OTP內(nèi)存中,傳感器內(nèi)部在檢測(cè)信號(hào)的處理過(guò)程中要調(diào)用這些校準(zhǔn)系數(shù)。單線(xiàn)制串行接口,使系統(tǒng)集成變得簡(jiǎn)易快捷。超小的體積、極低的功耗,信號(hào)傳輸距離可達(dá)20米以上,使其成為各類(lèi)應(yīng)用甚至最為苛刻的應(yīng)用場(chǎng)合的最正確選那么。產(chǎn)品為4針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶(hù)需求而提供。圖3.1DHT11實(shí)物圖3.2.2DHT11引腳說(shuō)明引腳號(hào)引腳名稱(chēng)類(lèi)型引腳說(shuō)明1VCC電源正電源輸入,3V-5.5VDC2Dout輸出單總線(xiàn),數(shù)據(jù)輸入/輸出引腳3NC空空腳,擴(kuò)展未用4GND地電源地圖3.2DHT11典型應(yīng)用電路3.2.3電源引腳DHT11的供電電壓為3-5.5V。傳感器上電后,要等待1s以越過(guò)不穩(wěn)定狀態(tài)在此期間無(wú)需發(fā)送任何指令。電源引腳〔VDD,GND〕之間可增加一個(gè)100nF的電容,用以去耦濾波。3.2.4串行接口〔單線(xiàn)雙向〕DATA用于微處理器與DHT11之間的通訊和同步,采用單總線(xiàn)數(shù)據(jù)格式,一次通訊時(shí)間4ms左右,用戶(hù)MCU發(fā)送一次開(kāi)場(chǎng)信號(hào)后,,DHT11從低功耗模式轉(zhuǎn)換到高速模式,等待主機(jī)開(kāi)場(chǎng)信號(hào)完畢后,DHT11發(fā)送響應(yīng)信號(hào),送出40bit的數(shù)據(jù),并觸發(fā)一次信號(hào)采集,用戶(hù)可選擇讀取局部數(shù)據(jù)。從模式下,DHT11接收到開(kāi)場(chǎng)信號(hào)觸發(fā)一次溫濕度采集,如果沒(méi)有接收到主機(jī)發(fā)送開(kāi)場(chǎng)信號(hào),DHT11不會(huì)主動(dòng)進(jìn)展溫濕度采集,采集數(shù)據(jù)后轉(zhuǎn)換到低速模式。3.3光照檢測(cè)模塊設(shè)計(jì)光敏電阻特性是在不同光照強(qiáng)度下,其阻值發(fā)生變化〔只要是人眼可感受的光,都會(huì)引起它的阻值變化〕。利用這一特性,我們把光敏電阻接入電路實(shí)現(xiàn)光照強(qiáng)度檢測(cè)。圖3.3光照檢測(cè)電路示意圖亮度檢測(cè)電路工作原理:我們把光敏電阻接入電路后,光敏電阻置于窗口處,由于光線(xiàn)的變化,其阻值也在一定時(shí)間內(nèi)不斷變化,從而產(chǎn)生連續(xù)的電信號(hào),通過(guò)模擬I/O口進(jìn)入單片機(jī)。由于單片機(jī)內(nèi)部自帶A/D轉(zhuǎn)換電路,通過(guò)相應(yīng)程序,能使模擬I/O口傳來(lái)的電信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),單片機(jī)讀取這些數(shù)字信號(hào),就能得出相應(yīng)的光照強(qiáng)度,并決定是否啟動(dòng)其他應(yīng)對(duì)措施。3.4無(wú)線(xiàn)通信模塊設(shè)計(jì)考慮到系統(tǒng)的普遍適用性和硬件電路實(shí)現(xiàn)的難易程度,本次設(shè)計(jì)中選取NRF24L01無(wú)線(xiàn)模塊作為系統(tǒng)的無(wú)線(xiàn)通信模塊,該模塊既可以用于發(fā)送數(shù)據(jù),也可以用于接收數(shù)據(jù),且易于編程操作。NRF24L01無(wú)線(xiàn)模塊主要特點(diǎn)如下:(1)2.4Ghz全球開(kāi)放ISM頻段免許可證使用;(2)最高工作速率2Mbps,高效GFSK調(diào)制,抗干擾能力強(qiáng),特別適合工業(yè)控制場(chǎng)合;(3)126頻道,滿(mǎn)足多點(diǎn)通信和跳頻通信需要;(4)內(nèi)置硬件CRC檢錯(cuò)和點(diǎn)對(duì)多點(diǎn)通信地址控制;(5)低功耗1.9-3.6V工作,待機(jī)模式下?tīng)顟B(tài)為22uA;掉電模式下為900nA;(6)內(nèi)置2.4Ghz天線(xiàn),體積種類(lèi)多樣;(7)模塊可軟件設(shè)地址,只有收到本機(jī)地址時(shí)才會(huì)輸出數(shù)據(jù)〔提供中斷指示),可直接接各種單片機(jī)使用,軟件編程非常方便;(8)內(nèi)置專(zhuān)門(mén)穩(wěn)壓電路,使用各種電源包括DC/DC開(kāi)關(guān)電源均有很好的通信效果;(9)2.54MM間距接口,DIP封裝;(10)工作于EnhancedShockBurst具有Automaticpackethandling,Autopackettransactionhandling,具有可選的內(nèi)置包應(yīng)答機(jī)制,極大的降低丟包率。3.5液晶顯示模塊設(shè)計(jì)3.5.1液晶顯示模塊的選擇LCD1602屏幕為2行,每行顯示16個(gè)字符,為字符型顯示器,只能顯示數(shù)字和字符,不可以顯示漢字。LCD12864屏幕為64行,每行顯示128個(gè)字符,為點(diǎn)陣型顯示器,可根據(jù)需求任意顯示字符,數(shù)字,漢字和圖形。綜合價(jià)格因素和實(shí)際應(yīng)用的需要,選用LCD1602為改家居系統(tǒng)的顯示器。下面詳細(xì)介紹一下LCD1602的功能實(shí)現(xiàn)和各項(xiàng)參數(shù)。LCD1602主要技術(shù)參數(shù):顯示容量:16×2個(gè)字符芯片工作電壓:4.5—5.5V工作電流:2.0mA(5.0V)模塊最正確工作電壓:5.0V字符尺寸:2.95×4.35(W×H)mmLCD1602相比傳統(tǒng)顯示器的幾個(gè)突出優(yōu)點(diǎn):〔1〕顯示質(zhì)量高由于液晶顯示器收到信號(hào)后的每一個(gè)點(diǎn)都會(huì)一直保持原有亮度和顏色,恒定發(fā)光。而不像陰極射線(xiàn)管顯示器〔CRT〕那樣需要不斷刷新新亮點(diǎn)。因此,液晶顯示器既不會(huì)閃爍,又保證了畫(huà)質(zhì)高?!?〕數(shù)字式接口液晶顯示器的輸入輸出采用數(shù)字量,和主控芯片〔SCM〕的接口連接更加簡(jiǎn)單可靠,操作也更為簡(jiǎn)便?!?〕重量輕,體積小液晶顯示器通過(guò)顯示屏上的電極控制液晶分子狀態(tài)來(lái)到達(dá)顯示的目的,在重量上比一樣顯示面積的傳統(tǒng)顯示器要輕得多?!?〕功耗低相對(duì)而言,液晶顯示器的功耗主要消耗在其內(nèi)部的電極和驅(qū)動(dòng)IC上,因而耗電量比其他顯示器要少得多。LCD1602分為帶背光和不帶背光兩種,基控制器大局部為HD44780,帶背光的比不帶背光的厚,是否帶背光在應(yīng)用中并無(wú)差異。3.5.2液晶顯示電路設(shè)計(jì)圖3.4液晶顯示電路示意圖液晶顯示電路工作原理:液晶顯示器LCD1602通過(guò)7~14管腳的數(shù)據(jù)總線(xiàn)與單片機(jī)進(jìn)展數(shù)據(jù)傳送,單片機(jī)通過(guò)輸出高地電平來(lái)控制液晶顯示器LCD1602的4~6管腳配合傳送的數(shù)據(jù)決定讀/寫(xiě)數(shù)據(jù),并通過(guò)LCD顯示屏顯示出來(lái)。期間單片機(jī)是控制元件,而LCD1602為顯示和執(zhí)行元件。3.6其他模塊設(shè)計(jì)3.6.1電燈模塊設(shè)計(jì)本次系統(tǒng)設(shè)計(jì)中用發(fā)光二極管LED來(lái)替代實(shí)際場(chǎng)景中的電燈。LED發(fā)光原理發(fā)光二極管是由Ⅲ-Ⅳ族化合物,如GaAs(砷化鎵)、GaP(磷化鎵)、GaAsP(磷砷化鎵)等半導(dǎo)體制成的,其核心是PN結(jié)。因此它具有一般P-N結(jié)的I-N特性,即正向?qū)?,反向截止、擊穿特性。此外,在一定條件下,它還具有發(fā)光特性。在正向電壓下,電子由N區(qū)注入P區(qū),空穴由P區(qū)注入N區(qū)。進(jìn)入對(duì)方區(qū)域的少數(shù)載流子(少子)一局部與多數(shù)載流子(多子)復(fù)合而發(fā)光。假設(shè)發(fā)光是在P區(qū)中發(fā)生的,那么注入的電子與價(jià)帶空穴直接復(fù)合而發(fā)光,或者先被發(fā)光中心捕獲后,再與空穴復(fù)合發(fā)光。除了這種發(fā)光復(fù)合外,還有些電子被非發(fā)光中心(這個(gè)中心介于導(dǎo)帶、介帶中間附近)捕獲,而后再與空穴復(fù)合,每次釋放的能量不大,不能形成可見(jiàn)光。發(fā)光的復(fù)合量相對(duì)于非發(fā)光復(fù)合量的比例越大,光量子效率越高。由于復(fù)合是在少子擴(kuò)散區(qū)內(nèi)發(fā)光的,所以光僅在靠近PN結(jié)面數(shù)μm以?xún)?nèi)產(chǎn)生。理論和實(shí)踐證明,光的峰值波長(zhǎng)λ與發(fā)光區(qū)域的半導(dǎo)體材料禁帶寬度Eg有關(guān),即λ≈1240/Eg(mm)式中Eg的單位為電子伏特(eV)。假設(shè)能產(chǎn)生可見(jiàn)光(波長(zhǎng)在380nm紫光~780nm紅光),半導(dǎo)體材料的Eg應(yīng)在3.26~1.63eV之間。比紅光波長(zhǎng)長(zhǎng)的光為紅外光。現(xiàn)在已有紅外、紅、黃、綠及藍(lán)光發(fā)光二極管,但其中藍(lán)光二極管成本、價(jià)格很高,使用不普遍。LED的應(yīng)用由于發(fā)光二極管的顏色、尺寸、形狀、發(fā)光強(qiáng)度及透明情況等不同,所以使用發(fā)光二極管時(shí)應(yīng)根據(jù)實(shí)際需要進(jìn)展恰中選擇。由于發(fā)光二極管具有最大正向電流IFm、最大反向電壓VRm的限制,使用時(shí),應(yīng)保證不超過(guò)此值。為安全起見(jiàn),實(shí)際電流IF應(yīng)在0.6IFm以下;應(yīng)讓可能出現(xiàn)的反向電壓VR0。6VRm。LED被廣泛用于種電子儀器和電子設(shè)備中,可作為電源指示燈、電平指示或微光源之用。紅外發(fā)光管常被用于電視機(jī)、錄像機(jī)等的遙控器中。在連接電路時(shí),首先應(yīng)正確區(qū)分LED的正負(fù)極,防止正負(fù)極戒飯導(dǎo)致無(wú)法使用甚至燒壞元件。LED的兩只引腳中,長(zhǎng)的一根為正極,短的一根為負(fù)極,連接電路時(shí),正極接一個(gè)220Ω的電阻,電阻另一端接單片機(jī)的數(shù)字I/O口,負(fù)極接地。3.6.2風(fēng)扇模塊設(shè)計(jì)本設(shè)計(jì)中,采用普通的直流電機(jī)帶動(dòng)扇葉來(lái)模擬實(shí)際場(chǎng)景中的風(fēng)扇。直流風(fēng)扇的兩個(gè)接線(xiàn)端不分正負(fù),一端接地,另一端接單片機(jī)數(shù)字I/O口即可,根據(jù)系統(tǒng)設(shè)計(jì)的要求,通過(guò)程序控制輸出到電機(jī)的電壓不同來(lái)改變電機(jī)轉(zhuǎn)速,從而實(shí)現(xiàn)根據(jù)溫度變化和預(yù)設(shè)參數(shù)改變風(fēng)扇轉(zhuǎn)速的目的。3.7系統(tǒng)硬件實(shí)物圖根據(jù)上述各模塊的硬件設(shè)計(jì),最后做出的實(shí)物圖如下:圖3.5模擬智能家居硬件實(shí)物圖§4軟件系統(tǒng)設(shè)計(jì)4.1檢測(cè)端程序設(shè)計(jì)檢測(cè)端由單片機(jī)、光照檢測(cè)模塊、溫濕度檢測(cè)模塊和無(wú)線(xiàn)通信模塊組成,相應(yīng)的程序包括光照檢測(cè)程序、溫濕度檢測(cè)程序和無(wú)線(xiàn)通信程序,局部程序如以以下圖所示,完整的程序在附錄中。圖4.1檢測(cè)端局部程序4.2控制端程序設(shè)計(jì)控制端由單片機(jī)、液晶顯示模塊、電燈模塊、風(fēng)扇模塊和無(wú)線(xiàn)通信模塊組成,相應(yīng)的程序包括無(wú)線(xiàn)接收程序、串口通信程序、顯示程序、風(fēng)扇和電燈控制程序,局部程序如以以下圖所示,完整的程序在附錄中。圖4.2無(wú)線(xiàn)接收局部程序圖4.3液晶顯示局部程序§5總結(jié)本次設(shè)計(jì)的模擬智能家居系統(tǒng)滿(mǎn)足了所有的系統(tǒng)設(shè)計(jì)要求,完成了對(duì)溫濕度的實(shí)時(shí)監(jiān)測(cè)和現(xiàn)實(shí),得到的最終結(jié)果誤差也在要求的范圍之內(nèi),而且完成了根據(jù)光照強(qiáng)度變化、溫度變化和預(yù)設(shè)參數(shù)對(duì)電燈和風(fēng)扇進(jìn)展智能控制的任務(wù),取得了令人滿(mǎn)意的成果。通過(guò)本次設(shè)計(jì),使我對(duì)基于單片機(jī)的智能控制有了更多的了解和掌握,在科技飛速開(kāi)展的今天,科技意味著第一生產(chǎn)力,機(jī)器智能正在越來(lái)越多的方面取代人工操作,作為智能控制在工業(yè)應(yīng)用的代表性成果,它結(jié)合了程序調(diào)控,提供了定時(shí)控制、計(jì)數(shù)控制、步進(jìn)控制以及數(shù)據(jù)處理等多種功能,具有人工作業(yè)無(wú)法對(duì)比的優(yōu)越性和準(zhǔn)確性。隨著科技的開(kāi)展,基于單片機(jī)的智能控制功能也會(huì)不斷擴(kuò)大,各項(xiàng)性能也將不斷提高。參考文獻(xiàn)[1]張?chǎng)?單片機(jī)原理及應(yīng)用[M].北京:電子工業(yè)出版社,2008[2]童詩(shī)白,華成英.模擬電子技術(shù)根基[M].北京:高等教育出版社,2001[3]王港元.電工電子實(shí)踐指導(dǎo)[M].南昌:江西科學(xué)技術(shù)出版社,2006[4]李朝青.PC機(jī)及單片機(jī)數(shù)據(jù)通信技術(shù),北京,北京航空航天大學(xué)出版社,2000[5]藍(lán)宇電子研發(fā)團(tuán)隊(duì).Arduino設(shè)計(jì)[M].[6]湯凱,劉洋,續(xù)欣.Arduino程序設(shè)計(jì)指南[M].北京:電子工業(yè)出版社,2015[7]趙光宙.信號(hào)分析與處理[M].北京:機(jī)械工業(yè)出版社,2010[8]張國(guó)雄.測(cè)控電路〔第四版〕[M].北京:機(jī)械工業(yè)出版社,2011附錄:源程序檢測(cè)端發(fā)送程序:#include<SPI.h>#include<Mirf.h>#include<nRF24L01.h>#include<MirfHardwareSpiDriver.h>#defineDHT11_PIN0//ADC0接到模擬口0byteread_dht11_dat(){bytei=0;byteresult=0;for(i=0;i<8;i++){while(!(PINC&_BV(DHT11_PIN)));//waitfor50usdelayMicroseconds(30);if(PINC&_BV(DHT11_PIN))result|=(1<<(7-i));while((PINC&_BV(DHT11_PIN)));//wait'1'finish}returnresult;}voidsetup(){DDRC|=_BV(DHT11_PIN);PORTC|=_BV(DHT11_PIN);Serial.begin(9600);Mirf.cePin=9;//設(shè)置CE引腳為D9Mirf.csnPin=10;//設(shè)置CE引腳為D10Mirf.spi=&MirfHardwareSpi;Mirf.init();//初始化nRF24L01//設(shè)置接收標(biāo)識(shí)符"Sen01"Mirf.setRADDR((byte*)"Sen01");//設(shè)置一次收發(fā)的字節(jié)數(shù),這里發(fā)一個(gè)整數(shù),寫(xiě)sizeof(unsignedint),實(shí)際等于2字節(jié)Mirf.payload=sizeof(unsignedint);//發(fā)送通道,可以填0~128,收發(fā)必須一致。Mirf.channel=5;Mirf.config();Serial.println("I'mSender...");}voidloop(){bytedht11_dat[5];bytedht11_in;bytei;unsignedintGuangmin,WenDu,ShiDu;//startcondition//1.pull-downi/opinfrom18msPORTC&=~_BV(DHT11_PIN);delay(18);PORTC|=_BV(DHT11_PIN);delayMicroseconds(40);DDRC&=~_BV(DHT11_PIN);delayMicroseconds(40);dht11_in=PINC&_BV(DHT11_PIN);if(dht11_in){Serial.println("dht11startcondition1notmet");return;}delayMicroseconds(80);dht11_in=PINC&_BV(DHT11_PIN);if(!dht11_in){Serial.println("dht11startcondition2notmet");return;}delayMicroseconds(80);//nowreadyfordatareceptionfor(i=0;i<5;i++)dht11_dat[i]=read_dht11_dat();DDRC|=_BV(DHT11_PIN);PORTC|=_BV(DHT11_PIN);bytedht11_check_sum=dht11_dat[0]+dht11_dat[1]+dht11_dat[2]+dht11_dat[3];//checkcheck_sumif(dht11_dat[4]!=dht11_check_sum){Serial.println("DHT11checksumerror");}WenDu=(unsignedint)(dht11_dat[2]);ShiDu=(unsignedint)(dht11_dat[0]);Guangmin=analogRead(A2);//Guangmin=(unsignedint)20;Serial.println(WenDu);Serial.println(ShiDu);Serial.println(Guangmin);fasong(WenDu);fasong(ShiDu);fasong(Guangmin);delay(1000);}voidfasong(unsignedintadata){bytedata[Mirf.payload];data[0]=adata&0xFF;//低八位給data[0],data[1]=adata>>8;//高八位給data[1]。//設(shè)置向"serv1"發(fā)送數(shù)據(jù)Mirf.setTADDR((byte*)"Rec01");Mirf.send(data);//while死循環(huán)等待發(fā)送完畢,才能進(jìn)展下一步操作。while(Mirf.isSending()){}}控制端無(wú)線(xiàn)接收程序:#include

<SPI.h>

#include

<Mirf.h>

#include

<nRF24L01.h>

#include

<MirfHardwareSpiDriver.h>

int

fengshan

=

6;

int

led

=

5;

//定義一個(gè)變量adata存儲(chǔ)最終結(jié)果,oldadata存儲(chǔ)舊結(jié)果,防止一樣結(jié)果刷屏。

unsigned

int

WenDu

=

0,

ShiDu

=

0,

Guangmin

=

0;

void

setup()

{

pinMode(fengshan,

OUTPUT);

pinMode(led,

OUTPUT);

Serial.begin(9600);

Mirf.cePin

=

9;

//設(shè)置CE引腳為D9

Mirf.csnPin

=

10;

//設(shè)置CE引腳為D10

//初始化局部,不可隨時(shí)修改

Mirf.spi

=

&MirfHardwareSpi;

Mirf.init();

//初始化nRF24L01

//配置局部,可以隨時(shí)修改

//設(shè)置接收標(biāo)識(shí)符"Rev01"

Mirf.setRADDR((byte

*)"Rec01");

//設(shè)置一次收發(fā)的字節(jié)數(shù),這里發(fā)一個(gè)整數(shù),

//寫(xiě)sizeof(unsigned

int),實(shí)際等于2字節(jié)

Mirf.payload

=

sizeof(unsigned

int);

//發(fā)送通道,可以填0~128,收發(fā)必須一致。

Mirf.channel

=

5;

Mirf.config();

}

void

loop()

{

//定義一個(gè)暫存數(shù)組,大小為Mirf.payload。

byte

data[Mirf.payload];

if

(Mirf.dataReady())

//等待接收數(shù)據(jù)準(zhǔn)備好

{

Mirf.getData(data);

//接收數(shù)據(jù)到data數(shù)組

WenDu

=

(unsigned

int)((data[1]

<<

8)

|

data[0]);

Mirf.getData(data);

//接收數(shù)據(jù)到data數(shù)組

ShiDu

=

(unsigned

int)((data[1]

<<

8)

|

data[0]);

Mirf.getData(data);

//接收數(shù)據(jù)到data數(shù)組

Guangmin

=

(unsigned

int)((data[1]

<<

8)

|

data[0]);

sender(WenDu);

sender(ShiDu);

delay(1050);

}

if

(25

<=

WenDu

<=

28)

analogWrite(fengshan,

51);

else

if

(29

<=

WenDu

<=

32)

analogWrite(fengshan,

153);

else

if

(WenDu

>=

33)

analogWrite(fengshan,

255);

else

analogWrite(fengshan,

0);

if

(0

<=

Guangmin

<=

60)

analogWrite(led,

255);

else

if

(61<=

Guangmin

<=

120)

analogWrite(led,

153);

else

if

(121

<=

Guangmin

<=

180)

analogWrite(led,

51);

else

digitalWrite(led,

LOW);

}

void

sender(unsigned

int

x)

{

unsigned

int

c,

d,

j

;

unsigned

int

SHU[2];

c

=

x/10;

d

=

x-c

*

10;

SHU[0]

=

c;

SHU[1]

=

d;

for

(j

=

0;

j

<

2;

j++)

{

switch

(SHU[j])

{

case

0:

Serial.print('0');

break;

case

1:

Serial.print('1');

break;

case

2:

Serial.print('2');

break;

case

3:

Serial.print('3');

break;

case

4:

Serial.print('4');

break;

case

5:

Serial.print('5');

break;

case

6:

Serial.print('6');

break;

case

7:

Serial.print('7');

break;

case

8:

Serial.print('8');

break;

default:

Serial.print('9');

break;

}

}

}控制端串口通信及液晶顯示程序:int

DI

=

12;

int

RW

=

11;

int

DB[]

=

{3,

4,

5,

6,

7,

8,

9,

10};

int

Enable

=

2;

int

Echo

=

13;

int

Trig

=

A0;

void

LcdCommandWrite(int

value)

{

int

i

=

0;

for

(i

=

DB[0];

i

<=

DI;

i++)

{

digitalWrite(i,

value

&

01);

value

>>=

1;

}

digitalWrite(Enable,

LOW);

delayMicroseconds(1);

digitalWrite(Enable,

HIGH);

delayMicroseconds(1);

digitalWrite(Enable,

LOW);

delayMicrosecon

溫馨提示

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

評(píng)論

0/150

提交評(píng)論