Zigbee 全方位解决方案
一、 非开源协议栈
1. freescale 解决方案
l 协议栈种类:
1.1 802.15.4标准mac
1.2 SMAC
1.3 SynkroRF
1.4 ZigBee RF4CE
1.5 ZigBee 2007
最简单的就是SMAC,是面向最简单的点对点应用的,不涉及网络的概念;其次是IEEE802.15.4,一般用来组建简单的星型网络,而且提供了源代码,可以清楚地看到网络连接的每个步骤,分别调用了哪些函数; BeeStack(符合zigbee 2007)是提供的最复杂的协议栈,但是看不到代码,它提供给你一些封装好的函数,比如创建网络函数,你直接调用它,协调器就把网络创建好了,终端节点调用它则寻找可以加入的ZigBee网络并尝试加入。
MC13202 ( 2.4 GHz射频收发器)
MC13213 ( 2.4 GHz射频收发器和带60K闪存的8位MCU)
MC13224V ( 2.4 GHz平台级封装(PIP) –带有128KB闪存、96KB RAM、80KB ROM的 32位TDMI ARM7处理器 )
MC13233 (带有HCS08 MCU的2.4 GHz片上系统 )
其中硬件平台可以为以上任一种:MC13202没有自带mcu,在做应用时,需要用户在自己的扩展板上加上mcu,既需要实现对外围设备的底层控制,也需要实现协议栈。下面的几种均有自带mcu,协议栈的实现在自带的mcu上实现,功能较简单的可直接使用片上的mcu资源进行控制;功能复杂的应用,最好协议栈实现与外围控制分开,大多数应用都选择arm芯片作为控制芯片;
详细信息可以查看http://www.dataie.com/
2. crochip 解决方案
l 协议栈种类:
1.1 ZigBee® Smart Energy Profile (SEP) Suite
1.2 ZigBee® PRO
1.3 ZigBee® RF4CE
均是一整套的协议集,价格不菲;
l 硬件平台:
Pic18(mcu)+MRF24J40(2.4GHZ 射频收发器)+天线;
与freescale 的mc13202相似,MRF24J40也只是射频收发器,不包含mcu,协议栈的实现需要借助于外围的mcu,当然微芯公司选择的是pic18及以上的芯片作为其主控mcu,通过spi接口与MRF24J40通信,查询其寄存器的状态,实现协议栈功能。
3. ST 意法半导体 解决方案
l 协议栈种类:
EMZNET ZigBee® protocol stack
l 硬件平台:
Sn250 集成了 2.4GHZ的无线收发模块和emberznet16位微处理器;
二、 半开源协议栈
1. TI的解决方案:
l 协议栈种类(免费):
ZStack-CC2530-
ZStack-EXP5438-
ZStack-MSP2618-
ZStack-LM9B96-
ZStack-ZAP-MSP430-
z-stack系列(不同的平台)
l 硬件平台:
Cc2530(带有增强型8051mcu)
Cc2530+cc2591(增加发射功率)
Cc2520(2.4GHz ZigBee/IEEE 802.15.4 射频收发器)
常用的是前两种;对要求不高的应用,不用另加mcu直接使用,非常方便。
三、 开源协议栈
1. msstatePAN
msstatePAN协议栈是由密西西比大学的R.Reese教授为广大无线技术爱好者开发的精简版ZigBee协议栈,基于标准C语言编写,基本具备了 ZigBee协议标准所规定的功能,最新版本为V0.2.6,该版本支持多种开发平台,包括PICDEM Z、CC2430评估板、MSP430+CC2420(Tmote)以及WIN32虚拟平台。源代码是开放的,整个协议栈是基于状态机(FSM)实现的。如果你的程序构架不是基于操作系统的,有限状态机应该是一个很好的选择。而且OS(operating system)中进程的状态也是个各个状态间的切换。
2. freakz协议栈和contiki操作系统。
freakz是一个彻底的开源zigbee协议,配合contikj操作系统,相当于Z-Stack+OSAL。相对于另外一个开源的WSN(Wireless Sensor Networking,无线传感网)操作系统TinyOS来讲,contiki的代码全部为C语言写成,用GCC进行编译,对广大应用C语言多年的开发者来说,减少了学习另外一种语言与编译平台所带来的时间花费。
3. TinyOS
TinyOS是UC Berkeley(加州大学伯克利分校)开发的开放源代码操作系统,专为嵌入式无线传感网络设计,操作系统基于构件(component-based)的架构使得快速的更新成为可能,而这又减小了受传感网络存储器限制的代码长度。TinyOS的构件包括网络协议、分布式服务器、传感器驱动及数据识别工具。它只是一个操作系统,不过现在已经成立了 TinyOS ZigBee Working Group 已经开始设计开源的zigbee。