點擊上方“嵌入式從0到1”,選擇“置頂/星標公眾號”
干貨福利,第一時間送達!
測試前準備
預定義模塊參數
具體配置參數預定義如下:
模塊ID | 地址 | 信道 | 網絡ID | 備注 |
---|---|---|---|---|
1 | 0x0001 | 0x0F | 0x1234 | 主節點,與PC連接 |
2 | 0x0002 | 0x0F | 0x1234 | |
3 | 0x0003 | 0x0F | 0x1234 | |
4 | 0x0004 | 0x0F | 0x1234 |
模塊串口通信的波特率為:115200。

測試全家福

一共使用四個DL-LN33 ZigBee模塊,四個USB轉串口模塊。
地址0x0001的模塊通過USB轉TTL模塊與PC的USB口相連,兩個模塊使用四個引腳相連;
DL-LN33 ZigBee模塊 | USB轉TTL串口模塊 |
---|---|
Rx | TXD |
Tx | RXD |
VCC | 3V3 |
GND | GND |
地址0x0002、0x0003、0x0004三個模塊只需要通過USB轉TTL模塊提供3.3V電源和GND即可。
除地址0x0001以外的三個USB轉TTL模塊的USB口可以通過電腦的USB口、手機充電頭、充電寶等方式供電。
提示:
為了記憶方便,模塊設置完地址之后,可以在模塊上標記模塊的地址,方便區分。
上位機網絡拓撲軟件演示
1. 在DL-LN3X網絡拓撲顯示軟件,右下角選擇對應的串口號。

此過程串口監控中,可以看到上位機網絡拓撲軟件跟模塊進行了如下交互:

2. 點擊“Node-->Scan Loop”,軟件左側出現對應的幾個節點,稍等片刻之后右側將出現網絡拓撲結構,地址列表中背景為綠色的模塊,表示成功處于組網中。

掃描節點指令,實際通過串口發送的數據包如下:

3. 點亮模塊中的紅燈,測試模塊間通信是否正常。
點亮模塊上紅燈的方法:
點擊左側“發送”按鈕; 左鍵雙擊右側某一個節點的圖標; 右鍵點擊某一個節點的圖標,彈出菜單中單擊“Red On”。
DL-LN3X網絡拓撲顯示軟件中,點擊“指引”下面的“發送”按鈕,實際上是讓模塊上的紅燈點亮2S。
串口監控中可以看到實際發送的指令如下:

此指令即是點亮模塊上紅燈的測試指令。
點擊“測試”下面的“打開”按鈕,可以看到數據包的測試情況,具體發送的測試指令如下圖所示:

4. 查看模塊路由。
右鍵點擊某一個節點的圖標,單擊菜單中的“Show Route”。

連接質量測試
測試前提
地址0x0001的模塊與PC通過USB轉TTL串口相連;
地址0x0004的模塊上電;
地址0x0002和0x0003的模塊,未上電。
測試過程
端口 0x23 用于探測兩個模塊之間的雙向鏈路質量,鏈路質量為兩個模塊之間互相發包時,收到數據的信號強度的平均值,信號強度取決于兩個模塊之間的距離,以及有無遮擋物。如果已知兩個模塊之間沒有遮擋,這個值可以用來估計模塊之間的距離。
此端口可接收以下包:
連接質量采集命令:
數據 | 長度 | 意義 |
---|---|---|
采集目標地址 | 2 Byte | 采集 RSSI 的另一個模塊的地址,不可為 0x0000 和 0xFFFF |
下面是一個數據包的例子:
FE 06 80 23 01 00 04 00 FF
這個命令將會采集兩個模塊之間的 RSSI,其中一個模塊為收到此包的模塊,即地址為 0x0001,另一個模塊為 0x0004。即采集目標地址。如此,模塊 0x0001 會給模塊 0x0004 發送一個采集 RSSI 命令,模塊 0x0004 在收到此命令后返回一個 RSSI 數值,模塊 0x0001 收到此包后,將綜合兩個數據,返回此包:
FE 07 23 80 01 00 04 00 2B FF

通過解析返回的數據包,可以求得網絡的連接質量。
返回數據含義
數據 | 長度 | 意義 |
---|---|---|
采集目標地址 | 2Byte | 采集 RSSI 的另一個模塊的地址,不可為 0x0000 和 0xFFFF |
連接質量參數 | 1Byte | 有符號數。表示兩個節點之間的連接質量,數值越高表示兩個節點間的連接質量越好。如果此數值為-128(0x80)說明節點沒有收到對方返回的包,即數據。 |
向一個沒有在網的模塊地址發送測試指令:
FE 06 80 23 01 00 02 00 FF

采集鏈路質量的返回值如果是 0x80(十進制的128) 說明采集信息發送失敗了,這有可能是兩個節點距離太遠,也有可能是因為當時網絡的通信非常頻繁,因此采集信息無法發出。
信號穿墻能力測試
情景1
四個ZigBee模塊放置位置如下:

0x0001 | 0x0002 | 0x0003 | 0x0004 | |
---|---|---|---|---|
位置 | 次臥 | 次臥 | 客廳 | 主臥 |
主臥關門、次臥關門,地址0x0001的模塊與0x0004的模塊通信測試一切正常。

情景2

0x0001 | 0x0002 | 0x0003 | 0x0004 | |
---|---|---|---|---|
位置 | 次臥 | 次臥 | 客廳 | 走廊 |

入戶門關門、次臥關門,地址0x0001的模塊與0x0004的模塊通信測試一切正常。
由上面的拓撲結構可以看出,地址為0x0003的模塊在其中起到了一個橋梁作用,我將地址為0x0002、0x0003的模塊斷電后測試,發現此時地址為0x0004的模塊已經找不到了。

重啟上位機網絡拓撲軟件,發現已經找不到地址0x0004的模塊了。

情景3
將地址0x0001的模塊挪到客廳,發現兩個模塊可以正常組網通信。

小結
由上測試可知,DL-LN33 ZigBee模塊穿透入戶門沒有問題,屋內各個臥室和客廳各放置一個模塊,基本可以做到室內通信沒有死角。
參考閱讀
DL-LN33 ZigBee模塊指令分析/地址和組網信息的修改
- END -