亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Z—Stack協(xié)議棧的無線傳感器網(wǎng)絡(luò)應(yīng)用研究

        2013-12-31 00:00:00王正地
        數(shù)字化用戶 2013年17期

        【摘 要】本文在Z-Stack協(xié)議的基礎(chǔ)上采用以 CC2530 芯片為核心,構(gòu)建一個無線傳感網(wǎng)絡(luò)。通過各終端利用自帶的 A/D 轉(zhuǎn)化器采集溫度數(shù)據(jù)并通過網(wǎng)絡(luò)匯聚到協(xié)調(diào)器,最終在PC機上顯示各節(jié)點數(shù)據(jù)和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。本實驗實現(xiàn)了ZigBee網(wǎng)絡(luò)的通信并驗證了無線傳感器網(wǎng)絡(luò)的自組織、自愈、多跳的特性。

        【關(guān)鍵詞】Z-Stack協(xié)議棧 無線傳感器網(wǎng)絡(luò) ZigBee CC2530

        無線傳感器網(wǎng)絡(luò)是由大量體積小,成本低,具有無線通信、傳感、數(shù)據(jù)處理能力的傳感器節(jié)點組成的,各傳感器節(jié)點被布置在整個觀測區(qū)域中,它們通過無線通信方式形成多跳、自組織網(wǎng)絡(luò)系統(tǒng),ZigBee作為一種專注于低功耗、低速率的無線網(wǎng)絡(luò)通信標(biāo)準(zhǔn),被廣泛應(yīng)用于WSN如智能抄表、家庭控制、醫(yī)療監(jiān)護和環(huán)境檢測等。本文主要介紹了基于Z-Stack協(xié)議棧的WSN建立過程,通過組建不同的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),以溫度采集為例,來剖析基于Z-Stack協(xié)議棧的應(yīng)用開發(fā)流程。

        一、 Z-Stack協(xié)議棧的分析

        (一)總體軟件框架

        Z_Stack協(xié)議棧主要由Zigbee協(xié)議、操作系統(tǒng)抽象層(OSAL)和硬件抽象層(HAL)等各層組成。Z_Stack協(xié)議棧總體框架如圖1所示。HAL層提供了I/O,ADC,SPI等豐富的API接口;OSAL層負(fù)責(zé)管理系統(tǒng)的任務(wù)調(diào)度,整個調(diào)度采用輪詢機制,采用優(yōu)先級控制管理任務(wù),其主要作用是隔離硬件系統(tǒng)和協(xié)議棧,因此用戶可以大大縮短開發(fā)周期,即可在未知硬件平臺細(xì)節(jié)的基礎(chǔ)上,就可以利用OSAL提供的豐富工具實現(xiàn)各種功能 [4]。Z_Stack協(xié)議從main()函數(shù)開始啟動,main()函數(shù)按模塊劃分共執(zhí)行了2個任務(wù):第一個是系統(tǒng)軟硬件初始化,第二個是執(zhí)行輪轉(zhuǎn)查詢式操作系統(tǒng),進入死循環(huán)狀態(tài)。

        (二)任務(wù)調(diào)度流程

        Z_Stack的任務(wù)管理主要由OSAL層完成。在系統(tǒng)運行時,OSAL調(diào)用 osal_run_system( )函數(shù)開始執(zhí)行任務(wù)調(diào)度主循環(huán),由代碼結(jié)構(gòu)得出,在OSAL中是通過tsakEvents[idx]任務(wù)事件來判斷事件發(fā)生是的。在OSAL初始化時,tsakEvents數(shù)組被初始化為零,在輪詢機制下,一旦系統(tǒng)中產(chǎn)生任務(wù),就調(diào)用osal_set_event( )函數(shù)把tsakEvents[taskID]賦值為對應(yīng)的事件。不同的任務(wù)對應(yīng)不同的taskID, tsakEvents數(shù)組表示了系統(tǒng)中哪些任務(wù)存在沒有處理的事件,然后就會調(diào)用相應(yīng)的任務(wù)處理對應(yīng)的事件。

        (三)處理任務(wù)事件

        協(xié)議棧通過調(diào)用ApplicationName_ProcessEvent函數(shù)(可自定義)來處理任務(wù)事件,除了強制的事件之外,任一OSAL任務(wù)能被定義多達15個任務(wù)事件[5]。例如當(dāng)檢測到節(jié)點成功加入構(gòu)建的網(wǎng)絡(luò)以后,ZDO就會向在應(yīng)用程序框架中注冊過的任務(wù)發(fā)送一個設(shè)備狀態(tài)改變的消息,其狀態(tài)指示了當(dāng)前網(wǎng)絡(luò)的狀態(tài)。因此任務(wù)事件管理者只要根據(jù)系統(tǒng)信息處理事件(比如AF_INCOMING_MSG_CMD),就可以完成相應(yīng)的應(yīng)用功能。

        二、WSN系統(tǒng)軟件設(shè)計

        (一)協(xié)調(diào)器啟動及構(gòu)建網(wǎng)絡(luò)

        ZigBee網(wǎng)絡(luò)的構(gòu)建是由網(wǎng)絡(luò)協(xié)調(diào)器來完成的,且每個網(wǎng)絡(luò)只有一個協(xié)調(diào)器。當(dāng)協(xié)調(diào)器節(jié)點上電啟動之后,首先完成系統(tǒng)的初始化,包括初始化系統(tǒng)時鐘、檢測芯片電壓、falsh存儲器、端口描述符等,然后進入操作系統(tǒng)。首先進入的是應(yīng)用層任務(wù)函數(shù),通過按鍵來設(shè)置其為協(xié)調(diào)器,然后將設(shè)備類型ZG_DEVICETYPE_COORDINATOR寫入至非易失性存儲器NV中,系統(tǒng)重啟。重啟之后系統(tǒng)執(zhí)行zb_StartRequest( )函數(shù)來初始化ZDO設(shè)備函數(shù)ZDOInitDevice( )。至此整個網(wǎng)絡(luò)構(gòu)建開始執(zhí)行,通過ZDO層中的網(wǎng)絡(luò)初始化函數(shù)ZDApp_NetworkInit()以及預(yù)設(shè)的網(wǎng)絡(luò)通道和ID號,調(diào)用網(wǎng)絡(luò)形成函數(shù)NLME_NetworkFormationRequest( )來構(gòu)建整個網(wǎng)絡(luò)。

        (二)路由器啟動及加入網(wǎng)絡(luò)

        在測試網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)中,本文加入了路由器節(jié)點,路由器采用自啟動模式,在網(wǎng)絡(luò)初始化時,調(diào)用NLME_NetworkDiscoveryRequest( )函數(shù)來發(fā)現(xiàn)網(wǎng)絡(luò),然后等待協(xié)調(diào)器的響應(yīng),直至加入網(wǎng)絡(luò)成功。為了在PC上實時顯示路由器節(jié)點(即使沒有充當(dāng)路由功能),通過定時器來調(diào)用 osal_set_event( TaskID, REPORT_EVT )函數(shù),當(dāng)系統(tǒng)收到MY_REPORT_EVT事件后,將會觸發(fā)osal_start_timerEx( TaskID, REPORT_EVT, Report_MyPeriod )函數(shù),該函數(shù)將會周期性的發(fā)送路由器節(jié)點信息至協(xié)調(diào)器。

        (三)終端節(jié)點加入網(wǎng)路、綁定操作和發(fā)送數(shù)據(jù)

        當(dāng)打開傳感器終端節(jié)點的電源,傳感器節(jié)點便會自動搜索是否存在網(wǎng)絡(luò),若發(fā)現(xiàn)存在網(wǎng)絡(luò)的話,調(diào)用NLME_JionRequest( )函數(shù),向協(xié)調(diào)器發(fā)送加入網(wǎng)絡(luò)請求。另外終端與協(xié)調(diào)器之間需通過綁定才能完成傳輸,綁定是一種兩個應(yīng)用設(shè)備之間信息傳輸?shù)目刂茩C制。首先協(xié)調(diào)器在啟動時通過執(zhí)行zb_AllowBind( )函數(shù),開啟允許綁定功能。這里默認(rèn)設(shè)置綁定時間為無限等待,一旦終端節(jié)點發(fā)出綁定請求函數(shù)zb_BindDevice( ),協(xié)調(diào)器節(jié)點就會響應(yīng)綁定,完成綁定操作。最后通過調(diào)用osal_set_event( )函數(shù)來觸發(fā)數(shù)據(jù)發(fā)送事件,并在每次發(fā)送完以后調(diào)用osal_start_timerEx( )函數(shù)來周期性發(fā)送采集的數(shù)據(jù)。

        三、實驗測試

        本系統(tǒng)采用4個自行設(shè)計的CC2330開發(fā)板作為傳感器節(jié)點,組成傳感器網(wǎng)絡(luò),測試數(shù)據(jù)由片內(nèi)自帶的溫度傳感器提供。

        (一)星型網(wǎng)絡(luò)

        通過修改Z_Stack協(xié)議棧nwk_globals.h中的STACK_PROFILE_ID值,使其為GENERIC_STAR,在編譯環(huán)境中關(guān)閉一些宏(比如LCD_SUPPORT_ED),并編寫溫度采集程序,協(xié)調(diào)器以一定的數(shù)據(jù)格式往串口發(fā)送數(shù)據(jù)。將協(xié)調(diào)器的串口與PC連接起來,啟動ZigBee Sensor Monitor上位機軟件。開啟目標(biāo)板電源,重啟目標(biāo)板電源,開啟路由器節(jié)點電源,按下S2鍵,路由器開始向協(xié)調(diào)器發(fā)送報告。開啟終端節(jié)點電源,直至LED1開始閃爍,表面節(jié)點以加入網(wǎng)絡(luò),按下S3鍵,終端節(jié)點開始向協(xié)調(diào)器發(fā)送報告。如圖1所示是星型網(wǎng)絡(luò)組網(wǎng)通訊實驗結(jié)果。

        (二)樹型網(wǎng)絡(luò)

        修改Z_Stack協(xié)議棧nwk_globals.h中的STACK_PROFILE_ID值,使其為GENERIC_TREE,重新編譯下載至各個傳感器節(jié)點。依次打開協(xié)調(diào)器、路由器、終端器電源,待組網(wǎng)成功后,可以看到如圖2所示的樹型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。通過移動終端節(jié)點,可以看到網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)發(fā)生了相應(yīng)的變化。

        綜上,本文從應(yīng)用方面著手,簡明概要地介紹了ZigBee協(xié)議棧的體系結(jié)構(gòu),采用TI公司的Z_Stack協(xié)議棧,以CC2530芯片為核心構(gòu)建了一個基于Z_Stack協(xié)議棧的無線傳感器網(wǎng)絡(luò)。它可以大大減輕開發(fā)人員的而負(fù)擔(dān),加快開發(fā)進度;同時其開源免費的特點降低了成本,可用于智能家居,環(huán)境監(jiān)測等領(lǐng)域。

        參考文獻:

        [1] 高守瑋,吳燦陽.ZigBee技術(shù)實踐教程[M].北京:北京航空航天大學(xué)出版社,2009.

        [2] 鐘永鋒,劉永俊.ZigBee無線傳感器網(wǎng)絡(luò)[M].北京:北京郵電大學(xué)出版社,2011.

        [3] 瞿雷,劉盛德.ZigBee技術(shù)及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2007.

        国语精品一区二区三区| 丝袜美腿丝袜美腿丝袜美腿丝袜| 亚洲av成人综合网成人| 人妻久久久一区二区三区| 久久AⅤ无码精品为人妻系列| 欧美亚洲另类 丝袜综合网| 国产成人亚洲精品91专区高清| 无码aⅴ精品一区二区三区浪潮| 久久日本三级韩国三级| 亚洲无线码一区在线观看| 国产丝袜美腿在线视频| 人妻少妇精品无码专区| 亚洲av中文无码字幕色三| 制服丝袜人妻中出第一页| 91久久精品美女高潮喷白浆| 国内精品久久久久国产盗摄| 广东少妇大战黑人34厘米视频| 中文字幕麻豆一区二区| 日本av天堂一区二区三区| 亚洲中文字幕无码中文字在线| 狠狠色狠狠色综合| 黄色三级一区二区三区| 草草影院ccyy国产日本欧美| 纯爱无遮挡h肉动漫在线播放| 免费国产一级片内射老| 国产一区三区二区视频在线观看| 偷拍激情视频一区二区三区| 久久精品国产9久久综合| 九九日本黄色精品视频| 久久红精品一区二区三区| 天堂aⅴ无码一区二区三区| 精品欧美久久99久久久另类专区 | 免费一区二区三区在线视频| 成人短篇在线视频夫妻刺激自拍 | 中文字幕午夜AV福利片| 一区二区三区视频亚洲| 老太脱裤子让老头玩xxxxx | 国产suv精品一区二区6| 在线国产视频精品视频| 国产成人av三级在线观看韩国 | 欧美日本国产va高清cabal|