Меню

Автоматизация в home assistant от датчика температуры

Автоматизация — Управление обогревом помещения в Home Assistant

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

Задача

Автоматизировать обогрев помещения при падении температуры ниже заданной. Нижний порог включения на обогрев может выставляться вручную, верхний порог отключения обогрева +3 градуса от температуры включения. Что бы не обогревать улицу, предусмотреть отключение обогрева при открытии окна. Возможность отключения автоматического режима обогрева помещения.

Необходимые компоненты

  • Датчик температуры. Например, Xiaomi MiJia temperature & humidity sensor (WSDCGQ01LM)
  • Датчик открытия окна окна. Например, Xiaomi MiJia door & window contact sensor (MCCGQ01LM)
  • Умная розетка. Например, Xiaomi Aqara socket Zigbee (QBCZ11LM)
  • Система автоматизации. Home Assistant

Решение для Home Assistant

Для включения/отключения режима автоматического обогрева и выставления температуры включения обогрева нам понадобятся два дополнительных вспомогательных компонента (хелпера):

  • Выключатель типа Toggle для включения/отключения режима автоматического обогрева
  • Ползунок типа Number для выставления температуры включения со значениями от 10 до 25 градусов и шагом 1

В меню Configuration -> Helpers -> + добавляем хелперы, но я рекомендую каждый сценарий описывать в отдельном файле. Создадим файл room_heating.yaml в папке .homeassistant/packages/ , в котором будет описан сценарий обогрева комнаты. Подробно про пакеты можно почитать на сайте Home Assistant.

На панель Lovelace выводим меню управления обогревом.

Итак, у нас есть умная розетка, датчик температуры и датчик открытия. Создаем автоматизации. Для понимания: xiaomi_socket_room_heater — розетка, xiaomi_temperature_room — датчик температуры, xiaomi_window_sensor_room — датчик открытия, room_auto_heat — выключатель автоматического обогрева, room_heat_temperature — выставленная температура, ниже которой включается обогрев.

Автоматизация номер один. Срабатывание автоматизации происходит при включении автоматического обогрева помещения, розетка включается при следующих условиях: температура на датчике ниже заданной температуры включения обогрева, датчик открытия в состоянии OFF и розетка в состоянии OFF. Добавляем автоматизацию в файл room_heating.yaml .

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

Автоматизация отключающая обогрев в помещении при превышении температуры включения на +3 градуса. Розетка отключается только если она находится в состоянии ON.

Автоматизация отключающая обогрев в помещении при открытии окна, не надо греть улицу :). Розетка отключается только если она находится в состоянии ON.

Последняя автоматизация, каждые 10 минут выполняется проверка превышения температуры и по необходимости отключение.

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

Источник

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

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

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

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

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

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

Читайте также:  Датчик движения инфракрасный ддс 01 настройка

Но моя задача — подключить два обогревателя. Можно сделать следующее. Создать группу «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) из трех действий. Включить первый, подождать, включить второй. Очень важно что в начале каждой последовательности выполняется действие «выключи другой скрипт». Благодаря этому не происходит проблемы в ситуации, когда этот виртуальный выключатель быстро включается-выключается.

  • Включили термостат. Температура в комнате +18, термостат настроен на +24.
  • Термостат включил виртуальный выключатель, который тут же включил обогреватель 1, а через паузу обогреватель 2
  • Потихоньку растет температура в комнате. Догрели до нужной температуру, тут же выключили обогреватель 1, а через паузу обогреватель 2
Читайте также:  Замена датчика скорости джили эмгранд ес7

Источник

Zigbee-датчик температуры и влажности Sonoff SNZB-02: работа в Tuya Smart, интеграция в Home Assistant

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

Содержание

Купить на Aliexpress — цена на момент публикации $ 8,49

Параметры

  • Модель: Sonoff SNZB-02
  • Протокол: Zigbee 3.0
  • Диапазон рабочих температур: -10 +40 С
  • Диапазон влажности: 10 — 90%
  • Элемент питания: CR2450
  • Размер: 43х43х14

Поставка

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

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

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

Внешний вид

Как я уже сказал, дизайн датчика, как впрочем и всей этой линейки датчиков — довольно специфический. Не оставляет чувство, что при изготовлении заготовки для корпуса — дизайнер использовал топор.

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

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

На ней указан номер модели и тип используемого в датчике элемента питания — CR2450

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

В отличии от более распространенных датчиков такого типа, например от Mijia или Aqara где используется более компактный, но менее емкий элемент CR2032, в этом датчике установлена батарейка CR2450

Для правильного совмещения крышки с датчиком — на них нанесены символы в виде стрелки. Их нужно установить друг против друга и закрыть крышку.

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

Tuya Smart

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

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

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

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

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

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

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

Читайте также:  Датчик артериального давления в часах xiaomi

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

Пример классической автоматизации которая будет включать розетку (например с радиатором отопления) при падении температуры в помещении ниже 20 С.

Zigbee2mqtt

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

В примере датчик подключался к версии 1.17.1, успел еще до большого обновления на 1.18, используемый стик — CC2652 на прошивке от 11 февраля 2021 года, подробнее про интеграцию и стик смотрите в 5 части моих уроков по Home Assistant, ссылка на плейлист в описании.

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

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

Интеграция отдает 4 параметра — температура, влажность, уровень заряда батарейки и качества сигнала, эти же параметры будут пробрасываться в виде объектов в Home Assistant

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

В меню reporting zigbee2mqtt можно увидеть что минимальный интервал отчетов для температуры и влажности установлены как 5 и 10 секунд соответственно. Максимальный тоже отличается вдвое — 1800 и 3600 хотя несмотря на это — изменение по влажности происходит намного чаще.

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

Вот так выглядит страница устройства в Home Assistant — четыре объекта соответствующие четырем значениям в zigbee2mqtt

SLS gateway

Конечно не обойду вниманием еще один популярный метод — это SLS шлюз, который в отличии от USB стика является сам по себе автономным устройством, но взаимодействующий с Home Assistant через MQTT

Датчик без проблем подключается, кстати сам по себе процесс подключения на SLS мне больше нравится чем в zigbee2mqtt — он гораздо нагляднее.

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

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

Аналогично, эти параметры пробрасываются через интеграцию MQTT в Home Assistant, объект уровня заряда появится одновременно с шлюзом.

Сравнение

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

За время наблюдений — показания температуры были всегда максимально близки, отличаясь не более чем 0,3 градуса, что касается влажности — то тут разница несколько больше около 2%, но помним что Sonoff гораздо чаще шлет обновления чем mijia. Форма графиков — тут данные за 36 часов, тоже в целом идентичны — оба датчика реагируют на изменение окружающей среды одинаково.

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

Вывод

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

Источник

Adblock
detector