基于微信公众平台的智能盆栽监测系统*

2018-10-30 01:38刘成涛杨青松
微处理机 2018年5期
关键词:土壤湿度温湿度电磁阀

刘成涛,郭 伏,杨青松

(西安工程大学电子信息学院,西安710048)

1 引言

植物的生长、发育与能量交换息息相关。在植物的生长环境中,温度、湿度、光照、二氧化碳含量、土壤墒情等因素对其生长的每一阶段都至关重要。而植物在其生长的每一阶段里,不仅受周围环境某一因素的影响,还受作物间耦合作用的影响[1]。因此,只有对植物生长环境进行实时监控监测,在结合不同植物的生长规律的基础上,通过对环境参数的采集和分析,利用模糊智能灌溉技术实时控制植物生长的环境条件,才能使植物处于最佳生长状态。

为此,开发出一个基于微信公众平台的远程智能盆栽监测系统。该系统主要包括感知层、网络层和应用层三部分,通过无线路由器互相连接。利用物联网技术和微信公众平台建立环境监测系统,能实时获取监测地点的温度和湿度,实现远程数据采集功能[2]。系统不受时间和地域限制,用户可以在任何具备网络覆盖条件的场合从所关注的微信公众号上获取并浏览采集到的数据,且系统支持多用户,多个手机客户端可共享一台服务器,为用户提供很大的便捷性。用户可借此完全掌握所监测植物的生长环境状况,并可通过适当的调整,使盆栽生长的环境达到最优化。

2 可编程DLL电路结构

基于微信公众平台的智能监测系统,针对的是不能实时监测以及不能自适应这一问题。它综合利用了计算机技术、智能控制技术和农业节水技术,对农田信息,如土壤水分、空气温湿度、光照和二氧化碳等数据进行精确采集[3],并通过自动化控制技术智能决策灌溉的时间和用水量,只需要通过控制电磁阀的开关状态就可对作物进行灌溉。本系统以继电器和水泵模拟电磁阀作为执行模块,与之前的研究相比具备以下几点特性:

(1)实时性:作物周围环境参数是实时变化的,因此自适应控制系统对数据的采集要做到实时精准。

(2)自适应性:作物周围环境耦合关系复杂,因此应用模糊控制算法,构建温室基本控制模型,实现温室的自适应控制。

(3)安全可靠:作物周围信息采集的准确性直接影响作物的生长状态,因此不论STM32对环境参数的采集还是执行机构的动作都较为严格。

(4)低成本:低成本是本系统最基本的要求。只有低成本才能实现广泛应用,才能体现本系统在温室以及农业大棚中的重要意义。

本智能灌溉控制系统主要由微处理器、电磁阀、水泵、LCD液晶显示器、传感器、控制软件、物联网、微信平台等组成。在为作物灌溉时,通过从农作物庄稼场地采集土壤温湿度、空气温湿度、光照强度等数据,并基于控制算法经微控制器发送命令给执行机构,即驱动电磁阀使其做出相应动作,从而使作物长期处于最佳生长环境下。本设计是基于微信公众平台的智能监测系统,主要实现功能包括:土壤水分传感器数据采集;DHT11温湿度传感器数据采集;LCD液晶数据显示;参数数据存储云平台;微信端读取;达到灌溉要求时电磁阀的开启与关闭。系统框图如图1所示。

图1 系统框架

传感器模块主要包括空气温湿度采集电路和土壤含水率采集电路;电源模块是给整个系统供电;显示模块则是显示当前系统所处环境的空气温湿度和土壤含水率数据。

执行模块是继电器驱动水泵电路[4],其主要控制原理为:对被控对象(灌溉区)的温湿度和土壤水分进行实时采集,通过传感器将模拟量转为数字量送进控制器中,控制器将传感器所采集到的数据经过模糊控制算法进行处理,再传递给各执行器(即控制器驱动电磁阀或继电器),最终实现作物的水、光、二氧化碳等的自动补偿。

微控制器运用模糊控制算法,根据当前采集到的数据进行处理,例如当温度或湿度超过或小于预先设定的作物最适宜条件时,系统会根据当前的数据计算出偏差量,据此做出调整。系统由此实现了精确采集和实时调整,避免了作物因人力不能及时调整导致作物生长受限的局限性。这对于农作物生长大有助益,在解决劳力问题的同时也提高了作物的产量。

3 硬件设计

3.1 数据采集与控制模块

控制模块(MCU)采用STM32F103,这是ARM芯片家族中通常会被用到的一款,它具有丰富的外设资源和强大的可扩展性,在同类的产品当中有较高的性价比。该模块主要的作用是被用来控制采集到的温湿度信息,将数据分两路处理,一路借助Wi-Fi模块传入服务器,另外一路则经由串口显示在LCD屏幕上。

环境的温度和湿度等参数由传感器DHT11负责采集,它是一种复合式传感器,于出厂之前已校准其自身的数字信号输出;在加工中也采取某种数字模块采集及温湿度传感等技术[5],从而提高了传感器的稳定度及可靠性。以电阻式湿度探测元件和NTC测温元件构成传感器的功能核心。对所有DHT11进行特定湿度环境下的校准,而后通过程序把采集的校准数据储入OTP内存,供传感器在信号检测的工作过程中按需调用。接口通信方式选为单线制串行通信,方便快捷。除上述特点外,DHT11的体积也很小,功耗不大,信息传输距离最远可达20m以上,这些优点使得它获得了广泛的应用。

该系统中DHT11与MCU的具体连接如图2所示。

图2 温湿度DHT11模块与MCU的连接

3.2 Wi-Fi模块

Wi-Fi模块采用的是有人物联网科技公司的USR-WIFI232-D2模块,用于实现Wi-Fi与串口的转换,将不具备网络连接功能的单片机接入互联网,使其配置为STA模式连接到路由器上,组成一个无线网络,从而向服务器发送数据。

其原理如图3所示。如图可见,Wi-Fi模块的TXD、RXD分别接到 ARM的 PA10(U1_RXD)与PA11(U1_TXD)上,从而完成ARM端与Wi-Fi模块的串口。

图3 Wi-Fi模块原理图

3.3 TFT-LCD显示模块

液屏显示模块原理如图4所示,在硬件设计上同时支持LCD彩屏与OLED。

16万色的LCD彩屏作为显示元件,相对于普通的数码管显示元件具有更丰富的显示色彩,且可触屏操作,嵌入方便,可实现强大的用户交互系统的设计。而另一方面,OLED具有功耗小、成本低等优势。本系统采用两种显示方式,以适应不同用户与不同场合[6]。

图4 LCD显示模块原理图

4 软件设计

4.1 控制算法

空气温度、空气湿度和土壤湿度是影响作物生长的三个重要因子,互相之间具有较强的耦合关系;而光照与二氧化碳耦合度较低,易于独立控制,因此以空气温湿度、土壤湿度作为输入量来说明模糊控制方法。

输入量模糊化采用玛达尼法。如果输入量X的实际变化范围为[a,b],则把[a,b]映射为区间[-6,6],并使之离散化,构成论域[-6,6]内的13个整数元素的A,即A={-6,-5,-4,-3,-2,-1,0,1,2,3,4,5,6},此过程即为分级。若X∈[a,b],将X映射为[-6,6]内的离散变量为y,则y与X转换公式为:

由式(1)计算出的y若不是整数,可将它归入最接近于y的整数。然后再将区间[-6,6]分为若干档,每一档对应一个语言值,每一语言值对应一个模糊集合。若分为7档,则有{NB,NM,NS,ZO,PS,PM,PB},集合中各元素的含义分别为:负大、负中、负小、零、正小、正中、正大。每一个这样的模糊集合对应一个隶属度函数,一般采用高斯函数。

输入变量为空气湿度偏差H、空气温度偏差T、土壤湿度偏差W,其论域皆为[-6,6];输出变量为阀门开启度,其论域为[0,3]。利用MATLAB模糊工具包进行规则推理,过程如图5所示。

利用模糊规则所得结果如图6所示。其中,W=-6,H=-2,T=0,U=2.27,表示当土壤湿度偏差为NB,空气湿度偏差为ZO,空气温度偏差为ZO时阀门应尽量全开。又如W=0,H=1.6,T=6,U=1,则表示当土壤湿度偏差为ZO,空气湿度偏差为PS,空气温度偏差为PB时阀门应半开。实际控制时控制量“2.27”级和“1”级要转换为精确的物理量才有效。“2.27”和“1”这个等级的控制电压精确值可根据事先确定的范围计算出来。通过这个精确量去控制阀门的电压,从而实现对阀门开启度的控制。

图5 Simulink仿真图

图6 模糊控制规则浏览器

4.2 服务器与数据库

服务器与数据库是通过HTTP协议的GET请求方式将传感器发送来的数据进行传输的,具体采用的是目前比较流行的PHP(Hypertext Preprocessor)脚本语言进行代码实现。

为了将Wi-Fi模块送上来的数据存储到数据库,这里采用GET的方式。具体的GET请求为:

其中wangerniu.com是阿里云服务器的主机域名;tj.php为存储数据到数据库的文件,w为指标温度,s为指标湿度。用PHP脚本语言实现数据的存储。PHP是一种通用开源脚本语言,几乎支持所有流行的数据库以及操作系统,而且是免费的,因此使用极其广泛。此处采用PHP语言来与MYSQL进行数据库连接,如图7即为PHP实现数据存储的语句与界面。

图7 用PHP实现数据的存储

4.3 服务器与微信公众平台

利用微信公众平台的远程检测系统,在手机端微信软件中开展与实现本系统。要使得手机微信公众号发送的请求命令能够被响应,需要将手机微信公众号与服务器绑定。绑定之后,微信公众号发送请求指令到服务器,服务器读取数据库中的数据发送回微信公众号[7]。该指令和返回消息的具体文字信息是在服务器端用PHP语言写好的,比如本系统中公众微信号发送请求指令“温度”,会得到回复信息当前时间的硬件设备所处位置的温度数据;公众微信号发送请求指令“湿度”,同样会得到回复信息当前时间的硬件设备所在地的湿度数据。这样的阿里云服务器-微信服务器-客户端消息收发系统的工作原理如图8所示。

数学知识内容是严谨的,很多单纯的数学知识教学,会让学生感到枯燥无味,教师可以结合教学内容,依据小学生的心理特点,创设相应的故事情节,不但可以吸引学生的注意力,还可以激发学生的学习兴趣,让学生乐于参与数学学习。

图8 阿里服务器-微信服务器-客户端消息收发原理

5 系统测试与分析

5.1 参数采集显示

程序下载后进行调试,采集模块测试如下:

(1)TFTLCD显示

采用逐步调试,先对LCD显示模块进行调试,用于显示本设计课题、学校名称以及后续要采集的空气温度、湿度和土壤湿度数值。

(2)DHT11空气温湿度采集

同样采用逐步调试方式,将DHT11传感器采集的温湿度值显示在LCD屏上,此数据将用于模糊控制算法中。

该模块同样也采用逐步调试方法,利用AD转换将采集到的土壤湿度值显示在LCD屏上。此数值表示当前土壤实际湿度,利用AD转换采集10次,求取平均值,再以百分比的形式表示[8]。该数值将用于模糊神控制算法中。

整体界面显示效果如图9所示。

图9 TFTLCD显示效果

5.2 微信端与下位机数据传输

手机用户通过微信与阿里云平台连接,下位机将采集来的数据发送给云平台存储。微信端可以通过发送指令的方式读取当前植物所处环境的参数数据。图10为微信端读取到下位机数据时的效果。

图10 微信读取到下位机的数据

5.3 灌溉分析

控制模块运行情况如下:

本系统以水泵的抽水时间来表示电磁阀的4个状态——关(水泵不工作,抽水时间为0min)、半开(水泵工作,抽水时间 0~3min)、中等(水泵工作,抽水时间 3~4min)、全开(水泵工作,抽水时间 5min)。经多次测试,所得空气温度、空气湿度、土壤湿度三个参量和水泵抽水时间的关系如表1所示。

表1 空气温湿度、土壤湿度与水泵抽水时间的关系

表1中,如第二组数据,空气温度12℃,空气湿度23%,土壤湿度73%时,抽水时间为0 min,表示在当前环境下水泵不抽水,对应电磁阀为关闭状态;第四组数据中空气温度45℃,空气湿度5%,土壤湿度19%时,抽水时间为2min,表示在当前环境下水泵抽水,对应电磁阀为半开状态;第五组数据中空气温度43℃,空气湿度29%,土壤湿度5%时,抽水时间为5min,表示在当前环境下水泵抽水,对应电磁阀为全开状态。

6 结束语

从大量测试实验的结果中可知,本设计的基于微信公众平台的智能型环境监测系统运行正常,能够完成温湿度参数的信息采集,完成公众号的基本信息收发和高级消息推送功能,也可有效实时远程监测生活环境的温湿度变化情况。该设备采用目前国内较少使用的物联网与微信公众平台相结合的模式,使得系统不受时间和地域的限制即可将检测结果对外共享,方便其他用户了解环境情况;同时还具有用户操作简单、高效且易于推广等优点。但由于Wi-Fi无线网络传送数据有时会有延迟,在微信端请求指令的过程中,检测的数据为数据库前8~9s的数据,使得获取的当前信息可能与LCD显示屏上的信息出现不同步的现象,在下一步的研究工作中将会针对这一问题着手改善。

猜你喜欢
土壤湿度温湿度电磁阀
基于ANSYS Maxwell的比例电磁阀隔磁环仿真分析与优化
低速机电控喷油器电磁阀换热特性计算
土壤湿度传感器在园林绿化灌溉上的应用初探
基于随机权重粒子群优化极限学习机的土壤湿度预测
基于AT89C51的数字型蚕用温湿度计的设计
基于DSP的多路温湿度监测系统
基于51单片机控制花盆土壤湿度
福特6F35变速器的电磁阀控制策略
贵州喀斯特区域土壤湿度变化规律研究
基于温湿度控制的天气预测装置