基于CC2430的ZigBee无线传感器网络设计与实现
扫描二维码
随时随地手机看文章
引言
ZigBee这个名字来源于蜂群的通信方式,蜜蜂之间通过跳Zigzag形状的舞蹈来交互消息,以便共享食物源的方向、位置和距离等信息。ZigBee是-种新兴的短距离、低速率无线网络技术,主要用于近距离无线连接。它有自己的无线电标准,在数千个微小的传感器之间相互协调实现通信。这些传感器只需要很少的能量,以接力的方式通过无线电波将信息从一个传感器传到另一个传感器,因此有着非常高的通信效率。
1 ZigBee无线传感器网络系统结构
1.1 ZigBee的技术特点
ZigBee的技术特点如下:
(1) 设备工作周期很短并且ZigBee采用了多种节能模式,其功耗极低,2节五号电池可以支持长达6个月到2年的使用时间。
(2) ZigBee协议免专利费,简单协议、低数据传输速率和小的存储空间大大降低了ZigBee的成本。另外,ZigBee的工作频段均为免执照频段。
(3) 接入网络快,时延短,设备搜索时延典型值为30ms,设备接入时延为15ms,休眠启动时延为15ms,接入网络和传送数据时延短,适合监控应用。
(4) ZigBee加密算法采用AES-128,同时提供了数据完整性检査和鉴权功能,可以灵活确定各个应用的安全属性。
(5) ZigBee网络的形成和自动修复无需人工干预,设备节点可以通过信息交互知道其他设备节点的存在,确定相互之间的关系。
1.2 ZigBee的无线传输优势
1.2.1 Wi-Fi
Wi-Fi(WirelessFidelity)是目前WLAN的主要技术标准,可实现几Mbps到几十Mbps的无线局域网接入。Wi-Fi依赖TCP/IP作为网络层,规定了协议的物理层和媒体接入控制层,便携性良好但却耗能高,大多Wi-Fi装置都需要较高的电能储备和常规充电,限制了其在工业场合的推广和应用。
1.2.2 蓝牙
蓝牙是以IEEE802.15.1为基础,工作频率为2.4GHz,传输距离较短,有效范围一般在10m之内,信道带宽为1MHz,异步非对称连接最高数据速率为723.2Kb/s。系统的抗干扰能力不强,成本和集成复杂性高。
1.2.3 红外线数据通信
IrDA是一种利用红外线进行点对点通信的技术,IrDA标准的无线设备传输速率已发展到4Mb/s,16Mb/s。目前,其软硬件技术成熟,已经广泛应用在小型移动设备上(如PDA、手机)。但问题在于IrDA只能在2台设备之间连接,连接设备必须对准且中间不能有障碍物遮挡,一般不应用于工业网络。
通过对以上无线传输技术的比较,可以看出:ZigBee技术适合用于几点数密集、对能量要求低的网络;可以在其有效物理范围100m内实现通信,目前一些产品的加强型,可以将有效范围扩大至1km以上;工作射频2.4GHz的工业频段,免除申请的麻烦;2.4GHz时传输速率为250Kb/s,对于工业中传输量低的场合,满足其应用要求。
1.3 ZigBee网络协议栈
随着通信技术的迅速发展,人们提出了在自身附近几米范围内通信的要求,因此就出现了个人区域网络和无线个人区域网络的概念。IEEE802.15.4是IEEE针对低速率无线个人区域(LR-WPAN)指定的无线通信标准,该标准把低能量消耗、低速率传输、低成本作为重点目标。在IEEE802.15.4中定义了13个物理层服务原语和35个MAC层服务原语。
ZigBee技术具有统一的技术标准,主要由IEEE802.15,4I作组与ZigBee联盟分别制定。IEEE802.15.4工作组制定了这项技术的核心,物理层(PHY)和媒体接入控制(MAC)层;ZigBee联盟在IEEE802.15.4的基础上定义了网络层(NWK)和应用层(APL)和安全服务规范。
ZigBee可由多达65000个无线数传模块组成的一个无线数传网络平台,在整个网络范围内,每个ZigBee网络数传模块之间可以相互通信,每个网络节点间的距离可以从标准的75m到几百米甚至几千米。ZigBee协议栈结构如图1所示。
PHY层主要负责数据的调制与解调、发送和接收,向下直接操作物理传输介质(无线射频),向上为MAC层提供服务。MAC层负责为一个节点和它的直接邻居之间提供可靠的通信链路,提供冲突避免以提高通信效率,负责组装和分解MAC层帧。NWK层决定设备连接和断开网络时所采用的机制;执行设备间的路由发现和路由维护;完成一跳(one-hop)范围内的邻居设备的发现和相关信息的存储;创建新网络;为新入网设备分配网络地址等。
图1 ZigBee协议栈结构
2 ZigBee无线传感器网络设计
2.1 硬件部分(主控CC2430片上系统(SoC))
早期的ZigBee硬件都是微控制器(MCU)和IEEE802.15.4射频芯片分离的。随着计算机硬件技术的不断发展,出现了系统级芯片(SoC)和系统级封装(SiP),即把多个硬件模块集成到一个单芯片中去。目前,ZigBee硬件也发展到了这个阶段,在一个芯片内部集成了MCU和射频芯片。这样不但降低了ZigBee开发者对硬件射频电路的要求,加速了ZigBee系统的开发,同时也对ZigBee系统的稳定性、可靠性、芯片体积等方面带来了积极影响。
CC2430是TI的第二代ZigBee平台和真正的SoC解决方案。它兼容IEEE802.15.4标准,在单个芯片上整合了ZigBee射频(RF)前端、内存和微控制器。它使用1个8位MCU(8051),具有128KB可编程闪存和8KBRAM,还包含模拟数字转换器(ADC)、几个定时器(Timer)、AES128协同处理器、看门狗定时器(Watchdogtimer).32kHz晶振的休眠模式定时器、上电复位电路(PowerOnResel)、掉电检测电路(Brownoutdetection),以及21个可编程I/O引脚。CC2430芯片采用0.18gmCMOS工艺生产;在接收和发射模式下,电流损耗分别低于27mA和25mA。CC2430的休眠模式和转换到主动模式的超短时问的特性,特别适合那些要求电池寿命非常长的应用,传感器网络节点框架框图如图2所示。
2.2 软件部分(ZigBee组网设计)
ZigBee定义了三种设备:协调器、路由器、终端设备。规定了一个ZigBee网络中只能有一个协调器,若干路由器和终端设备。协调器的主要功能是启动网络的建立,包括选择一个信道,确定惟一的PAN地址并广播建立网络信息。路由器主要功能是在多跳网络中作为中继节点协助数据向上一级路由器传递,给子节点分配地址,终端设备主要功能是采集数据并向上级路由器发送。协调器通过NIME-NETWORK.FORMATION,request原语来启动一个新网络。
ZigBee主节点工作流程如图3所示。
首先,ZigBee网络中主节点MCU发起信道扫描,经通道能量扫描检测APL选择可用通道并建立WAN,创建一个从机相关信息的注册表。注册表内容有从机的ID号、连接状态、是否唤醒等信息。主控节点接入后,先对注册表进行检查,若发现网络中有未分配的ID,则主机发搜索命令,如果有从机回应,则为其分配此ID号,然后由主机切换到工作信道,等待从机发回应答包,若ID号匹配,则分配成功,主机更新注册信息列表。主机分别对注册信息列表中的有效ID发送数据请求,以获取传感器(如温度、湿度、烟雾含量)相关数据信息。若某ID在最大允许通信时间内没有发送应答信息,主机将再次更新该ID的注册信息列表,如果确认与从机失去联系,则将该1D号予以注销。从机节点上电后首先监听默认信道,如果收到主机发送的搜索命令,则回应主机,并附上自己的随机码。在收到主机的注册命令后,先对比随机码,进行匹配时则切换到工作信道,并使用注册命令中分配的ID号发送应答包,以完成注册。随后传感器采集相关数据,等待主机呼叫传感器的命令,数据发送完成后进入休眠,一定时间后唤醒再次进行数据釆集,如此循环,中间釆集到的数据量可以通过液晶等方式进行直观的显示,并可以设定刷新时间频率,达到一定精确及时的控制。直到主节点发出完成命令,整个过程完成。
3结语
主要介绍由CC2430片上系统为主控的ZigBee无线传感器网络设计,以及主节点组网软件设计流程,实验测试中验证了ZigBee无线网络具备的低功耗,易扩展,较稳定等优点,可靠实现了数据的传输,有效通信距离达到100m。