APP下载

智能灌溉系统的无线传感器网络设计

2013-07-26程小辉

自动化仪表 2013年2期
关键词:温湿度程序设计灌溉

邓 昀 程小辉

(桂林理工大学信息科学与工程学院,广西 桂林 541004)

0 引言

21世纪,水已成为一种稀缺资源,水资源问题已不仅仅是简单的资源问题,更是关系到国家经济、社会可持续发展和长治久安的重大战略问题。目前,国内用于农业灌溉的水资源浪费非常严重。因此,在农业灌溉中引入无线传感器网络(WSN)技术,实时监测农作物生长的土壤墒情和外部环境。通过监测数据指导农业生产,结合智能灌溉技术实现定时、定量的精准灌溉,可以大幅度节省农业生产中生产资料的消耗,提高水资源利用率,缓解水资源紧张问题。

本文介绍了智能灌溉系统的无线传感器网络设计方案。该方案利用节点网络的各种传感器实时监测农作物生长的土壤墒情和外部环境;通过无线通信网络将监测到的有效信息传送到系统管理中心;系统管理中心根据监测数据,采用相应的灌溉措施实现大面积精准灌溉。该设计方案实现了数据采集、传感器组网、数据无线传输、网络数据管理和监控等功能。

1 系统架构及硬件设计

系统的架构如图1所示。

图1 系统架构图Fig.1 Architecture of the system

系统按功能分为系统管理中心和无线传感器网络覆盖区两大部分。系统管理中心负责对接收的数据进行灌溉单元划分、分类、聚合和存储,确保各个灌溉区的汇聚节点和数据采集子节点所在地的数据可以随时查阅,确定有效的灌溉方式。

无线传感器网络覆盖区由网络主节点和分割为数块的相对独立的灌溉单元组成。每个灌溉单元设有一个或多个网络汇聚节点(相当于传输基站)和数目不等的传感器数据采集子节点。子节点通过与其连接的各种传感器(空气温湿度、光照强度、土壤温湿度、二氧化碳含量传感器)采集监测数据。

无线传感器网络通信方式采用主从模式,对每个网络节点进行统一编址,保证其地址的唯一性。结合分群路由协议中的PEGASIS协议,将整个网络划分为多层,每层分为多个子网络。子网络采用时分多址(TDMA)通信技术,使地址与节点相对应,时间间隙与节点通信相连接。

系统子节点由供电模块、无线通信模块、微控制器模块和传感器模块组成,其结构如图2所示。

图2 系统子节点结构图Fig.2 Structure of the system child node

子节点通过传感器模块和微控制器模块实现对土壤温湿度、空气温湿度、光照强度和二氧化碳浓度等信号的采集和处理,并把处理过后的标准数据通过无线通信模块发送给汇聚节点。微控制器模块选用的MCU是ATMEL公司生产的 CMOS 8位单片机AT89S52,包括微控制器最小系统单元、实时时钟单元和外部数据存储器单元。

无线通信选用基于RFCC1101的无线通信模块。该模块从结构上分为两部分:RF射频电路和微控制器电路。其设计结构如图3所示。

图3 无线通信模块设计结构图Fig.3 Design structure of the wireless communication module

汇聚节点由供电模块、无线通信模块以及微控制器模块构成,功能为:①收集所属网络子群的子节点传感器采集的数据;②中转所属网络收集的数据,并发送给主节点或下一级汇聚节点;路由外群的采集数据,此时相当于一个特殊的路由设备。无线传感器网络的中转路由级数可以根据具体情况设定,所设计的无线通信模块能提供256个通信信道,则两极中转路由就能支持255×255共65025个子节点,基本上可以满足无线传感器网络系统节点的需求。

主节点由微控制器模块、供电模块、无线通信模块与通信接口模块构成。其中,通信接口模块包括USB接口与串行接口,供电模块采用系统管理中心的上位机USB接口供电。主节点负责收集所有汇聚节点的数据包,并通过串口或USB接口把数据传递给系统管理中心[1-2]。系统主节点结构如图4所示。

图4 系统主节点结构图Fig.4 Structure of the system master node

2 系统软件设计

无线传感器网络软件程序总体设计结构如图5所示,主要包括子节点程序设计、汇聚节点程序设计、主节点程序设计三大部分。

图5 程序总体设计结构图Fig.5 Overall design structure of the program

2.1 子节点程序设计

子节点主要完成对监控目标周边环境数据的采集,并与汇集节点建立通信发送采集数据。系统通过定义3个事件即无线通信事件、数据采集事件和休眠事件来完成以上任务。无线通信事件,与汇聚节点联网通信,传递传感器采集数据与节点的路由信息;采集事件,完成各节点传感器的数据采集、预处理,并通过I2C总线存储到外部存储器24C02中;休眠事件,使子节点进入休眠状态,子节点程序流程图如图6所示。

图6 子节点程序流程图Fig.6 Flowchart of the child node program

系统一共有4路传感器采集信号,分别采集空气温湿度、土壤温湿度、光照强度和二氧化碳浓度。

数据采集程序设计把空气温湿度传感器定义为传感器1、土壤温湿度传感器定义为传感器2、光照强度传感器定义为传感器3、二氧化碳浓度传感器定义为传感器4。因此,系统定义了一个传感器启动控制字节,以其中的4位作为4路传感器的启动标志位,由4路低功耗的TQ2-4.5继电器控制导通,分别接单片机的P2.0~ P2.3口。

传感器启动控制字节格式定义如表1所示。

表1 控制字节格式定义Tab.1 Definition of control byte format

子节点数据采集程序设计流程图如图7所示。

图7 数据采集程序设计流程图Fig.7 Design flowchart of the data acquisition program

在写入存储器之前,将数据以一定的数据格式进行封装,便于系统管理中心的综合管理。定义采集数据的存储和传输格式如表2所示。存储内容包括节点地址、采集时间和传感器采集数据。采集数据格式定义如表3所示。

表2 数据存储和传输格式Tab.2 Storage and transmission formats for data

表3 采集数据格式定义Tab.3 Definition of collected data format

2.2 汇聚节点程序设计

汇聚节点功能为:与所属网络下的子节点建立通信并收集所有子节点的传感器采集数据;把收集到的子节点数据发送给主节点;路由网络群外的数据采集。据此可以在节点应用层定义一个用户任务,在任务中定义两个事件,分别是无线通信事件与休眠事件。无线通信事件,接收和发送数据;休眠事件,如果主节点没有采集任务,汇聚节点与子节点都将处于休眠状态。

汇聚节点与子节点采用点对多时分多址的通信方式,子节点的采集数据以单个数据段的形式发送到汇聚节点。

汇聚节点是通信子网络的群首,采用TDMA通信技术,分时与下属子节点通信,并把收集数据分层(分级)路由传递给主节点。具体的TDMA时间间隙由无线通信的波特率与数据传输量决定。

本系统无线通信波特率设置为19200 bit/s,数据传输量包括4个传感器采集数据,数据量少于100 B,点名应答时间测试为10 ms,数据传输时间测试为40 ms,测试结果建立在所有子节点同构的基础之上。此外,使用的传感器类型和数目必须一致,否则TDMA的时间间隙要根据不同的节点进行具体划分[3]。

汇聚节点接收到采集节点的数据后要以一定的格式存储,以便主节点接收和管理。数据存储格式为:汇聚节点ID+时间(时:分)+收集子节点的数目 +收集子节点采集数据。当汇聚节点向某一采集子节点发送请求信号时,采集子节点应向汇聚节点发送一个应答信号,子节点对汇聚节点发送请求时也如此。

汇聚节点通信程序设计流程如图8所示。

图8 汇聚节点通信程序设计流程图Fig.8 Design flowchart of the aggregation node communication program

2.3 主节点程序设计

主节点从功能上说其实是一个最大的汇聚节点,它大部分通信程序设计与汇聚节点的通信程序设计一致,在本系统中主要多了串口/USB通信程序和液晶显示程序。串口/USB通信把主节点的存储数据传输给系统管理中心上位机上,液晶为传感器数据提供可视化显示。主节点的工作模式分两种:一种是上位机发送指令,命令采集数据;另一种是主节点自己内部操作,可通过按键启动采集程序。在没有打开系统上位机的情况下,可以通过第二种模式查看目标监测数据。

2.4 节点网络通信的低功耗设计

在无线通信模块中,由于RF芯片CC1101内部集成的功率放大器可以通过编程控制,因此子节点、汇聚节点与主节点在联网时可以遵循一定的通信原则。功率放大器由一个8位寄存器控制,从最小的00000000H到最大的11111111H,一共可以分为256个等级,等级越大,无线通信模块发射功率越大,通信距离也就越远,反之亦然。系统一共设了8个等级,具体等级分配如表4所示[4-5]。

表4 节点联网输出功率等级表Tab.4 Output power levels networking nodes

采用这样的联网方式能大大降低网络通信能量损耗。节点搜索网络时从最低等级开始,直到联入到它相应的网络;汇聚节点与字节、主节点与汇聚节点联网时也是如此,都是以搜索到网络,或者搜索到最远的节点时所用到的最大等级为该节点的联网等级。即能用低级的输出功率稳定通信,就不会采用更高的功率等级通信。

在一段时间内,随着相关节点的丢失、损坏或者网络群首的更替,每个节点的联网等级可能会相应有所变化,但是不能超出该节点的最大联网等级,也就是最大发射功率[7-8]。

3 结束语

本文提出了一种新型的基于智能灌溉系统的无线传感器网络设计方案。该方案把无线传感器网络与目前广泛应用的灌溉技术相结合,利用节点网络的各种传感器实时监测农作物生长的土壤墒情和外部环境,通过监测数据为智能灌溉系统的精准灌溉提供判断依据。该技术的应用可以大幅节省农业生产中生产资料的消耗,缓解水资源紧张问题,具有一定的经济效益和社会效益。

[1]王冉,徐本崇,魏瑞成,等.基于无线传感网络的畜禽舍环境监控系统的设计与实现[J].江苏农业学报,2010,26(3):562-566.

[2]曹元军,王新忠.基于作物冠层温度变化的无线传感器网络灌溉系统的研究[J].农机化研究,2010(9):126-129.

[3]Rhee I,Warrier A,Min J.DRAND:distributed randomized TDMA scheduling for wireless Ad-hoc networks[C]//Proceedings of IEEE Transactions on Mobile Computing,2009,8(10):1384 -1396.

[4]张增林,郁晓庆.基于无线传感器网络的土壤信息采集系统[J].节水灌溉,2011(12):41-43.

[5]吕涛,周燕媚.基于2.4G的检测数据无线传输模块设计[J].仪器仪表学报,2006(6):2062-2064.

[6]刘卉,汪懋华,王跃宣,等.基于无线传感器网络的农田土壤温湿度监测系统的设计与开发[J].吉林大学学报:工学版,2008,38(3):604-608.

[7]王粉花,年忻,郝国梁,等.物联网技术在生命状态监测系统中的应用[J].计算机应用研究,2010,27(9):3375 -3377.

[8]何世钧,陈中华,张雨,等.基于物联网的海洋环境监测系统的研究[J].传感器与微系统,2011,30(3):13 -15.

猜你喜欢

温湿度程序设计灌溉
苍松温室 苍松灌溉
苍松温室 苍松灌溉
苍松温室 苍松灌溉
医学专业“Python程序设计”课程教学改革总结与思考
苍松温室 苍松灌溉
基于Visual Studio Code的C语言程序设计实践教学探索
基于AT89C51的数字型蚕用温湿度计的设计
从细节入手,谈PLC程序设计技巧
基于温湿度控制的天气预测装置
基于DSP和μcos的温湿度检测系统的设计