当应用开发者选用一种无线通信方式时,为啥不用WiFi、Lora、蓝牙,而用ZigBee呢? 首先,设备容量PK: WiFi,不适合多设备,路由器为了满足多设备而提升性能的成本过高,蓝牙的话要掏出BLE MESH,比较新,显得不够稳重的; Lora 容量很大,ZigBee 理论容量大,考虑实际表现大概在20~50个左右比较好。 然后剩下的选手传输性能PK: Lora,传输距离长,km级别,相应的带宽和即时性显得不足; ZigBee,传输距离一般,百米级别,带宽20 至 250 kbps,即时性一般。 因此,ZigBee的用武之地就在于:设备量较多,传输信息较少,有功耗敏感的系统应用场景。
ZigBee是这样应用的: 多个设备的通信模块可以加入同一个ZigBee的无线网络,而第一个设备将承担构建网络的任务,并作为网络的控制中枢,因此通常将该节点的设备扩展成网关,接入因特网以实现更多操作方式,如APP端。 组网完成,剩下就是通信,作为21世纪人,通信的行为已刻入本能,所以要问通信最需要什么,那当然是路由(器)。本着能者多为的基本原则,每个节点,只要是电源供电,都可以承担路由的角色,那么路由要干的是什么?就是每次在其它节点向你发起“敢问路在何方”时,回它一个“路在脚下”即可。 好吧,专业一点,就是从存储的路由表里看看,有没有你去的目的地,有的话就告诉你下一站的地址,没有的话还可以帮你找,毕竟是个角,找地址它们是专业的。而这一套路由表,是按照路由算法,进行维护——从创建到失效,且保证你的通信路径是最短的。