陳國童,邱興陽
(1.寧德師范學(xué)院 信息與機(jī)電工程學(xué)院,福建 寧德 352100;2.湄洲灣職業(yè)技術(shù)學(xué)院 自動化工程系,福建 莆田 351200)
隨著計算機(jī)技術(shù)、通信技術(shù)的發(fā)展,以及人們的物質(zhì)生活水平的不斷提高,使得人們對家居環(huán)境提出了更高的要求,主要表現(xiàn)在居住環(huán)境的舒適化、家居生活的安全化、家居生活的人性化以及家居產(chǎn)品的智能化等方面[1,2].目前各類智能化設(shè)備已經(jīng)被廣泛應(yīng)用于人們的日常生活、工作及學(xué)習(xí)當(dāng)中.智能家居的設(shè)計理念正是在這樣的環(huán)境下應(yīng)運(yùn)而生的,家居產(chǎn)品通過與手機(jī)、平板、網(wǎng)絡(luò)通信等手段結(jié)合,使得控制更加網(wǎng)絡(luò)化、智能化[3,4].
互聯(lián)網(wǎng)技術(shù)和WIFI技術(shù)的不斷進(jìn)步,使WIFI成為目前應(yīng)用最普遍的無線通信方式之一,居民已經(jīng)越來越離不開WIFI無線數(shù)據(jù)傳輸技術(shù),利用WIFI進(jìn)行家居的智能控制也成為當(dāng)前研究的熱點(diǎn),智能家居系統(tǒng)的工作方式就是利用手機(jī)、平板等終端來發(fā)出相應(yīng)的控制指令,經(jīng)過各種基于信號接收和發(fā)送功能的傳感器來控制家用電器設(shè)備,從而實(shí)現(xiàn)對設(shè)備的遠(yuǎn)程無線控制[5-7].本文介紹的是基于WIFI技術(shù),通過ESP8266模塊把STM32連接到外網(wǎng),然后由手機(jī)的APP發(fā)送控制指令,ESP8266串口WIFI模塊接收到指令后,再向STM32發(fā)送信號,STM32經(jīng)過對信號的處理,通過繼電器或紅外遙控等方式對相應(yīng)的電器設(shè)備發(fā)出功能指令,控制電器設(shè)備的通斷或進(jìn)行調(diào)節(jié),形成一個無線智能控制通信網(wǎng)絡(luò).
圖1 系統(tǒng)的硬件構(gòu)成框圖
系統(tǒng)硬件組成如圖1所示,主要由智能控制終端(手機(jī)或IPAD)、WIFI通信、中央處理單元MCU、信號采集模塊、各類家用電器等幾部分構(gòu)成.本系統(tǒng)是通過ESP8266串口WIFI模塊將STM32中央處理單元連接到外網(wǎng),而手機(jī)上的APP基于TCP/IP通信協(xié)議,通過其WIFI功能與ESP8266串口WIFI模塊建立通信,其中ESP8266串口WIFI模塊作為服務(wù)器端+路由器(SERVER+AP).首先由手機(jī)上的APP發(fā)出控制指令,串口WIFI模塊ESP8266接收手機(jī)APP發(fā)送的控制指令并對其進(jìn)行解析,再向STM32中央處理單元發(fā)送信號,由MCU去控制各類家用電器開啟、調(diào)節(jié)或關(guān)閉,各類家電的運(yùn)行狀態(tài)將通過WIFI模塊上傳到云服務(wù)器,實(shí)時在手機(jī)上顯示各類家電的最新狀態(tài).信號采集模塊用來獲取家用電器設(shè)備所處環(huán)境的溫濕度、光強(qiáng)、紅外及煙霧參數(shù),這些參數(shù)經(jīng)MCU處理也能通過串口WIFI模塊上傳到云服務(wù)器,在手機(jī)上能夠?qū)崟r了解家里各類環(huán)境信息,以便提前對家用電器進(jìn)行遠(yuǎn)程控制.
本系統(tǒng)使用型號為ESP8266串口WIFI模塊,是一款超低功耗的UART-WIFI透傳模塊,擁有高性能無線SOC,專為移動設(shè)備和物聯(lián)網(wǎng)應(yīng)用設(shè)計,能以低成本提供最大的實(shí)用性,可將智能家居中所要控制的設(shè)備全部接入WIFI無線網(wǎng)絡(luò),然后通過互聯(lián)網(wǎng)或局域網(wǎng)進(jìn)行通信,實(shí)現(xiàn)無線聯(lián)網(wǎng)功能[8].該模塊是一個完整且自成體系的無線網(wǎng)絡(luò)通信方案,能獨(dú)自運(yùn)行,也能當(dāng)作從機(jī)搭載于其它主機(jī)的MCU上運(yùn)行,支持無線802.11通信協(xié)議以及內(nèi)置TCP/IP通信協(xié)議,可以支持TCP Client多路連接.模塊具有AP/STA/AP+STA三種工作模式.無線模塊的作用是讓控制系統(tǒng)與網(wǎng)絡(luò)連接,完成無線信號與串口信號之間的轉(zhuǎn)換,本系統(tǒng)采用AP+STA組網(wǎng)模式,目的是為了讓系統(tǒng)既可以通過手機(jī)直連也可以通過無線路由器連接達(dá)到對智能家居的遠(yuǎn)程控制[9,10].
本系統(tǒng)的MCU采用STM32F103VE芯片,是ST公司一款常用的增強(qiáng)型系列微控制器,功耗超低.使用ARM Cortex-M3處理器內(nèi)核,最高工作頻率可達(dá)72 MHz,1.25 DMIPS/MHz.能夠支持CAN、I2C、SPI、USB、SDIO、UART/USART等通訊協(xié)議,其外圍設(shè)備包括DMA、PWM、PDR、POR、PVD、WDT、溫度傳感器等80個可設(shè)置的GPIO,有512 Kb的程序儲存容量和64 K的RAM容量,還內(nèi)含3通道16×12位的模數(shù)轉(zhuǎn)換和1 μs的雙12位數(shù)模轉(zhuǎn)換,故此處理器可滿足系統(tǒng)的設(shè)計需求.系統(tǒng)的部分主控電路如圖2所示.
圖2 部分主控電路圖
1.3.1 溫濕度檢測
溫濕度檢測采用DHT11溫濕檢測傳感器,DHT11能夠直接輸出已校準(zhǔn)的數(shù)字信號,應(yīng)用專門的溫濕度傳感技術(shù)和數(shù)字模塊采集技術(shù),使得傳感器可靠性高和穩(wěn)定性長,內(nèi)部有一個電阻式感濕元件和一個NTC測溫元件,并與一個高性能MCU相連接,每個DHT11傳感器都在極為精確的濕度校驗室中進(jìn)行校準(zhǔn),校準(zhǔn)系數(shù)以程序的形式存在OTP內(nèi)存中,運(yùn)行時傳感器會調(diào)用這些校準(zhǔn)參數(shù)對檢測信號進(jìn)行處理,具有超快響應(yīng)、抗干擾能力強(qiáng)、性價比極高等優(yōu)點(diǎn)[11].體積小、功耗低,使其成為溫濕度采集應(yīng)用的最佳選擇之一.
1.3.2 煙霧檢測
煙霧檢測選用MQ-2傳感器,用來監(jiān)視家用電器發(fā)生火災(zāi)的具體情況[12].MQ-2采用二氧化錫半導(dǎo)體氣敏材料,表面離子式N型半導(dǎo)體.MQ-2型傳感器對各種煙霧類型具有很高的靈敏度,能夠靈敏地檢測出由天然氣或液化石油氣等氣體而產(chǎn)生的煙霧,還具有良好的重復(fù)性和長期的穩(wěn)定性.使用時需要注意的是:在使用之前必須加熱一段時間,否則其輸出的電阻和電壓不準(zhǔn)確.
1.3.3 光敏檢測
系統(tǒng)由于需要對環(huán)境的光線強(qiáng)度等級進(jìn)行分析,從而實(shí)現(xiàn)對照明系統(tǒng)等用電設(shè)備進(jìn)行自適應(yīng)控制[3].光敏檢測采用YL-38光敏電阻模塊,用來檢測家庭環(huán)境的亮度和光強(qiáng),其檢測信號通過MCU內(nèi)部的高精度ADC采樣后進(jìn)行A/D轉(zhuǎn)換,再與程序預(yù)先設(shè)定的閾值進(jìn)行比較,得到準(zhǔn)確的環(huán)境光線強(qiáng)度等級,根據(jù)光線強(qiáng)度等級對照明系統(tǒng)進(jìn)行自適應(yīng)控制.
系統(tǒng)的MCU及ESP8266供電電源電路如圖3所示,首先把220 V交流市電通過降壓、整流、濾波、穩(wěn)壓環(huán)節(jié),得到輸出為12 V的直流電,然后再通過降壓芯片MP1470及外圍電路將12 V的電壓降為5 V電壓輸出,再把5 V的電壓通過LM117芯片及外圍電路將電壓降到3.3 V,從而獲得MCU及其它模塊所需要的5 V和3.3 V直流電壓.MP1470芯片的輸入工作電壓范圍在4.7~16 V之間,輸出電流最高可達(dá)2 A,工作頻率500 kHz,工作溫度范圍為-20 ℃~+125 ℃.LM117芯片的輸出電壓范圍在1.2~47 V可調(diào),工作溫度范圍為-55 ℃~+150 ℃,輸出電流最高可達(dá)1.5 A.
圖3 電源模塊
圖4 系統(tǒng)軟件總體框圖
軟件是系統(tǒng)實(shí)現(xiàn)對家居智能控制的基礎(chǔ),根據(jù)系統(tǒng)控制的實(shí)際要求,設(shè)計了智能家居控制系統(tǒng)框架如圖4所示.本系統(tǒng)軟件主要由手機(jī)APP控制系統(tǒng)和智能家居控制終端軟件系統(tǒng)兩大部分構(gòu)成,其中智能家居控制終端軟件包括了WIFI網(wǎng)絡(luò)控制系統(tǒng)、MCU控制系統(tǒng)、智能家電系統(tǒng)、智能照明系統(tǒng)、智能安防系統(tǒng)、環(huán)境監(jiān)測系統(tǒng)等軟件系統(tǒng).
圖5 APP控制軟件模塊
手機(jī)APP智能家居控制系統(tǒng)是基于Android操作系統(tǒng)而開發(fā)的,采用Java面向?qū)ο笳Z言開發(fā)設(shè)計.手機(jī)APP控制系統(tǒng)包括用用戶界面、Ht-tpclient網(wǎng)絡(luò)通信、SQlite數(shù)據(jù)庫等,APP控制軟件分由系統(tǒng)設(shè)置、設(shè)備管理、房間管理、環(huán)境監(jiān)測、數(shù)據(jù)庫等構(gòu)成,其結(jié)構(gòu)如圖5所示.
APP控制軟件模塊的設(shè)計可以使用戶在手機(jī)上操作和管理家居各種設(shè)備.系統(tǒng)設(shè)置模塊可以完成系統(tǒng)的基本設(shè)置,如系統(tǒng)的報警、定時、密碼和系統(tǒng)連接等設(shè)置;設(shè)備管理模塊是用來管理所有家電設(shè)備和照明設(shè)備,用戶可以直接控制設(shè)備的開關(guān)等狀態(tài);房間管理模塊是用來設(shè)置各個家電設(shè)備和照明設(shè)備所分布的不同區(qū)域,比如廚房、臥室、書房、衛(wèi)生間等,把不同的用電設(shè)備添加到設(shè)置房間中,會使得對設(shè)備操作管理更加方便快捷;環(huán)境監(jiān)測模塊是為了給用戶提供良好的居住條件對居住環(huán)境進(jìn)行監(jiān)測管理,還具有煙霧檢測功能,可以預(yù)防火災(zāi)發(fā)生;數(shù)據(jù)庫模塊是整個APP系統(tǒng)的中央處理數(shù)據(jù)庫,通過此數(shù)據(jù)庫實(shí)現(xiàn)對智能家居的智能化控制和管理.依據(jù)APP控制軟件模塊的設(shè)計,其部分界面如圖6~7所示.
圖6 控制主界面
圖7 電燈管理界面
圖8 智能家居控制終端主程序流程圖
手機(jī)APP與智能家居控制系統(tǒng)之間的通信采用AP+STA組網(wǎng)模式,先由手機(jī)與ESP8266串口模塊進(jìn)行WIFI配置,按住ESP8266串口模塊的配置按鈕使其進(jìn)行配置模式,此時WIFI模塊自帶的MCU會將模塊設(shè)置為AP模式,把SSID設(shè)為Smart Light,密碼無,手機(jī)連接上該WIFI后,由APP輸入路由器的SSID及密碼.然后通過APP用UDP廣播發(fā)出帶有SSID及密碼的數(shù)據(jù),MCU收到數(shù)據(jù)后將ESP8266串口模塊設(shè)置為STA模式,連接路由器.
系統(tǒng)的UDP內(nèi)網(wǎng)穿透技術(shù)采用的是一臺內(nèi)網(wǎng)機(jī)器連接外網(wǎng)通信的方式,即只需要內(nèi)網(wǎng)主動發(fā)起連接就行,由內(nèi)網(wǎng)機(jī)器連接到外網(wǎng)服務(wù)器.當(dāng)內(nèi)網(wǎng)機(jī)器發(fā)送的請求被外網(wǎng)服務(wù)器獲取后,服務(wù)器會將內(nèi)網(wǎng)機(jī)器的IP地址轉(zhuǎn)變?yōu)樽陨淼牡刂?,并分配臨時端口進(jìn)行通信.由手機(jī)APP控制智能家居設(shè)備的過程,其實(shí)是手機(jī)通過服務(wù)器與智能家居設(shè)備相連,智能家居設(shè)備的MCU是讀取服務(wù)器的IP和Port,同時MCU對服務(wù)器的IP和Port進(jìn)行回復(fù),然后由服務(wù)器將信息回饋到手機(jī),從而建立起通信控制.
智能家居控制終端軟件系統(tǒng)核心是WIFI網(wǎng)絡(luò)控制和MCU控制系統(tǒng),加上環(huán)境監(jiān)測系統(tǒng)、智能安防系統(tǒng)、智能照明系統(tǒng)、智能家電系統(tǒng)等幾個軟件子系統(tǒng)構(gòu)成終端軟件系統(tǒng).其中WIFI網(wǎng)絡(luò)控制和MCU控制系統(tǒng)是智能家居控制終端的核心,系統(tǒng)主程序流程如圖8所示.
圖9 環(huán)境監(jiān)測流程圖
圖10 家電控制流程圖
本系統(tǒng)是借助WIFI無線通信技術(shù)實(shí)現(xiàn)了Android手機(jī)和家居的互通互聯(lián),用戶只需通過手機(jī)APP即可對家里的所有用電設(shè)備進(jìn)行相關(guān)操作,至于文中提到的環(huán)境監(jiān)測系統(tǒng)、智能安防系統(tǒng)、智能照明系統(tǒng)、智能家電系統(tǒng)的軟件控制流程由于篇輻有限,本文將只介紹環(huán)境監(jiān)測系統(tǒng)和智能家電系統(tǒng)控制流程,兩個系統(tǒng)流程如圖9和圖10所示.
本文是基于WIFI通信技術(shù)和當(dāng)前應(yīng)用最廣的Android操作系統(tǒng)作為控制平臺研究設(shè)計了一套智能家居控制系統(tǒng).借助WIFI通信實(shí)現(xiàn)智能控制指令的有效傳輸,而基于Android操作系統(tǒng),提高了智能家居控制的人性化而且容易推廣,具有較大的實(shí)用價值和市場前景.系統(tǒng)經(jīng)過測試,控制簡單方便、工作穩(wěn)定可靠、響應(yīng)速度快,取得良好的效果,該研究的技術(shù)具有重要的意義.