基于ZigBee的自愈自組網(wǎng)的設(shè)計(jì)與應(yīng)用
2 ZSTACK協(xié)議棧
CC2530是TI公司推出的一款兼容IEEE 802.15.4的SOC,集成了增強(qiáng)型8051內(nèi)核,結(jié)合上TI的Z_Stack協(xié)議棧軟件,可組建網(wǎng)絡(luò),同時(shí)加快開(kāi)發(fā)周期,減小開(kāi)發(fā)成本。
Z_Stack協(xié)議棧采用操作系統(tǒng)的思想來(lái)構(gòu)建,采用基于優(yōu)先級(jí)的事件輪循機(jī)制,當(dāng)各層初始化完成后進(jìn)入低功耗模式,事件發(fā)生時(shí),喚醒系統(tǒng)進(jìn)入中斷處理事件函數(shù),結(jié)束后繼續(xù)進(jìn)入低功耗模式。操作系統(tǒng)抽象層(OSAL)實(shí)現(xiàn)了一個(gè)易用的操作系統(tǒng)平臺(tái),通過(guò)時(shí)間片輪轉(zhuǎn)函數(shù)實(shí)現(xiàn)任務(wù)調(diào)度,提供多任務(wù)處理機(jī)制。系統(tǒng)中tasksEvents數(shù)組中存放著每個(gè)任務(wù)標(biāo)志位,輪循判斷各任務(wù)標(biāo)志位來(lái)執(zhí)行對(duì)應(yīng)的任務(wù)。Z_Stack協(xié)議棧工作流程如圖2所示。本文引用地址:http://m.butianyuan.cn/article/153494.htm
Z_Stack協(xié)議棧提供多種任務(wù)事件觸發(fā)機(jī)制,可以直接通過(guò)API函數(shù)osal_set_event()設(shè)置要觸發(fā)的任務(wù)標(biāo)志位;也可以通過(guò)設(shè)置一個(gè)軟件定時(shí)器osal_start_timeEx()函數(shù)等待溢出來(lái)觸發(fā);最后,也可以通過(guò)調(diào)用系統(tǒng)消息傳遞機(jī)制來(lái)觸發(fā)任務(wù)事件。在進(jìn)行應(yīng)用開(kāi)發(fā)時(shí),需要在tasksEvents數(shù)組中添加相應(yīng)的任務(wù),確定任務(wù)的ID號(hào)。同時(shí)在初始化系統(tǒng)任務(wù)函數(shù)osalInitTasks()中添加任務(wù)的初始化函數(shù),在事件處理函數(shù)數(shù)組tasksArr[]中添加任務(wù)處理函數(shù)。每個(gè)任務(wù)的ID號(hào)是唯一的,系統(tǒng)按每次檢測(cè)到的任務(wù)ID號(hào)執(zhí)行相對(duì)應(yīng)的事件處理函數(shù)。
3 具有自愈功能的自組網(wǎng)設(shè)計(jì)與應(yīng)用
通過(guò)對(duì)ZigBee協(xié)議體系的研究,利用Z_Stack協(xié)議棧在CC2530平臺(tái)上,實(shí)現(xiàn)ZigBee自愈功能的自組網(wǎng),傳感器節(jié)點(diǎn)對(duì)無(wú)人值守通信基站的交流電壓、電流和溫濕度環(huán)境等參數(shù)進(jìn)行信號(hào)調(diào)理和采集后經(jīng)路由器節(jié)點(diǎn)、協(xié)調(diào)器,再通過(guò)GPRS通信方式傳遞到監(jiān)控中心,實(shí)現(xiàn)對(duì)無(wú)人值守通信基站的交流電壓、電流和溫濕度環(huán)境等參數(shù)的實(shí)時(shí)監(jiān)控結(jié)構(gòu)如圖3所示。
評(píng)論