為使無人機(jī)編隊個體間實現(xiàn)組網(wǎng)通信,需要選用合適的通信模塊構(gòu)建通信網(wǎng)絡(luò)。經(jīng)過調(diào)研發(fā)現(xiàn),XBee系列的模塊或許可以更好的解決機(jī)間組網(wǎng)通信問題。
一、XBee PRO 900HP模塊的基本性能參數(shù)
通過查閱相關(guān)技術(shù)手冊,XBee PRO 900HP 模塊的部分性能如下圖所示:

圖1 900HP相關(guān)性能參數(shù)
900HP模塊在室內(nèi)305m內(nèi)或室外6.5km內(nèi)的通信速率都能達(dá)到200Kbps。
對于組網(wǎng)模式,XBee PRO 900HP 模塊可實現(xiàn)DigiMesh組網(wǎng),如下圖所示:

圖2 900HP組網(wǎng)模式
二、利用軟件XTCU配置XBee PRO 900HP 模塊
配置Xbee模塊需要用到XTCU軟件,該軟件界面如下圖所示:

圖3 XTCU軟件
利用軟件XTCU對XBee進(jìn)行參數(shù)配置主要參考其用戶手冊。一般需要配置的參數(shù)有:
1、網(wǎng)絡(luò)ID:相當(dāng)于標(biāo)識當(dāng)前Xbee模塊屬于哪個通信網(wǎng)絡(luò)中;
2、波特率:每個模塊必須配置相同的波特率(可以理解為通信速率),且該波特率還要與飛控的波特率一致,這樣才能確保正常通信;
3、工作模式:XBee模塊間的通信有透傳模式和API模式兩種。
與ZigBee模塊類似,XBee模塊組網(wǎng)時,也需要網(wǎng)絡(luò)中有且僅有一個節(jié)點(diǎn)模塊作為協(xié)調(diào)器(C),其余節(jié)點(diǎn)作為路由器(router)。我們可以先配置好網(wǎng)絡(luò)中的一個協(xié)調(diào)器節(jié)點(diǎn)和路由節(jié)點(diǎn),然后依次添加新的路由節(jié)點(diǎn)到網(wǎng)絡(luò)中。下面給出具體步驟:
1、首先連接好兩個XBee PRO 900HP模塊(一個協(xié)調(diào)器和一個路由器)。需要注意的是,在購買該模塊時,要同時采購具有USB接口的底板,這樣才能方便的連接到電腦上;此外電腦需要安裝CH340的驅(qū)動,這樣連接上模塊(可以利用360驅(qū)動自動搜索安裝)。
2、打開XTCU軟件,添加XBee設(shè)備。如下圖所示,點(diǎn)擊搜索按鈕:

圖4 打開XTCU軟件搜索端口
選中端口,點(diǎn)擊Next:

圖5 選中端口
點(diǎn)擊finish:

圖6 點(diǎn)擊finish
等待檢測:

圖7 等待檢測
添加設(shè)備:

圖8 添加設(shè)備
配置參數(shù)。點(diǎn)擊第一個設(shè)備,然后點(diǎn)擊參數(shù)配置窗口:

圖9 選擇配置窗口
修改網(wǎng)絡(luò)ID:

圖10 修改網(wǎng)絡(luò)ID
圖中的紅色標(biāo)記的第2步是寫入修改的參數(shù)。此外網(wǎng)絡(luò)ID可以自己隨便設(shè)置,不一定是圖中的1234。
利用同樣的方法修改網(wǎng)絡(luò)類型為協(xié)調(diào)器:

圖11 修改模塊類型
修改波特率:

圖12 修改波特率
將網(wǎng)絡(luò)改成API模式:

圖13 選擇API組網(wǎng)模式
以上就將模塊配置成協(xié)調(diào)器了。我們可以導(dǎo)出profile文件,然后用于配置路由器時,只需修改圖11步驟的模塊類型就行了。導(dǎo)出profile文件的方法如下圖所示:

圖14 導(dǎo)出profile文件
配置路由器時點(diǎn)擊左欄第二個模塊,然后點(diǎn)擊右欄那個Profile人像按鈕,選擇第一個Apply configuration profile,找到之前保存的參數(shù)配置文件就能和協(xié)調(diào)器配置一樣的參數(shù),但注意需要按圖11的方式將模塊類型改為路由器。

圖15 改路由端口
下面測試數(shù)據(jù)傳輸功能:
選擇控制臺,連接模塊(協(xié)調(diào)器和路由器都要通過此操作進(jìn)行連接):

圖16 選中控制臺
點(diǎn)擊“+”號按鈕,創(chuàng)建適合API格式的數(shù)據(jù)包:

圖17 添加待發(fā)送的數(shù)據(jù)包
生成符合格式要求的的數(shù)據(jù)包:

圖18 生成符合格式要求的的數(shù)據(jù)包
注意:圖中第二個紅色箭頭指示的"FFFF"是表示廣播該數(shù)據(jù)包,如果要指定某個節(jié)點(diǎn)發(fā)送,需要該對方節(jié)點(diǎn)的mac地址,mac地址可以從左欄模塊信息中看到:

圖19 模塊mac地址
圖18所述步驟點(diǎn)擊OK,然后就生成了發(fā)送字符串Hellow的數(shù)據(jù)包,之后就可以點(diǎn)擊發(fā)送:

圖20 發(fā)送數(shù)據(jù)包
接收端可查看數(shù)據(jù):

圖21 接收端查看數(shù)據(jù)
三、數(shù)據(jù)通信協(xié)議分析
從圖20可以看出,模塊間的通信協(xié)議發(fā)送包格式為:
數(shù)據(jù)包頭(0x7E)+字長(2個字節(jié))+發(fā)送協(xié)議類型(0x10)+發(fā)送協(xié)議ID(0x01)目標(biāo)64位地址(8個字節(jié),即mac地址)+目標(biāo)16位地址(FFFE)+廣播半徑(00)+選項(00)+數(shù)據(jù)(N個字節(jié))+校驗碼(1個字節(jié))
對于字長,實際上計數(shù)的是排在它之后所有數(shù)據(jù)字節(jié)之和(校驗碼除外),也就是從協(xié)議類型(0x10)到校驗碼之前的長度,假設(shè)實際負(fù)載的數(shù)據(jù)是N個字節(jié)的話,那么字長計數(shù)值就為:1+1+8+2+1+1+N=N+14;
接收協(xié)議與發(fā)送協(xié)議基本相同,只是目標(biāo)地址變成了發(fā)送源地址。即:
數(shù)據(jù)包頭(0x7E)+字長(2個字節(jié))+接收協(xié)議類型(0x90)+來源64位地址(8個字節(jié),即mac地址)+來源16位地址(FFFE)+選項(0xC1)+數(shù)據(jù)(N個字節(jié))+校驗碼(1個字節(jié))
注意,接收的字長和發(fā)送的字長并不一致,前者比后者少2個字節(jié)(少了發(fā)送協(xié)議ID和廣播半徑),為N+12。比如某次發(fā)送信息要求從A發(fā)給B,二者mac地址分別為:
A的mac地址為:00 13 A2 00 41 08 01 0B
B的mac地址為:00 13 A2 00 41 08 01 12
要發(fā)送的數(shù)據(jù)包內(nèi)容為:
hellpw
其ascll碼轉(zhuǎn)化為16進(jìn)制為:
68 65 6C 6C 70 77
則發(fā)送字長為6+14=20=0x14,發(fā)送數(shù)據(jù)包為:
7E 00 14 10 01 00 13 A2 00 41 08 01 12 FF FE 00 00 68 65 6C 6C 70 77 54
接收字長為6+12=18,其數(shù)據(jù)包為:
7E 00 12 90 00 13 A2 00 41 08 01 0B FF FE C1 68 65 6C 6C 70 77 1B
校驗碼的計算方式如下:
(1)添加數(shù)據(jù)包的所有字節(jié),但數(shù)據(jù)包頭0x7E和長度(第二個和第三個字節(jié))除外。
(2)根據(jù)結(jié)果,僅保留最低的8位。
(3)0xFF減去該數(shù)量.
對于上述接收包計算過程即為:
數(shù)據(jù)累加:90 + 00 + 13 + A2 + 00 + 41 + 08 + 01 + 0B + FF + FE + C1 + 68 + 65 + 6C + 6C + 70 + 77 =6E4
保留后八位,即:E4
校驗碼=FF-E4=1B
最后,需要指出,發(fā)送端的Xbee模塊若成功發(fā)送數(shù)據(jù)還會收到一個反饋,其格式為
數(shù)據(jù)包頭(0x7E)+字長(2個字節(jié))+協(xié)議類型(0x88)+16位地址(FFFE)+ 失效重發(fā)次數(shù)(1個字節(jié))+傳輸狀態(tài)(1個字節(jié),成功為00)+ discovery status(1個字節(jié),暫時不清楚用法)+ 校驗碼(1個字節(jié))
如一次成功的發(fā)送得到的反饋可能如下:
7E 00 07 8B 01 FF FE 00 00 00 76
審核編輯:湯梓紅
-
Digi
+關(guān)注
關(guān)注
0文章
17瀏覽量
9790 -
API
+關(guān)注
關(guān)注
2文章
2376瀏覽量
66806 -
無人機(jī)
+關(guān)注
關(guān)注
236文章
11306瀏覽量
195773 -
組網(wǎng)通信
+關(guān)注
關(guān)注
0文章
9瀏覽量
6194
原文標(biāo)題:淺談Digi 900HP模塊的API模式組網(wǎng)配置
文章出處:【微信號:雨飛工作室,微信公眾號:雨飛工作室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
淺談Digi 900HP模塊的運(yùn)作方式
Digi-Key與CalcuQuote合作提供報價API集成支持,為客戶提供更簡便途徑實現(xiàn)30天定價保證
Digi XBee LR模塊的主要特點(diǎn)
談?wù)凱900和P840數(shù)傳電臺的參數(shù)配置
怎么修復(fù)900HP模塊常見問題及如何解決
XBee-PRO 900HP異步周期休眠模式介紹
看圖細(xì)說Digi XBee模塊型號
Digi 900HP模塊API幀實踐操作過程
Digi XBee-PRO 900HP模塊常見故障排除
淺談Digi XBee3模塊如何設(shè)置“自定義默認(rèn)值”
AT指令XBP9B-DM和XBP9B-DP固件的區(qū)別是什么
Digi XBee3 ZigBee組網(wǎng)和通信測試步驟
淺談Digi 900HP模塊的API模式組網(wǎng)配置
評論