鄭 希,王一甲,周金治
(1.西南科技大學(xué) 信息工程學(xué)院,四川 綿陽 621010; 2.特殊環(huán)境機(jī)器人四川省重點(diǎn)實(shí)驗(yàn)室,四川 綿陽 621010;3.西華大學(xué) 建筑與土木工程學(xué)院,四川 成都 610039)
?
基于WiFi的智能家居系統(tǒng)設(shè)計(jì)*
鄭 希1,2,王一甲3,周金治1,2
(1.西南科技大學(xué) 信息工程學(xué)院,四川 綿陽 621010; 2.特殊環(huán)境機(jī)器人四川省重點(diǎn)實(shí)驗(yàn)室,四川 綿陽 621010;3.西華大學(xué) 建筑與土木工程學(xué)院,四川 成都 610039)
傳統(tǒng)智能家居系統(tǒng)多以ZigBee無線技術(shù)組網(wǎng),家庭網(wǎng)關(guān)做為控制中心接入家庭網(wǎng)絡(luò),以網(wǎng)頁來控制網(wǎng)關(guān),通過網(wǎng)關(guān)轉(zhuǎn)發(fā)命令給設(shè)備進(jìn)行控制,所有家電設(shè)備無法獨(dú)立工作。針對(duì)此不足,提出一種連接簡單、易擴(kuò)展、適用于家庭應(yīng)用的家居系統(tǒng)。該系統(tǒng)以手機(jī)為控制終端,以WiFi為通信手段,去除家庭網(wǎng)關(guān),直接對(duì)家中設(shè)備進(jìn)行遠(yuǎn)程控制。實(shí)驗(yàn)測試表明,該系統(tǒng)使用靈活方便,穩(wěn)定性強(qiáng),易于擴(kuò)展升級(jí),用戶體驗(yàn)較好。
智能家居;CC3200;iOS;WiFi
隨著整個(gè)社會(huì)信息化的加速及物聯(lián)網(wǎng)技術(shù)的發(fā)展,智能家居迎來了爆發(fā)式的增長,越來越多的智能電器走入人們的生活,讓人們體驗(yàn)到一種更加便利、安全、高效的家居生活。
傳統(tǒng)的智能家居系統(tǒng)通常由三部分組成:家庭局域網(wǎng)、家庭網(wǎng)關(guān)、外網(wǎng)。家庭局域網(wǎng)由ZigBee或者其他射頻網(wǎng)絡(luò)連接各家用設(shè)備、智能開關(guān)、傳感器等,為網(wǎng)關(guān)提供控制信號(hào)和網(wǎng)絡(luò)信息。家庭網(wǎng)關(guān)是系統(tǒng)的核心,實(shí)現(xiàn)全局控制和與外網(wǎng)的通信。用戶通過網(wǎng)頁或者客戶端來與網(wǎng)關(guān)進(jìn)行通信并實(shí)現(xiàn)對(duì)家庭設(shè)備的控制。這種智能家居系統(tǒng)經(jīng)過多年發(fā)展,依然沒有在市場上有很好的應(yīng)用,可能的原因有以下幾個(gè)方面:
(1)ZigBee技術(shù)沒有統(tǒng)一的標(biāo)準(zhǔn),開發(fā)難度較大,同時(shí)其與手機(jī)電腦等智能設(shè)備不兼容。
(2)必須借助家庭網(wǎng)關(guān)工作,使用范圍受限。
(3)設(shè)備入網(wǎng)安裝復(fù)雜,需要專業(yè)工程人員。
(4)通常采用網(wǎng)頁或者電腦客戶端進(jìn)行控制,無法隨時(shí)隨地使用,用戶體驗(yàn)較差。
WiFi技術(shù)因其功率較高、網(wǎng)絡(luò)容量較少而在智能家居領(lǐng)域一直沒有廣泛的使用。但隨著技術(shù)的發(fā)展,眾多廠家推出了低功耗的WiFi芯片。同時(shí),IEEE即將發(fā)布針對(duì)物聯(lián)網(wǎng)應(yīng)用的802.11ah標(biāo)準(zhǔn),工作頻率使用1 GHz以下的免許可頻段[1]。具有覆蓋面更大,支持更多用戶、更低功耗的特點(diǎn),使WiFi在智能家居中有更廣泛的應(yīng)用。
如今智能手機(jī)的普及率越來越高,功能的日益強(qiáng)大,同時(shí)伴隨手機(jī)4G網(wǎng)絡(luò)的發(fā)展,手機(jī)逐漸成為人們隨身的信息中心。因此,手機(jī)作為智能家居控制中心將成為智能家居發(fā)展的趨勢。本文提出一種以iPhone手機(jī)為控制中心,以WiFi為家庭組網(wǎng)的智能家居系統(tǒng)。
基于WiFi的智能家居系統(tǒng)主要包括家電設(shè)備控制端和iOS客戶端。用戶通過iOS客戶端交互,實(shí)現(xiàn)家電設(shè)備入網(wǎng)與控制操作。家電設(shè)備直接由無線路由器接入到家庭網(wǎng)絡(luò),通過接收來自手機(jī)客戶端的網(wǎng)絡(luò)請(qǐng)求,解析出控制命令,完成相應(yīng)的控制操作。系統(tǒng)的總體結(jié)構(gòu)示意圖如圖1所示。
圖1 智能家居系統(tǒng)示意圖
圖2 控制端系統(tǒng)結(jié)構(gòu)框圖
圖3 控制端工作流程
本系統(tǒng)的智能家電由控制端接收手機(jī)端的指令來控制家電功能,總體結(jié)構(gòu)框架如圖2所示??刂贫撕诵牟捎妹绹轮輧x器(TI)公司基于ARM Cortex-M4內(nèi)核的CC3200微控制器[2]。CC3200工作在80 MHz主頻下,具有快速并行攝像頭接口、I2S、SD/MMC、UART、SPI、I2C、ADC等外設(shè)。芯片內(nèi)部包含專用的WiFi模塊,可以減輕MCU的負(fù)擔(dān),支持802.11.b/g/n射頻和嵌入式TCP/IP、TLS/SS堆棧以及多個(gè)互聯(lián)網(wǎng)協(xié)議,支持高級(jí)低功耗模式,滿足省電需求。外部串行閃存保存程序及外設(shè)驅(qū)動(dòng)程序,系統(tǒng)啟動(dòng)時(shí)內(nèi)部Flash中的引導(dǎo)加載程序(bootloader)將外部Flash中的程序載入到芯片內(nèi)部的SRAM中運(yùn)行。傳感器模塊將外部環(huán)境參數(shù)傳入控制端,供MCU處理??刂贫耸盏绞謾C(jī)指令后,通過I/O口與家電產(chǎn)品連接并進(jìn)行相應(yīng)控制,完成各種不同的功能。
控制端軟件工作流程如圖3所示。系統(tǒng)上電啟動(dòng)后,抓取UDP包配置入網(wǎng),若配置不成功則進(jìn)入休眠模式等待復(fù)位重新啟動(dòng)系統(tǒng)。配置成功后,開啟HTTP服務(wù),監(jiān)聽HTTP請(qǐng)求并執(zhí)行相應(yīng)的操作。
iOS客戶端程序主要分為三大模塊:人機(jī)交互模塊、網(wǎng)絡(luò)通信模塊、數(shù)據(jù)處理模塊。人機(jī)交互模塊的工作是將人的行為轉(zhuǎn)換成數(shù)據(jù)交給其他模塊,并在UI界面上做出相應(yīng)反應(yīng)來體現(xiàn)人的這個(gè)行為;網(wǎng)絡(luò)通信模塊與智能家電、云服務(wù)器建立相應(yīng)的連接,并通過連接進(jìn)行數(shù)據(jù)交換;數(shù)據(jù)處理模塊對(duì)人機(jī)交互模塊和網(wǎng)絡(luò)通信模塊傳入的數(shù)據(jù)進(jìn)行解析和處理。
手機(jī)客戶端工作流程如圖4。
圖4 手機(jī)客戶端工作流程
系統(tǒng)中的網(wǎng)絡(luò)通信主要包括兩個(gè)部分,一部分是配置控制端接入網(wǎng)絡(luò),另一部分是手機(jī)與控制端的網(wǎng)絡(luò)通信。
4.1 配置控制端入網(wǎng)
家電設(shè)備要與手機(jī)通信,首先要接入家庭中的WiFi網(wǎng)絡(luò)。傳統(tǒng)的WiFi設(shè)備接入網(wǎng)絡(luò)的過程分為三步:(1)WiFi設(shè)備工作在熱點(diǎn)模式,手機(jī)WiFi連接此熱點(diǎn);(2)手機(jī)將家中路由器的SSID和密碼發(fā)送給熱點(diǎn);(3)WiFi設(shè)備切換工作模式到終端模式,利用接收到的信息連接到家庭中的路由器。這種方法操作復(fù)雜,手機(jī)需要切換不同的WiFi熱點(diǎn),用戶體驗(yàn)較差。
對(duì)此,本文采用一種基于CC3200一鍵入網(wǎng)的方法,手機(jī)接入到家中的WiFi網(wǎng)絡(luò),家電設(shè)備上電后,手機(jī)打開客戶端,在配置頁面可以自動(dòng)獲取路由器的SSID,用戶只需輸入WiFi密碼和自定義設(shè)備名,然后點(diǎn)擊配置按鈕,就可以自動(dòng)完成設(shè)備的入網(wǎng),同時(shí)獲取到家電設(shè)備的IP地址。其工作過程分為以下四步:
(1)控制端上電后,掃描所有WiFi熱點(diǎn)的channel,然后配置芯片工作在掃描到的某個(gè)channel上接收UDP包,如果沒有接收到UDP包則繼續(xù)配置芯片工作在掃描到的另一個(gè)channel上。如此循環(huán)直到收到UDP包為止。
(2)手機(jī)端將無線SSID和密碼進(jìn)行編碼,打包到UDP包頭的長度字節(jié)中,然后重復(fù)廣播UDP包,持續(xù)1 min。
同時(shí),啟用基于mDNS協(xié)議的Bonjour服務(wù)向本地網(wǎng)絡(luò)廣播消息,提問由誰提供“l(fā)ocal._http,_tcp”服務(wù),并等待回復(fù)。
(3)由于UDP包的幀格式中,數(shù)據(jù)包的長度是明文可見的,控制端收到UDP包,根據(jù)設(shè)定好的編碼,解析出相應(yīng)的信息,接入到家中的WiFi網(wǎng)絡(luò)。
(4)控制端接入網(wǎng)絡(luò)后,收到UDP廣播消息,回復(fù)自己的設(shè)備名和IP地址。手機(jī)接收回復(fù)的消息并處理,完成入網(wǎng)配置。
4.2 UDP廣播包編碼
UDP協(xié)議是一種無連接、不可靠的傳輸層協(xié)議,其數(shù)據(jù)報(bào)文格式包括UDP頭部和數(shù)據(jù)[3]。UDP數(shù)據(jù)報(bào)文頭部沒有加密可以被截取下來,由源端口、目的端口、包長度和檢驗(yàn)和共4個(gè)字段組成,每個(gè)字段2個(gè)字節(jié)。
將SSID和密碼轉(zhuǎn)換成一系列的分隔符、tag、高位、低位等值,然后做為數(shù)據(jù)包的長度發(fā)送出去。以SSID的值為“MYAP”為例,展示如何將SSID分割成高低位。如表1所示。
表1 將字符分割成高低位
表2 高低位生成規(guī)則
然后通過高位和低位生成兩個(gè)帶有序列號(hào)的值2i和2i+1。生成規(guī)則如表2所示。通過這種規(guī)則,由2個(gè)字符的SSID“MYAP”將可得到8個(gè)值,如表3。
表3 字符編碼規(guī)則
密碼按照同樣的規(guī)則進(jìn)行編碼,將編碼后的數(shù)據(jù)按照以下格式作為UDP數(shù)據(jù)包的長度循環(huán)發(fā)送出去:分隔符-SSIDTag-分隔符-SSID length+28-分隔符-Seq0-分隔符-Seq1-分隔符-密碼Tag-密碼length+28-…。具體數(shù)據(jù):3 1099 3 32 3 597 3 686 3 840 3 666 3 805 3 610 3 710 3 593 3 1199 3 …。
控制端抓取到UDP包,讀取包長度,根據(jù)規(guī)則進(jìn)行判別,識(shí)別完后按收到的SSID和密碼信息登錄家庭WiFi網(wǎng)絡(luò)。
本系統(tǒng)在完成設(shè)計(jì)后,經(jīng)測試可以通過家庭網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)家居設(shè)備的無線控制,配置設(shè)備入網(wǎng)方便,HTTP請(qǐng)求穩(wěn)定可靠。通過本系統(tǒng)可對(duì)家居設(shè)備進(jìn)行集中管理,了解當(dāng)前家居設(shè)備的最新運(yùn)行狀態(tài)。
本控制系統(tǒng)通過智能手機(jī)直接控制家居設(shè)備,省去家庭網(wǎng)關(guān)的中間管理,采用WiFi傳輸技術(shù)使設(shè)備兼容性更好。由于手機(jī)軟件的通用性和家居設(shè)備的獨(dú)立性,同時(shí)硬件簡單易用,便于移植和擴(kuò)展,使本系統(tǒng)具有較高的市場應(yīng)用價(jià)值。
[1] AUST S, PRASAD R V, NIEMEGEERS I G. IEEE 802.11 ah: advantages in standards and further challenges for sub 1 GHz Wi-Fi[C]. Communications (ICC), 2012 IEEE International Conference on, 2012: 6885-6889.
[2] Texas Instruments Inc. CC3200 simplelink WiFi and IoT solution, a single chip wireless MCU[EB/OL].(2014-06-01)[2015-12-01]. http://www.ti.com.cn/cn/lit/ds/symlink/cc3200.pdf.
[3] TANENBAUM A S.計(jì)算網(wǎng)絡(luò)(第四版)[M].潘愛民,譯.北京:清華大學(xué)出版社,2004.
Design of smart home system based onWiFi
Zheng Xi1,2,Wang Yijia3,Zhou Jinzhi1,2
(1. School of Information Engineering, Southwest University of Science and Technology, Mianyang 621010, China;2. Robot Technology Used for Special Environment Key Laboratory of Sichuan Province, Mianyang 621010, China;3.Shcool of Architechture and Civil Engineering, Xihua University, Chengdu 610039, China)
Traditional smart home systems always build network by ZigBee wireless technology, then access to the home network in the control of a home gateway which controlled by a web page, at last home gateway forward command to control the device. For the deficiency of the traditional smart home system that all the appliance equipment cannot work independently. This paper proposed a home system which is simple connected, easy to expand and apply to the home applications. The system’s control terminal is smart phone, communicating through WiFi. Devices in the home can be remotely controlled directly without home gateway. Experiments results show that the proposed system has the performance of flexible, stability, easy to extend and upgrade, better user experience.
smart home; CC3200; iOS; WiFi
特殊環(huán)境機(jī)器人技術(shù)四川省重點(diǎn)實(shí)驗(yàn)室開放基金(13ZXTK07);西南科技大學(xué)研究生創(chuàng)新基金(15ycx120)
TP277
A
1674-7720(2016)07- 0067- 02
鄭希,王一甲,周金治. 基于WiFi的智能家居系統(tǒng)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2016,35(7):67-68,72.
2015-12-09)
鄭希(1987-),男,碩士研究生,主要研究方向:物聯(lián)網(wǎng)技術(shù)。
王一甲(1993-),男,本科,主要研究方向:建筑與土木工程規(guī)劃設(shè)計(jì)、交通施工。
周金治(1971-),男,碩士,副教授,主要研究方向:計(jì)算機(jī)網(wǎng)絡(luò)與物聯(lián)網(wǎng)。