DL-LN3X ZigBee模塊上位機(jī)網(wǎng)絡(luò)拓?fù)滠浖菔炯靶盘枏?qiáng)度測試
點擊上方“嵌入式從0到1”,選擇“置頂/星標(biāo)公眾號”
干貨福利,第一時間送達(dá)!
測試前準(zhǔn)備
預(yù)定義模塊參數(shù)
具體配置參數(shù)預(yù)定義如下:
模塊ID | 地址 | 信道 | 網(wǎng)絡(luò)ID | 備注 |
---|---|---|---|---|
1 | 0x0001 | 0x0F | 0x1234 | 主節(jié)點,與PC連接 |
2 | 0x0002 | 0x0F | 0x1234 | |
3 | 0x0003 | 0x0F | 0x1234 | |
4 | 0x0004 | 0x0F | 0x1234 |
模塊串口通信的波特率為:115200。
測試全家福
一共使用四個DL-LN33 ZigBee模塊,四個USB轉(zhuǎn)串口模塊。
地址0x0001的模塊通過USB轉(zhuǎn)TTL模塊與PC的USB口相連,兩個模塊使用四個引腳相連;
DL-LN33 ZigBee模塊 | USB轉(zhuǎn)TTL串口模塊 |
---|---|
Rx | TXD |
Tx | RXD |
VCC | 3V3 |
GND | GND |
地址0x0002、0x0003、0x0004三個模塊只需要通過USB轉(zhuǎn)TTL模塊提供3.3V電源和GND即可。
除地址0x0001以外的三個USB轉(zhuǎn)TTL模塊的USB口可以通過電腦的USB口、手機(jī)充電頭、充電寶等方式供電。
提示:
為了記憶方便,模塊設(shè)置完地址之后,可以在模塊上標(biāo)記模塊的地址,方便區(qū)分。
上位機(jī)網(wǎng)絡(luò)拓?fù)滠浖菔?span style="display: none;">
1. 在DL-LN3X網(wǎng)絡(luò)拓?fù)滹@示軟件,右下角選擇對應(yīng)的串口號。
此過程串口監(jiān)控中,可以看到上位機(jī)網(wǎng)絡(luò)拓?fù)滠浖K進(jìn)行了如下交互:
2. 點擊“Node-->Scan Loop”,軟件左側(cè)出現(xiàn)對應(yīng)的幾個節(jié)點,稍等片刻之后右側(cè)將出現(xiàn)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),地址列表中背景為綠色的模塊,表示成功處于組網(wǎng)中。
掃描節(jié)點指令,實際通過串口發(fā)送的數(shù)據(jù)包如下:
3. 點亮模塊中的紅燈,測試模塊間通信是否正常。
點亮模塊上紅燈的方法:
-
點擊左側(cè)“ 發(fā)送”按鈕; -
左鍵雙擊右側(cè) 某一個節(jié)點的圖標(biāo); -
右鍵點擊某一個節(jié)點的圖標(biāo),彈出菜單中單擊“ Red On”。
DL-LN3X網(wǎng)絡(luò)拓?fù)滹@示軟件中,點擊“指引”下面的“發(fā)送”按鈕,實際上是讓模塊上的紅燈點亮2S。
串口監(jiān)控中可以看到實際發(fā)送的指令如下:
此指令即是點亮模塊上紅燈的測試指令。
點擊“測試”下面的“打開”按鈕,可以看到數(shù)據(jù)包的測試情況,具體發(fā)送的測試指令如下圖所示:
4. 查看模塊路由。
右鍵點擊某一個節(jié)點的圖標(biāo),單擊菜單中的“Show Route”。
連接質(zhì)量測試
測試前提
地址0x0001的模塊與PC通過USB轉(zhuǎn)TTL串口相連;
地址0x0004的模塊上電;
地址0x0002和0x0003的模塊,未上電。
測試過程
端口 0x23 用于探測兩個模塊之間的雙向鏈路質(zhì)量,鏈路質(zhì)量為兩個模塊之間互相發(fā)包時,收到數(shù)據(jù)的信號強(qiáng)度的平均值,信號強(qiáng)度取決于兩個模塊之間的距離,以及有無遮擋物。如果已知兩個模塊之間沒有遮擋,這個值可以用來估計模塊之間的距離。
此端口可接收以下包:
連接質(zhì)量采集命令:
數(shù)據(jù) | 長度 | 意義 |
---|---|---|
采集目標(biāo)地址 | 2 Byte | 采集 RSSI 的另一個模塊的地址,不可為 0x0000 和 0xFFFF |
下面是一個數(shù)據(jù)包的例子:
FE 06 80 23 01 00?04 00 FF
這個命令將會采集兩個模塊之間的 RSSI,其中一個模塊為收到此包的模塊,即地址為 0x0001,另一個模塊為 0x0004。即采集目標(biāo)地址。如此,模塊 0x0001 會給模塊 0x0004 發(fā)送一個采集 RSSI 命令,模塊 0x0004 在收到此命令后返回一個 RSSI 數(shù)值,模塊 0x0001 收到此包后,將綜合兩個數(shù)據(jù),返回此包:
FE 07 23 80 01 00?04 00?2B FF
通過解析返回的數(shù)據(jù)包,可以求得網(wǎng)絡(luò)的連接質(zhì)量。
返回數(shù)據(jù)含義
數(shù)據(jù) | 長度 | 意義 |
---|---|---|
采集目標(biāo)地址 | 2Byte | 采集 RSSI 的另一個模塊的地址,不可為 0x0000 和 0xFFFF |
連接質(zhì)量參數(shù) | 1Byte | 有符號數(shù)。表示兩個節(jié)點之間的連接質(zhì)量,數(shù)值越高表示兩個節(jié)點間的連接質(zhì)量越好。如果此數(shù)值為-128(0x80)說明節(jié)點沒有收到對方返回的包,即數(shù)據(jù)。 |
向一個沒有在網(wǎng)的模塊地址發(fā)送測試指令:
FE 06 80 23 01 00 02 00 FF
采集鏈路質(zhì)量的返回值如果是 0x80(十進(jìn)制的128) 說明采集信息發(fā)送失敗了,這有可能是兩個節(jié)點距離太遠(yuǎn),也有可能是因為當(dāng)時網(wǎng)絡(luò)的通信非常頻繁,因此采集信息無法發(fā)出。
信號穿墻能力測試
情景1
四個ZigBee模塊放置位置如下:
0x0001 | 0x0002 | 0x0003 | 0x0004 | |
---|---|---|---|---|
位置 | 次臥 | 次臥 | 客廳 | 主臥 |
主臥關(guān)門、次臥關(guān)門,地址0x0001的模塊與0x0004的模塊通信測試一切正常。
情景2
0x0001 | 0x0002 | 0x0003 | 0x0004 | |
---|---|---|---|---|
位置 | 次臥 | 次臥 | 客廳 | 走廊 |
入戶門關(guān)門、次臥關(guān)門,地址0x0001的模塊與0x0004的模塊通信測試一切正常。
由上面的拓?fù)浣Y(jié)構(gòu)可以看出,地址為0x0003的模塊在其中起到了一個橋梁作用,我將地址為0x0002、0x0003的模塊斷電后測試,發(fā)現(xiàn)此時地址為0x0004的模塊已經(jīng)找不到了。
重啟上位機(jī)網(wǎng)絡(luò)拓?fù)滠浖?,發(fā)現(xiàn)已經(jīng)找不到地址0x0004的模塊了。
情景3
將地址0x0001的模塊挪到客廳,發(fā)現(xiàn)兩個模塊可以正常組網(wǎng)通信。
小結(jié)
由上測試可知,DL-LN33 ZigBee模塊穿透入戶門沒有問題,屋內(nèi)各個臥室和客廳各放置一個模塊,基本可以做到室內(nèi)通信沒有死角。
參考閱讀
2.4G ZigBee無線自組網(wǎng)mesh網(wǎng)絡(luò)模塊簡介
DL-LN33 ZigBee模塊指令分析/地址和組網(wǎng)信息的修改
- END -免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!