Пока у меня нет датчика уровня CO2, проветривать помещение по этому датчику с помощью привода окна Drivent я не могу, а необходимость такая есть. Особенно ночью, иначе с утра в комнате очень душно и, действительно, нечем дышать. При этом проветривать надо так, чтобы не замерзнуть ночью. С этими мыслями и приступил к написанию автоматизации, которую хочу продемонстрировать.
Итак, первое что было сделано - создан бинарный сенсор, который будет являться триггером к запуску автоматизации. Решил, что буду проветривать с 1:00 до 4:00 каждый день и по выходным еще один раз с 7:00 до 8:00. Создаем сенсоры на платформе tod.
Далее создадим шаблонный сенсор, учитывающий вышеуказанную логику.
Этот сенсор будет принимать значение ‘on’ в ночные часы проверки и по выходным с 7 до 8 часов утра. В другое время он будет в состоянии ‘off’.
Подобное решение было предложено одним из подписчиков в комментариях к статье “Автоматизации для управления увлажнителем в умном доме”
Начнем описывать автоматизацию. Триггер у нас уже есть. Причем в качестве запуска автоматизации берем любое изменение триггера, таким образом сделаем одну автоматизацию с choose внутри, вместо двух маленьких. Такой принцип удобен мне, можно сделать и наоборот. В качестве условия срабатывания указал наличие людей дома и то, что температура на улице должна быть больше -10 градусов Цельсия.
Далее в action у нас будет choose, опишем первый из них.
Условие - началось время проветривания, т.е. бинарный шаблонный сенсор, указанный в триггере перешел из состояния off в состояние on.
Указал оба состояния, потому что при перезагрузке конфигурации шаблонов без перезагрузки серверов они уйдут сначала в состояние ‘unavalible’ а потом вернутся в исходное, что в случае указания только to или from запустит автоматизацию.
Далее с помощью сервера cover.set_cover_position открываем окно на 10%. Чтобы не замерзнуть, повысим целевую температуру для термостата и выберем, что достигать эту температуру будем именно по комнатному датчику. В целом на ночь опускаю температуру в квартире, но на время проветривания поднимаю обратно.
Следующая часть choose в каком-то смысле противоположна первой.
Когда время проветривания заканчивается и датчик переходит из состояния on в состояние off, закрываем окно, возвращаем целевой датчик для термостата на среднее значение и уменьшаем целевую температуру.
Мне довелось проверить эту автоматизацию в ночь с отрицательной температурой и благодаря повышению температуры в комнате на один градус с проветриванием спится очень комфортно, дискомфорта нет, но наличие датчика CO2 позволит сделать более гибкую систему, опираясь на множество данных.
Приведенный в статье код сформирован в отдельный package и доступен на github.
Подписывайтесь на канал, чтобы не пропустить обновления.
#умный дом #smart home #home assistant #климат #проветривание #технологии #интернет вещей #co2