新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于嵌入式的無線智能家居網(wǎng)關(guān)設(shè)計方案

基于嵌入式的無線智能家居網(wǎng)關(guān)設(shè)計方案

作者: 時間:2012-05-30 來源:網(wǎng)絡(luò) 收藏

3。1家庭軟件體系結(jié)構(gòu)

家庭采用模塊化,如圖4所示由硬件驅(qū)動層、操作系統(tǒng)層、網(wǎng)絡(luò)協(xié)議層和應(yīng)用程序?qū)咏M成。硬件驅(qū)動層描述節(jié)點(diǎn)中Zigbee模塊和Wi-Fi模塊的驅(qū)動;操作系統(tǒng)層移植了ARMLinux實(shí)時操作系統(tǒng)內(nèi)核;網(wǎng)絡(luò)協(xié)議層移植了Zigbee和Wi-Fi協(xié)議棧,實(shí)現(xiàn)Zigbee和Wi-Fi協(xié)議雙向轉(zhuǎn)換;應(yīng)用程序?qū)釉贚inux內(nèi)核上移植Web服務(wù)器軟件Boa。

圖4 家庭網(wǎng)關(guān)結(jié)構(gòu)

圖4家庭網(wǎng)關(guān)結(jié)構(gòu)。

網(wǎng)關(guān)中的網(wǎng)絡(luò)協(xié)議層主要完成從Wi-Fi和Zigbee協(xié)議的相互轉(zhuǎn)換工作。對于從Zigbee設(shè)備發(fā)送到Wi-Fi的數(shù)據(jù),在網(wǎng)關(guān)需要經(jīng)過以下處理步驟:Zigbee設(shè)備接收到數(shù)據(jù)→去掉物理層Zigbee分組→去掉MAC層Zigbee分組→添加MAC頭的Wi-Fi分組→添加物理層頭的Wi-Fi分組→Wi-Fi處理或發(fā)送。Wi-Fi接收數(shù)據(jù)到發(fā)送給Zigbee設(shè)備的過程如下:

Wi-Fi接收到數(shù)據(jù)→去掉物理層Wi-Fi分組→去掉MAC層Wi-Fi分組→添加MAC頭的Zigbee分組→添加物理層頭的Zigbee分組→Zigbee處理或發(fā)送。Wi-Fi-Zigbee通信協(xié)議模型如圖5所示。

圖5 Zigbee /Wi-Fi 網(wǎng)關(guān)的通信協(xié)議模型

圖5Zigbee/Wi-Fi網(wǎng)關(guān)的通信協(xié)議模型。

3。2Zigbee組網(wǎng)軟件

家庭網(wǎng)關(guān)集成了Zigbee網(wǎng)絡(luò)協(xié)調(diào)器和Web服務(wù)器,有兩個主要功能。1)實(shí)現(xiàn)傳感器網(wǎng)絡(luò)的建立,傳感器節(jié)點(diǎn)管理和數(shù)據(jù)傳輸。將收集到的數(shù)據(jù)存儲在數(shù)據(jù)庫中,使用戶可以隨時查詢監(jiān)控Zigbee終端設(shè)備的狀態(tài)。2)用戶可以通過Web瀏覽器直接訪問網(wǎng)關(guān),可以進(jìn)行實(shí)時監(jiān)測和遠(yuǎn)程管理。

為了實(shí)現(xiàn)家庭網(wǎng)關(guān)的功能,在硬件平臺上移植了Linux2。6實(shí)時操作系統(tǒng)、Zigbee協(xié)議棧和VT6656的驅(qū)動程序,并使用HTTP協(xié)議的Boa服務(wù)器作為Web服務(wù)器,其中ZigBee網(wǎng)絡(luò)協(xié)調(diào)器的軟件實(shí)現(xiàn)包括ZigBee協(xié)議和監(jiān)控管理程序的移植。該軟件流程如圖6所示。

圖6 Zigbee 軟件流程

圖6Zigbee軟件流程。

內(nèi)部ZigBee網(wǎng)絡(luò)中,首先協(xié)調(diào)器進(jìn)行初始化,然后協(xié)調(diào)器選擇一個稱為PANID的標(biāo)識號碼,接著啟動網(wǎng)絡(luò),所有的設(shè)備接入CSMA-CA機(jī)制的協(xié)調(diào)器。當(dāng)協(xié)調(diào)器收到數(shù)據(jù)時,首先判斷是新節(jié)點(diǎn)加入網(wǎng)絡(luò)的請求還是設(shè)備節(jié)點(diǎn)的控制請求:如果是新節(jié)點(diǎn)加入網(wǎng)絡(luò)的請求則分配網(wǎng)絡(luò)地址并綁定節(jié)點(diǎn);如果是控制請求,則調(diào)用控制請求處理函數(shù)處理數(shù)據(jù)。數(shù)據(jù)處理完畢,協(xié)調(diào)器返回等待請求監(jiān)聽狀態(tài)。

3。3家庭網(wǎng)關(guān)主程序

家庭網(wǎng)關(guān)是建立在傳輸層以上的協(xié)議轉(zhuǎn)換器,通常它連接兩個或多個相互獨(dú)立的網(wǎng)絡(luò),每接收一種協(xié)議的數(shù)據(jù)包后,在轉(zhuǎn)發(fā)之前將它轉(zhuǎn)換為另一種協(xié)議的格式,Zigbee協(xié)議棧由一系列分層結(jié)構(gòu)組成,包括物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、應(yīng)用支持層和應(yīng)用層,每一層為上一層提供服務(wù)。采集節(jié)點(diǎn)將要傳輸?shù)墓?jié)點(diǎn)地址信息和監(jiān)測數(shù)據(jù)以Zigbee幀的形式打包發(fā)送給網(wǎng)關(guān)節(jié)點(diǎn)。傳送數(shù)據(jù)在通過物理介質(zhì)進(jìn)入網(wǎng)關(guān)后,先用Zigbee協(xié)議棧解封裝得到原始數(shù)據(jù),網(wǎng)關(guān)可以用操作系統(tǒng)上的應(yīng)用軟件根據(jù)需要對原始數(shù)據(jù)處理。然后再以TCP/IP協(xié)議打包后通過USB口與Wi-Fi通信模塊VT6656相連,Wi-FiVT6656網(wǎng)卡通過AP路由器,將數(shù)據(jù)傳送到Wi-Fi網(wǎng)絡(luò)中,AP路由器接入Internet,從而實(shí)現(xiàn)網(wǎng)關(guān)與Internet相連。為實(shí)現(xiàn)系統(tǒng)的監(jiān)測和控制兩大功能,數(shù)據(jù)幀結(jié)構(gòu)的設(shè)計由前導(dǎo)碼、數(shù)據(jù)模式、目標(biāo)地址、數(shù)據(jù)長度、數(shù)據(jù)信息與校驗和等部分構(gòu)成[3],其中數(shù)據(jù)信息字段又劃分為方向位、功能類型和數(shù)據(jù)。

方向位分為上行和下行兩種:上行傳輸?shù)氖潜O(jiān)測數(shù)據(jù),下行傳輸?shù)氖强刂泼睢?p>家庭網(wǎng)關(guān)主程序處理流程如圖7所示。硬件上電系統(tǒng)啟動以后,應(yīng)用程序初始化,網(wǎng)關(guān)開始監(jiān)聽網(wǎng)絡(luò),有數(shù)據(jù)到來網(wǎng)關(guān)進(jìn)入中斷狀態(tài)。首先判斷是否Zigbee數(shù)據(jù),如果是Zigbee數(shù)據(jù),按照WSN協(xié)議處理數(shù)據(jù)然后打包轉(zhuǎn)發(fā)給Wi-Fi模塊,網(wǎng)關(guān)返回監(jiān)聽狀態(tài);如果不是Zigbee數(shù)據(jù),網(wǎng)關(guān)判斷是否Wi-Fi數(shù)據(jù),如果是則以Wi-Fi協(xié)議處理數(shù)據(jù)然后打包轉(zhuǎn)發(fā)給Zigbee模塊,并返回監(jiān)聽狀態(tài);若是未知數(shù)據(jù),網(wǎng)關(guān)進(jìn)行丟棄處理直接返回監(jiān)聽網(wǎng)絡(luò)狀態(tài)。

4測試結(jié)果與分析

將設(shè)計的Wi-Fi-Zigbee網(wǎng)關(guān)與同樣采用通信技術(shù)的Wi-Fi-藍(lán)牙無線網(wǎng)關(guān),以及采用綜合布線的有線網(wǎng)關(guān)做如下比較,如表1。有線網(wǎng)關(guān)網(wǎng)絡(luò)穩(wěn)定性、抗干擾性方面高,但是耗時且靈活性較低,而無線網(wǎng)關(guān)耗費(fèi)的工時少且在網(wǎng)絡(luò)穩(wěn)定、靈活和抗干擾方面均性能良好。

圖7 家庭網(wǎng)關(guān)主程序流程

圖7家庭網(wǎng)關(guān)主程序流程

表1三種網(wǎng)關(guān)的比較

表1 三種網(wǎng)關(guān)的比較

為驗證Wi-Fi-Zigbee網(wǎng)關(guān)在監(jiān)控系統(tǒng)中的性能,測試了兩組性能指標(biāo):1)無障礙物和干擾狀態(tài)下,隨著距離的增加,數(shù)據(jù)丟包率和響應(yīng)時間的變化情況;2)數(shù)據(jù)傳輸距離分別為10m、20m、50m時,有障礙物情況下丟包率和響應(yīng)時間性能變化;如圖8所示,其中(a)、(b)為在無障礙物和干擾狀態(tài)下測得三種網(wǎng)關(guān)下丟包率與響應(yīng)時間的曲線:(c)、(d)為在有障礙物和干擾情況下所測得的數(shù)據(jù)。實(shí)驗結(jié)果表明,在無障礙物傳輸距離為50m以內(nèi)時,Wi-Fi-Zigbee網(wǎng)關(guān)較Wi-Fi-藍(lán)牙網(wǎng)關(guān)的優(yōu)勢明顯,隨著傳輸距離增加,丟包率低維持在3%左右,相對于有線網(wǎng)關(guān)高出2%左右,而響應(yīng)時間波動在1ms以內(nèi),完全能夠充分滿足正常家居環(huán)境的通信需要,而且接收功率很低,非常適合家庭的使用。在有障礙物和干擾的情況下,Wi-Fi-Zigbee網(wǎng)關(guān)丟包率與響應(yīng)時間較有線網(wǎng)關(guān)稍高,卻遠(yuǎn)優(yōu)于Wi-Fi-藍(lán)牙網(wǎng)關(guān)。

圖8 三種網(wǎng)關(guān)在不同環(huán)境下丟包率與響應(yīng)時間的比較 linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

tcp/ip相關(guān)文章:tcp/ip是什么




評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉