1小时搭建ESPHome漏水检测报警系统指南
2026/9/14 11:36:06 网站建设 项目流程

1小时搭建ESPHome漏水检测报警系统指南

【免费下载链接】esphomeESPHome is a system to control your ESP32, ESP8266, BK72xx, RP2040 by simple yet powerful configuration files and control them remotely through Home Automation systems.项目地址: https://gitcode.com/GitHub_Trending/es/esphome

凌晨两点,卫生间地漏渗水,你被客厅的蜂鸣器声叫醒,此时地面只湿了一小片——因为 ESPHome 漏水检测系统在传感器触发后 1 秒内就拉响了本地警报。整套方案物料成本不到 50 元,1 小时可完成从配置到通电的全过程,只需写一段 YAML 配置文件(一种用缩进描述设备行为的文本格式),无需编写代码。

📋 三种漏水检测方案选型对比

方案成本上手难度可维护性
商用 Wi‑Fi 漏水探测器百元级/台开箱即用依赖厂商 App 与云服务,固件不可改
ESPHome + ESP8266 自组(本文方案)几十元复制粘贴 YAML 即可配置即源码,改哪看哪,可逐行回退
接入 Zigbee 漏水传感器需另购网关,两百元起中等传感器本身不可定制逻辑

选择 ESPHome 方案的理由是:单点成本最低,且所有配置都是明文 YAML 文件,出问题时可以对照排查,而不是黑盒。

📦 漏水检测物料与环境准备清单

☐ NodeMCU ESP8266 开发板 ×1 —— 控制核心,负责联网与状态判断 ☐ 金属探针 ×2(或带 DO 数字输出的水浸探头模块)—— 感知水;用裸探针时一个接 GPIO 引脚、一个接 GND 地线 ☐ 5V 有源蜂鸣器 ×1(有源型通电即响,无需信号驱动)—— 本地声音告警 ☐ 杜邦线 4 根 —— 连接各部件 ☐ 5V/1A 电源适配器 —— 给开发板稳定供电 ☐ 一台可联网电脑,已安装 Python 3.9 及以上 —— 运行 ESPHome 编译工具(若已装 Home Assistant 的 ESPHome 附加组件,可跳过此项,直接用界面操作)

🔧 ESPHome 漏水检测系统动手实施步骤

步骤1:安装 ESPHome 工具并新建设备文件

目标:装好命令行工具,为设备建立配置文件。操作:在终端执行pip install esphome,然后新建文件leak-detector.yaml验证:执行esphome version能打印出版本号。

步骤2:配置 ESP8266 基础信息与 WiFi

目标:让开发板连上家里 WiFi。操作:在leak-detector.yaml写入以下内容:

esphome: name: leak-detector platform: ESP8266 board: nodemcuv2 wifi: ssid: "你的WiFi名称" password: "你的WiFi密码"

验证:执行esphome config leak-detector.yaml,末尾提示 configuration is valid。

步骤3:配置 GPIO 水浸传感器与蜂鸣器

目标:把探针的“有水/无水”翻译成设备的 ON/OFF 状态,并联动蜂鸣器。操作:探针两片金属,一片接 GPIO14,另一片接 GND;蜂鸣器负极接 GPIO5,正极接 3V3。再追加两段配置:

binary_sensor: - platform: gpio pin: number: GPIO14 mode: INPUT_PULLUP # 内部上拉,遇水拉低触发 name: 厨房漏水传感器 device_class: moisture # 标记为潮湿类传感器 filters: - delayed_on: 1s # 接触1秒才报ON,过滤误触发 - delayed_off: 3s on_press: - switch.turn_on: 报警蜂鸣器
switch: - platform: gpio pin: GPIO5 name: 报警蜂鸣器

验证:再次执行esphome config,仍提示 valid。

步骤4:编译烧录固件并通电

目标:把配置变成固件写进开发板。操作:USB 连接开发板,执行esphome run leak-detector.yaml,烧录期间保持板子不动,出现上传成功后设备自动重启。验证:串口日志出现WiFi connected,且设备名 leak-detector 出现在局域网或 Home Assistant 的设备列表中。

✅ 漏水检测验收清单与常见故障处理

☐ Home Assistant 中出现binary_sensor.厨房漏水传感器实体,初始状态为 OFF ☐ 探针两触点间滴一滴水,约 1 秒后状态变 ON,蜂鸣器同时响起 ☐ 擦干探针,约 3 秒后状态恢复 OFF ☐ 断电重启后无残留 ON 状态,蜂鸣器不响

Q:状态乱跳,或没滴水也报警?delayed_on从 1s 调到 3s;确认探针悬空高度在潮湿墙面以上,两触点间距保持 5mm 以上。

Q:上电后一直显示 ON、蜂鸣器长响?先断电,用干布擦净探针触点,检查 GPIO14 是否误接到 3V3,重新接线后重试。

Q:想在手机上收到推送,怎么加?在 Home Assistant 里基于binary_sensor.厨房漏水传感器建一条“状态变为 ON 时发送通知”的自动化;或在 ESPHome 的on_press中追加mqtt.publish动作,由后端负责推送。

Q:想加第二个检测点?复制一份 yaml,改name、探针的number和蜂鸣器引脚即可;每块板建议只挂 1~2 个探针。

📚 漏水检测方案的边界与进阶方向

当前成果是本地声音告警加 Home Assistant 状态展示,不记录积水历史,单块板驱动一组“探针 + 蜂鸣器”,远程推送依赖 Home Assistant 或 MQTT 后端。进阶方向有两个:一是用 ESP-NOW 组件 组多点节点,一套主节点覆盖全屋;二是把该传感器接入 Home Assistant 自动化,联动自动关阀或推送分级告警。更多配置细节可查阅 README 与 binary_sensor 组件源码。

本文配置基于 ESPHome 2026.10(开发版)编写,YAML 语法与 Home Assistant ESPHome 附加组件 2023.12 及以上版本兼容;换用其他开发板时请相应调整 GPIO 编号与 board 参数。

【免费下载链接】esphomeESPHome is a system to control your ESP32, ESP8266, BK72xx, RP2040 by simple yet powerful configuration files and control them remotely through Home Automation systems.项目地址: https://gitcode.com/GitHub_Trending/es/esphome

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询