資源描述:
《基于android的智能家電控制器的設(shè)計與實(shí)現(xiàn)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、基于Android的智能家電控制器的設(shè)計與實(shí)現(xiàn)劉章良(上海第二工業(yè)大學(xué)計算機(jī)與信息學(xué)院)【內(nèi)容摘要】:此項(xiàng)目通過一個簡單低成本中間件,實(shí)現(xiàn)便攜智能設(shè)備與現(xiàn)在家庭中已有的通過紅外控制家電之間經(jīng)行通訊,實(shí)現(xiàn)不用任何改造,無需購買昂貴的終端,通過已有的便攜智能設(shè)備安裝對應(yīng)APP,既可以直接智能控制家中任意家電。家庭中的燈具,廚具等都稍加改造即亦可以通過你的智能終端控制?!娟P(guān)鍵詞】: 智能家控智能終端APP通訊安卓一、項(xiàng)目背景(創(chuàng)作意圖)隨著智能終端越來越普及,它給帶來的人機(jī)交互感徹底的顛覆了傳統(tǒng)的概念。人們對于智能和人機(jī)交互的控制感覺有了更深的體驗(yàn),對于智能的追求又到了一個新的紀(jì)元。智能家電控制
2、在電子興起的時候就被人們所提起過,并有好多人為此努力過,但是現(xiàn)在仍然處在一個很低的階段,如家電單一的遙控功能,窗簾按鈕等等都是。而且目前各個廠家各種不同規(guī)格的,不同通訊協(xié)議,在現(xiàn)在這個狀態(tài)很難統(tǒng)一。所以根據(jù)現(xiàn)在的情況我們制作一個中間產(chǎn)品連接起現(xiàn)有的家電和智能終端,達(dá)到通過最簡單途徑實(shí)現(xiàn)智能家電控制的任務(wù)能達(dá)到很好的交互體驗(yàn)。二、實(shí)現(xiàn)目標(biāo)1.設(shè)計一個小巧中間件里面包括MCU控制面板,與智能終端通訊的藍(lán)牙模塊,與家電通訊的紅外通訊模塊,紅外模塊具有自我學(xué)習(xí)功能能通過對特定遙控學(xué)習(xí)并把它存儲在智能終端上以便下次繼續(xù)使用。2.設(shè)計安卓智能操作系統(tǒng)終端APP,能很好實(shí)現(xiàn)的人機(jī)體驗(yàn)通過文件系統(tǒng)根據(jù)擬定
3、的協(xié)議與單片機(jī)通訊,根據(jù)不同家電給定特定的偽代碼能夠使單片機(jī)產(chǎn)生特定的通訊格式完成對不同家電的控制,間接實(shí)現(xiàn)家電通訊的統(tǒng)一,省去家庭中幾乎所有遙控器使得一個終端遙控所有的功能,APP具有上網(wǎng)更新及下載資料功能,提供學(xué)習(xí)到遙控代碼的功能。通過APP嵌入銷售信息增加對產(chǎn)品的銷售,APP使用量也是一筆很多財富。圖1功能示意圖三、硬件設(shè)計71.MCUSTC89C52簡介 STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有
4、靈巧的8位CPU和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM,32位I/O口線,看門狗定時器,內(nèi)置4KBEEPROM,MAX810復(fù)位電路,3個16位定時器/計數(shù)器,4個外部中斷,一個7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu)),全雙工串行口。另外STC89C52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個中斷
5、或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選 2.藍(lán)牙通訊該項(xiàng)目采用的是低功耗透明傳輸?shù)乃{(lán)牙從機(jī)模塊HC-07,主要應(yīng)用方面是用于單片機(jī)跟電腦或者手機(jī)配對通訊。從機(jī)是被動設(shè)備,只能等待手機(jī)或者電腦去配對它,它不可以主動去搜索周圍的藍(lán)牙設(shè)備。從機(jī)模塊是透明串口,不需要單片機(jī)去做任何配置,也不用管藍(lán)牙的任何事情。對于單片機(jī)來講,模就是根串口線,手機(jī)配對連接了模塊,就相當(dāng)于手機(jī)跟單片機(jī)之間有根串口線連著了,直接串口通訊就行了。這樣簡化了開發(fā)過程如果一門的去考慮藍(lán)牙的東西,就會是開發(fā)非常的復(fù)雜。用的方法是給模塊連接電源,因?yàn)槭褂脝纹瑱C(jī)是5V所以則連接模塊的5V排針接口。然后把模塊的通信
6、線RXDTXD連接到單片機(jī)的TXD和RXD,另外兩個引腳AT是給主從一體用發(fā)送AT指令用的的,RS是給模塊復(fù)位的,正常通訊不用連接。TX:傳送數(shù)據(jù)RX:接收數(shù)據(jù)5V:提供5V電源3.3V:提供3.3V電源RS:復(fù)位引腳GND:地線AT:AT指令圖2藍(lán)牙模塊底片圖7圖3HC-07藍(lán)牙模塊實(shí)物圖3.紅外學(xué)習(xí)遙控接收電路設(shè)計所有紅外遙控器的輸出都是用編碼后的串行數(shù)據(jù)對38kHz~40kHz的方波進(jìn)行脈沖幅度調(diào)制而產(chǎn)生的。如果直接對已調(diào)波進(jìn)行測量,而其脈寬只有20多微秒,由于單片機(jī)的指令周期是微秒級,會產(chǎn)生很大的誤差。因此,先要對已調(diào)波進(jìn)行解調(diào),對解調(diào)后的波形進(jìn)行測量。將CX20106或一體化紅外
7、接收頭解調(diào)出的遙控編碼脈沖直接連入STC89C52單片機(jī)的INT0和T0腳,定時器T0和T1都初始化為定時工作方式1,T0的GATE位置位。每次外部中斷首先停止定時,記錄T0、T1的計數(shù)值,然后將T0、T1的計數(shù)值清零,并重新啟動定時。T0的值即為高電平脈寬,T1~T0的值為低電平脈寬。T0、T1與紅外編碼信號脈寬的對應(yīng)關(guān)系并且存儲到外部儲蓄器24C256中等待發(fā)送調(diào)用。圖4紅外學(xué)習(xí)遙控接收電路設(shè)計4.紅外學(xué)習(xí)遙控發(fā)送電