基于AT86RF230 ZigBee的WPAN网络设备设计
1硬件电路设计
一般情况下IEEE802.15.4网络设备的基本构成如图l所示。系统的电源通常由电池提供,也可以由稳压模块供给。RF收发芯片负责射频信号的产 生和接收解调,其基准时钟由外部高精度的晶体振荡器提供;同时要实现一些物理层和 MAC层的基本功能,例如编解码、信道选择、功率控制、接收机能量检测(RSSI)、链路质量指示(LQI)、空闲信道评估(CCA)和硬件CRC校验 等。在实现这些基本功能的前提下,RF芯片应该尽量做到低功耗、高灵敏度和较小封装。微控制器要有丰富的资源来完成对RF芯片的控制,以及对传感器、各类 应用接口和用户接口的实时响应。通常协议栈需要占用32KB左右的存储空间。
1.1AT86RF230性能和内部结构
Atmel公司的AT86RF230是与ZigBee/IEEE802.15.4兼容的无线射频收发芯片。它工作在2.4GHzISM频段,拥有 104dB链路预算,-101dB的接收灵敏度和3 dB的传输功率,从而减少网络中所需节点设备的总数,大大降低了IEEE 802.15.4系统的组网成本。所有RF关键器件(除了天线、晶振、去耦电容外)都集成在一块芯片中,封装形式采用32引脚、5 mm×5mm×0.9mm大小的QFN封装。由该芯片所构成的设备仅需6个外部组件,功能框图如图2所示。终端节点通常是电池供电,发射模式下电流消耗为 17 mA,接收模式下为15 mA,睡眠模式下仅为O.7μA;工作电压可达1.8~3.6V,内部有集成的1.8V LDO。AT86RF230内部有35个可以通过SPI控制时序访问的8位寄存器,工作时有8个基本状态(可以根据需要扩展为14个)。片内发送数据和接收数据的缓冲分别为129字节和130字节,正好可以满足IEEE802.15.4协议规定的最大帧长度127字节的要求。发送时需要加2字节的 CRCl6校验码,接收时还要多加1字节的链路质量指示。
2软件设计
软件开发环境为AVRSTUDIO+AVRGCC。这两个软件均是免费的。软件设计主要包括射频驱动、外围电路控制和ZigBee协议栈设计3个部分。基于IEEE802.15.4协议的WPAN网络中的协调器和网络节点的软件流程基本相同,只是网络协调器要承担网络建立的功能,网络节点则要承担一些控制或测量的功能。为了与其他ZigBee产品相兼容,软件设计必须严格遵守IEEE802.15.4协议。本设计建立的网络拓扑是非超帧结构的星形网络,具体软件流程如图5所示。
基本过程为:网络协调器首先初始化WPAN信息数据库,建立ZigBee网络,分配网络ID号和16位网络地址,初始化邻居设备表,然后等待其他节点连接;网络节点上电后,初始化内部资源、网络节点的WPAN信息数据库,发送扫描信号请求连接,连接成功后,记录下网络ID和分配好的16位网络地址,按功能设定向协调器发送信息。因为网络节点一般为电池供电,所以在空闲时要进入休眠节能状态。外围电路控制主要是针对传感器、开关等器件的控制,可根据不同需求对软件进行相应的修改。