




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上山東科技大學第三屆學生電子設計大賽技術報告基于 Arduino 單片機的智能家居系統(tǒng)學院:電子通信與物理學院班級:碩研 2015 級參賽者:張榮飛曹其棟侯煥存專心-專注-專業(yè)摘要本文中我們基于 Arduino 單片機設計了一個模擬智能家居系統(tǒng)。該系統(tǒng)以ArduinoUNOR3 單片機為核心,外接光照檢測、溫濕度傳感器、 LED、風扇和無線通信等模塊。 整個系統(tǒng)分為檢測端和控制端兩大部分, 檢測端由光敏電阻、 溫濕度傳感器、無線通信模塊和單片機組成。控制端由無線接收、液晶顯示、電燈控制和風扇控制四大模塊組成,包含單片機、無線通信模塊、 LCD 顯示屏、風扇和 LED 等
2、。檢測端和控制端之間借助無線通信模塊進行無線通信, 控制端內部的無線接收和液晶顯示兩個模塊之間則采用串口通信。 該系統(tǒng)能夠實現(xiàn)對室內溫度、 濕度和光照強度等參數(shù)的實時檢測,并借助 LCD 顯示溫濕度值,還可以根據(jù)檢測端探測到的光照強度和溫度值以及預先設定的參數(shù)對室內的電燈和風扇進行智能控制。關鍵詞: 智能家居; Arduino 單片機;自動控制;無線通信;液晶顯示目錄 1 緒論 .1.1.1 智能家居簡介 .1.1.2 智能家居的研究意義 .2. 2 系統(tǒng)總體設計方案 .3.2.1 系統(tǒng)框圖 .3.2.2 系統(tǒng)工作原理簡介 .3. 3 系統(tǒng)硬件設計 .4.3.1 單片機的選擇 .4.3.1.1
3、 Arduino UNO 簡介.4.3.1.2 Arduino 單片機特色 . .5.3.1.3 Arduino 單片機引腳簡介 .5.3.1.4 Arduino 單片機編程軟件 .6.3.2 溫濕度檢測模塊設計 .6.3.2.1 DHT11 概述.6.3.2.2 DHT11 引腳說明 .7.3.2.3 電源引腳 .8.3.2.4 串行接口(單線雙向) .8.3.3 光照檢測模塊設計 .8.3.4 無線通信模塊設計 .9.3.5 液晶顯示模塊設計 .9.3.5.1 液晶顯示模塊的選擇 .9.3.5.2 液晶顯示電路設計 .1.03.6 其他模塊設計 .1.1.3.6.1 電燈模塊設計 .1.1
4、3.6.2 風扇模塊設計 .1.23.7 系統(tǒng)硬件實物圖 .1.2. 4 軟件系統(tǒng)設計 .1.3.4.1 檢測端程序設計 .1.3.4.2 控制端程序設計 .1.3.5 總結 .1.5.參考文獻 .1.5.附錄:源程序 .1.6.基于 Arduino 單片機的智能家居系統(tǒng) 1 緒論1.3 智能家居簡介智能家居很早就出現(xiàn)在人們的定義當中, 但很長時間以來都沒有真正意義上的智能家居成型,到了 1984 年美國聯(lián)合科技公司( United Technologies Building System)將智能信息融入建筑設備中, 在整合的基礎上應用到了美國康乃迪克州哈特佛市的城市地標性建筑中時,出現(xiàn)了世界
5、上的首棟智能化建筑,也正是從那時開始,智能化家居正式融入到現(xiàn)代生活中。智能家居控制的發(fā)展關鍵在于設計理念以及經(jīng)營者的心態(tài), 市場目標客戶真正需要什么東西,如果只注重簽單,不設身處地的為客戶著想,不兼顧智能解決未來的發(fā)展,提供片面的智能家居解決方案,而不考慮客戶的適用性,是不可取的,是急功近利的表現(xiàn),這不僅降低了智能家居的應用效果,還不利于整個智能家居行業(yè)的發(fā)展。智能家居控制系統(tǒng)的市場不是一般普通的商品買賣,而是一項系統(tǒng)性工程,它涉及到很多技術,涉及到人們生活的方方面面,智能家居控制系統(tǒng)的終極目標是一種理想,更是一種理念,要想智能家居控制系統(tǒng)有很好的發(fā)展,研發(fā)機構必須本著長遠發(fā)展的心態(tài),本著簡化
6、、實用、性價比高、適合市場的理念,虔誠研究人們的生活、習慣、精神文化等需要,并把它看最高目標,運用各種技術手段實現(xiàn)它。在國內,智能家居不是單純意義上的智能產(chǎn)品, 也不能被狹義的理解為小區(qū)智能化,而是基于小區(qū)的多層次家居智能化解決方案。它綜合利用主控平臺、無線連接及通信、設備管理、整體布局布線等手段,將住戶智能化管理、交互共享及消費服務、小區(qū)安防監(jiān)控等常見家居因素協(xié)調配合并最終整合為整體, 在原有小區(qū)智能化的大面上延伸到小區(qū)內部室內家居的具體環(huán)節(jié),構建出高效、舒適、安全、便捷的個性化住宅空間。近幾年,很多研發(fā)機構和廠商已經(jīng)意識到家庭安全的重要性,把智能家居作為一個重要的方向和項目來研究, 并紛紛
7、投入大量人力財力, 使智能家居真正的走向市場和產(chǎn)業(yè)化生產(chǎn)。智能家居是一個具有交互能力的平臺, 并且通過平臺能夠把各種不同的系統(tǒng)、 協(xié)議、信息和內容控制在相對獨立的模塊單元中進行傳輸、交換。1基于 Arduino 單片機的智能家居系統(tǒng)1.4 智能家居的研究意義隨著人們生活水平的不斷提高,生活節(jié)奏的加快,人們不斷的對居住環(huán)境提出更高的要求,越來越注重家庭生活中每個成員的舒適、安全和便利,因此從市場需求的角度來說,智能家居必然是前景廣闊。因此設計一個符合國家國情和規(guī)范的集遠程控制和本地控制為一體的智能家居控制系統(tǒng)是非常具有現(xiàn)實意義的,且勢在必行。作為智能家居的核心系統(tǒng)的智能家居的控制系統(tǒng), 它的設計
8、功能的完善必將推動住宅智能化的發(fā)展。而系統(tǒng)功能的集成化、用戶使用的傻瓜化以及市場的平民化將是智能家居控制器的發(fā)展趨勢,系統(tǒng)也將逐步邁向綠色化。最終,我想全人類的夢想是智能家居控制系統(tǒng)將囊括所有的家事雜物,讓我們真正的享受舒適溫馨的家庭生活。雖然智能家居經(jīng)過十幾年的蓬勃發(fā)展,很多功能已趨于完善和成熟,智能化家居系統(tǒng)的應用也越來越廣泛,然而生活中的智能家居所展現(xiàn)出的智能化,與業(yè)主所理想的智能化還存在較大差距。而這也推動了智能化技術在家居領域的縱深發(fā)展,并為各類智能化家居新產(chǎn)品的設計和研發(fā)增加了動力,同時新產(chǎn)品的出現(xiàn),也大大豐富了智能家居系統(tǒng)的厚度。因此,將智能家居作為這次研究的主要內容具有很大的現(xiàn)
9、實指導意義。本文的目的就是設計一個簡捷有效智能家居控制系統(tǒng),從溫度、濕度、光照強度的采集,到 LCD 實時顯示,并根據(jù)采集的信號不同采取相應的應對機制,智能控制家中的電燈、風扇等電器設備,從而實現(xiàn)基本的智能家居功能。2基于 Arduino 單片機的智能家居系統(tǒng) 2 系統(tǒng)總體設計方案1.5 系統(tǒng)框圖智能家居控制系統(tǒng)對整個家庭內部環(huán)境進行監(jiān)測和及時應對的系統(tǒng), 核心部分是單片機,通過與其他各監(jiān)測模塊和執(zhí)行模塊的連接,實現(xiàn)對室內環(huán)境的整體改變和各元件的控制。首先,主控元件對接收到的數(shù)據(jù)(如光線強暗,溫度高低)通過 LCD 顯示模塊進行實時顯示, 使室內情況一目了然。 然后根據(jù)各信號采集模塊傳送給單片
10、機的數(shù)據(jù),做出應對執(zhí)行,實現(xiàn)家居系統(tǒng)的智能控制。系統(tǒng)總體框圖如下:圖 2.1 系統(tǒng)總體框圖1.6 系統(tǒng)工作原理簡介本系統(tǒng)工作可以分為四個部分:第一部分是傳感器數(shù)據(jù)采集,將溫度傳感器、濕度傳感器以及光敏電阻分別連接到單片機上,單片機會將傳感器采集到的實時數(shù)據(jù)進行處理;第二部分是數(shù)據(jù)傳輸,有兩個無線模塊,一個連接到單片機上作為發(fā)射端,一個連接到單片機上作為接收端,單片機將處理過的數(shù)據(jù)通過發(fā)射端發(fā)送出去,單片機通過接收端將數(shù)據(jù)接收進來,再次進行處理;第三部分是控制功能,單片機將接收到的數(shù)據(jù)與設定的閾值進行比較,當達到閾值條件時,可以啟動風扇或者電燈,另外,溫度和光敏設定了幾個不同的閾值,當達到某一閾
11、值會有相應的風扇轉速或者電燈亮度;第四部分,溫濕度顯示,單片機將通過無線方式接收到的數(shù)據(jù)采用串口通信的方3基于 Arduino 單片機的智能家居系統(tǒng)式傳給單片機,單片機是專門用來控制 LCD1602 液晶顯示屏的,得到數(shù)據(jù)后單片機將數(shù)據(jù)傳到液晶屏進行顯示。 3 系統(tǒng)硬件設計1.7 單片機的選擇首先將所需器件羅列,根據(jù)與單片機相連的各器件,確定整個系統(tǒng)所需與單片機連接的管腳數(shù),通過查資料,選定 Arduino 單片機作為該系統(tǒng)的微控制器,因為它帶有模擬 I/O 口,在外接各類傳感器方面比普通的 51 系列單片機更為方便。 Arduino 單片機的模擬 I/O 口可以很方便地將光敏電阻和溫濕度傳感
12、器等模塊采集到的模擬量經(jīng) A/D 轉換后送給單片機進行處理,而對數(shù)字信號的識別和處理正是 Arduino 的優(yōu)勢所在。2.3 Arduino UNO 簡介Arduino UNO 是Arduino USB 接口系列的最新版本,作為 Arduino 平臺的參考標準模板。UNO 的處理器核心是 ATmega328,同時具有 14 路數(shù)字輸入 /輸出口(其中 6 路可作為 PWM 輸出),6 路模擬輸入,一個 16MHz 晶體振蕩器,一個 USB 口,一個電源插座,一個 ICSP header和一個復位按鈕。 UNO 已經(jīng)發(fā)布到第三版,與前兩版相比有以下新的特點:在AREF 處增加了兩個管腳 SDA
13、和 SCL,支持 I2C 接口;增加 IOREF 和一個預留管腳,將來擴展板將能兼容 5V 和 3.3V 核心板。這樣改進了復位電路設計, USB 接口芯片由 ATmega16U2替代了 ATmega8U2 。圖 2.2 為改進后的 Arduino UNO 。圖 2.2Arduino UNO R34基于 Arduino 單片機的智能家居系統(tǒng)1.8 Arduino 單片機特色1、開放源代碼的電路圖設計,程序開發(fā)接口免費下載,也可依需求自己修改。2、使用低價格的微處理控制器 (ATMEGA8 或 ATmega128)??梢圆捎?USB 接口供電,不需外接電源,也可以使用外部 9VDC 輸入。3、A
14、rduino 支持 ISP 在線燒,可以將新的“ bootloader”固件燒入 ATmega8 或ATmega128芯片。有了 bootloader之后,可以通過串口或者 USB to Rs232線更新固件。4、可依據(jù)官方提供的 Eagle格式 PCB 和SCH 電路圖,簡化 Arduino 模組,完成獨立運作的微處理控制??珊唵蔚嘏c傳感器,各式各樣的電子元件連接 (如:紅外線、超聲波、熱敏電阻、光敏電阻、伺服馬達等 )。5、支持多種互動程序,如: Flash、Max/Msp、VVVV 、PD、C、Processing等。6、應用方面,利用 Arduino,突破以往只能使用鼠標、鍵盤、 CC
15、D 等輸入的裝置的互動內容,可以更簡單地達成單人或多人游戲互動。1.9 Arduino 單片機引腳簡介Arduino 單片機的數(shù)字 I/O 被分成兩個部分, 其中每個部分都包含有 6 個可用的 I/O管腳,即管腳 2 到管腳 7 和管腳 8 到管腳 13。在數(shù)字電路中開關( switch)是一種基本的輸入形式,它的作用是保持電路的連接或者斷開。 Arduino 從數(shù)字 I/O 管腳上只能讀出高電平( 5V)或者低電平( 0V),因此我們首先面臨到的一個問題就是如何將開關的開/斷狀態(tài)轉變成 Arduino 能夠讀取的高 /低電平。解決的辦法是通過上 /下拉電阻,按照電路的不同通常又可以分為正邏輯
16、( Positive Logic)和負邏輯( Inverted Logic)兩種。Arduino 的優(yōu)勢在于對數(shù)字信號的識別和處理,但我們所生活的真實世界并不是數(shù)字(digital)化的,簡單到只要用 0 和 1 就能夠表示所有的現(xiàn)象。例如溫度這一我們已經(jīng)司空見慣的概念,它只能在一個范圍之內連續(xù)變化,而不可能發(fā)生像從 0 到 1 這樣的瞬時跳變,類似這樣的物理量被人們稱為是模擬( analog)的。Arduino 是無法理解這些模擬量的,它們必須在經(jīng)過模數(shù)轉換后變成數(shù)字量后,才能被 Arduino 進一步處理。5基于 Arduino 單片機的智能家居系統(tǒng)1.10 Arduino 單片機編程軟件
17、Arduino 語言是建立在 C/C+基礎上的,其實也就是基礎的 C 語言,Arduino 語言只不過把 AVR 單片機(微控制器)相關的一些寄存器參數(shù)設置等都函數(shù)化了,不用我們去了解他的底層,讓不太了解 AVR 單片機(微控制器)的朋友也能輕松上手。圖 2.3 Arduino 編程界面Arduino 語言是以 setup()開頭,loop()作為主體的一個程序構架。官方網(wǎng)站是這樣描述 setup()的:用來初始化變量, 管腳模式,調用庫函數(shù)等等, 此函數(shù)只運行一次。loop()函數(shù)是一個循環(huán)函數(shù),函數(shù)內的語句周而復始的循環(huán)執(zhí)行,功能類似 c 語言中的“main();”。2.4 溫濕度檢測模塊
18、設計智能家居的一個主要控制對象就是住戶室內溫濕度, 適宜的溫濕度為主人提供良好的家居環(huán)境,這樣一來,溫濕度檢測與控制模塊就變得尤為重要??紤]到硬件電路的復雜性,本設計中選擇 DHT11 數(shù)字溫濕度傳感器來檢測室內的溫度和濕度,這樣可以用一個傳感器檢測兩個指標,使硬件電路得以簡化。3.8 DHT11 概述DHT11 數(shù)字溫濕度傳感器是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。 它應用專用的數(shù)字模塊采集技術和溫濕度傳感技術, 確保產(chǎn)品具有極高的可靠性與卓越的6基于 Arduino 單片機的智能家居系統(tǒng)長期穩(wěn)定性。 傳感器包括一個電阻式感濕元件和一個 NTC 測溫元件, 并與一個高性能 8位單片
19、機相連接。因此該產(chǎn)品具有品質卓越、超快響應、抗干擾能力強、性價比極高等優(yōu)點。每個 DHT11 傳感器都在極為精確的濕度校驗室中進行校準。校準系數(shù)以程序的形式儲存在 OTP 內存中,傳感器內部在檢測信號的處理過程中要調用這些校準系數(shù)。單線制串行接口,使系統(tǒng)集成變得簡易快捷。超小的體積、極低的功耗,信號傳輸距離可達 20 米以上,使其成為各類應用甚至最為苛刻的應用場合的最佳選則。產(chǎn)品為 4 針單排引腳封裝。連接方便,特殊封裝形式可根據(jù)用戶需求而提供。圖 3.1 DHT11 實物圖1.11 DHT11 引腳說明引腳號引腳名稱類型引腳說明1 VCC 電源正電源輸入, 3V-5.5V DC2 Dout
20、輸出單總線,數(shù)據(jù)輸入 /輸出引腳3 NC 空空腳,擴展未用4 GND 地電源地圖 3.2 DHT11 典型應用電路7基于 Arduino 單片機的智能家居系統(tǒng)1.12 電源引腳DHT11 的供電電壓為 35.5V。傳感器上電后, 要等待 1s 以越過不穩(wěn)定狀態(tài)在此期間無需發(fā)送任何指令。電源引腳( VDD ,GND)之間可增加一個 100nF 的電容,用以去耦濾波。1.13 串行接口(單線雙向)DATA 用于微處理器與 DHT11 之間的通訊和同步,采用單總線數(shù)據(jù)格式,一次通訊時間 4ms左右,用戶 MCU 發(fā)送一次開始信號后 ,,DHT11 從低功耗模式轉換到高速模式,等待主機開始信號結束后,
21、 DHT11 發(fā)送響應信號,送出 40bit 的數(shù)據(jù),并觸發(fā)一次信號采集, 用戶可選擇讀取部分數(shù)據(jù)。 從模式下,DHT11 接收到開始信號觸發(fā)一次溫濕度采集,如果沒有接收到主機發(fā)送開始信號, DHT11 不會主動進行溫濕度采集, 采集數(shù)據(jù)后轉換到低速模式。2.5 光照檢測模塊設計光敏電阻特性是在不同光照強度下,其阻值發(fā)生變化(只要是人眼可感受的光,都會引起它的阻值變化) 。利用這一特性,我們把光敏電阻接入電路實現(xiàn)光照強度檢測。圖 3.3 光照檢測電路示意圖亮度檢測電路工作原理:我們把光敏電阻接入電路后,光敏電阻置于窗口處,由于光線的變化,其阻值也在一定時間內不斷變化,從而產(chǎn)生連續(xù)的電信號,通過
22、模擬 I/O口進入單片機。由于單片機內部自帶 A/D 轉換電路,通過相應程序,能使模擬 I/O 口傳來的電信號轉換成數(shù)字信號,單片機讀取這些數(shù)字信號,就能得出相應的光照強度,并決定是否啟動其他應對措施。8基于 Arduino 單片機的智能家居系統(tǒng)1.14 無線通信模塊設計考慮到系統(tǒng)的普遍適用性和硬件電路實現(xiàn)的難易程度,本次設計中選取 NRF24L01無線模塊作為系統(tǒng)的無線通信模塊, 該模塊既可以用于發(fā)送數(shù)據(jù), 也可以用于接收數(shù)據(jù),且易于編程操作。 NRF24L01 無線模塊主要特點如下:(1) 2.4Ghz 全球開放 ISM 頻段免許可證使用;(2) 最高工作速率 2Mbps,高效 GFSK
23、調制,抗干擾能力強,特別適合工業(yè)控制場合;(3) 126 頻道,滿足多點通信和跳頻通信需要;(4) 內置硬件 CRC 檢錯和點對多點通信地址控制;(5) 低功耗 1.9 - 3.6V 工作,待機模式下狀態(tài)為 22uA;掉電模式下為 900nA;(6) 內置 2.4Ghz 天線,體積種類多樣;(7) 模塊可軟件設地址,只有收到本機地址時才會輸出數(shù)據(jù)(提供中斷指示 ),可直接接各種單片機使用,軟件編程非常方便;(8) 內置專門穩(wěn)壓電路, 使用各種電源包括 DC/DC 開關電源均有很好的通信效果;(9) 2.54MM 間距接口, DIP 封裝;(10)工作于 Enhanced ShockBurst
24、具有 Automatic packethandling, Auto packettransaction handling,具有可選的內置包應答機制,極大的降低丟包率。1.15 液晶顯示模塊設計2.6 液晶顯示模塊的選擇LCD1602 屏幕為 2 行,每行顯示 16 個字符,為字符型顯示器,只能顯示數(shù)字和字符,不可以顯示漢字。 LCD12864 屏幕為 64 行,每行顯示 128 個字符,為點陣型顯示器,可根據(jù)需求任意顯示字符,數(shù)字,漢字和圖形。綜合價格因素和實際應用的需要,選用 LCD1602 為改家居系統(tǒng)的顯示器。 下面詳細介紹一下 LCD1602 的功能實現(xiàn)和各項參數(shù)。LCD1602 主要
25、技術參數(shù):顯示容量:16 2 個字符芯片工作電壓 :4.55.5V工作電流:2.0mA(5.0V)9基于 Arduino 單片機的智能家居系統(tǒng)模塊最佳工作電壓 :5.0V字符尺寸:2.95 4.35(W H)mmLCD1602 相比傳統(tǒng)顯示器的幾個突出優(yōu)點:(1)顯示質量高由于液晶顯示器收到信號后的每一個點都會一直保持原有亮度和顏色,恒定發(fā)光。而不像陰極射線管顯示器( CRT)那樣需要不斷刷新新亮點。因此,液晶顯示器既不會閃爍,又保證了畫質高。(2)數(shù)字式接口液晶顯示器的輸入輸出采用數(shù)字量,和主控芯片( SCM)的接口連接更加簡單可靠,操作也更為簡便。(3)重量輕,體積小液晶顯示器通過顯示屏上
26、的電極控制液晶分子狀態(tài)來達到顯示的目的,在重量上比相同顯示面積的傳統(tǒng)顯示器要輕得多。(4)功耗低相對而言,液晶顯示器的功耗主要消耗在其內部的電極和驅動 IC 上,因而耗電量比其他顯示器要少得多。LCD1602 分為帶背光和不帶背光兩種,基控制器大部分為 HD44780,帶背光的比不帶背光的厚,是否帶背光在應用中并無差別。1.16 液晶顯示電路設計圖 3.4 液晶顯示電路示意圖液晶顯示電路工作原理: 液晶顯示器 LCD1602 通過 714 管腳的數(shù)據(jù)總線與單片機進行數(shù)據(jù)傳送,單片機通過輸出高地電平來控制液晶顯示器 LCD1602 的 46 管腳配合傳送的數(shù)據(jù)決定讀 /寫數(shù)據(jù),并通過 LCD 顯
27、示屏顯示出來。期間單片機是控制元件,而LCD1602 為顯示和執(zhí)行元件。10基于 Arduino 單片機的智能家居系統(tǒng)1.17 其他模塊設計2.7 電燈模塊設計本次系統(tǒng)設計中用發(fā)光二極管 LED 來替代實際場景中的電燈。LED 發(fā)光原理發(fā)光二極管是由-族化合物, 如 GaAs(砷化鎵)、GaP(磷化鎵)、GaAsP(磷砷化鎵)等半導體制成的,其核心是 PN 結。因此它具有一般P-N 結的 I-N 特性,即正向導通,反向截止、擊穿特性。此外,在一定條件下,它還具有發(fā)光特性。在正向電壓下,電子由 N 區(qū)注入 P 區(qū),空穴由 P區(qū)注入 N 區(qū)。進入對方區(qū)域的少數(shù)載流子 (少子 )一部分與多數(shù)載流子
28、(多子 )復合而發(fā)光。假設發(fā)光是在 P 區(qū)中發(fā)生的 ,那么注入的電子與價帶空穴直接復合而發(fā)光 ,或者先被發(fā)光中心捕獲后,再與空穴復合發(fā)光。除了這種發(fā)光復合外,還有些電子被非發(fā)光中心(這個中心介于導帶、介帶中間附近)捕獲,而后再與空穴復合,每次釋放的能量不大,不能形成可見光。發(fā)光的復合量相對于非發(fā)光復合量的比例越大,光量子效率越高。由于復合是在少子擴散區(qū)內發(fā)光的,所以光僅在靠近 PN 結面數(shù) m 以內產(chǎn)生。理論和實踐證明,光的峰值波長 與發(fā)光區(qū)域的半導體材料禁帶寬度 Eg有關,即 1240/Eg(mm)式中 Eg 的單位為電子伏特 (eV)。若能產(chǎn)生可見光 (波長在 380nm紫光780nm 紅
29、光 ),半導體材料的 Eg 應在 3.261.63eV 之間。比紅光波長長的光為紅外光?,F(xiàn)在已有紅外、紅、黃、綠及藍光發(fā)光二極管,但其中藍光二極管成本、價格很高,使用不普遍。LED 的應用由于發(fā)光二極管的顏色、尺寸、形狀、發(fā)光強度及透明情況等不同,所以使用發(fā)光二極管時應根據(jù)實際需要進行恰當選擇。由于發(fā)光二極管具有最大正向電流 IFm、最大反向電壓VRm 的限制,使用時,應保證不超過此值。為安全起見,實際電流 IF 應在3.9 IFm 以下;應讓可能出現(xiàn)的反向電壓VR0。6VRm。LED 被廣泛用于種電子儀器和電子設備中 ,可作為電源指示燈、 電平指示或微光源之用。 紅外發(fā)光管常被用于電視機、
30、錄像機等的遙控器中。在連接電路時,首先應正確區(qū)分 LED 的正負極,避免正負極戒飯導致無法使用甚至燒壞元件。 LED 的兩只引腳中,長的一根為正極,短的一根為負極,連接電路時,正極接一個 220的電阻,電阻另一端接單片機的數(shù)字I/O 口,負極接地。11基于 Arduino 單片機的智能家居系統(tǒng)1.18 風扇模塊設計本設計中,采用普通的直流電機帶動扇葉來模擬實際場景中的風扇。直流風扇的兩個接線端不分正負, 一端接地,另一端接單片機數(shù)字 I/O 口即可,根據(jù)系統(tǒng)設計的要求,通過程序控制輸出到電機的電壓不同來改變電機轉速, 從而實現(xiàn)根據(jù)溫度變化和預設參數(shù)改變風扇轉速的目的。2.8 系統(tǒng)硬件實物圖根據(jù)
31、上述各模塊的硬件設計,最后做出的實物圖如下:圖3.5 模擬智能家居硬件實物圖12基于 Arduino 單片機的智能家居系統(tǒng) 4 軟件系統(tǒng)設計1.19 檢測端程序設計檢測端由單片機、光照檢測模塊、溫濕度檢測模塊和無線通信模塊組成,相應的程序包括光照檢測程序、溫濕度檢測程序和無線通信程序,部分程序如下圖所示,完整的程序在附錄中。圖 4.1 檢測端部分程序1.20 控制端程序設計控制端由單片機、液晶顯示模塊、電燈模塊、風扇模塊和無線通信模塊組成,相應的程序包括無線接收程序、串口通信程序、顯示程序、風扇和電燈控制程序,部分程序如下圖所示,完整的程序在附錄中。13基于 Arduino 單片機的智能家居系
32、統(tǒng)圖4.2 無線接收部分程序圖4.3 液晶顯示部分程序14基于 Arduino 單片機的智能家居系統(tǒng) 5 總結本次設計的模擬智能家居系統(tǒng)滿足了所有的系統(tǒng)設計要求, 完成了對溫濕度的實時監(jiān)測和現(xiàn)實,得到的最終結果誤差也在要求的范圍之內, 而且完成了根據(jù)光照強度變化、溫度變化和預設參數(shù)對電燈和風扇進行智能控制的任務,取得了令人滿意的成果。通過本次設計,使我對基于單片機的智能控制有了更多的了解和掌握,在科技飛速發(fā)展的今天,科技意味著第一生產(chǎn)力,機器智能正在越來越多的方面取代人工操作,作為智能控制在工業(yè)應用的代表性成果, 它結合了程序調控, 提供了定時控制、 計數(shù)控制、步進控制以及數(shù)據(jù)處理等多種功能,
33、具有人工作業(yè)無法比擬的優(yōu)越性和精確性。隨著科技的發(fā)展,基于單片機的智能控制功能也會不斷擴大,各項性能也將不斷提高。參考文獻1張鑫.單片機原理及應用 M. 北京:電子工業(yè)出版社, 20082童詩白,華成英.模擬電子技術基礎 M. 北京:高等教育出版社, 20013王港元.電工電子實踐指導 M. 南昌:江西科學技術出版社, 20064李朝青.PC機及單片機數(shù)據(jù)通信技術,北京,北京航空航天大學出版社, 20005藍宇電子研發(fā)團隊 .Arduino 設計M.6湯凱,劉洋,續(xù)欣.Arduino 程序設計指南 M. 北京:電子工業(yè)出版社, 20157趙光宙.信號分析與處理 M. 北京:機械工業(yè)出版社, 2
34、0108張國雄.測控電路(第四版) M. 北京:機械工業(yè)出版社, 201115基于 Arduino 單片機的智能家居系統(tǒng)附錄:源程序檢測端發(fā)送程序:#include #include #include #include #define DHT11_PIN 0 / ADC0 接到模擬口 0byte read_dht11_dat()byte i = 0;byte result = 0;for (i = 0; i 8; i+) while (!(PINC & _BV(DHT11_PIN); / wait for 50usdelayMicroseconds(30);if (PINC & _BV(DHT
35、11_PIN)result |= (1 (7 - i);while (PINC & _BV(DHT11_PIN); / wait 1 finishreturn result;void setup()DDRC |= _BV(DHT11_PIN);PORTC |= _BV(DHT11_PIN);Serial.begin(9600);Mirf.cePin = 9; /設置 CE 引腳為 D9Mirf.csnPin = 10; /設置 CE 引腳為 D10Mirf.spi = &MirfHardwareSpi;Mirf.init(); /初始化 nRF24L01/設置接收標識符 Sen01Mirf.s
36、etRADDR(byte *)Sen01);/設置一次收發(fā)的字節(jié)數(shù),這里發(fā)一個整數(shù),寫 sizeof(unsigned int) ,實際等于 2 字節(jié)Mirf.payload = sizeof(unsigned int);/發(fā)送通道,可以填 0128,收發(fā)必須一致。Mirf.channel = 5;Mirf.config();Serial.println(Im Sender.);16基于 Arduino 單片機的智能家居系統(tǒng)void loop() byte dht11_dat5;byte dht11_in;byte i;unsigned intGuangmin,WenDu,ShiDu;/ st
37、art condition/ 1. pull-down i/o pin from 18msPORTC &= _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(dht11 start condition 1 not met);return;delayMicroseconds(80);dht11_
38、in = PINC & _BV(DHT11_PIN);if (!dht11_in) Serial.println(dht11 start condition 2 not met);return;delayMicroseconds(80);/ now ready for data receptionfor (i = 0; i 8; /高八位給 data1。/設置向 serv1 發(fā)送數(shù)據(jù)Mirf.setTADDR(byte *)Rec01);Mirf.send(data);/while 死循環(huán)等待發(fā)送完畢,才能進行下一步操作。while (Mirf.isSending() 控制端無線接收程序:#i
39、nclude #include #include #include int fengshan = 6;int led = 5;/定義一個變量 adata存儲最終結果 ,oldadata 存儲舊結果,防止相同結果刷屏。unsigned int WenDu = 0, ShiDu = 0, Guangmin = 0;void setup()pinMode(fengshan, OUTPUT);pinMode(led, OUTPUT);Serial.begin(9600);Mirf.cePin = 9; / 設置 CE 引腳為 D9Mirf.csnPin = 10; / 設置 CE 引腳為 D10/-
40、初始化部分,不可隨時修改 -Mirf.spi = &MirfHardwareSpi;Mirf.init(); / 初始化 nRF24L01/- 配置部分,可以隨時修改 -/設置接收標識符 Rev01Mirf.setRADDR(byte *)Rec01);/設置一次收發(fā)的字節(jié)數(shù),這里發(fā)一個整數(shù),/寫 sizeof(unsigned int) ,實際等于 2 字節(jié)Mirf.payload = sizeof(unsigned int);/發(fā)送通道,可以填 0128,收發(fā)必須一致。18基于 Arduino 單片機的智能家居系統(tǒng)Mirf.channel = 5;Mirf.config();void lo
41、op()/定義一個暫存數(shù)組,大小為 Mirf.payload 。byte dataMirf.payload;if (Mirf.dataReady() / 等待接收數(shù)據(jù)準備好Mirf.getData(data); / 接收數(shù)據(jù)到 data 數(shù)組WenDu = (unsigned int)(data1 8) | data0);Mirf.getData(data); / 接收數(shù)據(jù)到 data 數(shù)組ShiDu = (unsigned int)(data1 8) | data0);Mirf.getData(data); / 接收數(shù)據(jù)到 data 數(shù)組Guangmin = (unsigned int)(d
42、ata1 8) | data0);sender(WenDu);sender(ShiDu);delay(1050);if (25 = WenDu = 28)analogWrite(fengshan, 51);else if (29 = WenDu = 33)analogWrite(fengshan, 255);elseanalogWrite(fengshan, 0);if (0 = Guangmin = 60)analogWrite(led, 255);else if (61= Guangmin = 120)analogWrite(led, 153);else if (121 = Guangmi
43、n = 180)analogWrite(led, 51);elsedigitalWrite(led, LOW);void sender(unsigned int x) unsigned int c, d, j ;unsigned int SHU2;c = x/10;d = x-c * 10;SHU0 = c;19基于 Arduino 單片機的智能家居系統(tǒng)SHU1 = d;for (j = 0; j 2; j+) switch (SHUj) 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:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 濟南2025年山東濟南市歷下區(qū)所屬事業(yè)單位招聘初級綜合類崗位36人筆試歷年參考題庫附帶答案詳解-1
- 黑龍江旅游職業(yè)技術學院《機車車輛運用與維修》2023-2024學年第二學期期末試卷
- 天津石油職業(yè)技術學院《信號與系統(tǒng)實驗》2023-2024學年第二學期期末試卷
- 陜西電子信息職業(yè)技術學院《生物化學雙語》2023-2024學年第二學期期末試卷
- 漳州理工職業(yè)學院《應用開發(fā)》2023-2024學年第二學期期末試卷
- 瓊臺師范學院《普通化學(Ⅰ)(上)》2023-2024學年第二學期期末試卷
- 西南民族大學《公差與測量技術》2023-2024學年第二學期期末試卷
- 湛江幼兒師范??茖W?!抖嗝襟w課件設計》2023-2024學年第二學期期末試卷
- 明達職業(yè)技術學院《學術文化與科研能力》2023-2024學年第二學期期末試卷
- 長江藝術工程職業(yè)學院《中學思想政治教育教學研究方法》2023-2024學年第二學期期末試卷
- 中國著名的塔課件
- Q∕GDW 11612.2-2018 低壓電力線高速載波通信互聯(lián)互通技術規(guī)范 第2部分:技術要求
- 公司辦公室5S管理規(guī)定(實用含圖片)
- (完整版)餐飲員工入職登記表
- 智能化工程施工工藝圖片講解
- 人教版小學五年級數(shù)學下冊教材解讀
- 2022年最新蘇教版五年級下冊科學全冊教案
- 咳嗽與咳痰課件
- 小學四年級數(shù)學奧數(shù)應用題100題
- 綜合布線驗收報告材料
- 《初三心理健康教育》ppt課件
評論
0/150
提交評論