新聞中心

EEPW首頁(yè) > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > ZigBee無線傳感器網(wǎng)絡(luò)在遠(yuǎn)程環(huán)境監(jiān)測(cè)中的應(yīng)用設(shè)計(jì)

ZigBee無線傳感器網(wǎng)絡(luò)在遠(yuǎn)程環(huán)境監(jiān)測(cè)中的應(yīng)用設(shè)計(jì)

作者: 時(shí)間:2010-09-29 來源:網(wǎng)絡(luò) 收藏

3 軟件程序設(shè)計(jì)
3.1 網(wǎng)絡(luò)層數(shù)據(jù)幀
節(jié)點(diǎn)、中心控制節(jié)點(diǎn)之間的數(shù)據(jù)傳輸必須遵循一定的數(shù)據(jù)格式,才能保證傳輸數(shù)據(jù)的正確性和有效性。一種有效的數(shù)據(jù)幀格式對(duì)于通信網(wǎng)絡(luò)中數(shù)據(jù)的準(zhǔn)確傳輸能起到事半功倍的效果。數(shù)據(jù)幀的定義應(yīng)該滿足兩個(gè)條件:一是要具有很好的擴(kuò)展性,以方便系統(tǒng)擴(kuò)展其他服務(wù);二是要盡量簡(jiǎn)潔,以減少通信網(wǎng)絡(luò)中的數(shù)據(jù)流量,使數(shù)據(jù)通信更通暢。
當(dāng)節(jié)點(diǎn)向中心控制節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),必須讓中心控制節(jié)點(diǎn)知道自己上傳數(shù)據(jù)的類型以及自己的設(shè)備特征,這樣,當(dāng)出現(xiàn)異常時(shí),監(jiān)測(cè)網(wǎng)絡(luò)就可以報(bào)告出現(xiàn)異常的區(qū)域以及異常的特征??紤]到這個(gè)需求,在網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)就必須按照網(wǎng)絡(luò)約定的格式進(jìn)行存儲(chǔ)。圖4所示是傳感器網(wǎng)絡(luò)層數(shù)據(jù)幀的格式定義。

13d.JPG


其中OXAAH為幀頭,是一個(gè)數(shù)據(jù)幀開始的標(biāo)志;
0XBBH為幀尾,是一個(gè)數(shù)據(jù)幀結(jié)束的標(biāo)志;
校驗(yàn)和用于表示通過校驗(yàn)位來檢驗(yàn)數(shù)據(jù)幀在傳輸過程中是不是發(fā)生了數(shù)據(jù)位的改變,通常從幀類型到數(shù)據(jù)域尾進(jìn)行加和校驗(yàn);
通過幀類型域可以判斷此數(shù)據(jù)幀所攜帶的是哪一種數(shù)據(jù)。為了滿足系統(tǒng)需求,一般可設(shè)置周期采集數(shù)據(jù)和中斷數(shù)據(jù)兩種數(shù)據(jù)類型。其中
“0X01H”表示中斷數(shù)據(jù), “0X02H”表示周期采集數(shù)據(jù)。
利用設(shè)備標(biāo)識(shí),在傳感器網(wǎng)絡(luò)中,傳感器節(jié)點(diǎn)在此域中寫入自己的短地址的低字節(jié)作為自己的標(biāo)志,上級(jí)網(wǎng)絡(luò)根據(jù)這個(gè)標(biāo)志就可以知道是哪個(gè)設(shè)備的數(shù)據(jù)。
數(shù)據(jù)域是數(shù)據(jù)幀的主要部分。在無線傳感器網(wǎng)絡(luò)中,數(shù)據(jù)域包括系統(tǒng)定義的幾種參數(shù)測(cè)量值(3字節(jié)ASII碼)。在系統(tǒng)定義的數(shù)據(jù)幀格式中,各個(gè)參數(shù)的位置是固定不變的,順序依次為溫度值、濕度值、節(jié)點(diǎn)電池電壓值,因此,數(shù)據(jù)域的長(zhǎng)度為固定的9字節(jié)。存放測(cè)量值的數(shù)據(jù)域每次都在傳感器點(diǎn)采集數(shù)據(jù)前都將民初始化為全0,這樣,如果某個(gè)參數(shù)沒有傳遞過來自己的測(cè)量值,上級(jí)設(shè)備就可以根據(jù)某段數(shù)據(jù)是否為全0來判斷數(shù)據(jù)是否成功采集。
3.2 中心控制節(jié)點(diǎn)程序設(shè)計(jì)
中心控制節(jié)點(diǎn)是無線傳感器網(wǎng)絡(luò)與監(jiān)控中心交互的關(guān)鍵部分。它作為無線傳感器網(wǎng)絡(luò)的協(xié)調(diào)器,可建立一個(gè)新的無線通信網(wǎng)絡(luò),以負(fù)責(zé)網(wǎng)絡(luò)標(biāo)識(shí)符的選取,并允許加入網(wǎng)絡(luò),實(shí)施節(jié)點(diǎn)綁定;接收傳感器節(jié)點(diǎn)的環(huán)境數(shù)據(jù),并進(jìn)行預(yù)處理;同時(shí),還通過RS232串口將數(shù)據(jù)傳輸?shù)奖O(jiān)控中心進(jìn)行數(shù)據(jù)分析和處理。因此,中心控制節(jié)點(diǎn)應(yīng)該一直處于活躍的工作狀態(tài),時(shí)刻監(jiān)聽無線數(shù)據(jù)和串口數(shù)據(jù),其中心控制節(jié)點(diǎn)的設(shè)計(jì)流程如圖5所示。

13e.JPG


中心控制節(jié)點(diǎn)在無線傳感器網(wǎng)絡(luò)中充當(dāng)著協(xié)調(diào)器的角色,它應(yīng)該具有建立一個(gè)新的網(wǎng)絡(luò)并允許其他節(jié)點(diǎn)加入的能力;同時(shí),中心控制節(jié)點(diǎn)還要實(shí)現(xiàn)無線傳感器網(wǎng)絡(luò)和監(jiān)控中心計(jì)算機(jī)的數(shù)據(jù)通信功能。中心控制節(jié)點(diǎn)工作時(shí),首先用電源開關(guān)S1啟動(dòng)監(jiān)測(cè)站網(wǎng)關(guān),以開始建立一個(gè)新的網(wǎng)絡(luò)過程,并進(jìn)行串口初始化。監(jiān)測(cè)站網(wǎng)關(guān)的應(yīng)用程序應(yīng)通過應(yīng)用層接口與協(xié)議棧連接,從而建立網(wǎng)絡(luò)、允許加入網(wǎng)絡(luò)和綁定等,而且這些工作應(yīng)在協(xié)議棧內(nèi)自動(dòng)完成。



關(guān)鍵詞: ZigBee 無線 傳感器

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉