《武汉工程大学学报》  2015年01期 35-38   出版日期:2015-01-31   ISSN:1674-2869   CN:42-1779/TQ
蔬菜工厂监控系统研究与实现


0 引 言  植物工厂具有受自然条件影响小、无公害、无污染、自动化程度高、作物生长周期可控等优点,代表着世界农业未来的发展方向[1]. 其中,使用人工合成自然光、密闭式的植物工厂通过对环境因素的适度控制,能够提供植物生长较为理想的生长环境,将成为植物工厂发展的一个重要模式[2]. 本文采用了一种基于Web的蔬菜工厂监控系统,本系统能够使管理者在任何可以接入互联网的地方,对蔬菜工厂中蔬菜的生长状况进行监视,并根据具体情况,改变蔬菜工厂内的环境状态,改善工作人员的工作方式,提高工作效率.   1 监控系统结构  如图1所示,基于Web的蔬菜工厂监控系统由Web 服务器,无线通信网络,终端设备三部分组成. 其中,终端设备由作为控制器的单片机,传感器模组和执行机构模组三部分组成.   Web服务器运行于普通的工控机上,用于处理来自蔬菜工厂管理员和普通用户的控制请求,并对访问者的请求进行响应. 无线通信网络使用在物联网领域较为流行的ZigBee技术来实现,用于建立Web服务器和终端设备之间,控制命令和数据传输通道. 终端设备用于实时采集蔬菜工厂中的环境参数,并根据来自Web服务器的设定值进行调控. 由于本系统数据传输量较小,因此,Web 服务器与ZigBee网络之间使用操作简单、稳定可靠的RS232来进行控制命令和蔬菜工厂内环境数据的传输.  图1 基于Web的蔬菜工厂监控系统框架  Fig.1 Architecture of monitoring system of vegetable  factory based on Web  2 Web服务器的功能与实现  系统中实现的Web服务器提供管理员和普通用户两种访问模式,并为不同的访问模式提供不同的功能及交互界面. 对于普通用户,可以通过浏览Web服务器的网站简介页面,查看蔬菜工厂的简要信息;访问实时监控页面,查看蔬菜工厂内蔬菜的生长状况及蔬菜工厂内的环境状况;访问历史数据页面,查看蔬菜的生长过程记录. 管理员具有更多的操作权限,能够查看各个终端执行机构的工作状况;根据蔬菜工厂内的当前状况及作物的生长规律,对蔬菜工厂内的环境参数控制量进行设置.   为了实现上述功能,本系统中的Web服务器使用SSH这一常用的开发框架[3],即将Struts、Spring和Hibernate这三种框架进行整合开发. 如图2所示,Web服务器由页面视图层、action控制器层、service业务层、DAO数据访问层、domain领域对象层构成,每一层通过调用下一层来实现其功能.  图2 Web服务器程序设计框架  Fig.2 Application software framework of Web server  Struts框架负责管理页面视图层与action控制层之间的请求与响应的交互;Spring框架负责action控制层,Service业务层和DAO数据访问层的组件管理;Hibernate框架负责为DAO数据访问层和domain领域对象层提供支持,实现DAO数据访问层和domain领域对象层对MYSQL数据库的访问[4],其结构图如图2所示.   根据访问者的不同身份,在页面视图层提供管理员视图和普通用户视图这两种不同的视图来处理用户请求. action控制器层接收来自页面视图层的请求,通过调用service业务层的方法,来处理来自访问者的不同请求,并根据处理结果,向页面视图层返回不同的页面. service业务层针对来自action控制层的请求,向控制终端发送控制命令或访问数据库,对用户的请求进行处理. DAO数据访问层通过面向对象的方式,为其上各层提供对数据库的访问操作. Domain对象领域层包含了系统中最基本的操作对象所对应的类,并通过Hibernate框架的支持[5],将其映射成MYSQL数据库中对应的数据表.   所监控的蔬菜工厂由5个种植房间构成,每个房间有3至5个种植架,每个种植架由4个种植层构成,种植层为基本监控单位,每个种植层中种植某种蔬菜. 每个种植层使用独立可调强度的LED灯板模拟蔬菜光合作用所需的光强变化. 为了获取房间内温湿度和获取房间中CO2的浓度值,在每个种植架上布置一个温湿度监测点来收集温湿度数据并在房间中布置4至6个CO2浓度检测几点. 每个种植架上有一个泵,控制种植架上各个种植层之间的营养液循环. 在Web服务器的程序设计时,为实现对各个参数的监控及数据管理,对蔬菜工厂建模,抽象出房间类(room)、种植架类(shelf)、种植层(plantUnit)、温湿度数据类(tempHum)、CO2浓度类(CO2Density)、营养液循环泵控制类(pumpCtrl)、LED灯板控制类(LEDCtrl)、时间类(time)这几个类. 各个类之间的关联如图3所示.  图3 蔬菜工厂基本类图关系  Fig.3 Entity relationship diagram of monitoring system  of vegetable system  3 无线通信网络  系统,使用搭载ZigBee协议栈的CC2530来构建无线通信网络[6]. 由于Web服务器与终端控制设备之间的数据数据传输量较少,因此,本文使用操作简便,稳定可靠的RS232作为Web服务器与协调器之间的数据传输方式.   4 终端设备  终端设备由单片机、传感器模组和执行机构模组三部分组成. 传感器模组由温度传感器,湿度传感器,CO2传感器和光照强度传感器组成. 控制器模组由单片机和温度控制系统,CO2补充装置及可调强度的LED灯板组成. 单片机接收来自传感器的数据,并将数据发送给无线网络终端节点,经由ZigBee无线网络,上传到Web服务器. 同时,单片机从ZigBee无线网络终端节点接收来自Web服务器的控制命令,控制相应的执行单元来调整房间中的相应环境参数.   5 系统的运行  系统以工控机为硬件平台,使用Tomcat作为Web程序的运行容器. 本系统运行后,可以通过浏览器方便,便捷的从本地或远程连接到Web服务器,查看蔬菜工厂内的环境因素的当前值和设定值. 使用普通用户身份登录后,可以通过“实时监测”页面查看蔬菜工厂内蔬菜的生长状况及蔬菜工厂内的环境状况,如图4所示.   使用管理员身份登录后,可以通过“系统设置”页面查看蔬菜工厂内各环境参数的当前设定值并根据需要改变设定值,如图5所示. 图4 “实时监测”页面视图  Fig.4 Page of real-time monitoring  图5 “系统设置”页面  Fig.5 Page of system setting  6 结 语  实践表明,当该系统运行后,蔬菜工厂管理人员可以方便的通过本地主机浏览器或远方的主机上的浏览器对蔬菜工厂内的情况进行观察,并根据需要调整蔬菜工厂内的各环境参数的值,改善了管理人员的工作方式,提高了管理人员的工作效率.   致 谢   清华大学深圳研究生院的师生和工程师给与了较大的支持和帮助,在此向他们表示衷心的谢意.