森林生境因子无线传感器网络采集系统

2014-09-21 01:38孙利新王霓虹
哈尔滨工业大学学报 2014年7期
关键词:数据包路由无线

李 丹,孙利新,戴 巍,王霓虹

(1.东北林业大学信息与计算机工程学院,150040哈尔滨;2.哈尔滨工程大学计算机科学与技术学院,150001哈尔滨)

近年来,随着电子信息技术的提高,嵌入式技术得到了飞速发展.由于嵌入式微处理器具有体积小、可靠性高、功能强、灵活方便等优点,其应用已深入到工业、林业、农业、科研等多种领域.随着嵌入式技术的不断进步和“数字林业”概念的提出,逐渐将嵌入式技术应用于林业生产,推动着林业生产信息化的进程,加快了现代化林业技术的发展[1-2].

在森林生境因子采集过程中对精确、快速、自动的测量技术的需求越来越高,而传统的林业测量方式大多采用手工测量或是有线传输测量方式,林木生长环境地域广阔、地形复杂,不具备现场布置大量的导线或电缆的实际条件,并且在线路上的传输信号会受到电磁干扰,造成较大的衰减,从而影响了测量数据的精度,导致了测量误差.在此背景下急需研究低成本的林木生长环境信息采集传感器和高可靠性的环境信息无线测控终端,并在此基础上研究开发森林生境因子自动采集系统,以便及时地了解森林生长环境状况,为林木的抚育提供可靠的数据支持,为森林抚育以及经营管理提供决策支持.

系统将最新的嵌入式技术与无线传感器网络技术相结合,采用无线射频芯片nRF905和低功耗嵌入式芯片LPC2148,可以实现低成本、高效率地完成数据的采集和无线传输,通过设计以电池供电方式的生境因子采集电路,实现了整个检测过程的无线化、自动化和可视化.

1 系统总体结构

系统是将由汇聚节点、路由传输节点和传感器采集节点组成的森林生境因子无线测控终端分布在森林监测区域,构成森林生境因子采集系统,通过实时采集森林环境信息,传输到系统监测中心平台,实时监测森林环境因子的变化,其系统结构如图1所示.其中,在指定的森林监测区域随机地分布大量的数据采集传感器节点,这些节点能够随时通过自组网的方式构成监测网络,并采用多跳方式将采集到的数据沿着相邻的节点进行传输.在传输过程中,传感器节点所采集的数据将被其他传输节点处理,并传送至最近的负责多点接收的汇聚节点,然后通过RS232串口通信将采集数据送给本地监测中心的 PC机[3-4],将采集数据入库.本地监测中心对接收的数据进行分析、处理和存储,并通过WebGIS将采集数据统一发布,以实现随时随地通过Internet网络对生境因子进行实时监测.

图1 系统总体结构

2 监测传感器网络节点硬件设计

2.1 系统硬件结构

森林生境因子无线测控终端主要由传感器终端节点、路由传输节点、汇聚节点3个部分组成.为了系统稳定性与集成性,路由传输节点与传感器终端节点采用集成式设计,封装同一集成电路中,汇聚节点与本地监测中心的PC机相连,传感器节点由微处理器、串口通信模块、无线通信模块、温湿度检测模块、光照强度检测模块和系统电源模块组成.每个终端节点通过自组网方式将采集的森林环境信息发送至汇聚节点,再由汇聚节点传输至本地监测中心,实现对森林温度、森林湿度和森林光照强度的采集监测.系统的采集终端节点硬件结构如图2所示,由于系统工作在野外环境,所以使用前通过防护箱对节点进行封装,节点实物和封装如图3所示.

图2 系统硬件结构框图

图3 节点实物与节点电路封装图

2.2 传感器模块

光照强度采集模块采用的主要元件是BH1750FVI.BH1750FVI是一种用于两线式串行总线接口的16位数字型光照强度传感器.它具有较高的分辨率,可以测量较大变化范围的光照强度.

温湿度采集采用SHTxx系列单芯片温湿度复合传感器,该传感器本身含有已校准数字信号输出.该传感器内部同时包括测温和测湿元件,具有14位的内置A/D转换器,和串行接口电路无缝连接.系统采用的是SHT11温湿度传感器测量森林温湿度,SHT11通过内部的测温和测湿元件产生温湿度信号,经过放大,送至A/D转换器进行模数转换、校准和纠错.

2.3 无线通信模块

无线射频收发芯片nRF905工作于433MHz的ISM频段.该芯片内部含有功率放大器、频率合成器、调制器和晶体振荡器等功能模块.芯片的通信频道和输出功率可以通过编写软件程序自行修改,采用曼彻斯特格式进行编码和解码.nRF905在和微处理器进行数据传输式通过SPI接口实现,nRF905具有ShockBurstTM发送和接收两种工作模式,以及关机和空闲两种节能模式.

3 无线自组网过程

3.1 协议栈结构及功能

无线自组网协议栈的结构分为四层,由下至上分别为物理层、数据链路层、网络层和应用层[5].协议栈的各层主要功能如下:

协议栈的最底层叫做物理层,物理层主要完成无线通信模块与MCU之间的数据通信.无线通信模块的硬件地址匹配、信道监测等操作都是在这一层自动完成.本系统通过LPC2148芯片的GPIO口来实现nRF905的读写时序,从而实时读取传感器节点采集的数据.

数据链路层主要完成对信道的冲突检测和数据解析,采用CSMA/CA协议实现信道的冲突检测.每个传感器节点在发送数据之前,若检测到信道被占用,则需要随机等待一段时间之后再进行检测,当检测到信道空闲时才开始发送数据[6].

网络层主要完成无线自组网、路由选择和维护等工作.通过该层协议,本系统可以自动完成新节点入网、路由选择和路由维护等操作.

应用层主要作用是当发送数据时,会自动启动数据链路层和网络层的相应协议添加节点信息和网络信息,然后将这些信息分装成帧,之后通过无线通信模块将封装好的数据发送出去.当接收到数据后,首先对收到的数据包进行解析,然后根据数据解析的结果选择响应方式.

3.2 CSMA/CA实现过程

当无线传感器网络中有多个节点要同时发送数据时,发生数据冲突的可能性会增大,因此,在无线自组网协议站数据链路层中采用了CSMA/CA控制协议,以减少数据分组发送的冲突,从而提高信道利用率[7].

通过nRF905无线通信模块来模拟CSMA/CA协议的载波监听功能.当nRF905无线通信模块处于接收模式时,首先监听信道是否有载波,若有则将CD引脚置高,从而有效地避免了发送方在相同频率下可能发生的数据冲突.因此,当节点要发送数据时,可以在接收模式下通过检测CD引脚的高低来判断信道的忙闲状态[8].当CD引脚为低电平时,则说明此时信道空闲,可以发送数据;反之,要先随机退避一段时间,之后再次检测CD引脚,直到其为低电平时才向外发送数据.

3.3 自组网协议设计

系统采用多跳的无线传输网络是通过自定义的自组网协议实现.在自组网协议中使用不易产生误码干扰字符组合0x55和0xAA来表示整个自定义数据包的前导码.当接收到新数据包后,通过检查结束符是否匹配前导码来判断接收的新数据包是否完整.无线自组网中传输的帧类型主要包括:入网请求帧、入网应答帧、查询帧、数据帧等几种类型.其中,帧类型使用一个字节来表示的,具体情况如表1所示.

表1 帧类型格式

节点信息主要包括网络 ID、节点地址、网络级别以及当前节点电池电量等.每一个汇聚节点通过各自的网络 ID来进行区分,并且各自都可以组建一个新的网络.当节点要向外发送数据时,会在数据帧中通过携带自己的节点号来作为数据标识.节点的网络级别由上一级节点动态分配,每个传感器节点都实时监测电池当前电量,并将电量信息封装在数据帧中向外发送.

路由信息主要包括目的节点地址,下一跳节点地址,当前跳数以及在传输过程中所经过的中间节点地址.当每个节点接收到数据包后,先用自身的节点地址和接收到该数据包中目的地址进行比较,然后确定将数据接收或者进行转发.本系统采用的无线传感器网络是基于多跳模式的,而每个节点传输数据可能要通过一个或多个中间节点来转发才能到达目的节点,所以要利用中间节点地址来记录已经过的节点,并根据当前跳数来确定下一跳地址.

在传输过程中检测接收的数据包是否发生错误是通过校验码实现的.当接收方接收到数据包之后,首先对数据包中携带的数据进行计算,然后与其携带的校验码进行比较,若一致则处理该数据,否则将直接丢弃该数据包.

3.4 自组网流程

首先由传感器节点通过广播方式主动申请加入网络,然后由汇聚节点负责组建新的网络.当系统上电初始化后,汇聚节点将自动进入接收状态,以等待接收网络内其他传感器节点的入网请求.当传感器节点上电之后会主动向外广播入网请求帧,并与距离最近已入网的节点进行通信,逐跳将入网请求帧传至汇聚节点,等待汇聚节点入网应答.其中,已入网成功的节点可以接收并转发其他未入网节点的入网请求帧.所以,整个无线传感器网络的组建工作是从汇聚节点开始,由传感器节点发起,逐级向下延伸的.

当有新节点要加入已经组建成功的网络时,无线自组织网络会自动接收新节点的入网请求,并将其信息添加到汇聚节点的网络信息表中.当一个新节点要申请入网时,首先要以广播形式向外发送入网请求帧,然后自动进入接收状态,等待相邻已入网节点的应答.在其通讯范围内的其他节点都会接收到该广播信息.

3.5 通信协议设计

无线传感器网络的大部分功耗被无线通信模块占据,因此需要选择一种合适的通信协议及其路由算法、时间同步算法和睡眠模式调度策略,来达到降低网络功耗和传输延迟的目的,进而优化资源配置[9-10].系统采用的通信协议在传统的洪流水协议之上做了部分改进:在传感器节点发送的数据包内加入了自动编号机制,每当发送一个数据包之后编号自动增1,同时建立编号登记表.当汇聚节点收到新的数据包之后首先检查自身的编号登记表,如果已经收到过该数据包则不进行转发,否则先进行登记后再进行转发.这种机制不仅降低了测量面积大,监测节点过多造成的网络阻塞,还在一定程度上抑制了广播风暴,通畅了网络传输.

3.6 时间同步设计

在汇聚节点正确收到数据之后,以广播方式向网络中各个路由节点发送时间同步应答信号.每个路由节点收到信息后进行解析,然后根据解析内容调整传感器节点的定时器,以便进行时间同步,随后每个节点进入休眠模式以节省能耗[11].从而保证了各个路由节点与汇聚节点之间的时间同步,有效的抑制了间隙时间的叠加,从而降低了网络丢包率.

4 系统软件设计

传感器节点的软件设计采用模块化设计方式[12-13],由节点初始化模块、数据采集模块、无线传输模块、数据处理模块、数据校验模块和数字显示模块等组成.系统的总体软件结构如图4所示,传感器节点每经过自定义的时间频率进行采样,系统默认采集时间是30 min,在每次完成数据信息采集后,立即关闭采集节点电源,从而减少了功耗,并同时设置一个定时器,在定时时间内向汇聚节点发送采集的信息数据[14-15].当收到汇聚节点发来的同步信号后,传感器节点将会进入休眠状态,直到定时时间到后才开始新一轮的数据采集.

图4 系统总体软件结构

实时监测界面使用Fusion Widgets实时监控图表形式面向用户,分别展示温度、湿度、光照强度3个生境因子的实时监测数值.历史监测数据以列表形式按时间段选择显示采集时间、温度、湿度、光照强度4个信息值.实时监测界面如图5所示,历史监测数据界面如图6所示.

系统以ArcGIS Server 9.3为GIS二次开发环境,通过 WebGIS平台实现展现监测点信息.WebGIS实现过程中使用Arcgis api for flex进行开发.通过BlazeDS技术从java端获取数据库中的节点监测信息,包括监测点是否异常工作,采集时间、温度、湿度、光照强度等信息.WebGIS展现监测点信息界面如图7所示.

图5 实时监测界面

图6 历史监测数据界面

图7 WebGⅠS展现监测点信息

5 实验及结果分析

5.1 节点通信距离测试

通过测试不同通信距离条件下的误帧率大小的方式来测试系统的整体通信质量.测试前先将nRF905的发射频率设置为433 MHz,工作电压为直流5 V,传输速率和发射功率分别设置为9 600 bps和10 dBm,其测试结果如表2所示.

表2 通信距离与误帧率记录结果

从表2可以看出,在50 m测量范围之内误帧率变化不大,一旦超出50 m,误帧率显著上升,所以各个节点应当布置在通信半径小于50 m的范围之内为最佳选择.

5.2 网络丢包率测试

实验中布置了9个传感器节点、4个路由传输节点和1个汇聚节点,汇聚节点放置于本地监测站内,路由节点处于传感器节点和汇聚节点之间,负责数据的转发[16].每隔10 min传感器节点采集一次数据,发送一次数据后等待时间同步信号进入休眠模式.连续监测10 d,经测试,整个网络的平均丢包率为0.66%,因此该系统通信可靠,网络丢包测试结果如表3所示.

表3 网络丢包率测试结果

6 结语

森林生境因子自动采集系统通过由SHT11温湿度传感器和BH175DFVI光强传感器组成的传感器节点获取森林温度、湿度和光照强度,通过路由节点转发,由汇聚节点汇总数据,并通过RS232串口通信将监测点数据传输至监测站PC,实现生境因子的实时在线监测.研究并实现了基于nRF905模块的无线传感器网络组网与通讯设计,并通过供电电路设计实现低功耗传输,整个传输过程使用无线传输方式,扩大了传输范围.最后进行了完整的测试实验,测试结果表明测量结果可靠,系统运行稳定,达到了设计要求.克服了传统森林信息调查过程中森林生境因子获取手段单一、动态变化不及时、数据精度低等缺点,通过软件处理提高了生境因子的采集速度和测量精度,并运用数据库技术将大量数据存储,从而提高了该系统的实际应用价值.

[1]翟继强,王克奇.无线传感器网络在林火监测中应用[J].东北林业大学学报,2013,41(8):126-149.

[2]ZHANG Q,YANG X L,ZHOU Y M,et al.A wireless solution for greenhouse monitoring and control system based on ZigBee technology[J].Journal of Zhejiang University Science A,2007,8(10):1584-1587.

[3]邹赛,刘昌明,李法平.基于无线传感器网络的水环境监测系统[J].传感器与微系统,2010,29(9):104-109.

[4]KIM Y,EVANS R G,IVERSEN W M.Evaluation of closed-loop site-specific irrigation with wireless sensor network [J].Journal of Irrigation and Drainage Engineering,2009,135(1):25-31.

[5]朱林,吴战国,李琦.工业远程监测系统中自组织网络结构研究与实现[J].计算机测量与控制.2012.20(1):15-24.

[6]孙利民,李建中,陈渝,等.无线传感器网络[M].北京:清华大学出版社,2005:17-23.

[7]蔡义华,刘刚,李莉,等.基于无线传感器网络的农田信息采集节点设计与实验[J].农业工程学报,2009,25(4):176-178.

[8]薛敏迪.基于nRF905的低功耗温湿度无线测量系统[J].现代电子技术,2010,33(1):135-138.

[9]李莉,张彦娥,汪懋华,等.现代通信技术在温室中的应用[J]. 农业机械学报,2007,38(2):195-200.

[10]JENNIFER Y,BISWANATH M,DIPAK G.Wireless sensor network survey[J].Computer Networks,2008,52(12):2292-2330.

[11]王卫星,罗锡文,孙道宗,等.茶园信息采集无线传感器网络节点设计[J].农业工程学报,2011,27(5):169-173.

[12]黄建清,王卫星,孙道宗,等.基于无线传感器网络的水产养殖水质监测系统开发与实验[J].农业工程学报,2013,29(4):183-190.

[13]GOLDHAMER D A, FERERESE.Irrigation scheduling of almond trees with trunk diameter sensors[J].Irrigation Science,2004,23(1):11-19.

[14]刁智华,陈立平,吴刚,等.设施环境无线监控系统的设计与实现[J].农业工程学报,2008,24(7):146-150.

[15]BURRREL J,BROOKE T,BECKWITH R.Vineyard computing:sensor networks in agriculture production[J].Persvasive Computing,2004,3(1):38-45.

[16]题原,宋飞,刘树东,等.基于nRF905的无线温湿度检测与传输系统设计[J].化工自动化及仪表,2011,38(4):404-407.

猜你喜欢
数据包路由无线
基于Jpcap的网络数据包的监听与分析
《无线互联科技》征稿词(2021)
铁路数据网路由汇聚引发的路由迭代问题研究
无线追踪3
基于ARM的无线WiFi插排的设计
SmartSniff
探究路由与环路的问题
ADF7021-N在无线寻呼发射系统中的应用
基于预期延迟值的扩散转发路由算法
PRIME和G3-PLC路由机制对比