ZigBee作为一种个人网络的短程无线通信协议,已经日益为大家所熟知,它最大的特点就是低功耗,和可组网。对于紧张的能源需求,zigBee有它自己的优势,用无线替代有线,可以节约电缆成本,而低功耗又可以节约电力的需求,这都符合当今的潮流趋势。带有路由的可组网功能可以使它覆盖的通讯面积更大,相对于蓝牙,红外的点对点通信,和WLAN的星状通信,ZigBee RS232;ZigBee RS485; ZigBee Ethernet各种衍生产品可以实现网络内的任何两个点之间的通信传输,这就使它具有更广的应用范围,比如在工业控制,无线传感器监测,人员无线定位等地方都有很好的实际应用。
但是相对其它点对点的协议,ZigBee的协议就要复杂得多了。那么我们开发ZigBee智能家居产品时究竟是该选择ZigBee芯片去自己开发协议呢,还是直接选择已经带有了ZigBee协议的模块直接应用呢?
玩转“模块”的代价:一般2-4周内开发出自己的产品,能在推广项目上抢到先机
ZigBee“模块”是已经包含了所有外围电路和完整协议栈的能够立即投入使用的产品,已经经过了厂家的优化设计,和老化测试,具有严格的质量保证。
根据笔者自己的多年开发应用经验(个人从事嵌入式产品开发多年,为ZigBee在电力抄表/人员安全定位和温度/湿度/空气传感器网络领域的成功开发做了点小贡献,对比了多家芯片和模块后偶有心得,见不得ZigBee同道中人走太多弯路,特别奉献!),优秀可靠的zigBee应用“模块”具有在硬件上设计紧凑,体积小,贴片式焊盘设计,可以内置Chip或外置SMA天线,通讯距离从100米到1200米不等,还包含了ADC,DAC,比较器,多个IO,I2C等接口和用户的产品相对接。
软件上包含了完整的ZigBee协议栈,并有自己的PC上的配置工具,采用串口和用户产品进行通讯,并可以通过无线对模块进行发射功率,信道等网络拓扑参数的配置,使用起来简单快捷。
特别再次强调不说不快的是,zigBee“模块”产品性能的成功与否很大程度大依靠各个ZigBee产品厂商的zigBee协议栈的开发能力。建议采购模块时一定顺便问一句:产品里面的zigBee协议栈是否成熟且为自主开发?目前好的ZigBee协议栈Mesh组网能力应该稳定可靠,最好的路由跳数有做到20~~40跳的。
目前随着火热的zigBee技术的风起云涌,很多从事ZigBee模块和终端产品经营的公司要么是从芯片开发出来的非组网能力的简易产品,要么就是从第三方引进一个相对增加了3–5个跳数、简陋网络能力的zigBee协议栈定制出的zigbee Rs232、zigbee Rs485应用模块。
用户不需要考虑模块中程序如何运行的,只需要按照手册上提供好的包格式,主要包括数据内容,目的地址这两点,就可以把自己的数据通过串口发送到模块里,然后模块会自动把数据通过无线发送出去,并按照预先配置好的路由网络结构,和网络中的目的地址节点进行收发通讯了.而无线产品普遍都存在需要匹配设计合适,和成品良率低的情况,如果用户想把无线部分的电路直接集成到自己的最终产品中,万一无线部分出现损坏,那么将会使整个产品都无法使用,造成浪费。
总结发言
通过以上的对比分析,我们不难得出采用“模块”要比购买“芯片”然后自己设计电路更有优势:采用模块可以减少开发周期;并通过置换有问题模块的方法来避免最终产品的损坏;不需要考虑过多的ZigBee协议的具体实现方法;只需要按照手册上预先提供的串口通讯和配置方法,就可以完成无线的通讯了。
以上心得,权作一个ZigBee模块“粉丝”的中肯发言,抛砖引玉吧!!笔者相信仁者见仁,智者见智,欢迎大家共同探讨。