- Автоматизация отопления в умном доме: электрическая термоголовка, Mi Home, Home Assistant, термостат
- Содержание
- Термоголовка
- Установка
- Mihome
- Home Assistant
- Видеоверсия обзора
- Обзор и подключение термостата Xiaomi (EigenStone/Aqara)
- Нудное вступление
- Управление
- Действия в автоматизациях
- Подключение
- Моя задача
- Выводы
- Ссылки
Автоматизация отопления в умном доме: электрическая термоголовка, Mi Home, Home Assistant, термостат
В этом обзоре мы поговорим о автоматизации управления отоплением в доме и я расскажу про свой собственный кейс, реализованный на электрических термоголовках Danfoss, управляемых розетках и датчиках температуры. Описанный принцип можно применить и для регуляторов теплого пола, электрических радиаторов и даже кондиционеров.
Содержание
- Термоголовка из обзора Danfoss TWA-A NC 230B — розетка UA — цена на момент публикации 536 грн
- Термоголовки на Aliexpress (пример — вариантов много)
Термоголовка
В своей реализации я использовал электрическую термоголовку Danfoss TWA-А — для клапанов RA под напряжение 230 В.
Вариант — NC — нормально закрытый, это значит то для открытия клапана, на термоголовку надо подать напряжение.
Вариантов крепления существует множество, нужно подобрать свой, в остальном принцип работы — идентичен.
Устройство внешне очень похоже на обычную, механическую термоголовку, только с питающим проводом.
Нормально закрытая головка из коробки находится в принудительно открытом состоянии, в котором ее поддерживает пластиковая скоба.
Крепится эта термоголовка при помощи стопорного винта. Внутри нее скрывается механизм, которые нажимает на клапан перекрывая его, при включении питания он отводится и открывает его.
Установка
Полностью процесс установки можно посмотреть в видеоверсии обзора (ссылка в конце текста)
У меня на батареях стояли обычные механические терморегуляторы, снимаются они легко, без инструментов
Вместо него ставится электрический регулятор, до упора и фиксируется при помощи стопора.
Только после этого снимается пластиковая скоба — клапан перекрывается
В момент установки температура поверхности батареи была почти 48 градусов. После снятия скобы и перекрытия клапана она стала падать, и через час составляла 23 градуса.
Включаем клапан в розетку, в момент включения потребление составило почти 20 Ватт, почти сразу упало вдвое, и потом плавно уменьшалось, к полному открытию, которое заняло почти 5 минут, до 3 Ватт.
Подробнее — можно посмотреть в видеоверсии обзора (ссылка в конце текста)
В течении 15 минут — температура поверхности батареи поднялась до 49 градусов
Mihome
Управлять этим можно например в Mihome — используя различные связки, например Zigbee датчика и розетки, или wi-fi удлинители или розетки, а температуру брать можно и с увлажнителя и с очистителя воздуха. Скажем при снижении температуры менее 21 градуса — включать
И аналогичный сценарий — на выключение при достижении комфортной температуры, тем самым поддерживая ее в желаемых пределах.
Можно использовать вариант связки какого-то из Bluetooth датчиков, при использовании новой wi-fi розетки с BLE шлюзом — они смогут работать просто в паре друг с другом. Кстати вместо розетки и удлинителя можно использовать и проводной выключатель
Можно предусмотреть включение и выключения по заданным дням и времени, и сделать ручной сценарий для принудительного включения.
Home Assistant
Моя конфигурация Home Assistant на github
Новая серия моих уроков по Home Assistant на Youtube
Для тех кто уже наигрался с Mihome — рассмотрим штатный компонент Home Assistant — термостат. Для него нужно создать, если еще нет, раздел климат. Как обычно я выношу его в отдельный файл.
В нем для каждой термоголовки создается отдельная сущность на платформе generic_thermostat. Следующей строкой — его имя в системе, давайте рассмотрим все его параметры
heater — название розетки которая будет управлять нашей термоголовкой
target_sensor — это название датчика температуры, по которому будет работать термостат
target_temp — целевая температура, в градусах С, та которая будет устанавливаться при запуске home assistant
away_temp — этот параметр включает для термостата отдельный режим работы — Не дома, и так же содержит температуру по умолчанию
min_temp, max_temp — это минимум и максимум на шкале термостата, пределы в которых им можно будет управлять
ac_mode — это режим включает охлаждение, то есть при его активации. розетка heater будет включаться при превышении целевой температуры, а выключаться при понижении
cold_tolerance, hot_tolerance — допуски для включения и выключения, в градусах С. В данном примере — 0,5 градуса, это значит что включаться розетка будет при температуре ниже чем 20,5 С а выключаться при превышении 21,5 С — при целевой температуре 21С.
min_cycle_duration — это минимальный период в котором будет находится термостат в режиме включено или выключено, может быть в секундах или минутах, с учетом времени открытия термоголовки я поставил 5 минут
keep_alive — это минимальный интервал между отправками команд на розетку термостата, в этом примере — команды могут отправляться не чаще чем раз в три минуты, это позволяет нивелировать влияние временных обрывов связи.
initial_hvac_mode — это состояние термостата после загрузки Home Assistant — может быть выключено, режим поддержания тепла heat или холода — cool
Для отображение термостата в интерфейсе lovelace существует специальная карта
Выглядит она так — по кругу ползунок для установки целевой температуры, в центре большими цифрами — текущая температура, под ней — целевая температура, потом режим работы — Бездействие, когда розетка выключения или Обогрев когда включена, и preset — Дома или Не Дома. Внизу две иконки — Обогрев и выключено и название термостата
Например при заданной температуре в 24С и текущей в 23.8С — она попадает в параметры допуска и термостат не включается. А если повысить до 26С, тогда включается розетка которая открывает термоголовку.
Для каждого термостата может быть выставлен свой собственный режим, что позволяет гибко регулировать температуру в доме.
Слева пример скрипта который переводит термостат в режим Дома preset_mode: none . Справаскрипт переводит термостат в режим preset_mode: away — Не дома, второй сервис устанавливает целевую температуру в 19 градусов. Режимы Дома и Не дома — имеют свои целевые температуры и помнят изменения до момента перезагрузки сервера.
Это пример одной из моих автоматизаций, которая запускается каждые 5 минут или по смене состояние темплейт сенсора Режим нагрева. Если он включен — термостат переводится в режим Дома, выключен — Не дома.
Сенсор может учитывать любые условия, в этом примере — нахождение кого-то дома, либо включенный режим выходного дня. Условий может быть сколько угодно
Сейчас у меня трудится четыре термостата, что позволяет не только автоматически поддерживать температуру на комфортном уровне, но и экономить на отоплении не грея воздух тогда, когда никого нет дома.
Видеоверсия обзора
Обзор и подключение термостата Xiaomi (EigenStone/Aqara)
Нудное вступление
Но устройство так и не поступило в открытую продажу, и, насколько я понял, даже в Китае его не так просто достать. Я даже отправлял людей в оффлайн магазин Aqara, чтобы попытаться его купить.
В какой-то момент он появился на Али, но продавец, вместо термостата, прислал мне анализатор CO2. А пока посылка ехала, товар уже везде пропал. Лишь спустя три месяца, он появился снова и лишь у одного продавца.
Управление
- В Mihome термостат можно привязать только к шлюзу Mijia.
- В приложении Aqara Home будет коннектиться и к Aqara Hub (но без homekit).
На главном экране можно задать температуру, скорость вращения вентиляторов и режимы охлаждения/обогрева:
Действия в автоматизациях
Подключение
Разница лишь в том, что:
- первый термостат управлял вентилями лишь подавая/отключая питание;
- а в этом есть два разъема — для открытия и закрытия вентилей (питание всегда подается либо на один, либо на другой контакт).
Контактов для подключения проводного датчика температуры нет — так что я не очень понимаю, как его возможно использовать для теплого пола, хотя в инструкции предлагают следующую схему.
Моя задача
- ноль(N)
- 3-я скорость вентилятора
- 2-я скорость вентилятора
- 1-я скорость вентилятора
- 2-й вентиль закрыть
- 2-й вентиль открыть
- 1-й вентиль закрыть
- 1-й вентиль открыть
- фаза (L)
В инструкции описана куча настроек (в конце статьи будет ссылка), в том числе, связанная с питанием. Но в реальности, меню в термостате почему-то совсем иначе устроено, и пока я лишь рандомно пытаюсь что-то менять. Возможно, у парня с 4pda была какая-то другая модель конвектора — не знаю, и к сожалению, на связь через личку человек не вышел.
Выводы
Буду продолжать ковыряться с настройками, может что-то полезное смогу найти и тогда выпущу продолжение статьи. А если кому-то из Москвы захочется поизучать его — пишите, у меня их 5 (уже 4) штук, могу дать поиграться.
Ссылки
Все новости мира умных домов — t.me/SprutAI_News или Instagram
Остались вопросы? Мы в Telegram — @SprutAI
Актуально к началу отопительного сезона. Ждем продолжения с опытом использования!
Имею такой девайс. Напишу модель KTWKQ03ES чтобы эту статью находил Google.
Печатная документация на китайском местами устарела и сильно не полная.
В теории можно подключить удаленный датчик температуры/влажности (очевидно ZizBee), о такой возможности сказано на стр. 6 в пункте 5, и в подменю 06/03 значение 01 означает использовать внешний датчик. Также можно настроить дисплей на отображение влажности с этого датчика.
Когда стал задавать продавцу вопросы например как подключить удаленный датчик температуры/влажности и пр. продавец просто снял эту штуку с продажи!
Терморезистор отпаял и засунул в пол в металлопластиковой трубе. Пришлось использовать очень качественный экранированный кабель от автомобильной антенны, иначе были наводки и показания температуры скакали +-3 градуса.
При включении выдаёт CA Err 03 и потом нормально работает, что это значит — загадка.
Не нашёл как сбросить к заводским настройкам. Половина параметров в меню не описана или не соответствует документации.
В меню сконфигурировал только нагрев, отключил кнопки mode и fan.
Настроил чтобы на экране отображалась одновременно температура пола и желаемая.
Так как тут всего 2А, использовал 5-й (справа, по схеме сверху) выход, подключил на один из входов 2-канального реле Aqara для управления электрическим тёплым полом.
Заодно можно отслеживать потребление.
Шлюз MIJIA в девелоперском режиме рапортует что этот девайс не поддерживается, дескать обновите прошивку (в HomeAssistant его соответственно не видно).
MiHome при этом нормально отображается.
К новому шлюзу Aqara (который с HomeKit) не подключается.
Пытаюсь подружить это чудо с HomeAssistant через zigbee2mqtt. Добавил его в devices.js, включил логи.
Power OFF:
debug 2020-04-30 18:59:03: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65281":<"3":30,"5":58,"7":"0x0000000000000000","8":13332,"9":2816,"100":305140579,"105":0,"106":0,"108":1,"110":65534,"111":0,"155":0>>’ . debug 2020-04-30 18:59:06: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,0]>>’ debug 2020-04-30 18:59:06: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,96,19,48,2]>>’ debug 2020-04-30 18:59:06: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘
Power ON:
debug 2020-04-30 18:59:24: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,0]>>’ debug 2020-04-30 18:59:24: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,99,19,32,17]>>’ debug 2020-04-30 18:59:24: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘ . debug 2020-04-30 18:59:29: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,99,19,48,18]>>’ debug 2020-04-30 18:59:29: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘
Изменение заданной температуры с 19C на 20C (температура пола с датчика при этом 24C):
debug 2020-04-30 18:59:40: No converter available for ‘KTWKQ03ES’ with cluster ‘genTime’ and type ‘read’ and data ‘[«time»]’ debug 2020-04-30 18:59:40: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,2]>>’ debug 2020-04-30 18:59:41: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,5,209,135,0,134,32,2]>>’ debug 2020-04-30 18:59:45: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"65520":<"type":"Buffer","data":[170,128,8,206,135,0,133,35,99,20,48,18]>>’ debug 2020-04-30 18:59:45: No converter available for ‘KTWKQ03ES’ with cluster ‘genBasic’ and type ‘attributeReport’ and data ‘<"61440":64168448>‘
В этих логах видно где 19 меняется на 20, но все остальные параметры покрыты мраком.
Видимо поддержки в HomeAssistant в обозримом будущем не будет.