ZigBee作为一种个人网络的短程无线通信协议,已经日益为大家所熟知,它最大的特点就是低功耗、可组网,特别是带有路由的可组网功能,理论上可以使ZigBee覆盖的通讯面积无限扩展。相对蓝牙,红外的点对点通信,和WLAN的星状通信,ZigBee的协议就要复杂得多了。那么我们究竟是该选择ZigBee芯片去自己开发协议呢,还是直接选择已经带有了ZigBee协议的模块直接应用呢?
玩转芯片的代价:开发时间周期长;人力和技术储备雄厚。 目前市场上的ZigBee射频收发“芯片”实际上只是一个符合物理层标准的芯片,它只负责调制解调无线通讯信号,所以必须结合单片机才能完成对数据的接收发送和协议的实现。而单芯片也只是把射频部分和单片机部分集成在了一起,不需要额外的一个单片机,它的好处是节约成本,简化设计电路,但这种单芯片也并没有包含ZigBee协议在里面。 这两种情况都需要用户根据单片机的结构和寄存器的设置并参照物理层部分的IEEE802.15.4协议和网络层部分的ZigBee协议自己去开发所有的软件部分。这个工程量对于做实际应用的用户来讲是很大的,开发周期以及测试周期都是非常之长的,更由于是无线通讯产品,它的产品质量也不是很容易得到保障的。 即便现在许多ZigBee公司都提供自家芯片的ZigBee协议栈,但这只是提供一种协议的功能,而并不代表它具有真正的可应用性和可操作性,因为它并没有提供一个对用户的数据接口的详细描述,用户怎么才能不顾及芯片内部的程序而很简单轻松的就把自己的数据通过芯片发送出去,甚至组成路由获取传送更远方产品的数据,这都不是只包括了ZigBee协议栈的芯片就能简单实现的,ZigBee协议栈只是说它有了协议的所有组成部分,而究竟怎么把每部分结合并有条不紊的运转起来,并怎么实现和用户自己数据的协议通讯?一个只包含了ZigBee协议栈的芯片是不可能实现得了的。 直白点讲,这些需要用户根据完整的协议代码和自己上层的通讯协议,再去一点一点每个部分的去修改协议栈中的内容,才能完成简单的数据无线收发,而要完成一条路由,甚至整个网络的通信,那调试测试的时间则会需要更长的。那么对于做实际应用的用户来讲将会大大耽误开发周期,并且这种具有复杂协议的无线产品会具有更多的不定因素,更易受到外界环境条件的影响,在实际开发中遇到的问题将会五花八门,难于应付.。 玩转模块的代价:省去ZigBee开发周期,能在推广项目上抢到先机。 ZigBee模块是已经包含了所有外围电路和完整协议栈的能够立即投入使用的产品,已经经过了厂家的优化设计,和老化测试,有一定的质量保证。优秀可靠的zigBee应用“模块”具有在硬件上设计紧凑,体积小,贴片式焊盘设计,可以内置Chip或外置SMA天线,通讯距离从100米到1200米不等,还包含了ADC,DAC,比较器,多个IO,I2C等接口和用户的产品相对接。软件上包含了完整的ZigBee协议栈,并有自己的PC上的配置工具,采用串口和用户产品进行通讯,并可以对模块进行发射功率,信道等网络拓扑参数的配置,使用起来简单快捷。 透传模块的好处在于用户不需要考虑模块中程序如何运行的,用户只需要将自己的数据通过串口发送到模块里,然后模块会自动把数据用无线发送出去,并按照预先配置好的网络结构,和网络中的目的地址节点进行收发通讯了,接收模块会进行数据校验,如数据无误即通过串口送出。不过目前来说,大多数用户应用Zigbee技术,都会有自己的数据处理方式,以致每个节点设备都会拥有自己的CPU以便对数据进行处理,所以仍可以把模块当成一种已经集成射频、协议和程序的“芯片”。国内外各个ZigBee芯片厂商及模块厂商产品比对各厂商及芯片型号 | Jennic (JN5148) | TI(Chipcon) (CC2530) | Freescal (MC13192) | EMBER (EM260) | ATMEL (LINK-23X) | ATMEL (Link-212) |
工作频率(Hz) | 2.4~2.485G | 2.4~2.485G | 2.4~2.485G | 2.4~2.485G | 2.4~2.485G | 779~928M |
可用频段数(个) | 16 | 16 | 16 | 16 | 16 | 4 |
无线速率(Kbit/s) | 250 | 250 | 250 | 250 | 250~2000 | 20~1000 |
发射功率(dBm) | +2.5 | +4.5 | +3.6 | +3 | +3 | +10 |
接收灵敏度(dBm) | -97 | -97 | -92 | -97 | -101 | -110 |
最大发射电流(mA) | 15 | 35 | 35 | 37.5 | 21 | 30 |
最大接收电流(mA) | 18 | 24 | 42 | 41.5 | 20 | 14 |
休眠电流(uA) | 0.2 | 1 | 1 | 1 | 0.28 | 0.5 |
工作电压范围(V) | 2.0~3.6 | 2.0~3.6 | 2.0~3.4 | 2.1~3.6 | 1.8~3.6 | 1.8~3.6 |
硬件自动CSMA-CA | 有 | 有 | 无 | 无 | 有 | 有 |
硬件自动帧重发 | 有 | 无 | 无 | 无 | 有 | 有 |
硬件自动帧确认 | 有 | 无 | 无 | 无 | 有 | 有 |
硬件自动地址过渡 | 有 | 有 | 无 | 无 | 有 | 有 |
硬件FCS计算功能 | 有 | 有 | 有 | 有 | 有 | 有 |
硬件清除无线通道确认 | 有 | 有 | 无 | 无 | 有 | 有 |
硬件RSSI计算功能 | 有 | 有 | 有 | 有 | 有 | 有 |
硬件AES/DES | 有 | 有 | | | 有 | 有 |
硬件开放度 | 不开放 | 部分开放 | 部分开放 | 部分开放 | 全开放 | 全开放 |
各大公司ZigBee模块 | DIGI | 赫立讯 | 上海数传 | 上海顺舟 | 深圳鼎泰克 | 北京云天创 | |||
| XBee模块 | IP-LINK 1223 | IP-LINK 1324 | DT8836AA | DT8836BB | SZ05 | DRF1601 | ATZGB-780F1 | ATZGB-2400F1 |
工作频率(Hz) | 2.4G | 2.4G | 454~472M | 2.4G | 2.4G | 2.4G | 2.4G | 779~ 936M | 2.4G |
可用频段数(个) | 16 | 16 | 不详 | 16 | 16 | 16 | 16 | 4 | 16 |
无线速率(Kbps) | 250 | 250 | 2.4~256 | 1000 | 1000 | 250 | 250 | 250 | 20~1000 |
发射功率(dBm) | 0 | 0 | 20 | 不详 | 不详 | 25 | 4 | 10 | 3 |
接收灵敏度(dBm) | -92 | -95 | -110 | 不详 | 不详 | -94 | -96 | -110 | -101 |
发射电流(mA) | 45 | 29 | <94 | 35 | 200 | <70 | 34 | 29 | 21 |
接收电流(mA) | 50 | 27 | 25 | 不详 | 不详 | <55 | 25 | 19 | 20 |
休眠电流(uA) | <10 | <4 | <1 | 5 | 10 | 30 | 不详 | 0.5 | 0.3 |
工作电压范围(V) | 2.8~3.4 | 1.8~3.6 | 1.8~3.6 | 1.8~3.6 | 3.3~5.5 | 5 | 5~12 | 1.8~3.6 | 1.8~3.6 |
工作温度范围(℃) | -40~80 | -20~70 | -40~80 | -40~80 | -40~80 | -40~80 | -40~80 | -40~80 | -40~80 |
无PA室内通信距离(m) | 30 | 不详 | 不详 | 不详 | 不详 | 不详 | 100 | 100 | 100 |
无PA室外通信距离(m) | 100 | 100 | 1500 | 100 | 100 | 2000 | 400 | 700 | 350 |
感谢作者