Найти тему

Управление светом в аквариуме (для новичков) + анонс

Простейшая задача, но может новичкам пригодится:

Аквариум обслуживает 4 розетки:
1) фильтр + кислород
2) подогрев со встроенным термостатом
3) основная подсветка
4) дополнительная подсветка RGB

п.1 и п.2 включен на постоянку.
п.3 и 4 жена попросила реализовать с управлением. Взял 2х канальное реле, были прошиты через ESPHome, подключаются через API к HomeAssistant. Так как жена, начинающий аквариумист, главная задача была, чтобы она сама с телефона могла менять время включения и выключения подсветки.
Второе требование - 3 периода включения света в течение дня.
На скриншоте еще не настроенные периоды включения/выключения.,


Автоматизация
Первое что приходит в голову:
1) Запросить время включения через input_datetime (Вспомогательный элемент -> Дата и время)

-2

2) Через такой же элемент запросить время работы подсветки и в автоматизации объединить это все: включили, выждали время работы (delay), выключили.

С одной стороны хорошо, но мне он не нравится изначально. Перезапустили Ваш HA -> delay отвалился и HA не знает больше когда ему требуется выключить подсветку.

Второе что пришло в голову:
1) Запрашиваем время как в первом варианте, запрашиваем время работы подсветки но уже через элемент таймер. Да, в нем можно поставить галку восстанавливать (в этом случае, таймер продолжить работу после рестарта).

-3

Но и этот вариант не понравился, не знаю почему. Было решено реализовать через 3ий.

3) Запрашиваем время включения подсветки и время выключения подсветки (Вспомогательный элемент -> Дата и время), их кол-во равно количеству необходимых включений/выключений, в моем случае их 3:

-4

1. Создаем карточку вертикальный стек
2. 1ым Добавляем выключатель подсветки

-5

3. Временно добавил Историю, чтобы отслеживать правильность включения, выключения визуально

-6

4. Добавляем карточку Сетка (grid), устанавливаем 2 столбца

-7

и заводим все наши таймеры (вкл 1/выкл 1, вкл 2/выкл 2, вкл 3/выкл 3).

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

-8

В триггеры добавляем "Время", и выбираем наши временные триггеры, не зыбываем присвоить им ID (!!!):

-9

по аналогии с остальными.

Переходим к действиям:

-10

Если сработало от (условие ИЛИ), перечисляем наши триггеры на включение - Тогда: включаем свет.

По аналогии действуем с выключением:

-11

Готово. Текстовый вариант как обычно на github.

P.S. Небольшой анонс: По такому же принципу будет скоро статья по автополиву наверное в нескольких частях, он у меня работал несколько лет на Majordomo, а в HA его еще нет. В ближайшие недели будут запускать систему, отфоткаю и опишу, заодно буду с 0ля писать автоматизацию.