Разработка алгоритмов программного обеспечения для управления отоплением на основе ALT Linux (Ростислав Воронин, OSEDUCONF-2025)
Материал из 0x1.tv
- Докладчик
- Ростислав Воронин
Контроллер Smart Therm на основе протокола Open Therm позволяет организовать эффективное управление и оптимизацию затрат для стабильной поддержке теплового режима внутри автономно отапливаемых помещений.
Данное решение не требует дополнительных постоянных затрат и основано на свободном программном обеспечении от ALT Linux.
Содержание
Видео
Презентация
Thesis
В жилых и производственных помещениях с автономным отоплением остро встаёт вопрос экономии энергоресурсов для отопления при стабильности поддержания наиболее оптимальных, комфортных температур. Для решения этой технологической задачи оптимизации управления тепловыми режимами отопления, позволяющих осуществлять ресурсо-энергосбережение самым оптимальным будет использование контроллера SmartTherm (ST) который общается с котлом по протоколу OpenTherm (OT)[1][2]. Конечно это возможно, при условии наличия интерфейса связи OT на плате управления самого котла отопления.
Разработанные алгоритмы управления позволяют повысить тепловую комфортность помещений и энерго-ресурсосбережение комплексов отопления на 12—17% от годовых затрат на топливо. Результаты экспериментальных исследований водяного газового теплового комплекса для достижения необходимых показателей приведены в работе[3].
Для реализации энергоэффективного управления отоплением был разработан аппаратно программный комплекс SmartTherm(ST) с погодозависимой логикой. Он в себя включает собственно сам контроллер управления для связи с котлом по шине OpenTherm. Центральным процессором этого контроллера был выбран ESP WROOM-32. Кроме поддержки OpenTherm контроллер может измерять температуру с двух цифровых выносных датчиков температуры DS18b20 и обрабатывать один аналоговый сигнал. ST сам контролирует техническое состояние котла и сигнализирует о его неисправности, при возникновении внештатных ситуаций или отключении напряжения питания.
ST использует открытое программное обеспечение для прошивки контроллера и открытую электрическую схему[1].
Поскольку контроллер SmartTherm использует процессор ESP32 то возможна дистанционная связь с ним по встроенным модулям WiFi/Bt. Самую последнюю бинарную версию прошивки можно скачать с гитхаба[4]. Либо же из исходников её собрать самостоятельно в среде Arduino и/или Platformio.
Обновление и загрузка прошивки контроллера в сам модуль ESP32 возможно как по кабелю USB, так и через WiFi из браузера.
Для загрузки бинарного файла в отладочную плату ESP WROOM-32 используется утилита ESPTool, которая устанавливается в ALT Linux командой:
# apt-get install esptool
После скачивания прошивки загрузить её в модуль ESP32 можно командой:
$ esptool write_flash 0x00000 Smart_Therm_0.1.2_20250118.bin
Оригинальная прошивка SmartTherm[4] позволяет подключить контроллер к отопительному котлу и диагностировать возможные проблемы как с котлом, так и со связью по WiFi. Благодаря разработанным алгоритмам, прошивка ST реализует систему управления температурным режимом с погодозависимой логикой, на основе пропорционально-интегрально-дифференциального (ПИД) регулятора. Данные о внешней среде можно получать от Яндекс-погоды или бесплатно из приложения HomeAssistant[5] от интеграции Forecast Home Норвежского метеорологического института.
В текущем релизе реализована система удалённого управления котлом через собственное облако, которое собирается и устанавливается на любом Linux хостинге[6] командой:
$ g++ Server2.cpp SmartServer2.cpp SmartServer.cpp SmartClient.cpp AutoConfig.cpp SmartDevice.cpp TCPconnection.cpp -pthread -o Smartserver
Запускается облачный сервер командой:
$ Smartserver &
В приложении для OS Android предусмотрена настройка на облачный хостинг по умолчанию. Преимущество этого облачного приложения в том, что оно не привязано ни к какому поставщику аппаратных решений , ни к какому хостинг — провайдеру и может быть запущена на любом linuх сервере — без жёстких привязок к поставщикам программного обеспечения. Необходимым условием, для доступа к ресурсу извне является, только лишь наличие белого (реального) IP адреса на нём.
Приложение для смартфона на базе OS Android опубликовано на гитхабе под лицензией MIT license[7].
Приложение Home Assistant[5] было выбрано постольку, поскольку оно позволяет оформить удобное и наглядное управление с графиками и просмотр истории событий. Связь ST с HA и передача данных происходит по протоколу MQTT. Так же в HA разработаны сценарии автоматизации, что очень удобно для выполнения рутинных операций. Установка и настройка MQTT брокера, осуществляется в ALT Linux командой:
# apt-get install mosquitto
- Описание контроллера SmartTherm [8]
Примечания и ссылки
- ↑ 1,0 1,1 Аппаратная схема шлюза OpenTherm состоит из пяти основных частей: [1]
- ↑ Программная часть протокола OpenTherm [2]
- ↑ Кашинский А. Н. Разработка структурно-алгоритмического обеспечения и повышение эффективности управления процессом стабилизации температуры воздуха в автономно отапливаемом производственном помещении / Автореферат диссертации на соискание учёной степени кандидата технических наук. Специальность 05.13.06 — «Автоматизация и управление технологическими процессами и производствами (промышленность)» // [3]
- ↑ 4,0 4,1 Прошивка для контроллера SmartTherm [4]
- ↑ 5,0 5,1 Ресурсы HomeAssistant [5]
- ↑ Облачный сервер [6]
- ↑ Клиент для Android [7]