张慧颖
摘要:针对目前农田环境监测中无线化、智能化的特点,设计一种无线监测系统。系统的主要构成部分是:传感节点、嵌入式网关、3G模块和上位机软件。无线传感节点由承载ZigBee技术的CC2530芯片配合传感器设计,完成对农田环境信息的采集和传输;传感器节点通过ZigBee构成的无线网络将采集到的数据发送到协调器节点;利用ARM设计嵌入式网关,并采用3G模块实现通过3G网络将数据传送到手持设备或者监测中心。上位机系统采用Labview2011平台实现,做到监测界面简洁化。测试结果表明,ZigBee技术下的农田监测系统具有更好的实时性和准确性,且功耗低,有更广泛的应用前景。
关键词:无线传感节点;ZigBee;ARM;3G;Labview2011;农田环境监测
中图分类号: TP274 文献标志码: A 文章编号:1002-1302(2015)10-0487-04
近年来,很多国家将电子信息技术和农业生产相结合,形成了以信息技术为支撑的新型农业,即“精准农业”。精准农业包含10个系统,其中农田信息采集系统是一个重要方面,它结合了现代化GPS、GIS、RS技术和农田间信息采集技术,面对广阔农田覆盖面积和环境多变等不确定因素,可以准确获取农田信息,对农业生产有着重要的作用。在当前农田信息采集系统中,大多是采用有线通信方式进行信息传输,这种传输方式具有抗干扰能力差、不易布线、组网方式不灵活等缺点;采用传统的无线传输模块,存在延迟时间长且误码率高等缺点,不能完全满足精准农业需求。为了解决上述系统的弊端,本研究提出基于ZigBee技术和3G技术相结合的新型无线网络方案,在大范围农田耕作区放置传感器节点,采集农田的参数信息,利用ZigBee无线通信技术构建无线传感网络将采集的信息传输到协调器节点,通过3G网络将数据信息传输到监测中心,便于管理人员对农田环境的实时监测,实现智慧农业生产。
1 系统整体结构
系统主要由传感器节点、ZigBee无线通信网络、嵌入式网关、3G网络和监测中心等几部分构成。传感器节点主要完成农田信息的采集,以CC2530为核心的ZigBee无线通信网络完成对环境数据的发送和传输。嵌入式网关集成3G模块,将来自于协调器节点的数据通过3G网络上传至远程监控中心或手持设备,实现ZigBee网络与网络间信息交互。监测中心或手持设备从ARM网关接收信息,完成数据的分析、处理、存储和显示及查询等功能,并可实现通过上位机发送指令控制底层传感器节点,完成远程参数监测。系统框图如图1所示。
空气温湿度、光照度、土壤温湿度、CO2 浓度以及土壤pH值传感器结合CC2530构成采集节点,实现对农田环境信息的采集及传输;根据元胞蚁群算法对路由节点进行优化选取最优路径,将采集数据通过ZigBee网络向协调器节点传送。ZigBee网络选取树状拓扑结构。利用嵌入式网关将协调器汇聚来的数据通过3G网络转送至监测中心或手持设备。监测中心或手持设备接收信息,完成数据的分析、处理、存储、显示和查询等功能,并且实现通过上位机发送命令控制底层采集节点等功能。上位机软件设计采用Labview2011平台实现,显示界面简洁、友好[1]。
2 硬件设计
系统硬件电路主要由CC2530配合传感器构成的无线传感节点、协调器节点、S3C2440构成的嵌入式网关和3G通信电路构成。农田信息的采集、处理和发送由无线传感器节点完成;协调器节点又称为汇聚节点,主要完成ZigBee网络的组建和信息的汇集;系统远程监控的实现是通过3G网络将来自于协调器节点的数据传送到上位机[2]。
2.1 传感节点设计
无线传感节点完成对农田环境如空气温湿度、光照度、土壤湿度、土壤pH值和CO2浓度等信息采集。传感器模块的选取直接影响到系统性能指标,因此,尽可能选取数字化传感器,以降低系统能耗、提高测量精度和范围。
系统中,空气温湿度采用数字化传感器SHT15实现,SHT15自带14位A/D,采用I2C总线接口传输数据,将CC2530的P0-0和P0-1与SHT15的DATA和SCK引脚相连完成温湿度的采集。对SHT15外配封装保护套,做到防水、防尘处理。光照度检测采用内置16位模式转换器的环境光传感器BH1750,它能够直接输出数字信号,接口方式是I2C总线接口,测量量程和精度可达1~65 535 lx。将BH1750的SCL和SDA与CC2530的P0-2和P0-3连接实现光照度的检测。土壤湿度传感器采用简易式SEN0114,其表面镀金处理,加强了导电性和抗腐蚀性,SEN0114仅3个引脚,输出的是模拟电压信号,由于CC2530内部自带12位AD,将SEN0114与CC2530的P0-4口相接,即可采集出土壤的湿度。采用红外式二氧化碳传感器C20完成农田CO2浓度的检测。该传感器功耗低,测量范围宽,精度好,采用数字RS232方式进行通信。温湿度检测电路、光照采集电路如图2所示。
2.2 ZigBee无线通信模块
选取美国TI公司CC2530射频芯片来完成ZigBee网络组建。该芯片兼容2.4 GHz、IEEE802.15.4协议和ZigBee技
术的片上技术,CC2530具有多种不同运行模式,而且各种运行模式相互转换的时间短,能够满足系统的低功耗要求。内部集成了12位AD,与控制器之间通信采用串口进行数据的传输;可将传感器与2530构成的路由节点直接相连,进行数据的采集并完成数据的无线传输。协调器节点是用来建立和控制ZigBee无线网络,并将采集到的数据通过网关上传到监控中心分析与管理。在电路结构上,协调器节点和路由节点是一致的,但协调器节点无需外加传感器模块。由于农田范围广,设计时射频前端增加CC2591进一步提高ZigBee网络覆盖范围,将传输距离从传统的75 m扩展到1 km以上,覆盖范围满足现场需求[3]。电路如图3所示。endprint
2.3 嵌入式网关设计
设计中,根据定义的通信协议格式将数据打包,嵌入式网关是通过3G网络把处理好的数据传输到监测中心和手持设备。嵌入式网关主要由ZigBee协调器节点、ARM中央处理器、GPRS模块和3G 模块构成。中央处理器选用三星公司的S3C2440芯片,该芯片运行速度快可以更好地满足系统实时控制的需求。内部集成3个串口,配有SD卡控制器,两路全速USB主设备芯片,可以方便进行外围设备扩展。GPRS模块选用双频 GSM/GPRS 模块SIM300,内嵌强大的TCP/IP协议栈,通过AT指令进行控制[4]。
2.4 3G模块设计
3G模块是系统的重要组成部分,主要完成农田信息的无线发送和通过互联网与监测中心的信息交互。3G模块选取华为公司的EM660,该模块网络类型是CDMA2000 EVDO(3G);内置TCP/IP协议栈并支持标准AT指令集和标准华为扩展AT指令集;该模块具有串口、SIM卡和配有USB2.0。EM660在串口数据传输形式上采用透明数据传送形式,可将串口上的数据直接转换成TCP/IP形式并发送,所以EM660与S3C2440通过串口相连实现数据传输,连接框图如图4所示[5-6]。
3 软件设计
系统的软件程序包括ZigBee无线数据收发、3G模块子程序、下位机与上位机通信子程序以及上位机处理软件程序。在ZigBee无线数据收发过程中,主要包括路由节点子程序、协调器节点子程序和检测终端节点子程序构成。程序编写在ARM平台下完成,采用C语言进行编写与调试,采用模块化编程思想进行设计;无线数据收发程序采用CC2530兼容的协议栈Zstack2007的平台下设计应用程序;上位机软件采用图形化语言Labview2011设计,实现人机交互界面简洁及远程控制。
3.1 路由节点算法设计
系统进行信息采集时,传感器节点周期性地采集监测数据并且不断地向Sink节点汇集,但是传感器节点能量有限,因此要选择能量消耗小的最优路径进行数据传输。设计时,对原有算法进行优化,将网络中的节点映射成元胞蚁群中的元胞,通过改进蚁群信息素更新模型,使路由节点在信息采集与休眠状态间进行转换。
CACO算法(元胞蚁群优化算法)将将传感器的n个采集节点映射成n个元胞,每个元胞节点ni存有其所有相邻节点的剩余能量值、禁忌表Tabu、节点距离和信息素等信息,将M只蚂蚁放在n个元胞节点上,每只蚂蚁通过计算选择概率在临近范围内对下一个节点nj进行路径选择。选择下一个节点的概率如公式(1):
pkij=τaijηβij∑sTabukτaisηβis jTabuk
0 其他。
(1)
式中:Tabuk称为禁忌表,表示蚂蚁所走过的节点;ηij代表节点从ni转移到nj的启发信息,ηij=lijdij,lij表示链路强度;τij表示t时刻从ni转移到nj的路径上残留的信息素,τij=Eλijdγij,λ、γ是权重因子,Eij表示节点nj在t时刻剩余能量,dij代表节点从ni转移到nj的距离。当每只蚂蚁走完1步或者完成1次搜索后,需要各条路线上的信息进行更新,找到最优的Sink节点。在t到t+Δt时刻,更新信息公式如下:
τij(t+Δt)=(1-ρ)τij(t)+∑mk=1Δτkij(t)+wi(t)。
(2)
式中:ρ是信息素挥发系数,与网络拓扑变化的频度有关,ρ∈[0,1);表示元胞状态系统,∈[0,1);Δτij(t)表示Δt时间间隔上路径l上的信息素浓度增量。元胞蚁群优化算法流程如图5所示。
3.2 协调器节点流程设计
协调器节点的主要功能是建立、连接网络,从路由节点接收数据,并根据要求发送控制命令,实现相邻节点间的通信。当路由节点被协调器节点允许加入网络后,可以将处理后的数据传输给协调器节点。在设计时,考虑到低功耗要求,在协调器节点和路由器节点间没有信息交换时,传感器节点进入睡眠模式,每隔几秒对农田环境进行轮流采集,采用中断方式唤醒休眠节点。图6为软件设计流程示意图。
3.3 3G软件程序设计
程序设计时,采用TCP协议栈,使用Socket编程思想实现3G网络中的传输。调用Socket()创建套接字,将服务端的IP地址和端口号填充到该Socket结构体,并且建立套接字的连接,服务器调用accept()函数对客户端的连接请求进行接收,数据传输完成后,关闭以上连接。部分程序代码如下:
/*建立socket连接*/
int socket_connect(char*addr){
int sock_fd;
Struct sockaddr _in their addr;
Memset(&their_addr,0,sizeof(struct sockaddr_in));
if(sock _fd=socket(AF_INET,SOCK_STREAM,0)==-1);
{perror(“socket”);exit(1);}
Their_addr.sin_familly=AF_INET;
Their_addr.sin_addr.s_addr=inet_addr(addr);
If(connect(socket_fd,(struct sockaddr*)&their_addr,sizeof(struct sockaddr))==-1){perror(“connect”);exit(1);}
Return sock_fd;}
3.4 监测界面设计
上位机软件程序采用图形化语言Labview2011进行开发,利用其强大的图形化编程功能和丰富的库,可将采集到的农田信息传输到监控中心,并对农田环境实时监控与管理。工作人员登录监控界面可以查询到历史数据和实时显示的监测数据,并可进行参数的设置并提示报警,还可以实现上位机发出指令控制下位机等功能,可以为用户提供一个简单的信息浏览和数据查询平台。endprint
4 系统测试结果
4.1 数据传输测试
当协调器完成组网,传感器节点加入网络后,每隔5 s向协调器发送1次数据,协调器通过串口发送给监测中心;当然,监控中心通过3G模块下达指令到中央控制器,利用串口发送至协调器,协调器通过ZigBee网络发送至传感器终端节点;因此对数据的发送与传输的正确率要求是很高的,分别在1、5、12、24 h内对数据传输进行测试,测试结果表明,该系统接收数据正确率高达99.89%。
4.2 系统监测试验
为了测试系统的稳定性和正确性,选取吉林市九站农田种植区对系统进行测试。在农田作业区每隔100 m放置1个传感器节点,并分配固定的ID号,农田入口处放置1个协调器节点。ZigBee模块供电电源为2节1.5 V干电池。在监测工作站内,PC机及手持设备通过3G网络与下位机相连。图7给出了在某一时段的实际测量结果。
由图7可看出,该系统可直观清晰地监测农田的环境信息,有利于工作人员及时作出判断;同时,系统也可以方便地通过用户界面向下位机发出控制指令。
5 结论
本研究从农田环境实际出发,从组网灵活、低功耗和可靠性等角度考虑,以S3C2440微处理器作为控制核心,将ZigBee技术与3G技术相结合构成农田无线传感网络,实现了农田信息的无线监控,以保证作物在最适合的环境下生长,有效地节省了人力和物力,有利于推进农业信息化的发展。将系统测试结果与传统仪器测量值进行比较表明,该系统测量准确、操作简单、实时性好、稳定性好、网络覆盖范围大,做到了对农田环境的实时准确监控,推进了精准农业生产。
参考文献:
[1]李丽丽,施 伟. 温室大棚智能温湿度控制系统的设计与实现[J]. 湖南农业科学,2011(21):135-138.
[2]黄家露,杨 方,张衍林. 基于CC2430的温室无线传感器节点设计与应用[J]. 华中农业大学学报,2013,32(5):119-123.
[3]许 峥. 基于ZigBee技术的田间信息采集研究[D]. 保定:河北农业大学,2013.
[4]刘媛媛,朱 路,黄德昌. 基于 GPRS 与无线传感器网络的农田环境监测系统设计[J]. 农机化研究,2013(7):229-232.
[5]高 坤,汪 滢. ZigBee和3G的远程无线测光系统设计[J]. 单片机与嵌入式系统应用,2014,14(3):66-69.
[6]姜舒文. 基于3G网络的玉米生长环境监测系统的设计与实现[D]. 长春:吉林农业大学,2012.
[7]付立华,王 刚,张晓玫. 基于LabVIEW的温度监测系统及软件设计[J]. 河南工程学院学报:自然科学版,2014,26(1):67-70.
[8]韩华峰. 农业环境信息远程监控与管理系统设计[D]. 北京:中国农业科学院,2009.阴国富,朱创录. 基于物联网的精密温室环境管控系统研究[J]. 江苏农业科学,2015,43(10):491-494.endprint