本片文章給用戶介紹數據在收發過程中,延時性和丟包的問題。
在默認的情況下,ZIGBEE模塊是數據透傳模式。即只要不是以FC,FD,FE開頭的數據包,通過協調器發出后,網絡中的其他所有模塊都接收到,通過網絡中的節點或者終端發出后,數據將默認的傳輸到協調器。也就是協調器發送的是廣播數據包,而路由器發送的不是廣播數據包。在網絡中,有一個廣播表,這個廣播表可以存放21個廣播數據包。每個數據包被保留的時間是2秒。2秒時間到,數據包將從廣播表中刪除,釋放出其在表中的位置。當2秒時間內數據包超過21條,多出的數據包將被丟棄,直接造成丟包。所以,當用戶使用協調器給其下設備發送透傳數據時,每個數據包的時間間隔要大于2000ms(2秒)/21(個數據包)≈95ms(毫秒)。為了數據的穩定,我們建議發送時間大于110毫秒。路由器設備向協調器發送數據時,這個時間可以短。1級路由深度和80個字節數據包的情況下,兩個數據包之間時間間隔35毫秒即可完成。(距離較遠,路由深度較深,場地復雜的需要實際測試其數據收發效果)。