基于无线传感器网络的农业信息采集系统路由设计研究
扫描二维码
随时随地手机看文章
摘 要: 基于无线传感器网络的Ad Hoc自组网技术及AODV技术,结合适用于农业环境参数传输的路由特点,完成了农业信息远程数据采集与无线传输网络的路由报文设计,并给出了按需平面距离矢量路由协议(AODV)的工作流程。该方案具有体积小、成本低、功耗低的特点,支持网状拓扑结构,可以快速组网,顺利读取农业环境的土壤温度、湿度、光照等信息。
关键词: ZigBee;路由协议;AODV;网状网;农业信息
随着信息化和数字化在全球范围内的普及与应用,传统农业和现代农业也向着数字化农业方向转变,其核心是精准农业。因此信息的实时采集、迅速传输与及时分析、处理就显得非常重要。农业信息数据传输具有需要数据采集或监控的网点多、要求传输的数据量不大且数据传输可靠性高、安全性高、要求设备成本低、体积很小、不便放置较大的充电电池或者电源模块、电池供电、地形复杂、监测点多、需要较大的网络覆盖等特点[1]。另外,现有移动网络存在覆盖盲区,使用现存移动网络进行低数据量传输的遥测遥控系统效果差或成本太高。目前,在无线传感器网络中,ZigBee技术以其设备成本低、电池寿命长、数据传输安全可靠、组网简易灵活等独特的优势,在家居智能化、工业自动化和医疗护理等领域获得了广泛应用,所以基于ZigBee技术的无线组网方案在精准农业中的应用就显得很有必要。
ZigBee无线传感器网络结构是自组网方式,有终端节点的加入和退出,网络可以自动调整通信连接方式,核心是路由路径的重新选择。网络结构有树状网、星型网和网状网,在一个协调器管理的范围内,所有节点都通过自动选择的路由或预先设定的路由与协调器节点进行数据命令的交换。农业信息采集系统中,每块试验田被设置为一个独立的网络,网络中各个节点的路由均设计为按需路由方式,也就是按需距离矢量路由协议AODV(Ad Hoc on-demand Distance Vector)[2]。本文在熟悉AODV的基础上,给出了基于ZigBee无线传感器网络技术的农业信息远程采集系统框图,进行了无线网络中按需距离矢量的路由设计,并给出了协议的工作流程。
1 远程数据采集系统整体架构
本文设计的农业信息采集系统中,将每块试验农田设置成一个独立的ZigBee网状网络[3],每个网络只有一个中心节点(即协调器端),其他终端节点(由MCU和无线收发芯片构成)都设置为具有路由器功能的路由节点,并连接有土壤PH值、氮浓度计、大气温湿度等传感器。这些不承担网络信息中转任务的ZigBee终端节点在自己信号覆盖的范围内,彼此间通过ZigBee无线方式连接,然后将检测到的数据资料汇集到ZigBee中心节点。由于每块试验田的中心节点和远程中央控制中心均配置有GPRS模块,所以中心节点就会将收集到的数据通过GPRS无线通信方式传输到中央控制中心,经由系统软件对该控制中心所管辖的农田参数进行综合分析,并做出相应控制决策。
本文给出了如图1所示的结构设计,协调器节点模块、FFD路由器节点模块和GPRS模块采用相同的硬件和软件设计。不同的是GPRS模块通过在硬件中采用跳线的方式来选择无线模块工作在主协调器模式还是从路由器模式,以达到增强无线模块的通用性、灵活性和节约成本的目的。系统工作时,由ZigBee协调器建立一个新的ZigBee网络。首先,ZigBee协调器会在允许的通道内搜索其他的ZigBee协调器。并基于每个允许通道中所检测到的通道能量及网络号,选择唯一的16 bit PAN ID,建立自己的网络。一旦一个新网络被建立,ZigBee路由器与终端设备就可以加入到网络中,从而在ZigBee无线通信技术的基础上,基于GPRS通信方式实现对农田数据的远程采集、传输及控制[4]。各个数据采集节点到协调器节点之间的数据传输是本系统的重点和难点,在对比了多种路由协议后,本文选择按需距离矢量路由协议AODV完成本系统的路由设计。
2 ZigBee无线传感器网络系统路由报文设计
AODV(Ad Hoc on-Demand Distance Vector)是基于距离矢量算法的路由协议,它是DSR和DSDV结合生成的一种按需路由协议,综合运用了DSR路由发现/查找/维护和DSDV跳计数(hop-by-hop)、序列号和周期更新的原理机制。AODV协议只保持需要的路由信息,不需要节点维持通信过程中未激活到达目的节点的路由信息,因此在节点移动导致网络拓扑发生快速变化或者链接中断的情况下能够快速收敛响应和修复中断的链路[5]。其特点是:通过使用目的节点序列号可有效降低闭环路由发生概率,解决基于距离矢量路由算法存在无限跳计数的问题。由于需要周期性地广播报文分组和路由信息,以解决路由失效的问题,因此会带来较大的协议开销。
本系统网状网结构中,每个终端节点到协调器节点的路由可以有多个,路由表的维护也比较复杂,为此对每个节点的路由请求、路由应答、路由错误及修复、路由节点应答的数据格式采用了双字设计,便于路由识别和扩展[6]。
2.1 ZigBee路由请求RREQ报文设计
路由请求(RREQ)报文的字段设计如表1所示,其中各部分的含义:J为路由加入标记位,用于组播字段时多目标传输标记;R为路由有效标记(1表示路由有效);G为无请求路由应答标识位,此位置为1,表示RREQ报文被中间节点响应,并使中间节点向目的节点单播一个RREQ报文;置0,表示不需要中间节点响应。D为单个目的节点标志位,表示只有一个目的节点可以对RREQ报文分组做出响应;U为未知目的地标识位,当目的节点序列号未知时置为1;Reserved为12位二进制保留位,发送时设0,接收时对其不作处理;Hop count为跳计数,记录RREQ从信源到应答节点所经过的跳计数,长为1 B,8位二进制;RREQ ID为报文分组标记,设定为2 B,32位二进制,Destination IP address为32位二进制目的节点IP地址,Destination sequence number是路由进程中存储的目的节点最新序列号, Originator IP address是广播RREQ报文分组的信源节点IP地址,Originator sequence number是信源节点序列号,均为32位二进制数据格式。