APP下载

基于SSH和模糊控制的精准农业大棚智能监控平台

2014-10-28王杰管涛李玉玲

湖北农业科学 2014年15期
关键词:智能监控模糊控制

王杰+管涛+李玉玲

摘要:针对农业大棚作物生长环境参数精确控制和信息化管理的需求,基于SSH框架和模糊控制,设计并实现了精准农业大棚智能监控平台。采用B/S体系结构模型,设计了系统框架,采用Socket和多线程技术,实现了与多个大棚的数据通信。提出了一种基于温度、湿度、CO2浓度和光照度4个参数的模糊控制器,实现大棚内环境参数的自动调节。试验结果表明,温度、湿度、CO2浓度、光照度的变化均控制在合适的范围内,保证了作物的生长环境需求。平台运行稳定,执行设备控制响应时间在800 ms以内,采集时间在300 ms以内,具有一定的实用性、安全性和可维护性,有效实现了农业大棚环境参数的精准控制和远程操作,为精准农业实施提供了保障。

关键词:SSH;Socket通信;多线程技术;模糊控制;精准农业大棚;智能监控

中图分类号:TP273+.4;S126 文献标识码:A 文章编号:0439-8114(2014)15-3650-05

Intelligent Monitoring Platform of Precision Agriculture Greenhouse

Based on SSH and Fuzzy Control

WANG Jie,GUAN Tao,LI Yu-Ling

(Department of Computer Science and Application, Zhengzhou Institute of Aeronautical

Industry Management, Zhengzhou 450015,China)

Abstract: Based on crop growth environment and information management need of the agriculture greenhouse, an intelligent monitoring platform of precision agriculture greenhouse based on SSH and fuzzy control was designed. Based on B/S system structure model, in which socket and multithread technologies were used to realize data communication with a plurality of greenhouse. Based on the temperature, humidity, light intensity, CO2 concentration a fuzzy controller was proposed to automatically adjust the greenhouse crop growth environment. Results showed that temperature variation, humidity, CO2 concentration and light intensity was controlled in a reasonable range, ensuring a better environment for the growth of crops. Platform had good interactivity and stability. Equipment control response time was within 800 ms. The acquisition time was within 300 ms. Platform had a certain practicality, safety and maintainability. The precise control and remote operation of agricultural greenhouse were realized. It will provid guarantee for precision agriculture.

Key words: SSH; Socket communication; multithread technology; fuzzy control; precision agriculture greenhouse; intelligent monitoring

收稿日期:2014-03-18

基金项目:国家自然科学基金项目(41001235);河南省科技厅科技攻关项目(122102110208);河南省教育厅科学技术研究重点项目

(12B520061)

作者简介:王 杰(1978-),男,河南潢川人,讲师,硕士,主要从事信息处理、信息安全、计算机网络研究,(电话)15838283539(电子信箱)

wangjiew@126.com。

精准农业是综合运用现代信息技术和智能装备技术,对农业生产进行定量决策、变量投入、定位实施的现代农业操作技术系统[1]。它通过采用现代农业装备技术改变作物自然生长环境,为作物生长提供适宜的温度、湿度、光照等环境条件和农业生长要素组合,从而实现农产品工厂化生产,而农业大棚是精准农业实施的重要途径[2]。

国外对农业大棚环境控制技术研究,最早采用模拟式组合仪表采集现场信息并进行指示、记录和控制,然后开始了计算机在温室气候控制中的研究和应用,后来出现了分布式控制系统。目前,正开发研制计算机数据采集的多因子综合控制系统[3]。国内自主开发了一些研究性质的环境控制系统,如中国农业大学研制成功了实验温室环境监控计算机管理系统;中国农业工程设计研究院和北京工业大学在温室群环境参数分级监控方面做了一些研究,该系统中的PC机用于存储测量数据及一些简单的管理工作[4]。endprint

从目前研究来看,农业大棚监控还不支持基于Internet的远程操作,且对多大棚集中监控能力差,针对大棚的环境控制也仅局限在温度和湿度两个参数上。平台开发采用ExtJS技术和SSH框架,实现了平台业务逻辑层与持久层的分离,提高了系统的可移植性、可复用性和可靠性,且支持远程操作。采用Socket和多线程技术,实现了多个大棚的集中监控。针对温度、湿度、CO2浓度和光照度4个参数的模糊控制,对大棚内环境参数的自动调节更加全面,为作物生长提供了精准的环境条件,有利于精准农业的实施。

1 平台开发关键技术

1.1 ExtJS技术

ExtJS为构建RIA(Rich Internet Applications)应用提供一套完整、成熟的JavaScript基础库,利用ExtJS构建的RIA Web应用具有与桌面程序一样的标准用户界面和操作方式,并且能够跨不同浏览器平台使用[5]。ExtJS基于AJAX来创建与后台技术无关的前端用户界面,其完全基于“HTML/CSS+ Javascript”技术。ExtJS除了包含丰富的跨浏览器用户界面组件外,还提供了一套专门用来处理用户动作、控件状态及与服务器交互的强大事务处理机制。ExtJS采用以JSON/XML为数据源的开发技术,大大减轻了服务器与表现层异步数据通信负荷。

1.2 SSH框架

SSH框架即Structs+Spring+Hibernate,是一种基于MVC模式的轻量级框架。SSH集成框架生成的页面和代码符合J2EE标准,可开发出更具特色的应用系统[3]。SSH框架分为表示层、业务层和数据访问层。表示层采用Structs技术,主要用来处理用户的页面请求,并将请求信息发送给业务层处理。业务层采用Spring技术,完成对表示层提交的请求信息处理,并将处理结果交给视图显示。在数据访问层采用的Hibernate框架是一种Java语言下的关系数据库持久化框架,它是一种强大的可提供对象-关系持久化和查询服务的中间件,可以使程序员依据面向对象的原理开发持久化类,实现对象之间的关联、继承、多态、组合、集合等[6]。

2 平台总体设计

监控平台采用通信与业务分离、业务与数据交换分离的设计思想,分成数据通信层、业务处理层和数据访问层。数据通信层主要完成与现场的数据采集单元、设备控制单元的通信功能;业务处理层根据用户角色来确定一组相关功能的业务处理;数据访问层主要完成系统的数据持久化操作等。

2.1 平台运行环境

平台运行环境如图1所示,监控现场的环境数据通过ZigBee网络将农业大棚内各传感器采集的数据传送到网关节点,网关节点接入交换机,再通过以太网连上服务器。运行在服务器上的智能监控平台通过TCP/IP协议,完成现场数据的采集和设备的控制,并实现视频远程监控、LED显示控制等。由于平台采用的B/S架构,普通用户根据系统权限可以通过连入Internet的计算机或移动终端等访问平台,实现远程的监控和管理。

2.2 平台工作业务流程

平台工作业务流程如图2所示。进入系统之前,首先需要登录验证,通过后,底层数据采集单元开始工作,根据用户的访问权限,可以进行大棚信息、作物信息、设备信息的基本操作。在控制中心功能中,选择手动控制,当启动某个设备,则可按照相应协议发送控制指令,如果在自动控制模式下,根据所设置的参数和实际采集的数值之间的关系,根据专家模糊控制的策略,自动完成相应的操作。

3 平台实现

3.1 ExtJS技术在平台中的应用

平台界面使用了ExtJS UI库的FormPanel、Button、GridPanel和Tree等组件来编写,通过layout属性来设置显示风格。在ExtJS中对于请求主要通过request对象的url属性进行设置,ExtJS通过store提供record对象的存储,使用proxy对象和JsonReader对象进行数据的存储和交互。Extjs页面数据通过JSON与后台进行交互[7,8]。以下是在手动控制功能中,ExtJS与后台之间通过异步方式通信实例:

Ext.Ajax.request({

url:'enviro!loadRelayData',

params:{

relay_id : id,

relay_type : type,

relay_status : status,

shedId:shedId},

success:function(response){

var msg = Ext.util.JSON.decode(response.responseText);

if('success' == msg.rs){

Ext.ux.Toast.msg('系统提示','设备开启完成!');

}else if('close' == msg.rs){

Ext.ux.Toast.msg('系统提示','请打开网口!');

}else if('fail' == msg.rs){

Ext.ux.Toast.msg('系统提示','控制器无响应!');

}

3.2 SSH框架在平台中的应用

平台基于SSH框架的业务流程为:在表示层中,首先通过JSP页面实现交互界面,负责传送请求(Request)和接收响应(Response),然后Struts根据配置文件(struts-config.xml)将ActionServlet接收到的Request委派给相应的Action处理。在业务层中,管理服务组件的Spring IoC容器负责向Action提供业务模型(Model)组件和该组件的协作对象数据处理(DAO)组件完成业务逻辑,并提供事务处理、缓冲池等容器组件以提升系统性能和保证数据的完整性。而在持久层中,则依赖于Hibernate的对象化映射和数据库交互,处理DAO组件请求的数据,并返回处理结果。endprint

系统平台软件SSH的配置文件有web.xml、struts-config.xml和beans.xml,以下是beans.xml中对数据源的配置:

<!-- 配置数据源 -->

value="${jdbc.driverClassName}" />

<!-- 创建sessionFactory -->

class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">

<!-- 引入数据源 -->

<!--扫描包,寻找实体 -->

pams.model

3.3 数据采集及控制通信实现

由于平台支持多个大棚的集中控制,涉及多个终端的数据采集与控制,因此采用了基于多线程的Socket通信来完成。设置完大棚信息后,需要为每个大棚添加设备信息,包括采集端口和控制端口信息。系统工作时,运行平台软件的计算机服务器作为服务器端,并为每个大棚启动两个工作线程,在工作线程中基于设置的端口信息创建相应的ServerSocket对象来监听大棚内网关和控制器的连接。大棚内的设备启动后作为客户端与服务器端建立连接,双方连接后完成数据的采集和控制工作。

数据采集采用查询的工作模式,服务器端按周期给下位机网关发送传送指令,下位机网关回送所采集的ZigBee网络回传数据。服务器给下位机网关发送的指令格式示例如表1所示。其中1为从机地址,2为功能代码,表示读实时数据,3为第1个寄存器的高位地址,4为第1个寄存器的低位地址,5为寄存器数量的高位,6为寄存器数量的低位,7为CRC校验的高位,8为CRC校验的低位。

设备控制在控制工作线程中完成,服务器按照设定的指令给下位机网关,再发送给控制继电器,去完成相应设备的开关操作。控制指令格式如表2所示。其中D7至D0对应8路控制设备,对应位字段值设置为0则关闭此设备,设置为1则打开此设备。

3.4 模糊控制器实现

作物管理模块针对每个大棚内的作物输入其适宜的生长环境参数,模糊控制器根据实时数据和设定参数的差值及大棚内环境参数变化情况,控制相应的设备动作,使大棚内环境数据控制在设定参数合理范围内,有利于作物的生长。作物生长的环境因素很多,温度、湿度、CO2浓度和光照度是作物生长的4个主要因素,模糊控制器的输入设定为温度变化率、温度差,湿度变化率、湿度差,CO2浓度变化率、CO2浓度差,光照度变化率、光照度差。

以温度为例,模糊控制器把温度差按大小分成5个等级,分别为ΔT[1]、ΔT[2]、ΔT[3]、ΔT[4]、ΔT[5],温度变化率根据百分比的范围也分为5个等级,分别为T′1、T′2、T′3、T′4、T′5,根据这些参数,设置模糊矩阵,对应输出T[1]至T[25],如表3所示。

同样对湿度,湿度差对应5个等级,湿度变化率也分为5个等级,模糊矩阵输出H[1]至H[25],CO2浓度模糊矩阵输出C[1]至C[25],光照度模糊矩阵输出L[1]至L[25]。

大棚的输入量有风机、侧窗、外光帘、内光帘、湿帘、喷灌、滴灌、补光灯等。这些输入量都能够改变温度、湿度、CO2浓度和光照度这些影响作物生长的环境参数,但不同设备对不同环境参数的影响是不同的,根据其影响程度的大小,给不同执行机构分配不同的权值、阈值。

模糊控制过程如下:

首先根据所采集的各参数的差值和变化率,通过模糊矩阵得出温度、湿度、CO2和光照度的输出量T、H、C、L。

然后,每个执行设备根据对每个环境参数的权值W1、W2、W3和W4乘以模糊矩阵输出的加权值,如公式(1):

Y=W1×T+W2×H+W3×C+W4×L (1)

如果Y≥阈值,则开启执行设备,否则关闭。

为了保证平台的通用性,各执行设备模糊控制中的等级策略、模糊矩阵设置、权值和阈值都支持文件中进行配置,系统可以根据不同大棚的环境模型加以调节,以便寻找更适合大棚控制的决策方案。

4 平台测试及分析

系统在河南新郑有机蔬菜基地大棚试运行,结合大棚内的环境模型,通过实验参数的调整设置,测试过程如下:设置温度差、湿度差、CO2浓度差和光照强度差的5个等级如表4、表5、表6和表7所示。

5个参数的变化率都设置为:<-10%,[-10%, -5%],[-5%,5%],[5%,10%],﹥10% 5个的等级,变化率每10 min计算1次。endprint

其中T、H、C、L均取5个值分别为-2,-1,0,1,2,设置T[1]至T[25],H[1]至H[25],C[1]至C[25],L[1]至L[25]如表8所示。

各执行设备的权值和阈值如表9所示。

平台运行24 h,实时数据和设定数据的关系曲线如图3所示。由图3中可见,温度变化控制在±5 ℃以内,湿度变化控制在±50%RH以内,CO2浓度控制在±300 mg/L以内,光照度控制在±2 000 lx以内,较好地保证了作物的生长环境。

平台在试运行时同时监控8个农业大棚,运行稳定,执行设备控制响应时间在800 ms以内,采集时间最快在300 ms以内,采集频率可以在软件中设置。设备运行状态在界面上以动画显示,界面交互性好。

5 小结

精准农业大棚智能监控平台在河南新郑有机蔬菜大棚基地试运行半年,系统运行稳定、交互性好。平台的开发对大棚作物环境参数设置、控制决策、环境参数获取及分析存储等提供了良好的软件支撑环境,能够实现用户进行精准农业信息获取、分析决策和精准实施的全过程网络化、智能化。随着对农业大棚要求集中监控的数量增多,对服务器的性能要求较高。在对大量终端监控时,服务器端平台软件的并行处理能力和大数据分析能力是下一步要处理的问题。另外在模糊控制过程中,结合神经网络、遗传算法等实现自主学习也是平台要扩展的内容。

参考文献:

[1] 赵春江,薛绪掌,王 秀.精准农业技术体系的研究进展与展望[J].农业工程学报,2003,19(14):7-12.

[2] 赵春江.精准农业研究与实践[M].北京:科学出版社,2009.

[3] CORWIN D L, LESCH S M. Apparent soil electrical conductivity measurements in agricultue[J]. .Computers and Electronics in Agriculture,2005,46:11-43.

[4] 陈 勇,郑加强,周宏平.精确农业管理系统可变量技术研究现状与发展[J].农业机械学报,2003,34(6):156-159.

[5] 张 婷.基于Extjs+Spring MVC的Web系统开发架构的研究与实现[J].计算机技术与发展,2013,23(1):147-149.

[6] 刘 倩,孙玉坤,黄永红.基于SSH框架神经网络建模在发酵过程中的应用[J].传感器与微系统,2010,29(8):135-139.

[7] 王宝龙,李子扬,李晓辉.基于SSH框架和DWR技术的减灾卫星运行管理系统建设[J].计算机工程与设计,2010,23(31): 5096-5099.

[8] 王建文,张俊明,韩李鹏.基于ExtJS的物资管理系统的设计与实现[J].计算机工程与设计,2010,23(31):5012-5014.endprint

其中T、H、C、L均取5个值分别为-2,-1,0,1,2,设置T[1]至T[25],H[1]至H[25],C[1]至C[25],L[1]至L[25]如表8所示。

各执行设备的权值和阈值如表9所示。

平台运行24 h,实时数据和设定数据的关系曲线如图3所示。由图3中可见,温度变化控制在±5 ℃以内,湿度变化控制在±50%RH以内,CO2浓度控制在±300 mg/L以内,光照度控制在±2 000 lx以内,较好地保证了作物的生长环境。

平台在试运行时同时监控8个农业大棚,运行稳定,执行设备控制响应时间在800 ms以内,采集时间最快在300 ms以内,采集频率可以在软件中设置。设备运行状态在界面上以动画显示,界面交互性好。

5 小结

精准农业大棚智能监控平台在河南新郑有机蔬菜大棚基地试运行半年,系统运行稳定、交互性好。平台的开发对大棚作物环境参数设置、控制决策、环境参数获取及分析存储等提供了良好的软件支撑环境,能够实现用户进行精准农业信息获取、分析决策和精准实施的全过程网络化、智能化。随着对农业大棚要求集中监控的数量增多,对服务器的性能要求较高。在对大量终端监控时,服务器端平台软件的并行处理能力和大数据分析能力是下一步要处理的问题。另外在模糊控制过程中,结合神经网络、遗传算法等实现自主学习也是平台要扩展的内容。

参考文献:

[1] 赵春江,薛绪掌,王 秀.精准农业技术体系的研究进展与展望[J].农业工程学报,2003,19(14):7-12.

[2] 赵春江.精准农业研究与实践[M].北京:科学出版社,2009.

[3] CORWIN D L, LESCH S M. Apparent soil electrical conductivity measurements in agricultue[J]. .Computers and Electronics in Agriculture,2005,46:11-43.

[4] 陈 勇,郑加强,周宏平.精确农业管理系统可变量技术研究现状与发展[J].农业机械学报,2003,34(6):156-159.

[5] 张 婷.基于Extjs+Spring MVC的Web系统开发架构的研究与实现[J].计算机技术与发展,2013,23(1):147-149.

[6] 刘 倩,孙玉坤,黄永红.基于SSH框架神经网络建模在发酵过程中的应用[J].传感器与微系统,2010,29(8):135-139.

[7] 王宝龙,李子扬,李晓辉.基于SSH框架和DWR技术的减灾卫星运行管理系统建设[J].计算机工程与设计,2010,23(31): 5096-5099.

[8] 王建文,张俊明,韩李鹏.基于ExtJS的物资管理系统的设计与实现[J].计算机工程与设计,2010,23(31):5012-5014.endprint

其中T、H、C、L均取5个值分别为-2,-1,0,1,2,设置T[1]至T[25],H[1]至H[25],C[1]至C[25],L[1]至L[25]如表8所示。

各执行设备的权值和阈值如表9所示。

平台运行24 h,实时数据和设定数据的关系曲线如图3所示。由图3中可见,温度变化控制在±5 ℃以内,湿度变化控制在±50%RH以内,CO2浓度控制在±300 mg/L以内,光照度控制在±2 000 lx以内,较好地保证了作物的生长环境。

平台在试运行时同时监控8个农业大棚,运行稳定,执行设备控制响应时间在800 ms以内,采集时间最快在300 ms以内,采集频率可以在软件中设置。设备运行状态在界面上以动画显示,界面交互性好。

5 小结

精准农业大棚智能监控平台在河南新郑有机蔬菜大棚基地试运行半年,系统运行稳定、交互性好。平台的开发对大棚作物环境参数设置、控制决策、环境参数获取及分析存储等提供了良好的软件支撑环境,能够实现用户进行精准农业信息获取、分析决策和精准实施的全过程网络化、智能化。随着对农业大棚要求集中监控的数量增多,对服务器的性能要求较高。在对大量终端监控时,服务器端平台软件的并行处理能力和大数据分析能力是下一步要处理的问题。另外在模糊控制过程中,结合神经网络、遗传算法等实现自主学习也是平台要扩展的内容。

参考文献:

[1] 赵春江,薛绪掌,王 秀.精准农业技术体系的研究进展与展望[J].农业工程学报,2003,19(14):7-12.

[2] 赵春江.精准农业研究与实践[M].北京:科学出版社,2009.

[3] CORWIN D L, LESCH S M. Apparent soil electrical conductivity measurements in agricultue[J]. .Computers and Electronics in Agriculture,2005,46:11-43.

[4] 陈 勇,郑加强,周宏平.精确农业管理系统可变量技术研究现状与发展[J].农业机械学报,2003,34(6):156-159.

[5] 张 婷.基于Extjs+Spring MVC的Web系统开发架构的研究与实现[J].计算机技术与发展,2013,23(1):147-149.

[6] 刘 倩,孙玉坤,黄永红.基于SSH框架神经网络建模在发酵过程中的应用[J].传感器与微系统,2010,29(8):135-139.

[7] 王宝龙,李子扬,李晓辉.基于SSH框架和DWR技术的减灾卫星运行管理系统建设[J].计算机工程与设计,2010,23(31): 5096-5099.

[8] 王建文,张俊明,韩李鹏.基于ExtJS的物资管理系统的设计与实现[J].计算机工程与设计,2010,23(31):5012-5014.endprint

猜你喜欢

智能监控模糊控制
T-S模糊控制综述与展望
基于模糊控制的PLC在温度控制中的应用
基于模糊控制的恒压供水系统的研究
基于模糊控制的无人机滑跑起飞控制方法研究
中小城市交通干线模糊控制的实现
用于光伏MPPT中的模糊控制占空比扰动法