祝朝坤 王显然
摘要:针对我国温室环境智能监控系统主要以对环境的监控为主,具有数据远程监测困难、数据难以保存、系统平台要求较高、后期维护成本高等缺点。为此本设计提出了一种基于ESP8266与树莓派的温室环境智能监控系统。系统通过ESP8266主控芯片对DHT11温湿度传感器的数据进行采集,同时传给OLED显示屏进行实时显示,并能将数据通过Wi-Fi发送到用树莓派搭建的MySQL数据库服务器中。并設计了基于B/S架构的温室环境Web管理信息子系统,用户通过手机客户端及网页可远程查看环境内温湿度数据变化情况,以及选择查看每分钟、每小时、每天的历史数据,以便总结更加适合的温湿度范围。本设计提出的温室环境智能监控系统结构设计合理、数据采集速度快、界面设计简洁、系统运行稳定,能对温室环境进行有效的监测和控制,具有较好的使用价值和意义。
关键词:信息管理;ESP8266;MySQL数据库;树莓派
0引言
近年来,随着物联网技术研究的进一步深入,我国物联网技术在农业温室种植中的应用得到了迅速发展。秦琳琳等人基于 CAN 总线的现代温室测控系统的设计及实现可以有效监测环境,但系统硬件成本高、设备体积大[1]。田壮壮等人设计的基于PHP&MySQL的教室环境智能监控系统通过数据库实现了远程检测数据,但数据没有得到有效保存[2]。国内外温室多数为中、小规模,为适应实际情况,引入中、小型种植户的资金,智能化监控系统设计中应充分考虑成本问题[3]。因此开发出成本低、性能好、具有对数据进行处理和保存的温室环境智能监控系统对于温室产业的发展具有重要意义。
通过对温室环境中温度与湿度的信息进行深入了解后,做了系统分析、系统设计、系统实现、以及测试,最终实现了温室环境智能监控系统,并植入用树莓派搭建的服务器内。本系统基于 B/S 框架,硬件通过 ESP8266对 DHT11温湿度传感器的数据进行采集,同时传给 OLED 显示屏进行实时数据显示,并能将数据通过 TCP/IP 协议传给数据库。软件部分前端界面采用 JS与 CSS 技术,后台采用 PHP 编程语言,并结合 MySQL数据库,在设计上做到了可扩张可维护,服务器采用树莓派自行搭建。本系统实现了对环境温湿度的收集与保存及检测环境温湿度是否超出上下限等功能,使用户方便快捷地了解温室环境内温湿度变化情况,对温湿度进行有效管理,为当前温室环境监控系统管理提供了帮助。
1研究的主要内容
系统主要分软件和硬件两部分来研究,以软硬件结合的方式收集数据、处理数据、保存数据并将数据可视化展现在网页上,实现远程观察。
1.1硬件部分
1)首先通过 ESP8266对 DHT11温湿度传感器的数据进行采集。
2) ESP8266接收到数据后进行处理,同时传给OLED 显示屏进行实时数据显示,并能将数据通过Wi-Fi 发送到 MySQL 数据库。
3)将本系统和数据库植入用树莓派搭建服务器中。
1.2软件部分
1) MySQL 数据库可对接收到的数据进行处理和保存。
2)用户登录系统查看温湿度实时数据和历史数据,并可选择性查看每天、每小时、每分钟数据变化。同时可增删改查温湿度的上下限,当温湿度超出所设定的上下限时会出现相应的提示信息。管理员还可修改工作人员的访问权限,工作人员可修改自己的个人信息。
2系统设计
2.1系统结构设计
温室环境智能监控系统主要由硬件和软件两大部分构成。硬件包括 ESP8266控制模块、DHT11温湿度传感器和 OLED 显示屏,软件角色分为管理员和工作人员,另有温湿度管理与员工管理等相关功能。如图1所示。
2.2系统中数据的传递方式
ESP8266模块调用库函数readTemperature()和readHumidity()分别获取 DHT11收集到的温度和湿度数据,同时传给 OLED 显示屏进行实时数据显示,通过调用 ESP8266Wi-Fi 中的库函数,定时将数据发送到树莓派搭建的服务器中。主控芯片用带有服务器 IP 地址及端口号的命令client.print(String("GET ")+url +" HTTP/1.1\r\n"+"Host:"+ host +"\r\n"+"Connection: close\r\n\r\n")发送到网络接入点进行广播查找与服务器连接。在树莓派中创建 PHP 文件分别利用$_GET(temp)和$_GET(hum)获取 ESP8266发送的温度和湿度数据,通过 INSERT INTO 语句将数据插入MySQL 数据库中,并在 MySQL 数据库中进行处理和保存,用 PHP 编写可视化网页图形显示数据库中的温湿度数据 [1]。如图 2 所示。
2.3 系统功能设计
用户进入系统需输入用户名和密码判断用户是否已注册,如果已注册则判断是否可以登录成功,若登录失败将重新输入,若登入成功将进入系统。若没有注册则输入个人信息进行用户注册,输入有误将返回重新输,输入正确将注册成功进入系统。用户进入系统后可观察温湿度的实时数据以及历史数据,并可增删改查温湿度上下限。若以管理员的身份进入系统还可查看、修改和删除员工个人信息。如图 3 所示。
3系统界面设计
3.1系统中登录和注册功能界面的实现
系统的界面设计包含了系统的注册界面、登录界面、温湿度显示界面、员工信息界面以等他各功能界面,温湿度显示界面分别由每天、每小时、每分钟3个温湿度显示界面组成。如图4所示。
3.2系统主界面的实现
成功登入本系统将进入本系统的主界面温湿度显示界面。该界面主要分为3部分,上半部分是温度和湿度实时数据,这部分每1 min更新1次,便于员工观察温室中温湿度的变化情况。下半部分是温度和湿度的历史数据,便于员工总结最适合温湿度,中下部有增删改查温湿度上下限按钮,当温湿度超出所设定范围时会出现相应的提示,用户可及时发现并做出有效的措施。如图 5 所示。可根据需求通过界面的切换观察每分钟、每小时、每天的数据变化,本功能通过对表中数据进行 ORDER BY time DESC 按照时间升序的方式进行排序,通过 time(time)与 date(time)函数分离时分秒与年月日,并用 DATEDIFF()与 BETWEEN()分别获取前 10 d 内和前 10 h 的所有温湿度数据,计算出每天、每小时的平均数据进行显示。
在下部分表中同一时间段有 3 条实线数据从上至下依次为上限、实时数据和下限,1 条虚线为平均数值。在每个表的左上角都设有 5 个按钮(如图 6 所示)从左到右依次为表单、折线图、柱状图、更新和下载数据图功能符號。点击相应符号会出现相应界面如表单(以温度表为例如图7)和柱状图(以温度表为例如图8)多样化显示可使用户简洁快速查看数据。
3.3员工管理界面的实现
管理员有权限进入员工管理界面,该界面中可清晰观察员工信息,为方便查看更多信息在表下方创建了滑动条。在表中留有“删除”和“修改”按钮列,当员工个人信息发生变化时可以及时对该员工个人信息进行删除或修改。为解决快速查找某个人的个人信息问题,本系统利用员工 ID 唯一性创建“ID 搜索”窗口,方便精准快速查找员工。如图9所示。
4系统电路设计
在本系统中仅有少量的数据需要处理为降低成本主控芯片采用 ESP8266 D1 Mini 开发板足以驱动传感器及显示器,并可以实现将数据发送到服务器。温湿度传感器选用 DHT11具有体积小、响应速度快、抗干扰能力强等优点,适应于不同环境下监测。显示器选用轻薄短小、省电的 OLED 屏幕。硬件设备整体小巧精致,方便放置于各种环境中。如图10所示。
5数据库设计
根据需要本系统选用 MySQL 数据库对数据进行管理。数据库中所存储的数据都是该系统的重要组成部分,因此在设计数据库时高度注重数据库的隔离性、一致性、持久性和原子性。本系统中主要数据库表为保存温湿度以及存储时间表,时间字段为 time 类型定义为datetime 型,并添加自动获取索引,考虑到温湿度的精度及观察方便温湿度类型定义为fl oat 型小数点后两位。如表 1 所示。
6 结束语
本系统的设计采用软件网页和数据库与硬件ESP8266 开发板、OLED 显示屏和 DHT11 温湿度传感器在树莓派做服务器的情况下相互结合,使两大学科相互交叉,打破了传统纯硬件设计及纯软件开发的常规思维方式,设计出温室环境智能监控系统。本系统不仅实现了对传感器数据的实时监测与观察,而且可将数据发送到数据库中进行保存与处理,并以可视化的形式展现在网页上供多人远程查看。有利于观察生产生活及植物生长发育所需更适合温湿度范围,对提高生产生活效率及植物生长发育速率有很大的帮助,存在一定的发展潜力。
参考文献:
[1] 秦琳琳,蒋勇翔,石春,等.基于CAN总线的现代温室测控系统的设计及实现[C].第三十一届中国控制会议论文集C卷.,2012:1838-1842.
[2] 田壮壮,王潇潇,王鑫,等.基于PHP & MySQL的教室环境智能监控系统设计与实现[J].电子技术,2018,47(9):79-82.
[3] 夏龙龙,颜晓元,蔡祖聪.我国农田土壤温室气体障检测仪的研发[J].气象灾害防御,2018,25(2):44-48.
[4] 陈宏,王维洲,廖志军,等.基于智能控制的温室大棚监控系统研究[J].国外电子测量技术,2019, 38(3):117-121.
[5] 李锐.基于AT89C51单片机的大棚温控系统设计[ J].电子制作,2020(2):8-10.
[6] 王一涯,牛涛,陈曙光,等.用于温室大棚的多路远程温控系统设计[J].电脑知识与技术 ,2016,12(31):237-239.
[7] 李涵茜.基于Arduino嵌入式平台智能花盆系统[J].科技资讯,2017,15(33):21-24.