張 毅, 徐菲菲, 雷景生, 劉大明
(上海電力學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 上海 200090)
基于CC2530和ZigBee技術(shù)智能家居系統(tǒng)的設(shè)計(jì)與研究
張 毅, 徐菲菲, 雷景生, 劉大明
(上海電力學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院, 上海 200090)
為了提升用戶的體驗(yàn)度,實(shí)時(shí)掌握各類用電設(shè)備的狀態(tài),設(shè)計(jì)了融合ZigBee和WiFi無線技術(shù)的智能家居系統(tǒng).該系統(tǒng)采用CC2530為核心板,外接RF無線射頻收發(fā)器和繼電器,結(jié)合電能計(jì)量芯片RN8209和溫濕度傳感器DHT11,借助IAR集成環(huán)境,實(shí)現(xiàn)了PC端和手機(jī)端的并發(fā)訪問.實(shí)驗(yàn)結(jié)果表明,系統(tǒng)性能良好,通訊穩(wěn)定,通訊可靠距離可達(dá)50 m,具有很強(qiáng)的實(shí)用價(jià)值.
用戶體驗(yàn)度; ZigBee技術(shù); DHT11溫濕度傳感器; 智能家居
隨著計(jì)算機(jī)技術(shù)、控制技術(shù)和無線傳感器網(wǎng)絡(luò)的快速發(fā)展,以及人們物質(zhì)生活水平的不斷提高,人們的生活、工作與信息的聯(lián)系日益密切,可以說信息化社會(huì)正在逐步轉(zhuǎn)變?nèi)藗兊纳罘绞?同時(shí),這也對(duì)傳統(tǒng)的住宅提出了挑戰(zhàn),因此智能家居便應(yīng)運(yùn)而生了[1-3].然而,為了更好地服務(wù)用戶,提升用戶體驗(yàn),需要提供體積小、精度高的電能信息檢測(cè)模塊.目前,國內(nèi)大多數(shù)家庭和企業(yè)使用的是單相度或電子式電能表,其處理能力有限,可操作性差,存儲(chǔ)信息少,只能讀出用電量總和,無法對(duì)各種用電設(shè)備的能耗信息進(jìn)行區(qū)分,無法對(duì)某一個(gè)特定的用電設(shè)備進(jìn)行用電分析[4-5].
以無線傳感網(wǎng)絡(luò)為核心的物聯(lián)網(wǎng)的發(fā)展為電能監(jiān)測(cè)提供了一種新方法.ZigBee技術(shù)是一種短距離、低功耗、低成本的無線網(wǎng)絡(luò)技術(shù),具有非常高的通信效率[6-10].為實(shí)現(xiàn)ZigBee技術(shù)在智能家居領(lǐng)域的應(yīng)用,本文提出了一種基于ZigBee技術(shù)和CC2530的智能家居系統(tǒng)的設(shè)計(jì)方案,實(shí)現(xiàn)了對(duì)環(huán)境信息和電能信息的采集、傳輸、存儲(chǔ)與判斷,可自動(dòng)切斷發(fā)生故障的用電設(shè)備[11-12],很好地彌補(bǔ)了前述電能表的缺點(diǎn),同時(shí)用戶可以實(shí)時(shí)地知曉各類用電設(shè)備的用電信息,給用戶提供更好的生活體驗(yàn).
采用無線傳感網(wǎng)絡(luò)的智能家居系統(tǒng)由硬件部分和軟件部分組成.其中,硬件部分包括無線傳感器節(jié)點(diǎn)、樹莓派網(wǎng)關(guān)和管理設(shè)備組成,管理設(shè)備可以使用PC機(jī)或智能手機(jī);軟件部分由大數(shù)據(jù)平臺(tái)、數(shù)據(jù)庫管理系統(tǒng)、網(wǎng)頁服務(wù)系統(tǒng)及移動(dòng)端應(yīng)用程序等組成.網(wǎng)絡(luò)采用星型拓?fù)浣Y(jié)構(gòu),其系統(tǒng)結(jié)構(gòu)如圖1所示.
圖1 智能家居系統(tǒng)網(wǎng)絡(luò)體系構(gòu)架
從整個(gè)網(wǎng)絡(luò)功能來看,終端節(jié)點(diǎn)與用電設(shè)備直接相連,采集溫度、濕度、電壓、電流、功率等信息;路由節(jié)點(diǎn)視網(wǎng)絡(luò)的規(guī)模而定,轉(zhuǎn)發(fā)信息;協(xié)調(diào)節(jié)點(diǎn)用于組建整個(gè)網(wǎng)絡(luò),并向網(wǎng)關(guān)發(fā)送信息;系統(tǒng)網(wǎng)關(guān)主要完成串口讀取,以及ZigBee協(xié)議與TCP/IP協(xié)議的轉(zhuǎn)換,然后將數(shù)據(jù)存入數(shù)據(jù)庫或發(fā)送到云端存儲(chǔ)等功能.管理員可以通過Web平臺(tái)或者Android平臺(tái)來查詢和訪問用電信息.
智能家居系統(tǒng)的硬件設(shè)計(jì)包括MCU微處理器、電源模塊、傳感器、RN8209電能計(jì)量模塊、RS232串口通信等,以構(gòu)建完整的硬件平臺(tái).
2.1 CC2530片上系統(tǒng)
ZigBee無線傳感網(wǎng)絡(luò)特有的近距離、低復(fù)雜、自組織等技術(shù)優(yōu)勢(shì)使其成為智能家居系統(tǒng)的最佳選擇.其片上系統(tǒng)(System on a Chip,SoC)解決方案以美國德州儀器TI公司CC2530芯片為典型代表;CC2530芯片適用于2.4 GHz,IEEE 802.15.4,ZigBee與RF4CE應(yīng)用的第二代SoC片上系統(tǒng)CMOS解決方案.它能以很少的元器件來建成一個(gè)強(qiáng)大的網(wǎng)絡(luò),并且使用8051CPU內(nèi)核,配備256 kB Rash閃存記憶體;可與ZigBee協(xié)議棧相結(jié)合,提供一個(gè)強(qiáng)大、完整的ZigBee解決方案,以及RF射頻相關(guān)功能模塊.
2.2 ZigBee節(jié)點(diǎn)的硬件設(shè)計(jì)與實(shí)現(xiàn)
終端節(jié)點(diǎn)中集成了CC2530芯片、RN8209電能計(jì)量芯片及DHT11溫濕度傳感器等.MCU主要用于對(duì)環(huán)境參數(shù)進(jìn)行數(shù)據(jù)處理、邏輯判斷和智能分析.終端節(jié)點(diǎn)總體設(shè)計(jì)原理如圖2所示.
圖2 終端節(jié)點(diǎn)總體設(shè)計(jì)原理
2.2.1 CC2530外圍電路設(shè)計(jì)
在智能家居系統(tǒng)的硬件平臺(tái)中,CC2530的外圍電路是主體,包括晶體振蕩電路、RF射頻電路、電源電路、濾波電路、傳感器電路、RS232通信電路等.其中,晶振包括2個(gè)內(nèi)部RC晶振,2個(gè)外部石英晶振,12位ADC負(fù)責(zé)轉(zhuǎn)換傳感器模塊采集的環(huán)境參數(shù)信息;RF無線射頻實(shí)現(xiàn)ZigBee無線數(shù)據(jù)收發(fā);濾波電路與電源模塊一起工作,以提高CC2530內(nèi)部電壓的穩(wěn)定性.
2.2.2 電源模塊設(shè)計(jì)
由于節(jié)點(diǎn)主要面向室內(nèi)用電設(shè)備,所以設(shè)計(jì)用AC 220 V/50 Hz交流供電,然而硬件電路中需要輸出DC3.3 V和DC5 V.
電流通過變壓器和二極管整流后,進(jìn)入7805三端穩(wěn)壓集成電路,輸出直流5 V,再經(jīng)過三端穩(wěn)壓芯片SP1117-3.3提供3.3 V電壓輸出.電源模塊實(shí)物如圖3所示.
圖3 電源模塊實(shí)物示意
2.2.3 DHT11溫濕度采集模塊設(shè)計(jì)
溫度和濕度傳感器是采集系統(tǒng)的重要組成部分.采用DHT11數(shù)字式溫濕度傳感器,其供電直流電壓為3.3~5.5 V,測(cè)量精度為:濕度±5%,溫度±2 ℃.
DHT11通過單總線與微處理器通訊,只需要一根線,一次傳輸40位數(shù)據(jù),高位先出,低位后出,并含有8 bit的校驗(yàn)位,保證數(shù)據(jù)的正確性.DHT11的工作流程如圖4所示.
圖4 DHT11工作流程
由圖4可知,每一次主機(jī)獲得的數(shù)據(jù)總是DHT11上一次采集的數(shù)據(jù),因此為了得到實(shí)時(shí)的數(shù)據(jù),主機(jī)需要連續(xù)給DHT11發(fā)送兩次信號(hào).
2.2.4 RN8209電能采集模塊設(shè)計(jì)
電能信息由RN8209芯片采集和計(jì)算,RN8209具有測(cè)量有功功率、有功能量、電壓、電流等基本功能,并且擴(kuò)展了串行接口UART,與CC2530通信更方便.
在交流電路中,除了P=UI外,還有一個(gè)反映電壓、電流相位差的余弦,即功率因數(shù)cosφ,故RN8209提供測(cè)量的方法如下.
(1) 電流有效值 取每一個(gè)工頻周期內(nèi)同步采樣次數(shù)為N,則電流有效值Id的計(jì)算公式為:
(1)
式中:i(t)——t時(shí)刻電流的瞬時(shí)值;k——采樣序號(hào).
(2) 電壓有效值 取每一個(gè)工頻周期內(nèi)同步采樣次數(shù)為N,則電壓有效值Ud的計(jì)算公式為:
(2)
式中:u(t)——t時(shí)刻電流的瞬時(shí)值.
(3) 有功功率 采用積分算法,有功功率Pd的計(jì)算公式為:
(3)
2.2.5 RS232串口通訊模塊設(shè)計(jì)
RS232串口通信模塊是ZigBee無線傳感網(wǎng)絡(luò)中的協(xié)調(diào)器網(wǎng)關(guān)節(jié)點(diǎn)與云平臺(tái)雙向通信的橋梁.串口通信模塊的TXD和RXD管腳分別用來發(fā)送和接收數(shù)據(jù),讀取實(shí)時(shí)采集到的光照度、溫度、電流電壓等數(shù)據(jù)信息.
2.3 樹莓派網(wǎng)關(guān)的硬件設(shè)計(jì)
網(wǎng)關(guān)是實(shí)現(xiàn)家庭外部網(wǎng)絡(luò)(Internet和WiFi)與家庭內(nèi)部控制網(wǎng)絡(luò)(ZigBee)之間連接的重要設(shè)備,其既要有ZigBee網(wǎng)絡(luò)的協(xié)調(diào)器功能,還需要具備TCP/IP通訊功能.采用2代B型樹莓派網(wǎng)關(guān),它是基于ARM的微型電腦主板,兩個(gè)USB接口和一個(gè)網(wǎng)口,擁有GPIO硬件模塊,并支持無線網(wǎng)卡,可以利用遠(yuǎn)程網(wǎng)絡(luò)進(jìn)行控制.
實(shí)現(xiàn)智能家居不僅需要硬件環(huán)境,還需要軟件環(huán)境,其中一部分是軟件的開發(fā)環(huán)境IAR Embedded Workbench,具有高度優(yōu)化的IAR AVR C/C++交叉編譯器、強(qiáng)大的調(diào)試器、工程管理器,是最完整的專業(yè)嵌入式系統(tǒng)開發(fā)工具;另一部分是ZigBee協(xié)議棧,采用TI的Z-Stack-CC2530-2.3.0-1.4.0.系統(tǒng)軟件設(shè)計(jì)主要包括終端節(jié)點(diǎn)設(shè)計(jì)、協(xié)調(diào)器設(shè)計(jì)和網(wǎng)關(guān)程序設(shè)計(jì).
3.1 協(xié)調(diào)器節(jié)點(diǎn)軟件設(shè)計(jì)
協(xié)調(diào)器節(jié)點(diǎn)主要有兩個(gè)任務(wù):一是上電時(shí)建立網(wǎng)絡(luò)并允許其他節(jié)點(diǎn)加入該網(wǎng)絡(luò);二是能夠接收終端節(jié)點(diǎn)發(fā)送來的數(shù)據(jù),并將這些信息通過串口發(fā)送給網(wǎng)關(guān).協(xié)調(diào)器的工作流程如圖5所示.
圖5 協(xié)調(diào)器工作流程
3.2 終端節(jié)點(diǎn)軟件設(shè)計(jì)
終端節(jié)點(diǎn)主要負(fù)責(zé)信息的采集,包括溫度、濕度、光照度,以及電壓、電流、功率等信息,并將這些信息發(fā)送給協(xié)調(diào)器.為了節(jié)約電能,終端節(jié)點(diǎn)并非一直處于工作狀態(tài),當(dāng)沒有進(jìn)行數(shù)據(jù)的接收和發(fā)送時(shí),節(jié)點(diǎn)處于休眠狀態(tài),以降低系統(tǒng)的功耗.終端節(jié)點(diǎn)的工作流程如圖6所示.
圖6 終端節(jié)點(diǎn)工作流程
3.3 網(wǎng)關(guān)節(jié)點(diǎn)軟件設(shè)計(jì)
根據(jù)設(shè)計(jì)要求,該網(wǎng)關(guān)既能運(yùn)行TCP/IP協(xié)議,又能運(yùn)行ZigBee協(xié)議.位于樹莓派最底層的是硬件的驅(qū)動(dòng)程序,在HAL層之上是硬件抽象層,它為上層ubuntu操作系統(tǒng)提供虛擬的硬件平臺(tái).在操作系統(tǒng)層上面是ZigBee協(xié)議棧和TCP/IP協(xié)議棧,其中ZigBee協(xié)議棧采用TI的Z-Stack協(xié)議棧.應(yīng)用程序向網(wǎng)絡(luò)發(fā)起請(qǐng)求,數(shù)據(jù)以TCP/IP協(xié)議發(fā)給遠(yuǎn)程客戶端,從而上傳數(shù)據(jù)庫或進(jìn)行分析.
將ZigBee技術(shù)與無線傳感器網(wǎng)絡(luò)有機(jī)結(jié)合組建而成的智能家居系統(tǒng),不僅體現(xiàn)出現(xiàn)代家居環(huán)境的人性化、信息化,而且用戶還可以通過移動(dòng)設(shè)備控制各種家電的工作狀態(tài),實(shí)現(xiàn)對(duì)家庭網(wǎng)絡(luò)的遙控操作,為用戶提供更加舒適的生活和工作環(huán)境.
4.1 無線傳輸質(zhì)量檢測(cè)
作為Z-stack協(xié)議棧的精簡(jiǎn)版本,Basic RF由TI公司提供,包含了IEEE標(biāo)準(zhǔn)的數(shù)據(jù)包收發(fā).測(cè)試地點(diǎn)選在開闊的操場(chǎng),因其干擾相對(duì)較小,節(jié)點(diǎn)發(fā)射和接收天線的增益均為3 dB.之后選擇在室內(nèi),考慮到房間的大小,只測(cè)到了30 m.測(cè)試結(jié)果如表1所示.
表1 傳輸距離檢測(cè)結(jié)果
注:RSSI—接收信號(hào)強(qiáng)度指示(Received Signal Strength Indicator).
4.2 系統(tǒng)總體測(cè)試
該智能家居系統(tǒng)采用星型拓?fù)?終端節(jié)點(diǎn)與用電設(shè)備相連,采集信息;樹莓派網(wǎng)關(guān)主要完成讀取串口,以及ZigBee協(xié)議與TCP/IP協(xié)議的轉(zhuǎn)換,然后將數(shù)據(jù)存入數(shù)據(jù)庫或發(fā)送到云端存儲(chǔ)等功能.系統(tǒng)總體結(jié)構(gòu)如圖7所示.
為了測(cè)試所設(shè)計(jì)的傳感器節(jié)點(diǎn)的有效性,現(xiàn)測(cè)試如下:
(1) 通過CC Debugger,即片上仿真調(diào)試器,將Coordinator和EndDevice程序燒錄到協(xié)調(diào)器節(jié)點(diǎn)和終端節(jié)點(diǎn);
(2) 給協(xié)調(diào)器節(jié)點(diǎn)上點(diǎn),組建網(wǎng)絡(luò);
(3) 終端節(jié)點(diǎn)連接用電設(shè)備并上電;
(4) 打開串口調(diào)試助手接收數(shù)據(jù).
傳輸結(jié)果如表2所示.由于采集的時(shí)間僅為4 s,故傳輸結(jié)果幾乎相同.
圖7 系統(tǒng)總體結(jié)構(gòu)
序 號(hào)溫度/℃濕度/%光照/lux電壓/V電流/mA功率/W電量/kWh1253220223.9624.714.110.00252253220223.9624.714.110.00253253220223.9624.714.110.0025
本文基于CC2530芯片,結(jié)合ZigBee協(xié)議棧,利用樹莓派作網(wǎng)關(guān),設(shè)計(jì)了智能家居系統(tǒng),并對(duì)系統(tǒng)進(jìn)行了實(shí)際驗(yàn)證.結(jié)果表明,本系統(tǒng)是切實(shí)可行的,可以滿足實(shí)用需要,達(dá)到了對(duì)家居環(huán)境的智能監(jiān)控和自動(dòng)控制效果,能增加住戶的安全感,提高人們的生活質(zhì)量,并能對(duì)發(fā)生異常的用電設(shè)備進(jìn)行自動(dòng)切除.但本文對(duì)采集到的數(shù)據(jù)信息只是備份到了云端,并未對(duì)數(shù)據(jù)信息進(jìn)行分析、挖掘,因此在以后的研究中,可以利用云計(jì)算、數(shù)據(jù)挖掘等技術(shù),提供更好的生活體驗(yàn).
[1] 邵鵬飛,王喆,張寶儒.面向移動(dòng)互聯(lián)網(wǎng)的智能家居系統(tǒng)研究[J].計(jì)算機(jī)測(cè)量與控制,2012,20(2):474-476.
[2] 張小威.ZigBee電路設(shè)計(jì)及在智能家居中的應(yīng)用[D].南京:南京郵電大學(xué),2013.
[3] 李宇,王衛(wèi)星,陳潤(rùn)澤.基于ZigBee的物聯(lián)網(wǎng)智能家居系統(tǒng)[J].電子測(cè)試,2016(5):71-75.
[4] 蔡利婷,陳平華,羅彬,等.基于CC2530的ZigBee數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2012(11):197-200.
[5] 章偉聰,俞新武,李忠成.基于CC2530及ZigBee協(xié)議棧設(shè)計(jì)無線網(wǎng)絡(luò)傳感器節(jié)點(diǎn)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2011,20(7):184-187.
[6] 楊瑋,呂科,張棟,等.基于ZigBee技術(shù)的溫室無線智能控制終端開發(fā)[J].農(nóng)業(yè)工程學(xué)報(bào),2010,26(3):198-202.
[7] 許東,操文元,孫茜.基于CC2530的環(huán)境監(jiān)測(cè)無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)計(jì)[J].計(jì)算機(jī)應(yīng)用,2013,33(S2):17-20.
[8] 劉慧,王鳴.基于CC2530的溫度監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].工業(yè)控制計(jì)算機(jī),2012,25(4):49-50.
[9] 潘偉,黃東.基于Zigbee技術(shù)的無線傳感網(wǎng)絡(luò)研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2008,18(9):244-247.
[10] 劉志斌,雷景生,杜海舟.基于TinyOS的用電監(jiān)測(cè)無線傳感器節(jié)點(diǎn)設(shè)計(jì)[J].上海電力學(xué)院學(xué)報(bào),2015,31(1):68-72.
[11] 成小良,鄧志東,董志然.基于無線通信和計(jì)算特征分析的能耗模型[J].計(jì)算機(jī)研究與發(fā)展,2009,46(12):1 985-1 993.
[12] 彭燕.基于ZigBee的無線傳感器網(wǎng)絡(luò)研究[J].現(xiàn)代電子技術(shù),2011,34(5):49-51.
(編輯 胡小萍)
Design and Research of the Smart Home System Based on CC2530 and ZigBee Wireless Technology
ZHANG Yi, XU Feifei, LEI Jingsheng, LIU Daming
(SchoolofComputerScienceandTechnology,ShanghaiUniversityofElectricPower,Shanghai200090,China)
In order to enhance the user experience,real-time control of various types of electrical appliances,the integration of ZigBee and WiFi wireless technology for Smart Home System is designed.The system uses CC2530 as core board,external RF radio frequency transceiver and the relay are also utilized,in combination with energy metering IC RN8209 and sensor DHT11,and with IAR integrated environment.The concurrent access PC and mobile phone are achieved.The actual test shows that the system is good in performance and the communication is reliable at the same time,with the communication distance of up to 50 meters and strong practical value.
user experience; ZigBee technology; DHT11 temperature and moisture sensor; smart home
10.3969/j.issn.1006-4729.2017.02.016
2016-09-05
張毅(1989-),男,在讀碩士,江蘇徐州人.主要研究方向?yàn)闊o線傳感器網(wǎng)絡(luò)技術(shù).E-mail:yizhang0126@126.com.
TP18
A
1006-4729(2017)02-0191-05