小企业智能化
小微企业低成本环境监控实战:ESP32 + 温湿度/水浸传感器 + 微信告警
2026年9月2日
用ESP32接温湿度与水浸传感器,超阈值经企业微信机器人告警,百元级小微企业环境监控方案。
小微企业低成本环境监控实战:ESP32 + 温湿度/水浸传感器 + 微信告警
摘要:机房、仓库、门店冷柜最怕温度异常或漏水烧设备。本文用一块二三十元的 ESP32 开发板,接 DHT22 温湿度与YL-38 水浸传感器,读数经 WiFi 上报,超阈值时通过企业微信机器人推送告警,整套物料成本不到百元,适合小微企业自装自维护。
场景与选型
典型需求:弱电间温度超过 35℃ 预警、仓库湿度过高防潮、门店空调漏水及时知道。商用动环系统动辄几千元,对几家门店的小微企业不划算。ESP32 自带 WiFi 和双核处理器,原生支持 Arduino 框架,配合现成传感器库,半天就能搭出可用方案。
物料清单(单价参考):
- ESP32 开发板(ESP-WROOM-32):约 25 元
- DHT22 温湿度模块(带上拉电阻的成品线):约 12 元
- YL-38 水浸传感器(模拟/数字两用):约 6 元
- 5V/2A 手机充电头 + Micro-USB 线供电
- 可选:DS18B20 防水探头(测冷柜内部,约 8 元)
硬件接线
ESP32 的 GPIO 用 3.3V 逻辑,传感器大多兼容。接线如下:
- DHT22:VCC→3V3,DATA→GPIO4(接 10k 上拉到 3V3),GND→GND
- YL-38:VCC→3V3,GND→GND,DO(数字输出)→GPIO5;AO 悬空即可(数字模式够用)
- DS18B20(可选):VCC→3V3,DQ→GPIO18(4.7k 上拉),GND→GND
水浸传感器放在地面易积水处,探头两片铜箔接触到水即输出低电平。注意别长期泡在水里,铜箔会氧化,建议只做「是否漏水」的开关量判断。
Arduino 读取传感器数据
用 Arduino IDE(或 PlatformIO)安装库 DHT sensor library、Adafruit Unified Sensor、OneWire、DallasTemperature。核心代码:
#include <WiFi.h>
#include <DHT.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#define DHTPIN 4
#define DHTTYPE DHT22
#define WATER_PIN 5
#define ONEWIRE_PIN 18
DHT dht(DHTPIN, DHTTYPE);
OneWire oneWire(ONEWIRE_PIN);
DallasTemperature sensors(&oneWire);
const char* ssid = "你的WiFi";
const char* password = "密码";
void setup() {
Serial.begin(115200);
pinMode(WATER_PIN, INPUT);
dht.begin();
sensors.begin();
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) delay(500);
}
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
int water = digitalRead(WATER_PIN); // 0=漏水
sensors.requestTemperatures();
float fridge = sensors.getTempCByIndex(0);
Serial.printf("温度%.1fC 湿度%.0f%% 水浸:%s 冷柜%.1fC
",
t, h, water ? "无" : "有", fridge);
// 阈值判断 + 上报,见下文
delay(30000); // 30 秒一轮
}
读数前务必用 isnan(t) 校验,DHT22 偶发返回 NaN,直接上报会污染历史数据。
数据上报与告警
上报有两种轻量方式:
- HTTP POST 到自建接口或物联网平台(如 ThingsBoard、EMQX)。适合要存历史曲线的小企业。
- 直接调企业微信/钉钉机器人 Webhook 发文本消息,只在异常时推送,零服务器成本。
异常触发示例(在 loop 内):
if (t > 35 || water == 0 || fridge > 8) {
String msg = "【环境告警】温度:" + String(t) +
"C 湿度:" + String(h) + "% 水浸:" +
(water ? "无" : "有") + " 冷柜:" + String(fridge) + "C";
sendWecom(msg); // 调机器人 webhook
}
sendWecom 用 HTTPClient POST JSON 到企业微信群机器人地址即可,markdown 类型消息在手机上排版更清晰。
部署与低功耗注意
- 设备放弱电间要防尘通风,充电头选品牌货,避免半夜掉电。可加个 USB 电压电流表长期观察。
- ESP32 持续 WiFi 连接功耗约 80–120mA,用充电宝能撑几小时,适合做短时断电兜底,但长期还是接市电。
- 多个点位可都连同一台 MQTT Broker,后台用 Node-RED 统一画看板、做持续超阈电话提醒,比逐个机器人更省心。
- 固件加 OTA(ArduinoOTA),后续改阈值不用爬梯子拔线;但 OTA 要设密码,防止别人刷进恶意固件。
- 水浸探头每月抽查一次灵敏度,铜箔氧化会变钝。
小结
用 ESP32 搭环境监控,硬件不到百元、代码几十行,却能帮小微企业在设备烧坏、货品受潮前抢出响应时间。关键是把「读数→阈值→告警」三步走通,并接企业微信机器人做到人人手机可见。门店一多,就上 MQTT + Node-RED 集中管理,扩展性很好。
(字数约 1250 字,关键词:ESP32、环境监控、温湿度、水浸传感器、企业微信、小微企业智能化)