教育资源为主的文档平台

当前位置: 查字典文档网> 所有文档分类> 高等教育> 农学> 基于Android平台的家庭植物工厂智能监控系统

基于Android平台的家庭植物工厂智能监控系统

上传者:黄友能
|
上传时间:2015-04-21
|
次下载

基于Android平台的家庭植物工厂智能监控系统

2015年4月农机化研究第4期

基于Android平台的家庭植物工厂智能监控系统

彤,贺宏伟,李

尧,马建设

518055)

(清华大学深圳研究生院/深圳LED重点实验室,广东深圳

要:随着人们生活品质的提高,家庭植物工厂受到越来越多的关注。为此,设计了一种以LED光源模拟太

阳光的人工光型密闭式家庭植物工厂。为了使该家庭植物工厂能够为作物提供适宜的生长环境,并且能够实现远程智能监控,设计并实现了一种基于Android平台的智能监控系统。该系统能够实时监测和显示种植空间的环境参数,可根据实际需要对种植空间的温度、二氧化碳浓度和LED灯亮度进行分时段的独立设置。该系统能够控制作物根部营养液的循环,可以通过WEB浏览器实现远程监控。系统运行情况表明,所设计的智能监控系统能够在以LED光源模拟太阳光的人工环境下,为作物提供满足要求的生长环境,并且通过对环境参数的合理设置,可以大大缩短作物的种植周期。

关键词:LED光源;家庭植物工厂;Android平台;远程监控

+

中图分类号:TP273.5

文献标识码:A文章编号:1003-188X(2015)04-0197-06

DOI:10.13427/j.cnki.njyi.2015.04.047

0引言

LED近年来,由于LED技术和植物工厂的发展,

[1-3]

绿色、健康、智能的家庭随着人们生活品质不断提高,

植物工厂将有很大的市场空间,将互联网、移动终端和智能控制结合起来是家庭植物工厂发展的一个趋势

[13]

光源在植物工厂中的应用受到越来越多的关注。。基于对这种趋势的判断,本文设计了一种使用

植物工厂作为国际上公认的设施农业的最高级发展阶段,由于受自然条件影响小、无污染、自动化程度高、多层次立体栽培可以节省大量土地、作物生长周期可控等优点,代表着未来农业的发展方向

[4-6]

LED光源的全人工光型密闭式家庭植物工厂,并为该家庭植物工厂开发了一套基于Android平台的智能监控系统。

。其

中,全人工光型密闭式植物工厂通过对环境因素的适度控制,能够为作物提供更适宜、更可控、更清洁的生长环境,是植物工厂发展的一个重要模式

[7-9]

1

1.1

系统整体设计

LED家庭植物工厂

LED家庭植物工厂的二维尺寸如图1所示。它

。LED

光源具有体积小、寿命长、使用直流电、低发热量及光质可调等优点,被认为是全人工光型植物工厂的一种理想光源,并且在国内外的很多植物工厂研究中都有所应用

[10-12]

分4层:底层用于放置营养液箱体、营养液循环泵等装置;顶层用于放置电源模块、显示模块及驱动电路模块等;中间两层(下文简称为种植空间)用于种植作物,每层的顶端都装有LED灯板,底部都放置着盛放营养液的培养槽。LED灯由直流驱动模块直接驱动,通过外接PWM控制信号,可以实现对LED灯亮度的调节。为了保证种植空间的环境不受外界环境的影响,在植物工厂正常种植期间,中间两层的门处于关闭状态,即形成两个与外界隔离的独立种植空间。1.2

监控系统功能设计

植物生长主要是依靠光合作用,而影响光合作用的环境因素主要是温度、湿度、二氧化碳浓度及光照强度等。为了使上述家庭植物工厂能够为作物提供更加适宜的生长环境,需要对种植空间的温度、湿度、二氧化碳浓度和LED灯亮度进行监测与控制,以使作物根部的营养液进行适当的循环。同时,为了使系统

目前,植物工厂主要沿着适用于工厂化生产的大型植物工厂和适用于家庭的微型植物工厂两个方向发展

[13]

。日本、荷兰、美国等发达国家在这两个方向

[14-18]

都基本实现了产业化;国内对植物工厂相关技术的研究起步较晚,但近几年也取得了一些显著成果

收稿日期:2014-04-25

基金项目:深圳市LED封装技术重点实验室资金项目(ZDSY2012061

9141243215);超短距LED投影仪及其互动式教学系统开发及产业化项目(2012B091100014)

作者简介:刘

(E-mail)男,河北深泽人,讲师,博士,彤(1977-),

liu.tong@sz.tsinghua.edu.cn。

(E男,河南永城人,副研究员,博士后,通讯作者:马建设(1969-),

-mail)mjs888@126.com。

·197·

2015年4月农机化研究第4

内容需要下载文档才能查看 内容需要下载文档才能查看

具有较好的人机交互性,种植空间的环境参数需要实时显示出来,且历史数据能够被查询和导出。为使种植空间的状态信息能从远程进行访问和设置,系统需要具有网络连接功能。综上所述,监控系统的功能框架如图2所示

内容需要下载文档才能查看

图3监控系统的硬件平台框架

Android操作系统的考虑到系统硬件接口的需求、

搭载和人机交互的便利性,选用TINY210开发套件作为系统的核心控制硬件。Tiny210开发套件由开发底板、核心板和7寸LCD电容触摸显示屏组成,是一款

图1

LED家庭植物工厂的二维尺寸图

高性能的Cortext-A8核心板。其板载512MDDR2内存和1GFlash存储,采用S5PV210作为主处理器,运Linux和行主频可高达1GHz,可流畅运行Android、WinCE6等高级操作系统。

由于植物工厂的种植空间较小,因此监测温度、湿度和二氧化碳浓度的传感器体积不能太大,综合测量范围和测量精度的考虑,温度传感器选用DS18B20,湿度传感器选用HIH-4000-001,二氧化碳浓度传感器选用WSH-300-ND。为了对种植空间的环境参数分布情况有充分的了解,每层种植空间

图2监控系统的功能框架图

由于Android操作系统在嵌入式设备上的应用越来越成熟,基于Android平台的应用程序具有非常好的人机交互体验,因此本监控系统选择基于Android平台进行应用开发。Android应用程序负责定时采集种植空间的环境参数并实时显示,根据设置的参数阈值和相关算法驱动相应的执行机构对环境参数进行有效控制;同时,应用程序提供历史数据查询和导出功能,并且能够通过网络与远程的应用服务器进行通信,使用户能够对本地监控系统的状态进行远程访问和设置。

2个湿度传感器和1个二氧化放置4个温度传感器、

碳浓度传感器。为了实现系统的网络连接,考虑到TINY210开发板提供的USB接口以及WIFI连接在家庭环境中的普遍性,选用型号为EP-N8508的USB-WIFI模块作为系统的网络接入模块。

由于LED光源产生的热量在密闭空间内会逐步累积,为了控制种植空间的温度,同时使种植空间内的空气能循环流动,在上述人工光型LED培菜柜的基础上,增加降温和空气内循环系统,如图3所示。它由压缩机、冷凝器、毛细管和蒸发器组成一个小型的降温系统,空气在风道内左右两个风扇的推拉作用下,在种植空间、风道和蒸发器之间循环流动,以实现空气温度的有效调节。为了保证种植空间内空气充分流动和温度分布尽量均匀,种植空间内的进风口位置比出风口位置稍高。同时,为了实现种植空间的密封性,在种植空间的内壁加装了一层绝热材料。

为了对种植空间的二氧化碳浓度进行有效的补充,增加二氧化碳供给系统。二氧化碳供给系统由二氧化碳钢瓶、减压阀、流量计、电磁阀和供气管道组

流量计、电磁阀,施放成。CO2气体由钢瓶经减压阀、

到上述空气循环系统的送风管道中,最后由送风机将

2硬件平台的搭建

首先需要在LED为了实现监控系统的上述功能,

家庭植物工厂现有的硬件基础上,搭建一个更完善的硬件平台,主要包括选择系统核心开发板、选用合适的环境参数(主要是温度、湿度、二氧化碳浓度)传感器、设计并实现种植空间的降温和空气循环系统、设计并实现种植空间的二氧化碳供给系统及选用合适的网络接入模块。搭建好的监控系统硬件平台框架如图3所示。

·198·

2015年4月

气体送入密闭的种植空间

内容需要下载文档才能查看

农机化研究第4期

4000-001是输出模拟量的湿度传感器,将每个湿度传感器分别连接在Tiny210开发板AD转换模块的一个通道上,再对AD转换模块的驱动程序根据HIH-4000-001湿度传感器的AD转换公式进行调整即可。WSH-300-ND是TTL电平串口输出的二氧化碳浓度传感器,其输出数据可以用Tiny210开发板的UART接口直接接收,可以直接调用系统库文件中提供的串口驱动程序。Tiny210开发板有4路PWM输出,选用其中两路PWM输出分别作为上下两层种植空间的LED灯控制信号。PWM输出的驱动程序主要是编写对其占空比和频率进行控制的子函数;对继电器的驱动只是通过GPIO口直接输出高低电平信号来驱动相应驱动电路工作。因此,对应的驱动程序只是

图4降温和空气循环系统示意图

一个最简单的GPIO口设备驱动。Tiny210开发板自带的Linux内核已经包含了众多USB无线网卡驱动(EP-N8508的驱动模块也已经包含在其中),但实际文件系统中采用的是第三方无线网卡驱动模块,因此需要更改Linux内核和Android源代码的相关配置文件,正确编译后即可调用EP-N8508的驱动模块进行网络连接。

对上述设备驱动程序的开发,先采用动态加载的方式来调试,所有的驱动模块都调试通过后,再以静态加载的方式统一编译进内核。为了使新开发的设备驱动模块能够被应用程序调用,需要在Android根文件系统的int.rc文件中增加对新开发的设备驱动模块权限的管理,使应用程序对相应模块具有读写权限。这些工作都完成后,就可以将生成的Linux内核映像文件和Android根文件系统映像文件与相关的配置文件一起,在引导程序的引导下烧写到开发板中。这样,符合应用开发需求的Android操作系统就构造好了,接下来就可以进行Android应用程序开发了。3.3

Android应用程序开发

Android应用程序开发在Eclipse集成开发环境下进行。由于应用程序需要对底层硬件进行操作,所以在构建应用程序编译环境时,需要为工程属性额外配置一个编译器(Builder),把JAVANDK和Cygwin配置为工程的编译环境,从而使工程能对C文件进行编译并生成可供Java代码调用的库文件。在正常建立An-droid工程后,在工程目录中新建一个JNI文件夹,在该文件夹下新建一个C源程序文件和一个Android.mk文件。其中,C源程序利用Linux系统调用对硬件驱动模块相应功能进行调用,并为Java代码提供本地接口;Android.mk文件规定C源程序编译后生成的库文件名称和类型。在其后的Android应用Java开发

3

3.1

软件的设计与实现

开发方案设计

监控系统的软件开发采用在S5PV210微处理器

上移植Android操作系统,再在Android操作系统上进行应用程序开发的模式。Android操作系统是基于Linux内核构建的,其应用程序运行在用户空间,对硬件直接进行操作的设备驱动程序运行在内核空间。Android应用程序要对硬件进行操作,必须首先在Linux内核开发相应的设备驱动程序,然后由应用程序通过预定义的系统调用间接访问驱动程序代码。由于本监控系统涉及对多种环境参数传感器和硬件执行机构的操作,所以系统的软件开发主要分为两部分:首先是在Linux内核开发各种环境参数传感器和硬件执行机构的驱动程序,构造符合应用程序需求的Android操作系统;然后是基于Android操作系统进行应用程序开发。3.2

Linux内核驱动模块开发

本系统涉及的硬件操作包括读取温度传感器(DS18B20)、湿度传感器(HIH-4000-001)和二氧化碳浓度传感器(WSH-300-ND)的监测值;调节PWM信号输出的占空比以控制LED灯的亮度;驱动继电器动作以控制营养液泵、风道风扇、空调压缩机和二氧化碳补给系统电磁阀的工作状态;利用USB-WIFI模块(EP-N8508)连接网络。

DS18B20是单总线的数字温度计,其中,每层种植空间只需要用一个GPIO口接出一根总线,就可以连接该层所有的温度传感器。DS18B20的驱动程序非常成熟,只要将其移植到Linux内核,再根据Linux设备驱动程序的特定数据结构稍作调整即可。HIH-

·199·

2015年4月农机化研究第4期

中,需要对硬件进行操作时,只要调用库文件中相应的本地方法即可。

Android应用程序主要有实时监控、系统设置和历史数据3个模块,程序采用SQLite数据库作为数据存储工具。SQLite是一种开源的轻量级嵌入式关系数据库,占用空间非常少、运行高效可靠、可移植性好,并且提供零配置运行模式,所以比传统的数据库更加适用于嵌入式系统。应用程序的框架如图5所示

内容需要下载文档才能查看

参数,根据这些系统设置参数初始化执行机构状态并将其显示到实时监测界面。最后,开启一个实时监控线程,对种植空间的环境参数进行等时间间隔的监控。实时监控线程是实时监控模块的核心,其具体运行流程如图6所示

内容需要下载文档才能查看

图5应用程序框架图

3.3.1实时监控模块

实时监控模块定时读取温度传感器、湿度传感器和二氧化碳浓度传感器的监测值,将读取的数据存入SQLite数据库并实时显示在监测界面;同时,将读取的实际数值与设置的参考阈值进行比较,决定是否开启(或关闭)相应的执行机构。对于每一层种植空间的温度控制:当从该层4个温度传感器读取到的温度的平均值大于或等于设置的温度上限时,系统开启空调压缩机,使种植空间的空气流经蒸发器时降温;当温度平均值小于或等于设置的温度下限时,系统关闭空调压缩机,或者当空调压缩机连续工作超过30min时,系统也关闭空调压缩机。这样做一方面是为了保护压缩机,另一方面是因为压缩机工作时间过长,蒸发器会结冰,实际降温效果会下降。对于每一层种植空间的二氧化碳浓度控制,由于二氧化碳气体从进入通风管道到实际影响种植空间的二氧化碳浓度之间存在一定的时延,所以当二氧化碳浓度监测值低于设置的上限值与下限值之和的一半时,系统开始补给二氧化碳,并持续补给2s,以使种植空间的实际二氧化碳浓度维持在设置的上限值和下限值之间。

实时监控模块主要由一个实时监测界面和一个后台服务组成。其中,监测界面负责实时显示两层种植空间的温度、湿度、二氧化碳浓度、本时段对应的环境参数(温度、二氧化碳浓度和LED亮度)的设置范围、营养液循环泵工作状态和制冷系统工作状态;后台服务负责打开传感器等驱动模块对应的设备文件,从数据库加载上次关闭应用程序时保存的系统设置

3.3.2

图6

实时监控线程流程图

系统设置模块

系统设置模块负责对两层种植空间的温度范围、二氧化碳浓度范围和LED灯亮度进行分时段的独立设置,可以根据实际需要,将这些环境参数在24h区间内根据时间段细分为多个不同的范围(或值)。每个环境参数的设置确定后,系统会为其单独开启一个定时器(Timer)线程,该线程负责在指定时刻更新该环境参数的范围(或值),并将更新后的值显示在实时监测界面。对于温度和二氧化碳浓度,更新后的范围提供给实时监控线程作为参数控制时的参考;对于LED灯亮度,更新后的值直接通过驱动模块传递给PWM输出口,以调整LED灯的亮度。

出于对系统调试和维护的考虑,系统设置模块提供自动和手动两种工作模式,系统默认选择自动工作模式。在自动工作模式下,程序根据设置的时间段和范围值对培菜柜种植空间的温度、二氧化碳浓度和LED灯亮度进行自动控制,不能手动开启制冷系统或二氧化碳输入;在手动工作模式下,可以手动调整LED灯的亮度和开启制冷系统与二氧化碳输入,但不能设置温度范围和二氧化碳浓度范围,因为即使设置了也不能实现自动控制。

·200·

2015年4月农机化研究第4期系统设置模块可以设置营养液循环泵的状态、风道风扇的状态,可以设置实时监控模块监控环境参数的时间间隔,可以在需要的时候从数据库中加载系统的默认设置参数,使系统恢复到原始设置状态。

3.3.3历史数据模块

历史数据模块能够根据选定的日期、查询对象(温度、湿度或二氧化碳浓度)和位置信息(上层或下层)查询SQLite数据库中存储的特定历史数据;利用AChartEngine工具库将得到的历史数据以折线图的形式显示在历史数据界面,或者将得到的历史数据以文件的形式直接导出到USB外部存储设备。AChartEngine是为Android应用开发而设计的绘图工具库,可用于绘制各种图表,如折线图、点状图及面积图等。

3.3.4远程监控的实现

在应用程序的实时监控模块和系统设置模块中,都嵌入有网络连接功能。当实时监控线程采集到了新的环境状态参数,或者系统设置模块对系统参数进行了重新设置时,都会利用HttpClient接口方法将更新的数据上传到中心应用服务器,服务器端应用程序将接收到的数据保存在数据库中并对http请求做出确认响应。当服务器端应用程序对植物工厂的系统参数进行了重新设置后,通过第三方(极光推送)提供的实时推送服务将数据推送到植物工厂的Android监控系统。中心应用服务器是项目组在LED植物工厂的专用监控服务器,服务器端应用程序采用JavaWeb架构提供远程监控服务,并为LED家庭植物工厂提供了监控接口,只要能连接上网络,在PC端或移动客户端都可以通过WEB浏览器查看LED家庭植物工厂的实时监控状态;获得特定权限后,还可以对LED家庭植物工厂的设置参数进行远程调整。远程监控的实现如图7所示

内容需要下载文档才能查看

。能监控系统模拟自然环境,为作物提供不同生长阶段所需要的空气温度、二氧化碳浓度、光照强度和营养液条件,经过25天的培育,生菜即达到采摘要求。这说明,本文所设计的智能监控系统能够在以LED光源模拟太阳光的全人工环境下,为作物提供满足要求的生长环境,并且通过对环境参数的合理设置,可以大大缩短作物的种植周期。系统运行时的部分软件界面截图如图8所示

内容需要下载文档才能查看

图7远程监控的实现

4系统运行情况

将培育好的生菜幼苗移植到种植空间里,由该智

·201·图8系统运行时的部分软件界面截图

版权声明:此文档由查字典文档网用户提供,如用于商业用途请与作者联系,查字典文档网保持最终解释权!

下载文档

热门试卷

2016年四川省内江市中考化学试卷
广西钦州市高新区2017届高三11月月考政治试卷
浙江省湖州市2016-2017学年高一上学期期中考试政治试卷
浙江省湖州市2016-2017学年高二上学期期中考试政治试卷
辽宁省铁岭市协作体2017届高三上学期第三次联考政治试卷
广西钦州市钦州港区2016-2017学年高二11月月考政治试卷
广西钦州市钦州港区2017届高三11月月考政治试卷
广西钦州市钦州港区2016-2017学年高一11月月考政治试卷
广西钦州市高新区2016-2017学年高二11月月考政治试卷
广西钦州市高新区2016-2017学年高一11月月考政治试卷
山东省滨州市三校2017届第一学期阶段测试初三英语试题
四川省成都七中2017届高三一诊模拟考试文科综合试卷
2017届普通高等学校招生全国统一考试模拟试题(附答案)
重庆市永川中学高2017级上期12月月考语文试题
江西宜春三中2017届高三第一学期第二次月考文科综合试题
内蒙古赤峰二中2017届高三上学期第三次月考英语试题
2017年六年级(上)数学期末考试卷
2017人教版小学英语三年级上期末笔试题
江苏省常州西藏民族中学2016-2017学年九年级思想品德第一学期第二次阶段测试试卷
重庆市九龙坡区七校2016-2017学年上期八年级素质测查(二)语文学科试题卷
江苏省无锡市钱桥中学2016年12月八年级语文阶段性测试卷
江苏省无锡市钱桥中学2016-2017学年七年级英语12月阶段检测试卷
山东省邹城市第八中学2016-2017学年八年级12月物理第4章试题(无答案)
【人教版】河北省2015-2016学年度九年级上期末语文试题卷(附答案)
四川省简阳市阳安中学2016年12月高二月考英语试卷
四川省成都龙泉中学高三上学期2016年12月月考试题文科综合能力测试
安徽省滁州中学2016—2017学年度第一学期12月月考​高三英语试卷
山东省武城县第二中学2016.12高一年级上学期第二次月考历史试题(必修一第四、五单元)
福建省四地六校联考2016-2017学年上学期第三次月考高三化学试卷
甘肃省武威第二十三中学2016—2017学年度八年级第一学期12月月考生物试卷

网友关注视频

北师大版数学四年级下册第三单元第四节街心广场
冀教版小学数学二年级下册第二单元《有余数除法的整理与复习》
【部编】人教版语文七年级下册《泊秦淮》优质课教学视频+PPT课件+教案,辽宁省
二年级下册数学第三课 搭一搭⚖⚖
冀教版小学数学二年级下册第二单元《有余数除法的竖式计算》
第19课 我喜欢的鸟_第一课时(二等奖)(人美杨永善版二年级下册)_T644386
化学九年级下册全册同步 人教版 第25集 生活中常见的盐(二)
30.3 由不共线三点的坐标确定二次函数_第一课时(市一等奖)(冀教版九年级下册)_T144342
七年级下册外研版英语M8U2reading
冀教版小学数学二年级下册第二周第2课时《我们的测量》宝丰街小学庞志荣
3月2日小学二年级数学下册(数一数)
8.练习八_第一课时(特等奖)(苏教版三年级上册)_T142692
沪教版八年级下册数学练习册21.4(1)无理方程P18
冀教版小学数学二年级下册第二单元《租船问题》
冀教版英语三年级下册第二课
第4章 幂函数、指数函数和对数函数(下)_六 指数方程和对数方程_4.7 简单的指数方程_第一课时(沪教版高一下册)_T1566237
【获奖】科粤版初三九年级化学下册第七章7.3浓稀的表示
人教版历史八年级下册第一课《中华人民共和国成立》
冀教版小学英语四年级下册Lesson2授课视频
【部编】人教版语文七年级下册《老山界》优质课教学视频+PPT课件+教案,安徽省
【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,安徽省
沪教版牛津小学英语(深圳用) 五年级下册 Unit 12
沪教版八年级下册数学练习册21.3(2)分式方程P15
外研版英语三起5年级下册(14版)Module3 Unit2
第五单元 民族艺术的瑰宝_16. 形形色色的民族乐器_第一课时(岭南版六年级上册)_T3751175
六年级英语下册上海牛津版教材讲解 U1单词
化学九年级下册全册同步 人教版 第22集 酸和碱的中和反应(一)
【部编】人教版语文七年级下册《逢入京使》优质课教学视频+PPT课件+教案,辽宁省
沪教版牛津小学英语(深圳用) 五年级下册 Unit 10
沪教版牛津小学英语(深圳用) 四年级下册 Unit 7