[解析]ZigBee性能及学习方法

性能

      1.数据速率比较低,在2.4GHz的频段只有250Kb/S,而且这只是链路上的速率,除掉信道竞争应答和重传等消耗,真正能被应用所利用的速率可能不足100Kb/s,并且余下的速率可能要被邻近多个节点和同一个节点的多个应用所瓜分,因此不适合做视频之类事情。
适合的应用领域——传感和控制

      2.在可靠性方面,ZigBee有很多方面进行保证。物理层采用了扩频技术,能够在一定程度上抵抗干扰,MAC应用层(APS部分)有应答重传功能。MAC层的CSMA机制使节点发送前先监听信道,可以起到避开干扰的作用。当ZigBee网络受到外界干扰,无法正常工作时,整个网络可以动态的切换到另一个工作信道上。

      3.时延由于ZigBee采用随机接入MAC层,且不支持时分复用的信道接入方式,因此不能很好的支持一些实时的业务。

      4.能耗特性 能耗特性是ZigBee的一个技术优势。通常ZigBee节点所承载的应用数据速率都比较低。在不需要通信时,节点可以进入很低功耗的休眠状态,此时能耗可能只有正常工作状态下的千分之一。由于一般情况下,休眠时间占总运行时间的大部分,有时正常工作的时间还不到百分之一,因此达到很高的节能效果。

      5.组网和路由性——网络层特性
     
      ZigBee大规模的组网能力——每个网络65000个节点,而每个蓝牙网络只有8个节点。

      因为ZigBee底层采用了直扩技术,如果采用非信标模式,网络可以扩展得很大,因为不需同步而且节点加入网络和重新加入网络的过程很快,一般可以做到1秒以内,甚至更快。蓝牙通常需要3秒。在路由方面,ZigBee支持可靠性很高的网状网的路由,所以可以布置范围很广的网络,并支持多播和广播特性,能够给丰富的应用带来有力的支持。

学习方法

      ZigBee作为一种个人网络的短程无线通信协议,已经日益为大家所熟知,它最大的特点就是低功耗、可组网,特别是带有路由的可组网功能,理论上可以使ZigBee覆盖的通讯面积无限扩展。相对蓝牙,红外的点对点通信,和WLAN的星状通信,ZigBee的协议就要复杂得多了。那么我们究竟是该选择ZigBee芯片去自己开发协议呢,还是直接选择已经带有了ZigBee协议的模块直接应用呢?

      玩转芯片的代价:开发时间周期长;人力和技术储备雄厚。

      市场上的ZigBee射频收发“芯片”实际上只是一个符合物理层标准的芯片,它只负责调制解调无线通讯信号,所以必须结合单片机才能完成对数据的接收发送和协议的实现。而单芯片也只是把射频部分和单片机部分集成在了一起,不需要额外的一个单片机,它的好处是节约成本,简化设计电路,但这种单芯片也并没有包含ZigBee协议在里面。

      这两种情况都需要用户根据单片机的结构和寄存器的设置并参照物理层部分的IEEE802.15.4协议和网络层部分的ZigBee协议自己去开发所有的软件部分。这个工程量对于做实际应用的用户来讲是很大的,开发周期以及测试周期都是非常之长的,更由于是无线通讯产品,它的产品质量也不是很容易得到保障的。

      即便许多ZigBee公司都提供自家芯片的ZigBee协议栈,但这只是提供一种协议的功能,而并不代表它具有真正的可应用性和可操作性,因为它并没有提供一个对用户的数据接口的详细描述,用户怎么才能不顾及芯片内部的程序而很简单轻松的就把自己的数据通过芯片发送出去,甚至组成路由获取传送更远方产品的数据,这都不是只包括了ZigBee协议栈的芯片就能简单实现的,ZigBee协议栈只是说它有了协议的所有组成部分,而究竟怎么把每部分结合并有条不紊的运转起来,并怎么实现和用户自己数据的协议通讯?一个只包含了ZigBee协议栈的芯片是不可能实现得了的。

      直白点讲,这些需要用户根据完整的协议代码和自己上层的通讯协议,再去一点一点每个部分的去修改协议栈中的内容,才能完成简单的数据无线收发,而要完成一条路由,甚至整个网络的通信,那调试测试的时间则会需要更长的。那么对于做实际应用的用户来讲将会大大耽误开发周期,并且这种具有复杂协议的无线产品会具有更多的不定因素,更易受到外界环境条件的影响,在实际开发中遇到的问题将会五花八门,难于应付。

      玩转模块的代价:省去ZigBee开发周期,能在推广项目上抢到先机。

      F8913D ZigBee模块是已经包含了所有外围电路和完整协议栈的能够立即投入使用的产品,已经经过了厂家的优化设计,和老化测试,有一定的质量保证。优秀可靠的ZigBee应用“模块”具有在硬件上设计紧凑,体积小,贴片式焊盘设计,可以内置Chip或外置SMA天线,通讯距离从100米到2500米不等,还包含了ADC,DAC,比较器,多个IO,I2C等接口和用户的产品相对接。软件上包含了完整的ZigBee协议栈,并有自己的PC上的配置工具,采用串口和用户产品进行通讯,并可以对模块进行发射功率,信道等网络拓扑参数的配置,使用起来简单快捷。

      透传模块的好处在于用户不需要考虑模块中程序如何运行的,用户只需要将自己的数据通过串口发送到模块里,然后模块会自动把数据用无线发送出去,并按照预先配置好的网络结构,和网络中的目的地址节点进行收发通讯了,接收模块会进行数据校验,如数据无误即通过串口送出。不过大多数用户应用ZigBee技术,都会有自己的数据处理方式,以致每个节点设备都会拥有自己的CPU以便对数据进行处理,所以仍可以把模块当成一种已经集成射频、协议和程序的“芯片”。