在应用系统设计过程中,考虑到LM3S9B96的优良特性以及作为协调器对硬件节点的高性能要求,用该开发板来控制CC2520无线传输模块,并把LM3S9B96+CC2520作为协调器节点,这也是TI公司提供的新的32位无线传感器网络节点方案。同时,将集成了一个8051核及射频电路的CC2530无线模块作为路由和终端节点,终端节点的传感器则采用E18-D80NKDC-5V反射式接近开关传感器,以此构成ZigBee无线组网的硬件平台。在ZigBee协议栈选择方面,CC2520及CC2530使用的是TI公司设计的符合ZigBee2007/PRO标准系统的ZigBee协议栈Z-Stack。Z-Stack是最新功能的协议栈产品,在互操作性、节点密度管理、数据负荷管理、频率捷变等方面有重大进步,且具有支持网状网络和低功耗等特点。在应用程序模块中,通过E18-D80NKDC-5V反射式接近开关传感器进行障碍物检测,利用CC2530终端节点与LM3S9B96协调器进行ZigBee星型网通信,构建了智能泊车引导系统。
2 ZigBee网络节点结构
2.1 硬件模块介绍
TI公司的CC2520、CC2530芯片是符合ZigBee技术的具有高集成度的无线射频收发器件,CC2520和CC2530芯片的PHY与MAC层协议符合IEEE 802.15.4标准,模块可工作在2 394~2 507 MHz的2.4 GHz ISM免费频段。该频段可提供16个物理通信信道,工作速率可达到250 kbps,码片速率为2 Mchip/s。CC2520和CC2530无线芯片均是有着低功耗的特点,在接收数据帧时电流消耗仅为18.5 mA,其输出功率编程可控,最大输出功率可达5 dBm,此时电流消耗33.6 mA,支持IEEE802.15.4标准与ZigBee协议。芯片的RF电路部分还提供丰富的硬件功能支持,如封包处理、数据缓冲、爆发传输、数据加密、数据验证、空闲信道评估、链路质量指示和封包时间信息,可大幅减轻主机控制器的作业负荷。
TI公司LM3S9B96微控制器内含DMA、数字/模拟转换器(DAC)和模拟/数字转换器(ADC)等功能模块且提供以太网、CAN及USB口通信,又兼具高性能及超低功耗的特点,能为ZigBee应用提供良好的硬件支持。无线传感网络节点的具体硬件结构如图2所示。
2.2 无线通信节点平台分析
通过了解IEEE802.15.4标准、ZigBee规范,并在此理论基础上研究TI公司的标准ZigBee协议栈Z-Stack,对其底层驱动、协议栈的初始化以及事件机制进行了研究与分析。LM3S9B96+CC2520节点作为当前较新的ZigBee节点平台,基于任务调度机制,采用功能模块化设计。[page]
2.2.1 协调器的功能模块配置
LM3S9B96微控制器提供了3个UART通信口,在zstack_collector工程中选择UART0作为串行通信端口。在系统时钟配置上,为使协调器节点运行在50 MHz的频率上,需使用PLL(Phase Locked Loop,锁相环)进行系统时钟4分频配置。另外,程序中使用定时器timer0A与time0B以支持协议栈任务的运行。CC2520与LM3S9B96之间采用SPI接口,其他引脚配置为:FIFOP作为接收数据包判断的重要引脚,对应开发板上的中断引脚PC6;数据缓存判断引脚FIFO则对应PC7。在接收模式下,当发生越界或帧接收完毕时,FIFOP引脚可以用来中断微处理器,FIFO引脚可以用来判断数据是否都处于接收FIFO中。CC2520与LM3S9B96微控制器的接口如图3所示。
CC2520利用SFD、FIFO、FIFOP和CCA 4个引脚查询数据收发状态,利用SPI接口(CSN、SO、SI、SCK)与LM3S9B96微控制器进行数据交换及命令传送。另外,利用RSTn引脚复位芯片并使用VREG_EN引脚使能CC2520的电压调整器,使其产生CC2520正常工作所需的电压,CC2520的电压规格范围为1.8~3.8 V。本平台的CC2520与CC2530使用单极天线进行通信。
2.2.2 协调器的软件环境配置
使用“#include"config/lm3s/f8wConfig.h"”与“#include"config/lm3s/f8wCoord. h"”将该工程配置为协调器工程项目。然后在ZigBee网络设置上,通过“#define DEFAULT_CHANLIST 0x00000800”宏定义将物理信道配置为11,通过“#define ZDAPP_CONFIG_PAN_ ID0xFFFF”宏定义使得协调器运行时可自行设置PAN ID,若ZDAPP CONFIG_PAN_ID值不为0xFFFF时,PANID由其指定。ZigBee节点的2.4 GHz频段有着良好的抗干扰性能,不同信道下的通信互不干扰。在组网过程中务必保证网络节点拥有相同的PAN ID及物理信道,处在同一网络下,否则将无法正常组网通信。
3 ZigBee无线组网研究
3.1 LM3S9B96+CC2520协调器的组网流程
CC2520协调器软件初始化的基本思路是:先对LM3S9B96与CC2520控制端口进行初始化;使能触摸屏ADC通道,使能UART通信端口,使能SPI口,并通过SPI口按照CC2520芯片的操作时序初始化CC2520;操作系统抽象层加载协议栈运行任务,并提供信息管理、任务同步、时问管理、中断管理、任务管理、内存管理、电源管理以及非易失存储管理等服务。开启无线收发机后,就可以运行任务程序等待数据的收发。协调器设备的组网程序流程如图4所示。
3.2 LM3S9B96+CC2520与CC2530组网研究
ZigBee有着大规模的组网能力,每个网络理论上最大可支持65 535个节点,本设计利用多达十几个节点构成ZigBee平台,研究发现LM3S9B96与CC2530进行无线组网,必须具备以下几个条件。
(1)采用相同的标准协议栈
因相同协议栈组网握手协议及流程一样,要保证网络中信息传输过程一致,协调器、路由器和终端设备之间只有采用相同的协议栈,才能实现互操作。在组网实验中,统一采用了ZigBee 2007/PRO协议栈。
(2)PAN ID号和信道的配置
协调器和路由器、终端设备的PAN ID号必须保持一致,所采用的信道也必须相同。网络设备的PANID号与ZDAPP_CONFIG_PAN_ID宏值的设置有关,若其值为0xFFFF,则协调器将产生一个随机的PAN ID,而路由器和终端设备将在自己的信道上随机选择一个网络加入,并以协调器的PAN ID作为自己的PAN ID;若其值介于0x3FFFF与0xFFFF之间,则协调器将根据自己的IEEE地址随机产生一个PAN ID,而路由器和终端设备将以ZDAPP_CONFIG_PAN_ID的值作为其PAN ID;若其值小于等于0x3FFFF,则协调器、路由器和终端设备均会以ZDAPP_CONFIG_PAN_ID的值作为其PAN ID。2.4 GHz的射频频段被分为0x0B~0x1A共16个独立的信道,在组网过程中,协调器、路由器和终端设备必须采用相同的信道。
[page]
(3)相应的事件处理机制『本文转载自网络,版权归原作者所有,如有侵权请联系删除』