資源描述:
《Zigbee網(wǎng)關(guān)通信協(xié)議》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、無線傳感器網(wǎng)絡(luò)(Zigbee)網(wǎng)關(guān)的的通信協(xié)議網(wǎng)關(guān)是通過串口與PC機相連的。PC機可以通過串口發(fā)送采集命令和收集采集數(shù)據(jù),為了能有效管理這些數(shù)據(jù),需要執(zhí)行統(tǒng)一的數(shù)據(jù)通信格式。下面介紹該系統(tǒng)中所使用的通用數(shù)據(jù)格式。每一幀數(shù)據(jù)都采用相同的幀長度,且都帶有幀頭、數(shù)據(jù)和幀尾。具體格式如下:如上所示,每一幀數(shù)據(jù)的長度都是32字節(jié)。除幀頭和幀尾,每一幀數(shù)據(jù)都由命令頭、發(fā)送地址、有效數(shù)據(jù)和校驗和組成。命令頭:所執(zhí)行的命令。地址:所訪問模塊的長(前8字節(jié))/短地址(后2字節(jié))。數(shù)據(jù):傳送各個參數(shù)、變量與返回值及各種需要突發(fā)發(fā)送的數(shù)據(jù)。校驗和:從命令頭到數(shù)據(jù)尾的加和校驗,用于確定數(shù)據(jù)正確與否。注
2、:命令頭、地址的長地址部分和數(shù)據(jù)都采用ASCII碼。這個系統(tǒng)的命令分為3種,分別為?讀命令R(ead):包括讀各個傳感器或網(wǎng)絡(luò)狀態(tài)命令。?測試命令T(est):測試LED、BEEP或電池壽命命令。?擴展板命令E(xtend):控制和讀擴展板命令。下面介紹具體命令格式。1.讀命令1)RASRAS(ReadallSensor):讀傳感器。RAS具體格式如下:需要加入地址和數(shù)據(jù)——地址:傳感器模塊地址;數(shù)據(jù):GM***/WD***。傳感器種類包括光敏:GM;溫度:WD;可調(diào)電位器:AD。(1)讀取成功返回格式如下:地址:加入傳感器模塊地址。數(shù)據(jù):傳感器+測量值(ASSII碼)。其中光
3、敏:GM+***(3字節(jié)ASII碼);溫度:WD+***(3字節(jié)ASII碼);可調(diào)電位器:AD+***(3字節(jié)ASII碼)。(2)讀取失敗返回格式如下:2)RNDRND:無線網(wǎng)絡(luò)發(fā)現(xiàn)。RND具體格式如下:需要加入地址和數(shù)據(jù)———地址:無;數(shù)據(jù):無,只需要命令頭。(1)讀取成功返回格式如下:返回網(wǎng)絡(luò)中節(jié)點的性質(zhì):RFD(終端節(jié)點)/ROU(路由器)+地址+第幾個。例如:如果返回第1個RFD節(jié)點,則數(shù)據(jù)段為RFD01。具體格式如下:(2)讀取成功結(jié)束格式如下:2.測試命令1)TLDTLD:測試傳感器LED燈。TLD具體格式如下:需要加入的地址和數(shù)據(jù)——地址:傳感器節(jié)點地址;數(shù)據(jù):控
4、制數(shù)據(jù)。數(shù)據(jù):C(控制亮滅)+D+LED號(3/4)+X(X=0滅,X=1亮);T(LED閃爍)+D+LED號(3/4)+X(X=0滅,X=1閃爍)。返回格式:返回格式與發(fā)送格式相同,只是數(shù)據(jù)有變化。(1)測試成功:返回數(shù)據(jù)為OK。具體格式如下:(1)測試失敗:返回數(shù)據(jù)為E0。具體格式如下:2)TBLTBL:傳感器電池壽命。TBL具體格式如下:需要加入的地址和數(shù)據(jù)———地址:傳感器模塊編號;數(shù)據(jù):無。(1)讀取成功返回格式如下:地址:被測傳感器模塊的地址。數(shù)據(jù):電壓(3字節(jié)ASII碼,精確到0.1V,例如3.2V)。(1)讀取失敗返回格式如下:3)TBETBE:BEEP測試。T
5、BE具體格式如下:需要加入的地址和數(shù)據(jù)———地址:傳感器模塊地址;數(shù)據(jù):1為發(fā)聲,0為不發(fā)聲。(1)測試成功返回格式如下:地址:傳感器模塊地址。數(shù)據(jù):OK。(1)測試失敗返回格式如下:例如:如果想讀取網(wǎng)絡(luò)內(nèi)某個節(jié)點的WD傳感器,只需往網(wǎng)關(guān)發(fā)送一幀命令即可,網(wǎng)關(guān)會通過無線訪問該節(jié)點,然后節(jié)點從無線返回該節(jié)點溫度值給網(wǎng)關(guān),網(wǎng)關(guān)再從串口以同樣的數(shù)據(jù)格式返回此節(jié)點的溫度值。具體格式如下:①首先PC從串口發(fā)送此命令到網(wǎng)關(guān):②如果網(wǎng)關(guān)讀取成功,則將多串口返回數(shù)據(jù):以上表示讀取物理地址為00000001(ASCII碼)的節(jié)點的溫度傳感器,節(jié)點返回的溫度值為25℃。(1)如果讀取失敗,則返回格
6、式如下: