
一、项目背景
传统大棚、农田种植模式中,灌溉施肥大多依靠人为经验判断,容易出现浇水过多或者肥料施加不均衡,造成土壤板结、肥料流失、水资源浪费等问题。水肥一体化技术可以根据土壤实际状态按需供给水和肥料,实现节水节肥。 本项目以 STM32F103C8T6 为主控芯片,在 Proteus 仿真环境搭建完整硬件电路,实现土壤多参数监测、水肥比例可控、自动灌溉施肥、本地显示、串口输出、声光报警等全套功能,低成本实现智慧农业前端监控节点。
二、系统总体方案
2.1 硬件框架
系统分为五大单元:
- 主控单元:STM32F103C8T6 单片机,负责 ADC 采集、逻辑判断、外设驱动、模式管理。
- 信号采集单元:ADC 模数转换,采集土壤湿度、NPK 养分、PH、水肥配比设定电位器信号。
- 人机交互单元:0.96 寸 OLED 显示屏、功能按键(模式切换、开关控制)、串口虚拟终端输出。
- 执行驱动单元:三极管 + 继电器驱动清水泵、施肥泵、灌溉电磁阀。
- 报警单元:蜂鸣器模块,参数异常时触发报警提示。
2.2 Proteus 仿真电路说明
电路核心器件说明:
- 主控:STM32F103C8T6 单片机
- ADC 采集:多个电位器模拟土壤湿度、NPK、PH 传感器输入,同时电位器用来设定水肥配比;
- 显示:OLED 屏幕实时刷新土壤湿度、NPK、PH、水肥比例;
- 按键:实现手动 / 自动模式切换、系统开关控制;
- 驱动电路:NPN 三极管驱动继电器线圈,继电器分别控制清水泵、施肥泵、灌溉电磁阀;二极管做续流保护;
- 蜂鸣器:土壤参数异常时蜂鸣器报警;
- 串口:虚拟终端打印实时监测数据,方便调试查看。
三、系统功能详解
3.1 土壤多参数采集
系统利用 STM32 内部 ADC 外设,读取模拟信号,模拟采集:
- 土壤湿度:反映土壤墒情,作为灌溉触发条件;
- NPK 养分:检测土壤氮磷钾含量;
- PH 酸碱度:监测土壤酸碱环境;
- 水肥比例设定:通过电位器可以调整水与肥料配比比例。
采集到的数据一方面刷新 OLED 屏幕,另一方面通过串口输出到 Virtual Terminal 虚拟终端。
3.2 手动 / 自动双模式
✅ 自动模式 单片机读取土壤各项参数,结合设定水肥比例,自动调度设备:
- 土壤湿度过低:自动开启清水泵、施肥泵、电磁阀,按照设定水肥比例灌溉施肥;
- 土壤湿度达到阈值,自动关闭泵体与电磁阀,停止作业;
- 土壤 PH、NPK 超出合理区间,蜂鸣器启动报警。
✅ 手动模式 可以通过按键直接控制清水泵、施肥泵、电磁阀的开启关闭,人工干预灌溉施肥操作,方便调试和特殊场景使用。
3.3 数据显示与串口输出
- OLED 屏幕实时显示:土壤湿度、NPK 数值、PH 数值、当前水肥比例;
- 串口虚拟终端同步打印全部监测数据与系统工作模式,方便调试、数据记录。
3.4 报警功能
当土壤湿度、PH、NPK 等参数超出预设合理范围,蜂鸣器模块触发报警,提醒环境异常。
四、软件设计思路
- 初始化:系统时钟、GPIO、ADC、I2C‑OLED、串口外设初始化;
- ADC 循环采集:循环读取各路模拟通道,转换得到湿度、NPK、PH、水肥配比参数;
- 按键扫描:检测按键状态,完成手动 / 自动模式切换、启停控制;
- 逻辑处理:
- 自动模式:对比采集值与阈值,输出控制信号,控制继电器驱动水泵、电磁阀;异常触发蜂鸣器;
- 手动模式:直接根据按键状态控制执行器件;
- 信息输出:刷新 OLED 显示,串口打印数据;
- 循环往复。
核心逻辑伪代码
while(1)
{
Read_ADC(); //读取土壤湿度、NPK、PH、水肥比例
Key_Scan(); //按键扫描
if(mode == AUTO)
{
Auto_Control();//自动水肥灌溉逻辑
}
else
{
Manual_Control();//手动控制逻辑
}
OLED_Show(); //OLED刷新显示
UART_SendData(); //串口打印数据
Buzzer_Check(); //异常报警判断
}
五、仿真运行效果
运行仿真后:
- OLED 屏幕实时输出
湿度、NPK、PH、水肥比例; - Virtual Terminal 虚拟终端同步打印监测数据与工作模式;
- 调节电位器,模拟土壤环境变化,系统会根据参数变化,自动启停清水泵、施肥泵、电磁阀;
- 切换手动模式,可以按键直接控制各个执行机构;
- 参数异常,蜂鸣器响起报警。
仿真截图效果如上图所示,可以看到系统稳定采集各项参数,自动模式下按照 1:99 水肥比例进行水肥调控。
六、项目拓展方向
当前为 Proteus 仿真版本,如果落地实物,可以继续拓展:
- 外接真实土壤湿度、NPK、PH 传感器,替换电位器模拟输入;
- 增加 ESP8266/Wi‑Fi 模块,把数据上传云平台,实现远程监控;
- 增加存储模块,保存历史土壤数据;
- 优化控制算法,引入简单 PID 算法,更加精准调节水肥配比;
- 增加上位机,电脑端可视化监测界面。
七、总结
本项目基于 STM32 单片机完成水肥一体化智能监控系统,实现土壤多参数采集、水肥配比可调、手动自动两种工作模式、执行机构自动控制、OLED 与串口双重数据输出、异常报警功能。Proteus 仿真完整可运行,可以作为单片机毕设、课程设计、智慧农业入门学习案例。
通过网盘分享的文件:仿真文件获取.zip
链接: https://pan.baidu.com/s/1V5zzxbpHc_fRqfGIzSdLfg?pwd=6666 提取码: 6666