李月恒,段志強,楊棟偉
(北方工業(yè)大學 電氣與控制工程學院, 北京 100144)
摘要:隨著智能手機、物聯(lián)網(wǎng)和云服務(wù)的快速發(fā)展,家庭的智能化已成為了一種發(fā)展趨勢?;?a class="innerlink" href="http://ihrv.cn/tags/Android" title="Android" target="_blank">Android平臺、云平臺、S5PV210微處理器、ZigBee和多種傳感器實現(xiàn)對家庭狀況的采集和顯示以及對家庭設(shè)備的控制。該系統(tǒng)進一步可結(jié)合數(shù)據(jù)挖掘和大數(shù)據(jù)分析,實現(xiàn)宏觀統(tǒng)籌節(jié)能環(huán)保。還可以將云技術(shù)和智能家具結(jié)合實現(xiàn)智慧小區(qū),乃至智慧城市。
關(guān)鍵詞:Android;云服務(wù);ZigBee;傳感器
0引言
隨著電子、通信、自動控制等技術(shù)的快速發(fā)展及人們物質(zhì)精神生活的提高,家用電器、室內(nèi)環(huán)境的檢測以及安全防護等的智能化控制代替?zhèn)鹘y(tǒng)控制已經(jīng)成為一種大趨勢。伴隨智能手機的迅速普及和不斷提高,網(wǎng)絡(luò)性能的提高,以及移動互聯(lián)網(wǎng)的盛行,基于Android平臺的智能控制在智能家居控制中扮演了重要角色。由于人們對智能化準確性和性能要求更高,這就需要各種的傳感器對家庭信息的采集,并對采集的大量的數(shù)據(jù)進行存儲和可視化的處理,智能家居網(wǎng)關(guān)就難以實現(xiàn)對高并發(fā)大量數(shù)據(jù)的存儲和可視化?;谝陨显?,本文設(shè)計了一種基于Android和云服務(wù)智能家居系統(tǒng)。在Android平臺實現(xiàn)智能家居用戶界面,在云服務(wù)平臺實現(xiàn)對大量數(shù)據(jù)的存儲、分析,智能家居廠商可以在統(tǒng)一的平臺實現(xiàn)對變量的組態(tài),方便對變量的添加、修改、更新。在網(wǎng)關(guān)部分,采用Android平臺,接收和發(fā)送由傳感器傳送的數(shù)據(jù),加強了與用戶之間的可視化和交互性。即使在所有的Android設(shè)備出現(xiàn)故障時,也可以通過網(wǎng)關(guān)實現(xiàn)對家里智能設(shè)備的管理。
1系統(tǒng)總體設(shè)計
智能家居系統(tǒng)總體架構(gòu)如圖1所示,主要包括用戶端(Android智能終端)、智能家居云服務(wù)、智慧家庭網(wǎng)關(guān)(WiFi接入點、ZigBee和各種傳感器、設(shè)備組成的無線網(wǎng)絡(luò)終端、顯示屏)。
(1)用戶端主要負責本地和遠程對家里的智能產(chǎn)品、環(huán)境等的控制和顯示。
(2)智能家居云服務(wù)主要負責不同智能家居廠商對自己產(chǎn)品變量的添加、更改、刪除、顯示等操作,以及與用戶、智慧家庭網(wǎng)關(guān)的通信和對它們傳輸?shù)臄?shù)據(jù)的存儲、分析等的處理。
(3)智慧家庭網(wǎng)關(guān)主要負責接收、解析、發(fā)送和顯示來自用戶端發(fā)送給云服務(wù)的控制命令,以及接收、解析、發(fā)送和顯示來自ZigBee和各種傳感器、設(shè)備組成的無線網(wǎng)絡(luò)終端傳來的數(shù)據(jù)。
2系統(tǒng)的硬件設(shè)計
本系統(tǒng)智慧家庭網(wǎng)關(guān)主控芯片選用Samsung公司的32位精簡指令集(RISC)微處理器S5PV210。該處理器的內(nèi)部架構(gòu)采用64/32位總線架構(gòu),CPU采用ARM CortexTM-A8內(nèi)核,具有運行速度快、運算能力強、硬件編解碼功能強大的特點,同時具有完整的通用系統(tǒng)外設(shè)、高性能、低功耗等優(yōu)點,減少了系統(tǒng)的整體成本。該系統(tǒng)采用WiFi模塊、4G模塊、ZigBee和各種傳感器、設(shè)備組成的無線網(wǎng)絡(luò)節(jié)點等作為外部擴充,搭建了一個穩(wěn)定、功能齊全的智慧家庭網(wǎng)關(guān)控制系統(tǒng)。智慧家庭網(wǎng)關(guān)硬件結(jié)構(gòu)框圖如圖2所示。
本系統(tǒng)控制終端采用TI 公司的ZigBee芯片CC2530,它以8051微處理器為內(nèi)核,自身攜帶的射頻發(fā)射器實現(xiàn)網(wǎng)絡(luò)的無線通信。該控制終端由ZigBee無線網(wǎng)絡(luò)節(jié)點組成,包括ZigBee協(xié)調(diào)器和ZigBee組成的終端設(shè)備。ZigBee協(xié)調(diào)器完成自組網(wǎng),維持無線網(wǎng)絡(luò)的正常通信,以及與網(wǎng)關(guān)主控芯片之間的通信。ZigBee組成的終端設(shè)備完成對家庭的控制和信息數(shù)據(jù)圖3ZigBee組成的終端設(shè)備的結(jié)構(gòu)框圖的采集。ZigBee組成的終端設(shè)備的結(jié)構(gòu)框圖如圖3所示,實物圖如圖4。
3系統(tǒng)的軟件設(shè)計
系統(tǒng)軟件設(shè)計包括Android客戶端、智慧家居云、智慧家庭網(wǎng)關(guān)3部分。
3.1Android客戶端
根據(jù)客戶端的需求和軟件的特點,客戶端軟件設(shè)計如圖5所示。
Android客戶端軟件設(shè)計是在Android平臺上開發(fā)的,實現(xiàn)對電視、空調(diào)、窗簾、門禁、燈等的控制和室內(nèi)環(huán)境狀況(溫、濕度等)的顯示。本客戶端由登錄界面和控制界面組成,登錄界面如圖6所示。先調(diào)用4G/WiFi網(wǎng)絡(luò)服務(wù),確保打開WiFi/4G,再通WebService 傳入賬號和密碼進入控制界面,如圖7所示。同時需要在Android Mainfest.xml文件中設(shè)置獲取聯(lián)網(wǎng)權(quán)限,代碼如下[1]:
<usespermission android:name”android.permission.INTERNET”/>
智慧家居云(云服務(wù)平臺)開啟端口,等待客戶端HttpCliet發(fā)送HTTP請求,經(jīng)過3次TCP/IP握手,雙方建立連接,通過Socket實現(xiàn)數(shù)據(jù)的處理和發(fā)送[2]。云服務(wù)器接收客戶端的控制命令,存儲在數(shù)據(jù)庫中,客戶端接收云服務(wù)器的狀態(tài)信息,進行顯示。云服務(wù)平臺和客戶端的通信框圖如圖8所示。
3.2智慧家居云
智慧家居云建立在云平臺上之上,實現(xiàn)智能家居服務(wù)。云平臺總架構(gòu)采用IaaS(Infrastructure as a Service) 和PaaS(Platform as a Service)整合的方式來構(gòu)建云應(yīng)用平臺[3]。
IaaS為上層應(yīng)用平臺提供存儲、網(wǎng)絡(luò)、操作系統(tǒng)、異常處理和其他一些應(yīng)用程序。PaaS在IaaS提供的虛擬機群基礎(chǔ)上為客戶提供Web服務(wù)器和數(shù)據(jù)庫等應(yīng)用。這樣,智慧家居云應(yīng)用就可以在PaaS平臺上完成智能家居云服務(wù)應(yīng)用[4]。
智慧家居云應(yīng)用采用JavaWeb進行開發(fā),結(jié)合移動服務(wù)和JavaEE的標準,采取分層結(jié)構(gòu)模型管理[5]。結(jié)構(gòu)模型如圖9所示,按照邏輯結(jié)構(gòu)可分為對象訪問層、業(yè)務(wù)邏輯層、訪問控制層、界面顯示層、異常處理層、安全認證層。這種分層的模型保證了操作的相對獨立性以及數(shù)據(jù)的安全性和有效性,便于管理和擴展。
云應(yīng)用軟件設(shè)計包括智能家居開發(fā)者服務(wù)軟件設(shè)計,客戶端、智慧家居云和智慧家庭網(wǎng)關(guān)通信軟件設(shè)計。智能家居開發(fā)者進入登錄界面,如圖10所示,打開服務(wù)界面,如圖11所示,建立不同廠商不同產(chǎn)品變量的數(shù)據(jù)表,服務(wù)界面實現(xiàn)對智能家居產(chǎn)品的組態(tài),即對不同廠商的產(chǎn)品進行查詢、添加、更新、刪除和顯示,并將產(chǎn)品變量存儲于數(shù)據(jù)庫中。當客戶端帶著廠商的ID號(Cid)參數(shù)向智慧家居云發(fā)生HTTP請求時,云平臺接收到請求,查詢Cid對應(yīng)的廠商產(chǎn)品變量表,建立一個新的用戶數(shù)據(jù)表,并把傳過來的控制命令和數(shù)據(jù)進行解析、存儲/回傳顯示。同樣,智慧家庭網(wǎng)關(guān)帶著參數(shù)用戶ID號(Uid)不斷向智慧家居云發(fā)生HTTP請求,獲取/上傳與Uid相對應(yīng)的數(shù)據(jù)。
3.3智慧家庭網(wǎng)關(guān)
智慧家庭網(wǎng)關(guān)軟件設(shè)計基于Android平臺,包括網(wǎng)絡(luò)部分、控制部分、執(zhí)行部分3個部分。智慧家庭網(wǎng)關(guān)軟件設(shè)計框圖如12所示。
智慧家庭網(wǎng)關(guān)作為連接公網(wǎng)(智慧家居云平臺)和家庭局域網(wǎng)(ZigBee組成的無線網(wǎng)絡(luò))的樞紐,既擔負家庭內(nèi)部對云端的訪問和交互,又承擔互控用戶通過云端對家庭網(wǎng)絡(luò)的訪問和控制,另外還負責家庭內(nèi)部設(shè)備的互聯(lián)、互控等操作。公網(wǎng)采用4G/WiFi,實現(xiàn)控制部分和控制部分的連接[6]??刂撇糠植捎梦⑻幚砥骷油鈬刂齐娐?,通過串口和ZigBee實現(xiàn)與執(zhí)行部分的連接。執(zhí)行部分由ZigBee協(xié)調(diào)器、ZigBee終端設(shè)備、傳感器和執(zhí)行設(shè)備組成[7],采用ZigBee協(xié)議進行通信,采用樹狀結(jié)構(gòu),如圖13所示[8]。
ZigBee協(xié)調(diào)器完成無線網(wǎng)絡(luò)的自組網(wǎng)、網(wǎng)絡(luò)的維護并實現(xiàn)與微處理器的通信,流程圖如圖14所示。ZigBee終端設(shè)備(ZigBee終端工作流程圖如圖15所示)、傳感器、執(zhí)行設(shè)備和外圍的控制電路組成ZigBee無線終端設(shè)備,實現(xiàn)對室內(nèi)的燈、窗簾、空調(diào)、電視、門禁等的控制[9]。
4系統(tǒng)測試
系統(tǒng)的測試分為客戶端和智能家居云之間功能測試、智能家居云和智慧家庭網(wǎng)關(guān)之間功能測試。第一部分為準備工作,啟動智能家居云服務(wù),連接好網(wǎng)絡(luò),智能家居提供商登錄云服務(wù)器,添加、更改、刪除不同廠家的產(chǎn)品變量并完成初始化,生成廠家的變量表。接著,打開網(wǎng)絡(luò)連接,登錄智慧家庭網(wǎng)關(guān),并連接好ZigBee協(xié)調(diào)器和ZigBee無線終端設(shè)備,使其正常工作。第二部分為測試工作,登錄vi 客戶端Android界面,確保連接上網(wǎng)絡(luò),一切連接正常,進行客戶端和智能家居云之間功能的測試,分為A組和B組兩組進行測試,代表不同廠商AA和BB的產(chǎn)品,通過HTTP請求智能家居云服務(wù),請求的參數(shù)Cid不一樣,一個Cid=AA,另一個Cid=BB,客戶端A對客廳燈、電視機、室內(nèi)溫度進行操作,客戶端B對臥室燈、空調(diào)、臥室窗簾進行操作。接著智能家居云服務(wù)器接收客戶端發(fā)送來的請求,接收客戶端發(fā)送來的控制信息并進行顯示,如圖16所示。最后進行智能家居云和智慧家庭網(wǎng)關(guān)之間功能測試,確保連接網(wǎng)絡(luò),網(wǎng)關(guān)請求智能家居云端,獲得客戶端相應(yīng)的控制命令,測試結(jié)果如圖17所示。經(jīng)過測試,各項功能都正常實現(xiàn)。
5結(jié)論
隨著云和智能手機技術(shù)不斷提高和發(fā)展,智能家居云服務(wù)已成發(fā)展的趨勢。本文利用Android平臺實現(xiàn)與用戶的交互、對家庭智能化設(shè)備控制和對家里環(huán)境狀況的顯示,利用云服務(wù)實現(xiàn)對智能生活中大數(shù)據(jù)的存儲和數(shù)據(jù)的組態(tài)。進一步可結(jié)合數(shù)據(jù)挖掘和大數(shù)據(jù)分析,實現(xiàn)宏觀統(tǒng)籌節(jié)能環(huán)保。還可以將云技術(shù)和智能家具結(jié)合實現(xiàn)智慧小區(qū),乃至智慧城市[10]。
參考文獻
?。?] 楊豐盛. Android應(yīng)用開發(fā)揭秘[M]. 北京:機械工業(yè)出版社, 2010.
[2] 李剛. 瘋狂Android講義[M]. 北京:電子工業(yè)出版社, 2011.[3] 裴超. 基于云計算的智能家居系統(tǒng)架構(gòu)研究[J]. 軟件導刊, 2014, 13(3):8082.
?。?] 徐鵬, 陳思, 蘇森. 互聯(lián)網(wǎng)應(yīng)用PaaS平臺體系結(jié)構(gòu)[J]. 北京郵電大學學報, 2012, 35(1):120124.
[5] 岳敬華. 基于云服務(wù)的智能家居系統(tǒng)的研究與設(shè)計[D]. 杭州:杭州電子科技大學, 2013.
?。?] 徐繼寧,張暕,胡敦利,等.基于ZigBee和WiFi的智能家居系統(tǒng)[J].微型機與應(yīng)用,2015,34(12):5760.
[7] 王權(quán)平, 王莉. ZigBee技術(shù)及其應(yīng)用[J]. 現(xiàn)代電信科技, 2004(1):3337.
?。?] 安康,張慧熙,王李冬,等.基于ZigBee技術(shù)的多節(jié)點設(shè)備無線物聯(lián)自組網(wǎng)設(shè)計[J].微型機與應(yīng)用,2014,33(8):5154.
?。?] 林鈴, 于德海. 自學習紅外遙控器的設(shè)計與實現(xiàn)[J]. 電腦知識與技術(shù), 2008, 3(24):12571259.
?。?0] 巫細波, 楊再高. 智慧城市理念與未來城市發(fā)展[J]. 城市發(fā)展研究, 2010, 17(11):5660.