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