Теплый пол home assistant

Обновлено: 20.05.2024

Добавляем тёплые полы в умный дом Home Assistant

Я уже писал об управлении отоплением в моей умной квартире. Следующим шагом к комфорту стала интеграция теплых полов в санузле в умный дом. Выбор управляемых термостатов для теплых полов на самом деле не так уж и велик. Я остановился на весьма бюджетном варианте wi-fi термостата moes для экосистемы tuya. На данный момент уже появилась в продаже его zigbee версия, и сейчас я бы советовал обратить внимание именно на этот продукт.

Итак, заменил свои штатные “тупые” термостаты на Moes BHT-002-GBLW. Обратите внимание, что буква W на конце как раз обозначает Wi-Fi, а GBL обозначает возможность использования с теплыми электрическими полами и нагрузку до 16 Ампер.

В Home assistant можно интегрировать эти термостаты через интеграцию tuya, но есть нюансы. Во-первых, вся работа через облако. Во-вторых, интеграция Туи в Home assistant работает отвратительно. Температуру с датчиков (внешний в полу и наружный на самом термостате) почему-то показывает в удвоенном виде. То есть, если температура 25 градусов, то в Home assistant мы видим 50!

И тут я заметил, что датчик температуры в полу показывает откровенно высокую температуру. Разобравшись в проблеме, я понял, что сам термостат работает с датчиком с сопротивлением 10кОм, а у меня в полу вмонтирован датчик с сопротивлением 6,8кОм. В этом случае нельзя просто докинуть последовательно необходимое сопротивление, потому что сопротивление у датчиков меняется нелинейно. Я провёл небольшое исследование и вот что получилось:

На основании этой таблицы видно, что если термостат рассчитан на 10 кОм датчик, а в него установить 6.8 кОм датчик, то он будет врать примерно на 10 градусов в большую сторону! Оставалось решить это программно на самом сервере Home assistant. Я создал простейший шаблонный сенсор:

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

Перепрошивка терморегулятора теплого пола Moes и заведение в Home Assistant

Некоторое время назад я установил себе терморегулятор теплого пола Moes BHT-002-GBLW, подключил его в приложении TuyaSmart и завел в Home Assistant через интеграцию Tuya. Подробный рассказ о том как все это было.

Через приложение TuyaSmart все нормально работает. Видно температуру в помещении (используется датчик который находится в самом терморегуляторе), видно температуру теплого пола (для этого используется щуп, который вмонтирован в пол). В приложении можно установить желаемую температуру и включить-выключить терморегулятор:


Но интеграция в Home Assistant работает отвратительно:

  • Температура теплого пола в Home Assistant не попадает. В HA приходит только одна температура — температура которую замеряет само устройство.
  • Температура которая прилетает в HA в два раза (. ) больше чем в приложении
  • Элемент управления Home Assistant позволяет выключить терморегулятор, но кнопки включить там нет. Но включить его все-таки можно с помощью совершенно не интуитивного действия. Для того чтобы его включить нужно выставить температуру побольше.

Но я считаю что интеграция Tuya работает концептуально неправильно. Tuya работает через внешние сервера. Если дома не будет интернета, то не получится управлять этим терморегулятором ни из приложения, ни из Home Assistant.

Но этот терморегулятор можно перепрошить и настроить чтобы он работал без взаимодействия с серверами Tuya. Еще до покупки я знал что его можно перепрошить, собственно говоря, поэтому я и купил именно эту модель.

Другая прошивка

В мире Home Assistant очень популярны прошивки ESPHome и Tasmota. Возможно что можно использовать эти прошивки на терморегуляторе Moes (но про это я ничего не знаю). Я использовал прошивку про которую точно знал что с ней все получится. Эта прошивка сделана специально для этого устройства.

Из всего этого репозитория нужен один единственный файл. "WThermostat_1.00.bin" — это уже собранная прошивка. Этот файл нужно залить на устройство и тогда термостат будет работать не с удаленными серверами Tuya, а с вашим собственным сервером MQTT.

Термостат будет отправлять данные на ваш MQTT сервер. Home Assistant тоже подключен к этому MQTT серверу и узнает о том что термостат туда отправил. Для того чтобы поменять температуру на терморегуляторе HA отправляет данные на MQTT сервер, терморегулятор видит эти данные и делает то что там описано.

Итак, файл с прошивкой есть, нужно его залить на устройство.

Достаточно стандартный способ залить кастомную прошивку на устройстве — это разобрать устройство, подпаять провода к нужным контактам, подключить эти провода в программатор, а его уже подключить к компьютеру.

Но в случае этого терморегулятора можно залить прошивку и без необходимости разбирать устройство и подпаиваться к контактам. Существует специальная программа, которая позволяет залить прошивку на устройство по воздуху через WiFi.

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

Я гораздо лучше разбираюсь в софте, чем в том как паять, поэтому я пошел по пути беспроводной прошивки.

Заливка прошивки по воздуху

С помощью этого проекта можно залить файл с прошивкой на терморегулятор Moes BHT-002-GBLW.

Как работает этот проект. Софт этого проекта запускается на компьютере, он переводит WiFi карту в режим точки доступа. Tuya устройство переводится в режим настройки. Устройство видит точку доступа, подключается к ней и софт говорит что устройство должно залить на себя указанную прошивку. Устройство выполняет эту команду и после выключения-включения на устройстве работает уже новая прошивка.

Этот софт работает на linux. Самый простой способ запустить этот софт, если у вас есть отдельный компьютер, ноутбук или raspberry pi с linux на борту. Но можно запустить этот софт и с помощью VirtualBox на mac или на Windows.

Я запускал этот софт на моем старом ноутбуке на который я специально для этой задачи поставил свежую Ubuntu 18.04. Но оказалось что этот софт очень требователен к WiFi карте. Встроенная в ноутбук карточка ему не подошла (по какой-то причине не смог создать из нее точку доступа). Поэтому я подключил к своему старому ноутбуку usb WiFi карту от Raspberry Pi, которая у меня, к счастью, была.

В самом начале, я еще попробовал запустить этот софт на моем основном ноутбуке. Это macbook. В репозитории с проектом я увидел что там есть Dockerfile и я попробовал скомпилировать и запустить этот софт на своем маке. Образ собирается и из него можно запустить контейнер, но он сразу же ругается на то что не нашел подходящую WiFi карточку и завершает работу:

Я не стал пытаться запустить этот софт на маке, а пошел по более простому пути — взял ноутбук с linux (благо у меня было такое устройство).

После того как есть устройство на котором можно запустить этот софт дальше все очень просто.

На устройстве собирается этот софт:

Потом нужно взять файл "WThermostat_1.00.bin" из репозитория https://github.com/klausahrenberg/WThermostatBeca и положить его в папку "files/", к тем файлам которые там уже есть.

Потом нужно запустить этот софт:

Все, софт работает. После этого нужно сделать то о чем говорит софт:

  1. Подключаться к wifi сети с другого устройства (я подключал свой iPhone)
  2. И перевести терморегулятор в режим настройки

Для того чтобы терморугулятор перешел в режим настройки нужно:

  • Выключить устройство (средняя кнопка)
  • Зажать на устройстве кнопку вниз (самая правая кнопка) на 8 секунд
  • Экран на устройстве начнет мигать

Потом нужно отвечать на вопросы которые софт спрашивает. Один из последних вопросов, который задаст софт — какую прошивку нужно залить на устройство. Нужно выбрать "WThermostat_1.00.bin"

Прошивка устройства у меня заняла меньше пяти минут с момента запуска "./start_flash.sh".

(но на подготовительные этапы у меня ушло много часов (попробовать на маке в докере, не работает, найти старый ноутбук, там слишком старая ubuntu, поставить новую ubuntu, узнать что не работает со встроенной WiFi карточкой, найти usb WiFi карточку))

Настройка терморегулятора

Итак, новая прошивка залита на терморегулятор, теперь его нужно настроить.

После того как на него залита новая прошивка терморегулятор переходит в режим точки доступа. Нужно подключить к WiFi точке которая называется что-то вроде "Thermostat-Beca_xxxxxx". Пароль 12345678


Там же где настраивается подключение к WiFi указывается и все данные для подключения к MQTT серверу:


Возможно настроить управление этим терморегулятором и без MQTT сервера, но у меня такой сервер уже есть (для всяких zigbee устройств), так что мне было удобно использовать именно MQTT.

Вот какие данные приходят в MQTT от этого термостата:


  • "deviceOn": true — означает что термостат включен и будет поддерживать указанную температуру
  • "floorTemperature": 13 — температура пола (то что он снимает с щупа)
  • "temperature": 7 — температура в помещении (то что считывается датчиком в самом устройстве)
  • "targetTemperature": 5 — заданная температура, которую термостат должен поддерживать
  • "locked": true — то что термостат заблокирован, у него сенсорный экран, при блокировке им нельзя управлять с помощью этого экрана

Управление через MQTT следующее.

И есть две возможности для того чтобы управлять термостатом. Чтобы установить температуру можно либо заслать json вида:

Настройка Home Assistant

Терморегулятор подключен к сети WiFi, он общается с MQTT сервером, им можно управлять с помощью отправки команд в этот MQTT сервер. Но руками команды в MQTT сервер отправлять не очень удобно. Хочется настроить Home Assistant, чтобы все управление терморегулятором было из HA.

На GitHub есть большое обсуждение как правильно заводить этот термостат в HA. Я внимательно перечитал весь этот тред, потом достаточно долго провозился, но сделал конфиг чтобы терморегулятор работал с HA именно так как бы мне хотелось. В итоге очень доволен. Вот что у меня получилось:


Термостат работает так как я ожидаю. Через интерфейс HA его можно выключить, а потом включить. Можно установить температура. Это все делается через привычный контрол термостата.

Еще через интерфейс HA его можно заблокировать и разблокировать. Честно говоря, я совершенно не планирую управлять им с помощью нажатия на сенсорный экран на самом устройстве. Скорее всего я всегда буду держать его в заблокированном состоянии и уберу из интерфейса контрол блокировки/разблокировки. Но на первом этапе я решил его оставить (на всякий случай).

Плюс я отдельно создал сенсор в который пишу температуру теплого пола. Я не очень понимаю зачем мне она нужна. Терморегулятор поддерживает температуру опираясь на данные не с щупа, а из встроенного датчика (кстати, я не знаю как это изменить, в mqtt я такого не видел, возможно это нужно настроить на устройстве физически). Но для интереса я решил ее тоже завести в HA.

Для меня было удивительно, но встроенный датчик температуры вполне прилично измеряет. Вот график. Зеленая линия это данные со встроенного датчика. Красная линия — это температура с устройства на базе Wemos D1 Mini и AM2302 которое я сам спаял, которое находится в этой же комнате.


Что могло бы быть лучше

Я очень доволен тем что получилось. Во первых, меня очень радует цена устройства: 1800 рублей вместе с доставкой. Ссылка на AliExpress.

Немного возни и есть возможность управлять теплым полом из HA.

Но все могло бы быть еще лучше. Есть несколько проблем.

Первая проблема — это то часть устройства которая управляется по WiFi физически не знает, греет ли в данный момент теплый пол или нет. Поэтому информации об этом в HA нет. Есть возможность разобрать устройство и что-то там подпаять, тогда устройство узнает про статус реле и сможет отдавать эту информацию в HA. Я это не делал. Я планирую подключить этот терморегулятор через устройство Sonoff pow r2, им замерять потребление электричества и на основании этого понимать греет ли сейчас теплый пол или не греет.

Вторая проблема. Прошивка не отдает флаг retain в MQTT, поэтому после того как HA перезапускается несколько минут он не знает статус терморегулятора. Из-за этого на графике температур появляются провалы в тот момент когда HA перезагружался. Я написал про этот тикет, но не знаю исправят ли это или нет. Существует альтернативная прошивка, которая передает ratain флаг, но там столько всего друго еще накручено, что я не решился ее использовать. UPDATE — тикет решен, 2020-04-03 вышла версия прошивки "WThermostat_1.02.bin", которая всегда отправляет данные с retain флагом.

Третья проблема. Если пропадает электричество, то терморегулятор забывает те настройки которые в него HA отправлял. Это можно вылечить автоматизацией HA, но пока я это не сделал.

Итого. Я доволен тем что получилось. Настраивал долго, но в итоге практически все работает так как мне бы хотелось.

Как настроить Home Assistant чтобы термостат включал несколько обогревателей с паузой между включением

Я тут продолжаю экспериментировать с Home Assistant. Придумал себе небольшой проект. Решил сделать обогрев одной комнаты на даче.

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

Сервер Home Assistant знает температуру с датчика и может включать-выключать розетки. Ну а дальше дело техники — говорю серверу что я хочу чтобы температура была +24. Home Assistant включает обогреватели и они шпарят до тех пор пока в комнате не будет +24. Потом они выключаются. Температура постепенно падает, через некоторое время они опять включаются и опять добивают температуру до +24.

Если есть один обогреватель, то для того чтобы это настроить в Home Assistant нужно добавить в конфиг всего несколько строк:

Тут как раз указывается умная розетка ("switch.smart_plug") и датчик который показывает температуру ("sensor.room_temperature").

Но моя задача — подключить два обогревателя. Можно сделать следующее. Создать группу "group.heater_smart_plugs" и добавить в нее две умные розетки, а в конфиге HA указать:

Когда температура ниже заданной Home Assistant будет включать "виртуальное" устройство "group.heater_smart_plugs" и это будет включать обе розетки.

Так все работает, но мне хотелось чтобы система работала другим образом. Мне бы хотелось чтобы обогреватели включались не одновременно, а с небольшой задержкой. Т.е. сначала включается один обогреватель, проходит несколько секунд и только потом включается второй обогреватель. Ну и так же про выключение. Сначала выключается один, пауза, потом второй.

Я мало что понимаю в электричестве, но мне кажется что ситуация с паузой более правильная. Обогреватели это достаточно мощные устройства, которые дают большую нагрузку. Мне бы хотелось чтобы на электрическую сеть не было сразу большой нагрузки, а нагрузка приходила бы постепенно: вот сейчас включили два киловатта, чуть позже еще два. А не так: не было никакой нагрузки, а тут фигакс и сразу 4 кВт.

Так что я решил убедить Home Assistant что обогреватели нужно включать с паузой.

Тестовый стенд

Мой настоящий сервер HA — это Raspberry Pi 3 B+. Не очень мощное устройство. Плюс на нем уже крутится некоторая автоматизация. Мне очень нравится экспериментировать с конфигурированием Home Assistant не на настоящем продакшн сервере, а на специальном тестовом стенде, который я разворачиваю на своем ноутбуке.

Поднять сервер с HA на ноутбуке невероятно просто. Нужно чтобы на ноуте был установлен Docker, а потом одна команда и Home Assistant работает:

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

Итак, у меня есть сервер Home Assistant на котором можно играться. К нему не подключены никакие датчики температуры и не подключены никакие розетки. Я решил создать тестовые версии этих устройств.

Вот что у меня получилось. Вот все содержимое файла "configuration.yaml":

(Я тут завел 2 переменные "input_boolean_1" и "input_boolean_2", каждая из них хранит статус "виртуальной" умной розетки — что она — включена или выключена. И завел переменную "input_number_1" в которой хранится "виртуальная" температура в комнате. Дальше из этой переменной делаю сенсор температуры, а из первых двух переменных делаю switch)

А вот yaml с настройкой интерфейса:

Видео как это работает:

  • Можно руками указывать какая сейчас есть температура в комнате
  • Включаем термостат, он видит что температура в комнате +5 градусов, это меньше чем желаемая +24, поэтому он включает обогреватель 1
  • Постепенно увеличиваем температуру в комнате +9, +13.5, +17.5, +21.5
  • Как только температура в комнате становится больше чем заданная температура, термостат выключается

Итак, есть тестовый стенд, который очень похож на то что что у меня есть по настоящему.

Виртуальный выключатель

В конце концов, много раз обратившись за помощью к Жене мне удалось сделать решение которое делает то что мне нужно.

Я сделал виртуальный выключатель. За ним прячутся 2 выключателя и он берет на себе всю логику чтобы включать-выключать эти два выключателя с паузой.

Вот его описание в файле configuration.yaml:

Что тут важно. У выключателя статус может быть либо "on" (включен), либо "off" (выключен). У этого виртуального выключателя статус "on" будет в ситуации когда хотя бы один из двух выключателей включен

  • Оба выключены — статус виртуального выключателя "off"
  • Один включен — статус виртуального выключателя "on"
  • Оба включены — статус виртуального выключателя "on"

При включении этого виртуального выключателя дергается скрипт "turn_on_with_delay", а при выключении — "turn_off_with_delay".

Вот описание этих скриптов в файле configuration.yaml:

Каждый скрипт — это последовательность (sequence) из трех действий. Включить первый, подождать, включить второй. Очень важно что в начале каждой последовательности выполняется действие "выключи другой скрипт". Благодаря этому не происходит проблемы в ситуации, когда этот виртуальный выключатель быстро включается-выключается.

Автоматизация отопления в умном доме: электрическая термоголовка, 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 минут или по смене состояние темплейт сенсора Режим нагрева. Если он включен — термостат переводится в режим Дома, выключен — Не дома.


Сенсор может учитывать любые условия, в этом примере — нахождение кого-то дома, либо включенный режим выходного дня. Условий может быть сколько угодно


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

Умное окно: автоматизация проветривания комнаты, интеграция в Home Assistant

Для меня всегда особенно интересно знакомиться с разработками энтузиастов умного дома. И тема этого обзора — будет как раз про такое устройство. Мы с вами рассмотрим актуатор — то есть исполнительный механизм, который физически воздействует на управляемый объект, где в качестве такого объекта выступает окно, с возможностью установки в режим проветривания.

Контакты авторов проекта, по состоянию на дату обзора

Как купить: написать в директ @um_okno в инстаграм или написать на почту.

Содержание
О проекте

Герой обзора — это детище молодого стартапа Умное окно, в нем используются как фабричные изделия — платы управления, двигатель, так и DIY — корпус, тяги и конечно прошивка. На сегодняшний день это уже полностью готовое к использованию решение, но при этом авторы не останавливаются на достигнутом, продолжая постоянно совершенствовать продукт.

Поставка

Поставка осуществляется во все страны, куда возможно в принципе доставить Почтой России. Например с доставкой в Киев никаких проблем не возникло.


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


Мне на тест попал полный комплект системы умное окно. Сразу хочу сказать что на данном этапе существует только версия с стационарным питанием, то есть необходима проводка кабеля питания.


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


Датчик выполнен в виде обычной вилки для евророзетки, он шлет данные о температуре и влажности на актуатор. Но если планируется использовать умное окно в связке например с Home Assistant — то необходимости в этом сенсоре нет.


Тяга состоит из двух, соединенных между собой частей — это тот самый рычаг который и управляет открытием и закрытием окна.


Как и корпус двигателя, эта часть выполнена методом 3D печати и хотя это не фабричное производство, качество изготовления не уступает заводскому.


В комплекте имеется и разъем для подключения к блоку питания и весь необходимый крепеж даже с запасом. Дополнительно на плечи пользователя ложится только кабель и его проводка по окну.


Блок питания — рассчитанный на выходное напряжение 12 Вольт и ток до 1 А, так же имеется в комплекте.


Актуатор

Это основная часть устройства. Внутри распечатанного на 3D принтере корпуса белого цвета, находится двигатель и вся логическая часть. Сбоку находятся две кнопки ручного управления.


С другой стороны находится вал двигателя и вывод кабеля питания. В этом обзоре я не буду касаться вопроса проводки питания по окну, так как там есть несколько вариантов решения — например внутри полой рамы окна. Я планирую, как будет свободное время — попробовать аккуратно проложить узкий короб по краю окна.


Что касается установки привода — тут тоже есть выбор. На задней крышке уже есть отверстия, которые позволят установить его вместо штатной ручки, но это приведет к невозможности ручного открытия. Оптимально ставить его в верхней части окна — тут кстати будет нужно меньшее усилие для открытия.


Я закрепил на двусторонний монтажный скотч, который, по крайней мере пока, отлично справляется с своей задачей. Можно использовать и саморезы и клей — кому как больше нравится.


При подключении питания — обязательно соблюдайте полярность, сквозь корпус устройства виден сигнальный светодиод.


В зависимости от того, в каком состоянии находится привод, или какая операция сейчас выполняется — меняется и его цвет.


Ручное управление и шум двигателя — ссылка на фрагмент видео обзора

Подключение

После подачи питания, привод переходит в режим точки доступа. Сеть так и называется privod и далее идет уникальный код устройства. Пароль для подключения к сети — 12345678. После подключения необходимо перейти на страницу авторизации.




На ней — нужно указать название и пароль своей домашней wi-fi сети. Есть два режима подключения — с указанием фиксированного IP адреса и с автоматической выдачей IP адреса роутером.




Далее привод перезагрузится и подключится к домашней сети. Если выбран режим DHCP — смотрим какой адрес присвоен роутером, устройство имеет название которое состоит из слова ESP и кода устройства.

Перейдя по этому адресу — попадаем на страницу управления приводом. Тут указано состояние окна — открыто или закрыто, либо процент открытия, установка автоматического режима проветривания, желаемая температура, включение режима проветривания на заданное время и ручное открытие и закрытие.




Устройство имеет довольно много настроек. Кроме названия и сетевого имени — можно регулировать скорость двигателя, фактический % открытия и закрытия окна, % усилия — чем ниже, тем меньше изнашивается двигатель, время включения авторежима, яркость светодиода и тут же находится код устройства.




В расширенных настройках есть возможность указать параметры подключения к внешнему MQTT серверу — все уже догадались как привод будет интегрироваться с home assistant? Еще ниже есть возможность настройки коэффициентов PID-контроллера — это параметры определяющие работу авторежима — чувствительность на изменения, скорость реагирования, амплитуда движений окна.

На момент тестирования, для home assistant — устройство необходимо вручную прописывать в конфиге, но идет работа над понятным для discovery режима формата




Внешний сенсор

Подключим внешний сенсор температуры и влажности. Методика такая — же, ищем появившуюся сеть с словом sensor и подключаемся к ней используя пароль 12345678. Далее переходим на страницу авторизации.




Тут указываем параметры для подключения к домашнему wi-fi, указываем свой или автоматическую выдачу адреса роутером.




Для перевода в режим настроек, сенсор необходимо дважды включить и выключить из сети — методика описана в инструкции, кстати возможно что это будет тоже доработано и реализовано в виде кнопки.

Для сенсора нужна только одна настройка — это уникальный код привода, который берется из его настроек. После перезагрузки, сенсор раз в две минуты будет слать на него измеренные параметры температуры и влажности.




Внешний сенсор включенный в одну из розеток удлинителя Orico.


После этого, под целевой температурой, будут отображаться данные полученные с датчика. Логика привода, в авторежиме, будет самостоятельно регулировать положение окна в зависимости от этих параметров и настроек PID коэффициентов. Но, в случае использования привода совместно с home assistant или другой системой умного дома, наличие этого сенсора не обязательно.




Настройка

После установки на окно — нужно вручную найти крайние положения. Это зависит от окна и места установки. В моем случае максимальное открытие достигалось на 90%. Это значение я и указал в поле Открыто.


И закрытие — при положении в 15% — это значение я указал в поле закрыто. Теперь при команде открытие и закрытие, актуатор будет останавливаться на этих значениях — 15 и 90%.


Работу актуатора в установленном положении — ссылка на фрагмент видео обзора

Home Assistant

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


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


Соответственно этих положений и будет достигать привод при открытии и закрытии окна. Вручную можно выбрать и любое из промежуточных значений открытия.



Автоматизации

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


В случае если показания CO2 превысят значение в 900 ппм, температура за окном будет ниже 5 градусов Цельсия, а окно закрытым.


Приводу будет отдана команда на неполное открытие — до положения в 40%. Что-то то вроде зимнего проветривания.


На практике, в моем случае, это выглядит так.


Следующее в автоматизации условие аналогично первому, но при температуре за окном — выше 5 градусов Цельсия.


В этом случае окно будет открыто полностью.


И последнее в этой автоматизации условие, будет отрабатываться, если значение CO2 станет ниже 600 ppм, тогда, при условии что окно в этот момент открыто


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


Видео версия обзора
Вывод

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

От себя хочу пожелать стартапу Умное окно — дальнейшего успешного развития их продукта!

Лучший термостат для теплого пола

Прямая интеграция в Home Assistant и HomeKit без облаков.


Подключение



Дальше начинается интересное.

Интеграция в умный дом

Если вы захотите интегрировать его в Home Assistant стандартными средствами, то для этого вы сможете воспользоваться встроенной интеграцией Tuya:

После чего термостат сразу же появится среди ваших устройств, но вы получите несколько НО:

С первым случаем разобрались. Также на просторах интернета можно натолкнуться на способ локального управления с помощью кастомного компонента localtuya (подробнее почитать тут), который построен на базе tuyaAPI.

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

Первый провал меня ждал тогда, когда я все-таки смог пройти не по очень простой инструкции получения токена и id, и даже получил эти credentials, но сам компонент не захотел запускаться в Home Assistant с указанными параметрами.

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

По итогу вы получаете термостат:

Опишу кратко основные шаги и нюансы:


Дальше поговорим про Home Assistant:


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

Настройка и добавление Z-wave устройств в Home Assistant

Продолжаем делать универсальный хаб для умного дома на основе Home Assistant.

Многие переходят на центры автоматизации типа Home Assistant, OpenHab и т.д именно для того, чтобы иметь возможность управлять Z-wave устройствами. Происходит это с помощью технологии OpenZwave.

Для этого нам понадобится:

Настройка UZB-стика

  1. Выключаем Raspberry
  2. Втыкаем стик в свободный порт
  3. Включаем Raspberry и дожидаемся включения
  4. Ищем порт, к которому подключен стик. Для этого вбиваем в консоль

Вы получите выдачу типа

, где [COM Port] это строка из пунктов 4 и 5, а [chosen frequency] это выбранная частота (EU,RU и тд). Итого получится:

Настройка Home Assistant

В логах вы должны найти строки, похожие на это

Добавление устройств

Home Assistant: зачем он нужен и как использовать?

Или как усложнить себе жизнь и потратить часы времени в изучении yaml.

Каждый из любителей IoT и темы умного дома может без презрения совести назвать себя сектантом и фанатиком.

И ступени этого фанатизма достаточно четко разделены на некоторые жизненные ситуации:

И вот мы решили найти что-то более гибкое, но чтобы и красиво было, и устройств много поддерживало, и community живое было, и обязательно чтобы в Homekit умело. И тут мы становимся перед выбором, ведь вариантов много. Из наиболее интересных вариантов мы обычно имеем:

  • OpenHab
  • MajorDomo
  • IOBroker
  • Home Assistant
  • Domoticz

Выбор каждого в итоге остаётся на своём, но наш выбор в итоге пал на Home Assistant.

Плюсы

Но чем же он в итоге лучше привычного нам Homebridge.

Возможность подключения OpenZWave.

В наше время Z-wave все ещё также популярен и помогает решать точечные потребности. И home assistant позволяет без труда использовать специальные Z-wave стики или плату Razberry.

Большой выбор устройств и плагинов.

Наверное, только home assistant может похвастаться такой же объемной поддержкой устройств как Homebridge.

Настраиваемый веб-интерфейс.

Автоматизации.

Конечно же автоматизации. Это одна из сильных сторон HA. Они не просто для изучения, и сам yaml не так прост и понятен, чем тот же json, но в сети достаточно много примеров автоматизаций, подкрутив которые под себя можно смело использовать. И именно это в итоге и держит на HA не отпуская с него.

Частые обновления.

Обновления HA действительно приходят очень часто. И постоянно они включают новые устройства, новые возможности, новый интерфейс и т.д.

Кастомные компоненты.

При этом ты все также остаёшься не привязанным к стандартным компонентам, которых чересчур много. Ты всегда можешь найти какой-то кастомный компонент на GitHub и использовать его.

Большое сообщество.

Как было упомянуто выше — практически на любой вопрос в сети уже есть ответ на сайте HA или же на их форуме. Вокруг множество блогеров на youtube, группы в telegram и тд.

Минусы

Но конечно же и не обошлось без ложки(ложек) дёгтя.

HomeKit.

Во-вторых, он в общем менее стабильный, чем Homebridge. (спойлер 2: решение есть)

В-третьих, Home Assistant в общем не умеет прокидывавший камеры в HomeKit. Поэтому камеры все-таки так и останутся в Homebridge 🙂

Сложный.

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

Долгий.

Перезагрузка Home Assistant занимает иногда минуты. В среднем около полуторы минуты, но по причине того, что все настройки устройств проходят с перезапуском, то в итоге это складывается в минуты ожидания. В отличие от нескольких секунд перезапуска Homebridge.

К чему этот пост?

Да скорее всего к тому, что мы также планируем вносить свой вклад в это сообщество (тк опыта уже накопилось достаточно) и начать серию статей про Home Assistant.

Читайте также: