Разработка алгоритмов программного обеспечения для управления отоплением на основе ALT Linux (Ростислав Воронин, OSEDUCONF-2025) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) (Новая страница: «;{{SpeakerInfo}}: {{Speaker|Ростислав Воронин}} <blockquote> </blockquote> {{VideoSection}} {{vimeoembed||800|450}} {{youtubelink|}} {{SlidesSe…») |
StasFomin (обсуждение | вклад) |
||
;{{SpeakerInfo}}: {{Speaker|Ростислав Воронин}} <blockquote> Контроллер Smart Therm на основе протокола Open Therm позволяет организовать эффективное управление и оптимизацию затрат для стабильной поддержке теплового режима внутри автономно отапливаемых помещений. Данное решение не требует дополнительных постоянных затрат и основано на свободном программном обеспечении от ALT Linux. </blockquote> {{VideoSection}} {{vimeoembed||800|450}} {{youtubelink|}} {{SlidesSection}} [[File:Разработка алгоритмов программного обеспечения для управления отоплением на основе ALT Linux (Ростислав Воронин, OSEDUCONF-2025).pdf|left|page=-|300px]] {{----}} == Thesis == * http://smarttherm.ru/ В жилых и производственных помещениях с автономным отоплением остро встаёт вопрос экономии энергоресурсов для отопления при стабильности поддержания наиболее оптимальных, комфортных температур. Для решения этой технологической задачи оптимизации управления тепловыми режимами отопления, позволяющих осуществлять ресурсо-энергосбережение самым оптимальным будет использование контроллера SmartTherm (ST) который общается с котлом по протоколу OpenTherm (OT)<ref name="voronin-bib1">Аппаратная схема шлюза OpenTherm состоит из пяти основных частей: [https://otgw.tclcode.com/schematic.html]</ref><ref name="voronin-bib2">Программная часть протокола OpenTherm [https://ihormelnyk.com/Content/Pages/opentherm_library] </ref>. Конечно это возможно, при условии наличия интерфейса связи OT на плате управления самого котла отопления. Разработанные алгоритмы управления позволяют повысить тепловую комфортность помещений и энерго-ресурсосбережение комплексов отопления на 12—17% от годовых затрат на топливо. Результаты экспериментальных исследований водяного газового теплового комплекса для достижения необходимых показателей приведены в работе<ref name="voronin-bib3">Кашинский А. Н. <i>Разработка структурно-алгоритмического обеспечения и повышение эффективности управления процессом стабилизации температуры воздуха в автономно отапливаемом производственном помещении</i> / Автореферат диссертации на соискание учёной степени кандидата технических наук. Специальность 05.13.06 — «Автоматизация и управление технологическими процессами и производствами (промышленность)» // [https://sci.vlsu.ru/main/zaschita/Kashinskiy/Kashinskiy.pdf] </ref>. Для реализации энергоэффективного управления отоплением был разработан аппаратно программный комплекс SmartTherm(ST) с погодозависимой логикой. Он в себя включает собственно сам контроллер управления для связи с котлом по шине OpenTherm. Центральным процессором этого контроллера был выбран ESP WROOM-32. Кроме поддержки OpenTherm контроллер может измерять температуру с двух цифровых выносных датчиков температуры DS18b20 и обрабатывать один аналоговый сигнал. ST сам контролирует техническое состояние котла и сигнализирует о его неисправности, при возникновении внештатных ситуаций или отключении напряжения питания. ST использует открытое программное обеспечение для прошивки контроллера и открытую электрическую схему<ref name="voronin-bib1"></ref>. Поскольку контроллер SmartTherm использует процессор ESP32 то возможна дистанционная связь с ним по встроенным модулям WiFi/Bt. Самую последнюю бинарную версию прошивки можно скачать с гитхаба<ref name="voronin-bib6">Прошивка для контроллера SmartTherm [https://github.com/Evgen2/SmartTherm]</ref>. Либо же из исходников её собрать самостоятельно в среде Arduino и/или Platformio. Обновление и загрузка прошивки контроллера в сам модуль ESP32 возможно как по кабелю USB, так и через WiFi из браузера. Для загрузки бинарного файла в отладочную плату ESP WROOM-32 используется утилита ESPTool, которая устанавливается в ALT Linux командой: <code-bash> # apt-get install esptool </code-bash> После скачивания прошивки загрузить её в модуль ESP32 можно командой: <code-bash> $ esptool write_flash 0x00000 Smart_Therm_0.1.2_20250118.bin </code-bash> Оригинальная прошивка SmartTherm<ref name="voronin-bib6">Прошивка для контроллера SmartTherm [https://github.com/Evgen2/SmartTherm]</ref> позволяет подключить контроллер к отопительному котлу и диагностировать возможные проблемы как с котлом, так и со связью по WiFi. Благодаря разработанным алгоритмам, прошивка ST реализует систему управления температурным режимом с погодозависимой логикой, на основе пропорционально-интегрально-дифференциального (ПИД) регулятора. Данные о внешней среде можно получать от Яндекс-погоды или бесплатно из приложения HomeAssistant<ref name="voronin-bib5">Ресурсы HomeAssistant [https://www.home-assistant.io/]</ref> от интеграции Forecast Home Норвежского метеорологического института. В текущем релизе реализована система удалённого управления котлом через собственное облако, которое собирается и устанавливается на любом Linux хостинге<ref name="voronin-bib7">Облачный сервер [https://github.com/Evgen2/SmartServer] </ref> командой: <code-bash> $ g++ Server2.cpp SmartServer2.cpp SmartServer.cpp SmartClient.cpp AutoConfig.cpp SmartDevice.cpp TCPconnection.cpp -pthread -o Smartserver </code-bash> Запускается облачный сервер командой: $ Smartserver & В приложении для OS Android предусмотрена настройка на облачный хостинг по умолчанию. Преимущество этого облачного приложения в том, что оно не привязано ни к какому поставщику аппаратных решений , ни к какому хостинг — провайдеру и может быть запущена на любом linuх сервере — без жёстких привязок к поставщикам программного обеспечения. Необходимым условием, для доступа к ресурсу извне является, только лишь наличие белого (реального) IP адреса на нём. Приложение для смартфона на базе OS Android опубликовано на гитхабе под лицензией MIT license<ref name="voronin-bib8">Клиент для Android [https://github.com/Evgen2/SmartThermClient]</ref>. Приложение Home Assistant<ref name="voronin-bib5"></ref> было выбрано постольку, поскольку оно позволяет оформить удобное и наглядное управление с графиками и просмотр истории событий. Связь ST с HA и передача данных происходит по протоколу MQTT. Так же в HA разработаны сценарии автоматизации, что очень удобно для выполнения рутинных операций. Установка и настройка MQTT брокера, осуществляется в ALT Linux командой: <code-bash> # apt-get install mosquitto </code-bash> [[File:osseduconf-2025-voronin-voronin-smart_therm.png|center|640px|thumb|Схема взаимодействия контроллера SmartTherm с внешними и локальными приложениями]] * Описание контроллера SmartTherm [http://smarttherm.ru/] {{----}} [[File:{{#setmainimage:Разработка алгоритмов программного обеспечения для управления отоплением на основе ALT Linux (Ростислав Воронин, OSEDUCONF-2025)!.jpg}}|center|640px]] {{LinksSection}} <!-- <blockquote>[©]</blockquote> --> <references/> [[Категория:OSEDUCONF-2025]] [[Категория:Draft]] [[Категория:СПО в образовании]] |
Версия 13:18, 17 марта 2025
- Докладчик
- Ростислав Воронин
Контроллер 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]