新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > ZigBee網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換的嵌入式網(wǎng)關(guān)設(shè)計(jì)

ZigBee網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換的嵌入式網(wǎng)關(guān)設(shè)計(jì)

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

摘要:針對(duì)如何將基于的網(wǎng)絡(luò)接入基于TCP/IP的互聯(lián)網(wǎng),提出了一種基于的設(shè)計(jì)方案。硬件選用PXA270平臺(tái)與無(wú)線模塊,基于Windows CE操作系統(tǒng)和Z—Stack協(xié)議棧,來(lái)實(shí)現(xiàn)的數(shù)據(jù)轉(zhuǎn)發(fā)和網(wǎng)絡(luò)管理功能。

本文引用地址:http://2s4d.com/article/201610/307692.htm

關(guān)鍵詞:ZigBee;;;TCP/IP;網(wǎng)關(guān)

0 引言

物聯(lián)網(wǎng)是一個(gè)基于互聯(lián)網(wǎng)、傳統(tǒng)電信網(wǎng)等信息承載體,讓所有能夠被獨(dú)立尋址的普通物理對(duì)象實(shí)現(xiàn)互聯(lián)互通的網(wǎng)絡(luò)。它具有普通對(duì)象設(shè)備化、自治終端互聯(lián)化和普適服務(wù)智能化3個(gè)重要特征。

隨著物聯(lián)網(wǎng)技術(shù)的發(fā)展,基于ZigBee技術(shù)的無(wú)線傳感器網(wǎng)絡(luò)己經(jīng)被廣泛的應(yīng)用到人們的生產(chǎn)及生活當(dāng)中(如家庭自動(dòng)化、智慧農(nóng)業(yè)等)。如何將ZigBee網(wǎng)絡(luò)接入到互聯(lián)網(wǎng),是人們?cè)趹?yīng)用ZigBee技術(shù)組網(wǎng)時(shí)所面臨的一個(gè)熱點(diǎn)問(wèn)題。

然而,ZigBee協(xié)議與互聯(lián)網(wǎng)中所使用的TCP/IP協(xié)議并不兼容,要想把ZigBee網(wǎng)絡(luò)接入到基于IP的互聯(lián)網(wǎng),就需要一個(gè)設(shè)備來(lái)完成兩個(gè)異構(gòu)網(wǎng)絡(luò)間數(shù)據(jù)的轉(zhuǎn)發(fā)。因此,提出了網(wǎng)關(guān)的概念,由網(wǎng)關(guān)來(lái)完成兩個(gè)異構(gòu)網(wǎng)絡(luò)之間數(shù)據(jù)的轉(zhuǎn)發(fā)。本文使用PXA270嵌入式平臺(tái)和 ZigBee模塊,基于windows CE6.0嵌入式操作系統(tǒng)和Z—Stack協(xié)議棧,設(shè)計(jì)了一種嵌入式網(wǎng)關(guān)的解決方案。網(wǎng)關(guān)工作在兩個(gè)異構(gòu)的網(wǎng)絡(luò)之間,連接著無(wú)線傳感網(wǎng)絡(luò)和互聯(lián)網(wǎng),其功能包括異構(gòu)網(wǎng)絡(luò)之間的數(shù)據(jù)轉(zhuǎn)發(fā)和對(duì)ZigBee網(wǎng)絡(luò)的管理。

1 系統(tǒng)整體設(shè)計(jì)

網(wǎng)關(guān)整體設(shè)計(jì)如圖1所示,其總體上包括CC2430ZigBee模塊、PXA270嵌入式平臺(tái)、以太網(wǎng)口、電源模塊和其他外設(shè)模塊。

a.jpg

網(wǎng)關(guān)的軟件設(shè)計(jì)基于Windows CE6.0嵌入式操作系統(tǒng)和Z—Stack v1.4.3協(xié)議棧。Windows CE6.0系統(tǒng)功能豐富、內(nèi)核穩(wěn)定,是高度模塊化的系統(tǒng),具有占先式多任務(wù)調(diào)度和強(qiáng)大的網(wǎng)絡(luò)通訊能力。系統(tǒng)支持Winsock網(wǎng)絡(luò)編程接口,通過(guò)C/S Socket通信模型實(shí)現(xiàn)網(wǎng)關(guān)和互聯(lián)網(wǎng)客戶端的命令和數(shù)據(jù)交互。Z—Stack v1.4.3協(xié)議棧是TI公司開(kāi)發(fā)的完整支持ZigBee 2006的協(xié)議棧,該協(xié)議棧提供了大量的編程接口函數(shù),方便基于該協(xié)議棧進(jìn)行開(kāi)發(fā)設(shè)計(jì)。

設(shè)計(jì)中CC2430 ZigBee模塊通過(guò)串口與PXA270嵌入式平臺(tái)連接。Windows CE和Z—Stack協(xié)議棧都提供了對(duì)串口通信的支持,調(diào)用相應(yīng)的串口API就可以實(shí)現(xiàn)對(duì)串口的讀寫(xiě)等操作,這樣也就方便了PXA270嵌入式平臺(tái)和CC2430 ZigBee模塊之間的串口通信程序的設(shè)計(jì)。

2 各模塊軟件的設(shè)計(jì)

2.1 ZigBee協(xié)調(diào)器模塊部分

ZigBee網(wǎng)絡(luò)由一個(gè)協(xié)調(diào)節(jié)點(diǎn)、多個(gè)路由節(jié)點(diǎn)和多個(gè)終端節(jié)點(diǎn)構(gòu)成,設(shè)備類(lèi)型通常在編譯時(shí)通過(guò)編譯選項(xiàng)決定(ZDO COORDINATOR and RTR NWK)。本設(shè)計(jì)中與PXA270嵌入式平臺(tái)通過(guò)串口連接的CC2430模塊作為整個(gè)ZigBee網(wǎng)絡(luò)的協(xié)調(diào)節(jié)點(diǎn),其主要作用是:(1)數(shù)據(jù)收發(fā)。接收 ZigBee網(wǎng)絡(luò)上傳的數(shù)據(jù),解析并通過(guò)串口轉(zhuǎn)發(fā)至PXA270平臺(tái);轉(zhuǎn)發(fā)PXA270平臺(tái)要發(fā)送到zigBee網(wǎng)絡(luò)中的數(shù)據(jù)。(2)ZigBee網(wǎng)絡(luò)管理。包括網(wǎng)絡(luò)信道和網(wǎng)絡(luò)ID的選取、網(wǎng)絡(luò)的啟動(dòng)、節(jié)點(diǎn)的加入等。協(xié)調(diào)節(jié)點(diǎn)的程序流程圖如圖2所示。

b.jpg

協(xié)調(diào)節(jié)點(diǎn)與PXA270平臺(tái)通信時(shí),需用到Z—Stack提供的串口應(yīng)用程序接口函數(shù)。其中,HalUARTInit()用來(lái)在設(shè)備啟動(dòng)時(shí)初始化串口(如設(shè)置波特率為115200),HalUARTOpen()、HalUART Close()用來(lái)打開(kāi)和關(guān)閉串口,HalUARTRead()、HalUARTWrite()用來(lái)完成對(duì)串口的讀寫(xiě)。

2. 2 PXA270嵌入式平臺(tái)部分

PXA270嵌入式平臺(tái)作為網(wǎng)關(guān)的主要控制模塊其功能包括:與ZigBee協(xié)調(diào)節(jié)點(diǎn)通信,接收協(xié)調(diào)節(jié)點(diǎn)通過(guò)串口轉(zhuǎn)發(fā)的數(shù)據(jù)或?qū)⒖刂泼畎l(fā)送到協(xié)調(diào)節(jié)點(diǎn);通過(guò)基于TCP/IP的流式Socket方式與IP網(wǎng)絡(luò)通信,如上傳數(shù)據(jù)、接收遠(yuǎn)程命令。PXA270平臺(tái)的工作流程如圖3所示。

c.jpg

本設(shè)計(jì)中通過(guò)兩個(gè)線程來(lái)分別完成上述兩個(gè)方面的工作,分別是串口通信線程和Socket通信線程,兩個(gè)線程采用互斥機(jī)制實(shí)現(xiàn)對(duì)公共緩沖區(qū)的互斥訪問(wèn)。

3 測(cè)試結(jié)果

對(duì)設(shè)計(jì)方案進(jìn)行ZigBee組網(wǎng)測(cè)試和系統(tǒng)整體測(cè)試。在ZigBee組網(wǎng)測(cè)試中,ZigBee協(xié)議棧的參數(shù)配置為默認(rèn)值(MAX DEPTH=5,MAXROUTERS=6,MAX CHILDREN=20),地址分配方式選擇分布式分配機(jī)制。將ZigBee協(xié)調(diào)器通過(guò)串口直接與電腦的COM1口相連,由ZigBee協(xié)調(diào)器通過(guò)串口向電腦發(fā)送ZigBee網(wǎng)絡(luò)中的節(jié)點(diǎn)網(wǎng)絡(luò)ID,通過(guò)串口調(diào)試助手顯示ZigBee網(wǎng)絡(luò)中的節(jié)點(diǎn)信息,其測(cè)試結(jié)果如圖4所示。

d.jpg

在系統(tǒng)整體測(cè)試中,將ZigBee協(xié)調(diào)器通過(guò)串口直接與PXA270嵌入式平臺(tái)的串口相連,由ZigBee協(xié)調(diào)器通過(guò)串口向PXA270嵌入式平臺(tái)發(fā)送 ZigBee網(wǎng)絡(luò)中的節(jié)點(diǎn)網(wǎng)絡(luò)ID,PXA270嵌入式平臺(tái)通過(guò)C/SSocket通信模型實(shí)現(xiàn)網(wǎng)關(guān)和互聯(lián)網(wǎng)客戶端的命令和數(shù)據(jù)交互,其測(cè)試結(jié)果如圖5所示。

e.jpg

4 結(jié)論

針對(duì)如何把基于ZigBee無(wú)線網(wǎng)絡(luò)接入到基于TCP/IP的互聯(lián)網(wǎng)的問(wèn)題,本文提出一種基于WindowsCE嵌入式操作系統(tǒng)和 ZigBee協(xié)議棧的嵌入式網(wǎng)關(guān)的設(shè)計(jì)方案,對(duì)網(wǎng)關(guān)的基本功能進(jìn)行了實(shí)現(xiàn)。使ZigBee網(wǎng)絡(luò)采集到的數(shù)據(jù)能夠通過(guò)網(wǎng)關(guān)轉(zhuǎn)發(fā)到基于TCP/IP的網(wǎng)絡(luò),通過(guò)網(wǎng)關(guān)能夠完成對(duì)ZigBee網(wǎng)絡(luò)的管理,達(dá)到了兩個(gè)異構(gòu)網(wǎng)絡(luò)互聯(lián)互通的目的,具有切合實(shí)際的應(yīng)用價(jià)值。



評(píng)論


相關(guān)推薦

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

關(guān)閉