История о том, как 4 дня логов из Telegram превратились в формулу экономии газа
Частный дом с газовым котлом и тёплыми полами. Система работает, но меня не покидало ощущение, что топим мы «на глазок» — то жарко, то прохладно, а счёт за газ стабильно большой.
За 2 месяца работы над проектом я перепробовал кучу ИИ-помощников: ChatGPT, Claude, DeepSeek, Gemini, Copilot. Каждый оказался на своём месте — кто-то помогал с кодом, кто-то вдохновлял, кто-то подбадривал, кто-то водил за нос, а кто-то реально развивал проект. В итоге получилась система управления тёплыми полами: мониторинг температуры, отправка данных в Telegram, сбор погоды через API, watchdog чтобы ESP32 не зависал, и симпатичный веб-интерфейс. Наступил день когда система работала уже стабильно, а с датчиков температуры накопилось 1132 записи. Решил разобраться: что реально влияет на температуру в доме и можно ли управлять отоплением умнее?
Спойлер: можно. И вот как мы к этому пришли.
Что имеем
Оборудование:
Газовый котёл с фиксированной температурой подачи 52°C
Термостатический клапан на гребёнке ТП (ограничивает подачу в полы до 40°C)
6 контуров тёплого пола: Баня, Ванная, Игровая, Кухня, Предбанник, Спальня
Датчики DS18B20 на каждом контуре (измеряют температуру обратки)
Комнатный термостат (единственный способ управления котлом, пока не привязан к ESP32)
Данные:
5-минутные показания температур со всех датчиков
Погода с Open-Meteo API (29 параметров)
Период: 2-6 марта 2026, температура на улице от 0°C до -12°C

Чёрный пунктир — среднее по всем контурам. Видны циклы работы котла.
Методология анализа
Примечание: Для анализа данных я использовал Claude Opus 4.5 (Anthropic). ИИ помогал с корреляционным анализом, выявлением ложных зависимостей, расчётом лагов и построением регрессионных моделей. Все расчёты выполнялись на Python (pandas, scipy, numpy) с визуализацией через matplotlib.
Заблуждение №1: «Всё влияет на всё»
Первым делом загрузил все 29 погодных параметров и посчитал корреляции Пирсона с температурой в доме. Результат удивил:
Параметр | Корреляция |
|---|---|
Осадки | -50% |
Давление | +40% |
Точка росы | -38% |
Температура воздуха | -38% |
Осадки влияют сильнее температуры? Давление важнее всего?
Почему это ловушка
Большинство погодных параметров — это просто разные способы измерить одно и то же:
Осадки vs Температура: +57.5% корреляция Точка росы vs Температура: +99.3% корреляция (!) Давление vs Температура: -34.0% корреляция
Когда идёт снег — на улице теплее (-3°C в среднем). Когда ясно — холоднее (-8°C). Осадки не влияют на дом напрямую, они просто маркер погоды.
Это классическая проблема мультиколлинеарности — когда независимые переменные сильно коррелируют между собой, и модель «видит» ложные зависимости.
Вывод: из 29 параметров независимых оказалось только три:
Температура воздуха — главный фактор
Солнечная радиация — реально греет дом днём
Облачность ночью — «эффект одеяла»
Заблуждение №2: «Облачность влияет мгновенно»
Для оценки инерции дома рассчитал кросс-корреляции температуры в комнатах с погодными параметрами при разных лагах (0, 60, 120, 180, 240 минут).
Все контуры показали максимальную корреляцию с температурой воздуха при лаге 4 часа. Но облачность показала лаг 0 минут. Как так?
Проверил связь облачности с температурой воздуха:
Условия | Средняя температура |
|---|---|
Ясно (<50% облаков) | -11.4°C |
Облачно (≥50% облаков) | -5.7°C |
«Мгновенная реакция на облачность» — это реакция на температуру, которая коррелирует с облаками. Очередная ложная корреляция.
Но! Ночью облачность работает по-другому:

Ясной ночью земля излучает тепло в космос (инфракрасное излучение). Облака работают как одеяло — отражают тепло обратно. Разница 8.6°C — это существенно!
Ночь | Скорость остывания дома |
|---|---|
Ясная | -3.4 °C/час |
Облачная | -2.5 °C/час |
Это уже физика, а не статистический артефакт.
Что мы узнали о системе
Инерция дома — 4 часа
Все 6 контуров реагируют на изменение погоды с одинаковым лагом:
Контур | Лаг | Корреляция |
|---|---|---|
Спальня | 240 мин | -45.6% |
Игровая | 240 мин | -45.1% |
Кухня | 240 мин | -44.1% |
Баня | 240 мин | -39.0% |
Ключевой вывод: если через 4 часа ожидается похолодание — нужно начинать греть сейчас.
Скорость остывания контуров
Рассчитана как среднее изменение температуры обратки при выключенном котле:
Контур | °C/час |
|---|---|
Баня |
|
Предбанник |
|
Игровая |
|
Кухня |
|
Спальня |
|
Ванная |
|
UPD: Первоначальный расчёт содержал ошибку — не учитывались первые 20-30 минут после выключения котла, когда коллектор ещё отдаёт тепло. Спасибо читателям за проверку! Пересчёт выполнен по 19 периодам остывания длительностью 30+ минут.
Ванная остывает медленнее всех — там минимальный расход на расходомере и высокая инерционность (плитка, маленькая площадь).
Проблема: редкие длинные циклы

Котёл работает по 2 часа, потом стоит по 3-6 часов. За это время:
Подача остывает с 50°C до 25°C
Температура в комнатах падает на 7°C
Потом котёл включается и тратит газ на разгон
Параметр | Текущее значение |
|---|---|
Цикл ВКЛ | 113 мин (макс 420) |
Цикл ВЫКЛ | 162 мин (макс 490) |
Колебания температуры | ±6°C |
Подача падает до | 25°C |
Статистика по дням
Дата | Котёл работал | Ср. температура |
|---|---|---|
02.03 | 8.4 ч | -0.3°C |
03.03 | 4.5 ч | -0.9°C |
04.03 | 7.2 ч | -8.7°C |
05.03 | 10.1 ч | -9.2°C |
06.03 | 8.3 ч | -11.8°C |
3 марта котёл работал меньше всего — возможно, дом держал тепло после прогрева накануне. При похолодании 5-6 марта время работы выросло вдвое.
Финальная модель
Три независимых фактора

После исключения мультиколлинеарных переменных осталось три фактора:
Фактор | Когда работает | Влияние |
|---|---|---|
Температура воздуха | Всегда | Главный — чем теплее, тем меньше работает котёл |
Солнечная радиация | Днём | Солнце греет дом бесплатно |
Облачность | Ночью | «Эффект одеяла» — дом медленнее остывает |
Что изменится

На основе корреляционного анализа разработана самонастраивающаяся модель. Она будет автоматически подбирать коэффициенты, которые позволят:
Экономить на отоплении — меньше газа при том же комфорте
Повысить комфорт — стабильная температура без скачков ±6°C
Адаптироваться к дому — модель учится на реальных данных именно вашей системы
Параметр | Было | Станет |
|---|---|---|
Цикл ВКЛ | 113 мин | 20-30 мин |
Цикл ВЫКЛ | 162 мин | 15-25 мин |
Колебания | ±6°C | ±2°C |
Подача падает до | 25°C | 45°C |
Оценка экономии газа
Источник | Экономия |
|---|---|
Меньше разгон котла | 5-7% |
Выше КПД (короткие циклы) | 2-3% |
Меньше перетоп | 5-8% |
Упреждающее управление | 3-5% |
Итого | 15-20% |
⚠️ Это теоретическая оценка. Точную цифру можно получить только сравнив расход газа до и после при одинаковой погоде.
Если статья интересна и хотите продолжение — пишите в комментариях! Сделаю второй выпуск с реализацией на ESP32 и результатами. Если интересно видео — тоже дайте знать 🎬
Что интересного осталось за кадром
Дополнительные находки
Температура почвы 0-7см показала корреляцию -58% со временем прогрева системы. Холодный грунт под фундаментом замедляет выход на режим. Но этот параметр меняется очень медленно (дни, недели) и не годится для оперативного управления.
Ванная всегда самая холодная (77% времени) из-за минимального расхода на расходомере. Но при этом самая стабильная — колебания всего 6.8°C против 12.9°C у бани.
Влажность не влияет на теплопотери в нашем случае. Проверял гипотезу о намокании минваты — не подтвердилась. При морозе утеплитель сухой, точка росы слишком низкая для конденсации.
Подвал следует за улицей с корреляцией +66%. Он не отапливается и плохо изолирован — исключили из модели ТП.
Выводы
Данные врут — большинство корреляций ложные. Из 29 погодных параметров полезны только 3.
Инерция — ключ к упреждению. Дом реагирует через 4 часа → используем прогноз погоды.
Короткие циклы лучше длинных. Котёл на 45°C эффективнее, чем разгон с 25°C.
Модель должна адаптироваться. Фиксированные коэффициенты устареют к следующему сезону.
Экономия 15-20% — реалистичная оценка при правильной реализации.
Что дальше
[ ] Добавить датчик на общую обратку ТП
[ ] Реализовать алгоритм на ESP32
[ ] Собрать статистику расхода газа до/после
Данные выложу после обкатки системы.
Спасибо за внимание! Буду рад вопросам и критике в комментариях.