岑榮瀅, 姜 琴, 扈健瑋, 孫夢莉
?
面向智能家居應(yīng)用的ZigBee-WiFi網(wǎng)關(guān)①
岑榮瀅, 姜 琴, 扈健瑋, 孫夢莉
(青島工學(xué)院信息工程學(xué)院, 青島 266300)
ZigBee和WiFi是智能家居設(shè)備常用的兩種無線通信技術(shù), 針對智能家居設(shè)備使用ZigBee自組網(wǎng)無法和用戶WiFi網(wǎng)絡(luò)中的智能終端直接通信的問題, 設(shè)計(jì)面向家庭應(yīng)用環(huán)境的ZigBee-WiFi無線網(wǎng)關(guān). 網(wǎng)關(guān)采用S3C6410作為控制核心, 運(yùn)行Linux操作系統(tǒng), 以USB連接無線網(wǎng)卡, 以DMA通道連接CC2530模塊. 通過信道掃描切換的方案解決ZigBee和WiFi兩種信號之間相互干擾的問題, 通過數(shù)據(jù)線連接的方式給要加入ZigBee網(wǎng)絡(luò)的新設(shè)備分發(fā)密鑰. 實(shí)驗(yàn)表明, 所實(shí)現(xiàn)的無線網(wǎng)關(guān)信號穩(wěn)定, 丟包率低, 實(shí)用性強(qiáng), 在智能家居系統(tǒng)中運(yùn)行穩(wěn)定、可靠.
ZigBee; WiFi; 無線網(wǎng)關(guān); S3C6410; 智能家居
智能家居在近年的發(fā)展迅速, 使用家庭戶數(shù)從2002年的2萬戶, 經(jīng)過2007年的45萬戶, 直達(dá)2010年的68萬戶[1]. ZigBee和WiFi無線通信技術(shù)在智能家居系統(tǒng)中得到普遍的應(yīng)用, 并且在同一智能家居系統(tǒng)中往往同時(shí)使用這兩種技術(shù), 并通過異構(gòu)網(wǎng)網(wǎng)關(guān)實(shí)現(xiàn)互聯(lián), 以實(shí)現(xiàn)不同網(wǎng)絡(luò)中終端的信息交互.
網(wǎng)關(guān)是一種充當(dāng)轉(zhuǎn)換重任的計(jì)算機(jī)系統(tǒng)或設(shè)備, 是連接不同網(wǎng)絡(luò)的軟件和硬件的結(jié)合體. 在使用不同的通信協(xié)議、數(shù)據(jù)格式或語言甚至體系完全不同的兩種系統(tǒng)之間, 網(wǎng)關(guān)是一個(gè)翻譯器; 通過重新封裝數(shù)據(jù)信息以使得它們能被另一個(gè)系統(tǒng)讀取, 以適應(yīng)目的系統(tǒng)的需求[2].
本文研究并設(shè)計(jì)了一種面向智能家居應(yīng)用的WiFi與ZigBee網(wǎng)關(guān), 實(shí)現(xiàn)異構(gòu)網(wǎng)絡(luò)中的終端在家居環(huán)境下的數(shù)據(jù)交互, 解決兩種信號都工作在2.4GHz的ISM頻段會產(chǎn)生的干擾問題, 并通過miniUSB連接的方式給新的需要連入ZigBee加密網(wǎng)絡(luò)的智能節(jié)點(diǎn)設(shè)備導(dǎo)入安全密鑰.
ZigBee-WiFi異構(gòu)網(wǎng)網(wǎng)關(guān)實(shí)現(xiàn)WiFi和ZigBee兩種通信協(xié)議之間的轉(zhuǎn)換, 使得入網(wǎng)設(shè)備不僅可以和WiFi或ZigBee各自網(wǎng)絡(luò)內(nèi)的節(jié)點(diǎn)設(shè)備通信, 而且能夠使分別處在WiFi網(wǎng)絡(luò)和ZigBee網(wǎng)絡(luò)的節(jié)點(diǎn)設(shè)備實(shí)現(xiàn)相互通信[3].
網(wǎng)關(guān)的主要部件包括: 核心控制芯片, ZigBee模塊, WiFi模塊, 顯示屏和miniUSB接口, 如圖1所示.
圖1 網(wǎng)關(guān)總體結(jié)構(gòu)圖
網(wǎng)關(guān)采用S3C6410為核心控制芯片, 運(yùn)行Linux操作系統(tǒng). 選擇S3C6410的原因是它集成了USB Host控制器, 可以直接從CPU引線出來, 不需要添加額外的控制芯片, 所以它的USB Host接口可以直接連接USB無線網(wǎng)卡[4]. 同時(shí), S3C6410包含4個(gè)DMA控制器, 每個(gè)控制器由8個(gè)傳輸通道組成, 每個(gè)控制器提供16個(gè)外設(shè)DMA請求, 并且DMA控制器支持外部中斷響應(yīng), 即每個(gè)通道可以支持從內(nèi)存到外設(shè), 從內(nèi)存到內(nèi)存, 從外設(shè)到內(nèi)存, 從外設(shè)到外設(shè)4種模式的數(shù)據(jù)傳輸[5].
ZigBee模塊采用CC2530模塊, 通過DMA通道與主控芯片相連. 使用DMA通道可以保證以較高速率傳輸數(shù)據(jù)而不占用CUP, 讓CPU能夠繼續(xù)完成其他工作[6], 能夠讓CC2530在傳輸數(shù)據(jù)給S3C6410時(shí), CPU能夠繼續(xù)執(zhí)行Z-Stack協(xié)議棧的其他重要任務(wù).
WiFi模塊采用ralink3070模塊, 通過USB連接, 作為無線網(wǎng)卡使用. 使用WiFi模塊, 先要安裝無線網(wǎng)卡驅(qū)動, 步驟如下:
1.有效化解各類矛盾,保證各項(xiàng)工作平穩(wěn)進(jìn)行。一號煤礦在經(jīng)營、生產(chǎn)、管理運(yùn)行過程中,廠務(wù)公開使廣大職工通過知廠情、參廠政、議廠事,把矛盾化解在基層與企業(yè),保證企業(yè)穩(wěn)定發(fā)展。企業(yè)把職工關(guān)心、涉及其切身利益的重大事項(xiàng)向職工代表大會報(bào)告,向職工如實(shí)公開、接受廣大職工的監(jiān)督,有效地維護(hù)了職工的各種權(quán)益。一號煤礦每年一度的區(qū)隊(duì)職工代表大會與礦職工代表大會都能廣泛征集職工意見,重視吸納職工的參與,集合集體智慧,尊重職工的知情權(quán)、參與權(quán)與監(jiān)督權(quán),深入基層,集中精力,最大限度地解決職工在生產(chǎn)生活中的各類問題,推行以職代會為基本形式的廠務(wù)公開,真正實(shí)現(xiàn)企業(yè)的民主管理。
(1) 修改內(nèi)核源代碼, 加入驅(qū)動配置信息, 重新編譯內(nèi)核;
(2) 編譯通過后會生成rt3070sta.ko驅(qū)動文件, 動態(tài)加載模塊#insmod rt3070sta.ko, 插入網(wǎng)卡, 能夠成功識別;
(3) 安裝Wireless Tools工具配置WiFi, 主要通過iwlist, iwpriv和 iwconfig命令來查看和設(shè)置WiFi信息.
WIFI和Zigbee兩種網(wǎng)絡(luò)協(xié)議的數(shù)據(jù)包格式不同.
CC2530執(zhí)行的Z-Stack協(xié)議棧能夠處理ZigBee協(xié)議幀, Linux系統(tǒng)能夠形成WiFi協(xié)議幀. CC2530協(xié)調(diào)器在DMA通道以數(shù)據(jù)透明傳輸?shù)姆绞桨裐igBee數(shù)據(jù)傳入到網(wǎng)關(guān), 在網(wǎng)關(guān)建立socket服務(wù)器, 將ZigBee協(xié)調(diào)器發(fā)來的數(shù)據(jù)傳入連接的客戶端, 將客戶端發(fā)送來的數(shù)據(jù)傳入ZigBee協(xié)調(diào)器. 無論開發(fā)者需要怎樣的節(jié)點(diǎn)對應(yīng)關(guān)系都不需要對網(wǎng)關(guān)程序重新編寫, 而只要在ZigBee協(xié)調(diào)器和客戶端軟件上設(shè)置數(shù)據(jù)轉(zhuǎn)發(fā)對應(yīng)關(guān)系.
WiFi和ZigBee互聯(lián)存在傳輸速率不匹配的問題, 如表1所示, 由于WiFi的數(shù)據(jù)收發(fā)傳輸數(shù)量大于ZigBee, 在網(wǎng)關(guān)內(nèi)部WiFi端傳入數(shù)據(jù)到ZigBee端需要設(shè)置中間緩沖區(qū). 模塊中設(shè)置數(shù)據(jù)中轉(zhuǎn)的緩沖區(qū)為512字節(jié). 同時(shí)控制WiFi端傳入ZigBee端的每包數(shù)據(jù)在80字節(jié)以內(nèi), 發(fā)送間隔為5ms, 用以防止WiFi端數(shù)據(jù)傳輸速率過快使得緩沖區(qū)溢出導(dǎo)致的數(shù)據(jù)丟失[7].
表1 ZigBee與WiFi比較
ZigBee和WiFi除了傳輸速率不同, 還存在信號干擾的問題. 如表1所示, 兩種無線方式都工作頻段都在2.4GHz, 擴(kuò)頻方式都為DSSS, 兩者有信道重疊, 會產(chǎn)生干擾. 國內(nèi)802.11信道1、6、11, 分別與ZigBee的11-14、16-19、21-24信道重疊, 與15、20、25、26信道不重疊[8]. ZigBee與WiFi在2.4GHz段的信道分布, 如圖2所示.
圖2 2.4GHz段ZigBee與WiFi信道分布對比圖
圖3 信道掃描選擇流程圖
通過讀取RSSI判斷信號接收質(zhì)量, 當(dāng)RSSI低于閾值, 開始掃描尋找干擾程度低的信道, 同時(shí)為了避免在各信道都繁忙時(shí)節(jié)點(diǎn)設(shè)備不停切換信道, 重新組網(wǎng), 還要限制兩次信道切換間的最小時(shí)間間隔. 優(yōu)先掃描ZigBee與WiFi不重合的第26、25、20、15信道, 更容易避開WiFi信號的干擾, 同時(shí)考慮到其他ZigBee網(wǎng)絡(luò)信號的干擾, 在這四個(gè)信道條件不滿足的情況下, 仍然需要繼續(xù)掃描其他信道.
為驗(yàn)證網(wǎng)關(guān)的信道選擇功能實(shí)際效果, 在不受重疊干擾信道和受重疊干擾信道測試傳輸延遲和丟包率, 進(jìn)行了4組對比實(shí)驗(yàn). I組為無干擾環(huán)境下, II組為不使用信道掃描, 設(shè)置ZigBee信道與WiFi干擾源網(wǎng)絡(luò)信道重疊, III組為不使用信道掃描, 設(shè)置ZigBee信道與另一ZigBee干擾源網(wǎng)絡(luò)信道重疊, IV組為使用信道掃描自動切換方案, 設(shè)置多個(gè)信道WiFi干擾源和ZigBee干擾源.
表2 傳輸性能對比
實(shí)驗(yàn)結(jié)果如表2所示, 實(shí)驗(yàn)結(jié)果表明, 網(wǎng)關(guān)在不使用信道掃描切換方案時(shí), 受到其他WiFi信號和ZigBee信號干擾比較嚴(yán)重, 丟包數(shù)增多, 延遲增大, 在使用信道掃描切換時(shí), 雖然切換信道期間的數(shù)據(jù)傳輸延遲會增大, 但是平均延遲和總體丟包率較無信道切換方案要低, 因而達(dá)到了設(shè)計(jì)的目標(biāo).
家用ZigBee網(wǎng)絡(luò)及設(shè)備有很強(qiáng)的私有性, 網(wǎng)絡(luò)通信需要安全保護(hù), 外來設(shè)備不經(jīng)認(rèn)證不允許接入, 家庭購置智能設(shè)備往往是逐漸購買, 連入網(wǎng)絡(luò)的設(shè)備是逐個(gè)添加, 但是ZigBee使用對稱加密的AES加密法, 這要求設(shè)備有相同的密鑰(KEY)才能連入網(wǎng)絡(luò), 后加的設(shè)備無法得到當(dāng)前網(wǎng)絡(luò)通信的密鑰(KEY), 不能正常入網(wǎng)通信, 這給使用ZigBee網(wǎng)絡(luò)的智能設(shè)備進(jìn)入家庭造成了困難[9].
本文設(shè)計(jì)的網(wǎng)關(guān)以miniUSB連接的方式來給予新設(shè)備網(wǎng)絡(luò)密鑰. 智能家居設(shè)備和網(wǎng)關(guān)之間實(shí)現(xiàn)一次有線連接, 操作上并不困難. 當(dāng)有新設(shè)備需要添加入網(wǎng)時(shí), 通過miniUSB數(shù)據(jù)線連接到網(wǎng)關(guān), 網(wǎng)關(guān)獲取新設(shè)備的MAC地址, 記錄到白名單, 注冊設(shè)備類型, 同時(shí)將網(wǎng)絡(luò)密鑰傳入新設(shè)備. 該節(jié)點(diǎn)獲取了入網(wǎng)密鑰就可以加入到當(dāng)前ZigBee網(wǎng)絡(luò)中[10].
為了驗(yàn)證WiFi-ZigBee網(wǎng)關(guān)在家庭環(huán)境中應(yīng)用的運(yùn)行情況, 本網(wǎng)關(guān)在ZigBee智能家居系統(tǒng)中進(jìn)行實(shí)驗(yàn), 智能家居系統(tǒng)包括ZigBee家居設(shè)備網(wǎng)絡(luò), WiFi-ZigBee網(wǎng)關(guān), 智能手機(jī)和PC機(jī), ZigBee家居設(shè)備網(wǎng)絡(luò)中包括安防傳感器, 家居環(huán)境傳感器和照明控制節(jié)點(diǎn), 如圖4所示.
智能手機(jī)和PC機(jī)與網(wǎng)關(guān)連入同一個(gè)WiFi路由器, 在智能手機(jī)和PC機(jī)上能夠監(jiān)測全部ZigBee節(jié)點(diǎn)設(shè)備的工作狀態(tài)和采集的數(shù)據(jù), 可以控制照明燈的開關(guān).
在ZigBee網(wǎng)絡(luò)中要添加一個(gè)新的照明燈節(jié)點(diǎn), 先將照明燈節(jié)點(diǎn)與網(wǎng)關(guān)連接, 注冊設(shè)備MAC地址, 在上位機(jī)注冊該MAC地址設(shè)備的種類為照明燈, 照明燈節(jié)點(diǎn)獲取網(wǎng)絡(luò)密鑰, 自動連入網(wǎng)絡(luò), 通過智能手或PC機(jī)可以成功控制照明燈開關(guān), 如圖5所示.
圖4 智能家居系統(tǒng)結(jié)構(gòu)圖
傳統(tǒng)ZigBee組網(wǎng)設(shè)備只能一次部署完, 不能授予系統(tǒng)外的ZigBee新設(shè)備通信密鑰, 使得消費(fèi)者不能逐步增加ZigBee智能家居設(shè)備. ZigBee和WiFi共同工作在2.4GHz頻段, 產(chǎn)生了相互間信號干擾的問題, 本文設(shè)計(jì)了一種面向家庭應(yīng)用的ZigBee-WiFi無線網(wǎng)關(guān), 以S3C6410為控制核心, 通過CC2530和ralink3070無線網(wǎng)卡連接ZigBee和WiFi網(wǎng)絡(luò), 通過miniUSB連接要加入ZigBee網(wǎng)絡(luò)的新設(shè)備, 記錄MAC地址, 并授予入網(wǎng)密鑰, 使其接入原加密網(wǎng)絡(luò). 通過設(shè)置數(shù)據(jù)緩存和采用DMA通信方式實(shí)現(xiàn)網(wǎng)絡(luò)速率匹配, 通過加入信道篩選, 頻率捷變的控制方案, 使得ZigBee和WiFi在2.4GHz頻段內(nèi)盡可能避免干擾, 獲取更高的網(wǎng)絡(luò)傳輸性能. 經(jīng)試驗(yàn)證明該網(wǎng)關(guān)能夠?qū)崿F(xiàn)ZigBee網(wǎng)絡(luò)和WiFi網(wǎng)絡(luò)中的設(shè)備的相互通信, 適合各種智能家居設(shè)備接入, 通信傳輸性能穩(wěn)定優(yōu)良. 使得人和智能家居設(shè)備的交互更加方便.
1 傅率智.智能家居安全網(wǎng)絡(luò)的一種新結(jié)構(gòu).中國高新技術(shù)企業(yè),2016,1(8):9–10.
2 樊銳,李茹,王績一.藍(lán)牙/ZigBee無線網(wǎng)絡(luò)傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).計(jì)算機(jī)技術(shù)與發(fā)展,2013,23(1):209–213.
3 仲偉波,李忠梅,石婕,陳忠銘.一種用于設(shè)施農(nóng)業(yè)的ZigBee-WiFi網(wǎng)關(guān)研制.計(jì)算機(jī)科學(xué),2014,41(6A):484–486.
4 劉玉寶,霍春寶,張揚(yáng).USB無線網(wǎng)卡在嵌入式系統(tǒng)中的應(yīng)用.遼寧工業(yè)大學(xué)學(xué)報(bào),2008,28(6):364–366.
5 陳安地,李小文.基于S3C6410的DMA數(shù)據(jù)跟蹤技術(shù)在TD-LTE中的實(shí)現(xiàn).電子技術(shù)應(yīng)用,2012,38(5):19–22.
6 Hessel S, Szczesny D, Bruns F, et al. Architectural analysis of a smart DMA controller for protocol stack acceleration in LTE terminals. The Sixteenth IEEE International Conference on Embedded and Real-Time Computing Systems and Applications. Macau, China. 2010. 309–315.
7 胥嘉佳,許鳴.基于網(wǎng)關(guān)的ZigBee和WiFi互通設(shè)計(jì).電子科技,2014,27(6):22–25.
8 張毅,吳錦,羅元,陳思璇.新型ZigBee-WiFi無線網(wǎng)關(guān)的設(shè)計(jì)及其抗干擾技術(shù)的研究.計(jì)算機(jī)應(yīng)用與軟件,2014,31(5): 122–124,187.
9 曲金帥,陳楠,范菁,徐野.基于Zigbee-WiFi的異構(gòu)無線傳感網(wǎng)實(shí)時(shí)數(shù)據(jù)融合機(jī)制研究.云南民族大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,23(5):365–368.
10 董哲,宋紅霞.ZigBee-WiFi協(xié)同無線傳感網(wǎng)絡(luò)的節(jié)能技術(shù). 計(jì)算機(jī)工程與設(shè)計(jì),2015,36(1):22–29.
ZigBee-WiFi Gateway for Smart Home Application
CEN Rong-Ying, JIANG Qin, HU Jian-Wei, SUN Meng-Li
(School of Information Engineering, Qingdao University of Technology, Qingdao 266300, China)
In smart home applications, ZigBee and WiFi devices are two common wireless communication technologies. The problem is that the smart home devices in the ZigBee self-organizing networks can not directly communicate with the intelligent terminals in the WiFi networks. In order to solve this problem, a home-oriented application environment ZigBee-WiFi wireless gateway is designed. The gateway uses S3C6410 as the control core, runs on the Linux operating system, connects to a wireless network card with USB and connects CC2530 module with the DMA channel, which resolves the issue of mutual interference between ZigBee and WiFi signals by scanning and switching the transmission channels. Key is distributed to the new devices that join the ZigBee network by miniUSB connections. Experiments show that the wireless gateway has stable signal and less packet loss. It is stable and reliable in application of smart home system.
ZigBee; WiFi; wireless gateway; S3C6410; smart home
國家級大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃(201513995007);青島工學(xué)院大學(xué)生科技創(chuàng)新項(xiàng)目(2015cx006)
姜琴.Email:ritajq@126.com
2016-04-07;收到修改稿時(shí)間:2016-06-12
[10.15888/j.cnki.csa.005540]