В подвале под гаражом или домом может накапливаться:
Цель: построить недорогую метеостанцию на ESP32, которая:
Датчик | Что измеряет | Реальность |
---|---|---|
DHT22 / AM2302 | Температура, влажность | Точный, дешёвый, проверен годами |
SDS011 / PMS5003 / PMS7003 | PM2.5, PM10 (пыль) | Хорошо работает, калибруется, но хрупкий |
BME280 / BME680 | Температура, влажность, давление, газ (VOC) | BME680 — даёт индекс IAQ (качество воздуха), но не HCHO напрямую |
MH-Z19B | CO₂ (не путать с CO!) | Надёжный, UART, калибруется |
Датчик | Проблема |
---|---|
MQ-135, MQ-2, MQ-136 и т.п. | Аналоговый, неселективный, дрейфует, калибровка "на глаз" |
"Формальдегид-детектор" за $8 | Часто это просто MQ-135 с наклейкой. Не измеряет HCHO, а реагирует на всё подряд |
Датчики SO₂, NO₂, O₃ за $10 | Точность сомнительна, нужна калибровка эталоном (которого у тебя нет) |
Формальдегид, NO₂, O₃, SO₂ — дешёвыми датчиками не измерить точно.
Но можно использовать:
[ESP32] ├── DHT22 → температура, влажность ├── SDS011 → PM2.5, PM10 ├── MH-Z19B → CO₂ ├── BME680 → VOC, давление, T, RH └── (опционально) MQ-135 → "общий газ" (с дымом, пылью, HCHO и т.п.)
sudo apt install mosquitto
#include <WiFi.h>
#include <PubSubClient.h>
#include <DHT.h>
#include <Wire.h>
#include <Adafruit_BME680.h>
// Настройки WiFi
const char* ssid = "Твой WiFi";
const char* password = "Пароль";
// Настройки MQTT
const char* mqtt_server = "192.168.1.100"; // IP брокера
WiFiClient espClient;
PubSubClient client(espClient);
void reconnect() {
while (!client.connected()) {
if (client.connect("meteo-podval")) {
client.publish("podval/status", "online");
}
}
client.loop();
}
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) delay(500);
client.setServer(mqtt_server, 1883);
}
void loop() {
if (!client.connected()) reconnect();
// Пример: отправка температуры
float t = dht.readTemperature();
client.publish("podval/temperature", String(t).c_str());
// Аналогично: humidity, pm25, co2, voc и т.д.
delay(30000); // раз в 30 сек
}
sensor:
- platform: mqtt
name: "Температура в подвале"
state_topic: "podval/temperature"
unit_of_measurement: "°C"
- platform: mqtt
name: "Влажность в подвале"
state_topic: "podval/humidity"
unit_of_measurement: "%"
- platform: mqtt
name: "PM2.5"
state_topic: "podval/pm25"
unit_of_measurement: "µg/m³"
automation: - alias: "Высокая влажность в подвале" trigger: platform: numeric_state entity_id: sensor.podval_vlazhnost above: 75 action: service: notify.telegram data: message: "⚠️ Влажность в подвале > 75%! Проверь вентиляцию."
Да, можно построить метеостанцию за $30–50.
Но:
Идеальный комплект для подвала:
→ DHT22 + SDS011 + MH-Z19B + BME680 + ESP32 + MQTT + HA
Это не медицинский анализатор, но хватит, чтобы вовремя заметить проблему.
Внимание: Cтатьи здесь сгенерированы нейросетью, пока не правил ошибки, только запустил его да и не до этого. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
НО!
Каждый кейс я реально делал минимум один раз. Серьёзно.
Сервера стоят, клиенты довольны, дата-центры не горят.
Это не просто копипаста — это опыт, выстраданный в бою, просто пересказанный через ИИ.
Если у вас есть вопросы, или Нашли неточность? пишите в коментах —
вместе поправим и сделаем статью более качественной. Я лично объясню нюансы из практики.
Комментарии
Пока нет комментариев. Будьте первым!