李洪璠 劉柏峰 胡俊杰
(1.三亞學(xué)院,海南三亞 572022;2.91458部隊(duì),海南三亞 572021)
現(xiàn)代家庭中生活質(zhì)量的不斷提高,家電的遠(yuǎn)程智能控制成為迫切的需求,將信息技術(shù)和家電技術(shù)相融合,在更大程度上實(shí)現(xiàn)家庭生活的信息化和智能化,滿足人們舒適、高節(jié)奏的生活需要,使所有的消費(fèi)電子類產(chǎn)品具備連入網(wǎng)絡(luò)的能力[1]。家電遠(yuǎn)程無(wú)線控制系統(tǒng)的研究目標(biāo),以Android智能手機(jī)作為家電控制終端,單片機(jī)主控制器作為數(shù)據(jù)處理和輸出控制設(shè)備指令,Wi-Fi數(shù)據(jù)透?jìng)髂=M作為網(wǎng)絡(luò)互聯(lián)接口,并在其基礎(chǔ)上通過(guò)Wi-Fi無(wú)線通信方式實(shí)現(xiàn)手機(jī)控制終端與家電設(shè)備的互聯(lián)[2]。
(1)系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì):控制系統(tǒng)主要由MCU模塊、電源模塊、監(jiān)測(cè)模塊、Wi-Fi無(wú)線數(shù)據(jù)模塊、繼電器模塊、手機(jī)app和云服務(wù)平臺(tái)這七部分組成,該控制系統(tǒng)的主控芯片采用STC89C51系列單片機(jī),其中主控單片機(jī)負(fù)責(zé)采集監(jiān)控模塊數(shù)據(jù)(各家電設(shè)備的狀態(tài)),經(jīng)過(guò)分析處理后,通過(guò)串口Wi-Fi數(shù)據(jù)透?jìng)靼l(fā)送至機(jī)智云服務(wù)平臺(tái),云服務(wù)平臺(tái)再將數(shù)據(jù)傳輸至手機(jī)APP,在手機(jī)上顯示各家電設(shè)備實(shí)時(shí)狀態(tài),并通過(guò)可視化操作界面控制開關(guān),實(shí)現(xiàn)遠(yuǎn)程對(duì)多個(gè)家電的控制。系統(tǒng)總體結(jié)構(gòu)如圖1所示。
(2)主控單片機(jī)(MCU)模塊:負(fù)責(zé)讀取所有家電設(shè)備的開關(guān)狀態(tài):監(jiān)測(cè)模塊的數(shù)據(jù)(溫度、濕度、電壓、電流、運(yùn)行時(shí)間、機(jī)型信息等)。并通過(guò)串口發(fā)送至Wi-Fi無(wú)線數(shù)據(jù)模塊。通過(guò)串口發(fā)送入網(wǎng)指令至Wi-Fi無(wú)線數(shù)據(jù)模塊使其連接云服務(wù)器;通過(guò)串口接收Wi-Fi無(wú)線數(shù)據(jù)模塊發(fā)送來(lái)的指令數(shù)據(jù),并進(jìn)行處理,提取其中的控制信息并輸出控制信號(hào)來(lái)控制家電設(shè)備。
圖1 系統(tǒng)結(jié)構(gòu)框圖
(3)電源模塊:選用LM1117T-3.3做穩(wěn)壓模塊,負(fù)責(zé)將輸入的直流+5V電壓轉(zhuǎn)換成+3.3V電壓,并輸出穩(wěn)定電壓和濾除直流電波動(dòng),給MCU模塊(51單片機(jī))、電源模塊、監(jiān)測(cè)模塊、Wi-Fi無(wú)線數(shù)據(jù)模塊、繼電器模塊、供電。在實(shí)際電路中,采用USB接口+5V供電,可經(jīng)過(guò)電源適配器用USB數(shù)據(jù)線輸入。加入LED指示電源通電狀態(tài),使用0.01uF和47uF電容穩(wěn)定電壓和濾除直流電波動(dòng)。
(4)監(jiān)測(cè)模塊負(fù)責(zé)監(jiān)測(cè)溫度、濕度、電壓、電流、運(yùn)行時(shí)間、機(jī)型信息等,占用單片機(jī)一個(gè)I/O端口,將所測(cè)得的信息轉(zhuǎn)換數(shù)字化信號(hào),以數(shù)碼方式串行輸出至主控單片機(jī)。
(5)Wi-Fi無(wú)線數(shù)據(jù)模塊負(fù)責(zé)連接家用路由器發(fā)出的無(wú)線Wi-Fi建立與云服務(wù)平臺(tái)的通信連接;接收云服務(wù)平臺(tái)發(fā)送的指令;轉(zhuǎn)發(fā)主控單片機(jī)發(fā)出的指令至云服務(wù)平臺(tái);選用ESP8266一款超低功耗的UART-Wi-Fi透?jìng)髂K,擁有微型封裝尺寸和超低能耗技術(shù),專為移動(dòng)設(shè)備和物聯(lián)網(wǎng)設(shè)備設(shè)計(jì),可將用戶的物理設(shè)備連接到Wi-Fi無(wú)線網(wǎng)絡(luò)上,進(jìn)行廣域網(wǎng)或局域網(wǎng)通信,實(shí)現(xiàn)聯(lián)網(wǎng)功能[3]。當(dāng)接入機(jī)智云服務(wù)平臺(tái),需要將ESP8266燒寫GAgent固件,在機(jī)智云服務(wù)平臺(tái)可下載該固件,并通過(guò)改變Wi-Fi模塊接線以進(jìn)入燒寫模式,再使用專用的燒寫工具串口燒寫固件至Wi-Fi模塊中。GAgent主要用于是數(shù)據(jù)轉(zhuǎn)發(fā),是機(jī)智云、設(shè)備數(shù)據(jù)、應(yīng)用端的數(shù)據(jù)交換橋梁。
(6)繼電器模塊接收主控單片機(jī)發(fā)出的控制信號(hào),導(dǎo)通或斷開PNP三極管使繼電器吸合導(dǎo)通或彈回?cái)嚅_,導(dǎo)通另一條電路回路至接線端子,回路可接直流或交流,即模擬控制家電插座。文中繼電器模塊采用+5V驅(qū)動(dòng)的SRD-5VDC繼電器,可吸合接通AC220V,即可用于開關(guān)家用電器。由于單片機(jī)引腳輸出電流能力低,輸入電流能力強(qiáng),低電平驅(qū)動(dòng),需要采用PNP三極管驅(qū)動(dòng)繼電器吸合,論文采用常見的S8550PNP三極管。因?yàn)槔^電器線圈工作在直流電下,需要反向并聯(lián)一個(gè)續(xù)流二極管,防止繼電器的線圈在通斷電時(shí)產(chǎn)生的反電勢(shì),損壞元器件。拉低單片機(jī)對(duì)應(yīng)引腳,三極管導(dǎo)通,繼電器吸合;拉高單片機(jī)對(duì)應(yīng)引腳,三極管截止,繼電器恢復(fù)原狀。
(7)云服務(wù)平臺(tái)負(fù)責(zé)Android軟件發(fā)送至云端數(shù)據(jù)的接收并存儲(chǔ);如果設(shè)備在線,將云端存儲(chǔ)的數(shù)據(jù)傳輸至Wi-Fi無(wú)線數(shù)據(jù)模塊。機(jī)智云平臺(tái)通過(guò)自助工具、完善的SDK與API服務(wù)能力最大限度降低了物聯(lián)網(wǎng)硬件開發(fā)的技術(shù)門檻,提供開放的云端服務(wù),降低開發(fā)者的研發(fā)成本,提升開發(fā)者的產(chǎn)品投產(chǎn)速度,幫助開發(fā)者進(jìn)行硬件智能化升級(jí),更好的連接、服務(wù)最終消費(fèi)者[4]。更重要的是機(jī)智云提供了APPSDK、開源框架、微信SDK,便于開發(fā)者快速構(gòu)建手機(jī)應(yīng)用端系統(tǒng),只需根據(jù)工具指引實(shí)現(xiàn)業(yè)務(wù)功能,無(wú)需實(shí)現(xiàn)底層功能。
圖2 云服務(wù)平臺(tái)虛擬設(shè)備和手機(jī)端調(diào)試仿真通信
圖3 設(shè)備狀態(tài)的實(shí)時(shí)獲取和控制測(cè)試
由于Wi-Fi無(wú)線通信模塊無(wú)法在Proteus環(huán)境下進(jìn)行通信仿真,僅對(duì)硬件開關(guān)和溫度顯示部分進(jìn)行仿真,并在仿真中加入LED來(lái)模擬家用燈。其通信部分需要在機(jī)智云開發(fā)者平臺(tái)用虛擬設(shè)備進(jìn)行通信仿真。通過(guò)設(shè)置P1口的控制開關(guān)閉合和DS18B20溫度模塊的讀取,仿真能夠正常運(yùn)行,控制對(duì)應(yīng)的繼電器和LED燈開關(guān),并在LCD屏上顯示出正確的溫度。可以通過(guò)擴(kuò)展口再接濕度傳感器,同時(shí)監(jiān)測(cè)溫濕度。
機(jī)智云在線調(diào)試虛擬設(shè)備,可以模擬設(shè)備上報(bào)數(shù)據(jù),并用其調(diào)試軟件DemoAPP模擬仿真整個(gè)通信過(guò)程,可查看其通信日志,得出各個(gè)控制按鈕上傳至機(jī)智云服務(wù)平臺(tái)的通信格式,這是單片機(jī)編程對(duì)應(yīng)上云服務(wù)器數(shù)據(jù)點(diǎn)的極其關(guān)鍵一步。
云服務(wù)平臺(tái)虛擬設(shè)備和手機(jī)端調(diào)試仿真通信如圖2所示,當(dāng)按開啟LED0/LED2/插座2時(shí),云端服務(wù)器都會(huì)接收到APP發(fā)送的數(shù)據(jù),并存儲(chǔ)在服務(wù)器上,而設(shè)備也會(huì)定時(shí)推送自己的狀態(tài)至云端服務(wù)器上,手機(jī)APP刷新獲取云端服務(wù)器上的數(shù)據(jù),就能在手機(jī)上顯示設(shè)備的實(shí)時(shí)狀態(tài)。
(1)Android手機(jī)軟件與云服務(wù)平臺(tái)的遠(yuǎn)程通信測(cè)試。編譯生成的APP與云服務(wù)平臺(tái)通信日志,使用生成的家庭中控網(wǎng)關(guān)APP能夠正常的與云服務(wù)平臺(tái)通信。
(2)云服務(wù)平臺(tái)與硬件系統(tǒng)的遠(yuǎn)程通信測(cè)試。通過(guò)機(jī)智云串口調(diào)試助手,建立云平臺(tái)與硬件系統(tǒng)遠(yuǎn)程通信日志,云服務(wù)平臺(tái)能夠正常的與硬件系統(tǒng)通信,且硬件成功地連接上云服務(wù)平臺(tái)進(jìn)行通信。
(3)設(shè)備狀態(tài)的實(shí)時(shí)獲取和控制測(cè)試。設(shè)備狀態(tài)的實(shí)時(shí)獲取和控制測(cè)試如圖3所示,家庭中控網(wǎng)關(guān)APP能夠獲取設(shè)備返回至云平臺(tái)上的數(shù)據(jù),正常讀取到測(cè)試溫度和設(shè)備開關(guān)的變化,并通過(guò)點(diǎn)擊開關(guān)控制對(duì)應(yīng)設(shè)備接口。
以STC89C51單片機(jī)為主控芯片的控制系統(tǒng),通過(guò)采集溫度傳感器的輸出和監(jiān)測(cè)的各家電設(shè)備的狀態(tài),經(jīng)過(guò)分析處理后,通過(guò)串口Wi-Fi數(shù)據(jù)透?jìng)髂=M發(fā)送至機(jī)智云服務(wù)平臺(tái),云服務(wù)平臺(tái)再將數(shù)據(jù)傳輸至手機(jī)APP,在手機(jī)上顯示各家電設(shè)備實(shí)時(shí)狀態(tài)以及室內(nèi)溫度,并通過(guò)可視化操作界面控制開關(guān),實(shí)現(xiàn)遠(yuǎn)程對(duì)多個(gè)家電的控制。測(cè)試表明,在網(wǎng)絡(luò)正常情況下,給硬件系統(tǒng)上電,系統(tǒng)立即連接至云服務(wù),等待指令并上傳設(shè)備狀態(tài)。如果網(wǎng)絡(luò)掉線,系統(tǒng)一直發(fā)出連接心跳,待網(wǎng)絡(luò)正常后系統(tǒng)會(huì)重新連接至云服務(wù),系統(tǒng)控制延遲小于0.2s,控制性良好,還具有成本低、耗電低、實(shí)時(shí)接入、高穩(wěn)定性等特點(diǎn)。
[1]汪剛,張福斌,陳宇航,張永清.一種遠(yuǎn)程智能家電控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)械與電子,2010,(11):51-53.
[2]朱欣穎,陳曦.基于WIFI智能家居控制系統(tǒng)的設(shè)計(jì)[J].智能計(jì)算機(jī)與用,2014,4(06):80-82.
[3]傅緯球,胡兵.DTU透?jìng)髂J窖芯縖J].科技信息,2011,(03):490-492.
[4]謝健驪.物聯(lián)網(wǎng)無(wú)線通信技術(shù)[M].成都:西南交通大學(xué)出版社,2013,134-148.