AW516x zigbee模塊實(shí)現(xiàn)自組網(wǎng)功能
無(wú)線網(wǎng)絡(luò)技術(shù)無(wú)非是功耗、距離、速率、組網(wǎng)等方面的較量,那么能否做到既能低功耗、遠(yuǎn)距離,又能快捷組網(wǎng)和部署呢?
本文引用地址:http://m.butianyuan.cn/article/201709/364947.htm標(biāo)準(zhǔn)zigbee網(wǎng)絡(luò)協(xié)議包括協(xié)調(diào)器、路由器和終端節(jié)點(diǎn),而建立一個(gè)zigbee網(wǎng)絡(luò)除了必須要有協(xié)調(diào)器之外,僅需加上路由器或終端節(jié)點(diǎn)即可。
然而,不同的應(yīng)用場(chǎng)景需要不同型態(tài)的組網(wǎng)結(jié)構(gòu):點(diǎn)對(duì)點(diǎn)、星型、中繼路由、混合型等等。因此,快速、高效、穩(wěn)定、便捷、靈活,是對(duì)組網(wǎng)協(xié)議所提出的更高要求。
圖1 zigbee網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
一、Fastzigbee協(xié)議
換個(gè)思路,假若網(wǎng)絡(luò)上的任意節(jié)點(diǎn)都具備對(duì)等的數(shù)據(jù)傳輸功能,且無(wú)須協(xié)調(diào)器管理網(wǎng)絡(luò),那么網(wǎng)絡(luò)中的任何節(jié)點(diǎn)都可以主動(dòng)傳輸數(shù)據(jù),這樣用戶就無(wú)需理會(huì)具體的網(wǎng)絡(luò)結(jié)構(gòu),顯然會(huì)更加方便使用。
基于此,ZLG致遠(yuǎn)電子根據(jù)多年的實(shí)踐經(jīng)驗(yàn)積累,在zigbee協(xié)議棧的基礎(chǔ)上開(kāi)發(fā)了Fastzigbee透?jìng)鲗?duì)等網(wǎng)絡(luò)協(xié)議。其特點(diǎn)如下:
l 啟動(dòng)零延時(shí),無(wú)需等待入網(wǎng)
l 節(jié)點(diǎn)容量大,理論上節(jié)點(diǎn)容量高達(dá)65535
l 3線制串口全透明傳輸方式,可自定義數(shù)據(jù)格式
l 無(wú)需二次開(kāi)發(fā),可快速實(shí)現(xiàn)動(dòng)態(tài)配置及自組網(wǎng)功能
l 快速添加路由,即放即用的智能路由算法,快速恢復(fù)通信。
圖2 Fastzigbee協(xié)議特點(diǎn)
二、自組網(wǎng)實(shí)現(xiàn)
Fastzigbee協(xié)議已經(jīng)很好的為組網(wǎng)提供了基礎(chǔ),那么能否在部署和施工方面也提供更好的支持呢?
當(dāng)然,ZLG致遠(yuǎn)電子為簡(jiǎn)化無(wú)線產(chǎn)品復(fù)雜的開(kāi)發(fā)過(guò)程,在Fastzigbee協(xié)議內(nèi)增加自組網(wǎng)功能。下面以AW516x系列透?jìng)髂K為例,為工程師提供兩種實(shí)現(xiàn)途徑。
模塊在自組網(wǎng)模式下,主機(jī)模塊會(huì)自動(dòng)選擇周?chē)鷽](méi)有被使用的PANID和通道號(hào)形成一個(gè)獨(dú)立的網(wǎng)絡(luò),并能自動(dòng)遞增方式分配一個(gè)唯一的本地網(wǎng)絡(luò)地址給從機(jī)模塊。從機(jī)模塊使用時(shí)在使能了自組網(wǎng)功能后就不需要進(jìn)行任何的配置操作,從機(jī)模塊在加入網(wǎng)絡(luò)后就能跟主機(jī)進(jìn)行通訊。
1、硬件I/O控制
(1)主機(jī)模塊有兩個(gè)工作流程,分別通過(guò)JOIN管腳(IO1)和DETECT管腳(IO2)控制。
?、佼?dāng)JOIN管腳為低電平時(shí),主機(jī)模塊工作在組網(wǎng)模式,此時(shí)主機(jī)模塊允許從機(jī)模塊加入網(wǎng)絡(luò),當(dāng)JOIN管腳變?yōu)楦唠娖綍r(shí),主機(jī)模塊進(jìn)入正常工作流程,此時(shí)從機(jī)模塊不能再加入網(wǎng)絡(luò)。
②當(dāng)模塊檢測(cè)到DETECT管腳有大于3S的低電平時(shí),主機(jī)模塊工作在重獲取網(wǎng)絡(luò)參數(shù)模式,此時(shí)主機(jī)模塊會(huì)重新隨機(jī)生成新的PANID(0x0000~0xFFFF)和通道號(hào)(11~26),并檢測(cè)新生成的PANID和通道號(hào)是否已被其他網(wǎng)絡(luò)使用,如果已經(jīng)有網(wǎng)絡(luò)在使用,則重新生成,主機(jī)模塊在重新生成PANID和通道號(hào)后,需要把該主機(jī)下的所有從機(jī)都需要執(zhí)行入網(wǎng)操作。
圖3 主機(jī)模塊組網(wǎng)工作流程
(2)從機(jī)模塊有兩個(gè)工作模式,一個(gè)是入網(wǎng)申請(qǐng),一個(gè)是退網(wǎng)申請(qǐng),通過(guò)JOIN管腳的電平狀態(tài)決定工作模式。
?、佼?dāng)JOIN管腳為低電平,低電平持續(xù)時(shí)間在3S以下(短低電平)時(shí),從機(jī)模塊工作在入網(wǎng)申請(qǐng)狀態(tài);
?、诋?dāng)JOIN管腳為低電平,低電平持續(xù)時(shí)間在3S以上(長(zhǎng)低電平)時(shí),從機(jī)模塊工作在退網(wǎng)申請(qǐng)狀態(tài);如果JOIN管腳為高電平,從機(jī)模塊使用存儲(chǔ)的PANID和通道號(hào)進(jìn)入正常工作狀態(tài)。
圖4 從機(jī)模塊入網(wǎng)流程
2、軟件指令配置
主機(jī)模塊除了可以使用IO口控制主機(jī)允許從機(jī)加入網(wǎng)絡(luò),也可以使用命令的方式使能主機(jī)允許從機(jī)加入網(wǎng)絡(luò)。
表1 主機(jī)允許從機(jī)加入網(wǎng)絡(luò)命令 1
允許加入網(wǎng)絡(luò)開(kāi)啟的窗口時(shí)間為當(dāng)給主機(jī)發(fā)送了允許加入網(wǎng)絡(luò)命令后,主機(jī)開(kāi)始接受從機(jī)的入網(wǎng)請(qǐng)求,到達(dá)這個(gè)窗口時(shí)間后,主機(jī)不再接受從機(jī)的入網(wǎng)請(qǐng)求,窗口時(shí)間結(jié)束后,主機(jī)進(jìn)入正常的工作狀態(tài)。
除此之外,指令還可查詢主機(jī)模塊存儲(chǔ)的從機(jī)信息、查詢主從機(jī)狀態(tài)等等
三、測(cè)試實(shí)例
以下所有操作均基于廣州致遠(yuǎn)電子有限公司的zigbee評(píng)估板:AW516x Demo Board
圖5 zigbee評(píng)估套件
步驟:
(1)將評(píng)估板1做為主機(jī)模塊,評(píng)估板2做為從機(jī)模塊;
(2)將評(píng)估板1的JOIN管腳(IO2)拉為低電平,主機(jī)處于允許從機(jī)加入狀態(tài);
(3)將評(píng)估板2的JOIN管腳(IO2)短處碰為低電平,低電平持續(xù)時(shí)間在3S以下,從機(jī)模塊工作在入網(wǎng)申請(qǐng)狀態(tài),若有多個(gè)從機(jī)板,可依次短接IO2,進(jìn)行入網(wǎng)操作。
(4)入網(wǎng)完成,從機(jī)恢復(fù)正常高電平工作狀態(tài),將評(píng)估板1的JOIN管腳(IO2)拉回高電平,主機(jī)模塊進(jìn)入正常工作流程。
通訊測(cè)試:
連接PC,分別打開(kāi)兩個(gè)串口調(diào)試助手,進(jìn)行透明數(shù)據(jù)發(fā)送。
圖6 通訊測(cè)試
評(píng)論