2 ZigBee無線網(wǎng)關(guān)解決方案
2.1 系統(tǒng)結(jié)構(gòu)
無線傳感器系統(tǒng)對網(wǎng)關(guān)的要求較高,技術(shù)實現(xiàn)上比較復(fù)雜,,所以網(wǎng)關(guān)采用嵌入式系統(tǒng)技術(shù),。基于linux操作系統(tǒng)本身的易于移植,、開源,、優(yōu)異的網(wǎng)絡(luò)支持等優(yōu)點,采用ARM9處理器加上linux操作系統(tǒng)來設(shè)計ZigBee與TCP/IP間通信的網(wǎng)關(guān),。嵌入式系統(tǒng)與ZigBee無線傳感器網(wǎng)絡(luò)相結(jié)合,可以更好地控制網(wǎng)絡(luò)的信息傳遞,。
一個連通ZigBee無線傳感器網(wǎng)絡(luò)和以太網(wǎng)的網(wǎng)關(guān)應(yīng)該解決如下問題:
(1)能與ZigBee無線傳感網(wǎng)絡(luò)各節(jié)點進行通信,,同時控制、協(xié)調(diào)無線傳感器網(wǎng)絡(luò)間的通信,。
(2)能通過以太網(wǎng)接口與計算機實現(xiàn)有線通信,。
(3)為了實現(xiàn)ZigBee通信,網(wǎng)絡(luò)需要相應(yīng)的底層驅(qū)動程序協(xié)議棧,,這就增加了系統(tǒng)內(nèi)控制器對程序存儲器的需求等,。
(4)具備與無線傳感器網(wǎng)絡(luò)中的新節(jié)點建立動態(tài)鏈接的能力。
每個ZigBee無線傳感器網(wǎng)絡(luò)節(jié)點需要發(fā)送的數(shù)據(jù)都要經(jīng)過網(wǎng)關(guān)與外部以太網(wǎng)連接,。而且,,當節(jié)點越多,網(wǎng)絡(luò)的復(fù)雜程度就越高,,對網(wǎng)關(guān)的處理速度會是個考驗,。因而,網(wǎng)關(guān)的設(shè)計比一般的無線傳感器網(wǎng)絡(luò)節(jié)點更復(fù)雜,,需要的資源也比一般的節(jié)點多,。圖1(a)為ZigBee無線網(wǎng)關(guān)結(jié)構(gòu)圖,圖1(b)為無線傳感器網(wǎng)絡(luò)節(jié)點結(jié)構(gòu)圖,。
(b) 無線傳感器網(wǎng)絡(luò)節(jié)點結(jié)構(gòu)圖
圖1 ZigBee無線網(wǎng)關(guān)與無線傳感器網(wǎng)絡(luò)節(jié)點結(jié)構(gòu)圖
2.2 通信模型設(shè)計
基于以上分析,,針對工業(yè)應(yīng)用設(shè)計了一種用于接入工業(yè)以太網(wǎng)的無線網(wǎng)關(guān)。通信模型主要包括以下3個方面:
(1)無線通信機制?,F(xiàn)場設(shè)備與無線網(wǎng)關(guān)之間的數(shù)據(jù)通信采用了ZigBee無線通信技術(shù),。ZigBee無線通信技術(shù)采用CSMACA接入方式,有效避免了無線電載波之間的沖突,,保證了數(shù)據(jù)傳輸?shù)目煽啃?。其MAC層和PHY層由IEEE802.15.4工作小組制定,NwK和APS則由ZigBee聯(lián)盟來制定,,其他部分ZDO(ZigBee設(shè)備對象)和ZAO(ZigBee應(yīng)用對象),,由用戶根據(jù)不同應(yīng)用來完成。
(2)以太網(wǎng)協(xié)議轉(zhuǎn)換。無線網(wǎng)關(guān)的接入功能主要體現(xiàn)在協(xié)議轉(zhuǎn)換,,即將ZigBee無線通信協(xié)議轉(zhuǎn)換為以太網(wǎng)有線協(xié)議,,通過以太網(wǎng)接入控制網(wǎng)絡(luò)。
IEEE802.3 PHY和IEEE802.3MAC分別為標準的以太網(wǎng)物理層和介質(zhì)訪問層,;IEEE802.3 LLC提供以太網(wǎng)幀與IP層接口,,傳輸層為標準TCP/UDP協(xié)議。
(3)上層服務(wù)接口(high layer serv ice in terface),。
針對工業(yè)應(yīng)用,,無線網(wǎng)關(guān)要求提供上層服務(wù)及接口,使用戶可以通過無線網(wǎng)關(guān)對現(xiàn)場設(shè)備進行組態(tài),、調(diào)校,。上層服務(wù)接口位于ZigBee APS層與TCP/IP層之間,為系統(tǒng)實現(xiàn)各種服務(wù)提供通用接口,。
2.3 系統(tǒng)軟件實現(xiàn)
Zigbee協(xié)議軟件的構(gòu)成包括硬件抽象層(HAL),,應(yīng)用庫(CUL)和系統(tǒng)主程序。HAL是簡單的建立和使用外部的單元(例如,,無線收發(fā),,計時器,AD變換等),。CUL提供了一個簡單的無線協(xié)議,,一個管理器管理DMA通道和一個以軟件方式實現(xiàn)處理安排的多任務(wù)計時器。而系統(tǒng)的主程序提供了一個程序調(diào)用的接口和中斷,。本軟件實現(xiàn)一個簡單的點對點數(shù)據(jù)傳輸,,因此只需要一個精簡的數(shù)據(jù)包協(xié)議(SPP)。
簡單的協(xié)議包提供了簡單的數(shù)據(jù)包結(jié)構(gòu)如表1,,其中Length(長度),,接收信號強度(RSSI)和鏈路質(zhì)量LQI區(qū)域由芯片設(shè)置,dest src address 和flags區(qū)域由SPP設(shè)置,,Pay lOAd(length-5bytes)區(qū)域為有效的載荷由用戶設(shè)置(最大125字節(jié)),。
表1 簡單的數(shù)據(jù)包結(jié)構(gòu)
數(shù)據(jù)包的字節(jié)長度不包括長度字節(jié)本身,目的地址和源地址每一個為一個字節(jié),,另外,,0x00是廣播地址,這一地址的數(shù)據(jù)包被所有的節(jié)點接收,,標志包括ACK位,,一個ACK請求(DO_ACK)。通過重傳顯示,、序列號位,、序列號及重傳的位共同作用從而能夠區(qū)分新的數(shù)據(jù)包和當前接收的數(shù)據(jù)包,,RSSI和LQI顯示接收信號強度和鏈路的質(zhì)量,LQI的第8位顯示是否CRC校驗成功或失敗,。
Zigbee數(shù)據(jù)包發(fā)送的部分流程圖如圖2所示,,接收數(shù)據(jù)的部分流程圖如圖3所示。
圖2 發(fā)送數(shù)據(jù)的部分流程圖
圖3 接收數(shù)據(jù)的部分流程圖
2.4 ZigBee無線網(wǎng)關(guān)關(guān)鍵技術(shù)研究
2.4.1 網(wǎng)絡(luò)管理功能
(1)網(wǎng)絡(luò)形成,。無線網(wǎng)關(guān)上電后,,無線協(xié)議棧各層首先進行初始化,然后通過網(wǎng)絡(luò)請求來啟動一個新的網(wǎng)絡(luò)(僅具有協(xié)調(diào)器能力且當前還沒有與網(wǎng)絡(luò)連接的網(wǎng)關(guān)設(shè)備才可以建立一個新的網(wǎng)絡(luò)),。
組網(wǎng)開始時,,網(wǎng)絡(luò)層首先向MAC層請求分配協(xié)議所規(guī)定的信道,或者由PHY層進行有效信道掃描,,網(wǎng)絡(luò)層管理實體等待信道掃描結(jié)果,,然后根據(jù)掃描結(jié)果選擇可允許能量水平的信道。找到合適的信道后,,為這個新的網(wǎng)絡(luò)選擇一個域網(wǎng)標識符(PAN ID)。
PAN ID可由網(wǎng)絡(luò)形成請求時指定,,也可以隨機選擇一個PAN ID(除廣播PAN ID固定為0xFFFF外),,PAN ID在所選信道中應(yīng)該是唯一的。PAN ID一旦選定,,無線網(wǎng)關(guān)將選擇16位網(wǎng)絡(luò)地址0x0000作為自身短地址,,同時進行相關(guān)設(shè)置。完成設(shè)置后,,通過MAC層發(fā)出網(wǎng)絡(luò)啟動請求,,返回網(wǎng)絡(luò)形成狀態(tài)。
(2)網(wǎng)絡(luò)維護,。網(wǎng)絡(luò)維護主要包括設(shè)備加入網(wǎng)絡(luò)和離開網(wǎng)絡(luò)過程,。當網(wǎng)絡(luò)形成后,通過網(wǎng)絡(luò)管理實體設(shè)定MAC層連接許可標志來判斷是否允許其他設(shè)備加入網(wǎng)絡(luò),。加入方式有聯(lián)合方式和直接方式,,在協(xié)議實現(xiàn)中采取直接加入網(wǎng)絡(luò)方式。這種方式下由待加入的設(shè)備發(fā)送請求加入信標幀,,網(wǎng)關(guān)接收到后,,網(wǎng)絡(luò)管理實體首先判斷這個設(shè)備是否已存在于網(wǎng)絡(luò)。若存在,,則使其加入網(wǎng)絡(luò),;若不存在,則向設(shè)備發(fā)送信標幀,,為這個設(shè)備分配一個網(wǎng)絡(luò)中唯一的16位短地址,。這里的信標幀是由網(wǎng)關(guān)無線協(xié)議MAC層生成作為PHY層載荷,,它包含PAN ID、加入時隙分配等信息,。網(wǎng)內(nèi)設(shè)備也可以請求斷開網(wǎng)絡(luò),。當網(wǎng)關(guān)收到設(shè)備斷開連接請求后,MAC層向網(wǎng)絡(luò)層發(fā)送報告,,開始執(zhí)行斷開流程,,從設(shè)備列表中刪除該設(shè)備相關(guān)信息。
2.4.2 ZigBee/以太網(wǎng)協(xié)議轉(zhuǎn)換
ZigBee無線網(wǎng)關(guān)協(xié)議轉(zhuǎn)換主要是實現(xiàn)ZigBee數(shù)據(jù)報文與以太網(wǎng)報文的雙向轉(zhuǎn)換,。圖4所示為兩種協(xié)議報文格式轉(zhuǎn)換圖,。
圖4 協(xié)議轉(zhuǎn)換圖
圖中給出了協(xié)議開發(fā)中定義每一層的字節(jié)數(shù),其中PAYLOAD字節(jié)數(shù)可變,,最大不超過127B,。當無線網(wǎng)關(guān)射頻部分(PHY層)接收到數(shù)據(jù)報文,根據(jù)ZigBee通信協(xié)議從PHY到APS解出其中有效載荷,,然后將有效載荷加載TCP(UDP)/IP(42B)的報文格式,,交由滿足IEEE802.3以太網(wǎng)通信協(xié)議的網(wǎng)卡處理,從而實現(xiàn)將無線接收到的信息傳輸?shù)酵獠靠刂凭W(wǎng)絡(luò)中,。
3 應(yīng)用分析
3.1 應(yīng)用前景
基于ZigBee網(wǎng)絡(luò)的低成本,、易控制、低功耗,、組網(wǎng)方便,、網(wǎng)絡(luò)健壯等特點,特別適用于智能家居控制,,同時它也廣泛用于工業(yè),、汽車自動化、農(nóng)業(yè)自動化,、醫(yī)療控制設(shè)備等,。將來還可通過遠程控制(甚至可以是手機)來實現(xiàn)對樓宇自動化設(shè)備的管理。
有理由相信在不遠的將來,,將有越來越多的內(nèi)置式ZigBee功能的設(shè)備進入大家的生活,。
3. 2 智能家居網(wǎng)絡(luò)
ZigBee技術(shù)的短距離、安全可靠,、低成本等技術(shù)特點完全符合家庭網(wǎng)絡(luò)通訊的需要,,因此選擇ZigBee技術(shù)構(gòu)建智能家居無線網(wǎng)絡(luò)系統(tǒng),智能家居控制中心與各模塊之間都是通過ZigBee通信,。
智能家居網(wǎng)絡(luò)包括環(huán)境照明系統(tǒng),,家庭影院影音系統(tǒng),安防監(jiān)控系統(tǒng),,公共廣播/背景音樂系統(tǒng),,空調(diào)系統(tǒng),,電動窗簾等一系列家居控制系統(tǒng)的智能集中控制。如,,回到家中,,只需要手指輕點觸摸屏的一個按鈕,即可實現(xiàn)燈光打開,、空調(diào)調(diào)至合適溫度,、音響播放悅耳的樂曲;睡覺前用無線觸摸屏的面板輕觸?睡眠模式#,,便可讓窗簾關(guān)閉,、燈光調(diào)至合適的亮度、電視機自動關(guān)閉等用戶所需要的設(shè)置,。而ZigBee無線網(wǎng)關(guān)則作為各無線模塊的協(xié)調(diào)器,,通過以太網(wǎng)來管理無線網(wǎng)絡(luò)。
4 結(jié)束語
無線通信系統(tǒng)在工業(yè)通信網(wǎng)絡(luò)中的應(yīng)用逐漸增加,,而目前工業(yè)通信網(wǎng)絡(luò)的通信協(xié)議繁多,,多種通信標準并存,因此不同傳輸介質(zhì),、不同速率,、不同通信協(xié)議的網(wǎng)絡(luò)之間的互聯(lián)問題也逐漸成為人們關(guān)注的重點。ZigBee無線通信技術(shù)的無線網(wǎng)關(guān)在實現(xiàn)無線測控系統(tǒng)與以太網(wǎng)互聯(lián)的同時也可以完成對無線網(wǎng)絡(luò)的管理,,優(yōu)化了整個工業(yè)通信網(wǎng)絡(luò),,為工業(yè)控制領(lǐng)域從有線向無線延伸提供了一種有效的解決途徑,。