基于STM32的智慧农业大棚监测系统设计

2024-04-28 06:36胡建涛陶表鑫陈子涵李仲宇
无线互联科技 2024年5期
关键词:公网温湿度端口

胡建涛,陶表鑫,陈子涵,李仲宇

(东南大学 成贤学院,江苏 南京 210000)

0 引言

全球智能化农业发展迅速,尤其在发展中国家。智慧农业市场潜力巨大,正处于快速扩张阶段。虽然不同地区的推广程度有差异,市场竞争格局较为分散,但是细分市场正在稳健增长。基于STM32的智慧农业系统能够更加高效和科学地管理农业大棚,实现实时监控和快速响应。

1 系统总体设计

硬件部分的设计,本系统采用了STM32单片机作为核心控制芯片,有效整合了数据采集模块、设备管理模块和数据展示模块。终端数据采集系统用STM32单片机作为控制核心,通过各类传感器实时采集大棚的温湿度、CO2浓度、光照强度等信息。云平台监测中心与终端采集系统建立连接并实现数据传输[1]。

系统软件设计,基于Keil5进行编程,其中含有数据采集程序、智能控制程序。基于阿里云联网平台并配置云智能App实现数据实时显示及远程控制等。此外,该监测系统利用Arduino 控制ESP32-CAM和OV2640,并通过互联网进行远程查看。系统整体设计流程如图1所示。

图1 系统整体设计流程

2 系统的硬件设计

2.1 数据采集模块

2.1.1 温湿度采集模块

本系统采用DHT11类型的数字温湿度感应器。DHT11是一种集成了已校准数字信号输出的温度和湿度传感器,能够直接与单片机连接,通过单总线协议与单片机进行数据交换。温湿度传感器以其成本低、性能稳定、响应快速、抗干扰性强、数字化输出和校准性能高而受到青睐[2]。

2.1.2 光照强度模块

在监测光照强度方面,系统采用了BH1750数字光感应器。BH1750可以直接提供数字信号输出,简化了和微控制器等数字设备的接口,能够检测环境光强,并通过数字信号输出结果,能够提供高精度的光强测量。

2.1.3 CO2浓度监测模块

系统中的SGP30气体感测器主要用于室内空气质量监测,能够检测多种气体的浓度,包括总挥发性有机化合物和CO2浓度。

SGP30具有高灵敏度和精度,能够检测到低浓度的气体。传感器提供自动基线校准功能,确保长期运行的准确性。

2.2 数据展示模块

2.2.1 显示模块

系统选用OLED屏幕作为其主要的数据展示界面。OLED屏幕与传统的LCD 显示不同,OLED 可以自发光,所以不需要背光灯,同时具有更低的功耗。OLED 显示屏还拥有非常高的对比度与极高的反应速度,内部的驱动芯片为SSD1306,通信方式为IIC。

2.2.2 监控模块

本系统使用的是一种基于ESP32-CAM芯片的无线监控系统,该系统通过结合ESP32-CAM的Wi-Fi和OV2640高清摄像头、Blynk物联网App,不仅实现了远程监控,而且在同一互联网内实现了高速数据传输,显著提升了特定环境下视频画面的质量和稳定性[3]。取得自己的公网IP之后,再绑定ESP32-CAM芯片作为系统的核心,使用OV2640摄像头进行实时视频监控,将捕获的图像数据传送到ESP32-CAM芯片处理后,再通过Blynk物联网App访问已绑定设备的视频流IP并显示。如图2所示是由ESP32-CAM摄像头拍摄的图片。

图2 由ESP32-CAM摄像头拍摄的图片

在 Arduino IDE 中为ESP32 -CAM设定好Web Server。服务器提供了一个可以通过网络访问的接口,用于展示摄像头捕获的图像信息。Web Server 将在局域网内的某个IP地址和端口上运行。确保知道这个地址和端口,因为需要将它们映射到公网 IP 地址。在路由器上设置端口转发,将外部访问到公网 IP 上的特定端口转发到ESP32 -CAM的局域网 IP 地址和端口上。这样任何发往公网 IP 特定端口的请求都会被转发到 ESP32-CAM中,在 DDNS 服务上配置域名,指向公网 IP 地址。当公网 IP 地址变化时,DDNS 服务会自动更新。完成以上设置,就可以通过域名和公网端口来访问ESP32-CAM实现远程监控,工作过程如图3所示。

图3 ESP32-CAM工作过程

2.3 设备管理模块

水泵、风机、阀门和蜂鸣器均由继电器控制,在前面所监测的数据与人为设定的阈值不相等时,由STM32自动控制继电器,再由继电器控制各类设施工作。水泵和风机由继电器控制启动与停止;阀门是由舵机模拟控制;蜂鸣器采用电磁式蜂鸣器,在监测设备检测到数值与人为设定值不相符时,蜂鸣器触发系统警报,实时反馈给管理者让其能够有针对性进行相应的调控对策,以促进农作物的最优化生长[4]。

3 系统软件设计

本系统在Keil5环境下开发了底层控制软件,覆盖数据收集和智能控制等多个功能模块。同时在Arduino的开发环境下控制监视系统。同时在生活物联网平台下搭建上位机,主要包括数据实时监测、数据处理、数据反馈及远程控制等。

3.1 MQTT 通信协议

MQTT协议是主题订阅与发布的协议,当前设备是应用MQTT协议与阿里云平台进行通信。MQTT是一个针对物联网场景专门设计的通信协议,使用轻量级的发布/订阅方式来传输消息。针对低带宽和有限的计算资源进行优化,确保在各种物联网应用场景中都能提供高效的服务[5]。这种基于消息队列的协议运用发布/订阅模型,实现一对多的消息传递,有效地减少了应用程序之间的相互依赖,相较于其他协议,其开发过程更为简洁。本次设备采用的ESP8266就具备TCP协议栈,能够建立TCP连接,所以,配合STM32代码里封装的MQTT协议,就可以与阿里云平台完成通信。MQTT连接需要填写用户ID、设备ID、设备密码等信息才能登录。MQTT协议登录的这3个参数,一般称为设备三元组。

3.2 服务器实现

本系统利用MQTT协议连接阿里云服务器,智慧农业大棚设备通过 ESP-01S对服务器的主题进行订阅,客户端也对相同的主题进行订阅,当有一方发布消息时,订阅主题的客户端均可收到消息,通过对消息的编码与解析区分不同的命令消息。

4 系统性能测试

激活系统硬件后,安装在大棚内的传感器开始监控空气和土壤的温度、湿度以及CO2浓度等环境参数。并通过ESP-01S通信模块将环境监测数据上传给阿里云平台。上传成功后,用户可以打开云智能App或Web端查看监测到的大棚内环境参数信息,手机端云智能App界面如图4所示。电脑端展示界面如图5所示。网页端展示界面如图6所示。

图4 手机端云智能App界面

图5 电脑端展示界面

图6 网页端展示界面

采集到的空气的温湿度、光照强度和CO2浓度、土壤湿度等数据还可以通过OLED屏幕展示。OLED屏幕显示界面如图7所示。

图7 OLED屏幕显示界面

此外,用户可通过客户端进行底层设备的控制。该系统能够对监测到的数据和用户设定的阈值进行比较。若数据超过预定阈值,系统会立即向用户发送预警信号。这样用户可以及时了解温室内的环境变化,并迅速采取相应措施。同时,该系统还具备自动控制功能,能够操作相关的硬件设备,以调整温室内的生长环境,有利于植物生长。测试结果表明,设备可以达到预期效果。

5 结语

本系统实现的功能如下。

数据采集方面:通过硬件系统中的各类传感器模块进行数据采集,将数据传送给单片机。远程控制方面:通过云智能App或者Web端对底层硬件进行控制。实时监控方面:采集的数据可在OLED屏幕上展示,也可在App上展示。用户可以清晰获知参数在各时间段的变化。

此系统通过多种传感器模块持续追踪温室内的环境参数,随后通过通信模块将这些数据发送到云端服务器。后台管理系统分析并处理接收到的环境监测数据,并且为用户提供数据的可视化展示,根据这些数据对大棚内的各种硬件设施进行管理和控制,使其更加“智慧”。

猜你喜欢
公网温湿度端口
浅析大临铁路公网覆盖方案
温湿度控制器在回收砂冷却系统中的应用
公网铁路应急通信质量提升的技术应用
基于DSP的多路温湿度监测系统
基于温湿度控制的天气预测装置
端口阻塞与优先级
蒸发冷却温湿度独立控制空调系统的应用
基于公网短信的河北省高速公路数据传输应用
初识电脑端口
生成树协议实例探讨