摘要: 设计了基于机智云IoT开发平台的温室番茄远程监控系统,上位机由手机APP终端和机智云平台组成,下位机部分采用STM32F103单片机作为控制器将传感器获取的环境参数上传至上位机,esp8266Wi-Fi模块实现了上位机与下位机之间的数据交互。用户可使用上位机对温室番茄环境生长参数进行远程监测和实时调控,经测试该设计数据获取准确、系统运行稳定,实现了预期的功能。
关键词: 温室番茄 机智云IoT开发平台, Wi-Fi
1引言
云平台又叫云计算平台,它是向用户提供基础服务、数据、中间件和数据服务的平台。云平台按照不同的服务类型可以分为存储型、计算型及综合型3类平台。我国现代设施农业的发展趋向智能化发展,传统温室番茄的种植存在许多不利的因素,难以满足消费者对番茄产量及品质的需求。随着云平台技术及物联网技术应用于农业生产,对温室番茄进行远程管理可以提高种植效率,是我国精细农业政策的具体体现。
系统总体设计方案
基于机智云平台的温室番茄远程监控系统整体设计如图1所示。其中,上位机包括手机APP终端和机智云IoT开发平台,用户可以通过手机APP终端查看由下位机上传的温室番茄环境参数,还可以发送操作指令通过Wi-Fi无线通讯模块传输给下位机,远程控制LED光源亮度和排气扇运行状态。
下位机是由环境参数传感器(温湿度传感器、光照传感器和CO2传感器)、控制器STM32F103、LED光源和排气扇控制模块等组成。控制器接收温湿度传感器、光照强度传感器和CO2传感器所采集的温室番茄环境参数,通过Wi-Fi无线通讯模块上传至机智云IoT开发平台及手机APP终端,并且下位机作为执行机构可执行由手机APP终端和机智云平台下传的操作指令。
该系统主要实现的功能为通过手机APP终端和云平台可实时查看温室中番茄生长的环境参数,并且通过Wi-Fi技术和云平台实现上位机和下位机的通讯,实现手机APP终端远程管理调控温室番茄环境参数。对于温室番茄,温度对其生长的影响要高于相对湿度和光照强度的影响.
根据温室番茄的生长特性对环境传感器的参数做出以下要求:温度传感器测量范围0~50℃,精度±2℃;湿度传感器测量范围20%~95%RH,精度±5%RH;光照强度传感器的测量范围0~65 535lx,精度±2lx;CO2传感器测量范围0.04%~6.00%,精度为±0.000 2%。
2,硬件设计
基于机智云IoT开发平台的温室番茄远程监控系统的硬件主要由STM32F103ZET6单片机、DHT11温湿度传感器、GY-30光照传感器、SGP30气体传感器、ESP8266-01S Wi-Fi模块、LED光源及排气扇控制模块等组成。
2.1环境参数传感器
DHT11温湿度传感器是集温度、湿度测量于一体的传感器,采用单总线的方式与单片机相连接[4]。单总线通信提高了单片机IO口的利用率,DHT11温湿度传感器模块的DAT引脚与STM32F103单片机的PA11引脚相连接。
GY-30光照传感器以BH1750 FVI芯片为核心,内置16位AD转换器。GY-30光照传感器模块将经过AD转换生成的数字量采用IIC通信的方式传输到STM32F103单片机,IIC通信线分别与STM32 F103单片机的PB3和PA15连接。SGP30气体传感器内置4个气体传感元件可检测甲醛、CO2等气体。本次设计主要检测温室番茄的环境生长参数,故只需检测温室中CO2含量即可,SGP30气体传感器模块通过PB0和PB1与STM32F103单片机相连接采用IIC通信的方式。环境参数传感器参数如表1所示。
2.2 Wi-Fi模块
Wi-Fi无线通讯模块采用乐鑫公司的ESP8266-01SWi-Fi模块。ESP8266-01S Wi-Fi模块内置芯片为ESP8266EX,ESP8266EX采用32位的处理器,内部集成了许多模块如Wi-Fi天线、滤波模块及功耗管理模块等,同时还提供丰富的通讯接口如SPISDIO、UART以方便与MCU通讯。ESP8266EX引脚如图2所示。由于ESP8266EX芯片具有强大的功能属性,它既可以作为独立的Wi-Fi开发对象供开发者开发,又可以烧写固件作为从机采用串口通讯与MCU连接。本次设计将ESP8266-01S Wi-Fi模块作为从机,确保能够与机智云平台通讯必须烧写由机智云官方提供的Wi-Fi固件。固件可到机智云官网的下载中心查看,下载使用即可,采用串口通信的方式与单片机进行数据交换,ESP8266-01SWi-Fi模块的RXD引脚连接单片机的PB10引脚,TXD引脚连接单片机的PB11引脚。
ESP8266EX引脚图
3,软件设计
3.1主程序设计
基于机智云IoT开发平台的温室番茄远程监控系统的主程序流程如图3所示。首先单片机系统、各个环境传感器模块及ESP8266-01S Wi-Fi模块初始化。通过按键扫描将手机APP终端与Wi-Fi模块进行网络配置,单片机判断Wi-Fi模块是否进入Air-Link模式。若进入Air-Link模式,各个环境传感器模块所采集的温室数据通过ESP8266-01S Wi-Fi模块上传至机智云平台和手机APP终端,用户则可以通过机智云平台和手机APP终端直接查看温室番茄的环境参数。
主程序流程图
3.2 机智云IoT开发平台设计
机智云是致力于为开发者提供智能硬件开发及云服务的平台。它为消费者提供了详细的开发流程、丰富的开源代码及便利的测试工具,可提高开发效率,缩短开发周期,深受开发者欢迎。首先,根据系统不同的功能需求在机智云平台创建所对应的数据点,如表2所示。其次,可使用机智云平台提供的虚拟设备调试工具,模拟数据上报验证已创建数据点的可实施性,测试无误后在MCU开发选项中根据不同MCU的型号下载所对应的下位机代码。本文所使用的下位机端代码是适用于STM32系列的单片机。
3.3 Wi-Fi模块软件设计
GAgent固件是机智云专为ESP8266 Wi-Fi模块开发的一款Wi-Fi固件。将它烧录到Wi-Fi模块可实现上层应用如机智云平台、手机APP终端与产品设备之间的相互通信。使用ESP8266专用烧写软件向Wi-Fi模块烧录GAgent固件后,实现Wi-Fi模块与手机APP终端配置入网。
Wi-Fi模块作为网关实现上位机与下位机相互通信,主要分为两个部分。
(1)下位机数据上传至上位机,STM32单片机将各个传感器模块采集的环境参数数据通过USART3存储在结构体函数current Data Point中,调用user Handle函数将数据上传至上位机。
(2)上位机指令下传至下位机,手机APP终端和云平台将修改LEDPWM值和排气扇状态的指令通过Wi-Fi模块发送至STM32单片机,在EventProcess函数中触发所对应的事件(控制LED光源亮度、控制排气扇状态)。
4,系统测试
使用机智云APP在机智云平台扫描二维码绑定虚拟设备获取相应的工程项目,保证手机和Wi-Fi模块连接在同一无线网络下,点击“一键配置”进行Wi-Fi模块的配置入网。根据Wi-Fi模块不同生产厂商进行选择,本文所使用的Wi-Fi模块型号为乐鑫公司的ESP8266-01S。确保手机APP与Wi-Fi模块配网成功后即可在“我的设备”查看已开发的个人项目,进入温室番茄环境监控界面即可查看由下位机所采集的温室番茄环境参数,点击风扇按钮和LEDPWM值可控制下位机调整排气扇状态及LED光源亮度,手机APP终端控制界面如下图所示。
手机APP终端控制界面
5结束语
本文使用Wi-Fi和云平台技术实现了温室番茄环境生长参数的远程监控系统,用户可使用手机APP终端和机智云IoT开发平台实时获取番茄环境生长参数并发出控制指令改变LED光源亮度及排气扇状态,STM32F103单片机作为下位机的控制核心,负责环境参数的上传和执行上位机命令。经测试,本次设计实现了温室番茄环境生长参数的远程监控,极大程度提高了温室番茄的种植效率。