<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

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

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

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

3。1家庭軟件體系結構

家庭采用模塊化,如圖4所示由硬件驅動(dòng)層、操作系統層、網(wǎng)絡(luò )協(xié)議層和應用程序層組成。硬件驅動(dòng)層描述節點(diǎn)中Zigbee模塊和Wi-Fi模塊的驅動(dòng);操作系統層移植了ARMLinux實(shí)時(shí)操作系統內核;網(wǎng)絡(luò )協(xié)議層移植了Zigbee和Wi-Fi協(xié)議棧,實(shí)現Zigbee和Wi-Fi協(xié)議雙向轉換;應用程序層在Linux內核上移植Web服務(wù)器軟件Boa。

圖4 家庭網(wǎng)關(guān)結構

圖4家庭網(wǎng)關(guān)結構。

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

Wi-Fi接收到數據→去掉物理層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é)調器和Web服務(wù)器,有兩個(gè)主要功能。1)實(shí)現傳感器網(wǎng)絡(luò )的建立,傳感器節點(diǎn)管理和數據傳輸。將收集到的數據存儲在數據庫中,使用戶(hù)可以隨時(shí)查詢(xún)監控Zigbee終端設備的狀態(tài)。2)用戶(hù)可以通過(guò)Web瀏覽器直接訪(fǎng)問(wèn)網(wǎng)關(guān),可以進(jìn)行實(shí)時(shí)監測和遠程管理。

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

圖6 Zigbee 軟件流程

圖6Zigbee軟件流程。

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

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

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

方向位分為上行和下行兩種:上行傳輸的是監測數據,下行傳輸的是控制命令。

家庭網(wǎng)關(guān)主程序處理流程如圖7所示。硬件上電系統啟動(dòng)以后,應用程序初始化,網(wǎng)關(guān)開(kāi)始監聽(tīng)網(wǎng)絡(luò ),有數據到來(lái)網(wǎng)關(guān)進(jìn)入中斷狀態(tài)。首先判斷是否Zigbee數據,如果是Zigbee數據,按照WSN協(xié)議處理數據然后打包轉發(fā)給Wi-Fi模塊,網(wǎng)關(guān)返回監聽(tīng)狀態(tài);如果不是Zigbee數據,網(wǎng)關(guān)判斷是否Wi-Fi數據,如果是則以Wi-Fi協(xié)議處理數據然后打包轉發(fā)給Zigbee模塊,并返回監聽(tīng)狀態(tài);若是未知數據,網(wǎng)關(guān)進(jìn)行丟棄處理直接返回監聽(tīng)網(wǎng)絡(luò )狀態(tài)。

4測試結果與分析

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

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

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

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




評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>