基于stm的紅外遙控風(fēng)扇設(shè)計(jì)_第1頁
基于stm的紅外遙控風(fēng)扇設(shè)計(jì)_第2頁
基于stm的紅外遙控風(fēng)扇設(shè)計(jì)_第3頁
基于stm的紅外遙控風(fēng)扇設(shè)計(jì)_第4頁
基于stm的紅外遙控風(fēng)扇設(shè)計(jì)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、基于Android的紅外智能風(fēng)扇摘要:為了解決家用電器在遙控方面的缺陷,結(jié)合智能家居的相關(guān)概念和技術(shù),本文提出了一種基于Android手機(jī)的紅外智能風(fēng)扇設(shè)計(jì)方案。利用Android平臺(tái)的應(yīng)用軟件,將智能風(fēng)扇分為兩種模式,一種模式是手動(dòng)調(diào)節(jié)模式,通過紅外模塊把控制信號(hào)發(fā)送到STM32控制模塊,而后由主控芯片STM32控制風(fēng)扇的啟停以及速度調(diào)節(jié);另一種模式是智能模式,利用人體紅外感應(yīng)器和溫濕度傳感器,當(dāng)檢測(cè)到是否有人存在,且當(dāng)前的溫濕度(可通過設(shè)置數(shù)值大?。┦欠癯鲈O(shè)定值,風(fēng)扇將自動(dòng)開關(guān),調(diào)節(jié)風(fēng)速大小,從而實(shí)現(xiàn)智能手機(jī)遙控電器的功能。 關(guān)鍵詞 :智能家居;Android;紅外線;STM32;風(fēng)扇第

2、一章 概述目前,市面上的家用電器如電視、空調(diào)、DVD等都有自己專用的紅外遙控器;另外,還有一種叫萬能遙控器,可以實(shí)現(xiàn)控制不同品牌的家用電器。但是遙控器過多,也給用戶帶了不便,可以通過手機(jī)集成紅外遙控功能,實(shí)現(xiàn)簡(jiǎn)化。該方法通過手機(jī)發(fā)射紅外信號(hào),主控芯片接受到該紅外信號(hào)后,對(duì)與之連接各種電器設(shè)備進(jìn)行相應(yīng)控制。Android系統(tǒng)是Google公司推出的開源手機(jī)平臺(tái),采用Linux內(nèi)核,是一個(gè)標(biāo)準(zhǔn)化的、開放式的手機(jī)平臺(tái)1。它具有強(qiáng)大的無線網(wǎng)接入能力,豐富、便捷的開發(fā)工具,和開放的平臺(tái)等特點(diǎn)。STM32F1系列屬于中低端的32位ARM微控制器,該系列芯片是意法半導(dǎo)體(ST)公司出品,其內(nèi)核是Cortex

3、-M3。該控制芯片具有低功耗、高穩(wěn)定、大容量等特點(diǎn),適合多場(chǎng)合的控制應(yīng)用?;诋?dāng)前安卓智能手機(jī)的普及,為了滿足智能家居的需求,本文設(shè)計(jì)了一款基于Android手機(jī)控制的智能風(fēng)扇。把安卓智能手機(jī)作為控制平臺(tái),采用紅外通信接口,把安卓智能手機(jī)與家用電器結(jié)合在一起,從而實(shí)現(xiàn)手機(jī)的無線智能遙控的功能。另外,本文還對(duì)風(fēng)扇工作的模式進(jìn)行了拓展,使其能夠紅外遙控調(diào)節(jié)模式與智能調(diào)節(jié)模式之間切換。第二章 硬件設(shè)計(jì)2.1 方案選擇 紅外協(xié)議需要載波調(diào)制信息,設(shè)計(jì)方案有:方案一:采用555定時(shí)器調(diào)制38KHz載波信號(hào)供單片機(jī)加載信息;555 定時(shí)器成本低,性能可靠,但占空比調(diào)制困難,頻率確定無法改變。方案

4、二:采用單片機(jī)內(nèi)部的PWM機(jī)制調(diào)制38KHz載波信號(hào)加載信息;這個(gè)方案節(jié)約空間、抗噪性能強(qiáng),可隨時(shí)改變頻率與占空比,但程序不易編寫 眾多遙控器一體對(duì)數(shù)據(jù)庫(kù)存儲(chǔ)需求大,方案設(shè)計(jì)有:方案一:采用AT24Cxx擴(kuò)展外部存儲(chǔ)器;方案二:采用自帶高存儲(chǔ)容量的存儲(chǔ)器;綜合以上考慮,本設(shè)計(jì)采用STM32系列單片機(jī),這款單片機(jī)有脈寬調(diào)節(jié)模式,能滿足本方案的38KHz需求,且此單片機(jī)Flash程序存儲(chǔ)區(qū)有512K,不需要擴(kuò)展存儲(chǔ)空間也能滿足加載萬能遙控器的數(shù)據(jù)庫(kù)。功能滿足的情況下,也為了不讓硬件過剩的原則,我們采用了載波方案二和數(shù)據(jù)庫(kù)存儲(chǔ)方案二。2.2 電路設(shè)計(jì)本設(shè)計(jì)總模塊框圖圖2-1 總模塊框圖 電路設(shè)計(jì)主要

5、分為電源模塊,紅外接受模塊、STM32控制模塊、人體感應(yīng)模塊、DHT11溫濕度檢測(cè)模塊和風(fēng)扇驅(qū)動(dòng)模塊組成。其中電源模塊采用電源適配器負(fù)責(zé)為其他模塊電路提供穩(wěn)定的5V電壓。紅外模塊負(fù)責(zé)與手機(jī)紅外經(jīng)行相互通信,傳遞控制信息;單片機(jī)控制模塊負(fù)責(zé)識(shí)別以及處理從紅外模塊傳遞過來的控制信息。手機(jī)加載數(shù)據(jù)庫(kù)信息到PWM調(diào)制38KHz載波上驅(qū)動(dòng)紅外發(fā)射模塊進(jìn)行紅外波發(fā)射。2.2.1單片機(jī)模塊單片機(jī)模塊中的單片機(jī)采用STM32F103ZET6芯片,如圖2-2所示。它是基于ARM Cortex-M3核心的32 位微控制器,LQFP-144封裝,512K片內(nèi)FLASH(相當(dāng)于硬盤),64K片內(nèi)RAM(相當(dāng)于內(nèi)存,片

6、內(nèi)FLASH 支持在線編程(IAP);高達(dá)72M 的頻率,數(shù)據(jù),指令分別走不同的流水線,以確保 CPU運(yùn)行速度達(dá)到最大化;通過片內(nèi)BOOT區(qū),可實(shí)現(xiàn)串口下載程序(ISP);片內(nèi)雙RC 晶振,提供8M和32K 的頻率;支持片外高速晶振(8M),和片外低速晶振(32K).其中片外低速晶振可用于CPU的實(shí)時(shí)時(shí)鐘,帶后備電源引腳,用于掉電后的時(shí)鐘行走;42個(gè)16位的后備寄存器(可以理解為電池保存的RAM),利用外置的紐扣電池,和實(shí)現(xiàn)掉電數(shù)據(jù)保存功能;多達(dá)80個(gè)IO,4個(gè)通用定時(shí)器,2個(gè)高級(jí)定時(shí)器,2個(gè)基本定時(shí)器,3路SPI接口,2路I2S 接口,2路I2C接口,5路USART,一個(gè)USB從設(shè)備接口,一

7、個(gè) CAN接口,SDIO接口,可兼容SRAM,NOR和NAND Flash 接口的16位總線-FSMC;3路共16通道的12位AD輸入,2路共2 通道的12位 DA 輸出.支持片外獨(dú)立電壓基準(zhǔn);CPU操作電壓范圍:2.0-3.6V。圖2-2 STM32F103V單片機(jī)封裝圖時(shí)鐘電路 STM32F103ZET6芯片上有兩種時(shí)鐘源,如圖2-3所示:(1)8MHz晶振X2作為MCU的時(shí)鐘源 (2)32.768KHz晶振X1作為RTC的時(shí)鐘源圖2-3 時(shí)鐘電路電源電路本設(shè)計(jì)模塊通過USB線供電,如圖2-4所示。為保證芯片因電壓過高不被燒毀,設(shè)置一個(gè)自恢復(fù)保險(xiǎn)絲,在電路短路的情況下,自恢復(fù)保險(xiǎn)

8、絲發(fā)熱斷開,保護(hù)了硬件和電腦的USB接口免遭燒毀。圖2-4 電源模塊2.2.2紅外接收模塊本設(shè)計(jì)的紅外接收模塊是基于HL-A838紅外一體化接收頭的紅外接收模塊,電路圖如圖2-5所示。與單片機(jī)相連時(shí),接PA3引腳??山邮占t外發(fā)射模塊(內(nèi)鏈接)發(fā)來的調(diào)制成38KHz的紅外信號(hào),并解調(diào)成邏輯電平,即收到調(diào)制的紅外信號(hào)即輸出低電平,否則輸出高電平,在程序上應(yīng)用編解碼即可完成紅外遙控功能。模塊特點(diǎn)如下:低功耗、寬角度及長(zhǎng)距離接收供電電壓可為3.3V5.5V輸出匹配TTL,CMOS電平,低電平有效 4個(gè)M2螺絲定位孔,便于安裝。發(fā)射的紅外線信號(hào)是手機(jī)通過兩個(gè)并聯(lián)的紅外二極管發(fā)射的。具體實(shí)物圖如圖2-6所

9、示。圖2-5 紅外發(fā)射接收電路圖 圖2-6 本設(shè)計(jì)自制的紅外發(fā)送模塊2.2.3溫濕度檢測(cè)模塊 溫濕度檢測(cè)模塊采用DHT11溫濕度傳感器,它包括一個(gè)電阻式測(cè)濕元件和一個(gè)NTC測(cè)溫元件,并與單片機(jī)的PA4引腳相連接。通過單片機(jī)等微處理器簡(jiǎn)單的電路連接就能夠?qū)崟r(shí)的采集本地濕度和溫度。DHT11與單片機(jī)之間能采用簡(jiǎn)單的單總線進(jìn)行通信,僅僅需要一個(gè)I/O口。傳感器內(nèi)部濕度和溫度數(shù)據(jù)40Bit的數(shù)據(jù)一次性傳給單片機(jī),數(shù)據(jù)采用校驗(yàn)和方式進(jìn)行校驗(yàn),有效的保證數(shù)據(jù)傳輸?shù)臏?zhǔn)確性。DHT11功耗很低,5V電源電壓下,工作平均最大電流0.5mA。圖2-7 溫濕度傳感器的連接圖2.2.4 人體紅外感應(yīng)模塊圖2-8 人體

10、紅外感應(yīng)模塊 人體紅外感應(yīng)模塊是基于紅外線技術(shù)的自動(dòng)控制模塊,電路圖如圖2-8所示。 與單片機(jī)PA2引腳相連,電源采用5V電壓供電,其功能特點(diǎn):1、全自動(dòng)感應(yīng):人進(jìn)入其感應(yīng)范圍則輸出高電平,人離開感應(yīng)范圍則自動(dòng)延時(shí)關(guān)閉高電平,輸出低電平。2、溫度補(bǔ)償:在夏天當(dāng)環(huán)境溫度升高至3032,探測(cè)距離稍變短,溫度補(bǔ)償可作一定的性能補(bǔ)償。3、兩種觸發(fā)方式:(可跳線選擇) a、不可重復(fù)觸發(fā)方式:即感應(yīng)輸出高電平后,延時(shí)時(shí)間段一結(jié)束,輸出將自動(dòng)從高電平變成低電平; b、可重復(fù)觸發(fā)方式:即感應(yīng)輸出高電平后,在延時(shí)時(shí)間段內(nèi),如果有人體在其感應(yīng)范圍活動(dòng),其輸出將一直保持高電平,直到人離開后才延時(shí)將高電平變?yōu)榈碗娖剑?/p>

11、感應(yīng)模塊檢測(cè)到人體的每一次活動(dòng)后會(huì)自動(dòng)順延一個(gè)延時(shí)時(shí)間段,并且以最后一次活動(dòng)的時(shí)間為延時(shí)時(shí)間的起始點(diǎn))。4、具有感應(yīng)封鎖時(shí)間(默認(rèn)設(shè)置:2.5S封鎖時(shí)間):感應(yīng)模塊在每一次感應(yīng)輸出后(高電平變成低電平),可以緊跟著設(shè)置一個(gè)封鎖時(shí)間段,在此時(shí)間段內(nèi)感應(yīng)器不接受任何感應(yīng)信號(hào)。此功能可以實(shí)現(xiàn)“感應(yīng)輸出時(shí)間”和“封鎖時(shí)間”兩者的間隔工作,可應(yīng)用于間隔探測(cè)產(chǎn)品;同時(shí)此功能可有效抑制負(fù)載切換過程中產(chǎn)生的各種干擾。(此時(shí)間可設(shè)置在零點(diǎn)幾秒幾十秒鐘)。2.2.5風(fēng)扇驅(qū)動(dòng)電路風(fēng)扇電機(jī)的驅(qū)動(dòng)模塊比較簡(jiǎn)單,與紅外接受模塊的電路類似,就是主控芯片控制一個(gè)三極管的通斷實(shí)現(xiàn)對(duì)風(fēng)扇啟停。此外,可通過調(diào)制PWM波的方式對(duì)風(fēng)扇

12、的轉(zhuǎn)速進(jìn)行相應(yīng)調(diào)節(jié)。為了豐富風(fēng)扇的功能,除了紅外遙控風(fēng)扇開關(guān)和調(diào)速外,本設(shè)計(jì)引入智能控制模式,即無需手動(dòng)調(diào)節(jié),通過人體感應(yīng)傳感器和DHT11溫濕度傳感器檢測(cè)風(fēng)扇下有無人員,及當(dāng)前溫度和濕度。在檢測(cè)到有人的前提下,主控芯片根據(jù)當(dāng)前的溫度和濕度值給出相應(yīng)的PWM來控制風(fēng)扇電機(jī)的轉(zhuǎn)速,實(shí)現(xiàn)風(fēng)扇電機(jī)的智能運(yùn)行。系統(tǒng)的總體實(shí)物圖如2-9所示。圖2-9 系統(tǒng)設(shè)計(jì)實(shí)物圖第三章 遙控器軟件設(shè)計(jì)STM32程序主要是用來接收、分析、處理紅外模塊過來的數(shù)據(jù),完成以后通過給出相應(yīng)的控制信號(hào)到電器上,最終達(dá)到遙控電器的目的。3.1遙控器軟件流程框圖軟件采用模塊化編程,把系統(tǒng)運(yùn)行分成兩種模式:智能模式:用戶無需調(diào)節(jié)風(fēng)扇,

13、主控芯片會(huì)對(duì)人體傳感器與DHT11傳感器的信號(hào)處理,并根據(jù)其給出相應(yīng)的速度信號(hào)給風(fēng)扇。手動(dòng)控制模式:該模式下,用戶可以通過手機(jī)對(duì)風(fēng)扇的啟停、速度進(jìn)行調(diào)節(jié)控制另外,兩種模式間的切換只需要手機(jī)應(yīng)用端調(diào)節(jié)。圖3-1 遙控器軟件流程框圖3.2紅外編碼程序 本軟件包含了3種紅外編碼格式:三星的TC9012,松下的LC7464M和NEC的uPD6121G。受篇幅限制,這里主要介紹TC9012編碼。 1、紅外載波程序TC9012載波要求:頻率 38KHz 占空比 1/3 圖3-2載波波形參考圖:38KHz 1/3 載波實(shí)測(cè)波形圖:38.46KHz 1/3占空比由載波實(shí)測(cè)波形圖可以看出,實(shí)測(cè)波形與參考波形頻率

14、誤差為1.2%,占空比誤差為-0.6%,滿足TC9012載波要求,說明我們用PWM產(chǎn)生的38KHz載波的程序是正確的,下面是具體的程序代碼。38KHz載波核心代碼:SYSclk = 22118400Hz,PWM0頻率為:SYSclk /(65536-TH0,TL0)/64= 22118400 /(65536-TH0,TL0)/64=38400Hz 2、紅外發(fā)送數(shù)據(jù)程序 TC9012的一幀數(shù)據(jù)中含有32位碼,包含兩次8位用戶碼,8位數(shù)據(jù)碼各8位數(shù)據(jù)碼的反碼。引導(dǎo)碼由4.5ms的載波和4.5的載波關(guān)斷波形所構(gòu)成,以作為用戶碼、數(shù)據(jù)碼的先導(dǎo)。圖3-3 引導(dǎo)碼參考圖 圖3-4 引導(dǎo)碼實(shí)測(cè):有載波4.5

15、2ms 圖3-5引導(dǎo)碼實(shí)測(cè):無載波4.52ms 由以上兩實(shí)測(cè)圖可以看到,引導(dǎo)碼有載波誤差0.4%,無載波誤差0.4%,是滿足TC9012引導(dǎo)碼開載波4.5ms+關(guān)載波4.5ms的要求的。圖3-6 數(shù)據(jù)0實(shí)測(cè):高電平0.56ms 圖3-7 數(shù)據(jù)0實(shí)測(cè):高低電平總長(zhǎng) 1.14ms由以上兩實(shí)測(cè)圖可以看到,數(shù)據(jù)0高電平誤差0%,高低電平總長(zhǎng)誤差1.3%,是滿足TC9012數(shù)據(jù)0高0.56ms,總長(zhǎng)1.125ms的要求的。 圖3-8數(shù)據(jù)1實(shí)測(cè):高電平0.56ms 圖3-9 數(shù)據(jù)1實(shí)測(cè):高低電平總長(zhǎng)2.26ms由以上兩實(shí)測(cè)圖可以看到,數(shù)據(jù)0高電平誤差0%,高低電平總長(zhǎng)誤差0.4%,是滿足TC9012數(shù)據(jù)1

16、高0.56ms,總長(zhǎng)2.25ms的要求的。第四章 Android應(yīng)用軟件設(shè)計(jì)本應(yīng)用軟件的設(shè)計(jì)是為了使我們的手機(jī)能夠發(fā)射紅外信號(hào)給主控芯片,從而實(shí)現(xiàn)遠(yuǎn)程控制目的。開發(fā)工具 :Eclipse集成開發(fā)環(huán)境,JDK,Android-SDK。編譯版本:android2.3.3。4.1 Android應(yīng)用流程介紹下面是應(yīng)用的具體流程;圖4-1應(yīng)用流程圖圖4-2 應(yīng)用界面4.2 資源規(guī)劃和權(quán)限配置為了兼容不同手機(jī)屏幕尺寸和分辨率,放了三套不同分辨率和尺寸的圖片分放在res/drawable-hdpi,res/drawable-mdpi,res/drawable-xhdpi目錄。 本應(yīng)用設(shè)計(jì)用到本地紅外適配器

17、功能,多分辨率支持功能,窗體縱向顯示功能的使用,在AndroidMainfest.xml中添加允許使用紅外功能的權(quán)限<uses-permission android:name="android.permission.BLUETOOTH"/><uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>。并且界面的窗體均為縱向顯示,這里設(shè)置窗體顯示通過<activity>標(biāo)簽屬性 android:screenOrientation=“portrai

18、t”。設(shè)置多屏幕分辨率支持<supports-screens android:smallScreens="true" android:normalScreens="true" android:largeScreens="true" android:anyDensity="true" />4.3 歡迎窗體的設(shè)計(jì)與實(shí)現(xiàn)應(yīng)用啟動(dòng)后是一個(gè)歡迎窗體,歡迎窗體全屏顯示,3秒鐘后自動(dòng)跳轉(zhuǎn)到TV主窗體。歡迎窗體的實(shí)現(xiàn):1) 在onCreate()方法中初始化窗體信息,加載background為drawable目錄下的w

19、elcome圖片的布局文件activity_welcom.xml。2) 創(chuàng)建一個(gè)線程類實(shí)現(xiàn)3秒后自動(dòng)跳轉(zhuǎn)。4.4紅外服務(wù)紅外服務(wù)是一個(gè)service類,提供紅外的連接,狀態(tài)反饋,線程讀寫數(shù)據(jù),啟動(dòng)和停止方法。紅外連接: device.createRfcommSocketToServiceRecord(MY_UUID)獲取套接口,mySocket.connect()套接口遠(yuǎn)程連接遙控器。并且通過bundler傳遞message給UI界面更新。獲取連接狀態(tài)方法:返回當(dāng)前紅外服務(wù)的狀態(tài)。Start和Stop方法:線程的初始化和關(guān)閉線程。同步Write方法:防止多線程的干擾,采用關(guān)鍵字synchron

20、ized同步寫方法。創(chuàng)建一個(gè)線程類,傳遞參數(shù)byte寫到套接口的字節(jié)流outputstream中。第五章 實(shí)物調(diào)試5.1 手動(dòng)控制模式手動(dòng)控制模式下風(fēng)扇的啟停與速度調(diào)節(jié)實(shí)驗(yàn)測(cè)試圖如圖所示: 圖5-1 風(fēng)扇停止工作與正常工作圖5-3 上位機(jī)顯示風(fēng)扇手動(dòng)模式下各工作狀態(tài)5.2智能模式智能模式下風(fēng)扇的啟停與速度自動(dòng)調(diào)節(jié)實(shí)驗(yàn)測(cè)試圖如圖所示: 圖5-1 風(fēng)扇智能模式下的啟停圖5-3 上位機(jī)顯示智能模式下風(fēng)扇運(yùn)行狀況第六章 總結(jié)本文設(shè)計(jì)的基于Android的紅外智能風(fēng)扇,通過手機(jī)客戶端發(fā)射紅外信號(hào)給STM32主控芯片,對(duì)系統(tǒng)進(jìn)行各種操作,能夠?qū)崿F(xiàn)對(duì)風(fēng)扇的手動(dòng)調(diào)節(jié)控制,并能夠進(jìn)行模式切換。實(shí)驗(yàn)調(diào)試能夠?qū)崿F(xiàn)各模式的功能,基本滿足預(yù)期實(shí)驗(yàn)要求?;诎沧渴謾C(jī)的智能遙控器設(shè)計(jì)新穎,實(shí)用方便,倡導(dǎo)綠色、環(huán)保的生活理念,具有經(jīng)濟(jì)、社會(huì)效益。從用戶的角度出發(fā),多功能、低成本、強(qiáng)適應(yīng)和人性化使得該產(chǎn)品將會(huì)獲得發(fā)展契機(jī)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論