基于STM32的智慧土壤监测系统
摘要:为了实现更精确、更智能、常态化的土壤成分检测,设计了一种可靠、便利的智慧土壤监测系统。该系统是利用STM32F103单片机连接氮磷钾、土壤PH、电导率传感器以及温湿度传感器综合检测土壤的当前状态。该监测装置一方面利用传感器检测土壤的各项指标,另一方面利用Wi-Fi通信模块进行数据传输,把从STM32主控芯片传输的数据传送到腾讯云服务器,从而在农田与专家之间搭建一个沟通的桥梁,实现智慧农业。
关键词:土壤检测;STM32芯片;Wi-Fi通信;腾讯云服务器;智慧农业
近几年来,在素有“大蒜之乡”的金乡县,由于长期重茬种植,每临近收获季节大蒜会出现烂根、坏苗等现象,导致产量和品质不断下降。当地蒜农由于知识水平有限,不了解科学解决办法,盲目大量施肥,不仅没有起到良好效果,反而造成了土质的进一步破坏。同时由于种植方式为个体户种植,蒜田状况多元化,而有关农业方面的专家人数也十分稀缺,指导方式也为传统的线下指导,无法大规模普及。市场上现有的检测装置需耗费大量人力,且在检测常态化方面亦不易实现。为解决此问题,构建了一种高效、便捷、有针对性的土壤监测系统—智慧土壤云监测系统。该系统不仅拓宽了传统线下指导模式的局限性,而且让大蒜种植更加精准化,优化了专家资源配置,减少了化肥、农药等农资消耗,实现技术创新与产业振兴同步共赢。
本系统采用 STM32F103C8T6 芯片作为核心处理器,无线通讯方式采用 Wi-Fi(无线保真)通信,系统将传感器实时采集到的氮磷钾、PH 值、土壤湿度、电导率等土壤参数信息传送到腾讯云服务器,与专家系统数据库中的土壤数据进行比对和分析,最终将监测数据及指导方案反馈给用户。
1 智慧土壤监测系统总体设计
1.1 系统性能指标
系统设计目标主要是精准实时地检测土壤状况,并将土壤参数传输到平台,由专家进行分析评估,从而给出合理的施肥方案并反馈给农户,从而进行有针对性的施肥,以解决大蒜减产问题。其设计主要体现在以下几个方面。
1)将设备的远程监测优势发挥出来,使用户可通过手机、电脑随时查看蒜田的土壤参数。
2)主控芯片能实现对土壤各项参数的集中采集,保证系统安全可靠运行。
3)为了节省劳动力,增设水泵电机和配肥电机,有手动和远程控制两种方式。
4)网络通信系统在保障正常通信的情况下,尽可能地提升信息传递速率,保证用户快速获取指导信息。
5)在保证专用性需求的情况下,保证具有一定的可移植性,方便用于其它农作物的土壤参数监测管理。
1.2 系统总体设计
智慧土壤监测系统主要由电源模块、主控模块、土壤参数检测模块、通信模块几个部分组成。电源模块采用 220 V 交流电通过变压器变成 24 V,然后整形、滤波、稳压芯片获得 12 V、5 V 和 3.3 V 的直流电,分别给继电器线圈、土壤参数传感器、Wi-Fi 通信模块供电。系统中,各种土壤参数传感器负责采集各种数据并传送到主控芯片,主控芯片对数据进行接收并处理。一方面通过通信系统传输到终端控制器或用户,另一方面根据反馈信息可以手动或远程操控完成对水泵和配肥电机的驱 动控制,进而完成对土壤环境参数的调控。系统的总体设计框架如图 1 所示。
图1 智慧土壤检测系统总体设计
2 系统硬件设计
根据系统总体设计,硬件电路主要包括主控制器 STM32F103C8T6 电路、传感器接口电路、电机启停电路和无线传输电路,各模块之间相互配合,共同完成对土壤参数的检测与反馈工作。
2.1 STM32主控模块
本系统的主控芯片选用的是 STM32F103C8T6,一款基于 Cortex-M3 内核的单片机,其电压供电范围为 2.0 V ~ 3.6 V,CPU(中央处理器)的最大工作频率可以达到 72 MHz,具有接口多、功耗低、功能强大、性能稳定等特点。丰富的外部接口,保障了系统的开发需要。其卓越的单周期乘法指令和硬件除法,以及优先级可编程的中断系统使其数据处理快、性能优越。该芯片完善的功能模块,极大简化了系统电路设计并减少了外围电路的成本。因此智慧土壤系统设计选用 STM32F103C8T6作为主控芯片能实现多个传感器连接、控制设备的启停、数据的无线传输等系统需要实现的功能。
2.2 传感器接口电路
土壤氮磷钾测量传感器采用的是恩赛电子公司生产的 PR-3000-TR-NPK-N01,该传感器由电源模块、变送模块、温度补偿模块、数据处理模块等部分组成。用户接口简洁、方便,可以测量土壤中氮磷钾离子含量,测量量程分别为 0 ~ 500 mg/kg,0 ~ 20 000 mg/kg, 0 ~ 30 000 mg/kg,RS485 型传感器,通过 MAX485 接单片机的 UART(通用异步收发器)3 口,其接口电路如图 2 所示。
图2 氮磷钾传感器485通讯引脚接线图
PH 值传感器采用的是 JXBS-3001-TR、电导率传感器采用的是PR-3000-TR-EC-N01,都适用485协议 , 也通过 MAX485 与单片机的 UATR 口连接,其接口电路与土壤氮磷钾测量传感器的连接类似,这里不再赘述。
2.3 水肥控制电路
当传感器测试的数据经平台专家系统诊断后,根据反馈结果可以采用手动方式或者远程操控方式启动水泵电机进行灌溉,也可以同时启动配肥电机完成肥料的同时加配。水肥控制电路如图 3 所示。单片机的信号通过光电隔离 TLP281 进行隔离后再经过 MMBTA06 三极管驱动后控制直流 12 V 继电器的通断,进而控制水泵电机的启停。
2.4 无线传输电路
无线通信采用 ESP8266Wi-Fi 通信模块。ESP8266 是上海乐鑫信息科技设计的低功耗 Wi-Fi 芯片,集成完整的 TCP/IP 协议栈和 MCU(微控制器),通过串口 AT 指令与单片机进行通讯,具有成本低、使用简便、功能强大等特点。ESP8266 通信模块接口芯片共有 8 个引脚,其引脚功能如表 1 所示。
表1 ESP8266Wi-Fi通信模块引脚功能介绍表
正常工作时该模块与单片机的接口电路如图 4 所示,VCC 接 3.3 V 电源正极。UTXD D 引脚分别接单片机 UART2 口的 PA2 与 PA3。其中 UTXD 为串行输出端, URXD 是串行输入端,完成URX成系统的串行通讯任务。当使用串口调试时把模块与下载器的 TXD 和 RXD 交叉连接 , 通过串口助手进行系统调试。
引脚 CH_PD 为芯片通断电控制,因需频繁启动,连接 10 K 上拉电阻,方便进行供电。
引脚 GPIO16 为 RST 外部复位引脚,连接 PA6 引脚,工作时保持高电平。
引脚 GPIO 0 外接一个按键,通过 10 kΩ 的电阻接 3.3 V 电压,用于工作模式选择,ESP8266 有两种工作模式,当按键按下时,GPIO 0 接地,此时为烧录模式,不按则为 VCC,正常工作 [5]。
电路连接完成后,需将 GPIO 0 引脚悬空,通过串口调试助手发送 AT 指令,对 ESP8266 进行设置。发送 AT+CIPMUX = 0 设置为单路连接模式,再通过 AT+CIPSTART =“TCP”,“IP”,port 设置上报服务器,当设备运行后,会自动向服务器发起 TCP 连接请求,成功并建立连接后,服务器端即可获取客户端鉴权数据,并做好数据通信准备。
3 系统软件设计
如图 5 所示,底层检测设备通过互联网将数据传送到数据库,有两种通讯方式,一种是将下位机连接网关,然后与服务器实现连接,优点是直接与网关连接 , 操作简单,连接稳定,持续运营成本较低,但是存在网络布线成本,需要检测设备被网络覆盖。另一种方式为下位机通过物联网卡等通过移动网络直接与服务器相连接,这种方式的优点在于可以不需要进行网络布线,能够摆脱地理位置的限制,但成本高,且连接可能存在不稳定的情况。
综合考虑,我们采用下位机通过网关与服务器相连接的方式,数据通过网关连接到数据上报接口,从而连接到服务器,服务器分为数据处理服务器和数据存储服务器,数据处理服务器主要用来处理下位机上报的数据,进行用户鉴权,同时判断是否需发出警告信息,并将数据上报至数据存储接口,最终保存至数据库中。
数据处理服务器对性能要求更高,因此采用一主一副一备的设计,保证稳定运行,而数据库采用一主一备的设计,保证数据安全。最终,用户端通过APP或网页端,访问数据库中的数据。
下位机客户端通过 ESP8266 串口 Wi-Fi 模块, 连接至 Wi-Fi,通过互联网上报至位于腾讯云的服务器,云服务器获取数据后,通过用户登录的 User_ID 及 access_token 确定用户身份,将其上报的数据分析,将数据存入数据库。
图5 系统数据传输架构图
接口服务器组采用一主一副一备的设计,主、副服务器组位于同一区域,当主服务器出现超负载时,及时启用副服务器进行数据分流,倘若主副服务器所在区域遭遇网络障碍或其他故障,及时启用不同区域内的备用服务器,保证业务畅通。
数据库采用单独的服务器来保证在接口服务器切换时的可靠性以及与其他组件(如用户面板,监测系统等)的连通性,同时便于数据库进行备份。另设一台物理服务器,将云服务器中的数据实时备份至本地,便于数据管理 [7]。
在线服务器单台采用腾讯云 8 核 16 G 云服务器,保证足够的数据吞吐能力,本地物理服务器采用 E5- 2651V2,24 核,128 G,ECC 内存,同时增设 RAID(磁盘阵列)1 保证数据可用性。
4 系统调试
首先给整个系统通电,系统对各个模块初始化配置,电源灯亮表示通电正常。接着看 LED(发光二极管)屏幕显示各数据是否精确,若显示精确,则开始测试通信模块是否能正常工作。
在安装好 USB-TTL 模块的驱动程序后,接通设备,通过设备管理器查看模块串口号,打开串口调试工具 XCOM,选择模块所对应的串口号,其中默认波特率为 115200,数据 - 停止 - 校验 - 流控:8-1-None-None, 勾选“发送新行”,点击“打开串口”按钮,然后发送 AT 指令,若串口打印乱码后看到“OK”,则说明模块此时进入 AT 模式。和某些需要按键进入 AT 指令模式的蓝牙模块不同,ESP8266 上电后就自动运行在 AT 指令模式下,极大简化了操作流程。
图6 传感器检测结果对比图
将氮磷钾传感器等插入到土壤中,打开电源,观察 LED 显示屏以及腾讯云服务器信号接入情况及土壤参数实时动态变化。当向土壤倒入钾肥水溶液时,若服务器显示钾含量明显增高(如图 6 所示),且系统发出提醒则证明系统各功能可正常运行,即测试完成,其它参数的测试也类似。经过上述测试,对中间调试过程中出现的问题及时进行解决,测试结果分析如下:整个智慧土壤监测系统基本实现了实时监测、远程分析等功能,达到了预期目标,完成了本次系统设计要求。
5 结语
本文给出了一种基于 STM32 单片机的智慧土壤监测系统的设计方案,通过 STM32F103C8T6 单片机主控模块、Wi-Fi 通信模块、传感器模块等各个单元相互配合来检测土壤的各项参数指标,同时针对目前蒜农对于蒜田土壤监测及指导的需求,通过腾讯云服务器开发了专家系统数据库,将检测到的土壤数据发送到数据库进行比对分析,从而有针对性的对蒜田进行施肥指导。用户可通过登录网址实时查看土壤各项参数指标,实现对蒜田蒜苗生长状况的随时监测,让每块蒜田都能得到专业的守护,摆脱农业专家传统线下指导带来的局限,实现真正的高效现代农业。
参考文献:
[1] 赵丹丹,李红.基于STM32的远程厨房安全系统设计[J].电子产品世界,2021,28(11):74-76.
[2] 李学亮.基于WSN的土壤环境质量智能监测研究[D].南京:南京林业大学,2013.
[3] 程丽平,谢清勇,孙茜,等,一种智能土壤检测用土壤快速筛分设备[P].国家实用新型专利,第14221817号.
[4] 李得至,邓鹏,唐文涛,等.基于云平台的智能实验室远程监控系统[J].机电工程技术,2021,50(3):132-134.
[5] 张彬露.农业专家系统概述与优化研究[J].农村经济与科技,2020,31(15):341-342+354.
[6] 蔡倩,刘奇,顾敏明.基于WSN的多通道室内环境智能评价研究[J].物联网技术,2020,10(11):3.
[7] 王国杰,赵继春,王敏,等.基于NB-IoT技术的土壤墒情远程智能监测系统设计[J].中国农机化学报,2021,42(5):7-9.
[8] 赵磊.基于云平台的温室智能灌溉系统的研究与开发[D].兰州:兰州理工大学,2020.
(注:本文转载自必威娱乐平台 2022年7月期)
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码