一、项目概述
ESP32 Plant Sensor 是一套面向智能家居爱好者的开源多路植物土壤湿度监测解决方案,硬件为 ESP32 专用扩展 PCB,软件基于 ESPHome 开发,采集数据无缝接入 HomeAssistant。项目初衷是解决商用植物监测传感器(MiFlora、涂鸦 Zigbee 土壤探头)单价高、多盆绿植批量部署成本昂贵的痛点,用一块扩展板同时驱动 6 路电容式土壤湿度传感器,实现多盆植物集中监测。
硬件 PCB 兼容 V1.2、V2.0 两个版本的电容土壤湿度探头,板载 JST 2.0mm 立式插座,传感器采用插拔式连接,布线整洁,拆装维护方便。PCB 设计为传感器提供稳定 5V 供电,保证新旧版本电容探头均可正常工作。整套硬件支持外壳装配,螺丝固定结构,可做成完整成品设备,不只是面包板临时实验方案。
二、硬件设计说明
主控采用 ESP32 DevKit 开发板,扩展板引出 6 路 ADC 模拟采集通道,引脚分配:
ADC1 → GPIO36
ADC2 → GPIO39
ADC3 → GPIO34
ADC4 → GPIO35
ADC5 → GPIO32
ADC6 → GPIO33
引脚选型优先选用 ESP32 的 ADC1 组,规避 ESP32 固有硬件限制:ESP32 的 ADC2 外设会在 WiFi 启用时受到干扰、采样不稳定,因此本项目尽可能使用 ADC1 通道,保障联网状态下土壤湿度采样的稳定性。
PCB 经过迭代优化,调整了直插焊盘的孔径公差,解决初代版本孔位公差偏小、焊接困难的问题。板上预留 4 个安装孔,使用 M2.4 螺丝将 PCB 固定在配套外壳内。 BOM 清单:
ESP32 DevKit 开发板(匹配项目引脚定义)
6 个 JST B3B-XH-A(2.0mm 立式插座)
4 颗 M2.4 螺丝,用于 PCB 外壳固定
传感器采用电容式土壤湿度探头,区别于电阻式探头:电容式不会发生电极腐蚀,使用寿命更长,适合长期埋入土壤持续监测。
三、软件方案
项目固件使用 ESPHome,不需要编写 C/C++ 底层代码,通过 yaml 配置文件完成设备定义、ADC 采集、传感器校准。 核心校准方案:calibrate_linear线性校准。每一路探头需要完成两点标定:
探头完全干燥状态(空气中)
探头完全浸入清水状态 ESPHome 会基于这两个采样点自动映射湿度百分比,抵消不同探头之间的硬件个体差异。
配置文件会在 HomeAssistant 中生成 6 个独立植物实体,每一路传感器单独命名,独立展示土壤湿度数值。可在 HomeAssistant 平台配置自动化规则:土壤湿度低于阈值时推送缺水告警、联动水泵实现自动浇水。
四、适用场景与优势
多盆栽绿植集中监控:家庭阳台、室内花园一次性监测最多 6 盆植物,单盆硬件成本远低于 Zigbee 商用植物传感器。
智能家居集成:数据接入 HomeAssistant,和灯光、灌溉系统联动,构建完整园艺自动化。
开源可定制:PCB 工程、外壳文件、ESPHome 配置全部开源,开发者可修改 PCB,增减传感器通道,修改外壳尺寸。
稳定耐用:电容式探头无腐蚀问题,插拔式 JST 接口方便更换损坏探头,维护简单。
五、局限性说明
受 ESP32 ADC 硬件特性影响,模拟采样存在少量噪声,可在 ESPHome 配置里增加采样滤波平滑数据。
电容土壤传感器测量会受土壤盐分、土壤紧实度轻微影响,必须完成干湿两点校准才能获得准确读数。
本方案依赖 WiFi 网络,断网状态下无法向 HomeAssistant 上传数据。
六、项目总结
ESP32 Plant Sensor 提供了一套低成本、可落地、软硬件完整的开源植物监测方案。从 PCB 硬件、外壳结构到 ESPHome 配置全部开放,适合 DIY 爱好者复刻,批量部署多通道土壤湿度监测,在 HomeAssistant 中实现绿植状态可视化与自动化灌溉。
