當前位置:首頁 > 通信技術 > 通信技術
[導讀]1 ZigBee技術及ZigBee2006協(xié)議棧簡介 1.1 ZigBee技術概述 ZigBee技術是一種短距離、低速率的無線通信技術。由于其短距離、低速率及可以實時定位等特點,被廣泛應用于醫(yī)療、智能家居、智能建筑、工業(yè)自動化、智

1 ZigBee技術及ZigBee2006協(xié)議棧簡介
1.1 ZigBee技術概述
    ZigBee技術是一種短距離、低速率的無線通信技術。由于其短距離、低速率及可以實時定位等特點,被廣泛應用于醫(yī)療、智能家居、智能建筑、工業(yè)自動化、智能空間等領域。
1.2 ZigBee2006協(xié)議棧簡析
    ZigBee通信協(xié)議的基礎是IEEE 802.15.4。這是IEEE無線個人區(qū)域網(wǎng)工作組的一項標準,被稱作IEEE 802.15.4標準。該標準定義了物理層(PHY)和媒體訪問控制層(MAC)的標準。ZigBee聯(lián)盟則定義了ZigBee協(xié)議的網(wǎng)絡層(NWK)、應用層(APL)和安全服務規(guī)范。TI/Chipcon公司在IEEE 802.15.4標準和ZigBee聯(lián)盟所推出的ZigBee2006規(guī)范的基礎上,發(fā)布了全功能的ZigBee2006協(xié)議棧,并通過了ZigBee聯(lián)盟的認證。該協(xié)議棧全部用C語言編寫,免費提供給用戶,同時向后兼容。該協(xié)議棧在結構上分為應用層、網(wǎng)絡層、安全層、MAC層和物理層,每一層的函數(shù)都嚴格按照IEEE 802.15.4標準和ZigBee2006規(guī)范所規(guī)定的原語格式編寫。與此同時,在協(xié)議棧內部還嵌入了一個操作系統(tǒng),用于對任務進行統(tǒng)一的調度。對于用戶而言,只需要了解應用層函數(shù)并進行恰當?shù)恼{用,就可以構建功能完善、性能穩(wěn)定的ZigBee無線網(wǎng)絡。

2 系統(tǒng)方案設計
    ZigBee無線傳感執(zhí)行網(wǎng)絡必須要有一個協(xié)調器作為整個網(wǎng)絡的傳輸與控制中心,另外還要有若干路由器和終端節(jié)點。它有3種最基本的連接方式:星狀連接、網(wǎng)狀連接和串狀連接,如圖1所示。

    星狀連接方式比較簡單,只能組建包含較少節(jié)點的無線網(wǎng)絡,各個終端節(jié)點通過協(xié)調器實現(xiàn)網(wǎng)絡連接。網(wǎng)狀連接中任意節(jié)點之間都可以傳遞信息。串狀連接中增加了若干路由器,用于對數(shù)據(jù)進行轉發(fā)。
    在ZigBee2006全功能協(xié)議棧中,網(wǎng)絡連接方式的選擇可通過在nwk_globals.c和nwk_globals.h中對 STACK_PROFILE_ID的設置來實現(xiàn)。STACK_PRO-FILE_ID有3種量,分別對應著星狀連接、網(wǎng)狀連接和樹狀連接網(wǎng)絡。
    系統(tǒng)在nwk_globals.h中加入如下語句,從而在家庭環(huán)境中構建星狀結構的ZigBee無線傳感執(zhí)行網(wǎng)絡:
    #define STACK_PROFILE_ID GENERIC_STAR
    系統(tǒng)的整體結構如圖2所示。

    系統(tǒng)中布置有一個協(xié)調器與PC機相連,同時布置有若干終端節(jié)點或路由器,使其連接溫度、濕度和光敏電阻等傳感器來監(jiān)測房間環(huán)境。另外,房間中還布置有一些終端節(jié)點與執(zhí)行器連接,用于控制窗簾的開關、臺燈的亮滅等。協(xié)調器和終端節(jié)點在房間內組成了一個星狀結構的ZigBee無線傳感執(zhí)行網(wǎng)絡。
    系統(tǒng)的整體工作過程是:首先由協(xié)調器節(jié)點成功創(chuàng)建ZigBee網(wǎng)絡,然后等待終端節(jié)點加入。當終端節(jié)點及傳感器上電后,會自動查找空間中存在的 ZigBee網(wǎng)絡,找到后即加入網(wǎng)絡,并把該節(jié)點的物理地址發(fā)送給協(xié)調器。協(xié)調器把節(jié)點的地址信息等通過串口發(fā)送給計算機進行保存。當計算機想要獲取某一節(jié)點處的傳感器值時,只需要向串口發(fā)送相應節(jié)點的物理地址及測量指令。協(xié)調器通過串口從計算機端收到物理地址后,會向與其相對應的傳感器節(jié)點發(fā)送數(shù)據(jù),傳達傳感器測量指令。傳感器節(jié)點收到數(shù)據(jù)后,通過傳感器測量數(shù)據(jù),然后將測量結果發(fā)送給協(xié)調器,并在計算機端進行顯示。

3 系統(tǒng)硬件設計
    系統(tǒng)的協(xié)調器、路由器和終端節(jié)點的核心采用TI公司的CC2430芯片。該芯片是一款真正的系統(tǒng)芯片(SoC)解決方案,其在單個芯片上集成了ZigBee射頻前端、微控制器和存儲器。它使用1個8位的8051內核MCU作為控制器,其性能是工業(yè)標準8051核的8倍,且程序代碼與51系列單片機完全兼容。CC2430具有64/128 KB的可編程Flash和8 KB的RAM,其大容量的Flash完全能夠滿足ZigBee2006協(xié)議棧程序的要求;另外,還具有模/數(shù)轉換器(ADC)、定時器、AES128協(xié)處理器和看門狗定時器等片內外設。
    系統(tǒng)的工作原理是:在協(xié)調器端,CC2430通過RS232異步串行通信與PC機進行通信。協(xié)調器成功組建網(wǎng)絡時,會向PC機發(fā)送組網(wǎng)成功指示。當有路由器或終端節(jié)點加入網(wǎng)絡時,協(xié)調器通過RS232向PC機發(fā)送節(jié)點加入指示。在路由器和終端節(jié)點處,上電后CC2430尋找可用信道并加入網(wǎng)絡,然后等待指令。路由器或終端節(jié)點一旦收到協(xié)調器發(fā)送來的測量指令,將會讀取傳感器的數(shù)據(jù)并傳送。
    本系統(tǒng)中溫度和濕度測量使用Sensirion公司的SHT11數(shù)字溫濕度傳感器。該傳感器具有相對濕度和溫度一體測量、超快的響應時間等優(yōu)良特性。對臺燈和窗簾的控制是通過繼電器TQ2-3V來實現(xiàn)的。

4 軟件設計
4.1 系統(tǒng)采集溫濕度的程序設計
    系統(tǒng)溫濕度的采集使用的SHT11數(shù)字式溫濕度傳感器采用兩線制數(shù)字接口,編程十分方便。溫濕度采集程序流程如圖3所示。

4.2 光敏電阻阻值讀取
    光敏電阻阻值的讀取用CC2430內部的ADC實現(xiàn)。通過設置CC2430的 ADCCON3寄存器可對A/D轉換的一些參數(shù)進行設置。具體如下:使用14位的分辨率,采樣通道設置為AINO,參考電壓設置為內部1.25 V。通過實驗可以測定,當P0.1的電壓值等于1.25 V時,環(huán)境光照強度已經(jīng)足夠弱,可以控制空間中的其他執(zhí)行器做出動作,如開燈、打開窗簾等。
4.3 ZigBee2006協(xié)議棧常用函數(shù)及工作過程
    系統(tǒng)軟件基于TI/Chipcon公司免費提供的Zig-Bee2006協(xié)議棧,程序中嵌入了實時操作系統(tǒng),用于對網(wǎng)絡組建、節(jié)點加入、數(shù)據(jù)收發(fā)等功能運行統(tǒng)一調度。進行程序設計時,首先在協(xié)議棧應用層程序中添加相應的任務,然后運行任務即可處理。ZigBee2006協(xié)議棧的main函數(shù)流程如圖4所示。

    OSAL層初始化時,通過osalAddTasks函數(shù)提供任務列表,向實時操作系統(tǒng)中添加用戶所需要的任務。在該函數(shù)中,TI公司已經(jīng)添加了一些任務,如硬件應用層初始化及處理函數(shù)、網(wǎng)絡層初始化及處理函數(shù)、應用層初始化及處理函數(shù)等。在該函數(shù)中添加自己的任務,添加任務函數(shù)如下: osalTaskAdd(CSCE_Init,CSCE_ProcessEvent,OSAL_TASK_PRIORI-TYLOW);
osalTaskAdd函數(shù)在OSAL層中的OSAL_Task.C文件中定義,其作用是添加一個任務到任務列表。其中,第1個參數(shù)CSCE_Init為用戶任務的初始化函數(shù)的函數(shù)名,第2個參數(shù)CSCE_ProcessEvent為用戶任務的處理函數(shù)的函數(shù)名,第3個參數(shù) OSAL_TASK_PRlORITY_LOW為用戶任務的優(yōu)先級。
    任務初始化函數(shù)CSCE_Init和任務處理函數(shù)CSCE_ProcessEvent都需要遵循ZigBee2006協(xié)議棧的格式。其中,CSCE_Init函數(shù)和CSCE_ProcessEvent函數(shù)需要在應用層頭文件SampleApp.h中進行聲明。
    CSCE_Init函數(shù)有一個參數(shù)task_id,該參數(shù)為任務ID,具體值由OSAL進行分配。CSCE_ProcessEvent函數(shù)有2個參數(shù):第 1個參數(shù)與CSCE_Init函數(shù)相同,為任務ID;第2個參數(shù)events為需要處理的事件,它是一個16位的二進制數(shù),每一位代表一個事件。
    利用OSAL層進行任務設計時,必須保留系統(tǒng)任務事件SYS_EVENT_MSG(0x8000),該事件為強制事件。進行任務處理時,首先要對系統(tǒng)任務事件是否發(fā)生進行判斷,任務處理流程如圖5所示。由于ZigBee2006協(xié)議棧為全功能協(xié)議棧,不需要對IEEE 802.15.4和ZigBee規(guī)范進行全面的了解,只需要在應用層進行一些設計和改動,即可實現(xiàn)數(shù)據(jù)的發(fā)送、接收以及網(wǎng)絡組建功能。在終端節(jié)點的 CSCE_ProcessEvent函數(shù)的上電初始化處理部分,加入物理地址和短地址提取函數(shù),然后調用發(fā)送函數(shù)將物理地址向協(xié)調器發(fā)送。協(xié)議棧中的物理地址獲取函數(shù)為NLME_GetExtAddr(),其返回結果為一個指向節(jié)點的64位IEEE地址的指針。短地址的獲取函數(shù)為 NLME_GetShortAddr(),其返回結果為一個16位的無符號整型數(shù)據(jù)。
    數(shù)據(jù)發(fā)送函數(shù)在ZigBee2006規(guī)范的原語中已經(jīng)規(guī)定了其參數(shù)的順序及意義。具體到TI/Chipcon公司所提供的ZigBee2006協(xié)議棧中,該函數(shù)為AF_DataRequest,其具體形式如下:


    在協(xié)調器端和路由器(或終端節(jié)點)的CSCE_Pro-cessEvent函數(shù)中接收到數(shù)據(jù)部分(即CSCE_MessageMS-GCB函數(shù))中對數(shù)據(jù)進行處理,將所接收到的數(shù)據(jù)(即物理地址和短地址)通過串口發(fā)送到計算機端,進行顯示。
    ZigBee2006協(xié)議棧中設計了串口接收處理函數(shù):

  
    該函數(shù)在MT目錄的SPIMgr.C中。實驗中,在協(xié)調器端調用該函數(shù),即可從PC機端接收數(shù)據(jù)并進行相應的處理。


4.4 傳感器程序與ZigBee2006協(xié)議棧的融合
    系統(tǒng)程序中,傳感器端的物理地址及短地址的發(fā)送部分程序,添加在ZigBee2006協(xié)議棧中的CSCE_ProcessEv-ent函數(shù)的上電初始化部分,即ZDO_STATE_CHANGE消息下。協(xié)調器及傳感器端的數(shù)據(jù)接收都添加在CSCE_ProcessEvent函數(shù)的數(shù)據(jù)接收部分,即AF_INCOMING_MSG_CMD消息下。系統(tǒng)整體工作過程如圖6所示。

4.5 PC機端程序
    在系統(tǒng)中,節(jié)點上電加入網(wǎng)絡后,協(xié)調器會通過RS232向PC機發(fā)送新加入節(jié)點的IEEE地址。PC機將從串口接收到的物理地址和短地址進行存儲,并改變計算機中所存儲的房間地圖中的節(jié)點顏色進行指示。該程序使用Visual C++6.O編寫。
    對用戶而言,當想要獲取房間內傳感器所測量區(qū)域的溫濕度、光照等情況時,只需要點擊PC機所顯示的地圖上相應的節(jié)點。程序會調用已存儲在相應位置的傳感器節(jié)點的物理地址,通過串口和ZigBee網(wǎng)絡向該節(jié)點發(fā)送測量傳感器數(shù)據(jù)的指令,并等待接收傳感器傳回的溫濕度,并在PC機界面進行顯示。

5 結 論
    實驗表明,節(jié)點的功耗較低,每個節(jié)點使用電池供電可以工作3~6個月,可見應用ZigBee構建家庭環(huán)境的傳感執(zhí)行網(wǎng)絡是可行的。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯(lián)系該專欄作者,如若文章內容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉