常熟理工學(xué)院電氣與自動化工程學(xué)院 高 虎 韓眾杰 李 鑫
智能家居網(wǎng)關(guān)的設(shè)計(jì)與實(shí)現(xiàn)
常熟理工學(xué)院電氣與自動化工程學(xué)院高虎韓眾杰李鑫
現(xiàn)代智能家居系統(tǒng)大多基于云端控制架構(gòu),主要由智能家居用戶控制終端、智能家居網(wǎng)絡(luò)服務(wù)器、智能家居網(wǎng)關(guān)和智能家居家庭設(shè)備組成。本文在此控制方案的基礎(chǔ)上,對智能家居網(wǎng)關(guān)進(jìn)行了研究與設(shè)計(jì),在硬件上使用全志ARM Cortex-A7高性能處理器作為系統(tǒng)處理核心,并設(shè)計(jì)了網(wǎng)絡(luò)通信電路與Zigbee 通信電路,建立了云端控制網(wǎng)絡(luò)和家居設(shè)備控制網(wǎng)絡(luò);在軟件上使用Android系統(tǒng)作為軟件運(yùn)行平臺,分別為網(wǎng)絡(luò)通信和Zigbee通信設(shè)計(jì)了通信協(xié)議,并在應(yīng)用層上完成了對兩種通信數(shù)據(jù)的解析處理,再結(jié)合SQLite數(shù)據(jù)庫實(shí)現(xiàn)了云端對家居設(shè)備的遠(yuǎn)程管理與控制。
Zigbee;Android;以太網(wǎng);智能家居網(wǎng)關(guān)
隨著知識水平和生活水平的提高,智能化的概念遍布到了當(dāng)今社會的每個角落,人們的傳統(tǒng)生活方式也發(fā)生了巨大的改變。實(shí)現(xiàn)對家居設(shè)備的系統(tǒng)化、網(wǎng)絡(luò)化和智能化控制已經(jīng)成為家居環(huán)境未來的發(fā)展方向。智能家居不僅為用戶提供了更高效、快捷的控制方式,提高了生活樂趣,而且減少了日常生活中一些不必要的能量損耗。在當(dāng)前大力提倡環(huán)保的背景下,智能家居能很好地踐行節(jié)能環(huán)保、低碳生活的倡導(dǎo)。伴隨著人們對生活質(zhì)量要求的不斷提高,將智能家居應(yīng)用于家庭住宅中是時(shí)代發(fā)展的必然趨勢。
智能家居系統(tǒng)主要由用戶智能終端、智能家居網(wǎng)絡(luò)服務(wù)器、智能家居網(wǎng)關(guān)與智能家居設(shè)備四大部分組成。在系統(tǒng)中,網(wǎng)關(guān)節(jié)點(diǎn)是Zigbee協(xié)議和以太網(wǎng)之間的轉(zhuǎn)換接口,負(fù)責(zé)建立和管理傳感器網(wǎng)絡(luò)及外網(wǎng)通信網(wǎng)絡(luò)。用戶智能終端與智能家居網(wǎng)關(guān)構(gòu)成外部互聯(lián)網(wǎng)通信網(wǎng)絡(luò),而智能家居設(shè)備與智能家居網(wǎng)關(guān)之間則構(gòu)成家庭內(nèi)部設(shè)備通信網(wǎng)絡(luò)。
智能家居網(wǎng)關(guān)是整個智能家居控制系統(tǒng)的核心,負(fù)責(zé)整個系統(tǒng)內(nèi)的數(shù)據(jù)交互及協(xié)議轉(zhuǎn)換等工作。智能家居網(wǎng)關(guān)集成示意圖如圖1-1所示。
圖1-1 智能家居網(wǎng)關(guān)集成示意圖
家庭內(nèi)部智能家居設(shè)備的信息保存在網(wǎng)絡(luò)服務(wù)器中,用戶可以使用智能手機(jī)、平板電腦等智能終端通過3G、4G網(wǎng)絡(luò)或WIFI接入互聯(lián)網(wǎng)并連接網(wǎng)絡(luò)服務(wù)器上,實(shí)現(xiàn)對智能家居設(shè)備的遠(yuǎn)程訪問與控制。家中智能設(shè)備主要由智能開關(guān)、智能窗簾、調(diào)光照明燈、RGB調(diào)光燈和紅外轉(zhuǎn)發(fā)器等設(shè)備組成。
智能家居網(wǎng)關(guān)的硬件設(shè)計(jì)主要分為三個部分:主控制器核心板、外圍通信模塊、調(diào)試接口模塊。其中主控制器核心板集成了Android系統(tǒng)的運(yùn)行硬件環(huán)境與電源管理系統(tǒng);外圍通信模塊包括Zigbee協(xié)調(diào)器模塊用于家庭內(nèi)部組網(wǎng);以太網(wǎng)通信模塊用于連接互聯(lián)網(wǎng)中的網(wǎng)絡(luò)服務(wù)器;調(diào)試接口模塊包括USB調(diào)試接口與HDMI屏幕輸出接口用于系統(tǒng)在線與輔助調(diào)試。智能家居網(wǎng)關(guān)硬件平臺結(jié)構(gòu)如圖2-1所示。
圖2-1 智能家居網(wǎng)關(guān)硬件平臺結(jié)構(gòu)圖
2.1控制器模塊
主控制器核心板使用全志具有1GHz主時(shí)鐘頻率的A31s ARM Cortex-A7 四核CPU作為處理核心,且輔以1GB DDR3 內(nèi)存與4GB EMMC存儲芯片,可流暢運(yùn)行Android4.2.2系統(tǒng)并提供可靠的性能。并且使用少量外圍器件即可擴(kuò)展WIFI、藍(lán)牙、以太網(wǎng)與GPS等各種數(shù)據(jù)傳輸模塊。
2.2以太網(wǎng)控制器
以太網(wǎng)控制器選用Realtek公司的 RTL8201CP,RTL8201CP是一個單端口的物理層收發(fā)器,可通過網(wǎng)絡(luò)變壓器連接RJ45來實(shí)現(xiàn)全部的10/100M以太網(wǎng)物理層功能,RTL8201CP通過GMAC接口與主控制器連接。以太網(wǎng)控制器電路如圖2-2所示。
圖2-2 以太網(wǎng)控制器RTL8201CP電路
2.3Zigbee通信模塊
Zigbee通信模塊使用CC2530作為主控芯片,CC2530集成了2.4G RF收發(fā)器與增強(qiáng)型工業(yè)標(biāo)準(zhǔn)8051內(nèi)核,可使用Zigbee 專用協(xié)議棧Z-Stack簡化Zigbee通信系統(tǒng)的設(shè)計(jì)。結(jié)合具有信號功率放大器的射頻前端芯片CC2591可為CC2530提供更大的信號覆蓋范圍。Zigbee通信模塊電路如圖2-3所示。
圖2-3 Zigbee通信模塊電路
智能家居網(wǎng)關(guān)的設(shè)計(jì)采用Android操作系統(tǒng)作為軟件平臺,在應(yīng)用層上實(shí)現(xiàn)以太網(wǎng)通信功能、Zigbee通信功能和數(shù)據(jù)存儲功能。其中對以太網(wǎng)通信與Zigbee通信需要分別設(shè)計(jì)數(shù)據(jù)通信協(xié)議來實(shí)現(xiàn)網(wǎng)絡(luò)服務(wù)器對Zigbee節(jié)點(diǎn)狀態(tài)的控制與讀取。智能家居網(wǎng)關(guān)軟件設(shè)計(jì)框架如圖3-1所示。
圖3-1 智能家居網(wǎng)關(guān)軟件設(shè)計(jì)框圖
3.1以太網(wǎng)通信功能軟件設(shè)計(jì)
智能家居網(wǎng)關(guān)與網(wǎng)絡(luò)服務(wù)器間采用Socket通信方式保持雙向長連接,Socket通信在網(wǎng)絡(luò)傳輸層上分為TCP和UDP兩種方式,為保證數(shù)據(jù)傳輸?shù)目煽啃?,本設(shè)計(jì)網(wǎng)絡(luò)傳輸協(xié)議采用TCP方式。
網(wǎng)絡(luò)通信數(shù)據(jù)分為兩類,一類是智能家居網(wǎng)關(guān)接收網(wǎng)絡(luò)服務(wù)器的數(shù)據(jù),另一類是網(wǎng)絡(luò)服務(wù)器接收智能家居網(wǎng)關(guān)的數(shù)據(jù)。為確定接收方接受到數(shù)據(jù)且已進(jìn)行處理,接收方會向發(fā)送方返回確認(rèn)消息,整個流程如圖3-2所示。
圖3-2 網(wǎng)絡(luò)通信流程
3.2Zigbee通信功能軟件設(shè)計(jì)
在一個典型Zigbee網(wǎng)絡(luò)中,有協(xié)調(diào)器、路由器和終端節(jié)點(diǎn)三種不同功能的Zigbee設(shè)備。其中協(xié)調(diào)器負(fù)責(zé)建立Zigbee通信網(wǎng)絡(luò)并與各個終端節(jié)點(diǎn)通信。
協(xié)調(diào)器的軟件基于Z-Stack協(xié)議棧進(jìn)行設(shè)計(jì),在協(xié)調(diào)器上電后對Z-Stack協(xié)議棧進(jìn)行初始化操作,掃描信道與PAN ID建立Zigbee網(wǎng)絡(luò),然后等待終端節(jié)點(diǎn)加入網(wǎng)絡(luò)。當(dāng)終端節(jié)點(diǎn)加入Zigbee網(wǎng)絡(luò)時(shí),協(xié)調(diào)器會向其分配Zigbee網(wǎng)絡(luò)地址并發(fā)送入網(wǎng)成功響應(yīng)。Zigbee協(xié)調(diào)器建立Zigbee通信網(wǎng)絡(luò)的流程如圖3-3所示。
圖3-3 Zigbee協(xié)調(diào)器網(wǎng)絡(luò)建立流程
3.3Zigbee設(shè)備和網(wǎng)絡(luò)服務(wù)器通信流程設(shè)計(jì)
在網(wǎng)絡(luò)通信與Zigbee通信的協(xié)議設(shè)計(jì)完成后,需要將兩者的通信數(shù)據(jù)進(jìn)行整合,從而實(shí)現(xiàn)智能家居網(wǎng)關(guān)對兩種通信協(xié)議的轉(zhuǎn)換。
Zigbee設(shè)備的通信數(shù)據(jù)主要分為用戶本地操作后主動發(fā)送的數(shù)據(jù)和接收到命令后反饋的數(shù)據(jù)。在網(wǎng)絡(luò)服務(wù)器與Zigbee設(shè)備的通信過程中,數(shù)據(jù)通過各模塊層層傳遞。數(shù)據(jù)傳遞過程如圖3-4所示。
圖3-4 Zigbee設(shè)備和網(wǎng)絡(luò)服務(wù)器通信數(shù)據(jù)流程圖
在智能家居網(wǎng)關(guān)程序?qū)崿F(xiàn)Zigbee設(shè)備與網(wǎng)絡(luò)服務(wù)器交互的設(shè)計(jì)過程中,首先從Zigbee協(xié)調(diào)器與Zigbee節(jié)點(diǎn)設(shè)備的組網(wǎng)開始,然后實(shí)現(xiàn)智能家居網(wǎng)關(guān)對Zigbee設(shè)備的控制,最后實(shí)現(xiàn)Zigbee設(shè)備與網(wǎng)絡(luò)服務(wù)器所發(fā)送的數(shù)據(jù)綜合控制。
4.1Zigbee通信功能測試
智能家居網(wǎng)關(guān)主控制器與Zigbee協(xié)調(diào)器使用串口方式進(jìn)行通信,在兩者通信前先在PC端使用串口通信助手對智能家居網(wǎng)關(guān)主控制器的串口通信功能進(jìn)行測試。
對Zigbee協(xié)調(diào)器進(jìn)行通信測試,測試界面如圖4-1所示。
圖4-1 Zigbee協(xié)調(diào)器通信測試
由上圖可知,智能家居網(wǎng)關(guān)主控制器向Zigbee協(xié)調(diào)器發(fā)送讀取IEEE地址命令后,成功接收到Zigbee協(xié)調(diào)器返回的IEEE地址數(shù)據(jù)幀,Zigbee通信功能正常。
4.2以太網(wǎng)通信測試
在智能家居網(wǎng)關(guān)與網(wǎng)絡(luò)服務(wù)器進(jìn)行連接前,先在PC端使用Socket測試工具測試網(wǎng)絡(luò)服務(wù)器是否可以連接,排除因網(wǎng)絡(luò)服務(wù)器故障對網(wǎng)絡(luò)通信測試的影響。網(wǎng)絡(luò)服務(wù)器在PC端測試通過后,在程序中設(shè)置網(wǎng)絡(luò)服務(wù)器的IP與端口,嘗試與網(wǎng)絡(luò)服務(wù)器建立TCP連接,調(diào)試輸出信息如圖4-2所示。
圖4-2 智能家居網(wǎng)關(guān)以太網(wǎng)通信測試
由圖4-2智能家居網(wǎng)關(guān)輸出的調(diào)試信息可知,智能家居網(wǎng)關(guān)與網(wǎng)絡(luò)服務(wù)器成功建立了TCP連接。智能家居網(wǎng)關(guān)在向網(wǎng)絡(luò)服務(wù)器發(fā)送心跳包時(shí)迅速得到網(wǎng)絡(luò)服務(wù)器回應(yīng)的接收確認(rèn)消息,說明兩者之間的數(shù)據(jù)通信功能正常。
圖4-3 Zigbee設(shè)備調(diào)試界面
圖4-4 Zigbee智能開關(guān)調(diào)試數(shù)據(jù)
4.3聯(lián)機(jī)調(diào)試
Zigbee設(shè)備調(diào)試界面如圖4-3所示,其中1號、2號和3號按鈕實(shí)現(xiàn)對智能開關(guān)的控制,開窗簾、關(guān)窗簾和停止按鈕實(shí)現(xiàn)對智能窗簾的控制,紅外學(xué)習(xí)與紅外發(fā)送按鈕實(shí)現(xiàn)對紅外轉(zhuǎn)發(fā)設(shè)備的控制,調(diào)光照明燈可通過滑動條實(shí)現(xiàn)對照明燈亮度的控制,RGB調(diào)光燈的三原色可通過滑塊分別實(shí)現(xiàn)256級控制,并能在RGB_SET按鈕中預(yù)覽所設(shè)置的顏色。
以控制智能開關(guān)為例,在智能家居網(wǎng)關(guān)接收到網(wǎng)絡(luò)服務(wù)器發(fā)送來的控制數(shù)據(jù)后,可以正確對智能開關(guān)進(jìn)行控制。在用戶在本地手動對Zigbee智能開關(guān)進(jìn)行控制時(shí),智能家居網(wǎng)關(guān)向網(wǎng)絡(luò)服務(wù)器上報(bào)了Zigbee智能開關(guān)當(dāng)前的狀態(tài)。調(diào)試輸出信息如圖4-4所示。
本文提出一種無線智能家居網(wǎng)關(guān)的設(shè)計(jì)和實(shí)現(xiàn)方案,該方案采用高性能ARM 7處理器為核心,結(jié)合Zigbee模塊和以太網(wǎng)模塊,實(shí)現(xiàn)了Zigbee家用設(shè)備與互聯(lián)網(wǎng)的無縫連接,具有很好的通用性。
[1]宋輝.智能家庭網(wǎng)絡(luò)的研究[J].沿海企業(yè)與科技,2005.
[2]秦茂盛.基于Zigbee的智能家居系統(tǒng)設(shè)計(jì)[D].太原理工大學(xué),2011.
[3]阮星.Zigbee技術(shù)在智能家居系統(tǒng)中應(yīng)用的思考[J].科技信息,2010.
[4]王翔,樊強(qiáng),王斌,王洪建,WANG Xiang,F(xiàn)AN Qiang,WANG Bin,WANG Hong-jian.基于Internet的智能家居網(wǎng)關(guān)設(shè)計(jì)與實(shí)現(xiàn)[J].電力系統(tǒng)通信,2011.
[5]滿莎,楊恢先,彭友,王緒四.基于ARM9的嵌入式無線智能家居網(wǎng)關(guān)設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用,2010,30(9).
[6]任麗莉,康冰,閆冬梅.基于Zigbee和Android的智能家居系統(tǒng)設(shè)計(jì)[J].長春師范學(xué)院學(xué)報(bào):自然科學(xué)版,2013,32(6):31-35.
[7]朱祥賢.基于Android和Zigbee的智能家居系統(tǒng)設(shè)計(jì)[J].數(shù)字技術(shù)與應(yīng)用,2014(9):131-133.
高虎(1995—),安徽阜陽人,常熟理工學(xué)院電氣與自動化工程學(xué)院本科生,主要從事嵌入式系統(tǒng)方面的研究。
韓眾杰(1996—),江蘇南京人,常熟理工學(xué)院電氣與自動化工程學(xué)院本科生,主要從事嵌入式系統(tǒng)方面的研究。
李鑫【通信作者】(1983—),安徽亳州人,常熟理工學(xué)院中級實(shí)驗(yàn)師,研究方向:智能檢測與自動化裝置。