基于物联网技术的农作物病虫害自动测报系统
2015-06-15陈光绒李小琴
陈光绒 李小琴
摘要:介绍了一种基于ZigBee网络的农作物病虫害自动测报系统。该系统由1个网关、若干终端分机及计算机信息发布系统组成,网关安装有ZigBee模块(协调器)和GPRS模块,利用GPRS接收远端服务器的数据采集或清零指令,并通过ZigBee网络向终端分机采集数据或实现数据清零功能;终端分机安装有ZigBee模块(路由器)和4个诱捕器,每个诱捕器有2路红外传感器,检测进入诱捕器的害虫,并利用ZigBee网络与网关进行数据和信息传递;同时给出了野外的网关和终端机的供电系统。经实际测试,自动测报系统使用简单,可靠性好,自动化程度高,对害虫预报、预警取得了良好的效果,提高了农业管理的科技含量,为推进农业数字化、信息化的发展做了有价值的探索。
关键词:农作物病虫害;ZigBee网络;红外检测;自动测报
中图分类号: TP273 文献标志码: A
文章编号:1002-1302(2015)04-0406-05
收稿日期:2014-12-10
作者简介:陈光绒(1966—),男,浙江岱山人,硕士,副教授,研究方向为嵌入式系统、无线传感网。Tel:(0574)86891332。
农作物病虫害给农业生产带来了极大的危害,轻则使农产品产量减少、质量下降,重则使局部农地颗粒无收,所以加强农作物病虫害防治具有重要现实意义。目前常用化学、物理机械以及生物技术来防治农作物病虫害。长期以来,人们习惯用喷洒农药的化学方法来解决农作物病虫害问题,由此造成環境污染、土壤板结等生态问题[1]。随着信息技术的发展,数字农业的出现,物联网技术结合物理、生物技术防治病虫害的方法,不仅可以解决农药带来的环境污染问题,而且大大减少了成本,收到了良好效果[2]。性诱剂是采用物理机械的方法诱杀农作物病虫害的一种方法,但目前此方法存在病虫害数目难以统计、人们无法准确掌握病虫害的分布特性等问题。如让技术人员到田间去数诱捕器里的害虫,一方面工作量大,另一方面也不卫生。为此研制了一套基于物联网技术的农作物病虫害自动测报系统,能自动识别农作物病虫害的类型、自动统计病虫害的数量,以及根据这些数据进行预报、预警。
1 系统总体设计方案
系统采用“终端分机(ZigBee路由传感节点)+网关(ZigBee协调器+GPRS)+计算机信息发布系统”的框架[3-4]。框图如图1所示。
其中每个ZigBee终端机连4个诱捕器,在诱捕器中安装传感器,检测病虫害的进入,经数据统计和处理后,将数据显示在分机的面板上。
同时由ZigBee节点组成无线网络,分机和网关组成网络,自定通信协议,将分机相关信息通过无线网络传到网关,由网关转发给计算机采集系统。通过计算机上位机的处理,完成数据清零、采集以及记录号设定等操作,再由计算机信息处理系统完成数据的汇总及分析,并实施短信发送,做出相应的决策[5-6]。
2 硬件设计
2.1 终端分机硬件设计
根据每个终端需要实现的功能,其硬件电路包括:野外电源供给电路(图2-a)、CPU及控制电路、无线传输电路(ZigBee模块)、害虫(红外)检测电路4个部分。其中CPU及控制电路包括稳压电路CPU、LCD显示电路、按键电路(图2-b)。
2.2 终端分机设计
2.2.1 终端分机供电系统设计 终端分机任务是采集所监控点的害虫数量,设备通常固定在野外农田不同位置,采用市电供电难度很大,综合考虑,采用太阳能电池与电瓶配合给终端分机供电方式[7]。为防止太阳能对电瓶的过充和连续工作造成过放而损坏电瓶,因此必须采用充放电控制器,也可以用市场上成熟的太阳能充电控制器,这里不再详细叙述。
2.2.2 终端分机CPU电路及控制电路设计 终端分机的CPU及控制电路内部包括内置稳压电路、CPU电路、LCD显示电路、按键电路。 (1)稳压电路设计。考虑太阳能和电瓶的成本,要求终端分机系统的电流越小越好,因此电源采用DC-DC转换电路,选用TD1583(sop8)芯片,输出电流可达 3 A 时效率为95%,输出电压Uo=(1+R1/R2)×1.222[8]。其电路如图3所示。(2)CPU电路、LCD显示电路、按键电路设计。根据终端分机的功能要求,CPU需要有通信接口、液晶显示接口、按钮接口、红外传感信号接口(2组),因此选择STC15W202S,该芯片工作电压为2.5 V~5 V, 具有很好的抗
干扰能力。为简化用户操作,控制器设置了3个按钮:分别是设置/查看按钮、+1按钮、-1按钮。为降低系统耗电,同时兼顾显示信息,这里采用1602液晶显示模块。具体电路如图4所示。
2.2.3 无线传输电路设计 根据农田监控点距离相对近、监控点多的特点,无线传输采用ZigBee模块,其最大特点是可以自由组网,只要节点配置成路由方式,可以将传输范围覆盖到非常广范围,另外根据ZigBee的ID号和信道,可以组建不同的网络,这给实际应用带来了极大的便利[9]。考虑系统功能以及扩展需要,ZigBee直接采用透传模块,与CPU的串口相连接。基于CPU的5 V供电系统与 ZigBee 的3 V系统不
能直接相连,CPU 的TX端需要分压获得与3 V系统匹配的信号电平[10],具体电路如图5所示。
2.2.4 害虫诱捕检测电路设计 害虫检测采用光电(红外)检测方式,通过诱捕器结构的特殊设计,使得害虫进入诱捕器时,因阻挡红外光而被检测到,同时为尽量精确测量,设置了相互垂直的1对红外收发系统[11],如图6所示。
为减少传感器接入系统的能耗,发射时采用间歇发送脉冲方式,也就是每隔300 ms发射1次频率为1 kHz、持续时间为100 ms的脉冲串,通过单片机软件的特殊处理,不影响对害虫的正确计数。另外,在面板操作时间外液晶显示器都处于休眠状态。
通过上述设计,电源的效率为75%,如选用12 V、7 A·h 的电瓶,可用8 d多的时间,能满足系统的要求,而且此电瓶价格较低,也为整个系统设计降低了成本。
2.3 网关部分设计
网关如同终端分机一样置于野外农田,只不过不直接采集害虫,它的任务有2个: 其一是定期向所“管辖”的终端分机采集数据;其二是利用GPRS接收来自远端公司服务器的数据“上传”和“清零”指令,转发给终端分机,并将采集的数据通过GPRS发回到公司服务器。
为降低用户今后维护难度,协调器采用CPU+ZigBee模块+GPRS方式,将这里的ZigBee模块配置成协调器即可,它在系统中起到组织者的作用:首先负责各个终端分机组网,组网完成后负责数据采集与转发。
网关的CPU需要与ZigBee通信,同时又要跟GPRS通信,所以选用STC15W1K32S,该芯片内置3个独立串行通信口,可以完全满足系统的要求,当然第3个串口可以预留给Wi-Fi或其他以后需要扩展的通信[12-13]。
网关部分的结构如图7所示。
具体实现时,CPU的TX端也必须经分压处理与ZigBee的RX相连。
为考虑今后维护方便,GPRS直接采用工业级模块,直接与CPU的串口相连即可,这样可以随意“脱卸”,方便故障判断与维护。
3 软件设计
3.1 终端分机程序设计
终端分机软件需要实现的主要功能有:按键扫描与功能执行、传感信号发送与检测、数据及信息显示、数据通信。软件设计上包括初始化函数、循环执行函数以及中断函数3大部分[14]。 其中初始化部分包括:I/O初始化、定时器初始化、中断初始化、串口初始化、内置EEPROM初始化、LCD初始化。 循环执行部分包括按键扫描、LCD显示、EEPROM写(数据修改后写入)、数据发送(有发送标志时发送)。 中断部分包括传感信号中断、定时器中断、通信中断。
下面就部分函数及功能的实现作一说明:
(1)按键扫描与执行
终端分机内部有1个按键,外部给用户提供3个按钮。
内部按键称为ID键,用来在出厂时给终端分机设定唯一ID号(即身份识别号),ID号包括机器版本号和数字序列,实现过程如下:
按一下此键,内部LED显示灯快闪,此时用专用ID发生器(自己制作)向终端分机发送1组5字节数码,其中包括1字节的数据头、3字节的ID号(4位版本信息,20位数字序列)和1字节的校验码,终端分机接收此数据序列后将ID号存入EEPROM,作为终端分机的唯一身份识别符。
对外给用户提供的按键有3个,分别是设置/查看键、+1键、-1键。
设置/查看键:设置主要是让用户设定终端分机的编号(此编号可以跟捕捉的害虫建立对应关系),按一下此键,进入设置界面,显示机器的编号并处于闪烁状态,此时可以通过+1、-1进行编号设置;查看是让用户查看当前的捕虫数量,同一个页面可以同时显示4个诱捕器的数据,操作时按1次“设置/查看”键进入设置状态,再按1次切换到查看状态,再按后回复正常。
+1键:将闪烁位的数据加1,设置范围为1~999。
-1键:将闪烁位的数据减1,设置范围为1~999。
按键功能执行流程如图8所示。
(2)通信中斷函数
终端分机的串口负责接收ID设置号、网关转发的信息,并根据需要发送数据。其中ID信息设置在按键中已经说明,这里给出数据格式,其余不再重复。
数据格式:数据头(1字节)、ID号(3字节) 、校验(1字节)
另外,终端分机主要任务是处理从网关转发的信息,为确保数据通信可靠,这里指定通信格式:
数据头(1字节)、ID号(3字节) 校验(1字节)
串口中断函数流程如图9所示,其中省略了ID=2、3、4。
3.2 网关软件设计
网关如同终端分机一样置于野外农田,只不过其不直接采集害虫,它的任务有2个: 其一是定期向所“管辖”的终端分机采集数据;其二是利用GPRS接收来自远端公司服务器的数据“上传”和“清零”指令,并将采集的数据通过GPRS发回到公司服务器或向终端分机发送数据清零指令[15]。
(1)接收来自服务器的信息
服务器的数据直接通过GPRS发给网关,数据格式如下:
数据头(1字节)、采集或清零指令(1字节)、终端分机ID号(3字节)、校验(1字节)
其中字节2中的采集用代码01、清零用代码02表示。
终端ID号如果非0,相当于定点采集或清零;如果ID全部为0,相当于广播(全部终端分机都执行)采集或清零指令。
校验是将数据头以外的所有字节“异或”处理,其余检验也如此。
(2)接收来自终端分机的信息
网关接收GPRS指令后,将此数据直接转发给网络内的终端分机,分机接收采集指令后将数据发给网关,数据上传给网关,如果接收的是清零指令,则清零后作应答。
终端分机回传的数据格式如下:
数据头(1字节)、0x01(代表采集)、终端分机ID号(3字节)、终端分机编号(1字节)、诱捕器1数据(2字节)、诱捕器2数据(2字节)、诱捕器3数据(2字节)、诱捕器4数据(2字节)、校验(1字节)
清零后应答数据格式如下:
数据头(1字节)、0x02(代表清零)、终端分机ID号(3字节)、 终端分机编号(1字节)、0x00 校验(1字节)
网关除了数据通信外,另一个主要任务是将定期采集到的数据“依次”存入内部的EEPROM中,根据每个终端分机的数据信息,需要给每个终端分机分配11字节的存储单元,如表1所示。
表1 分机11个字节存储单元
Id3 Id2 Id1 诱捕器1
高字节 诱捕器1
低字节 … 诱捕器4
高字节 诱捕器4
低字节
根据以上结构可以看出,分机号是一个十分关键的数据,知道所要找的分机就能立即找到其所有信息,计算公式如下:
addr=addr0+(number-1)×11;
其中addr是某个分机对应的数据区起始地址,addr0是总的数据区起始地址,number是所找分机自身的编号(1~255)。
同样的,要想获得某个分机(如编号n)的诱捕器1的数据,可以用下面公式找到数据所在的单元地址:
addr_n _h=addr0+(number-1)×11+3;
addr_n_l=addr0+(number-1)×11+4。
其中,addr_n _h是所找编号为n终端分机诱捕器1数据高字节所在的存储单元地址,Addr_n _l是低字节所在的存储单元地址。
4 系统测试与功能验证
启动计算机系统采集软件(计算机采集系统设计在此不作介绍),用户可设定系统的分机编号和目前记录号,按下“确认”键后,进入系统的主界面,系统默认的是COM1口,也可自行设定,其波特率为2 400 b/s。
(1)设置终端分机编号功能测试
软件可根据需要设置当前的记录号,可将记录号设置为1,点击“设置记录号”按钮,则系统自动从1开始依次设置分机记录号,用户可从软件界面中核对是否将某台ZigBee终端分机的记录号修改成1。经测试,能正常设置记录号。
(2)自动采集功能测试
用模拟的办法让某台ZigBee终端分机(如5号)进行计数,当用模拟的办法使第3个诱捕器为3时,在软件可看到4个诱捕器的害虫数分别为0、0、3、0(软件用“节点”表示),记录此数据。
设置“自动采集时间”,比如PM15:00,将计算机的时间修改为PM14:59,待时间到PM15:00时,观察采集的数据。如图10所示,5号分机的数据被采集,经观察,此数据与实际记录的数据一致。
采集后,记录号自动加1,与设计思想一致。
5 总结
本系统设计后,经现场使用测试,数据通信正常,网络稳定性好,系统能比较准确地测量害虫的数量,为害虫预警、预报提供现场第一手数据,为农业管理现代化提供了很好的解决方案。
由于能力有限,本系统还有些不完善的地方,需要不断改进,我们认为在以下几个方面还可进一步研究:
(1)研究一种图像识别的方法,能检测更小的病虫害,检测范围更大[14]。
(2)在距离超过100 m的终端分机之间单独放置路由器,以实现更好的网络全覆盖。
(3)研究数据分析软件,可通过数据得出趋势分析,提供更有效的测报信息,通过网络发送给执行人员和有关职能部门,从而为农业数字信息化做出样板工程[15]。
参考文献:
[1]宗长全. 农作物病虫害防治技术探讨[J]. 河南科技,2014(16):166-167.
[2]赵明华. 农作物病虫害综合防治技术[EB/OL]. [2014-10-20]. http://mc.mofcom.gov.cn/news/P1P65313119991254.hlml.
[3]王权平,王 莉. ZigBee技术简析[J]. 通信世界,2003(4):41-43.
[4]徐亚峰,劉焕强,顾晓峰,等. 基于ZigBee和GPRS的远程水质监测系统的设计与实现[J]. 江苏农业科学,2013,41(3):328-331.
[5]于海洋,刘艳梅,董燕生,等. 基于空间信息的农作物苗情监测系统[J]. 农业现代化研究,2013,34(2):253-255.
[6]李雪刚,黄梦醒,朱东海. 基于物联网技术的远程农田监控系统设计[J]. 计算机工程,2012,38(17):20-23.
[7]张舟云,徐国卿,沈祥林. 无源滤波器在开关电源中的应用分析[J]. 电力电子技术,2004,38(5):45-47,68.
[8]张焕新. 电源的抗干扰设计[C]//中国空间科学学会. 中国空间科学学会空间探测专业委员会第十八次学术会议论文集:上册.北京:中国空间科学学会,2005:315-320.
[9]张 婕. 无线传感器网络[J]. 中国数据通信,2005(6):45-48.
[10]Werner-Allen G,Lorinez K,Ruiz M,et al. Deploying a wireless sensor network on an active volcano[J]. IEEE Internet Computing,2006,10(2):18-25.
[11]Chintalapudi K,Fu T,Paek J,et al. Monitoring civil structures with a wireless sensor network[J]. IEEE Internet Computing,2006,10(2):26-34.
[12]Choi P,Park H C,Kim S,et al. An experimental coin-sized radio for extremely low-power WPAN (IEEE 802.15.4) application at 2.4 GHz[J]. IEEE Journal of Solid-State Circuits,2003,38(12):2258-2268.
[13]吕昭智,沈佐锐,程登发,等. 现代信息技术在害虫种群密度监测中的应用[J]. 农业工程学报,2005,21(12):112-115.
[14]于凤荣,杜国明,薛 剑,等. 黑龙江省垦区大豆和玉米重迎茬遥感监测研究[J]. 农业现代化研究,2013,34(2):248-250.
[15]贾科利,张俊华.信息农业现状与发展趋势[J]. 西北农林科技大学学报:社会科学版,2003,3(6):13-17.