Подключение контроллера SmartTherm к HomeAssistant — различия между версиями

Материал из ЭНЭ
Перейти к: навигация, поиск
(Установка автоматизации ESPHome OpenTherm в Home Assistant)
 
(не показана одна промежуточная версия 2 участников)
Строка 2: Строка 2:
 
'''Подключение контроллера SmartTherm к HomeAssistant'''
 
'''Подключение контроллера SmartTherm к HomeAssistant'''
 
[[Файл:Газовый котел Ферроли.jpg|link=http://wiki.laser.ru/images/2/27/Газовый_котел_Ферроли.jpg |260px|thumb|(Фото 1) Котел отопительный газовый Ferroli(Италия), подключение к контроллеру SmartTherm]]
 
[[Файл:Газовый котел Ферроли.jpg|link=http://wiki.laser.ru/images/2/27/Газовый_котел_Ферроли.jpg |260px|thumb|(Фото 1) Котел отопительный газовый Ferroli(Италия), подключение к контроллеру SmartTherm]]
Если вы являетесь счастливым владельцем индивидуального жилого дома, для отопления которого вы используете или планируете использовать газовый котел и вы хотите использовать для управления котлом Home Assistant, то вам необходимо выполнить следующее.
+
Если вы являетесь счастливым владельцем индивидуального жилого дома, для отопления которого вы используете или планируете использовать газовый котел и вы хотите использовать для управления котлом [[Home Assistant]], то вам необходимо выполнить следующее.
  
 
== Предварительные шаги ==
 
== Предварительные шаги ==
  
 
=== Выбор газового котла с протоколом OpenTherm ===
 
=== Выбор газового котла с протоколом OpenTherm ===
Убедитесь, что выбранный вами для покупки котёл поддерживает протокол [[OpenTherm]]. Не все производители газовых котлов пишут в инструкции к котлу о наличии такой возможности, не все продавцы и инженеры по обслуживанию газовых котлов знают о наличии такого протокола, не всегда поддержка, даже от пафосных дистрибьюторов, например, котлов ''Bosсh'' и ''Buderus'' сможет оказать вам помощь.
+
Убедитесь, что выбранный вами для покупки котёл поддерживает цифровую шину передачи данных [[OpenTherm]]. Если в инструкции на сайте производителя котла указано, что OpenTherm имеется и указан разъем для его подключения, то проблемы нет. Однако не все производители газовых котлов пишут в инструкции к котлу о наличии такой возможности, не все продавцы и инженеры по обслуживанию газовых котлов знают о наличии такого протокола, не всегда поддержка, даже от пафосных дистрибьюторов, например, котлов ''Bosсh'' и ''Buderus'', сможет оказать вам помощь.
В некоторых случаях может упоминаться наличие цифровой шины, однако имейте ввиду, что цифровых шин может быть с десяток разных, несовместимых межу собой на физическом и логическом уровне. Поэтому правильно будет, если вы  прочитаете в инструкции к этой модели на сайте производителя котла, что протокол OpenTherm имеется и указаны два разъема для подключения к нему.  
+
 
 +
В некоторых случаях может упоминаться наличие цифровой шины, однако имейте ввиду, что цифровых шин может быть с десяток разных, несовместимых межу собой на физическом и логическом уровне.
  
 
Список газовых котлов, поддерживающих OpenTherm можно посмотреть [https://docs.google.com/spreadsheets/d/1wyp0VITQYxK9X20dXWBdqLty_onRzYsPemu9IB54h44/edit?usp=sharing тут].
 
Список газовых котлов, поддерживающих OpenTherm можно посмотреть [https://docs.google.com/spreadsheets/d/1wyp0VITQYxK9X20dXWBdqLty_onRzYsPemu9IB54h44/edit?usp=sharing тут].
  
=== Адаптер OpenTherm ===
+
=== Выбор контроллера OpenTherm ===
Приобретите контроллер с адаптером для OpenTherm, например это может быть [https://www.umkikit.ru/index.php?route=product/product&path=67&product_id=103 контроллер SmartTherm]  
+
На рынке имеется некоторое количество контроллеров, поддерживающих OpenTherm. В некоторых случаях, например, для большинства контроллеров ''Zont'' для подключения OpenTherm требуется отдельный адаптер за отдельную цену. Кроме того, и прошивка, и схемотехника этих контроллеров закрыты.
В котором используется плата NodeMSU v3 на основе ESP8266 или ESP32. Протокол связи Wi-Fi, cвязь между котлом и контроллером осуществляется по двужильному кабелю. Допускается длина кабеля - не боле 3 м. 
+
 
Преимущество этого контроллера в том, что кроме поддержки OpenTherm контроллер может измерять температуру с двух выносных датчиков температуры DS18b20 и обрабатывать один аналоговый сигнал.  
+
Контроллер [https://www.umkikit.ru/index.php?route=product/product&path=67&product_id=103 SmartTherm] использует открытый дизайн, свободный код прошивки, использует популярные контроллеры ESP со встроенным WiFi, позволяет легко обновлять прошивку под свои нужды. Кроме работы с OpenTherm, контроллер может измерять температуру с двух выносных датчиков температуры DS18b20. Цена контроллера достаточно демократичная.
 +
 
 +
Для подачи питания и программирования контроллера используется разъем micro USB
 +
 
 +
=== Подключение контроллера SmartTherm к газовому котлу ===
  
 
{| align="center" class="standard"
 
{| align="center" class="standard"
|+
+
|+ Примерный порядок подключения контроллера SmartTherm к газовому котлу
! |Примерный порядок подключения контроллера SmartTherm к газовому котлу
+
|-
|-----
+
| [[Файл:St12.png|link=http://wiki.laser.ru/images/0/07/St12.png|thumb|160px| Контроллер SmartTherm, вид спереди, без крышки]]
| [[Файл:St12.png|link=http://wiki.laser.ru/images/0/07/St12.png|thumb|160px| Контроллер SmartTherm, вид спереди, без крышки]]
+
| [[Файл:St11.png|link=http://wiki.laser.ru/images/d/d1/St13.png|thumb|160px| Контроллер SmartTherm, вид сверху]]
| [[Файл:St11.png|link=http://wiki.laser.ru/images/d/d1/St13.png|thumb|160px| Контроллер SmartTherm, вид сверху]]
+
| [[Файл:St13.png|link=http://wiki.laser.ru/images/d/d1/St13.png|thumb|160px| Обесточте питание котла]]
| [[Файл:St13.png|link=http://wiki.laser.ru/images/d/d1/St13.png|thumb|160px| Обесточте питание котла]]
+
|-
| [[Файл:Котел без крышки.jpg|link=http://wiki.laser.ru/images/2/2c/Котел_без_крышки.jpg|thumb|160px| Снимите крышку с котла]]
+
| [[Файл:Котел без крышки.jpg|link=http://wiki.laser.ru/images/2/2c/Котел_без_крышки.jpg|thumb|160px| Снимите крышку с котла]]
 
| [[Файл:Колодка контроллера.jpg|link=http://wiki.laser.ru/images/3/38/Колодка_контроллера.jpg|thumb|160px| На контроллере котла, удалите перемычку в разъеме OpenTherm, и подключите провод]]
 
| [[Файл:Колодка контроллера.jpg|link=http://wiki.laser.ru/images/3/38/Колодка_контроллера.jpg|thumb|160px| На контроллере котла, удалите перемычку в разъеме OpenTherm, и подключите провод]]
| [[Файл:Присоединить два провода.jpg|link=http://wiki.laser.ru/images/d/d5/Присоединить_два_провода.jpg|thumb|160px| Двужильный провод ПВС 0.75 кв - отмечен черной спиралькой
+
| [[Файл:Присоединить два провода.jpg|link=http://wiki.laser.ru/images/d/d5/Присоединить_два_провода.jpg|thumb|160px| Двужильный провод ПВС 0.75 кв — отмечен черной спиралькой]]
]]  
+
|-
 
| [[Файл:Проход через стену.jpg|link=http://wiki.laser.ru/images/1/19/Проход_через_стену.jpg|thumb|170px| При необходимости, пройдите проводом сквозь стену в жилое помещение]]
 
| [[Файл:Проход через стену.jpg|link=http://wiki.laser.ru/images/1/19/Проход_через_стену.jpg|thumb|170px| При необходимости, пройдите проводом сквозь стену в жилое помещение]]
 
| [[Файл:Контролер SmartTherm.jpg|link=http://wiki.laser.ru/images/9/90/Контролер_SmartTherm.jpg|thumb|180px| Другой конец провода присоедините к контроллеру SmartTherm, подключите термодатчики, подайте питание]]
 
| [[Файл:Контролер SmartTherm.jpg|link=http://wiki.laser.ru/images/9/90/Контролер_SmartTherm.jpg|thumb|180px| Другой конец провода присоедините к контроллеру SmartTherm, подключите термодатчики, подайте питание]]
|+
 
 
|}
 
|}
  
  
 +
Максимальный выходной ток — 1.2 A
  
 +
Максимальное выходное напряжение — 5 В
  
Для подачи питания и программирования контроллера используется разъем miniUSB.
+
=== Установка Home Assistant ===
  
Разъем кабеля - micro USB
+
Для того чтобы постоянно получать данные от работающего котла, анализировать их и принимать решения по экономии топлива, необходимо использовать приложение Home Assitant, которое разработано всемирным сообществом профессионалов и энтузиастов DIY, при этом является свободно распространяемым. Home Assistant интегрируется с более чем тысячей различных устройств и сервисов. После того, как вы интегрировали все свои устройства дома, вы можете использовать усовершенствованный механизм автоматизации Home Assistant, чтобы ваш дом работал на вас. Home Assistant взаимодействует с вашими устройствами локально и откажется от загрузки данных из облака, если нет другого варианта. Данные не хранятся в облаке, все обрабатывается локально. Home Assistant позволяет вам контролировать потребление энергии с помощью функции управления домашним энергопотреблением.
  
Максимальный выходной ток - 1.2 A
+
Для того чтобы развернуть это приложение и использовать его, вам понадобится постоянно работающий у вас дома сервер или постоянно включенный одноплатный контроллер ARM архитектуры типа Raspberry Pi, Orange Pi, Repka Pi, или аналогичные.
 +
Как установить и настроить работу приложения Home Assistan, вы можете узнать из официальной [https://www.home-assistant.io/installation/#compare-installation-methods документации] на английском языке, или из [[Установка Home Assistant на AltLinux | руководства по установке HA]] на русском языке.
  
Максимальное выходное напряжение - 5 В
+
Пожалуйста, обратите внимание, что при выборе варианта установки, вам будет проще работать с дополнительным приложением ESPHome, когда вы выберите режим установки ''Superviser'', а не ''CORE''. Хотя получить взаимодействие контроллера SmartTherm с приложением Home Assistant возможно в любом варианте установки.
 
+
=== Установка Home Assistant ===
+
  
 
== Установка автоматизации ESPHome OpenTherm в Home Assistant ==
 
== Установка автоматизации ESPHome OpenTherm в Home Assistant ==
 +
{| align="center" class="standard"
 +
|+
 +
| [[Файл:Smarttherm11.png |link=http://wiki.laser.ru/images/f/f9/Smarttherm11.png |140px|thumb|left|(Фото 2) Smartherm — настройка интеграции]]
 +
| [[Файл:St21.png |link=http://wiki.laser.ru/images/3/3e/St21.png |260px|thumb|left|(Фото 3)]]
 +
|-
 +
| [[Файл:Esp8266.png |link=http://wiki.laser.ru/images/8/8d/Esp8266.png |200px|thumb|left|(Фото 4)]]
 +
| [[Файл:Ot.png |link=http://wiki.laser.ru/images/2/22/Ot.png |200px|thumb|left|(Фото 5)]]
 +
| [[Файл:Plug install.png |link=http://wiki.laser.ru/images/9/90/Plug_install.png |200px|thumb|left|(Фото 6)]]
 +
|}
 +
После того, когда вы убедились, что ваша установка приложения HA выполнена успешно, вам необходимо добавить в HA новое ESP устройство — плату управления котлом OpenTherm (Фото 2), для этого необходимо сделать следующее:
  
Если у вас есть газовый котел отопления частного дома, то чтобы добавить в HA новое ESP устройство -например плату управления котлом Opentherm от контроллера Home Assistant (foto1 ), необходимо сделать следующее.
+
1) Скачать с GitHub репозитория [https://github.com/rsciriano/ESPHome-OpenTherm от Roberto Sanz] архив. Разархивировать его на вашем HA, например в папку /''config''.
  
-- Скачать с репозитория бинарный файл. КАк его править, это отдельная история. Нам нужно например получить бинарник fig3.bin http:// ...
+
2) Установить в HA из магазина дополнений утилиту ESPHome (это будет возможно если вы установили ваш HA в режиме Superviser). Если у вас HA установлен в режиме CORE, то для прошивки контроллера из командной строки, вам нужно будет установить утилиту для работы с ESP32 ''esptool'':
-- установить утилиту для прошивки бинатрного файла linux - в сам контроллер ESP32 esptool
+
# apt-get update
-- залить бинарник в плату командой, указав какой контроллер мы испоьзуем. Спсок возможных контроллеров можно взять - отсюда..
+
# apt-get install esptool
Для прошивки новой версии программы в контроллер вам нужно :
+
1. Скачать файл с новой версии с сайта:
+
https://www.umkikit.ru/dowload/Smart_Therm_0.1.2_20220318.bin
+
2. Установить у себя утилиту esptool из командной строки из root
+
# apt-get update
+
# apt-get install esptool
+
3. Обновить прошивку из той директории, где находится скачанный файл (Linux)
+
$ esptool -cd nodemcu -cf Smart_Therm_0.1.2_20220318.bin
+
$ esptool -cd nodemcu -cf figa3.bin
+
$ esptool write_flash 0x00000 figa3.bin
+
  
 +
3) В конфигурационном файле для адаптера SmartTherm, ''/config/esphome/esphome-opentherm/opentherm_component.h'' необходимо задать номера пинов (Фото 3):
  
-- Для начала установить ESP HOME  на linux
+
'''inPin = D7; '''
-- Установить HOME Assistant
+
-- Взять исходные коды отсюда https://github.com/rsciriano/ESPHome-OpenTherm, скачать ZIP архивом содержимое репозитория в папку /config/esphome в HA
+
-- распаковать архив в нужном месте
+
-- подправить  номера пинов для адаптера SmartTherm в файле /config/esphome/esphome-opentherm/opentherm_component.h
+
inPin = D7; outPin=D8
+
--  от Редактировать файл /config/esphome/opentherm.yaml
+
Make sure the board and device settings are correct for your device
+
        ◦ Set the sensor entity_id with the external temperature sensor's name from Home Assistant. (The ESPHome sensor name is temperature_sensor).
+
  
 +
'''outPin = D8;'''
  
++++++++++++++++++++++++
+
4) В файле ''/config/esphome/opentherm.yaml'' необходимо внести следующие правки:
1. Уточнить что это за устройство - у нас это
+
esp8266:
+
  board: esp01_1m
+
  
++++++++++++++++++++++++
+
4.1) В разделе ''esphome'' указать какой контроллер используем. Список возможных контроллеров можно взять — [https://docs.platformio.org/en/latest/boards/espressif8266/nodemcuv2.html отсюда для ESP8266] или [https://docs.platformio.org/en/latest/boards/espressif32/esp32dev.html от сюда для ESP32] для нашего контроллера это будет следующая платформа модуля ''nodemcuv2'' (Фото 4):
2. Узнать название wifi сети и пароль к ней. У нас эта информация храниться в файле
+
  
 +
esphome:
 +
  name: $devicename
 +
  platform: ESP8266
 +
  board: nodemcuv2
  
# Your Wi-Fi SSID and password
+
4.2) В разделе ''# Your Wi-Fi SSID and password'' отредактировать соответствующий раздел, указав точку доступа и пароль к ней. Предварительно необходимо узнать название wifi сети и пароль к ней. Без точки доступа WiFi — связь opentherm с homeassistant работать не будет (Фото 5).
wifi_ssid: "laser203"
+
# Your Wi-Fi SSID and password
wifi_password: "laser203"
+
  wifi_ssid: "laser203"
 +
  wifi_password: "laser203"
 +
captive_portal:
 +
  api:
 +
  password: "12345678"
 +
  ota:
 +
  password: "12345678"
  
Осуществить сборку модуля и прошивку его в модуль ESP
 
  
-- дальше нужно крутить крутилки и вертеть вертелки - файлы скриншотов  в Изображение
+
4.3) В разделе ''platform: homeassistant'' исправить значение сущности датчика температуры ''entity_id: sensor.temperature_sensor'' на тот сенсор, от которого у вас будет приходить значение температуры в жилой комнате. Например это может быть ''sensor.temperatur_1'':
 +
  -platform: homeassistant
 +
    id: temperature_sensor
 +
    entity_id: '''sensor.temperatur_1'''
 +
    name: "Actual temperature"
  
  
=== Как сконфигурировать ESP ===
+
5) Далее нам нужно скомпилировать, с линковать и загрузить новый бинарник прошивки в плату контроллера OpenTherm.
3. Скопировать файл конфигурации для ESPHome  у нас это файл следующим содержанием
+
INFO Reading configuration /config/esphome/vlaga.yaml...
+
  
 +
5.1)Из командной строки можно собирать прошивку и загрузить ее в девайс командой:
 +
$ esptool -cd nodemcu -cf Smart_Therm_0.1.2_20220318.bin
 +
$ esptool write_flash 0x00000 Smart_Therm_0.1.2_20220318.bin
  
esphome:
+
5.2) Если инстанс НА в режиме супервайзер, то для удобства загрузки прошивки в ESP контроллер можно установить и воспользоваться специальным дополнением с графическим интерфейсом из браузера. Для этого идем в Настройки>>Дополнения>>Магазин дополнений>>поиск дополнений, в строке поиска вводим сначала одно дополнение '''SSH''', устанавливаем и запускаем его, затем второе дополнение '''ESPHome''', устанавливаем и запускаем его тоже.
  name: vlaga
+
После запуска дополнительного приложения '''ESPHome''', осуществляем сборку и прошивку прошивки в контроллер. Для этого нам нужно на первый раз присоединить наш контроллер OpenTherm к HA через USB шнур. Нажимаем ''Install'', выбираем способ прошивки устройства: '''Plug into the computer running ESPHome Dashbord''', (Фото 6) должен появится примерно вот такой вывод из которого нам станет ясно, что наш IP адрес устройства 192.168.9.102 и наш WIFI SSID: 'laser203' работает нормально.
esp8266:
+
  board: esp01_1m
+
# Enable logging
+
logger:
+
# Enable Home Assistant API
+
api:
+
  password: "12345678"
+
ota:
+
  password: "12345678"
+
wifi:
+
  ssid: laser203
+
  password: laser203
+
  # Enable fallback hotspot (captive portal) in case wifi connection fails
+
  ap:
+
    ssid: "Vlaga Fallback Hotspot"
+
    password: "12345678"
+
captive_portal:
+
sensor:
+
  - platform: adc
+
    pin: A0
+
    name: "humidity"
+
    accuracy_decimals: 1
+
    filters:
+
      - lambda: return x * (-248.0) + 172.0;
+
      - sliding_window_moving_average:
+
        window_size: 12
+
        send_every: 4
+
    unit_of_measurement: "%"
+
    update_interval: 60s
+
 
+
Заходим [https://github.com/rsciriano/ESPHome-OpenTherm по адресу]  скачиваем ZIP архив, разархивируем его в нужной директории.
+
 
+
Производим изменения внутри файла.    1. Копируем содержимое репозитория в папку /config/esphome в HA
+
    2. Устанавливаем номера пинов для адаптера SmartTherm в файле /config/esphome/esphome-opentherm/opentherm_component.h inPin = D7; outPin=D8
+
рис
+
 
+
Если инстанс На в режиме супервайзер, то для специального дополнения в HA это сделать проблематично.
+
Идем в Настройки→Дополнения→Магазин дополнений→ поиск дополнений, в строке поиска вводим SSH
+
 
+
нажать Install, должен появится примерно вот такой вывод из которого нам станет ясно, что наш IP адрес устройства 192.168.9.102 и наш WIFI SSID: 'laser203'
+
  
 
  INFO Reading configuration /config/esphome/vlaga.yaml...
 
  INFO Reading configuration /config/esphome/vlaga.yaml...
Строка 180: Строка 149:
 
  [12:09:15][C][wifi:377]:  DNS2: 0.0.0.0
 
  [12:09:15][C][wifi:377]:  DNS2: 0.0.0.0
 
    
 
    
++++++++++++++++++++++++
 
5. В Настройках обновить фирмату ESPHome, на вопрос указать либо пароль, либо API ключ, в нашем случае это пароль 12345678
 
И тогда должно появиться значение в сенсоре и в карточке на панеле.
 
  
 +
В дальнейшем перепрошивать контроллер уже можно будет без шнура USB, через WIFI, выбирая первый пункт меню ''Wirelessly'' (Фото 6)
  
Ссылки на полезные ресурсы
 
1. OpenTherm Arduino/ESP8266 Library + OpenTherm Adapter Schematic
 
https://github.com/ihormelnyk/opentherm_library
 
  
2. OpenTherm protocol specification v2.2
+
=== Размещаем визуальные компоненты на панели Home Assitant ===
http://ihormelnyk.com/Content/Pages/opentherm_library/Opentherm%20Protocol%20v2-2.pdf
+
Если прошло все нормально, то теперь ваш котел принимает команды от HA, и обменивается данными с HA. Чтобы построить графики и задать комфортные параметры вашего дома вы можете сделать следующее:
 +
# Выполните интеграцию ESP, укажите помещение в котором у вас будет установлен сам контроллер с датчиком температуры (Фото 7, Фото 8)
 +
# Убедитесь, что все объекты opentherm стали доступными (Фото 9, фото 10)
 +
# Добавьте их на лицевую панель HA (Фото 11)
  
3. https://www.umkikit.ru/index.php?route=product/product&path=67&product_id=103
+
{| align="center" class="standard"
 +
|+
 +
| [[Файл:Smarttherm12.png |link=http://wiki.laser.ru/images/9/97/Smarttherm12.png |120px|thumb|left|(Фото 7)]]
 +
| [[Файл:Smarttherm13.png |link=http://wiki.laser.ru/images/d/dc/Smarttherm13.png |160px|thumb|left|(Фото 8)]]
 +
| [[Файл:Smarttherm14.png |link=http://wiki.laser.ru/images/c/cb/Smarttherm14.png |160px|thumb|left|(Фото 9)]]
 +
|-
 +
| [[Файл:Smarttherm15.png.png |link=http://wiki.laser.ru/images/a/a2/Smarttherm15.png.png |160px|thumb|left|(Фото 10)]]
 +
| [[Файл:Smarttherm16.png |link=http://wiki.laser.ru/images/d/d4/Smarttherm16.png |160px|thumb|left|(Фото 11)]]
 +
|}
  
4. https://github.com/Evgen2/SmartTherm
+
Параметры OpenTherm на панели Home Assistant доступны следующие (Фото 11):
 +
# PID Climate Autotune — лучше не трогать, пусть всегда будет выключен.
 +
# Heating Water — Уставка воды теплоносителя, регулируется в диапазоне таким образом, чтобы либо чаще включалась горелка (Комфортный режим), либо экономилось топливо (Экономный режим). На фото установлена в диапазоне min=14 °C, max=59 °C
 +
# Hot Water — горячая вода для мытья рук, сантехнических нужд. На фото установлена max= 44 °C
 +
# PID Climate Controller — Диапазон регулировки управления климатом в доме. Будет срабатывать горелка при изменении на 10 градусов теплоносителя. 21.5 С — температура воздуха в комнате
 +
# Так же представлены текущие состояния различных параметров, где можно посмотреть историю их изменений.
  
5. https://github.com/OldNavi/OpenThermController
 
  
=== Как настроить интеграцию ===
+
После этого вы можете радостно покрутить крутилки и повертеть вертелки.
Для настройки интеграции нужно выполнить следующие действия
+
  
=== Как покуртить разные крутилки и вертелки ===
+
=== История изменений параметров в графиках ===
для крутилок нужно повертеть вертелки
+
{| align="center" class="standard"
 +
|+
 +
! |Горячая вода для кухни и обогрев дома
 +
! |Температура бойлера и модуляция бойлера
 +
! |Бойлер, нагрев, обратка, температура в комнате
 +
|-----
 +
| [[Файл:Горячая вода и обогрев.png |link=http://wiki.laser.ru/images/0/0e/Горячая_вода_и_обогрев.png |260px|thumb|left|Фото 12]]
 +
| [[Файл:Температура бойлера и модуляция бойлера.png |link=http://wiki.laser.ru/images/a/a5/Температура_бойлера_и_модуляция_бойлера.png |260px|thumb|left|Фото 13]]
 +
| [[Файл:Бойлер, нагрев, обратка, температура в комнате.png |link=http://wiki.laser.ru/images/3/39/Бойлер%2C_нагрев%2C_обратка%2C_температура_в_комнате.png|260px|thumb|left|Фото 14]]
 +
|}
  
=== Как посмотреть разные графики===
+
== Ссылки на полезные ресурсы ==
очень интересные разные графики
+
1. Библиотека реализующая протокол OpenTherm https://github.com/ihormelnyk/opentherm_library
  
[[Файл:Котел без крышки.jpg |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
2. OpenTherm protocol specification v2.2 (PDF)
 
+
http://ihormelnyk.com/Content/Pages/opentherm_library/Opentherm%20Protocol%20v2-2.pdf
 
+
[[Файл:Smarttherm11.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
 
+
 
+
[[Файл:Smarttherm14.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
 
+
[[Файл:Smarttherm13.png|link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
  
[[Файл:Smarttherm15.png.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
3. Open source for SmartTherm ESP8266/ESP32 OpenTherm controller https://github.com/Evgen2/SmartTherm
  
[[Файл:Smarttherm12.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
4. OpenThermController for BAXI Slim https://github.com/OldNavi/OpenThermController
  
[[Файл:SmarTherm схема.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
5. Интеграция OpenTherm от Павла Чупаки https://github.com/rsciriano/ESPHome-OpenTherm
  
[[Файл:St12.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
6. Где купить контроллер SmartTherm https://www.umkikit.ru/index.php?route=product/product&path=67&product_id=103
  
[[Файл:St11.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
7. Инструкция по подключению контроллера [https://www.umkikit.ru/prog/userguideSmartOT_01e.pdf SmartTerm и его использованию]
  
[[http://wiki.laser.ru/index.php/%D0%A4%D0%B0%D0%B9%D0%BB:Install_esp_opentherm.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
8. [http://wiki.laser.ru/images/a/ab/SmarTherm_схема.png SmartTherm схема контроллера]
 +
[[Файл:SmarTherm схема.png |link=http://wiki.laser.ru/images/a/ab/SmarTherm_схема.png |260px|thumb|left|(Фото)]]
  
[[Файл:St21.png |link=http://wiki.laser.ru/images/a/a9/Raspberripi4_sd_card.png |260px|thumb|left|(Фото)]]
+
[[Категория:Home Assistant]]

Текущая версия на 18:15, 7 июля 2023

Это черновик статьи. Вероятно, статья находится в процессе написания.

Подключение контроллера SmartTherm к HomeAssistant

(Фото 1) Котел отопительный газовый Ferroli(Италия), подключение к контроллеру SmartTherm

Если вы являетесь счастливым владельцем индивидуального жилого дома, для отопления которого вы используете или планируете использовать газовый котел и вы хотите использовать для управления котлом Home Assistant, то вам необходимо выполнить следующее.

Предварительные шаги

Выбор газового котла с протоколом OpenTherm

Убедитесь, что выбранный вами для покупки котёл поддерживает цифровую шину передачи данных OpenTherm. Если в инструкции на сайте производителя котла указано, что OpenTherm имеется и указан разъем для его подключения, то проблемы нет. Однако не все производители газовых котлов пишут в инструкции к котлу о наличии такой возможности, не все продавцы и инженеры по обслуживанию газовых котлов знают о наличии такого протокола, не всегда поддержка, даже от пафосных дистрибьюторов, например, котлов Bosсh и Buderus, сможет оказать вам помощь.

В некоторых случаях может упоминаться наличие цифровой шины, однако имейте ввиду, что цифровых шин может быть с десяток разных, несовместимых межу собой на физическом и логическом уровне.

Список газовых котлов, поддерживающих OpenTherm можно посмотреть тут.

Выбор контроллера OpenTherm

На рынке имеется некоторое количество контроллеров, поддерживающих OpenTherm. В некоторых случаях, например, для большинства контроллеров Zont для подключения OpenTherm требуется отдельный адаптер за отдельную цену. Кроме того, и прошивка, и схемотехника этих контроллеров закрыты.

Контроллер SmartTherm использует открытый дизайн, свободный код прошивки, использует популярные контроллеры ESP со встроенным WiFi, позволяет легко обновлять прошивку под свои нужды. Кроме работы с OpenTherm, контроллер может измерять температуру с двух выносных датчиков температуры DS18b20. Цена контроллера достаточно демократичная.

Для подачи питания и программирования контроллера используется разъем micro USB

Подключение контроллера SmartTherm к газовому котлу

Примерный порядок подключения контроллера SmartTherm к газовому котлу
Контроллер SmartTherm, вид спереди, без крышки
Контроллер SmartTherm, вид сверху
Обесточте питание котла
Снимите крышку с котла
На контроллере котла, удалите перемычку в разъеме OpenTherm, и подключите провод
Двужильный провод ПВС 0.75 кв — отмечен черной спиралькой
При необходимости, пройдите проводом сквозь стену в жилое помещение
Другой конец провода присоедините к контроллеру SmartTherm, подключите термодатчики, подайте питание


Максимальный выходной ток — 1.2 A

Максимальное выходное напряжение — 5 В

Установка Home Assistant

Для того чтобы постоянно получать данные от работающего котла, анализировать их и принимать решения по экономии топлива, необходимо использовать приложение Home Assitant, которое разработано всемирным сообществом профессионалов и энтузиастов DIY, при этом является свободно распространяемым. Home Assistant интегрируется с более чем тысячей различных устройств и сервисов. После того, как вы интегрировали все свои устройства дома, вы можете использовать усовершенствованный механизм автоматизации Home Assistant, чтобы ваш дом работал на вас. Home Assistant взаимодействует с вашими устройствами локально и откажется от загрузки данных из облака, если нет другого варианта. Данные не хранятся в облаке, все обрабатывается локально. Home Assistant позволяет вам контролировать потребление энергии с помощью функции управления домашним энергопотреблением.

Для того чтобы развернуть это приложение и использовать его, вам понадобится постоянно работающий у вас дома сервер или постоянно включенный одноплатный контроллер ARM архитектуры типа Raspberry Pi, Orange Pi, Repka Pi, или аналогичные. Как установить и настроить работу приложения Home Assistan, вы можете узнать из официальной документации на английском языке, или из руководства по установке HA на русском языке.

Пожалуйста, обратите внимание, что при выборе варианта установки, вам будет проще работать с дополнительным приложением ESPHome, когда вы выберите режим установки Superviser, а не CORE. Хотя получить взаимодействие контроллера SmartTherm с приложением Home Assistant возможно в любом варианте установки.

Установка автоматизации ESPHome OpenTherm в Home Assistant

(Фото 2) Smartherm — настройка интеграции
(Фото 3)
(Фото 4)
(Фото 5)
(Фото 6)

После того, когда вы убедились, что ваша установка приложения HA выполнена успешно, вам необходимо добавить в HA новое ESP устройство — плату управления котлом OpenTherm (Фото 2), для этого необходимо сделать следующее:

1) Скачать с GitHub репозитория от Roberto Sanz архив. Разархивировать его на вашем HA, например в папку /config.

2) Установить в HA из магазина дополнений утилиту ESPHome (это будет возможно если вы установили ваш HA в режиме Superviser). Если у вас HA установлен в режиме CORE, то для прошивки контроллера из командной строки, вам нужно будет установить утилиту для работы с ESP32 esptool:

# apt-get update
# apt-get install esptool

3) В конфигурационном файле для адаптера SmartTherm, /config/esphome/esphome-opentherm/opentherm_component.h необходимо задать номера пинов (Фото 3):

inPin = D7;

outPin = D8;

4) В файле /config/esphome/opentherm.yaml необходимо внести следующие правки:

4.1) В разделе esphome указать какой контроллер используем. Список возможных контроллеров можно взять — отсюда для ESP8266 или от сюда для ESP32 для нашего контроллера это будет следующая платформа модуля nodemcuv2 (Фото 4):

esphome:
 name: $devicename
 platform: ESP8266
 board: nodemcuv2

4.2) В разделе # Your Wi-Fi SSID and password отредактировать соответствующий раздел, указав точку доступа и пароль к ней. Предварительно необходимо узнать название wifi сети и пароль к ней. Без точки доступа WiFi — связь opentherm с homeassistant работать не будет (Фото 5).

# Your Wi-Fi SSID and password
 wifi_ssid: "laser203"
 wifi_password: "laser203"
captive_portal:
 api:
  password: "12345678" 
 ota:
  password: "12345678"


4.3) В разделе platform: homeassistant исправить значение сущности датчика температуры entity_id: sensor.temperature_sensor на тот сенсор, от которого у вас будет приходить значение температуры в жилой комнате. Например это может быть sensor.temperatur_1:

 -platform: homeassistant
   id: temperature_sensor
   entity_id: sensor.temperatur_1
   name: "Actual temperature"


5) Далее нам нужно скомпилировать, с линковать и загрузить новый бинарник прошивки в плату контроллера OpenTherm.

5.1)Из командной строки можно собирать прошивку и загрузить ее в девайс командой:

$ esptool -cd nodemcu -cf Smart_Therm_0.1.2_20220318.bin
$ esptool write_flash 0x00000 Smart_Therm_0.1.2_20220318.bin

5.2) Если инстанс НА в режиме супервайзер, то для удобства загрузки прошивки в ESP контроллер можно установить и воспользоваться специальным дополнением с графическим интерфейсом из браузера. Для этого идем в Настройки>>Дополнения>>Магазин дополнений>>поиск дополнений, в строке поиска вводим сначала одно дополнение SSH, устанавливаем и запускаем его, затем второе дополнение ESPHome, устанавливаем и запускаем его тоже. После запуска дополнительного приложения ESPHome, осуществляем сборку и прошивку прошивки в контроллер. Для этого нам нужно на первый раз присоединить наш контроллер OpenTherm к HA через USB шнур. Нажимаем Install, выбираем способ прошивки устройства: Plug into the computer running ESPHome Dashbord, (Фото 6) должен появится примерно вот такой вывод из которого нам станет ясно, что наш IP адрес устройства 192.168.9.102 и наш WIFI SSID: 'laser203' работает нормально.

INFO Reading configuration /config/esphome/vlaga.yaml...
INFO Starting log output from vlaga.local using esphome API
INFO Successfully connected to vlaga.local
[12:31:17][I][app:102]: ESPHome version 2023.3.2 compiled on May 29 2023, 12:25:21
[12:31:17][C][wifi:504]: WiFi:
[12:31:17][C][wifi:362]:   Local MAC: 84:F3:EB:53:42:61
[12:31:17][C][wifi:363]:   SSID: [redacted]
[12:31:17][C][wifi:364]:   IP Address: 192.168.9.102
[12:31:17][C][wifi:365]:   BSSID: [redacted]
[12:31:17][C][wifi:367]:   Hostname: 'vlaga'
[12:31:17][C][wifi:369]:   Signal strength: -33 dB ▂▄▆█
[12:31:17][C][wifi:373]:   Channel: 1
[12:31:17][C][wifi:374]:   Subnet: 255.255.255.0
[12:31:17][C][wifi:375]:   Gateway: 192.168.9.1
[12:31:17][C][wifi:376]:   DNS1: 192.168.9.1
[12:31:17][C][wifi:377]:   DNS2: 0.0.0.0
[12:31:17][C][logger:293]: Logger:
[12:31:17][C][logger:294]:   Level: DEBUG
[12:31:17][C][logger:295]:   Log Baud Rate: 115200
[12:31:17][C][logger:296]:   Hardware UART: UART0
[12:31:17][C][adc:087]: ADC Sensor 'humidity'
[12:31:17][C][adc:087]:   Device Class: 'voltage'
[12:31:17][C][adc:087]:   State Class: 'measurement'
[12:31:17][C][adc:087]:   Unit of Measurement: '%'
[12:31:17][C][adc:087]:   Accuracy Decimals: 1
[12:31:17][C][adc:092]:   Pin: GPIO17
[12:31:17][C][adc:126]:   Update Interval: 60.0s
[12:31:17][C][captive_portal:088]: Captive Portal:
[12:31:17][C][mdns:108]: mDNS:
[12:31:17][C][mdns:109]:   Hostname: vlaga
[12:31:17][C][ota:093]: Over-The-Air Updates:
[12:31:17][C][ota:094]:   Address: vlaga.local:8266
[12:31:17][C][ota:097]:   Using Password.
[12:31:17][C][api:138]: API Server:
[12:31:17][C][api:139]:   Address: vlaga.local:6053
[12:31:17][C][api:143]:   Using noise encryption: NO9.1
[12:09:15][C][wifi:377]:   DNS2: 0.0.0.0
    	

В дальнейшем перепрошивать контроллер уже можно будет без шнура USB, через WIFI, выбирая первый пункт меню Wirelessly (Фото 6)


Размещаем визуальные компоненты на панели Home Assitant

Если прошло все нормально, то теперь ваш котел принимает команды от HA, и обменивается данными с HA. Чтобы построить графики и задать комфортные параметры вашего дома вы можете сделать следующее:

  1. Выполните интеграцию ESP, укажите помещение в котором у вас будет установлен сам контроллер с датчиком температуры (Фото 7, Фото 8)
  2. Убедитесь, что все объекты opentherm стали доступными (Фото 9, фото 10)
  3. Добавьте их на лицевую панель HA (Фото 11)
(Фото 7)
(Фото 8)
(Фото 9)
(Фото 10)
(Фото 11)

Параметры OpenTherm на панели Home Assistant доступны следующие (Фото 11):

  1. PID Climate Autotune — лучше не трогать, пусть всегда будет выключен.
  2. Heating Water — Уставка воды теплоносителя, регулируется в диапазоне таким образом, чтобы либо чаще включалась горелка (Комфортный режим), либо экономилось топливо (Экономный режим). На фото установлена в диапазоне min=14 °C, max=59 °C
  3. Hot Water — горячая вода для мытья рук, сантехнических нужд. На фото установлена max= 44 °C
  4. PID Climate Controller — Диапазон регулировки управления климатом в доме. Будет срабатывать горелка при изменении на 10 градусов теплоносителя. 21.5 С — температура воздуха в комнате
  5. Так же представлены текущие состояния различных параметров, где можно посмотреть историю их изменений.


После этого вы можете радостно покрутить крутилки и повертеть вертелки.

История изменений параметров в графиках

Горячая вода для кухни и обогрев дома Температура бойлера и модуляция бойлера Бойлер, нагрев, обратка, температура в комнате
Фото 12
Фото 13
Фото 14

Ссылки на полезные ресурсы

1. Библиотека реализующая протокол OpenTherm https://github.com/ihormelnyk/opentherm_library

2. OpenTherm protocol specification v2.2 (PDF) http://ihormelnyk.com/Content/Pages/opentherm_library/Opentherm%20Protocol%20v2-2.pdf

3. Open source for SmartTherm ESP8266/ESP32 OpenTherm controller https://github.com/Evgen2/SmartTherm

4. OpenThermController for BAXI Slim https://github.com/OldNavi/OpenThermController

5. Интеграция OpenTherm от Павла Чупаки https://github.com/rsciriano/ESPHome-OpenTherm

6. Где купить контроллер SmartTherm https://www.umkikit.ru/index.php?route=product/product&path=67&product_id=103

7. Инструкция по подключению контроллера SmartTerm и его использованию

8. SmartTherm схема контроллера

(Фото)