基于ZigBee技术的数据采集自组网系统设计

2015-02-06 08:53中国船舶重工集团公司第七一研究所段素平
电子世界 2015年18期
关键词:网络地址路由器路由

中国船舶重工集团公司第七一〇研究所 段素平

基于ZigBee技术的数据采集自组网系统设计

中国船舶重工集团公司第七一〇研究所 段素平

设计了一种基于ZigBee技术的数据采集自组网系统。介绍了协调器、路由器和终端节点的硬件结构,然后阐述了系统的软件设计。通过三组实验,对系统自组网、自愈路由算法和数据采集三个方面进行了测试。

ZigBee;自组网;数据采集

引言

当前,对于一定区域内的设备和信息进行检测和采集多采用有线的方式,采用这种有线组网方式往往布线困难,施工费用高。同时,有线网络布设完成后,也会因环境的影响造成腐蚀和损坏,增加了后期的维护成本,也给正常工作带来一定的影响。ZigBee是一种新兴的无线网络通信技术,具有低复杂度、低功耗、低成本以及组网灵活等特点。基于此,从节省成本、网络复杂度以及低功耗考虑,设计了一种基于ZigBee技术的数据采集自组网设计方案。

1 系统网络结构

在ZigBee自组网络中存在三种设备类型:协调器、路由器以及终端节点。ZigBee网络根据需要可以组成星形网络、树簇网络以及网状网络。如图1所示。

星形网络结构简单,适合小范围的网络应用;网状网络结构复杂,构建起来麻烦,维护的信息也较多;树簇网络可以看做由多个简单星形网络组成的网络,结构清晰,各节点功能明确,故本系统采用树簇网络拓扑结构。

2 通信自组网络节点硬件设计

自组网节点需要长时间工作在一定区域,能耗绝决定了整个网络的生命周期。基于此,采用低功耗的CC2420作为本系统的主控芯片,用于ZigBee的片上系统,内部集成射频收发器、增强型8051内核、8KB字节RAM以及包含串口在内的多种接口,封装小,功耗低。

2.1 协调器

协调器负责协调整个无线网络、处理和存储数据以及与上位机通信,其硬件结构图如图2所示。

(1)协调器负责整个网络的启动和配置,是网络中的第一个设备。协调器确定ZigBee网络ID号和操作的物理信道,并统筹短地址分配,提供数据路由和安全管理服务。

(2)在本系统自组网络中,终端节点采集到的数据、从终端节点转发到路由器的数据都将交付给协调器,协调器负责处理和存储这些数据。

(3)为了保存一些设置的参数和系统运行时的某些状态从而方便调试,以及对终端节点采集的信息进行备份,协调器通过RS232串口电路与上位机进行通信。

2.2 路由器和终端节点

在智能雷通信自组网中,终端节点负责数据采集、传输等工作。路由器允许终端节点或其他路由器加入网络,多跳路由并协助终端节点进行通信,完成数据的转发,延长数据传输距离。两种节点硬件电路如图3所示。

传感器电路负责采集数据和数据转发;CC2420完成数据处理以及整个节点设备的任务管理;射频天线设计采用巴伦匹配电路(BALUN电路),满足输入输出匹配电阻(50Ω)要求;ROM存储电路负责存储数据信息;电源模块采用电池,为整个节点供电。

图3 节点组成框图

3 采集自组网络节点软件设计

3.1 协调器软件设计

协调器节点上电后,分别对串口、存储电路等初始化。接着,协调器通过调用函数MAC_MlmeScanReq((ma cMlmeScan_Req_t*)pData)对信道能量进行扫描,能量水平高标志该信道无线信号活跃,协调器根据能量扫描信息选择一个合适的信道。同时,协调器选择一个合适的信道网络标识符(PAN ID),从而启动网络建立,并允许其他设备加入。当有子节点申请入网时,协调器要为子节点分配16 bit的网络短地址。网络建立后,协调器的主要功能是对网络中各子节点进行管理,接收各子节点的信息并发送给上位机进行数据处理。

3.2 路由器软件设计

路由器上电初始化完成后,将申请加入网络。入网成功后若有其他节点申请加入,需要判断申请节点是路由器还是终端节点,为节点配置系统加载项,完成节点入网工作。若节点入网成功,路由器为该申请入网节点分配网络地址。完成上述工作后,路由器下一步将建立节点间的通信链路,从而可通过多跳数据转发机制进行数据交换,提供网络的连通性。

3.3 终端节点软件设计

终端节点初始化完成后,将选择合适路由节点加入ZigBee无线网络。入网成功后终端节点将进入休眠状态,直到被触发。若被触发,则终端节点开始采集信息,并缓存到缓冲区。当缓冲器被填满,程序就调用相关函数将信息发送出去。若发送成功,节点返回休眠状态;若不成功,则重新发送该段数据。

4 实验验证

本组实验是为了验证网络的自组性、网络自愈性以及数据采集的正确性。

4.1 网络自组网测试

选择1个协调器节点、2个具有路由器以及3个终端节点来组成树簇网络。为将上述节点上电,让它们自动组网。同时,利用串口调试助手显示协调器接受到的数据。

可以看出此时所有设备入网完毕,都存在唯一地址,其中协调器网络地址为0。为路由器分配的网络地址分别为0x0001和0x0007。0x0001路由器所连接的终端节点网络地址为0x0004,0x0007路由节点所连接的终端节点网络地址为0x000A,而直接与协调器节点连接的传感器节点网络地址为0x000D。

4.2 自愈路由算法测试

关闭网络地址为0x0001的路由器电源,从而断开其网络连接。这种情况下,0x0004终端节点会搜索潜在的父设备,并将获得新的网络地址,绑定入网。

4.3 数据采集测试

为了直观地验证本采集系统的准确性,路由器和终端节点连接温度传感器。为了便于分析,采集同一温度源的温度,每隔一段时间记录一次数据。

[1]高守玮,吴灿阳.ZigBee技术实践教程(第一版)[M].北京:北京航空航天大学出版社,2011.

[2]Szewczyk,R,Polastre,J,Maiwaring A.Analysis of wireless sensor networks for habitat monitoring.Wireless Sensor Network s,2004(12):399-423.

[3]田亚.基于ZigBee无线传感器网络系统设计与实现[M].上海:同济大学出版社,2007.

猜你喜欢
网络地址路由器路由
买千兆路由器看接口参数
维持生命
路由器每天都要关
路由器每天都要关
网络地址转换技术在局域网中的应用
铁路数据网路由汇聚引发的路由迭代问题研究
一种基于虚拟分扇的簇间多跳路由算法
探究路由与环路的问题
基于预期延迟值的扩散转发路由算法
浅析IP地址分类