?系統(tǒng)軟件實(shí)現(xiàn) - 基于ZigBee的無(wú)線網(wǎng)關(guān)解決方案
2. 3? 系統(tǒng)軟件實(shí)現(xiàn)
Zigbee 協(xié)議軟件的構(gòu)成包括硬件抽象層( HAL), 應(yīng)用庫(kù)( CUL)和系統(tǒng)主程序。HAL是簡(jiǎn)單的建立和使用外部的單元(例如, 無(wú)線收發(fā), 計(jì)時(shí)器, AD 變換等)。CUL 提供了一個(gè)簡(jiǎn)單的無(wú)線協(xié)議, 一個(gè)管理器管理DMA 通道和一個(gè)以軟件方式實(shí)現(xiàn)處理安排的多任務(wù)計(jì)時(shí)器。而系統(tǒng)的主程序提供了一個(gè)程序調(diào)用的接口和中斷。本軟件實(shí)現(xiàn)一個(gè)簡(jiǎn)單的點(diǎn)對(duì)點(diǎn)數(shù)據(jù)傳輸, 因此只需要一個(gè)精簡(jiǎn)的數(shù)據(jù)包協(xié)議( SPP)。
簡(jiǎn)單的協(xié)議包提供了簡(jiǎn)單的數(shù)據(jù)包結(jié)構(gòu)如表1, 其中Leng th(長(zhǎng)度), 接收信號(hào)強(qiáng)度( RSSI)和鏈路質(zhì)量LQ I區(qū)域由芯片設(shè)置, dest src address 和flags區(qū)域由SPP設(shè)置, Pay lOAd( length- 5bytes) 區(qū)域?yàn)橛行У妮d荷由用戶設(shè)置(最大125字節(jié))。
表1? 簡(jiǎn)單的數(shù)據(jù)包結(jié)構(gòu)
?
數(shù)據(jù)包的字節(jié)長(zhǎng)度不包括長(zhǎng)度字節(jié)本身, 目的地址和源地址每一個(gè)為一個(gè)字節(jié), 另外, 0x00是廣播地址, 這一地址的數(shù)據(jù)包被所有的節(jié)點(diǎn)接收, 標(biāo)志包括ACK 位, 一個(gè)ACK 請(qǐng)求( DO _ACK )。通過重傳顯示、序列號(hào)位、序列號(hào)及重傳的位共同作用從而能夠區(qū)分新的數(shù)據(jù)包和當(dāng)前接收的數(shù)據(jù)包, RSSI和LQ I顯示接收信號(hào)強(qiáng)度和鏈路的質(zhì)量, LQ I的第8位顯示是否CRC校驗(yàn)成功或失敗。
Zigbee數(shù)據(jù)包發(fā)送的部分流程圖如圖2 所示,接收數(shù)據(jù)的部分流程圖如圖3所示。
?
?

圖2? 發(fā)送數(shù)據(jù)的部分流程圖
?

圖3? 接收數(shù)據(jù)的部分流程圖
2. 4? Z igBee無(wú)線網(wǎng)關(guān)關(guān)鍵技術(shù)研究
2. 4. 1? 網(wǎng)絡(luò)管理功能
( 1)網(wǎng)絡(luò)形成。無(wú)線網(wǎng)關(guān)上電后, 無(wú)線協(xié)議棧各層首先進(jìn)行初始化, 然后通過網(wǎng)絡(luò)請(qǐng)求來啟動(dòng)一個(gè)新的網(wǎng)絡(luò)(僅具有協(xié)調(diào)器能力且當(dāng)前還沒有與網(wǎng)絡(luò)連接的網(wǎng)關(guān)設(shè)備才可以建立一個(gè)新的網(wǎng)絡(luò))。
組網(wǎng)開始時(shí), 網(wǎng)絡(luò)層首先向MAC層請(qǐng)求分配協(xié)議所規(guī)定的信道, 或者由PHY層進(jìn)行有效信道掃描,網(wǎng)絡(luò)層管理實(shí)體等待信道掃描結(jié)果, 然后根據(jù)掃描結(jié)果選擇可允許能量水平的信道。找到合適的信道后,為這個(gè)新的網(wǎng)絡(luò)選擇一個(gè)域網(wǎng)標(biāo)識(shí)符( PAN ID )。
PAN ID可由網(wǎng)絡(luò)形成請(qǐng)求時(shí)指定, 也可以隨機(jī)選擇一個(gè)PAN ID (除廣播PAN ID 固定為0xFFFF外) , PAN ID在所選信道中應(yīng)該是唯一的。PAN ID一旦選定, 無(wú)線網(wǎng)關(guān)將選擇16位網(wǎng)絡(luò)地址0x0000作為自身短地址,同時(shí)進(jìn)行相關(guān)設(shè)置。完成設(shè)置后, 通過MAC 層發(fā)出網(wǎng)絡(luò)啟動(dòng)請(qǐng)求, 返回網(wǎng)絡(luò)形成狀態(tài)。
( 2)網(wǎng)絡(luò)維護(hù)。網(wǎng)絡(luò)維護(hù)主要包括設(shè)備加入網(wǎng)絡(luò)和離開網(wǎng)絡(luò)過程。當(dāng)網(wǎng)絡(luò)形成后, 通過網(wǎng)絡(luò)管理實(shí)體設(shè)定MAC 層連接許可標(biāo)志來判斷是否允許其他設(shè)備加入網(wǎng)絡(luò)。加入方式有聯(lián)合方式和直接方式, 在協(xié)議實(shí)現(xiàn)中采取直接加入網(wǎng)絡(luò)方式。這種方式下由待加入的設(shè)備發(fā)送請(qǐng)求加入信標(biāo)幀, 網(wǎng)關(guān)接收到后, 網(wǎng)絡(luò)管理實(shí)體首先判斷這個(gè)設(shè)備是否已存在于網(wǎng)絡(luò)。若存在, 則使其加入網(wǎng)絡(luò); 若不存在, 則向設(shè)備發(fā)送信標(biāo)幀, 為這個(gè)設(shè)備分配一個(gè)網(wǎng)絡(luò)中唯一的16位短地址。這里的信標(biāo)幀是由網(wǎng)關(guān)無(wú)線協(xié)議MAC層生成作為PHY 層載荷, 它包含PAN ID、加入時(shí)隙分配等信息。網(wǎng)內(nèi)設(shè)備也可以請(qǐng)求斷開網(wǎng)絡(luò)。當(dāng)網(wǎng)關(guān)收到設(shè)備斷開連接請(qǐng)求后, MAC 層向網(wǎng)絡(luò)層發(fā)送報(bào)告, 開始執(zhí)行斷開流程, 從設(shè)備列表中刪除該設(shè)備相關(guān)信息。
- 第 1 頁(yè):基于ZigBee的無(wú)線網(wǎng)關(guān)解決方案
- 第 2 頁(yè):?系統(tǒng)軟件實(shí)現(xiàn)
- 第 3 頁(yè):?ZigBee 以太網(wǎng)協(xié)議轉(zhuǎn)換
本文導(dǎo)航
非常好我支持^.^
(379) 57.8%
不好我反對(duì)
(277) 42.2%
相關(guān)閱讀:
- [物聯(lián)網(wǎng)] 物聯(lián)網(wǎng)網(wǎng)絡(luò)設(shè)計(jì)實(shí)用的步驟和見解 2023-10-23
- [電子說] 智能離線語(yǔ)音識(shí)別全屋智能語(yǔ)音控制方案 2023-10-23
- [電子說] 基于ZigBee技術(shù)的工業(yè)設(shè)備如何接入物聯(lián)網(wǎng)平臺(tái) 2023-10-21
- [電子說] TB-411-8A+高通濾波器產(chǎn)品概述 2023-10-20
- [電子說] 介紹一款高性能的Zigbee無(wú)線模塊--SUN-JN5169 Zigbee模塊 2023-10-19
- [電子說] 基于ZigBee網(wǎng)絡(luò)及WebOS云計(jì)算技術(shù)的智能家居安防系統(tǒng)設(shè)計(jì)案例 2023-10-18
- [電子說] 一覽IEEE 802協(xié)議,全方位比較Zigbee與WiFi協(xié)議 2023-10-16
- [電子說] 緊湊型Zigbee 3.0 USB適配器可供應(yīng)商軟件系統(tǒng)配合使用 2023-10-12
( 發(fā)表人:大本 )
