(哈尔滨理工大学 测控技术与通信工程学院,哈尔滨 150080)
农作物种子萌芽阶段是在特定的环境中进行的,在萌芽过程中受到外界环境各种因素的影响,其中影响最大的是温度与湿度[1]。特别是在我国东北地区,初春时昼夜温差与湿度的变化起伏巨大,对种子萌芽及其不利。因此必须对温度和湿度进行监查和控制,使其在健康的环境中生长,提高种子的成活率。而随着传感技术和网络水平的不断提高,无线通讯技术在很多领域已经相当成熟,在农业方面实行新技术的规模化生产已是发展的必然趋势。本文从控制系统和监察系统2个方面对农业大棚监控系统进行设计。在控制系统方面应用解耦控制技术对大棚内的温湿度参数进行控制;在监控系统方面,利用上位机和WiFi模块结合Android手机2种监控手段对控制系统进行了直观远程的监控。
控制系统主要采用解耦控制原理。在大棚内温度的变化与湿度的变化存在强耦合关系,当大棚内加热设备进行工作时,大棚内的温度会升高,同时湿度会相对降低;当大棚内的加湿设备进行工作时,大棚内湿度会增高,与此同时温度会降低[2]。其温湿度解耦控制示意图如图1所示。
图1 大棚内温湿度解耦示意Fig.1 Schematic diagram of the temperature and humidity decoupling in greenhouse
图1中,棚内的温度和湿度可以进行相互之间的补偿,通过温度的变化去影响湿度的改变,其作用是相互的。由于对温度、湿度控制不准确,只能知道其相互之间存在着强耦合的关系,而采用解耦的PID控制方法,就能实现对温湿度的准确控制,从而对温湿度的控制达到很好的效果。
解耦控制系统[3]是多输入输出系统综合理论中的重要组成部分。对于常用的多输入输出控制系统来说,系统的每个输入分量常与系统的各输出分量存在耦合关系,即一个输出分量可以受到多个输入分量控制。这给系统的设计与分析带来了很大的困扰。解耦的目的是通过计算分析寻求适当的控制率,使输入输出相关联的多变量系统实现每个输出仅受一个输入的控制,每一个输入也只能控制一个输出。在大棚内使温度、湿度的输出受本身温湿给定值的控制,其解耦控制原理如图2所示。
图2 大棚温湿度解耦控制原理Fig.2 Decoupling control of the greenhouse temperature and humidity
其中,PID1和PID2分别为温度控制器与湿度控制器;F11(S)、F21(S)、F12(S)、F22(S)均为设计的解耦器;G11(S)、G21(S)、G12(S)、G22(S)分别为温度、温度与湿度、湿度与温度、湿度控制对象的传递函数。设定输入调节量,输出控制量 Y=,根据图2可知大棚温湿度解耦系统的传递矩阵函数为
故输出控制量Y与输入调节量U的关系为
对角解耦的原理就是将系统的传递矩阵变成对角矩阵,即:
设F(S)为解耦器的矩阵模型,则根据式(3)可以得出 F(S)为
求解出F(S)就可以得出解耦器的矩阵函数模型,从而得出对角解耦的结果。
通过式(2)、式(3)可以得出输出控制量Y与输入调节量U的解耦关系为
解耦后的等效原理图如图3所示。
在温湿度控制系统中将PID控制器与对角矩阵运算相结合,所得到的解耦系统是一个对角矩阵,运算实现了一个输入量只控制一个输出量,最终实现了将耦合系统解耦的效果[4]。
图3 解耦温湿度等效原理Fig.3 Equivalent diagram of decoupling temperature and humidity
现今是信息技术蓬勃发展的时代,随着现代计算机技术、通信技术、控制技术及图形技术的发展,监察系统的设计也越来越灵活化、多变化[5]。本套监查系统采用实现最流行的无线WiFi通信技术和Android手机应用平台,设计选用温度传感器AD590、湿度传感器HS1101对棚内温湿度进行采集,硬件选用上主要围绕着高速IAP15F2K61S2单片机为控制核心,WiFi通信模块选用USR-WIFI232-G模块,由于监控系统工作在农间大棚,故选用太阳能供电方式进行供电,系统的总体框架图如图4所示。
图4 监察系统总体框架Fig.4 Overall frame diagram of the system
根据图4所示:首先通过温度、湿度等传感器采集棚内各项数据,数据经过信号调节传送给单片机,单片机内事前设定出给定值比较出的偏差值,并进行数字解耦PID运算。通过单片机判断大棚环境是否正常并将信号通过无线WiFi传送到远程上位机和Android手持设备。在WiFi覆盖的范围内,用户可以通过上位机实时明确地观测控制系统的运行效果。并且可以通过手持Android设备对大棚内的环境变化进行远程监控。
Android是一种使用于移动设备基于Linux平台的开源嵌入式操作系统[6]。该平台主要由操作系统、中间件、用户界面和应用软件4部分组成,采用软件叠层的(Software Stack)方式构建。设计系统采用客户机/服务器的模式,客户机端部分采用Java语言进行开发,数据存储则利用Android自身数据库SQLite来实现,结合Socket完成网络通信;服务器端部分采用VB结合SQL以及Socket编程实现。最终编译结果打包生成APK文件,该文件可以在Android手机上直接安装并运行。相比于传统的农业大棚无线监控系统,本设计在用户手持设备上设计控制界面,具有不受时间、环境、地域位置等因素限制的优点,操作方便灵活。
Android系统采用XML布局文件和Java语言混合完成界面设计,把行为比较固定的组件放在XML布局文件中管理,行为比较复杂的交给Java代码进行管理[7]。系统主要包括登录界面、控制界面和主功能界面。在主功能界面中,可以通过点击方式进入各级控制界面。1号大棚节点的主控制界面如图5所示。在该控制界面可以实时接收1号大棚内的温湿度参数并显示,用户还可以手动改变棚内的温度与湿度,根据自行要求对棚内进行升/降温和加/减湿度的操作。
图5 大棚Android控制界面Fig.5 Android control interface of greenhouse
在多个设备之间实现相互通信,常见的方法有2种:Socket通信与UDP通信[7]。Socket是一种基于TCP/IP协议,在通信两端各建立一个Socket,从而通信两端形成网络虚拟链路,其具有安全性高等优点。本设计选用Socket通信方式,建立Socket客户端,客户端的主机名为服务器的IP地址,客户端的端口号是服务器用来监听该程序的端口,通过服务器的IP和端口号使客户端与服务器相连接,使用Socket获取输入流读取数据,在建立的Android项目程序界面中包含文本框用于显示从服务器端读取的字符串数据,从而接受服务器传送过来的棚内温湿度环境参数。利用消息Message处理来接收数据并进行显示。
在局域网Socket连接问题上,要使Activity之间公用一个Socket连接,通常使用Application的方法,在Android中的不同Activity中传递变量,通常使用Intent中Bundle添加变量的操作方法[8]。在向目标Activity内保存参数数据,其他Activity可以从目标Activity中读取参数。在本设计中具体的操作为分别向目标Activity中传递棚内温度和湿度的实时数据,其它Activity从目标Activity中读取温湿度参数。在从服务器端读取的字符串数据经分割处理后结合数据单位送往界面进行显示。
本系统的软件设计部分主要包括2部分,分别是单片机控制系统的软件设计和基于Android系统的手机监控软件设计。在单片机控制部分,主要有系统的温湿度测量与数据处理,控制程序功能包括定时与数据处理、PID控制程序与解耦程序等;手机监控部分设计监控平台软件,实现数据的显示和历史数据的存储。
系统的控制部分主要包括:系统温度的升/降,湿度的加/减,控制程序功能包括定时与数据处理、PID控制程序与解耦程序等。这一系列的操作都是在单片机的控制下完成的操作,无需工作人员进行手动控制,现场的温湿度控制要求严格,种子的萌芽对温湿度的要求很高,所以在进行控制时一定要将误差控制在合理的范围之内,在传感器的误差允许范围之内,进行精准的控制和调节。系统控制流程如图6所示。
图6 系统控制流程Fig.6 System control flow chart
本设计的亮点在于Android的手机应用平台的设计,实现农业的移动化和智能化、精准化。手机客户端的数据来源是下位的数据采集部分的数据,传输的手段是无线传输,无线传输的设备是WiFi和路由,智能手机可以直接访问路由节点,即可访问上传来的数据。本部分的软件设计应用的语言是Java高级语言。Android应用程序的开发属于第4层次。应用的开发软件是Eclipse 4.0。图7为Android程序流程。
图7 Android程序流程Fig.7 Android program flow chart
在宝泉岭农场某实验大棚根据种子萌芽时所需的温湿度的要求对监控系统进行了调试,温度的给定值为32℃,湿度的给定值为50%,温度控制器PID 的各项参数设定为 P=35%、I=80 s、D=20 s;湿度控制器各项参数设定为 P=45%、I=30 s、D=40 s,现场采集数值并进行分析。系统采集一天内不同时段的温湿度数据,通过上位机或手持Android设备进行观察,其数据如表1所示。
表1 检测结果Tab.1 Test results
根据表1所示,证明系统设计良好,可以满足对大棚内温湿度的严格控制。大棚内温度的误差不大于0.3℃,湿度误差不大于3%,具有良好的效果,符合大棚内种子萌芽的标准。
本文从大棚内种子萌芽温湿度监控的角度出发,使用温湿度解耦PID的方法控制温湿度设备,从而保证了大棚内的良好环境。并结合通信技术、控制技术及图形技术提出了基于Android手机对农业大棚实行远程监控。操作简单方便、应用性好,通过实验证明对大棚温湿度的检测精度高,大棚内温度的误差不大于0.3℃,湿度不大于3%,具有良好的效果,为农业大棚监控系统提供了一个新的方案。
[1]卢佩,刘效勇.温室大棚温湿度模糊解耦控制系统设计与仿真[J].农机化研究,2010,32(1):44-46.
[2]吴兴纯,吴瑞武,杨燕云.基于对角解耦的大棚温湿度控制系统设计与研究[J].计算机技术与应用,2011,37(12):137-139.
[3]金以慧.过程控制[M].北京:清华大学出版社,1993.
[4]刘伟,冯向军.关于多变量PID自适应解耦控制器的设计[J].微计算机信息,2004,20(4):22-24.
[5]易顺明,赵海兰,袁然.基于单片机的大棚温湿度控制系统设计[J].现代电子技术,2011,34(7):129-131.
[6]徐兵,廖友成,刘文杰,等.基于Android平台的车载导航系统研究[J].计算机测量与控制,2014,22(2):601-603.
[7]李慧,刘星桥,李景,等.基于物联网 Android平台的水产养殖远程监控系统[J].农业工程学报,2013,29(13):175-181.
[8]江燕良.基于Android智能终端的远程控制系统[J].电子技术应用,2012,38(8):129-132.