ZigBee无线技术入门的诀窍
作者:无线谷
www.wvrf.com
ZigBee无线技术百花争艳
ZigBee是一种崭新的,专注于低功耗、低成本、低复杂度、低速率的近程无线网络通信技术。是目前嵌入式应用的一个大热点。
Zigbee的特点主要有以下几个方面:
1)低功耗。在低耗电待机模式下,2节5号干电池可支持1个节点工作6~24个月,甚至更长。这是ZigBee的突出优势。相比较,蓝牙能工作数周、WiFi可工作数小时。
2)低成本。通过大幅简化协议(不到蓝牙的1/10),降低了对通信控制器的要求,按预测分析,以8051的8位微控制器测算,全功能的主节点需要32KB代码,子功能节点少至4KB代码,而且ZigBee免协议专利费。
3)低速率。ZigBee工作在250kbps的通讯速率,满足低速率传输数据的应用需求。
4)近距离。传输范围一般介于10~100m之间,在增加RF发射功率后,亦可增加到1~3km。这指的是相邻节点间的距离。如果通过路由和节点间通信的接力,传输距离将可以更远。
5)短时延。ZigBee的响应速度较快,一般从睡眠转入工作状态只需15ms,节点连接进入网络只需30ms,进一步节省了电能。相比较,蓝牙需要3~10 s、WiFi需要3 s。
6)高容量。ZigBee可采用星状、片状和网状网络结构,由一个主节点管理若干子节点,最多一个主节点可管理254个子节点;同时主节点还可由上一层网络节点管理,最多可组成65000个节点的大网。
7)高安全。ZigBee提供了三级安全模式,包括无安全设定、使用接入控制清单(ACL)防止非法获取数据以及采用高级加密标准(AES128)的对称密码,以灵活确定其安全属性。
8)免执照频段。采用直接序列扩频在工业科学医疗2.4GHz(全球) (ISM)频段。
正是这些全新的特点,将使ZIGBEE技术将在无线数传,无线传感器网络,无线实时定位,射频识别,数字家庭,安全监视,无线键盘,无线遥控器,无线抄表,汽车电子,医疗电子,工业自动化等方面得到非常广阔的应用,目前有个口号”WIRELESS ANY WHERE”,要实现这个口号的目标,ZigBee技术的广泛应用,可能是一个重要的前提。
正是因为ZigBee这个蜜蜂,具有广阔的市场前景,所以引来了全球众多厂商的青睐, 纷纷推出各种ZigBee无线芯片,无线单片机,ZigBee开发系统,形成了百花争艳的市场局面。这种局面,对应降低芯片价格,丰富ZigBee技术的应用软件,加快ZigBee技术普及,是大有好处的事情。但对于刚刚起步开始学习ZigBee技术的电子工程师、单片机工程师而言,
如何在这众多的芯片和技术中,选一个高效率,低价格的ZigBee无线技术和相关的学习环境,使自己能快速入门和精通复杂的ZigBee无线技术,确成为了一个难题。许多电子工程师感到无从下手。本文提出了一些实用的建议,希望对电子工程师,单片机工程师快速入门ZigBee技术有所帮助。
第1步:选择自己熟悉的微控制器
由于ZigBee技术是目前嵌入式应用的大热门。所以目前全世界很多公司陆续投入这个市场,市场上各种ZIGBEE的技术方案五花八门,争奇斗艳,但俗话说”外行看热闹,内行看门道”。以专家的眼光看,每个方案的提供商,无不追求一个”利”字,芯片公司为了推销自己的微处理器,推销给用户不同的微处理器(MCU),不同公司的硬件平台,不同的编译调试系统。这对应初次进入无线领域的工程师而言,既要面对复杂的ZigBee无线通讯协议,超高频的硬件环境,再加上完全陌生的指令系统,硬件平台。无疑对学习ZigBee是”雪上加霜”。
建议的解决的之道是选择8051 微处理器为ZigBee的核心MCU,8051微处理器诞生30多年。目前在国内最为普及,大学中专,都有广泛的课程,各种参考书,到处都有,开发软件KEIL, IAR早已被大家熟悉,用起来最顺手。
有言论说8051”老了”,怕不能担当此重任,也有言论说8051会产生数字噪声,影响无线通讯…以专家的眼光看,这些都是没有科学依据的说法。随着芯片科技的发展,今天的8051早已经脱胎换骨,只是片上系统(SoC)的一小部分。而且在低功耗,高速度,低噪声等方面,有了质的飞跃。拿TI/CHIPCON公司最新的ZigBee单片机CC2430/CC2431为例,其8051内核经过特别设计,可以和2.4GHZ的ZIGBEE无线收发电路完美的配合工作,绝不会因为其8051内核的高速运行而对高频无线通讯有任何影响。
从8051入手,入门ZIGBEE技术,好处如下:
1)无需重新学习微处理器结构原理,无需重新熟悉编译/调试工具。
2)对片上系统的I/O, 定时器,A/D, PWM, 看门狗等等,也无需重新学习。
3)如果你没有单片机的基础,学起来也非常容易,也容易找到人请教,交流。
从技术眼光看,ZIGBEE技术的核心是软件,如果MCU是8051,则ZigBee是由C51代码组成的一堆软件而已。无论是无线数据传输,路由算法,网络拓扑…都是各种函数的组合,代码组合。如果你熟悉C51编程,你就很容易熟悉ZigBee的代码,同时将自己的应用代码和ZigBee结合在一起。
从硬件而言,如果你已经熟悉8051,学习ZigBee最好从片上系统(无线单片机)开始进入。因为对于初学无线的工程师而言,从无线单片机开始,可以避开硬件/高频方面的很多难点(像CC2430/CC2431/CC1110/CC2510无线部分完全集成在芯片中,外部只有很少几只零件,你几乎完全不需要考虑如何焊接,如何调试无线高频部分硬件)。直接进入最关键的部分的学习。
入门最理想的是选择8051内核的ZIGBEE无线单片机。理想的选择是最新的CC2430,如果需要高精度无线定位的话,可以容易的扩展到CC2431(关于这两种无线单片机网上有很多介绍)。注意CC2430/CC2431无线单片机是目前世界上仅有的带有128K闪存的8051内核的ZigBee无线单片机。
有几家公司也号称推出了8051内核的ZIGBEE无线单片机,但他们的”单片机”只有ROM(只读存储器),没有存放程序的闪存,必须要外加一个小的闪存。你的全部程序必须存储在外部的闪存中,如果你使用这样的无线单片机,最大的问题是不能对你自己开发的代码加密,任何人可以从外部闪存轻易中获得你辛辛苦苦开发的代码?!但是使用CC2430/CC2431就不会有这样的问题发生。
第2步, 选择一个低价格高性能的ZigBee开发工具
有了第一把钥匙,你已经打开了入门ZigBee无线技术的第一道大门。掌握了ZigBee心脏跳动的频率和运行的脉搏,接下来你需要有一套能够进行程序编译、下载、在线调试的实际的ZigBee无线技术开发系统。
作为入门者,当然希望有一套负担得起的开发平台,从目前市场情况看,作者认为国内用户最理想的选择是深圳无线谷公司(www.wvrf.com)的C51RF-3-CC2430无线开发平台,原因如下:
1)入门价格低(个人/教育/科研/批量可以另外优惠),但性能可靠,功能齐全,具有国外高价格ZigBee CC2430/CC2431开发系统全部功能。
2)包括一个USB接口的全功能仿真器,两个完全高频测试的ZIGBEE/802.15.4兼容无线模块。IAR编译调试软件和无线表演软件C51源代码光盘等。
3)多年专业无线开发系统生产经验,技术支持,保证质量可靠,已经有清华大学/国防科技大学/重庆大学/上海复旦大学/北京林业大学等大量用户成功使用。
当然价格目前比起一般单片机开发系统几百元一台的价格是高了一些。但是,这是全新的高科技,高频高速,市场巨大,都是普通单片机不能相比的。俗话说“舍不得孩子套不着狼”,如果你决心要尽快掌握最先进的无线技术,决心要开发ZIGBEE产品,花点银子也是值得的事情。
为了证明”物超所值”让我们来看看下面的图画,看看你装备了这套系统后,你可以做些什么:
图一 C51RF-3-BK CC2430/CC2431 ZIGBEE无线开发系统
从图片你看到系统包括一个C51RF-3实时在线仿真器,该仿真器通过USB接口直接连接到你的电脑。同时通过10线仿真电缆连接到CC2430ZigBee无线单片及目标板,就方便的完成了连接,无需其他的直流电源。
编译、调试、下载采用 IAR 7.20 以上C51开发环境。 该软件开发工具非常类似KELL的开发平台,如果你熟悉KELL的C51开发平台,你应该非常容易去使用和非常喜欢这个功能强大的类似的IDE/DEBUG平台。
深圳无线谷科技有限公司精心设计的这个目标板分成两部分,底板由电源、RS232接口、键盘、图形液晶显示器、电池系统组成。其核心其实是一个移动无线终端的原形,菜单和汉字显示都具备。无论进行联机的开发,软件下载;还是脱机的独立运行,用电池供电,进行无线通讯距离测试,都非常方便。
更为巧妙的是,将无线CC2430模块从低板上取下来,给模块连接上2个AA电池,无线模块也可以单独运行,下载程序,独立运行。对于许多要求小体积的应用如 RFID等,非常方便。
对于学习ZigBee技术,你只要连接电脑,运行IAR C51开发环境,就可以方便的观察ZigBee/802.15.4协议栈源代码的运行情况。 跟踪协议栈运行情况:单步、断点、ZigBee的整个协议、完全透明、可控、可操作。无线收发情况也在电脑屏幕上,一目了然,随你控制。
有了这把钥匙,即使没有任何无线通讯经验的工程师,也能够在很短时间,熟悉复杂的ZigBee协议,很快将自己的应用和ZigBee无线技术结合在一起,成为无线通讯的内行。