梁峰,趙金才,都曉鵬,方昱凱,王鵬飛
?
基于ZigBee2007/PRO的智能家居無線組網(wǎng)設(shè)計(jì)
梁峰,趙金才通信作者,都曉鵬,方昱凱,王鵬飛
(天津農(nóng)學(xué)院工程技術(shù)學(xué)院,天津 300384)
提出一種基于ZigBee2007/PRO協(xié)議棧的ZigBee無線組網(wǎng)設(shè)計(jì)方案,設(shè)計(jì)采用CC2530作為ZigBee協(xié)調(diào)器和ZigBee終端的主控芯片,終端設(shè)備掛載不同的傳感器形成智能家居系統(tǒng)中的控制、檢測節(jié)點(diǎn),與作為主控中心的協(xié)調(diào)器無線互聯(lián),組成一整套智能家居控制系統(tǒng)。
智能家居;ZigBee;無線組網(wǎng)
隨著科學(xué)技術(shù)的快速發(fā)展以及人們生活水平的提高,傳統(tǒng)家居所能提供的簡單居住環(huán)境已不能滿足人們對(duì)高品質(zhì)生活的追求[1],智能家居這一概念應(yīng)運(yùn)而生。廣泛應(yīng)用的智能家居系統(tǒng)無線組網(wǎng)一般利用WiFi或藍(lán)牙實(shí)現(xiàn)。WiFi采用無線電波傳輸數(shù)據(jù)信號(hào),具有較好的擴(kuò)展性和可移動(dòng)性,但在信息安全方面存在隱患。曾有媒體報(bào)道,某智能家居產(chǎn)品被黑客輕松攻破,這說明WiFi傳輸具有不安全性。與WiFi相比,藍(lán)牙具有更好的安全性能,但藍(lán)牙技術(shù)的協(xié)議較復(fù)雜、功耗大、成本高、傳輸距離近等問題也不適合于智能家居通信。WiFi、藍(lán)牙的這些缺點(diǎn)制約了智能家居的發(fā)展。與WiFi、藍(lán)牙相比,ZigBee是一種低功耗、低成本、安全性能高的無線網(wǎng)絡(luò)技術(shù)。藍(lán)牙和WiFi網(wǎng)端只能接入10個(gè)端口,而ZigBee的每個(gè)網(wǎng)絡(luò)端口可以最多接入6.5萬多個(gè)端口,有效范圍可達(dá)200 m,在智能家居的使用性能方面要優(yōu)于其他無線技術(shù),完全能夠滿足普通家庭的使用需求[2]。
本文采用TI公司的CC2530芯片及配套的ZigBee2007/PRO協(xié)議棧,針對(duì)家庭中的實(shí)際情況設(shè)計(jì)了一套ZigBee無線傳輸控制系統(tǒng)。該家用電器的無線組網(wǎng)實(shí)現(xiàn)了多節(jié)點(diǎn)易燃?xì)怏w、溫濕度等參數(shù)的監(jiān)測,家庭入侵狀況的監(jiān)視,消除了家中火災(zāi)、中毒、被盜等諸多安全隱患。同時(shí)利用該網(wǎng)絡(luò)還可以遠(yuǎn)程控制電燈、空調(diào)、熱水器等家用電器,真正實(shí)現(xiàn)家居的可監(jiān)可控,系統(tǒng)還可以根據(jù)各自戶型的特點(diǎn),進(jìn)行定制安裝,擁有很高的兼容性和可選擇性,適合智能家居廣泛應(yīng)用[3]。
系統(tǒng)主要由一個(gè)ZigBee協(xié)調(diào)器、多個(gè)ZigBee終端、電源模塊、按鍵輸入模塊、液晶顯示模塊、防盜監(jiān)控模塊、煙霧檢測模塊、溫濕度模塊和無線開關(guān)模塊等組成。協(xié)調(diào)器和終端之間采用無線通信。變壓后的市電和鋰電池為整套系統(tǒng)的工作提供電源;按鍵輸入模塊以及液晶顯示模塊用于人機(jī)交互;協(xié)調(diào)器是整套無線網(wǎng)絡(luò)的主處理中心,它的主要任務(wù)是建立并監(jiān)督無線網(wǎng)絡(luò)的正常運(yùn)行;各個(gè)協(xié)調(diào)器上掛載著不同的傳感器模塊,大部分時(shí)間休眠,只在設(shè)定的固定時(shí)間段喚醒進(jìn)行采集數(shù)據(jù)并回傳,消耗電流少。系統(tǒng)可以被放置在家中的不同位置,采集各種信息并無線回傳到協(xié)調(diào)器用于用戶處理[4]。整套系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
根據(jù)模塊化設(shè)計(jì)思想將系統(tǒng)硬件劃分為多種獨(dú)立模塊,用戶可以根據(jù)各自戶型的不同進(jìn)行增刪,與傳統(tǒng)方式相比,不僅擁有很高的兼容性和可選擇性,而且降低了施工成本和安裝周期。
2.1 ZigBee模塊
系統(tǒng)中選用的ZigBee協(xié)調(diào)器及終端均是以TI公司CC2530F256芯片為主核心的模塊,CC2530是用于ZigBee的一個(gè)真正的片上系統(tǒng)。片內(nèi)置有增強(qiáng)型8051 CPU,工作電壓為2~3.7 V。
2.2 電源模塊
電源是一個(gè)系統(tǒng)運(yùn)行的關(guān)鍵,考慮到實(shí)際使用和安裝方便,本系統(tǒng)采用兩種方式進(jìn)行供電。協(xié)調(diào)器和執(zhí)行控制節(jié)點(diǎn)需長期供電且不用移動(dòng)位置,它們利用市電變壓供電;而檢測節(jié)點(diǎn)需要檢測家中任意位置,為方便移動(dòng),采用單節(jié)3.7 V鋰電池對(duì)其獨(dú)立供電。
利用變壓器先將220 V變壓到12 V為繼電器供電,同時(shí)12 V經(jīng)過開關(guān)穩(wěn)壓芯片LM2596轉(zhuǎn)至5 V為各個(gè)傳感器模塊供電,由于開關(guān)穩(wěn)壓芯片電壓紋波大,所以采用線性穩(wěn)壓芯片7333將電壓穩(wěn)定至3.3 V為主芯片CC2530供電,減少干擾,保證主核心單片機(jī)的正常運(yùn)行,原理圖如圖2所示。
單節(jié)3.7 V鋰電池同樣采用低壓差穩(wěn)壓芯片7333將電壓穩(wěn)壓至3.3 V,為可移動(dòng)的數(shù)據(jù)檢測終端節(jié)點(diǎn)的單片機(jī)進(jìn)行供電。終端上電后首先使用電池電壓,如電量不足,則通過閃爍終端模塊上的LED提醒用戶充電。
2.3 人機(jī)交互模塊
人機(jī)交互模塊包括輸入按鍵和LCD液晶顯示屏,按鍵與CC2530的IO口相連接,實(shí)現(xiàn)用戶設(shè)置信息的輸入。LCD采用12864的液晶顯示屏,用于顯示終端模塊采集回來的信息以及家中設(shè)備的狀態(tài)。
2.4 傳感器模塊
在ZigBee終端上掛載不同的傳感器模塊可構(gòu)成各種各樣的控制節(jié)點(diǎn),在使用時(shí)根據(jù)實(shí)際情況進(jìn)行合理的調(diào)配,滿足不同的用戶需求。
2.4.1 煙霧檢測模塊
系統(tǒng)采用MQ-2型煙霧傳感器,當(dāng)檢測家庭廚房天然氣的泄漏或發(fā)生火災(zāi)產(chǎn)生的煙霧時(shí),連接煙霧傳感器的終端將信息發(fā)送至協(xié)調(diào)器,協(xié)調(diào)器報(bào)警,提醒家人進(jìn)行妥善處理。原理圖如圖3所示。
2.4.2 防盜監(jiān)控模塊
系統(tǒng)采用人體熱釋電紅外傳感器與霍爾門磁傳感器作為防盜模塊,紅外熱釋電傳感器能以非接觸形式檢測出人體輻射的紅外線能量的變化,判斷是否有人非法入侵?;魻栭T磁傳感器由安裝在門框上的霍爾傳感器和安裝在門上的霍爾門磁傳感器組成,當(dāng)門窗關(guān)好時(shí),磁鐵位于霍爾傳感器的正下方,當(dāng)門窗沒有關(guān)好或者是在自動(dòng)安防模式下盜賊破門而入時(shí),霍爾傳感器不會(huì)檢測到磁鐵。基于霍爾原理能夠?qū)崿F(xiàn)家中的防盜監(jiān)控以及對(duì)門窗開關(guān)狀態(tài)的監(jiān)測。
2.4.3 溫濕度模塊
系統(tǒng)溫濕度模塊采用DHT11溫濕度傳感器,溫濕度檢測范圍為:0~50 ℃和20%~90%RH。能夠滿足家庭的日常應(yīng)用。
2.4.4 無線開關(guān)模塊
系統(tǒng)的無線開關(guān)模塊由多個(gè)松樂SRD- 12VDC-SL-C型繼電器組成,最大允許電流高達(dá)10 A,滿足一般家用電器功率要求。通過光耦實(shí)現(xiàn)強(qiáng)弱電隔離,既能消除繼電器動(dòng)作對(duì)單片機(jī)的影響,又能防止觸電事故的發(fā)生。原理圖如圖4所示。
系統(tǒng)采用TI公司提供的ZigBee協(xié)議棧,利用C語言在官方提供的Z-Stack通用模版的基礎(chǔ)上,調(diào)用協(xié)議棧封裝好的API實(shí)現(xiàn)具體的功能。系統(tǒng)采用星型結(jié)構(gòu)。上電后,協(xié)調(diào)器會(huì)在ZigBee2007/ PRO協(xié)議棧的調(diào)配下初始化并建立自己的網(wǎng)絡(luò),同時(shí)為建立的網(wǎng)絡(luò)分配區(qū)別于其他網(wǎng)絡(luò)的網(wǎng)絡(luò)標(biāo)識(shí)符PANID。當(dāng)掛載有不同傳感器的終端模塊得電后同時(shí)自動(dòng)搜索網(wǎng)絡(luò),實(shí)現(xiàn)網(wǎng)絡(luò)自組。
3.1 ZigBee協(xié)調(diào)器軟件設(shè)計(jì)
整個(gè)系統(tǒng)軟件中協(xié)調(diào)器與終端的軟件建立在同一個(gè)工程當(dāng)中,通過修改IAR編譯器預(yù)編譯項(xiàng)的宏定義來區(qū)分協(xié)調(diào)器及終端的程序。
當(dāng)上電完成后協(xié)調(diào)器在網(wǎng)絡(luò)中有3項(xiàng)任務(wù)[5]:
第一,建立并維護(hù)無線網(wǎng)絡(luò)的正常運(yùn)行,這一部分在Z-Stack協(xié)議棧中自動(dòng)完成。
第二,解析用戶的輸入,將相應(yīng)命令發(fā)給終端設(shè)備。
第三,接收從終端節(jié)點(diǎn)返回來的信息,在LCD屏幕上顯示,實(shí)現(xiàn)人機(jī)交互。
在協(xié)議棧自帶操作系統(tǒng)osal中,這3項(xiàng)任務(wù)幾乎是同時(shí)進(jìn)行的。協(xié)調(diào)器工作流程如圖5所示。osal順序執(zhí)行task任務(wù),主要功能函數(shù)編寫在用戶自定義任務(wù)當(dāng)中。其中SYS_EVENT_MSG事件不可屏蔽,該項(xiàng)發(fā)生后,系統(tǒng)提取消息包,如果提取到的命令為AF_INCOMING_MSG_CMD,說明協(xié)調(diào)器通過射頻RF收到了數(shù)據(jù),隨即調(diào)用數(shù)據(jù)處理函數(shù)。收到的信息包括clusterId 串和真正的數(shù)據(jù),系統(tǒng)給每個(gè)終端分配各自的clusterId串,在數(shù)據(jù)處理函數(shù)中通過區(qū)別clusterId串來識(shí)別不同的終端模塊,進(jìn)而將不同終端節(jié)點(diǎn)傳來的信息進(jìn)行相應(yīng)的處理,如將家中其他設(shè)備的實(shí)時(shí)狀態(tài)顯示在LCD屏幕上供用戶觀察等。
3.2 ZigBee終端軟件設(shè)計(jì)
在Z-Stack協(xié)議中,ZigBee模塊之間的通訊方式有3種,分為廣播、組播和單播。協(xié)調(diào)器向終端廣播信息,終端向協(xié)調(diào)器單播信息。終端之間不能相互直接通信,需要中控中心的協(xié)調(diào)器作為兩者之間的中轉(zhuǎn)站。終端上電后,首先檢測電源電壓,如果電壓不足則閃爍LED提醒用戶更換電池,如果電壓正常,則osal輪詢?nèi)蝿?wù),與協(xié)調(diào)器相同,當(dāng)SYS_EVENT_MSG事件發(fā)生,消息列表里包含的命令為ZDO_STATE_CHANGE時(shí),說明本設(shè)備網(wǎng)絡(luò)狀態(tài)改變,如果本設(shè)備被分配為終端節(jié)點(diǎn),則開啟一個(gè)定時(shí)任務(wù),進(jìn)入休眠計(jì)時(shí),到設(shè)定時(shí)間喚醒設(shè)備進(jìn)行信息采集回傳,回傳完畢再次休眠。終端程序流程如圖6所示。
3.3 通訊協(xié)議設(shè)計(jì)
終端、協(xié)調(diào)器之間數(shù)據(jù)傳輸時(shí),ZigBee 2007/PRO協(xié)議棧中封裝的校驗(yàn)環(huán)節(jié)對(duì)數(shù)據(jù)進(jìn)行校驗(yàn),防止出錯(cuò)。為進(jìn)一步保證協(xié)調(diào)器與終端設(shè)備正確通訊,設(shè)計(jì)了一種由結(jié)構(gòu)體構(gòu)成的簡單數(shù)據(jù)傳輸協(xié)議。信息交互時(shí),都以此種結(jié)構(gòu)的數(shù)據(jù)包為最小單位項(xiàng)(表1)。其包括數(shù)據(jù)頭、本設(shè)備類型、本節(jié)點(diǎn)地址、本節(jié)點(diǎn)的父節(jié)點(diǎn)地址、真正的數(shù)據(jù)、校驗(yàn)位和數(shù)據(jù)尾。
表1 信息交互最小單位
收到數(shù)據(jù)后,接收方不僅可以得到具體數(shù)據(jù),還可以得到發(fā)送方的地址。其中校驗(yàn)位是在數(shù)據(jù)發(fā)送前將真正數(shù)據(jù)進(jìn)行異或處理的單字節(jié),發(fā)送完成后,接收方將接收到數(shù)據(jù)后再次進(jìn)行異或校驗(yàn),將校驗(yàn)的結(jié)果與發(fā)送過來的校驗(yàn)位比較,如果相同說明數(shù)據(jù)傳送正確,否則丟棄。這樣兩重校驗(yàn)保證了數(shù)據(jù)的正確傳輸,消除誤碼[6]。
將收到的最小項(xiàng)數(shù)據(jù)包中的真正數(shù)據(jù)提取出后,協(xié)調(diào)器或終端進(jìn)行解碼并執(zhí)行預(yù)定的命令。
針對(duì)如今人們對(duì)家居環(huán)境更高的應(yīng)用需求和特點(diǎn),利用TI公司的CC2530單片機(jī)基于ZigBee 2007/PRO協(xié)議棧的ZigBee技術(shù)建立了底層無線組網(wǎng),實(shí)現(xiàn)了智能家居系統(tǒng)中溫濕度、煤氣、煙霧等參數(shù)的實(shí)時(shí)監(jiān)測,并且能夠根據(jù)實(shí)際情況更改閾值控制用電設(shè)備自動(dòng)開啟關(guān)閉。利用人體紅外熱釋電傳感器及霍爾門磁設(shè)計(jì)了一種有效防盜報(bào)警裝置,實(shí)現(xiàn)了智能安防功能。相比于WiFi、藍(lán)牙等傳統(tǒng)組網(wǎng)方案,本文提出的基于ZigBee的無線組網(wǎng)方案安全性高、功耗低,終端節(jié)點(diǎn)還可根據(jù)實(shí)際情況不斷添加多種傳感器和控制設(shè)備實(shí)現(xiàn)無限擴(kuò)展。
整套系統(tǒng)易于安裝、成本低廉、維護(hù)簡單,為智能家居技術(shù)的發(fā)展進(jìn)行了新的探索,相信具有很好的應(yīng)用前景??紤]到互聯(lián)網(wǎng)技術(shù)的廣泛應(yīng)用,后續(xù)將以此系統(tǒng)為基礎(chǔ)設(shè)計(jì)無線網(wǎng)關(guān)以及手機(jī)APP,實(shí)現(xiàn)家居的遠(yuǎn)程監(jiān)控,進(jìn)一步完善整套系統(tǒng)的性能,給實(shí)際使用帶來更加方便舒適的體驗(yàn)。
[1] 白永祥. 基于物聯(lián)網(wǎng)的家庭安防系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J]. 電子設(shè)計(jì)工程,2015,23(18):20-26.
[2] 王華偉. 基于ZigBee和OpenWrt的智能家居控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D]. 昆明:云南大學(xué),2015.
[3] 辛碩. 基于ZigBee無線網(wǎng)絡(luò)和LabVIEW的智能家居系統(tǒng)設(shè)計(jì)[D]. 北京:北方工業(yè)大學(xué),2015.
[4] 王利琦. 基于ZigBee技術(shù)的智能家居系統(tǒng)設(shè)計(jì)[D]. 長春:吉林建筑大學(xué),2015.
[5] 王小強(qiáng),歐陽駿,黃寧淋. ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計(jì)與實(shí)現(xiàn)[M]. 北京:化學(xué)工業(yè)出版社,2012.
[6] 馬忠梅,王美剛,孫娟,等. 單片機(jī)的C語言應(yīng)用程序設(shè)計(jì)[M]. 5版. 北京:北京航空航天大學(xué)出版社,2013.
Design of Smart Home Wireless Network Based on ZigBee 2007/PRO
LIANG Feng, ZHAO Jin-caiCorressponding Author, DU Xiao-peng, FANG Yu-kai, WANG Peng-fei
(College of Engineering and Technology, Tianjin Agricultural University, Tianjin 300384, China)
In this paper, we propose a design of smart home wireless network based on ZigBee 2007/PRO protocol stack. The CC2530 was adopted as ZigBee coordinator and terminal main control chip. The terminal equipment with different sensors will be the control node in the system of smart home, interconnecting wirelessly with the coordinator which is acting as the main control center. Then, a whole suite of smart home controlling system is in front of us.
smart home; ZigBee; wireless network
TP277.2
A
1008-5394(2016)03-0047-04
2016-01-05
天津市大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目“基于ZigBee與APP技術(shù)的智能家居監(jiān)控系統(tǒng)”(201510061083)
梁峰(1993-),男,河北張家口人,本科在讀,主要從事檢測與控制方向研究。E-mail:846399316@qq.com。
趙金才(1976-),男,河北冀州人,副教授,博士,主要從事檢測與控制方向研究。E-mail:jcz602@163.com。