智能水培系统:Arduino Mega 2560 实现光照、温度、湿度自动调控
项目背景
水培技术通过营养液替代土壤,可精准控制植物生长环境,突破季节限制,实现全年栽培。本项目以生菜为模型作物,构建基于 Arduino Mega 2560 的智能水培演示系统,自动调控光照强度(250 μmol/m²/s)、温度(25–30℃)与湿度(50%–80%),并用可可粉模拟基质,验证核心控制逻辑。
硬件清单
- Arduino Mega 2560 ×1 — 多路 I/O 满足复杂外设
- DHT22 温湿度传感器 ×1 — 环境温湿度监测(兼容 DHT11)
- LM35 线性温度传感器 ×1 — 高精度环境温度采集
- 光敏电阻 (LDR) 模块 ×1 — 光照强度检测
- 16 颗 3mm LED(8 红 8 蓝) — 植物补光阵列,4 串 4 并,12V 供电
- 4N35 光耦 ×4 — MCU 与 12V LED 阵列隔离驱动
- 两路风扇(散热/加热)+ 白炽灯 — 温度双向调节执行器
- 电机驱动模块 + 继电器 — 风扇与灯泡功率驱动
- 水泵 + 滴灌管 — 湿度调节执行器
- 面包板/PCB、跳线、12V/5V 电源 若干
软件工具
- Arduino IDE — 固件开发
- SimpleDHT 库 — DHT11/22 驱动
三大控制回路设计
1. 光照控制
LDR 与 5kΩ 固定电阻组成分压电路,ADC 读取电压经公式 lux = 12518931 × R_ldr^(-1.405) 转换为照度,再乘 0.019 得光子通量(μmol/m²/s)。阈值逻辑:<50 μmol 开启四组 LED,>100 μmol 全关。光耦隔离保护 MCU,每组 LED 串联 4 颗共用一只 4N35。
2. 温度控制
LM35 输出 10mV/℃,接 A10 直读。双向调节策略:
- T < 25℃:开启加热风扇 + 白炽灯(灯置外箱,热风吹入,避免干扰光照传感器)
- T > 30℃:开启散热风扇
- 中间区间全关
风扇由电机驱动板控制,白炽灯经继电器驱动,所有大功率负载与 MCU 共地隔离。
3. 湿度控制
DHT11 仅用于湿度读取(响应时间 1Hz,采样间隔 ≥2s)。阈值逻辑:
- Hum < 85%:开启水泵滴灌,关闭散热风扇
- Hum > 94%:开启散热风扇辅助除湿,关水泵
关键注意事项
- DHT11 采样间隔 ≥1s,代码中已设 2s 延时
- LED 串联 4 颗需 12V,勿直接接 5V
- 230V 交流部分(白炽灯)必须绝缘良好,裸导体缠电工胶带
- 光耦输入端必串联限流电阻(~1kΩ)
- 无刷风扇为单向,安装时确认风向
代码结构
模块化设计:temperature()、light()、humidity() 三子函数在 loop() 轮询调用。使用 SimpleDHT 库简化 DHT 读取,LM35 直接 ADC 计算,LDR 经经验公式换算光子通量。所有阈值可通过宏定义快速调整。
扩展方向
- 引入 EC/pH 传感器实现营养液精准配比
- 接入 ESP32/ESP8266 实现 MQTT 云端监控与历史数据存储
- 设计 PCB 一体化主板,替代面包板提升可靠性
- 增加摄像头模块,结合 OpenCV 实现生长图像分析
项目资源
原理图、完整代码可在项目页面下载。建议先在面包板验证各子系统,再集成调试。
制造工艺
- 化肥:科学、生产与可持续未来
- 树莓派 PIR 运动传感器控制 LED 实战指南
- 树莓派低成本土壤湿度传感器:智能灌溉 DIY 指南
- 树莓派 DS18B20 温度传感器测试与 HC-SR04 超声波测距实战
- 树莓派 + MCP9808 + InfluxDB + Grafana:家庭温度监测系统
- Sensor Telemetry 2.0.1:基于 Azure IoT Hub 的高精度温度监控系统
- 低成本情绪传感器与 EEG:实时情绪检测硬件方案
- UnifiedWater v1 — 基于 Arduino MKR GSM 1400 的完整水质监测套件
- MyRiver:基于 Arduino MKR FOX 1200 的河流水质远程监测系统
- 霍尔效应传感器深度解析:原理、应用与设计要点
- 氧传感器 (O2) 详解:作用、位置与故障征兆
- 土壤湿度传感器:工作原理与实用应用